GCrypt/GhettoCrypt/InitializationVector.cpp

16 lines
413 B
C++
Raw Normal View History

2022-02-06 18:38:09 +01:00
#include "InitializationVector.h"
#include <iostream>
#include "Feistel.h"
2022-02-06 18:38:09 +01:00
GhettoCipher::InitializationVector::InitializationVector(const Block& seed)
2022-02-06 18:38:09 +01:00
{
// We'll generate our initialization vector by encrypting our seed with itself as a key
// iv = E(M=seed, K=seed)
iv = Feistel(seed).Encipher(seed);
2022-02-06 18:38:09 +01:00
}
GhettoCipher::InitializationVector::operator GhettoCipher::Block() const
2022-02-06 18:38:09 +01:00
{
return iv;
}