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

3.2. Recommended Nonce Formation (推奨されるノンスの構成)

ノンスを構成する次の方法が推奨されます (RECOMMENDED)。ノンスは図 1 に示すように整形され, 先頭のオクテットは Fixed (固定) フィールドからなり, 末尾のオクテットは Counter (カウンタ) フィールドからなります。各固定鍵について, これら各フィールドの長さ, したがってノンスの長さは固定です。実装は, Counter フィールドが 4 オクテットの 12 オクテットノンスを支援すべきである。

   <----- variable ----> <----------- variable ----------->
+---------------------+----------------------------------+
| Fixed | Counter |
+---------------------+----------------------------------+

Figure 1: Recommended nonce format

連続するノンスの Counter フィールドは, それらのフィールドをネットワークバイト順の符号なし整数とみなしたとき, 単調増加列をなします。Counter フィールドの長さは, 所与の暗号化デバイスに対して生成されるすべてのノンスについて一定でなければならない。Counter 部分は最初のノンスではゼロであるべきであり, 生成される各連続ノンスについて 1 ずつ増加すべきである。ただし, 都合がよければ, 特定の Counter 値はスキップされ, 用いられる値の列から省略してもよい。たとえば, アプリケーションは初期 Counter=0 の値をスキップし, 最初のノンスの Counter フィールドを 1 に設定してもよい。したがって, Counter フィールドが C オクテットの長さのとき, 多くとも 2^(8*C) 個のノンスを生成できる。

Fixed フィールドは, 所与の暗号化デバイスに対して生成されるすべてのノンスについて一定でなければならない。単一の鍵で暗号化を行う異なるデバイスがある場合, 各異なるデバイスはノンスの一意性を保証するために, 互いに異なる Fixed フィールドを用いなければならない。したがって, Fixed フィールドが F オクテットの長さのとき, 多くとも 2^(8*F) 個の異なる暗号化器が鍵を共有できる。