Crypto++  8.8
Free C++ class library of cryptographic schemes
Classes | Typedefs
kalyna.h File Reference

Classes for the Kalyna block cipher. More...

Go to the source code of this file.

Classes

struct  Kalyna128_Info
 Kalyna-128 block cipher information. More...
 
struct  Kalyna256_Info
 Kalyna-256 block cipher information. More...
 
struct  Kalyna512_Info
 Kalyna-512 block cipher information. More...
 
class  Kalyna_Base
 Kalyna block cipher base class. More...
 
class  Kalyna128
 Kalyna 128-bit block cipher. More...
 
class  Kalyna128::Base
 
class  Kalyna256
 Kalyna 256-bit block cipher. More...
 
class  Kalyna256::Base
 
class  Kalyna512
 Kalyna 512-bit block cipher. More...
 
class  Kalyna512::Base
 

Typedefs

typedef Kalyna128::Encryption Kalyna128Encryption
 
typedef Kalyna128::Decryption Kalyna128Decryption
 
typedef Kalyna256::Encryption Kalyna256Encryption
 
typedef Kalyna256::Decryption Kalyna256Decryption
 
typedef Kalyna512::Encryption Kalyna512Encryption
 
typedef Kalyna512::Decryption Kalyna512Decryption
 

Detailed Description

Classes for the Kalyna block cipher.

The Crypto++ implementation relied upon three sources. First was Oliynykov, Gorbenko, Kazymyrov, Ruzhentsev, Kuznetsov, Gorbenko, Dyrda, Dolgov, Pushkaryov, Mordvinov and Kaidalov's "A New Encryption Standard of Ukraine: The Kalyna Block Cipher" (http://eprint.iacr.org/2015/650.pdf). Second was Roman Oliynykov and Oleksandr Kazymyrov's GitHub with the reference implementation (http://github.com/Roman-Oliynykov/Kalyna-reference). The third resource was Keru Kuro's implementation of Kalyna in CppCrypto (http://sourceforge.net/projects/cppcrypto/). Kuro has an outstanding implementation that performed better than the reference implementation and our initial attempts.

Definition in file kalyna.h.