ブロムの計画


Blom’s_scheme
Blomのスキームは、暗号化における対称しきい値鍵交換プロトコルです。このスキームは、1980年代初頭に一連の記事でスウェーデンの暗号研究者RolfBlomによって提案されました。
信頼できる当事者は、各参加者に秘密鍵と公開識別子を提供します。これにより、任意の2人の参加者が通信用の共有鍵を個別に作成できます。ただし、攻撃者が少なくともk人のユーザーのキーを危険にさらす可能性がある場合、攻撃者はスキームを破り、すべての共有キーを再構築する可能性がBlomのスキームは、しきい値の秘密共有の一形態です。
ブロムのスキームは、現在で使用されているHDCP(バージョン1.xではのみ)のような高精細コンテンツの送信元と受信用の共有鍵、生成するために、保護スキームコピーHD DVDのプレーヤーとハイビジョンテレビを。

コンテンツ
1 プロトコル
1.1 プロトコルの設定 1.2 新しい参加者を挿入する 1.3 アリスとボブの間の共有キーの計算
2 攻撃抵抗
3 参考文献

プロトコル
鍵交換プロトコルには、信頼できる当事者(Trent)と { scriptstyle n}

 ユーザー。ましょうアリスとボブはグループの2人のユーザーです。

プロトコルの設定
トレントはランダムで秘密の対称行列を選択します k k
{ scriptstyle D_ {k、k}}

 以上の有限体 (( )。
{ scriptstyle GF(p)}

 、ここで、pは素数です。 { scriptstyle D}

  新しいユーザーをキー共有グループに追加する場合に必要です。
例えば:k =
3 =
17 =(( 16 2 6 3 8 2 8 2
)。 o 17
{{ begin {aligned} k&= 3 \ p&= 17 \ D&= { begin {pmatrix} 1&6&2 \ 6&3&8 \ 2&8&2 end {pmatrix}} mathrm {mod} 17 end {整列}}}

新しい参加者を挿入する
新規ユーザーのアリスとボブは、鍵交換グループに参加したいと考えています。トレントはそれらのそれぞれに公開識別子を選択します。すなわち、k要素ベクトル: I l I e I o ∈ k(( )。
{I _ { mathrm {Alice}}、I _ { mathrm {Bob}} in GF ^ {k}(p)}

 。
例えば: l I e =(( 1
)。 I o =(( 5 )。 {I _ { mathrm {Alice}} = { begin {pmatrix} 1 \ 2 \ 3 end {pmatrix}}、I _ { mathrm {Bob}} = { begin {pmatrix} 5 \ 3 \ 1 end {pmatrix}}}

次に、トレントは秘密鍵を計算します。 l I e = I l
I e o= I o {{ begin {aligned} g _ { mathrm {Alice}}&= DI _ { mathrm {Alice}} \ g _ { mathrm {Bob}}&= DI _ { mathrm {Bob}} end {整列}}}

使用する {D}

  上記のように: l I e =(( 16 2 6 3 8 2 8 2 )。 (( 12 3
)。 = (( 1936 24
)。 o 17 = (( 22 7
)。 o=(( 16 2 6 3 8 2 8 2 )。 (( 53 1
)。 = (( 2547 36
)。 o 17 = (( 813 2 )。 {{ begin {aligned} g _ { mathrm {Alice}}&= { begin {pmatrix} 1&6&2 \ 6&3&8 \ 2&8&2 end {pmatrix}} { begin {pmatrix} 1 \ 2 \ 3 end {pmatrix}} = { begin {pmatrix} 19 \ 36 \ 24 end {pmatrix}} mathrm {mod} 17 = { begin {pmatrix} 2 \ 2 \ 7 end {pmatrix}} \ g _ { mathrm {Bob}}&= { begin {pmatrix} 1&6&2 \ 6&3&8 \ 2&8&2 end {pmatrix}} { begin {pmatrix} 5 \ 3 \ 1 end {pmatrix}} = { begin {pmatrix} 25 \ 47 \ 36 end {pmatrix}} mathrm {mod} 17 = { begin {pmatrix} 8 \ 13 \ 2 end {pmatrix}} end {aligned}}}

それぞれが秘密鍵を使用して、グループの他の参加者との共有鍵を計算します。

アリスとボブの間の共有キーの計算
今、アリスとボブはお互いにコミュニケーションを取りたいと思っています。アリスはボブの識別子を持っています
I o { scriptstyle I _ { mathrm {Bob}}}

  と彼女の秘密鍵 l I e { scriptstyle g _ { mathrm {Alice}}}

 。
彼女は共有鍵を計算しますk l I e
/ o = l
I e I o { scriptstyle k _ { mathrm {Alice / Bob}} = g _ { mathrm {Alice}} ^ {T} I _ { mathrm {Bob}}}

 、 どこ { scriptstyle T}

 行列転置を示します。ボブは自分の秘密鍵と彼女の識別子を使用して同じことを行い、同じ結果を出します。k l I e
/ o =k l I e/ o= ((l
I e I o
NS)。=(( I l
I e私 o
NS)。=
I o私 lI e =
k o/ l I e {k _ { mathrm {Alice / Bob}} = k _ { mathrm {Alice / Bob}} ^ {T} =(g _ { mathrm {Alice}} ^ {T} I _ { mathrm {Bob}} )^ {T} =(I _ { mathrm {Alice}} ^ {T} D ^ {T} I _ { mathrm {Bob}})^ {T} = I _ { mathrm {Bob}} ^ {T} DI _ { mathrm {Alice}} = k _ { mathrm {Bob / Alice}}}

それぞれ、次のように共有キーを生成します。k l I e
/ o=(( 22 7
)。 (( 53 1
)。= 2
××5 + 2
××3 + 7
××1 =
23 o 17= 6
k o / l I e =(( 813 2
)。 (( 12 3
)。= 8
××1 + 13
××2 + 2
××3 =
40 o 17= 6
{{ begin {aligned} k _ { mathrm {Alice / Bob}}&= { begin {pmatrix} 2 \ 2 \ 7 end {pmatrix}} ^ {T} { begin {pmatrix} 5 \ 3 \ 1 end {pmatrix}} = 2 times 5 + 2 times 3 + 7 times 1 = 23 mathrm {mod} 17 = 6 \ k _ { mathrm {Bob / Alice }}&= { begin {pmatrix} 8 \ 13 \ 2 end {pmatrix}} ^ {T} { begin {pmatrix} 1 \ 2 \ 3 end {pmatrix}} = 8 times 1 + 13 times 2 + 2 times 3 = 40 mathrm {mod} 17 = 6 end {aligned}}}

攻撃抵抗
攻撃者がすべての共有キーを計算する前に、少なくともk個のキーが危険にさらされるようにするには、識別子はk線形独立である必要がランダムに選択されたk個のユーザー識別子のすべてのセットは線形独立である必要がそれ以外の場合、悪意のあるユーザーのグループは、識別子が自分の識別子に線形依存している他のメンバーのキーを計算できます。この特性を確保するために、識別子はMDSコードマトリックス(最大距離分離可能エラー訂正コードマトリックス)から選択することが望ましい。MDSマトリックスの行は、ユーザーの識別子になります。MDSコードマトリックスは、実際にはリードソロモンエラー訂正コードのコードマトリックスを使用して選択できます(このエラー訂正コードは、簡単に理解できる数学のみを必要とし、非常に迅速に計算できます)。

参考文献
^ ブロム、ロルフ。非公開鍵の配布。Proc。CRYPTO 82、231〜236ページ、ニューヨーク、1983年。プレナムプレス ^ ブロム、ロルフ。「対称鍵生成システムの最適なクラス」、レポートLiTH-ISY-I-0641、リンショーピング大学、1984年 ^ クロスビー、スコット; ゴールドバーグ、イアン; ジョンソン、ロバート; 歌、夜明け; ワグナー、デビッド(2002)。高帯域幅デジタルコンテンツ保護システムの暗号解読。デジタル著作権管理におけるセキュリティとプライバシー。DRM2001。コンピュータサイエンスの講義ノート。コンピュータサイエンスの講義ノート。2320。pp。192–200。CiteSeerX  10.1.1.10.9307。土井:10.1007 / 3-540-47870-1_12。ISBN 978-3-540-43677-5。
^ Menezes、A。; Paul C. van Oorschot&Scott A. Vanstone(1996)応用暗号化ハンドブック。CRCプレス。ISBN
 978-0-8493-8523-0。”