API version 1
- ‐

Hash

ハッシュ値を生成するクラスです。

ハッシュ値とは、文書や数値などのデータからハッシュアルゴリズムにより算出される固定長の値で、元のデータの要約として利用できます。 ハッシュ値は単なる数値の羅列となるため、ハッシュ値から元のデータを推定することは不可能となります。

この特徴を使って、ある文書のハッシュ値を算出して保存しておき、後に同じ文書から算出したハッシュ値と保存しておいたハッシュ値と比較すれば、その間に元の文書が改竄されていないことを確認することができます。 元の文書全体を別の場所に保存して比較しても同様の事ができますが、ハッシュ値は文書の大きさに関わりなく固定長の短いデータとなるため保存したり比較したりする事が容易になります。

電子署名でもハッシュが使われており、署名するデータのハッシュ値(メッセージダイジェスト)を算出して公開鍵暗号アルゴリズムで暗号化されています。 公開鍵で解読したハッシュ値と、元のデータから算出し直したハッシュ値が一致すれば、間違いなく公開鍵の持ち主により作成されたデータで、改竄もされていないことが保障されます。

このクラスは readableオブジェクト、writableオブジェクト として使用することが可能です。