Hawkynt

GOST 28147-89

Educational implementation of the Soviet/Russian GOST 28147-89 block cipher (Magma). 64-bit Feistel network with 256-bit keys using the TestParam S-box set.

Properties

Property Value
Category Block Ciphers
Sub-category Block Cipher
Security status 🎓 Educational Only
Complexity Intermediate
Inventor Soviet Union cryptographers
Year 1989
Origin 🇷🇺 Russia
Source algorithms/block/gost.js

Parameters

Parameter Supported values
Key sizes 32 bytes (256 bits)
Block sizes 8 bytes (64 bits)

Security

Status: 🎓 Educational Only

Known vulnerabilities

Issue Description Mitigation
Weak key classes Some keys may exhibit weak differential properties and reduced cycle lengths. Use uniformly random keys and avoid structured key material.
S-box dependency Security depends heavily on the selected S-box set. Use standardized or audited S-box collections (e.g., TestParam, CryptoPro).

Documentation

References

Test vectors

3 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.

Vector 1 — Crypto++ validation vector 1 (TestParam S-box)

Field Value
key be5ec2006cff9dcf52354959f1ff0cbfe95061b5a648c10387069c25997c0672
input 0df82802b741a292
expected 07f9027df7f7df89

Vector 2 — Crypto++ validation vector 4 (TestParam S-box)

Field Value
key 728fee32f04b4c654ad7f607d71c660c2c2670d7c999713233149a1c0c17a1f0
input d4c05323a4f7a7b5
expected 4d1f2e6b0d9de2ce

Vector 3 — Crypto++ validation vector 9 (TestParam S-box)

Field Value
key 620153ee18096e622b6bfe4ff26bd6c4a3c8f4ed705feb5943cc3b5ab93fc11c
input 40140a581d78bb49
expected d48adce9ae2df9a7

← All algorithms