質問

OpenSSLの使用からのハッシュがPythonで得られるものと異なるのはなぜですか?

$ echo "Lorem ipsum" | openssl dgst -sha1 -hex
(stdin)= d0c05753484098c61e86f402a2875e68992b5ca3
$ python
>>> from hashlib import sha1
>>> sha("Lorem ipsum").hexdigest()
'94912be8b3fb47d4161ea50e5948c6296af6ca05'
>>> from Crypto.Hash import SHA
>>> SHA.new("Lorem ipsum").hexdigest()
'94912be8b3fb47d4161ea50e5948c6296af6ca05'

文字列は同等ではありませんか?明白なものが足りないのですか?

編集: 見つけてくれてありがとう。ファイルから保存されたメッセージをパイピングしていましたが、これは同じ迷惑な新線問題にも悩まされていました。

$ cat message | openssl dgst -sha1 -hex
'keep whacking your head mate, it wont be the same'
$ echo -n $(cat message) | openssl dgst -sha1 -hex
'ok, you got me, for now' 

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top