2 @section ГОСТ 28147-89 (Магма)
16 @url{https://tools.ietf.org/html/rfc5830.html, 5830}
18 2@sup{224} имея 2@sup{32} пар открытый-зашифрованный текст.
19 Всё очень сильно зависит от используемых таблиц замен
21 @url{https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_28147-89, статья}
26 @item Разработан ещё в СССР, 8-ым управлением КГБ.
27 @item Стандарт не фиксирует значения таблиц замен (S-box).
29 @item Если бы S-box был фиксирован в стандарте, то в нём могли бы
31 @item Секретный S-box можно использовать как дополнительную ключевую
33 @item Это не позволяет определить стойкость алгоритма не зная
34 таблиц замены. Самостоятельный выбор может существенно повлиять на
35 криптостойкость алгоритма.
36 @item Реализации алгоритма, использующие разные таблицы, не
37 совместимы между собой.
39 @item Из-за маленького размера блока необходимо быть аккуратным при его
40 использовании и часто менять ключи.
41 @item Название "Магма" введено в стандарте @ref{ru34122015, Кузнечика}.
42 Магма идентичен ГОСТ 28147-89, за исключением фиксированной таблицы
43 замены и немного отличающегося преобразования ключей и блоков.
49 @multitable @columnfractions 0.6 0.1 0.3
50 @headitem Ссылка @tab Язык @tab Комментарий
52 @item @url{http://gostcrypto.com/doc/GostCipher.html} @tab JavaScript @tab
53 @item @url{http://www.gogost.cypherpunks.ru/} @tab Go @tab
54 @item @url{http://www.pygost.cypherpunks.ru/} @tab Python @tab
55 @item @url{http://www.libressl.org/} @tab C @tab
56 @item @url{https://github.com/openssl/openssl/tree/master/engines} @tab C @tab
57 @item @url{https://github.com/Roman-Oliynykov/ciphers-speed} @tab C++ @tab
58 @item @url{https://www.gnu.org/software/libgcrypt/} @tab C @tab