LINUX.ORG.RU

[python][студентота]ГОСТ 28147-89 в режимме гаммирования

 ,


0

1

Делаю курсач по сабжу и получил такую вещь, что при дешифровании вижу только первые 64 бита открытого текста, все остальное - мусор.
Никак не могу найти где ошибся, помогите пофиксить.
Скрипт

★★★★★

Посты типа «разберитесь в моем коде и решите за меня проблему» должны вызывать много ненависти. Может ТС стоит взяться за обычную процедуру дебага и выявления ошибок.

pathfinder ★★★★
()
Ответ на: комментарий от pathfinder

Я не специалист ни по питону и ни по «ГОСТ 28147-89 в режимме гаммирования», но мне кажется, что предложенный код вполне можно было разбить на части и посмотреть на какой стадии что-то пошло не так.

pathfinder ★★★★
()

В ГОСТ 28147 базовым режимом является блочный. Реализовывать сразу гаммирование сложно и избыточно. К примеру у вас 2 раза один и тот же цикл шифрования в коде. Сделайте функцию encrypt_ecb и decrypt_ecb для облегчения жизни.

rymis ★★
()

1. Алгоритм шифрования симметричный => необходимо прежде всего проверить обратимость элементарных операций.

2. Далее проверяется правильность порядка этих операций при шифровании и дешифрации.

3. Гаммирование => необходимо заменить псевдослучайный ряд константой и посмотреть правильно ли работает алгоритм. Если правильно, то значит надо искать баг в гаммировании, если нет, см. п.1

gandjubas
()

Знатнейший быдлокодец.

Особенно лютым выглядит дергание input_data и постоянное инстанцирование crypt_alg.

В такой каше не напороться на ошибку было бы удивительным делом.

P.S. $100

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.