Skip to content

joannesberndt/GOST2-128-FILE-ENCRYPTION

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

GOST2-128-FILE-ENCRYPTION

File encryption with GOST2-128 in CBC and GCM mode (Go language)

  • Build:

  • go build -o gost2file gost2-128-cbc.go

  • Usage:

  • ./gost2file c <input_file> -> produces <input_file>.gost2

  • ./gost2file d <input_file> -> removes .gost2 suffix if present, else appends .dec

  • Build:

  • go build -o gost2gcm gost2-128-gcm.go

  • Usage:

  • ./gost2gcm c <input_file> -> produces <input_file>.gost2

  • ./gost2gcm d <input_file> -> removes .gost2 suffix if present, else appends .dec

GOST 2-128 was released in 2016. It has exactly the same design as GOST but has twice as many S-tables and uses 64-bit integers instead of 32-bit integers. It no longer works on 64-bit blocks but on 128-bit blocks like AES. The two S-tables are those of the Central Bank of Russian Federation and that of the GOST R 34.12-2015 standard. GOST had 256-bit keys that were reused as subkeys. In GOST 2-128, subkeys are generated by a one-way hash function, representing 4096 bits. Thus, no weak keys exist and attacks against GOST do not work in GOST 2-128.

Releases

No releases published

Packages

No packages published

Languages