Karine Alves
unread,Sep 21, 2022, 1:59:54 PM9/21/22Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Sign in to report message as abuse
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Crypto++ Users
I'm encrypting a file this way:
#include <cryptopp/files.h>
#include <cryptopp/modes.h>
#include <cryptopp/osrng.h>
#include <cryptopp/base64.h>
#include <cryptopp/hex.h>
#include <Windows.h>
#include <iostream>
#include <fstream>
void FileEncrypt(byte key[], byte iv[]
, const std::string& file, const std::string& dest)
{
CTR_Mode< AES >::Encryption cipher;
cipher.SetKeyWithIV(key, strlen((char*)key), iv, strlen((char*)iv));
std::ifstream in{file, std::ios::binary};
std::ofstream out{dest, std::ios::binary};
CryptoPP::FileSource{in, true,
new CryptoPP::StreamTransformationFilter{
cipher, new CryptoPP::FileSink{out}}};
}
INT main(INT argc, PCHAR* argv)
{
std::string file = "...";
std::string dest = "...";
unsigned char* key[] = "p3s6v9y$B&E)H@Mc";
unsigned char* iv[] = "VkXp2s5v8y/B?E(H";
FileEncrypt(key, iv, file, dest);
FileDecrypt(key, iv, file, dest);
}
Then when needed i'm downloading the encrypted file from my repo.
I've been able to decrypt it with:
```c++
void FileDecrypt(byte key[], byte iv[]
, const std::string& file, const std::string& dest)
{
CTR_Mode< AES >::Decryption cipher;
cipher.SetKeyWithIV(key, strlen((char*)key), iv, strlen((char*)iv));
std::ifstream in{file, std::ios::binary};
std::ofstream out{dest, std::ios::binary};
CryptoPP::FileSource{in, true,
new CryptoPP::StreamTransformationFilter{
cipher, new CryptoPP::FileSink{out}}};
}
```
But this way the decrypted file is saved to disk, how could i decrypt it on memory without saving to disk?