Перейти к публикации

Поиск по сайту

Результаты поиска по тегам 'шифрование'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Блоги

  • TEMP BLOG
  • Робот Байт
  • Fingercomp's Playground
  • DUIIIES ' - блог
  • 1Ridav' - блог
  • Totoro Cookies
  • Блог cyber01
  • Another Brick In The Wall
  • IncluderWorld
  • KelLiN' - блог
  • Крутой блог
  • eutomatic blog
  • Programist135 Soft
  • Создаем собственный сайт в сети OpenNet
  • PieLand
  • Очумелые ручки
  • Блог недоблоггера
  • В мире майнкрафта, его модификаций и не только
  • Матрица
  • LaineBlog
  • Квантовый блог
  • Велосипедный блог
  • Как Pofigist кодить пытается
  • Блог qwertyMAN'а
  • NullException - DevBlog
  • Гайды для новичков и программы от LuaGamer`a
  • some blog name
  • Дача Игоря

Категории и разделы

  • Программирование
    • База знаний
    • Библиотеки
    • Робототехника
    • Сетевые технологии
    • Игры
    • Операционные системы
    • Графика
    • Инфраструктура
    • Программы новичков
    • За пределами Minecraft
    • Программирование в других играх
    • Всякое-Разное
    • Чулан
    • Стол заказов
    • Конкурсы
  • Игровой раздел
    • Игровые сервера
    • Предложения игроков по улучшению игрового процесса
    • Моды и плагины
    • Гайды, обзоры по модам
    • Жалобы на игроков
    • Ивенты
  • Общение
    • Ответы на частые вопросы
    • Вопрос-ответ
    • Вопросник по Lua и модам Opencomputers и ComputerCraft
    • Беседка для программистов
    • Беседка-флудилка
    • Шкатулка
  • Технический раздел
    • Новости проекта
    • Предложения по улучшению работы форума и игровых серверов
    • Проблемы в работе игрового сервера, клиента, форума и их решение
    • Архив

Группы продуктов

Нет результатов для отображения.


Искать результаты в...

Искать результаты, содержащие...


Дата создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по количеству...

Зарегистрирован

  • Начать

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


ВКонтакте


Gtalk


Facebook


Twitter


Город


Интересы

Найдено 2 результата

  1. В сотрудничестве с @Zer0Galaxy мы доработали целочисленную библиотеку metaint. Итак, встречайте: RSA Криптосистема с открытым ключом Теперь на "отечественной" библиотеке metaint Доработаны алгоритмы поиска простых чисел - засчет уменьшения скорости шанс прохождения составного числа как простого уменьшен (на самом деле я просто сделал 8 тестов ферма на число) Поддерживаются ключи с кастомным количеством бит А так же полная оптимизация генерации ключей. Осталось лишь оптимизировать поиск простых чисел и ключи в 2048 бит в ваших руках. Установка pastebin run 1xudmTa7 - выберите RSA и установите. С hpm проблемы( Использование Библиотека возвращает класс. Для получения инстанса - просто require("RSA")(<params>): RSA_instance Аргументом (он один) конструктора класса может быть: строка - путь к файлу собственной структуры. В нем обязательно должен быть публичный ключ. число (битовая длина ключа, не менее 16 - иначе будет недоступно шифрование текста. Да и не выйдет меньше 16) таблица. В ней нужно 2 поля - private_key и public_key, структура как у файла ключа библиотеки. Так же должен быть публичный ключ. Методы инстанса RSA RSA:save(filepath: string) - сохранить ключ в файл RSA:encrypt(number:number) - зашифровать число RSA:decrypt(cryptedNum: number) - расшифровать число. Кинет ошибку, если нет приватного ключа RSA:sign(number: number) - подписать число. Кинет ошибку, если нет приватного ключа. RSA:verify(number:number, signedNumber: number): boolean - проверить подпись. Вернет true, если подпись верна. Работа с текстом. Очень медленно, битовая длина ключа - минимум 16 бит (StrToInt возвращает число в 32 бит, 16 бит*16 бит = 32 бит. Ограничение из-за использования остатка от деления). RSA:textEncrypt(text: string[,salt: string]):table[metaint] - шифрует текст поблочно, перемешивая блоки - защита от DPI. Блок равен 32 бита. Соль - строка, которая будет добавлена к тексту ради сокрытия первого блока текста (с ним не происходит ничего, он просто шифруется). RSA:textDecrypt(text: string[, saltLen: number]): string - расшифровывает текст с учетом длины соли, если она указана. Применяет обратное преобразование текста для расшифровки - защита от DPI, все дела. RSA:textSign(text:string): table[metaint] - поблочно подписывает текст, перемешивая блоки. RSA:textVerify(text:string, signedBlocks: table[metaint]): boolean - проверяет подпись текста. Работа с текстом проверялась на 32 битном ключе и юникоде (достаточно длинном). Ошибок алгоритма быть не должно. Более полная документация с описанием алгоритмов.
  2. Если надо зашифровать сообщение, но не хватает ресурсов, можно использовать XOR. Но нельзя использовать короткий циклический ключ, XOR хорош, когда можно получить рандомный ключ, равный длине сообщения. Если в math.random нету дыр, то можно использовать его. Функция подгоняет длину ключа к длине сообщения и прогоняет через XOR. local function encrypt(message, key) unicode = require('unicode') nKey = '' for i = 1, unicode.len(key) do nKey = nKey..key:byte(i) -- переводим ключ в number end math.randomseed(tonumber(nKey)) -- засеиваем генератор ключом tKey = {} sNewKey = '' for j = 1, unicode.len(message) do tKey[j] = '' while unicode.len(tKey[j]) ~= unicode.len(message.byte(j)) do tKey[j] = tKey[j]..math.random(0, 9) -- создаем рандомный код для ключа end sNewKey = sNewKey..unicode.char(bit32.bxor(message:byte(j), tKey[j])) -- записваем результат end return sNewKey end Пример использования: a = encrypt('сообщение', 'ключ') -- шифруем print(encrypt(a, 'ключ')) -- расшифровываем
×