[C++] Errori con stfDecryptor

di il
2 risposte

[C++] Errori con stfDecryptor


case 2:
		cout << "Hai scelto 2 --> decriptare\n";
		programma.apri_file();
		if (fdc)
			{
				fgets(messaggiou, 1000, fdc);
				cout << ("testo da decriptare: ")
					 << ("%s", messaggiou);		  												//qui stampa a schermo la stringa ancora criptata ok!

				char *messaggiou;
				messaggiou = (char*)malloc(encoded.length() + 1); // don't forget to free!!!!
																 //s2 = Database_row_count; // I forget if the string class can implicitly be converted to char*
															    //s2[0] = '1';
				strcpy(messaggiou, encoded.c_str());

				const char* hex_str = messaggiou;

				std::string result_string;
				unsigned int ch;
				for (; std::sscanf(hex_str, "%2x", &ch) == 1; hex_str += 2)
					result_string += ch;
				cout << "Da HEX FORM a Testo cifrato :: ";
				std::cout << result_string << '\n';
				cout << endl;

				/*********************************\
				\*********************************/

				CryptoPP::AES::Decryption aesDecryption((byte *)key.c_str(), CryptoPP::AES::DEFAULT_KEYLENGTH);
				CryptoPP::CBC_Mode_ExternalCipher::Decryption cbcDecryption(aesDecryption, (byte *)iv.c_str());

				CryptoPP::StreamTransformationFilter stfDecryptor(cbcDecryption, new CryptoPP::StringSink(decryptedtext));
				stfDecryptor.Put(reinterpret_cast<const unsigned char*>(result_string.c_str()), result_string.size());
				stfDecryptor.MessageEnd();
				std::cout << "Testo Decriptato: " << decryptedtext << "\n" << std::endl;

				Beep(900, 100);
				Beep(900, 100);
				Beep(900, 100);
			}
Mi da questo errore (Debug error! Abort() has been called) su questa porzione di codice.
Visto che sto cercando di implementarla e non l'ho scritto io, volevo vedere se voi riuscite a dirmi dove sta l'errore
P.s fino al mio primo commento il codice sicuramente non causa l'errore.

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte