メインコンテンツまでスキップ

1. はじめに (Introduction)

「DNS Security Extensions (DNSSEC)」[RFC9364]は、DNSデータの認証を提供するために使用されます。DNSSEC署名アルゴリズムは、[RFC4034]、[RFC4509]、[RFC5155]、[RFC5702]、[RFC5933]、[RFC6605]、[RFC8080]を含む様々なRFCによって定義されています。

相互運用性を確保するため、「mandatory-to-implement」DNS公開鍵(DNSKEY)アルゴリズムのセットが[RFC8624]で定義されています。アルゴリズムの現在のステータスをより簡単にアクセスおよび理解できるようにし、これらの推奨事項への将来の変更をより簡単に公開できるようにするため、本文書はアルゴリズムの正規ステータスを[RFC8624]からIANA DNSSECアルゴリズムレジストリに移動します。本文書はまた、[RFC9157]からの改訂されたIANA DNSSEC考慮事項を組み込んでいます。さらに、運用者へのアドバイスとして、これらのアルゴリズムの展開および使用に関する推奨事項を追加します。

これは、「TLS Cipher Suites」レジストリ[TLS-ciphersuites]で使用されているプロセスと類似しており、暗号スイートの正規リストはIANAレジストリにあり、RFCはIANAレジストリを参照します。

1.1 文書の対象者 (Document Audience)

IANA「DNS Security Algorithm Numbers」[DNSKEY-IANA]および「Digest Algorithms」[DS-IANA]レジストリに追加された列は、DNSSEC運用者および実装者を対象としています。

実装は、様々な実装間および異なるバージョンとの相互運用性を提供するとともに、高いセキュリティ期待を満たす必要があります。

暗号学の分野は継続的に進化しています。新しい、より強力なアルゴリズムが登場し、既存のアルゴリズムは当初考えられていたよりも安全性が低いことが判明する可能性があります。したがって、アルゴリズム実装要件と使用ガイダンスは、新しい現実を反映し、より安全なアルゴリズムへのスムーズな移行およびもはや安全とは見なされないアルゴリズムの廃止を可能にするため、時々更新する必要があります。

実装は、コードの複雑さと攻撃対象領域の両方を最小化するため、実装するアルゴリズムの選択において保守的である必要があります。

実装者の視点は、最も安全なアルゴリズムのみでDNSSECを展開および構成したい運用者の視点とは異なる場合があります。そのため、本文書は、実装ステータスに関係なく展開すべきアルゴリズムに関する新しい推奨事項も追加します。一般的に、実装がそれらのサポートを停止する前に、古いアルゴリズムの展開は通常減少することが期待されます。

1.2 アルゴリズム要件レベルの更新 (Updating Algorithm Requirement Levels)

DNSSEC暗号アルゴリズムが実装必須とされる時点では、それはすでにほとんどの実装で利用可能であるべきです。本文書は、各アルゴリズムの実装推奨事項を指定するための将来の文書を可能にするIANA登録変更を定義しています。これは、各DNSSEC暗号アルゴリズムの推奨ステータスは時間とともに変化することが予想されるためです。たとえば、新しく導入されたアルゴリズムが将来実装必須になる保証はありません。同様に、公開されたアルゴリズムは継続的に暗号攻撃にさらされており、弱すぎるか、または完全に破られる可能性があり、将来廃止を必要とします。

アルゴリズムの廃止は段階的に実行されることが期待されます。これにより、実装が相互運用可能なままで実装アルゴリズムを更新する時間を提供します。強力なセキュリティ上の理由がない限り、アルゴリズムはMUSTからMUST NOTに直接ではなく、MUSTからNOT RECOMMENDEDまたはMAYにダウングレードされることが期待されます。同様に、実装必須として言及されていないアルゴリズムは、MUSTではなく最初にRECOMMENDEDとして導入されることが期待されます。

未知のDNSKEYアルゴリズムを使用した効果は、ゾーンが安全でないものとして扱われることであるため、NOT RECOMMENDED以下にダウングレードされたアルゴリズムは、権威ネームサーバーおよびDNSSEC署名者が新しいDNSKEYを作成するために使用しないことが推奨されます。これにより、廃止されたアルゴリズムの使用が時間とともに減少することが保証されます。アルゴリズムが十分に低い展開レベルに達したら、MUST NOTとしてマークすることができ、再帰リゾルバがその検証のサポートを削除できるようになります。

検証する再帰リゾルバは、MUST NOTとマークされていないすべてのアルゴリズムのサポートを保持することが推奨されます。

1.3 要件表記 (Requirements Notation)

本文書におけるキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「NOT RECOMMENDED」、「MAY」、および「OPTIONAL」は、BCP 14 [RFC2119] [RFC8174]に記載されているとおりに解釈されるものとします。ただし、ここに示すようにすべて大文字で表示される場合に限ります。

[RFC2119]は、SHOULDという用語をRECOMMENDEDと同等とみなし、SHOULD NOTをNOT RECOMMENDEDと同等とみなします。本文書は、RECOMMENDEDおよびNOT RECOMMENDEDという用語を使用することを選択しました。これは、実装者への推奨事項をより明確に表現するためです。