HN🔥 13
💬 1

ハッシュ関数完全攻略:データはどのように断片化され、保存され、守られているのか?

denismenace
5日前

ディスカッション (2件)

0
denismenaceOP
👍135日前

ハッシュ関数は、単にデータを変換するだけのものではありません。膨大なデータを効率的に処理し、改ざんを許さないセキュリティの要として、現代のコンピュータサイエンスにおいて極めて重要な役割を果たしています。この記事では、データが「断片化(Chopped)」され、「保存(Stored)」され、「保護(Secured)」されるまでの舞台裏を分かりやすく解説します。

1
tptacek
約18時間前

現代の汎用的な暗号学的ハッシュ関数(SHA2のようなもの)を理解するための正しいアプローチは、ブロック暗号を理解することだね。ハッシュ関数とは、ブロック暗号の置換核を「圧縮」関数に繋げたもの(ここで言う圧縮は一般的な意味よりも単純で、CBCモードが行うチェーン処理に近いもの)で、同じ置換プロセスにブロックを連続的に流し込み、状態をかき混ぜていく仕組みなんだ。

ハッシュ関数とブロック暗号では制約やパラメータが異なるから、細部の調整は違ってくる(ちなみに、Rijndael/AESを置換核に使ったSHA3の候補もあったけど、ハードウェア対応が広くて魅力的だったよね)。でも、核となる仕組みは基本的に同じだよ。

(もちろん、逆にハッシュ関数から暗号を導き出すことも簡単にできる。Chapolyが生まれたのはそういう経緯からさ)