SHA-256 アルゴリズム (ビットコイン マイニング) の入力のサイズに関係なく、常に 256 ビットの結果が出力されるのはなぜですか?
さらに、入力のサイズに関係なく、計算時間は常に同じになるのはなぜですか?
SHA-256 アルゴリズム (ビットコイン マイニング) の入力のサイズに関係なく、常に 256 ビットの結果が出力されるのはなぜですか?
さらに、入力のサイズに関係なく、計算時間は常に同じになるのはなぜですか?
最初の質問に対する答えは、設計によるものだということです。SHA-256 アルゴリズムは、任意の量の入力データを取得し、256 ビットの出力を生成すると同時に、効果的な暗号化ハッシュを作成する特定のプロパティを維持することを目的としています。他のハッシュ アルゴリズムは、異なる出力サイズを生成します (たとえば、SHA-1 は 160 ビットの出力を生成し、SHA-512 は 512 ビットの出力を生成します)。
2番目の質問は、誤った仮定に基づいています-計算時間は入力のサイズに依存します.1KBのファイルを読み取るよりも、1MBのファイルを読み取るだけでも自然に時間がかかります.ハッシュは入力のすべてのビットに応じて、大きな入力は小さな入力よりもハッシュに時間がかかります。
出力サイズは、このように設計されたもの (アルゴリズム) と同じです。
入力サイズが重要です。1GB ファイルと 1KB ファイルのハッシュを計算して比較するだけで、速度の違いがわかります。