web-dev-qa-db-ja.com

公開鍵と秘密鍵の有効期間の違い

証明書の拡張機能に関するセクションで、 ITU-T X.509推奨 は次のように記述します。

認証された公開鍵に対応する秘密鍵は、通常、公開鍵の有効期間とは異なる期間にわたって使用されます。デジタル署名キーを使用すると、署名用秘密キーの使用期間は通常、検証用公開キーの使用期間よりも短くなります。証明書の有効期間は、公開鍵を使用できる期間を示しており、秘密鍵の使用期間と同じである必要はありません。秘密キーの侵害が発生した場合、依存者が秘密キーの正当な使用期間を知っている場合、公開期間を制限できます。したがって、公開鍵証明書で秘密鍵の使用期間を示すことができるという要件があります。

公開鍵と秘密鍵の有効期間に違いがある理由がわかりません。なぜ秘密鍵が別の期間にわたって使用されるのですか?秘密鍵が危険にさらされると、公開鍵を使用する意味がなくなります。秘密鍵が侵害される前に発行されたことがわかっているメッセージを認証する場合を除きます。しかし、なぜ公開鍵はしばらくすると有効性を失うのでしょうか?

6
Jacques

しかし、なぜ公開鍵はしばらくすると有効性を失うのでしょうか?

1つの理由は、証明書への署名方法が古くなっている可能性があるためです。

たとえば、ハッシュアルゴリズムまたは署名アルゴリズム/キーの長さが古すぎるためです。

たとえば、ハッシュアルゴリズムを考えてみましょう。現在、SHA-1で署名された証明書は間もなくリリースされます。そのハッシュはもはや安全に見えないからです。

SHA-1が使用される前は、証明書にMD5が含まれていました。そしてそれも段階的に廃止されました。 (そして人々はCAに公開鍵を他のより強力なパラメーターで再署名するように要求しなければなりませんでした。MD5-> SHA1、SHA1-> SHA2など)

3
StackzOfZtuff

まず、この拡張の目的はコンテキスト固有です。からITU-T X.509、「9.2.2.5秘密鍵の使用期間の延長」:

注3 –一般に、この仕様は、この拡張とセマンティクスを関連付けていません。 この拡張機能の特定の使用では、その使用法に関連するセマンティクスを指定する必要があります

さて、私が考えることができるその拡張のいくつかの可能な使用は、商業/請求目的のためです。

たとえば、CAが外部TSAのTSU証明書に署名しようとしており、TSAが1年間(秘密鍵の使用期間)だけタイムスタンプトークン(TST)に署名するように制限したいが、最後のタイムスタンプはユーザーは、TSTを6年間(完全な証明書の公開キーの有効期間)検証します。これにより、タイムスタンプの更新を実行するための時間が長くなります。

1
Jaime Hablutzel