@item You have to be very cautious using that cipher with that small
blocksize and often do rekeying.
@end itemize
+
+@strong{Implementations}: @ref{2814789Impl, here}.
that is why there are incompatible implementations, that output digest
as either little-endian or big-endian value.
@end itemize
+
+@strong{Implementations}: @ref{341194Impl, here}.
much better and have high serious security margin.
Information here is aimed for software and protocol developers.
-There are example implementations of those algorithms on
-@url{http://www.cypherpunks.ru/pygost/, Python} and on
-@url{http://www.cypherpunks.ru/gogost/, Go}.
@multitable @columnfractions 0.5 0.5
@headitem Western algorithm @tab Russian analogue
key-agreement based on elliptic curves.
@item Additional user key material (UKM) is specified at inputs.
@end itemize
+
+@strong{Implementations}: @ref{VKOImpl, here}.
@item Из-за маленького размера блока необходимо быть аккуратным при его
использовании и часто менять ключи.
@end itemize
+
+@anchor{2814789Impl}
+@strong{Реализации}
+
+@multitable @columnfractions 0.6 0.1 0.3
+@headitem Ссылка @tab Язык @tab Комментарий
+
+@item @url{http://gostcrypto.com/doc/GostCipher.html} @tab JavaScript @tab
+@item @url{http://www.cypherpunks.ru/gogost/} @tab Go @tab
+@item @url{http://www.cypherpunks.ru/pygost/} @tab Python @tab
+@item @url{http://www.libressl.org/} @tab C @tab
+@item @url{https://github.com/openssl/openssl/tree/master/engines} @tab C @tab
+@item @url{https://github.com/Roman-Oliynykov/ciphers-speed} @tab C++ @tab
+@item @url{https://www.gnu.org/software/libgcrypt/} @tab C @tab
+
+@end multitable
@item @url{http://www.libressl.org/} @tab C @tab
@item @url{https://github.com/gost-engine/engine} @tab C @tab
@item @url{https://github.com/NeverWalkAloner/ECCGost} @tab C# @tab
-@item @url{https://github.com/openssl/openssl/tree/master/engines} @tab C @tab OpenSSL
+@item @url{https://github.com/openssl/openssl/tree/master/engines} @tab C @tab
@item @url{https://www.gnu.org/software/libgcrypt/} @tab C @tab
@end multitable
результат -- поэтому есть несовместимые между собой реализации в который
хэш представлен в виде little-endian или big-endian значения.
@end itemize
+
+@anchor{341194Impl}
+@strong{Реализации}
+
+@multitable @columnfractions 0.6 0.1 0.3
+@headitem Ссылка @tab Язык @tab Комментарий
+
+@item @url{http://gostcrypto.com/doc/GostDigest.html} @tab JavaScript @tab
+@item @url{http://www.cypherpunks.ru/gogost/} @tab Go @tab
+@item @url{http://www.cypherpunks.ru/pygost/} @tab Python @tab
+@item @url{http://www.libressl.org/} @tab C @tab
+@item @url{https://github.com/mjosaarinen/gost-r34.11-94} @ tab C @tab
+@item @url{https://github.com/openssl/openssl/tree/master/engines} @tab C @tab
+@item @url{https://www.gnu.org/software/libgcrypt/} @tab C @tab
+
+@end multitable
@item @url{https://github.com/MaXaMaR/kuznezhik} @tab C++ @tab Оптимизировано под 8/16/32/64/128-битные архитектуры
@item @url{https://github.com/mjosaarinen/kuznechik} @tab C @tab
@item @url{https://github.com/NeverWalkAloner/Cryptography-standards/tree/master/symmetric} @tab Python @tab
+@item @url{https://github.com/okazymyrov/kuznechik} @tab Sage @tab
@item @url{https://github.com/Roman-Oliynykov/ciphers-speed} @tab C++ @tab
@item @url{https://github.com/yaruson/GostPlugin} @tab C# @tab Плагин для KeePass
гораздо лучше, имеют высокий серьёзный порог безопасности.
Информация рассчитана, в первую очередь, на разработчиков протоколов и
-программного обеспечения. Имеются примеры реализации алгоритмов на
-@url{http://www.cypherpunks.ru/pygost/, языке Python} и на
-@url{http://www.cypherpunks.ru/gogost/, языке Go}.
+программного обеспечения.
@multitable @columnfractions 0.5 0.5
@headitem Западный алгоритм @tab Российский аналог
@item Дополнительно на вход подаётся пользовательский ключевой материал
UKM (User Key Material).
@end itemize
+
+@anchor{VKOImpl}
+@strong{Реализации}
+
+@multitable @columnfractions 0.6 0.1 0.3
+@headitem Ссылка @tab Язык @tab Комментарий
+
+@item @url{http://gostcrypto.com/} @tab JavaScript @tab
+@item @url{http://www.cypherpunks.ru/pygost/} @tab Python @tab
+
+@end multitable