Hi,
I know this sounds silly but I have a hard time trying to encrypt the AES
session key using RSA.
I know that the is key is in byte, can I still use StringSource to read the
key and encrypt using PK_EncryptorFilter?
Below is my coding:
int main (int argc, char* argv[])
{
// Pseudo Random Number Generator
AutoSeededRandomPool rng;
// Generate session key for AES
byte key[AES::DEFAULT_KEYLENGTH];
rng.GenerateBlock(key, AES::DEFAULT_KEYLENGTH);
// Generate random IV for AES
byte iv[AES::BLOCKSIZE];
rng.GenerateBlock(iv, AES::BLOCKSIZE);
// Define privateKey & publicKey as RSA asymmetric keys
RSA::PrivateKey privateKey;
RSA::PublicKey publicKey;
//Load pregenerated RSA Keys
privateKey.Load( FileSource ("private.key", true ).Ref());
publicKey.Load( FileSource ("public.key", true).Ref());
/*****************************************************/
// Encrypt Session Key
RSAES_OAEP_SHA_Encryptor encrypt (publicKey);
string cipherKey,cipherIV, hexKey;
StringSource (key, new HexEncoder (new StringSink (hexKey)) );
cout << "Key: " << hexKey;
StringSource (hexKey, true, new PK_EncryptorFilter (rng, encrypt,
new StringSink (cipherKey)));
/******************************************************/
return 0;
}
Thanks you,
fboyixiz
--
View this message in context:
http://old.nabble.com/How-to-encrypt-AES-session-key-using-RSA--tp27424547p27424547.html
Sent from the Crypto++ Users mailing list archive at Nabble.com.
--
You received this message because you are subscribed to the "Crypto++ Users"
Google Group.
To unsubscribe, send an email to [email protected].
More information about Crypto++ and this group is available at
http://www.cryptopp.com.