如何加密&使用OpenSSL解密C文件中的二進制文件?加密和解密二進制文件的問題
我有一個測試程序,加密並解密給定的輸入。
我執行了我的測試程序的文本文件,輸出與輸入相同,但是當我在二進制文件上執行測試程序時,輸出與輸入不同。
如何加密&使用OpenSSL解密C文件中的二進制文件?加密和解密二進制文件的問題
我有一個測試程序,加密並解密給定的輸入。
我執行了我的測試程序的文本文件,輸出與輸入相同,但是當我在二進制文件上執行測試程序時,輸出與輸入不同。
只是猜測:你正在使用Windows,並在文件操作中錯過了O_BINARY標誌?
有可能您正在使用字符串函數,如strlen()
在您正在閱讀的緩衝區中。 OpenSSL函數適用於二進制文件。
沒有看到你的代碼,我們只能猜測。但我的第一個猜測是,你的加密或解密例程在二進制文件中的一個\ 0字符或兩個字符上。數據必須視爲字節而不是字符串。 (與本頁其他地方提到的StrLen()問題相同)
我不是C程序員(!),但我設法使Delphi/Pascal中的加密例程工作的方式是下載OpenSSL source(在C中)並逐步完成openssl.exe應用程序的代碼。一旦你弄清楚他們自己怎麼做,使用EVP_ *函數變得更容易了。
你應該儘量不要在標題中使用CAPSLOCK,這是一種侵略性。 – 2010-08-20 08:03:45
你會不會喊? – 2010-08-20 08:04:42
也許你可以發佈你寫的測試程序的一些相關部分? – Gian 2010-08-20 08:24:06