2 G、P 3 = x 3 G)について
リング署名を生成する。実際の署名者は P 2 = x 2 G。
1. キーイメージ I = x 2 Hp(P 2 )を生成する。
2. ランダムな数値α、r 1 、r 3 を生成する(r 2 以外)。
3. チャレンジ c 3 =H(m|αG|αHp(P 2 ))を計算する。
4. 残りのチャレンジを計算
a. c 1 =H(m|r 3 G+c 3 P 3 |r 3 Hp(P 3 )+c 3 I)
b. c 2 =H(m|r 1 G+c 1 P 1 |r 1 Hp(P 1 )+c 1 I)
5. 最後にr 2 =αーc 2 x 2 を計算
6. 署名値はσ(m)=(c 1 , r 1 , r 2 , r 3 )
※ リングサイズが増えると、その分署名のデータサイズも増える。
【表記】
• m:署名対象のメッセージ
• H():暗号学的ハッシュ関数
• Hp():楕円曲線上の点を出力するハッ シュ関数
• G:楕円曲線のベースポイント
α=r 2 +c 2 x 2 なので、c 3 は
c 3 =H(m|(r 2 +c 2 x 2 )G|(r 2 +c 2 x 2 )Hp(P 2 ))
c 3 =H(m|r 2 G+c 2 P 2 |r 2 Hp(P 2 )+c 2 I)
c 1 とc 2 と同じ構成になる。
各チャレンジは前のチャレンジを参照するリングを形成する。