SHA256概略
ネタがない、こんな日は読めそうなところを読むべきだろう。
そこで今回はメジャーなハッシュであるSHA256について読んでみた。
それはともかく、今回のsha256_generic.cはなぜかcryptディレクトリに入っていた。
ハッシュ化と暗号化は別物のはずなのだが……
とりま定数定義に関しては省略、アルゴリズムには関係無いしね!
名前からいかにも初期化してるなーというinitとついた関数を見てみましょう。
当然のごとくstaticです。
今回は256のみに注目して224は無視します。
crypt_sha256_initではsha_256_initを返しています。
引数の構造体はハッシュ構造体とvoidへのポインタが入っているようだ。
返り値の引数にはshash_desc構造体から__ctxを返している。 非常にシンプルだ。
さて本日の感想だが……正直これだけ? というところになる。
数学的な素養はないがそういったハッシュ化への知識がなくてもブラックボックスで使えるようになっているようだ。
updateとfinalでは同じような関数を返している、特筆すべきことはない。