Ternick
@Ternick

Как исправить ошибку Debag Error?

Всем доброго времени суток !
Я только начинающий в С++, до этого выучил python 3
#include <Windows.h>
#include <fstream>
#include <sstream>
#include <iostream>
#include <string>
#include <iomanip>

#include "C:\Users\terno\Desktop\Crypto ++\modes.h"
#include "C:\Users\terno\Desktop\Crypto ++\aes.h"
#include "C:\Users\terno\Desktop\Crypto ++\filters.h"

#define ERROR_OPENING_FILE  "FILE NOT FOUND"
#pragma warning( disable : 4326)

using namespace std;

string slurp(string filename) {
	stringstream sstr;
	ifstream in("cry_" + filename);
	if (in.is_open())
	{
		sstr << in.rdbuf();
		in.close();
		return sstr.str();
	}
	else {
		in.close();
		ifstream in1(filename);
		if (in1.is_open()) {
			sstr << in1.rdbuf();
			in1.close();
			return sstr.str();
		}
		else {
			cout << ERROR_OPENING_FILE << endl;
			cin.get();
			exit(0);
		}
	}
		
}

string encrypting(string text, string key)
{
	string ciphertext;
	string iv = "Ternick";

	CryptoPP::AES::Encryption aesEncryption((byte *)key.c_str(), CryptoPP::AES::DEFAULT_KEYLENGTH);
	CryptoPP::CBC_Mode_ExternalCipher::Encryption cbcEncryption(aesEncryption, (byte *)iv.c_str());

	CryptoPP::StreamTransformationFilter stfEncryptor(cbcEncryption, new CryptoPP::StringSink(ciphertext));
	stfEncryptor.Put(reinterpret_cast<const unsigned char*>(text.c_str()), text.length() + 1);
	stfEncryptor.MessageEnd();

	return ciphertext;
}

string decrypting(string enctext, string key)
{
	string decryptedtext;
	string iv = "Ternick";

	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*>(enctext.c_str()), enctext.size());
	stfDecryptor.MessageEnd();

	return decryptedtext;
}

void main()
{
	string text;
	string key;

	setlocale(LC_ALL, "rus");
	cout << "Введите текст : \n";
	cin >> text;
	cout << "Введите ключ для шифровки :\n";
	cin >> key;
	cout<<encrypting(text, key);
	cout<<("\n==================================\n");
	string enctext;
	string deckey;

	cout << "Введите зашифрованный текст : \n";
	cin >> enctext;
	cout << "Введите ключ для дешифровки :\n";
	cin >> deckey;
	cout << decrypting(enctext, deckey);

	system("pause");
}

При запуске в режиме дебага при попытке расшифровки пихает ошибку :(

W6J3CI1jR-CWDfe4YffuPg.png

Все библиотеки правильно импортированы(прилинкованы), скомпилированы :)

Я хотел сделать aes шифрование :)
И сегментировать на 2 части ;)
Шифровку и расшифровку :)
И вот результат моего кода :( - Ошибка

Мыслей нет, что делать не знаю (пример то работает) :(
  • Вопрос задан
  • 77 просмотров
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Мыслей нет, что делать не знаю

нажать на "Прервать" и смотреть в отладчике, где этот abort(), почему он там и как программа туда попала.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы