付録 A. RFC 4366 からの変更点
RFC 4366 とこのドキュメントの間の重要な変更を以下に説明します。
RFC 4366 は、一般的な拡張メカニズム(TLS ハンドシェイクおよびクライアントとサーバー hello 用)と特定の拡張の両方を説明していました。RFC 4366 は RFC 4346、TLS 1.1 に関連付けられていました。クライアントとサーバー hello の拡張メカニズムは RFC 5246、TLS 1.2 に移動されたため、RFC 5246 に関連付けられているこのドキュメントには、RFC 4366 からのハンドシェイク拡張メカニズムと特定の拡張のみが含まれています。RFC 5246 は、未知の拡張エラーと新しい拡張仕様の考慮事項も規定しているため、その資料はこのドキュメントから削除されました。
サーバー名拡張は、UTF-8 を排除し、ASCII 表現のみを規定するようになりました。ServerNameList には、特定の name_type の名前を複数含めることができることが規定されています。サーバー名が提供されても認識されない場合、サーバーはエラーなしでハンドシェイクを続行するか、致命的エラーを送信すべきです。警告レベルのメッセージを送信することは推奨されません。クライアントの動作が予測不可能になるためです。セッションを再開するかどうかを決定する際に server_name 拡張を使用するための規定が追加されました。さらに、この拡張は、セッションを確立した完全なハンドシェイクと同じである必要があります。server_name 拡張が異なる場合、そのような再開要求を受け入れてはならず、代わりに新しいセッションを確立する可能性のある完全なハンドシェイクを実行する必要があります。
クライアント証明書 URL 拡張は、ハッシュの存在を必須にするように変更されました。
DTLS の場合、ネゴシエートされた最大フラグメント長のオーバーフローを報告する要件は、認証に合格することを条件としています。
TLS サーバーは、証明書を取得する際に HTTP リダイレクトに従うことが禁止されるようになりました。
資料も小規模に再編成されました。たとえば、どのエラーが致命的であるかに関する情報は、「エラーアラート」セクションから個々の拡張仕様に移動されました。