JP2008113315A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2008113315A5 JP2008113315A5 JP2006295599A JP2006295599A JP2008113315A5 JP 2008113315 A5 JP2008113315 A5 JP 2008113315A5 JP 2006295599 A JP2006295599 A JP 2006295599A JP 2006295599 A JP2006295599 A JP 2006295599A JP 2008113315 A5 JP2008113315 A5 JP 2008113315A5
- Authority
- JP
- Japan
- Prior art keywords
- value
- signature
- hash
- bit
- exclusive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Claims (22)
整数の秘密鍵xを格納する第1記憶部と、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを格納する第2記憶部と、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを格納する第3記憶部と、
整数の任意値kを生成する任意値生成部と、
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力する群演算部と、
出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力する第1ハッシュ演算部と、
署名検証装置との共有値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するビット結合部と、
上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し((+)は排他的論理和演算子)、当該排他的論理和値rを出力する排他的論理和演算部と、
出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力する第3ハッシュ演算部と、
s=k−t・x∈Zを算出し、当該演算結果sを出力する整数演算部と、
署名σ=(r,s)と上記クリアメッセージmclrとを出力する署名出力部と、を有し、
上記値β及び上記値γの少なくとも一方の値は、
さらに、上記リカバリメッセージmrecのビット長Mに依存して決まる値である、
ことを特徴とする署名生成装置。 A signature generation device for generating a signature,
A first storage unit for storing an integer secret key x;
A second storage unit for storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M ;
A third storage for storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N ;
An arbitrary value generator for generating an arbitrary value k of an integer;
A group operation unit that calculates R = g k ∈G when the cyclic group of order q is G and the generation source of the cyclic group G is g, and outputs the operation result R;
A hash function H 0 having an output bit length of L + M bits (L is a positive integer shared with the signature verification apparatus): {0, 1} * → {0, 1} L + M depends on at least the operation result R A first hash operation unit that operates on a fixed value β and outputs an L + M-bit hash value Π = H 0 (β) ∈ {0, 1} L + M as a result of the operation;
L + M-bit bit combination value in which the shared value hε {0,1} L with the signature verification device is arranged in the first bit position and the recovery message m rec ε {0,1} M is arranged in the second bit position d = h | m rec ε {0, 1} L + M is calculated, and a bit combination unit that outputs the bit combination value d;
The exclusive logical sum r = Π (+) dε {0, 1} L + M of the hash value Π and the bit combination value d is calculated ((+) is an exclusive logical OR operator), and the exclusive logical An exclusive OR operation unit for outputting a sum value r;
An hash function H 3 having an integer output value: {0, 1} * → Z is applied to a value γ determined depending on at least the exclusive OR value r and the clear message m clr , A third hash calculator that outputs a hash value t = H 3 (γ) εZ;
an integer calculation unit that calculates s = kt−x∈Z and outputs the calculation result s;
A signature output unit that outputs the signature σ = (r, s) and the clear message m clr ;
At least one of the value β and the value γ is
Furthermore, the value is determined depending on the bit length M of the recovery message m rec .
A signature generation apparatus characterized by the above.
整数の秘密鍵xを格納する第1記憶部と、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを格納する第2記憶部と、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを格納する第3記憶部と、
整数の任意値kを生成する任意値生成部と、
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力する群演算部と、
出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力する第1ハッシュ演算部と、
署名検証装置との共有値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するビット結合部と、
上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し((+)は排他的論理和演算子)、当該排他的論理和値rを出力する排他的論理和演算部と、
出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力する第3ハッシュ演算部と、
s=k−t・x∈Zを算出し、当該演算結果sを出力する整数演算部と、
署名σ=(r,s)と上記クリアメッセージmclrとを出力する署名出力部と、を有し、
上記値β及び上記値γの少なくとも一方の値は、
さらに、上記クリアメッセージmclrのビット長Nに依存して決まる値である、
ことを特徴とする署名生成装置。 A signature generation device for generating a signature,
A first storage unit for storing an integer secret key x;
A second storage unit for storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M ;
A third storage for storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N ;
An arbitrary value generator for generating an arbitrary value k of an integer;
A group operation unit that calculates R = g k ∈G when the cyclic group of order q is G and the generation source of the cyclic group G is g, and outputs the operation result R;
A hash function H 0 having an output bit length of L + M bits (L is a positive integer shared with the signature verification apparatus): {0, 1} * → {0, 1} L + M depends on at least the operation result R A first hash operation unit that operates on a fixed value β and outputs an L + M-bit hash value Π = H 0 (β) ∈ {0, 1} L + M as a result of the operation;
L + M-bit bit combination value in which the shared value hε {0,1} L with the signature verification device is arranged in the first bit position and the recovery message m rec ε {0,1} M is arranged in the second bit position d = h | m rec ε {0, 1} L + M is calculated, and a bit combination unit that outputs the bit combination value d;
The exclusive logical sum r = Π (+) dε {0, 1} L + M of the hash value Π and the bit combination value d is calculated ((+) is an exclusive logical OR operator), and the exclusive logical An exclusive OR operation unit for outputting a sum value r;
An hash function H 3 having an integer output value: {0, 1} * → Z is applied to a value γ determined depending on at least the exclusive OR value r and the clear message m clr , A third hash calculator that outputs a hash value t = H 3 (γ) εZ;
an integer calculation unit that calculates s = kt−x∈Z and outputs the calculation result s;
A signature output unit that outputs the signature σ = (r, s) and the clear message m clr ;
At least one of the value β and the value γ is
Furthermore, the value is determined depending on the bit length N of the clear message m clr .
A signature generation apparatus characterized by the above.
整数の秘密鍵xを格納する第1記憶部と、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを格納する第2記憶部と、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを格納する第3記憶部と、
整数の任意値kを生成する任意値生成部と、
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力する群演算部と、
出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力する第1ハッシュ演算部と、
出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記リカバリメッセージmrecに依存して定まる値αに作用させ、その演算結果であるLビットのハッシュ値h=H1(α)∈{0,1}Lを出力する第2ハッシュ演算部と、
上記ハッシュ値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するビット結合部と、
上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し((+)は排他的論理和演算子)、当該排他的論理和値rを出力する排他的論理和演算部と、
出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力する第3ハッシュ演算部と、
s=k−t・x∈Zを算出し、当該演算結果sを出力する整数演算部と、
署名σ=(r,s)と上記クリアメッセージmclrとを出力する署名出力部と、
を有することを特徴とする署名生成装置。 A signature generation device for generating a signature,
A first storage unit for storing an integer secret key x;
A second storage unit for storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M ;
A third storage for storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N ;
An arbitrary value generator for generating an arbitrary value k of an integer;
A group operation unit that calculates R = g k ∈G when the cyclic group of order q is G and the generation source of the cyclic group G is g, and outputs the operation result R;
A hash function H 0 having an output bit length of L + M bits (L is a positive integer shared with the signature verification apparatus): {0, 1} * → {0, 1} L + M depends on at least the operation result R A first hash operation unit that operates on a fixed value β and outputs an L + M-bit hash value Π = H 0 (β) ∈ {0, 1} L + M as a result of the operation;
A hash function H 1 having an output bit length of L bits: {0, 1} * → {0, 1} L is applied to a value α determined at least depending on the recovery message m rec, and L is a result of the calculation. A second hash calculator that outputs a hash value h = H 1 (α) ∈ {0, 1} L of bits;
The hash value hε {0,1} L is arranged at the first bit position, and the recovery message m rec ε {0,1} M is arranged at the second bit position. m rec ∈ {0, 1} L + M is calculated, and a bit combination unit that outputs the bit combination value d;
The exclusive logical sum r = Π (+) dε {0, 1} L + M of the hash value Π and the bit combination value d is calculated ((+) is an exclusive logical OR operator), and the exclusive logical An exclusive OR operation unit for outputting a sum value r;
An hash function H 3 having an integer output value: {0, 1} * → Z is applied to a value γ determined depending on at least the exclusive OR value r and the clear message m clr , A third hash calculator that outputs a hash value t = H 3 (γ) εZ;
an integer calculation unit that calculates s = kt−x∈Z and outputs the calculation result s;
A signature output unit that outputs the signature σ = (r, s) and the clear message m clr ;
A signature generation apparatus comprising:
整数の秘密鍵xを格納する第1記憶部と、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを格納する第2記憶部と、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを格納する第3記憶部と、
整数の任意値kを生成する任意値生成部と、
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力する群演算部と、
出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力する第1ハッシュ演算部と、
出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記クリアメッセージmclrに依存して定まる値αに作用させ、その演算結果であるLビットのハッシュ値h=H1(α)∈{0,1}Lを出力する第2ハッシュ演算部と、
上記ハッシュ値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するビット結合部と、
上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し、当該排他的論理和値rを出力する排他的論理和演算部と、
出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力する第3ハッシュ演算部と、
s=k−t・x∈Zを算出し、当該演算結果sを出力する整数演算部と、
署名σ=(r,s)と上記クリアメッセージmclrとを出力する署名出力部と、
を有することを特徴とする署名生成装置。 A signature generation device for generating a signature,
A first storage unit for storing an integer secret key x;
A second storage unit for storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M ;
A third storage for storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N ;
An arbitrary value generator for generating an arbitrary value k of an integer;
A group operation unit that calculates R = g k ∈G when the cyclic group of order q is G and the generation source of the cyclic group G is g, and outputs the operation result R;
A hash function H 0 having an output bit length of L + M bits (L is a positive integer shared with the signature verification apparatus): {0, 1} * → {0, 1} L + M depends on at least the operation result R A first hash operation unit that operates on a fixed value β and outputs an L + M-bit hash value Π = H 0 (β) ∈ {0, 1} L + M as a result of the operation;
A hash function H 1 with an output bit length of L bits: {0,1} * → {0,1} L is applied to a value α determined at least depending on the clear message m clr, and L is the result of the operation A second hash calculator that outputs a hash value h = H 1 (α) ∈ {0, 1} L of bits;
The hash value hε {0,1} L is arranged at the first bit position, and the recovery message m rec ε {0,1} M is arranged at the second bit position. m rec ∈ {0, 1} L + M is calculated, and a bit combination unit that outputs the bit combination value d;
Exclusive OR operation unit that calculates exclusive OR r = Π (+) dε {0, 1} L + M of the hash value Π and the bit combination value d and outputs the exclusive OR value r When,
An hash function H 3 having an integer output value: {0, 1} * → Z is applied to a value γ determined depending on at least the exclusive OR value r and the clear message m clr , A third hash calculator that outputs a hash value t = H 3 (γ) εZ;
an integer calculation unit that calculates s = kt−x∈Z and outputs the calculation result s;
A signature output unit that outputs the signature σ = (r, s) and the clear message m clr ;
A signature generation apparatus comprising:
上記値β及び上記値γの少なくとも一方の値は、
さらに、上記リカバリメッセージmrecのビット長Mに依存して決まる値である、
ことを特徴とする署名生成装置。 The signature generation device according to claim 3 or 4,
At least one of the value β and the value γ is
Furthermore, the value is determined depending on the bit length M of the recovery message m rec .
A signature generation apparatus characterized by the above.
上記値β及び上記値γの少なくとも一方の値は、
さらに、上記クリアメッセージmclrのビット長Nに依存して決まる値である、
ことを特徴とする署名生成装置。 The signature generation device according to claim 3 or 4,
At least one of the value β and the value γ is
Furthermore, the value is determined depending on the bit length N of the clear message m clr .
A signature generation apparatus characterized by the above.
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを格納する第1記憶部と、
署名σ’=(r’,s’)と上記クリアメッセージmclr’との入力を受け付ける署名入力部と、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを格納する第2記憶部と、
上記署名σ’のr’のビット長から値L(Lは署名生成装置と共有される正の整数)を減じた値M’を、上記署名σ’に対応するリカバリメッセージmrec’のビット長M’として抽出するビット長抽出部と、
上記ビット長M’を格納する第3記憶部と、
整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力する第1ハッシュ演算部と、
R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力する群演算部と、
出力ビット長がL+M’ビットのハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力する第2ハッシュ演算部と、
上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力する排他的論理和演算部と、
署名生成装置との共有値h∈{0,1}Lと、上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lとを比較し、h’=hであることを条件に、検証が成功である旨の情報を出力する比較部と、を有し、
上記値β’及び上記値γ’の少なくとも一方の値は、
さらに、上記リカバリメッセージmrec’のビット長M’に依存して決まる値である、
ことを特徴とする署名検証装置。 A signature verification device for verifying a signature,
A first memory for storing the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus when the cyclic group of order q is G and the generation source of the cyclic group G is g And
A signature input unit that receives input of the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A second storage unit for storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
The bit length of the recovery message m rec 'corresponding to the signature σ' is obtained by subtracting the value M 'obtained by subtracting the value L (L is a positive integer shared with the signature generation device) from the bit length of r' of the signature σ '. A bit length extraction unit that extracts M ′;
A third storage unit for storing the bit length M ′;
Hash function H 3 for outputting an integer hash value: {0, 1} * → Z is caused to act on a value γ ′ determined depending on at least r ′ of the signature σ ′ and the clear message m clr ′. , A first hash calculation unit that outputs a hash value t ′ = H 3 (γ ′) εZ that is the calculation result;
A group operation unit that performs an operation of R ′ = g s ′ · y t ′ ∈G and outputs the operation result R ′;
A hash function H 0 having an output bit length of L + M ′ bits: {0, 1} * → {0, 1} L + M ′ is applied to a value β ′ determined at least depending on the calculation result R ′, and the calculation result A second hash calculator that outputs L + M′-bit hash value Π ′ = H 0 (β ′) ∈ {0, 1} L + M ′ ,
The exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ of the signature σ ′ is calculated, and the exclusive OR value d is calculated. An exclusive OR operation unit that outputs',
The shared value hε {0,1} L with the signature generation device is compared with the L-bit value h′ε {0,1} L at the first bit position of the exclusive OR value d ′, and h A comparator that outputs information indicating that the verification is successful on the condition that '= h;
At least one of the value β ′ and the value γ ′ is
Furthermore, the value is determined depending on the bit length M ′ of the recovery message m rec ′.
A signature verification apparatus.
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを格納する第1記憶部と、
署名σ’=(r’,s’)と上記クリアメッセージmclr’との入力を受け付ける署名入力部と、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを格納する第2記憶部と、
上記署名σ’に対応するリカバリメッセージmrec’のビット長M’を格納する第3記憶部と、
上記クリアメッセージmclr’のビット長N’を格納する第4記憶部と、
整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力する第1ハッシュ演算部と、
R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力する群演算部と、
出力ビット長がL+M’ビット(Lは署名生成装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力する第2ハッシュ演算部と、
上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力する排他的論理和演算部と、
署名生成装置との共有値h∈{0,1}Lと、上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lとを比較し、h’=hであることを条件に、検証が成功である旨の情報を出力する比較部と、を有し、
上記値β’及び上記値γ’の少なくとも一方の値は、
さらに、上記クリアメッセージmclr’のビット長N’に依存して決まる値である、
ことを特徴とする署名検証装置。 A signature verification device for verifying a signature,
A first memory for storing the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus when the cyclic group of order q is G and the generation source of the cyclic group G is g And
A signature input unit that receives input of the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A second storage unit for storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A third storage unit for storing the bit length M ′ of the recovery message m rec ′ corresponding to the signature σ ′;
A fourth storage unit for storing the bit length N ′ of the clear message m clr ′;
Hash function H 3 for outputting an integer hash value: {0, 1} * → Z is caused to act on a value γ ′ determined depending on at least r ′ of the signature σ ′ and the clear message m clr ′. , A first hash calculation unit that outputs a hash value t ′ = H 3 (γ ′) εZ that is the calculation result;
A group operation unit that performs an operation of R ′ = g s ′ · y t ′ ∈G and outputs the operation result R ′;
A hash function H 0 : {0,1} * → {0,1} L + M ′ having an output bit length of L + M ′ bits (L is a positive integer shared with the signature generation device) is at least the operation result R ′. A second hash operation unit that operates on a value β ′ determined depending on the output and outputs a hash value Π ′ = H 0 (β ′) ε {0,1} L + M ′ of the L + M ′ bit that is the operation result;
The exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ of the signature σ ′ is calculated, and the exclusive OR value d is calculated. An exclusive OR operation unit that outputs',
The shared value hε {0,1} L with the signature generation device is compared with the L-bit value h′ε {0,1} L at the first bit position of the exclusive OR value d ′, and h A comparator that outputs information indicating that the verification is successful on the condition that '= h;
At least one of the value β ′ and the value γ ′ is
Furthermore, the value is determined depending on the bit length N ′ of the clear message m clr ′.
A signature verification apparatus.
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを格納する第1記憶部と、
署名σ’=(r’,s’)と上記クリアメッセージmclr’との入力を受け付ける署名入力部と、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを格納する第2記憶部と、
上記署名σ’に対応するリカバリメッセージmrec’のビット長M’を格納する第3記憶部と、
整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力する第1ハッシュ演算部と、
R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力する群演算部と、
出力ビット長がL+M’ビット(Lは署名生成装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力する第2ハッシュ演算部と、
上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力する排他的論理和演算部と、
出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記排他的論理和値d’の第2ビット位置のM’ビットの値mrec’∈{0,1}M’に依存して定まる値α’に作用させ、その演算結果であるLビットのハッシュ値H1(α’)∈{0,1}Lを出力する第3ハッシュ演算部と、
上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lと、上記ハッシュ値H1(α’)とを比較し、h’=H1(α’)であることを条件に、検証が成功である旨の情報を出力する比較部と、
を有することを特徴とする署名検証装置。 A signature verification device for verifying a signature,
A first memory for storing the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus when the cyclic group of order q is G and the generation source of the cyclic group G is g And
A signature input unit that receives input of the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A second storage unit for storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A third storage unit for storing the bit length M ′ of the recovery message m rec ′ corresponding to the signature σ ′;
Hash function H 3 for outputting an integer hash value: {0, 1} * → Z is caused to act on a value γ ′ determined depending on at least r ′ of the signature σ ′ and the clear message m clr ′. , A first hash calculation unit that outputs a hash value t ′ = H 3 (γ ′) εZ that is the calculation result;
A group operation unit that performs an operation of R ′ = g s ′ · y t ′ ∈G and outputs the operation result R ′;
A hash function H 0 : {0,1} * → {0,1} L + M ′ having an output bit length of L + M ′ bits (L is a positive integer shared with the signature generation device) is at least the operation result R ′. A second hash operation unit that operates on a value β ′ determined depending on the output and outputs a hash value Π ′ = H 0 (β ′) ε {0,1} L + M ′ of the L + M ′ bit that is the operation result;
The exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ of the signature σ ′ is calculated, and the exclusive OR value d is calculated. An exclusive OR operation unit that outputs',
A hash function H 1 with an output bit length of L bits: {0, 1} * → {0, 1} L is set to a value m rec 'of the M ′ bit at least in the second bit position of the exclusive OR value d ′. Ε {0,1} The third hash operation that operates on the value α ′ determined depending on M ′ and outputs the L-bit hash value H 1 (α ′) ε {0,1} L as the operation result And
The L-value h′ε {0,1} L at the first bit position of the exclusive OR value d ′ is compared with the hash value H 1 (α ′), and h ′ = H 1 (α ') On the condition that the verification is successful, a comparison unit that outputs information indicating that the verification is successful;
A signature verification apparatus comprising:
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを格納する第1記憶部と、
署名σ’=(r’,s’)と上記クリアメッセージmclr’との入力を受け付ける署名入力部と、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを格納する第2記憶部と、
上記署名σ’に対応するリカバリメッセージmrec’のビット長M’を格納する第3記憶部と、
整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力する第1ハッシュ演算部と、
R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力する群演算部と、
出力ビット長がL+M’ビット(Lは署名生成装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力する第2ハッシュ演算部と、
上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力する排他的論理和演算部と、
出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記クリアメッセージmclr’に依存して定まる値α’に作用させ、その演算結果であるLビットのハッシュ値H1(α’)∈{0,1}Lを出力する第3ハッシュ演算部と、
上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lと、上記ハッシュ値H1(α’)とを比較し、h’=H1(α’)であることを条件に、検証が成功である旨の情報を出力する比較部と、
を有することを特徴とする署名検証装置。 A signature verification device for verifying a signature,
A first memory for storing the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus when the cyclic group of order q is G and the generation source of the cyclic group G is g And
A signature input unit that receives input of the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A second storage unit for storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′;
A third storage unit for storing the bit length M ′ of the recovery message m rec ′ corresponding to the signature σ ′;
Hash function H 3 for outputting an integer hash value: {0, 1} * → Z is caused to act on a value γ ′ determined depending on at least r ′ of the signature σ ′ and the clear message m clr ′. , A first hash calculation unit that outputs a hash value t ′ = H 3 (γ ′) εZ that is the calculation result;
A group operation unit that performs an operation of R ′ = g s ′ · y t ′ ∈G and outputs the operation result R ′;
A hash function H 0 : {0,1} * → {0,1} L + M ′ having an output bit length of L + M ′ bits (L is a positive integer shared with the signature generation device) is at least the operation result R ′. A second hash operation unit that operates on a value β ′ determined depending on the output and outputs a hash value Π ′ = H 0 (β ′) ε {0,1} L + M ′ of the L + M ′ bit that is the operation result;
The exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ of the signature σ ′ is calculated, and the exclusive OR value d is calculated. An exclusive OR operation unit that outputs',
A hash function H 1 having an output bit length of L bits: {0, 1} * → {0, 1} L is caused to act on a value α ′ determined depending on at least the clear message m clr ′. A third hash calculator that outputs a certain L-bit hash value H 1 (α ′) ∈ {0, 1} L ;
The L-value h′ε {0,1} L at the first bit position of the exclusive OR value d ′ is compared with the hash value H 1 (α ′), and h ′ = H 1 (α ') On the condition that the verification is successful, a comparison unit that outputs information indicating that the verification is successful;
A signature verification apparatus comprising:
上記値β’及び上記値γ’の少なくとも一方の値は、
さらに、上記リカバリメッセージmrec’のビット長M’に依存して決まる値である、
ことを特徴とする署名検証装置。 The signature verification device according to claim 9 or 10,
At least one of the value β ′ and the value γ ′ is
Furthermore, the value is determined depending on the bit length M ′ of the recovery message m rec ′.
A signature verification apparatus.
上記値β’及び上記値γ’の少なくとも一方の値は、
さらに、上記クリアメッセージmclr’のビット長N’に依存して決まる値である、
ことを特徴とする署名検証装置。 The signature verification device according to claim 9 or 10,
At least one of the value β ′ and the value γ ′ is
Furthermore, the value is determined depending on the bit length N ′ of the clear message m clr ′.
A signature verification apparatus.
整数の秘密鍵xを第1記憶部に格納するステップと、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを第2記憶部に格納するステップと、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを第3記憶部に格納するステップと、
任意値生成部が、整数の任意値kを生成するステップと、
群演算部が、位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力するステップと、
第1ハッシュ演算部が、出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力するステップと、
ビット結合部が、署名検証装置との共有値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するステップと、
排他的論理和演算部が、上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し、当該排他的論理和値rを出力するステップと、
第3ハッシュ演算部が、出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力するステップと、
整数演算部が、s=k−t・x∈Zを算出し、当該演算結果sを出力するステップと、
署名出力部が、署名σ=(r,s)と上記クリアメッセージmclrとを出力するステップと、を有し、
上記値β及び上記値γの少なくとも一方の値は、
さらに、上記リカバリメッセージmrecのビット長Mに依存して決まる値である、
ことを特徴とする署名生成方法。 A signature generation method for generating a signature,
Storing an integer secret key x in the first storage unit;
Storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M in the second storage unit;
Storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N in the third storage unit;
An arbitrary value generation unit generating an integer arbitrary value k;
A group calculation unit calculating R = g k ∈G when the cyclic group of order q is G, and the generation source of the cyclic group G is g, and outputting the calculation result R;
The first hash calculator is the hash function H 0 of the output bit length L + M bits (positive integer L is shared with the signature verification apparatus): {0,1} * → the {0, 1} L + M, at least the Acting on a value β determined depending on the operation result R, and outputting an L + M-bit hash value Π = H 0 (β) ∈ {0,1} L + M as the operation result;
The bit combination unit arranges the shared value hε {0,1} L with the signature verification device in the first bit position, and L + M arranges the recovery message m rec ε {0,1} M in the second bit position. Calculating a bit combination value d = h | m rec ∈ {0, 1} L + M of the bits and outputting the bit combination value d;
The exclusive OR operation unit calculates an exclusive OR r = Π (+) dε {0, 1} L + M between the hash value Π and the bit combination value d, and the exclusive OR value r is calculated. Output step;
The third hash calculation unit converts the hash function H 3 : {0, 1} * → Z whose output value is an integer to a value γ determined depending on at least the exclusive OR value r and the clear message m clr. Outputting a hash value t = H 3 (γ) εZ as a result of the operation;
An integer calculation unit calculating s = kt−x∈Z and outputting the calculation result s;
A signature output unit outputting the signature σ = (r, s) and the clear message m clr ;
At least one of the value β and the value γ is
Furthermore, the value is determined depending on the bit length M of the recovery message m rec .
A signature generation method characterized by the above.
整数の秘密鍵xを第1記憶部に格納するステップと、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを第2記憶部に格納するステップと、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを第3記憶部に格納するステップと、
任意値生成部が、整数の任意値kを生成するステップと、
群演算部が、位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力するステップと、
第1ハッシュ演算部が、出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力するステップと、
ビット結合部が、署名検証装置との共有値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するステップと、
排他的論理和演算部が、上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し、当該排他的論理和値rを出力するステップと、
第3ハッシュ演算部が、出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力するステップと、
整数演算部が、s=k−t・x∈Zを算出し、当該演算結果sを出力するステップと、
署名出力部が、署名σ=(r,s)と上記クリアメッセージmclrとを出力するステップと、を有し、
上記値β及び上記値γの少なくとも一方の値は、
さらに、上記クリアメッセージmclrのビット長Nに依存して決まる値である、
ことを特徴とする署名生成方法。 A signature generation method for generating a signature,
Storing an integer secret key x in the first storage unit;
Storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M in the second storage unit;
Storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N in the third storage unit;
An arbitrary value generation unit generating an integer arbitrary value k;
A group calculation unit calculating R = g k ∈G when the cyclic group of order q is G, and the generation source of the cyclic group G is g, and outputting the calculation result R;
The first hash calculator is the hash function H 0 of the output bit length L + M bits (positive integer L is shared with the signature verification apparatus): {0,1} * → the {0, 1} L + M, at least the Acting on a value β determined depending on the operation result R, and outputting an L + M-bit hash value Π = H 0 (β) ∈ {0,1} L + M as the operation result;
The bit combination unit arranges the shared value hε {0,1} L with the signature verification device in the first bit position, and L + M arranges the recovery message m rec ε {0,1} M in the second bit position. Calculating a bit combination value d = h | m rec ∈ {0, 1} L + M of the bits and outputting the bit combination value d;
The exclusive OR operation unit calculates an exclusive OR r = Π (+) dε {0, 1} L + M between the hash value Π and the bit combination value d, and the exclusive OR value r is calculated. Output step;
The third hash calculation unit converts the hash function H 3 : {0, 1} * → Z whose output value is an integer to a value γ determined depending on at least the exclusive OR value r and the clear message m clr. Outputting a hash value t = H 3 (γ) εZ as a result of the operation;
An integer calculation unit calculating s = kt−x∈Z and outputting the calculation result s;
A signature output unit outputting the signature σ = (r, s) and the clear message m clr ;
At least one of the value β and the value γ is
Furthermore, the value is determined depending on the bit length N of the clear message m clr .
A signature generation method characterized by the above.
整数の秘密鍵xを第1記憶部に格納するステップと、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを第2記憶部に格納するステップと、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを第3記憶部に格納するステップと、
任意値生成部が、整数の任意値kを生成するステップと、
群演算部が、位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力するステップと、
第1ハッシュ演算部が、出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力するステップと、
第2ハッシュ演算部が、出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記リカバリメッセージmrecに依存して定まる値αに作用させ、その演算結果であるLビットのハッシュ値h=H1(α)∈{0,1}Lを出力するステップと、
ビット結合部が、上記ハッシュ値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するステップと、
排他的論理和演算部が、上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し、当該排他的論理和値rを出力するステップと、
第3ハッシュ演算部が、出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力するステップと、
整数演算部が、s=k−t・x∈Zを算出し、当該演算結果sを出力するステップと、
署名出力部が、署名σ=(r,s)と上記クリアメッセージmclrとを出力するステップと、
を有することを特徴とする署名生成方法。 A signature generation method for generating a signature,
Storing an integer secret key x in the first storage unit;
Storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M in the second storage unit;
Storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N in the third storage unit;
An arbitrary value generation unit generating an integer arbitrary value k;
A group calculation unit calculating R = g k ∈G when the cyclic group of order q is G, and the generation source of the cyclic group G is g, and outputting the calculation result R;
The first hash calculator is the hash function H 0 of the output bit length L + M bits (positive integer L is shared with the signature verification apparatus): {0,1} * → the {0, 1} L + M, at least the Acting on a value β determined depending on the operation result R, and outputting an L + M-bit hash value Π = H 0 (β) ∈ {0,1} L + M as the operation result;
The second hash calculator operates a hash function H 1 : {0,1} * → {0,1} L having an output bit length of L bits on a value α determined at least depending on the recovery message m rec. Outputting an L-bit hash value h = H 1 (α) ∈ {0, 1} L as a result of the operation;
A bit combining unit arranges the hash value hε {0,1} L in the first bit position and the bit combination of L + M bits in which the recovery message m rec ε {0,1} M is arranged in the second bit position. Calculating a value d = h | m rec ∈ {0, 1} L + M and outputting the bit combination value d;
The exclusive OR operation unit calculates an exclusive OR r = Π (+) dε {0, 1} L + M between the hash value Π and the bit combination value d, and the exclusive OR value r is calculated. Output step;
The third hash calculation unit converts the hash function H 3 : {0, 1} * → Z whose output value is an integer to a value γ determined depending on at least the exclusive OR value r and the clear message m clr. Outputting a hash value t = H 3 (γ) εZ as a result of the operation;
An integer calculation unit calculating s = kt−x∈Z and outputting the calculation result s;
A signature output unit outputting the signature σ = (r, s) and the clear message m clr ;
A signature generation method characterized by comprising:
整数の秘密鍵xを第1記憶部に格納するステップと、
Mビット(M≧1)のリカバリメッセージmrec∈{0,1}Mを第2記憶部に格納するステップと、
Nビット(N≧1)のクリアメッセージmclr∈{0,1}Nを第3記憶部に格納するステップと、
任意値生成部が、整数の任意値kを生成するステップと、
群演算部が、位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合におけるR=gk∈Gを算出し、当該演算結果Rを出力するステップと、
第1ハッシュ演算部が、出力ビット長がL+Mビット(Lは署名検証装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+Mを、少なくとも上記演算結果Rに依存して定まる値βに作用させ、その演算結果であるL+Mビットのハッシュ値Π=H0(β)∈{0,1}L+Mを出力するステップと、
第2ハッシュ演算部が、出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記クリアメッセージmclrに依存して定まる値αに作用させ、その演算結果であるLビットのハッシュ値h=H1(α)∈{0,1}Lを出力するステップと、
ビット結合部が、上記ハッシュ値h∈{0,1}Lを第1ビット位置に配置し、上記リカバリメッセージmrec∈{0,1}Mを第2ビット位置に配置したL+Mビットのビット結合値d=h|mrec∈{0,1}L+Mを算出し、当該ビット結合値dを出力するステップと、
排他的論理和演算部が、上記ハッシュ値Πと上記ビット結合値dとの排他的論理和r=Π(+)d∈{0,1}L+Mを算出し、当該排他的論理和値rを出力するステップと、
第3ハッシュ演算部が、出力値が整数のハッシュ関数H3:{0,1}*→Zを、少なくとも上記排他的論理和値rと上記クリアメッセージmclrとに依存して定まる値γに作用させ、その演算結果であるハッシュ値t=H3(γ)∈Zを出力するステップと、
整数演算部が、s=k−t・x∈Zを算出し、当該演算結果sを出力するステップと、
署名出力部が、署名σ=(r,s)と上記クリアメッセージmclrとを出力するステップと、
を有することを特徴とする署名生成方法。 A signature generation method for generating a signature,
Storing an integer secret key x in the first storage unit;
Storing an M-bit (M ≧ 1) recovery message m rec ε {0,1} M in the second storage unit;
Storing N-bit (N ≧ 1) clear message m clr ε {0, 1} N in the third storage unit;
An arbitrary value generation unit generating an integer arbitrary value k;
A group calculation unit calculating R = g k ∈G when the cyclic group of order q is G, and the generation source of the cyclic group G is g, and outputting the calculation result R;
The first hash calculator is the hash function H 0 of the output bit length L + M bits (positive integer L is shared with the signature verification apparatus): {0,1} * → the {0, 1} L + M, at least the Acting on a value β determined depending on the operation result R, and outputting an L + M-bit hash value Π = H 0 (β) ∈ {0,1} L + M as the operation result;
The second hash calculation unit causes the hash function H 1 having an output bit length of L bits: {0, 1} * → {0, 1} L to act on a value α determined at least depending on the clear message m clr Outputting an L-bit hash value h = H 1 (α) ∈ {0, 1} L as a result of the operation;
A bit combining unit arranges the hash value hε {0,1} L in the first bit position and the bit combination of L + M bits in which the recovery message m rec ε {0,1} M is arranged in the second bit position. Calculating a value d = h | m rec ∈ {0, 1} L + M and outputting the bit combination value d;
The exclusive OR operation unit calculates an exclusive OR r = Π (+) dε {0, 1} L + M between the hash value Π and the bit combination value d, and the exclusive OR value r is calculated. Output step;
The third hash calculation unit converts the hash function H 3 : {0, 1} * → Z whose output value is an integer to a value γ determined depending on at least the exclusive OR value r and the clear message m clr. Outputting a hash value t = H 3 (γ) εZ as a result of the operation;
An integer calculation unit calculating s = kt−x∈Z and outputting the calculation result s;
A signature output unit outputting the signature σ = (r, s) and the clear message m clr ;
A signature generation method characterized by comprising:
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを第1記憶部に格納するステップと、
署名σ’=(r’,s’)と上記クリアメッセージmclr’とが署名入力部に入力されるステップと、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを第2記憶部に格納するステップと、
ビット長抽出部が、上記署名σ’のr’のビット長から値L(Lは署名生成装置と共有される正の整数)を減じた値M’を、上記署名σ’に対応するリカバリメッセージmrec’のビット長M’として抽出するステップと、
上記ビット長M’を第3記憶部に格納するステップと、
第1ハッシュ演算部が、整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力するステップと、
群演算部が、R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力するステップと、
第2ハッシュ演算部が、出力ビット長がL+M’ビットのハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力するステップと、
排他的論理和演算部が、上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力するステップと、
比較部が、署名生成装置との共有値h∈{0,1}Lと、上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lとを比較し、h’=hであることを条件に、検証が成功である旨の情報を出力するステップと、を有し、
上記値β’及び上記値γ’の少なくとも一方の値は、
さらに、上記リカバリメッセージmrec’のビット長M’に依存して決まる値である、
ことを特徴とする署名検証方法。 A signature verification method for verifying a signature,
When the cyclic group of order q is G and the generation source of the cyclic group G is g, the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus is stored in the first storage unit. Storing, and
A step of inputting the signature σ ′ = (r ′, s ′) and the clear message m clr ′ into the signature input unit;
Storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′ in a second storage unit;
The recovery message corresponding to the signature σ ′ is obtained by subtracting the value M ′ obtained by subtracting the value L (L is a positive integer shared with the signature generation device) from the bit length of r ′ of the signature σ ′. extracting m rec 'as a bit length M';
Storing the bit length M ′ in a third storage unit;
The first hash operation unit outputs a hash function H 3 that outputs an integer hash value: {0, 1} * → Z, depending on at least r ′ of the signature σ ′ and the clear message m clr ′ Acting on a fixed value γ ′, and outputting a hash value t ′ = H 3 (γ ′) ∈Z as a result of the operation;
A group operation unit performing an operation of R ′ = g s ′ · y t ′ εG and outputting the operation result R ′;
The second hash calculation unit determines a hash function H 0 having an output bit length of L + M ′ bits: {0, 1} * → {0, 1} L + M ′ depending on at least the calculation result R ′ β ′ And outputting the L + M′-bit hash value β ′ = H 0 (β ′) ∈ {0, 1} L + M ′ as a result of the operation;
The exclusive OR operation unit calculates an exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ included in the signature σ ′. Outputting the exclusive OR value d ′;
The comparison unit obtains the shared value hε {0,1} L with the signature generation device and the L-bit value h′ε {0,1} L at the first bit position of the exclusive OR value d ′. A step of outputting information indicating that the verification is successful on the condition that h ′ = h.
At least one of the value β ′ and the value γ ′ is
Furthermore, the value is determined depending on the bit length M ′ of the recovery message m rec ′.
And a signature verification method.
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを第1記憶部に格納するステップと、
署名σ’=(r’,s’)と上記クリアメッセージmclr’とが署名入力部に入力されるステップと、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを第2記憶部に格納するステップと、
上記署名σ’に対応するリカバリメッセージmrec’のビット長M’を第3記憶部に格納するステップと、
上記クリアメッセージmclr’のビット長N’を第4記憶部に格納するステップと、
第1ハッシュ演算部が、整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力するステップと、
群演算部が、R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力するステップと、
第2ハッシュ演算部が、出力ビット長がL+M’ビット(Lは署名生成装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力するステップと、
排他的論理和演算部が、上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力するステップと、
比較部が、署名生成装置との共有値h∈{0,1}Lと、上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lとを比較し、h’=hであることを条件に、検証が成功である旨の情報を出力するステップと、を有し、
上記値β’及び上記値γ’の少なくとも一方の値は、
さらに、上記クリアメッセージmclr’のビット長N’に依存して決まる値である、
ことを特徴とする署名検証方法。 A signature verification method for verifying a signature,
When the cyclic group of order q is G and the generation source of the cyclic group G is g, the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus is stored in the first storage unit. Storing, and
A step of inputting the signature σ ′ = (r ′, s ′) and the clear message m clr ′ into the signature input unit;
Storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′ in a second storage unit;
Storing the bit length M ′ of the recovery message m rec ′ corresponding to the signature σ ′ in the third storage unit;
Storing the bit length N ′ of the clear message m clr ′ in a fourth storage unit;
The first hash operation unit outputs a hash function H 3 that outputs an integer hash value: {0, 1} * → Z, depending on at least r ′ of the signature σ ′ and the clear message m clr ′ Acting on a fixed value γ ′, and outputting a hash value t ′ = H 3 (γ ′) ∈Z as a result of the operation;
A group operation unit performing an operation of R ′ = g s ′ · y t ′ εG and outputting the operation result R ′;
The second hash calculator calculates a hash function H 0 : {0,1} * → {0,1} L + M ′ having an output bit length of L + M ′ bits (L is a positive integer shared with the signature generation device), A step of acting on a value β ′ determined depending on at least the operation result R ′, and outputting an L + M′-bit hash value Π ′ = H 0 (β ′) ∈ {0, 1} L + M ′ as the operation result When,
The exclusive OR operation unit calculates an exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ included in the signature σ ′. Outputting the exclusive OR value d ′;
The comparison unit obtains the shared value hε {0,1} L with the signature generation device and the L-bit value h′ε {0,1} L at the first bit position of the exclusive OR value d ′. A step of outputting information indicating that the verification is successful on the condition that h ′ = h.
At least one of the value β ′ and the value γ ′ is
Furthermore, the value is determined depending on the bit length N ′ of the clear message m clr ′.
And a signature verification method.
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを第1記憶部に格納するステップと、
署名σ’=(r’,s’)と上記クリアメッセージmclr’とが署名入力部に入力されるステップと、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを第2記憶部に格納するステップと、
上記署名σ’に対応するリカバリメッセージmrec’のビット長M’を第3記憶部に格納するステップと、
第1ハッシュ演算部が、整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力するステップと、
群演算部が、R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力するステップと、
第2ハッシュ演算部が、出力ビット長がL+M’ビット(Lは署名生成装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力するステップと、
排他的論理和演算部が、上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力するステップと、
第3ハッシュ演算部が、出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記排他的論理和値d’の第2ビット位置のM’ビットの値mrec’∈{0,1}M’に依存して定まる値α’に作用させ、その演算結果であるLビットのハッシュ値H1(α’)∈{0,1}Lを出力するステップと、
比較部が、上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lと、上記ハッシュ値H1(α’)とを比較し、h’=H1(α’)であることを条件に、検証が成功である旨の情報を出力するステップと、
を有することを特徴とする署名検証方法。 A signature verification method for verifying a signature,
When the cyclic group of order q is G and the generation source of the cyclic group G is g, the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus is stored in the first storage unit. Storing, and
A step of inputting the signature σ ′ = (r ′, s ′) and the clear message m clr ′ into the signature input unit;
Storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′ in a second storage unit;
Storing the bit length M ′ of the recovery message m rec ′ corresponding to the signature σ ′ in the third storage unit;
The first hash operation unit outputs a hash function H 3 that outputs an integer hash value: {0, 1} * → Z, depending on at least r ′ of the signature σ ′ and the clear message m clr ′ Acting on a fixed value γ ′, and outputting a hash value t ′ = H 3 (γ ′) ∈Z as a result of the operation;
A group operation unit performing an operation of R ′ = g s ′ · y t ′ εG and outputting the operation result R ′;
The second hash calculator calculates a hash function H 0 : {0,1} * → {0,1} L + M ′ having an output bit length of L + M ′ bits (L is a positive integer shared with the signature generation device), A step of acting on a value β ′ determined depending on at least the operation result R ′, and outputting an L + M′-bit hash value Π ′ = H 0 (β ′) ∈ {0, 1} L + M ′ as the operation result When,
The exclusive OR operation unit calculates an exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ included in the signature σ ′. Outputting the exclusive OR value d ′;
The third hash calculator calculates a hash function H 1 : {0,1} * → {0,1} L having an output bit length of L bits, at least in the second bit position M of the exclusive OR value d ′. It acts on a value α ′ determined depending on the value of bit value m rec '∈ {0,1} M ′ , and an L-bit hash value H 1 (α ′) ∈ {0,1} L as a result of the operation. A step of outputting
The comparison unit compares the L-bit value h′∈ {0, 1} L at the first bit position of the exclusive OR value d ′ with the hash value H 1 (α ′), and h ′ = A step of outputting information indicating that the verification is successful on the condition that H 1 (α ′);
A signature verification method comprising:
位数qの巡回群をGとし、当該巡回群Gの生成元をgとした場合における、署名生成装置の秘密鍵x∈Zに対応する公開鍵y=gx∈Gを第1記憶部に格納するステップと、
署名σ’=(r’,s’)と上記クリアメッセージmclr’とが署名入力部に入力されるステップと、
上記署名σ’=(r’,s’)と上記クリアメッセージmclr’とを第2記憶部に格納するステップと、
上記署名σ’に対応するリカバリメッセージmrec’のビット長M’を第3記憶部に格納するステップと、
第1ハッシュ演算部が、整数のハッシュ値を出力するハッシュ関数H3:{0,1}*→Zを、少なくとも上記署名σ’が有するr’と上記クリアメッセージmclr’とに依存して定まる値γ’に作用させ、その演算結果であるハッシュ値t’=H3(γ’)∈Zを出力するステップと、
群演算部が、R’=gs’・yt’∈Gの演算を行い、その演算結果R’を出力するステップと、
第2ハッシュ演算部が、出力ビット長がL+M’ビット(Lは署名生成装置と共有される正の整数)のハッシュ関数H0:{0,1}*→{0,1}L+M’を、少なくとも上記演算結果R’に依存して定まる値β’に作用させ、その演算結果であるL+M’ビットのハッシュ値Π’=H0(β’)∈{0,1}L+M’を出力するステップと、
排他的論理和演算部が、上記ハッシュ値Π’と、上記署名σ’が有するr’との排他的論理和d’=Π’(+)r’∈{0,1}L+M’を算出し、当該排他的論理和値d’を出力するステップと、
第3ハッシュ演算部が、出力ビット長がLビットのハッシュ関数H1:{0,1}*→{0,1}Lを、少なくとも上記クリアメッセージmclr’に依存して定まる値α’に作用させ、その演算結果であるLビットのハッシュ値H1(α’)∈{0,1}Lを出力するステップと、
比較部が、上記排他的論理和値d’の第1ビット位置のLビットの値h’∈{0,1}Lと、上記ハッシュ値H1(α’)とを比較し、h’=H1(α’)であることを条件に、検証が成功である旨の情報を出力するステップと、
を有することを特徴とする署名検証方法。 A signature verification method for verifying a signature,
When the cyclic group of order q is G and the generation source of the cyclic group G is g, the public key y = g x ∈G corresponding to the secret key x∈Z of the signature generation apparatus is stored in the first storage unit. Storing, and
A step of inputting the signature σ ′ = (r ′, s ′) and the clear message m clr ′ into the signature input unit;
Storing the signature σ ′ = (r ′, s ′) and the clear message m clr ′ in a second storage unit;
Storing the bit length M ′ of the recovery message m rec ′ corresponding to the signature σ ′ in the third storage unit;
The first hash operation unit outputs a hash function H 3 that outputs an integer hash value: {0, 1} * → Z, depending on at least r ′ of the signature σ ′ and the clear message m clr ′ Acting on a fixed value γ ′, and outputting a hash value t ′ = H 3 (γ ′) ∈Z as a result of the operation;
A group operation unit performing an operation of R ′ = g s ′ · y t ′ εG and outputting the operation result R ′;
The second hash calculator calculates a hash function H 0 : {0,1} * → {0,1} L + M ′ having an output bit length of L + M ′ bits (L is a positive integer shared with the signature generation device), A step of acting on a value β ′ determined depending on at least the operation result R ′, and outputting an L + M′-bit hash value Π ′ = H 0 (β ′) ∈ {0, 1} L + M ′ as the operation result When,
The exclusive OR operation unit calculates an exclusive OR d ′ = Π ′ (+) r′∈ {0, 1} L + M ′ between the hash value Π ′ and r ′ included in the signature σ ′. Outputting the exclusive OR value d ′;
The third hash calculation unit sets a hash function H 1 having an output bit length of L bits: {0, 1} * → {0, 1} L to a value α ′ determined depending on at least the clear message m clr ′. Outputting an L-bit hash value H 1 (α ′) ε {0, 1} L as an operation result;
The comparison unit compares the L-bit value h′∈ {0, 1} L at the first bit position of the exclusive OR value d ′ with the hash value H 1 (α ′), and h ′ = A step of outputting information indicating that the verification is successful on the condition that H 1 (α ′);
A signature verification method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006295599A JP4814755B2 (en) | 2006-10-31 | 2006-10-31 | Signature generation apparatus, signature verification apparatus, method and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006295599A JP4814755B2 (en) | 2006-10-31 | 2006-10-31 | Signature generation apparatus, signature verification apparatus, method and program thereof |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008113315A JP2008113315A (en) | 2008-05-15 |
JP2008113315A5 true JP2008113315A5 (en) | 2009-04-02 |
JP4814755B2 JP4814755B2 (en) | 2011-11-16 |
Family
ID=39445574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006295599A Expired - Fee Related JP4814755B2 (en) | 2006-10-31 | 2006-10-31 | Signature generation apparatus, signature verification apparatus, method and program thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4814755B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110768799B (en) * | 2019-12-30 | 2020-04-14 | 中国银联股份有限公司 | Digital signature method, device, equipment, medium and system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009057338A1 (en) * | 2007-10-29 | 2009-05-07 | Nippon Telegraph And Telephone Corporation | Signature generating device, signature verifying device, their methods, and their programs |
JP2009246657A (en) * | 2008-03-31 | 2009-10-22 | Nippon Telegr & Teleph Corp <Ntt> | Message recovery system and method |
-
2006
- 2006-10-31 JP JP2006295599A patent/JP4814755B2/en not_active Expired - Fee Related
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102665929B1 (en) | Remote re-enrollment of physical unclonable functions | |
JP6353536B2 (en) | Method and apparatus for generating digital signature | |
TWI567637B (en) | Random number expansion device, the number of ways to expand the number of random and expand the program products | |
US11232718B2 (en) | Methods and devices for protecting data | |
US8458478B2 (en) | Signature generating apparatus, signature verifying apparatus, and methods and programs therefor | |
CN112887081B (en) | SM 2-based signature verification method, device and system | |
JP6735926B2 (en) | Encryption device, decryption device, encryption method, decryption method, encryption program, and decryption program | |
CN111325535A (en) | Block chain private key management method, system and storage medium based on elliptic curve migration | |
JP2014515203A (en) | A variable-tolerance method for generating identifiers for asset sets in a computing environment using error correction coding schemes | |
JPWO2012086076A1 (en) | Signature generation apparatus, signature generation method, and recording medium | |
JPWO2008026345A1 (en) | Electronic signature system and electronic signature verification method | |
JP2008136193A5 (en) | ||
WO2011050624A1 (en) | Data conversion method and apparatus | |
JP2008113315A5 (en) | ||
TWI444028B (en) | Method of using enhanced window-based and method of mutual opposite form for scalar multiplication in elliptic curve cryptography | |
JP5427117B2 (en) | Message authenticator generation device, message authenticator verification device, message authenticator generation method, message authenticator verification method, and program | |
WO2023093278A1 (en) | Digital signature thresholding method and apparatus | |
JP2009169316A (en) | Hash function operational device, signature device, program and hash function operational method | |
JP5469631B2 (en) | Decryption result verification apparatus, method and program | |
WO2021157003A1 (en) | Encryption device, decryption device, encryption method, decryption method, encryption program, and decryption program | |
JP4848957B2 (en) | Signature and verification method and signature and verification apparatus | |
JP4914377B2 (en) | Signature generation apparatus, signature verification apparatus, signature generation verification system, method and program thereof | |
Mohammed | Text encryption algorithm based on chaotic neural network and random key generator | |
WO2011033642A1 (en) | Signature generation device and signature verification device | |
JP2015154291A (en) | Eigen-device information generation apparatus, eigen-device information generation system and eigen-device information generation method |