AES 库或 C++ 代码
AES Library or code for C++
我应该让下面的 class 超载两次。一次我应该使用 AES (Rijndael) 实现它,一次使用 Twofish。但是,我似乎找不到只允许加密单个块的简单实现。我发现的实现包括 CBC 和 Padding。有什么提示吗?
#ifndef CRYPTER_H
#define CRYPTER_H
#include <valarray>
class Crypter {
public:
Crypter();
virtual ~Crypter();
//Encrypts a single block of 16 byte.
virtual std::valarray<unsigned char> encrypt(std::valarray<unsigned char> plaintext,
std::valarray<unsigned char> passphrase) = 0;
//Decrypts a single block of 16 byte.
virtual std::valarray<unsigned char> decrypt(std::valarray<unsigned char> cyphertext,
std::valarray<unsigned char> passphrase) = 0;
};
#endif /* CRYPTER_H */
Openssl 是 C/C++ 的最佳加密库,我认为绝对值得一看。
您始终可以自己将数据分成块并 encrypt/decrypt 使用库函数。
我应该让下面的 class 超载两次。一次我应该使用 AES (Rijndael) 实现它,一次使用 Twofish。但是,我似乎找不到只允许加密单个块的简单实现。我发现的实现包括 CBC 和 Padding。有什么提示吗?
#ifndef CRYPTER_H
#define CRYPTER_H
#include <valarray>
class Crypter {
public:
Crypter();
virtual ~Crypter();
//Encrypts a single block of 16 byte.
virtual std::valarray<unsigned char> encrypt(std::valarray<unsigned char> plaintext,
std::valarray<unsigned char> passphrase) = 0;
//Decrypts a single block of 16 byte.
virtual std::valarray<unsigned char> decrypt(std::valarray<unsigned char> cyphertext,
std::valarray<unsigned char> passphrase) = 0;
};
#endif /* CRYPTER_H */
Openssl 是 C/C++ 的最佳加密库,我认为绝对值得一看。
您始终可以自己将数据分成块并 encrypt/decrypt 使用库函数。