mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-13 20:08:26 -06:00
Crypto: Add support for 5 new cascades of cipher algorithms (Camellia-Kuznyechik, Camellia-Serpent, Kuznyechik-AES, Kuznyechik-Serpent-Camellia and Kuznyechik-Twofish)
This commit is contained in:
@@ -69,6 +69,11 @@ namespace VeraCrypt
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new Kuznyechik ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new AESTwofish ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new AESTwofishSerpent ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new CamelliaKuznyechik ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new CamelliaSerpent ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new KuznyechikAES ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new KuznyechikSerpentCamellia ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new KuznyechikTwofish ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new SerpentAES ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new SerpentTwofishAES ()));
|
||||
l.push_back (shared_ptr <EncryptionAlgorithm> (new TwofishSerpent ()));
|
||||
@@ -314,4 +319,50 @@ namespace VeraCrypt
|
||||
|
||||
SupportedModes.push_back (shared_ptr <EncryptionMode> (new EncryptionModeXTS ()));
|
||||
}
|
||||
|
||||
// Kuznyechik-Twofish
|
||||
KuznyechikTwofish::KuznyechikTwofish ()
|
||||
{
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherTwofish ()));
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherKuznyechik ()));
|
||||
|
||||
SupportedModes.push_back (shared_ptr <EncryptionMode> (new EncryptionModeXTS ()));
|
||||
}
|
||||
|
||||
// Kuznyechik-AES
|
||||
KuznyechikAES::KuznyechikAES ()
|
||||
{
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherAES ()));
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherKuznyechik ()));
|
||||
|
||||
SupportedModes.push_back (shared_ptr <EncryptionMode> (new EncryptionModeXTS ()));
|
||||
}
|
||||
|
||||
// Kuznyechik-Serpent-Camellia
|
||||
KuznyechikSerpentCamellia::KuznyechikSerpentCamellia ()
|
||||
{
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherCamellia ()));
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherSerpent ()));
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherKuznyechik ()));
|
||||
|
||||
SupportedModes.push_back (shared_ptr <EncryptionMode> (new EncryptionModeXTS ()));
|
||||
}
|
||||
|
||||
// Camellia-Kuznyechik
|
||||
CamelliaKuznyechik::CamelliaKuznyechik ()
|
||||
{
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherKuznyechik ()));
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherCamellia ()));
|
||||
|
||||
SupportedModes.push_back (shared_ptr <EncryptionMode> (new EncryptionModeXTS ()));
|
||||
}
|
||||
|
||||
// Camellia-Serpent
|
||||
CamelliaSerpent::CamelliaSerpent ()
|
||||
{
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherSerpent ()));
|
||||
Ciphers.push_back (shared_ptr <Cipher> (new CipherCamellia ()));
|
||||
|
||||
SupportedModes.push_back (shared_ptr <EncryptionMode> (new EncryptionModeXTS ()));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user