PDA

Просмотр полной версии : Асиметричное шифрование


KEZ
08.10.2005, 15:28
Необходимо дать следующий код (всеравно на чём):

есть хост (например KEZ!Satan@169.254.200.200) (irc),
пароль, хеш

нужно сделать так чтобы из пароля и хоста генерировался хеш. причем по маске и хешу незя было узнать пароль.
Для того чтобы не писать на канале
!pass 123 для ботов, если на канале ктото будет под видом бота он получит пароль. а так только хеш и по нему парооль узнать незя

асиметрия... как в PGP

В математике я не особо силен.

КОД ДЛЯ IRC-отсылки сообщений НЕ НУЖЕН, только
код шифрования

ProTeuS
08.10.2005, 18:37
в принЦипе, можно наваять какой-то простенький механизм гаммирования хоста и паса, а потом просто заюзать для этой строки необратимые математи4еские операЦии - просто, быстро и со вкусом =)

выход более красивый - использовать уже готовые алгоритмы, их ведь и в *.asm и *.c найти не проблема (если надо 4то-то конкретное - могу поделиться)

ЗЫ: я одного не полян, при4ем здесь ассиметри4еское шифрование? имхо ты описывал симметри4еское, и я нигде не заметил нужды в формировании клю4ей и последующей тх подписи, аутентификаЦии :confused:

drmist
09.10.2005, 11:21
Алгоритм SHA на Delphi:
http://drmist.nm.ru/MyProjects/Hashs.zip
Еще есть на cobans.net в HashLib.
Если на дельфи тебя не устраивает - читай Шнайера:
http://drmist.narod.ru/crypto.rar

Просто хэшируй пароль и хост. Я бы еще рекомендовал твой ник, текущее время в минутах и длинную случайную строку, прописанную в ботах.

Если ты особый паранойик, то можешь попытаться написать RSA.
Как он работает написанно у Шнайера.
Модуль для работы с большими числами на Delphi (для RSA) здесь:
http://drmist.h12.ru/cgi-bin/download/?q=BigNumber

последний написан нашим соотечественником и взят с сайта ndb.narod.ru. Сейчас он закрыт, тк проект не обновлялся более года.