[問題] hash checksum 結果問題

作者: gowrite (gowrite)   2018-07-26 10:05:01
大家好
最近有用 openssl md5 在 C 裡面做 hash
但是出現一個很奇怪的現象
用來檢測的檔案已知正確的 hash
所以用來對照自己寫 openssl md5 的 hash 程式
結果是我自己 hash 出來的值跟正確的值幾乎一樣
差別是中間少了一位
正確版 : 5332F3928F933BBD7CE502D43AB53613
自製版 : 5332F3928F933BBD7CE52D43AB53613
^^^^^
中間的 0 不見了
正確版 : A0E3D0F39D038218F3249213E5954254
自製版 : A0E3D0F39D38218F3249213E5954254
^^^^^^
這邊又一個 0 不見了
我對齊一下讓大家比較好對照
正確版 : 5332F3928F933BBD7CE502D43AB53613
自製版 : 5332F3928F933BBD7CE5 2D43AB53613
正確版 : A0E3D0F39D038218F3249213E5954254
自製版 : A0E3D0F39D 38218F3249213E5954254
奇怪的是不見了都是中間部分的 0
但是前面也有出現 0 卻沒有不見
有人知道為什麼會這樣嗎??
不知道可不可以幫忙大概抓一下方向
謝謝
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2018-07-26 12:39:00
大概是你印 byte 沒有要求補零? %02x 之類的
作者: gowrite (gowrite)   2018-07-26 14:20:00
樓上正解 沒錯 printf %02X 就可以了

Links booklink

Contact Us: admin [ a t ] ucptt.com