Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Необходимы тестовые последовательности для 3des-cbc 11.10.02 11:45
Автор: PS <PS> Статус: Elderman
|
subj.
К кого нибудь есть ?
|
|
И еще по 3DES-cbc помогите разобраться ! 11.10.02 12:20
Автор: PS <PS> Статус: Elderman Отредактировано 11.10.02 12:25 Количество правок: 1
|
Крыша уехала, а дело стоит :(
Итак TriplDES-cbc, например имеем 16 байт открытого текста.
W1 (8байт), W2 ( следующие 8 байт).
Надо закриптовать.
Не могу понять как реализовывается алгоритм. Есть две идеи:
ИДЕЯ 1:
Encrypt part:
eW1 = Enc( W1)
tW2 = W2 ^ eW1
eW2 = Enc( tW2)
Decrypt part: ...
Encrypt part: ...
Сначала делаем Encrypt DES-cbc для весз 16 байт, потом Decrypt для 16 байт и сного Encrypt.
Triple ( DES-cbc )
ИДЕЯ2:
eW1 = Enc( W1 )
e'W1 = Decr( eW1 )
e''W1 = Enc( e'W1 )
tW2 = W2 ^ e''W1
....
Т.е. Сначала мы прогоняем первые 8 байт (W1) через 3DES (без cbc), потом делаем XOR полученного результата с W2, и прогоняем через 3DES...
(TripeDES)-cbc
Что правильно, что нет ?
|
| |
вот рабочий исходник 11.10.02 12:48
Автор: paganoid Статус: Member
|
Вот тут лежит рабочий исходник des на javascript (я проверял и с эталонами сличал. Тестовые последовательности дома, т.ч. подкинуть не могу ;\)
http://www.shopable.co.uk/des.html
Триплдец из указанной в урле ф-ии получается так:
//tripledes
//this performs tripledes, an encryption, decryption and then encryption
function tripledes (key, message, encrypt, mode, iv, k) {
var result = des_crypt (key.substr(encrypt?0:16,8), message, encrypt, mode, iv, k);
result = des_crypt (key.substr(8,8), result, !encrypt, mode, iv, k);
result = des_crypt (key.substr(encrypt?16:0,8), result, encrypt, mode, iv, k);
return (result);
}
Ее я вроде тож проверял...
http://www.shopable.co.uk/des.html
|
| | |
Сеньск. И еще ответы на свои вопросы: 11.10.02 13:05
Автор: PS <PS> Статус: Elderman
|
Большое спасибо. Но этих исходников у меня море.
Мой баг заключался в неправильной "запятой". Первый класс: "Казнить нельзя помиловать" :)))
Название алгоритма должно звучать так:
( TripleDES ) - cbc
Сначала мы должны гнать 8 байт через 3DES, а уж потом делать XOR со следующими 8 байт.
Кстати, тестовая последовательность:
Key: 000102030405060708090A0B0C0D0E0F
Text: 3030303030303030AA000000000000000000280A0BAB8B2B0BA1D3B48E36DFC201D80000000000000001172D5A5A5A5A
Encrypted text: FA2DEF709E793E3A3D9C7FEF60A1FB4376CF544F9C40282C7C0CA39F5BAB7702AC717CDE62CAE9347013A6003757801F
|
|
|