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

В ближайшее время постараюсь разобраться с картой сервера/ЛК/бб кодами

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

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

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

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

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


Блоги

  • 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
  • Дача Игоря

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

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

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

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


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

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


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

  • Начать

    Конец


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

  • Начать

    Конец


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

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

  • Начать

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


Gtalk


Facebook


Twitter


Город


Интересы

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

  1. Оптимизировал возведение в степень по модулю. Работает с большими числами очень быстро и хорошо, вероятность получения inf как результат степени и остатка от деления 0 минимальна. От метачисел избавился, теперь - чистая Lua. (Генератор ключей я взял с одного форума разработчиков, сам 2 часа бился над алгоритмом). Код библиотеки: local RSA = {} local primes = { --таблица простых чисел до 1013 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, } local primes_start = 30 -- начальный индекс рандомизации rsa_p и rsa_q local function modulePow(n1,n2,m) --возведение в степень по модулю local c = 1 for i = 1, n2 do c = (c*n1)%m end return c end function RSA.getkey() rsa_e = 0 rsa_p = primes[math.random(primes_start,#primes)] rsa_q = rsa_p while rsa_q == rsa_p do rsa_q = primes[math.random(primes_start,#primes)] end rsa_n = rsa_p*rsa_q rsa_phi = (rsa_p-1)*(rsa_q-1) while rsa_e == 0 do local prime = primes[math.random(1,#primes)] if rsa_phi%prime > 0 then rsa_e = prime end end for i = 2, rsa_phi/2 do if ((i*rsa_phi)+1)%rsa_e == 0 then rsa_d = ((i*rsa_phi)+1)/rsa_e break end end local public = {rsa_e,rsa_n} local private = {rsa_d,rsa_n} return private, public end function RSA.encrypt(number,pE,pN) return modulePow(number,pE,pN) end function RSA.decrypt(number,sD,sN) return modulePow(number,sD,sN) end return RSA Методы: RSA.getkey(): table,table - возвращает 2 таблицы с приватным (секретным) и публичным ключами. Каждая таблица имеет 2 числа, в последующих функциях можно просто использовать table.unpack и вставлять нужную таблицу RSA.encrypt(number:number, public_E, public_N): number - возвращает зашифрованное число, которое можно расшифровать только закрытым ключом RSA.decrypt(cryptedNumber:number,secret_E,secret_N): number - возвращает дешифрованное число, которое можно использовать, например, как сеансовый ключ (для этого идеально подходит кодирование степени какого-либо числа) и шифровать с помощью, например, более производительной сети Фейстеля, выложенной ранее. Кто-то скажет, что есть дата-карта, но в планшетах нет лишних слотов для нее.
×