3
我試圖找出方法來編寫以下的OpenSSL命令:的base64文件摘要計算與OpenSSL的
場景:
假設:文件的Base64編碼值(b64.txt)
Base64編碼的sha1文件摘要(正好是該文件的20個字節sha1摘要)。
問題:如果給定文件的摘要是正確的,我必須用C程序進行驗證。
我的方法:
- 我第一次嘗試的OpenSSL命令編寫代碼之前驗證摘要。這是我如何做到的。
- 我先解碼了這個base64文件,然後找到了文件的sha1摘要。
我不知道爲什麼我從來沒有得到20byte的值作爲輸出。並與試驗和錯誤只有這些工作:
在Linux系統上,我做了以下內容:
base64 -d b64.txt > dec.out
(dec.out是文本和二進制(不可破譯的)文本的混合)openssl dgst -sha1 -binary dec.out > sha1.bin
(我發現了摘要以二進制形式假設dec.out作爲二進制輸入)base64 sha1.bin > sha1.b64
(編碼以base64的SHA1結果)
現在我的sha1.b64給出了一個20byte的摘要,這和給我的一樣。
首先我想知道命令的順序是否正確,以及是否有更簡單的方法。
而且,與EVP_Digest *如何編程這(我的意思是該文件的輸入格式在這些指定?)
請澄清。
謝謝
爲每個句子添加一個新段落使其難以閱讀... – Jason 2011-02-15 09:30:41