在那里没有noob指南加密++。或者无论如何我都没发现过。我想要做的是解密我用另一个AES加密器生成的uchars数组。我从哪里开始?我建立了图书馆并连接了grand。我是否需要设置任何内容,或者我只是在我的数组上调用一个函数(如果是这样的函数)?
我真的会从知道这些东西的人那里得到一些帮助。
由于
答案 0 :(得分:3)
我不会说我对此有太多“了解我的东西”,但这里有一些测试代码我用AES加密/解密字符串。将其扩展为使用其他一些数据应该不会太难。
string output;
CTR_Mode<AES>::Encryption encrypt((const byte*)key,AES::DEFAULT_KEYLENGTH,(const byte*)iv);
StringSource(plaintext, true, new StreamTransformationFilter(encrypt, new StringSink(output)));
cout << "Encrypted: " << output << endl;
string res;
CTR_Mode<AES>::Decryption decrypt((const byte*)key,AES::DEFAULT_KEYLENGTH,(const byte*)iv);
StringSource(output, true, new StreamTransformationFilter(decrypt, new StringSink(res)));
cout << "Decrypted: " << res << endl;
在研究这个问题时,我发现Crypto ++测试程序(VisualStudio项目称为“cryptest”)中的源代码是一个很大的帮助。一开始阅读起来有点困难,但是当你使用它时会变得更容易。我也从维基百科(http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation)了解可用的分组密码模式方面获得了很多帮助。
答案 1 :(得分:1)