我正在使用Crypto ++的一些測試代碼來適應它。
有一個功能:如何使用Crypto ++將文件內容轉發到StringSink?
void DecryptFile(const char *in, const char *out, const char *passPhrase)
{
FileSource f(in, true, new DefaultDecryptorWithMAC(passPhrase, new FileSink(out)));
}
其中DecryptFile
是#define DecryptFile DecryptFileW
(我在Windows上)。
所以,如果cpass
是正確的,那麼name_f.c_str()
文件的內容被寫入decrypted_alphabet.txt
文件解密通過DecryptFile(name_f.c_str(), "decrypted_alphabet.txt", cpass);
調用。
現在的問題:我找不到將文件內容轉發到StringSink
而不是文件的方式!我試着手動調用此:
string out;
FileSource (in, true, new DefaultDecryptorWithMAC(cpass, new StringSink(out)));
但這返回一些蹩腳的字符,如ъ!$
或5(#
(每一個新的時間)。也許我不能很好地解釋我的問題,所以,這裏的一段代碼,在那裏我嘗試破解一個4位數的保護txt文件:http://pastebin.com/FJng91Y6
感謝您的回答,我會嘗試 – Groosha