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

9. CBOR エンコーディングの制限

  1. CBOR エンコーディングの制限

    本文書は、CBOR エンコーダーの動作方法に課す制限を限定している。新しいエンコーディング制限は、RFC 8949 [STD94] のセクション 4.2.1 で指定されているコア決定論的エンコーディング要件 (Core Deterministic Encoding Requirements) に準拠している。これは、以下の制限に絞り込まれている。

    • この制限は、Sig_structure、Enc_structure、および MAC_structure のエンコーディングに適用される。

    • エンコーディングは確定長 (definite lengths) を使用して行わなければならず (MUST)、(エンコードされた) 引数の長さは可能な限り最小の長さでなければならない (MUST)。これは、整数 1 が "0x1801" ではなく "0x01" としてエンコードされることを意味する。

    • アプリケーションは、単一のマップ内で同じラベルをキーとして 2 回使用するメッセージを生成してはならない (MUST NOT)。アプリケーションは、単一のマップ内で同じラベルをキーとして 2 回使用するメッセージを解析および処理してはならない (MUST NOT)。アプリケーションは、解析ステップで失敗するパーサーを使用するか、すべてのキーをアプリケーションに渡すパーサーを使用し、アプリケーションが重複キーのチェックを実行することで、解析および処理の要件を強制できる。