こんにちは皆さん、ありがとうございます。奇妙な動作のBitcoinライブラリ関数
だから私は、出力は次のことを、この.cppファイルを得た:
暗号=(奇妙caractersのバンチ)
Decryp =アロの月ココ
だから、すべてがうまくている...しかし、あれば私は次の出力を取得し、最初のものの上に第三のコメント行を入れ替え:
暗号=(奇妙caractersの束)アロの月ココ
Decryp =アロの月ココ
//Like that everything outputs well
#include "Crypto/MainCrypto.h"
namespace Crypto
{MainCrypto::MainCrypto()
{const unsigned char Key[16] = "Bob";
const unsigned char IV[16] = "Random";
AES128CBCEncrypt m_AES128CBCEncrypt(Key, IV, 0);
AES128CBCDecrypt m_AES128CBCDecrypt(Key, IV, 0);
unsigned char ciptxt[16]; //1
unsigned char dcptxt[16]; //2
unsigned char Data[16] = "Allo mon coco"; //3
m_AES128CBCEncrypt.Encrypt(Data, 16, ciptxt);
m_AES128CBCDecrypt.Decrypt(ciptxt, 16, dcptxt);
std::cout << "Cipher = " << ciptxt << std::endl;
std::cout << "Decryp = " << dcptxt << std::endl;
}
MainCrypto::~MainCrypto()
{}
}
//Like that, I'm getting unwanted Allo mon coco
#include "Crypto/MainCrypto.h"
namespace Crypto
{MainCrypto::MainCrypto()
{const unsigned char Key[16] = "Bob";
const unsigned char IV[16] = "Random";
AES128CBCEncrypt m_AES128CBCEncrypt(Key, IV, 0);
AES128CBCDecrypt m_AES128CBCDecrypt(Key, IV, 0);
unsigned char Data[16] = "Allo mon coco"; //3
unsigned char ciptxt[16]; //1
unsigned char dcptxt[16]; //2
m_AES128CBCEncrypt.Encrypt(Data, 16, ciptxt);
m_AES128CBCDecrypt.Decrypt(ciptxt, 16, dcptxt);
std::cout << "Cipher = " << ciptxt << std::endl;
std::cout << "Decryp = " << dcptxt << std::endl;
}
MainCrypto::~MainCrypto()
{}
}
私はそれはそれを行う理由を手掛かりを持っていません。あなたが理解すれば私に説明してください。
'const unsigned char Key [16] =" Bob ";' - > 'std :: string Key =" Bob ";'。文字列を格納するには 'char []'の代わりに 'std :: string'を使います。 – Fureeish
AES128CBCEncryptコンストラクタはconst unsigned char * –
のみを受け付けます。' std :: string :: c_str() 'を確認してください – Fureeish