デジタル署名におけるハッシュとその用途についての説明

完了

これまで、メッセージを覗き見られないために暗号を使用する方法を、暗号化の使用を通じて説明しました。 さらに、暗号はドキュメントや画像などのデータが改ざんされていないことを検証するためにも使用されます。 これは、ハッシュというプロセスを通じて実現されます。

ハッシュとは?

ハッシュでは、ハッシュ関数と呼ばれるアルゴリズムを使用して、元のテキストを一意の固定長値に変換します。 これは、ハッシュ値と呼ばれます。 同じアルゴリズムを使用して同じテキストがハッシュ化されるたびに、同じハッシュ値が生成されます。 その後、そのハッシュは関連付けられたデータの一意の識別子として使用できます。

プレーンテキスト メッセージを受け取ってハッシュ値を生成するハッシュ関数の例を示す図。

ハッシュは、キーを使用しない点で暗号化とは異なり、ハッシュ値では暗号を解除して元に戻すことができません。

ハッシュ関数の種類は多種多様です。 一般的でセキュリティの専門家の話題に上ることがあるものとして、セキュア ハッシュ アルゴリズム (SHA) が挙げられます。 SHA は、それぞれに機能が異なるハッシュ アルゴリズムのファミリです。 詳細はこのコンテンツの範囲外ですが、一般的に使用される SHA の 1 つは、256 ビット長のハッシュ値が生成される SHA-256 です。

デジタル署名とは?

一般的なハッシュの用途はデジタル署名です。 紙に書いた署名と同様に、デジタル署名では、ドキュメントに記された署名が実際に署名者によるものであることを確認します。 さらに、デジタル署名は、ドキュメントが改ざんされていないことを検証するためにも使用されます。

デジタル署名の機能

デジタル署名は、手書きの署名と同じように、ドキュメントに署名する個人ごとに常に一意になります。 すべてのデジタル署名に非対称キー ペア (秘密キーと公開キー) が使用されています。

デジタル署名サービスを使用することで、Monica はドキュメントにデジタル署名を割り当てできるようになります。 ドキュメントに署名することで、そのドキュメントのタイムスタンプ付きハッシュが生成されます。 このハッシュは、Monica の秘密キーを使用して暗号化されます。 その後、署名サービスにより元のドキュメントに暗号化されていないハッシュが追加されます。 最後に、デジタル署名されたドキュメントと、Monica の公開キーが Victoria に送信されます。

Victoria はデジタル署名されたドキュメントを受信したときに、同じデジタル署名サービスを使用して、ドキュメントから Monica のハッシュを抽出し、元のプレーンテキスト ドキュメントに対する新しいハッシュを生成します。 その後、Monica の公開キーを使用して、暗号化されたハッシュの暗号を解除します。 Monica の暗号解除したハッシュと、そのドキュメントに対して Victoria が作成したハッシュが一致した場合、そのデジタル署名は正当です。 そうすることで、Victoria はドキュメントが改ざんされていないことを確認できます。

次の 2 分間のビデオでは、デジタル署名が機能するしくみと、ドキュメントが改ざんされたかどうかを示す方法について説明しています。

デジタル署名には、デジタル署名サービスの使用が必要です。 この機能は、多くの企業が提供しています。 最も一般的なものは、DocuSign と Adobe Sign の 2 つです。