私はちょうど走った
$ sha1sum myfile
退屈から。
myfileは、私が作成した空のファイルです
$ touch myfile
sha1sum が実際にチェックサムを返したことに驚きました。これらのチェックサムは、空でないコンテンツから計算されるはずではありませんか? 空のファイルのチェックサムは、ハードコードされた「魔法の」定数ですか?
空のメッセージと、たとえば1バイトのデータを含むメッセージとの根本的な違いはありません。アルゴリズムはここhttp://en.wikipedia.org/wiki/SHA-1#Examples_and_pseudocodeで説明されており、データがゼロでも問題ありません。
例えば。
前処理:
メッセージにビット「1」を追加します。append0≤k<512ビット「0」。結果のメッセージ長(ビット単位)が448(mod 512)と一致するようにします。