83 lines
2.6 KiB
C++
83 lines
2.6 KiB
C++
#include "aes.hpp"
|
|
#include "crypt.hpp"
|
|
#include "decrypt.hpp"
|
|
|
|
int main(int argc, char* argv[]) {
|
|
if(argc != 2) {
|
|
std::cerr << "No file argument supplied.\n";
|
|
return 1;
|
|
}
|
|
|
|
//***************************************************
|
|
char* filename = argv[1];
|
|
|
|
aes O = crypt(filename);
|
|
|
|
// Read the file to encrypt
|
|
unsigned char *file;
|
|
// readFile fait l'aloccation mémoire !!! pensé au free
|
|
size_t fileLength = O.readFile(&file);
|
|
printf("%d bytes to be encrypted\n", (int)fileLength);
|
|
|
|
// Encrypt the file
|
|
unsigned char *encryptedFile;
|
|
int encryptedFileLength;
|
|
|
|
crypt temp = static_cast<crypt>(O);
|
|
|
|
// if((encryptedFileLength = (temp).aesEncrypt((const unsigned char*)file, fileLength, &encryptedFile) ) == -1) {
|
|
// fprintf(stderr, "Encryption failed\n");
|
|
// return 1;
|
|
// }
|
|
// printf("%d bytes encrypted\n", encryptedFileLength);
|
|
|
|
// // Append .enc to the filename
|
|
// char *encryptedFilename = (char*)malloc(strlen(filename) + 5);
|
|
// if(encryptedFilename == NULL) {
|
|
// fprintf(stderr, "Failed to allocate memory\n");
|
|
// return 1;
|
|
// }
|
|
// sprintf(encryptedFilename, "%s.enc", filename);
|
|
|
|
// // Write the encrypted file to its own file
|
|
// writeFile(encryptedFilename, encryptedFile, encryptedFileLength);
|
|
|
|
// std::cerr << "aesKey : ";
|
|
// for (int i = 0; i < 32; i++) {
|
|
// std::cerr << std::hex << aesKey[i];
|
|
// }
|
|
// std::cerr << std::endl;
|
|
|
|
// printf("Encrypted message written to \"%s\"\n", encryptedFilename);
|
|
|
|
free(file);
|
|
// //***************************************************
|
|
|
|
// fileLength = readFile(encryptedFilename, &file);
|
|
|
|
// // Decrypt the encrypted file
|
|
// unsigned char *decryptedFile;
|
|
// int decryptedFileLength;
|
|
// if((decryptedFileLength = aesDecrypt(aesDecryptCtx, aesKey, aesIV, file, fileLength, &decryptedFile)) == -1) {
|
|
// fprintf(stderr, "Decryption failed\n");
|
|
// return 1;
|
|
// }
|
|
// printf("%d bytes decrypted\n", (int)decryptedFileLength);
|
|
|
|
// // Append .dec to the filename
|
|
// char *decryptedFilename = (char*)malloc(strlen(filename) + 5);
|
|
// if(decryptedFilename == NULL) {
|
|
// fprintf(stderr, "Failed to allocate memory\n");
|
|
// return 1;
|
|
// }
|
|
// sprintf(decryptedFilename, "%s.dec", filename);
|
|
|
|
// // Write the decrypted file to its own file
|
|
// writeFile(decryptedFilename, decryptedFile, decryptedFileLength);
|
|
// printf("Decrypted file written to \"%s\"\n", decryptedFilename);
|
|
|
|
// free(decryptedFile);
|
|
// free(file);
|
|
|
|
return 0;
|
|
} |