WO2011061994A1 - 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム - Google Patents

情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム Download PDF

Info

Publication number
WO2011061994A1
WO2011061994A1 PCT/JP2010/066312 JP2010066312W WO2011061994A1 WO 2011061994 A1 WO2011061994 A1 WO 2011061994A1 JP 2010066312 W JP2010066312 W JP 2010066312W WO 2011061994 A1 WO2011061994 A1 WO 2011061994A1
Authority
WO
WIPO (PCT)
Prior art keywords
finite ring
unit
signature
original
original image
Prior art date
Application number
PCT/JP2010/066312
Other languages
English (en)
French (fr)
Inventor
紘一 作本
太三 白井
玄良 樋渡
Original Assignee
ソニー株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to EP10831393A priority Critical patent/EP2503729A1/en
Priority to BR112012011220A priority patent/BR112012011220A2/pt
Priority to RU2012119502/08A priority patent/RU2012119502A/ru
Priority to US13/510,843 priority patent/US8675867B2/en
Priority to CN2010800514096A priority patent/CN102640451A/zh
Publication of WO2011061994A1 publication Critical patent/WO2011061994A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme

Definitions

  • the present invention relates to an information processing device, a key generation device, a signature verification device, an information processing method, a signature generation method, and a program.
  • the electronic signature is used to specify the creator of the electronic document. For this reason, the electronic signature should be generated only by the creator of the electronic document. If a malicious third party can generate the same electronic signature, the third party can impersonate the creator of the electronic document. That is, an electronic document is forged by a malicious third party. In order to prevent such forgery, various discussions have been made on the security of electronic signatures. Examples of electronic signature schemes that are widely used at present include schemes that use RSA signature schemes and DSA signature schemes.
  • the RSA signature method uses “difficulty of prime factorization for large composite numbers (hereinafter referred to as prime factorization problem)” as the basis of security.
  • the DSA signature scheme uses “difficulty of answering the discrete logarithm problem” as the basis of security.
  • MPKC polynomial public key cryptography
  • MPKC signature schemes include MI (Matsumoto-Imai cryptography), HFE (Hidden Field Equivalence cryptography; see Non-Patent Document 1, for example), and OV (Oil-Vinegar SignatureTM).
  • MI Matsumoto-Imai cryptography
  • HFE Hidden Field Equivalence cryptography
  • OV Olegar Signature
  • HFEv signature method a combination of the HFE signature method and the OV signature method
  • PFDH Probabilistic Full Domain Hash signature method
  • the MPKC signature method such as the HFE signature method and the OV signature method is resistant to tampering using a quantum computer, and has a smaller calculation load and less memory usage than the RSA signature method. It has excellent characteristics.
  • the one-way function with trapdoor used in the MPKC signature scheme such as the HFE signature scheme and the OV signature scheme does not have bijectivity. For this reason, these MPKC signature schemes do not guarantee the security against a selected document attack (CMA; Chosen-Message Attack).
  • the selected document attack is an act of attempting to forge an electronic signature in a situation where an attacker can freely obtain an electronic signature for an arbitrary electronic document in addition to public information such as a verification key.
  • the present invention has been made in view of the above problems, and an object of the present invention is to provide bijectivity or totality of a map corresponding to a unidirectional function with trapdoor used in the MPKC signature scheme. It is an object of the present invention to provide a new and improved information processing apparatus, key generation apparatus, signature verification apparatus, information processing method, signature generation method, and program capable of realizing properties close to injectivity.
  • an element y of a finite ring K n including elements composed of n numbers is obtained by inverse transformation T ⁇ 1 of the first secret polynomial T.
  • a first inverse transform unit for transforming the element y ′ of the finite ring K n, and an element y ′ of the finite ring K n obtained by the first inverse transform unit as an element Y of the n-order expansion A of the finite ring K The element that calculates the element X ⁇ ⁇ Z ⁇ A
  • f (Z) Y ⁇ of the original image of the mapping f (f: A ⁇ A) expressed by a predetermined multivariable polynomial using the element Y
  • the calculation unit selects one element X of the original image calculated by the element calculation unit with a probability p proportional to the number of elements ⁇ of the original image, and outputs an exceptional value with a probability (1-p).
  • the element selection unit and the element X selected by the element selection unit are regarded as the element x ′ of the finite ring K n , and the element x ′ of the finite ring K n is obtained by the inverse transformation S ⁇ 1 of the second secret polynomial S.
  • the information processing apparatus is provided.
  • a partial element selection unit that selects an element vx of a finite ring K v including elements composed of v numbers, the inverse transform T -1 secret polynomial T, a first inverse transform unit for converting the original y of the finite ring K m including source configured based on y 'of the finite ring K m in the m number of the first 1
  • mapping f represented by a predetermined multivariate polynomial (f: a ⁇ K v ⁇ B, B is a finite ring K of o th extension) elements of the original image X ⁇ ⁇ Z ⁇ B
  • f (Z, vx ) Y ⁇ and
  • the information processing apparatus may further include a number generator for generating a number r, the data to generate the original y of the finite ring K n with the number r and electronic data M generated by the number generator generates And the element y of the finite ring K n generated by the data generation unit is input to the first inverse transformation unit, the first inverse transformation unit, the element calculation unit, the element selection unit, and the first a signature generation unit that generates an electronic signature ⁇ comprising original x of the finite ring K n obtained by the process of the second inverse transformation unit may further include a.
  • the signature generation unit when an exceptional value is output from the element selection unit, the signature generation unit generates a different number r by the number generation unit, and is generated based on the different number r by the data generation unit.
  • the original y of the finite ring K n input to the first inverse transformation unit, the first inverse transform unit, the element calculation unit, the element selection unit, and the finite obtained by the processing of the second inverse transformation unit It generates an electronic signature ⁇ comprising original x ring K n.
  • an finite ring K n including elements composed of n numbers is obtained by inverse transformation T ⁇ 1 of the first secret polynomial T.
  • An element calculation unit to be calculated, and one element X of the original image calculated by the element calculation unit with a probability p proportional to the number of elements ⁇ of the original image is selected, and an exceptional value with a probability (1-p) an element selection unit for outputting regards selected element X in the element selection unit to the original x 'of the finite ring K n, the inverse transform S -1 of the second secret polynomial S, the finite ring K n Origin of A second inverse converter for converting 'the original x of the finite ring K n, is used in the calculation algorithm with the first secret polynomial T, the second secret polynomials S, and the predetermined multivariate
  • a secret key generating unit that generates a secret key including polynomial information, and a public key including information of a composite map F composed of the first secret polynomial T, the map f, and the second secret polynomial S
  • a key generation device including a public key generation unit for generation.
  • a partial element selection unit that selects an element vx of a finite ring K v including elements composed of v numbers, the inverse transform T -1 secret polynomial T, a first inverse transform unit for converting the original y of the finite ring K m including source configured based on y 'of the finite ring K m in the m number of the first 1
  • mapping f represented by a predetermined multivariate polynomial (f: a ⁇ K v ⁇ B, B is a finite ring K of o th extension) elements of the original image X ⁇ ⁇ Z ⁇ B
  • f (Z, vx ) Y ⁇ and
  • a partial element selection unit for selecting the original vx finite ring K v containing source consists of the number of v number, the number r A number generation unit that generates, and a data generation unit that generates an element y of a finite ring K m including elements composed of m numbers using the number r and electronic data M generated by the number generation unit
  • a first inverse transform unit for converting the original y of the finite ring K m generated by the data generating unit based on y 'of the finite ring K m A map f () expressed by a predetermined multivariate polynomial using the element y ′ of the finite ring K m obtained by the first inverse transform unit and the element vx selected by the subelement selection unit.
  • An element selection unit that selects the element ox of the original image calculated by the processing of the data generation unit, the first inverse transformation unit, and the element calculation unit using the different number r, and a second secret polynomial
  • a second inverse transform unit for converting the, and a signature generation unit that generates an electronic signature ⁇ comprising original x of the finite ring K n obtained in the second inverse transform unit, the information processing apparatus is provided.
  • data generation for generating an element y of a finite ring K m including elements composed of m numbers using electronic data M.
  • f (Z, vx ) y ' ⁇ and element calculation unit
  • data generation for generating an element y of a finite ring K m including elements composed of m numbers using electronic data M.
  • f (Z, vx ) y ' ⁇ and element calculation unit
  • the second secret polynomial S may be an identity map.
  • a partial element selection unit for selecting the original vx finite ring K v containing source consists of the number of v number, the number r A number generation unit that generates, and a data generation unit that generates an element y of a finite ring K m including elements composed of m numbers using the number r and electronic data M generated by the number generation unit
  • a first inverse transform unit for converting the original y of the finite ring K m generated by the data generating unit based on y 'of the finite ring K m A map f () expressed by a predetermined multivariate polynomial using the element y ′ of the finite ring K m obtained by the first inverse transform unit and the element vx selected by the subelement selection unit.
  • An element selection unit that selects the element ox of the original image calculated by the processing of the data generation unit, the first inverse transformation unit, and the element calculation unit using the different number r, and a second secret polynomial
  • a second inverse transform unit for converting the is utilized in the calculation algorithm with a signature generating section that generates an electronic signature ⁇ comprising original x of the finite ring K n obtained in the second inverse transform unit,
  • the first secret polynomial T, the second secret polynomial S, and the predetermined multivariable A secret key generating unit that generates a secret key including polynomial information, and a public key including information of a composite map F composed of the first secret polynomial T, the map f, and the second secret polynomial S
  • a key generation device including a public key generation unit for generation.
  • a partial element selection unit for selecting the original vx finite ring K v containing source consists of the number of v number, the number r
  • the first data for generating the element y of the finite ring K m including the element composed of m numbers using the number generator to be generated and the number r and the electronic data M generated by the number generator.
  • the element y ′ of the finite ring K m obtained by the first inverse transformation unit, and the element vx selected by the partial element selection unit it is expressed by a predetermined multivariable polynomial.
  • map f (f: K n ⁇ K o, n o + v) of the elements of the original image ox ⁇ ⁇ Z ⁇ K o
  • f (Z , vx) y ' ⁇ element calculation unit for calculating a
  • the element ox of the original image calculated by the element calculation unit is selected.
  • the number r varies depending on the number generation unit.
  • a signature generating unit that generates the first secret polynomial T, the mapping f ,
  • An acquisition unit that acquires information of the composite map F composed of the second secret polynomial S, the electronic signature ⁇ , and the electronic data M, a number r included in the electronic signature ⁇ , and the electronic A
  • an finite ring K n including elements composed of n numbers is obtained by inverse transformation T ⁇ 1 of the first secret polynomial T. 'a first inverse conversion step of converting the original y of the finite ring K n obtained in the first inverse transformation step' original y original y of the finite ring K n of n-th extension a finite ring K
  • the element Y is regarded as an element Y, and the element X ⁇ ⁇ Z ⁇ A
  • f (Z) Y ⁇ of the original image of the map f (f: A ⁇ A) expressed by a predetermined multivariable polynomial is used.
  • the element y ′ of the finite ring K m obtained in one inverse transformation step is regarded as the element Y of the m-order expansion A of the finite ring K, and the element vx selected in the element Y and the subelement selection step is used.
  • f (Z, vx) of the original image of the map f (f: A ⁇ K v ⁇ B, B is an o-order extension of the finite ring K) expressed by a predetermined multivariable polynomial ) Y ⁇ and the original image calculated in the element calculation step with a probability p proportional to the number of elements ⁇ of the original image.
  • a partial element selection step of selecting the original vx finite ring K v containing source consists of the number of v number, the number r the number generating step of generating, using the number r and electronic data M generated by the number generation step, the data generating step of generating the original y of the finite ring K m including source composed of m number
  • an finite ring K n including elements composed of n numbers is obtained by inverse transformation T ⁇ 1 of the first secret polynomial T. 'a first inverse conversion step of converting the original y of the finite ring K n obtained in the first inverse transformation step' original y original y of the finite ring K n of n-th extension a finite ring K
  • the element Y is regarded as an element Y, and the element X ⁇ ⁇ Z ⁇ A
  • f (Z) Y ⁇ of the original image of the map f (f: A ⁇ A) expressed by a predetermined multivariable polynomial is used.
  • the present invention it is possible to realize the bijectivity of the mapping corresponding to the one-way function with trapdoor used in the MPKC signature method or a property close to bijection. As a result, it is possible to guarantee the security against the selected document attack in the MPKC signature method.
  • FIG. 3 is an explanatory diagram showing a configuration example of a system capable of realizing an electronic signature method according to the first to third embodiments of the present invention. It is explanatory drawing which shows the outline
  • FIG. 3 is an explanatory diagram showing an example of a hardware configuration of various devices included in a system capable of realizing an electronic signature method according to the first to third embodiments of the present invention.
  • the extended HFE signature method will be described.
  • a general HFE function and an electronic signature method using the same are described, and the problems of the electronic signature method are pointed out with reference to FIG. 29, and the technology according to the first embodiment of the present invention is described. The improvement effect by application of is described.
  • FIG. 12 FIG. 13, FIG. 16, FIG. 17, FIG. 20, FIG. 21, FIG. 24, and FIG. 25, the one-way function with trapdoor according to the third embodiment of the present invention and this are used.
  • An electronic signature scheme (hereinafter referred to as an extended HFEv signature scheme) will be described.
  • the HFEv signature method combining the general HFE signature method and the OV signature method is described, the problems of the electronic signature method are pointed out, and the technique according to the third embodiment of the present invention is applied. The improvement effect is described.
  • a supplementary explanation regarding the extension of the electronic signature method according to the first to third embodiments of the present invention will be supplemented.
  • FIG. 28 is an explanatory diagram showing a system configuration example of the electronic signature system.
  • a digital signature system based on the calculation algorithm can be constructed by concretely applying the calculation algorithms of various digital signature methods described later to the system configuration shown in FIG.
  • the electronic signature system includes two entities, a signer 10 and a verifier 20.
  • the function of the electronic signature system is realized by three algorithms: a key generation algorithm Gen, a signature generation algorithm Sig, and a signature verification algorithm Ver.
  • the key generation algorithm Gen and the signature generation algorithm Sig are used by the signer 10.
  • the signature verification algorithm Ver is used by the verifier 20.
  • the key generation algorithm Gen is executed by the key generation device 100.
  • the signature generation algorithm Sig is executed by the signature generation apparatus 150.
  • the signature verification algorithm Ver is executed by the signature verification apparatus 200.
  • the signer 10 is given a system parameter cp.
  • the system parameter cp is given by the system administrator of the electronic signature system.
  • the system parameter cp is generated based on the security parameter 1 ⁇ .
  • the key generation algorithm Gen outputs a pair of a signature key sk and a verification key pk unique to the signer 10 in response to the input of the system parameter cp ((sk, pk) ⁇ Gen (cp)).
  • the signature key sk is kept secret and is used to generate an electronic signature by the signer 10.
  • the verification key pk is disclosed to the verifier 20 and used for verification of the electronic signature by the verifier 20.
  • the signature generation algorithm Sig outputs the electronic signature ⁇ in response to the input of the signature key sk output from the key generation algorithm Gen and the electronic data (hereinafter, message) M to which the electronic signature is added ( ⁇ ⁇ Sig (sk, sk, M)).
  • the electronic signature ⁇ is provided to the verifier 20 together with the message M, and is used to verify the validity of the message M.
  • the signature verification algorithm Ver outputs a verification result 0/1 in response to the input of the verification key pk disclosed by the signer 10, the message M provided from the signer 10, and the electronic signature ⁇ . For example, when the validity of the message M is proved by the electronic signature ⁇ (when (M, ⁇ ) is accepted), the signature verification algorithm Ver outputs 1. On the other hand, when the validity of the message M is not proved by the electronic signature ⁇ (when (M, ⁇ ) is rejected), the signature verification algorithm Ver outputs 0.
  • the electronic signature system mainly includes the key generation algorithm Gen, the signature generation algorithm Sig, and the signature verification algorithm Ver. These algorithms differ for each electronic signature method. In this paper, we focus on the signature generation algorithm Sig and the signature verification algorithm Ver.
  • a function Ft having such a property is called a one-way function with trapdoor.
  • the output value of the reverse calculation algorithm is A ⁇ ⁇ err ⁇ .
  • err represents an exceptional value.
  • FIG. 2 is an explanatory diagram showing an outline of an electronic signature method called an FDH signature method.
  • the FDH signature method is characterized in that a hash value (Hash value) is used instead of the message M as an input value used for generating an electronic signature.
  • the hash value H is calculated using a hash function (Hash function).
  • the generation process (C) of the hash value H can be executed by anyone.
  • the verification key pk is the one-way function with trapdoor F t .
  • the signature key sk is trapdoor of the one-way function Ft with trapdoor. Therefore, the one-way raw function F t with trapdoor is disclosed to the verifier 20. On the other hand, trapdoor is secretly managed by the signer 10.
  • the signature generation algorithm Sig is a calculation algorithm that generates an electronic signature ⁇ from a hash value H by using a backward operation (B) of a one-way function F t with trapdoor.
  • the reverse calculation algorithm (B) of the one-way function F t with trapdoor is difficult to execute without knowing trapdoor. Accordingly, a person other than the signer 10 cannot generate the electronic signature ⁇ .
  • the signature verification algorithm Ver is a calculation algorithm that verifies the validity of the electronic signature ⁇ for the message M by using the forward calculation (A) of the unidirectional F t with trapdoor.
  • the forward calculation algorithm (A) of the unidirectional function F t with trapdoor can be executed without knowing trapdoor. Therefore, anyone who knows the verification key pk (one-way function Ft with trapdoor) can verify the electronic signature ⁇ .
  • the signer 10 can be surely specified by the electronic signature ⁇ attached to the message M by using the one-way function F t with trapdoor.
  • the inverse operation of the one-way function F t with trapdoor is not easily executed by a third party who does not know trapdoor. If this premise is broken, the signer 10 cannot be reliably identified by the electronic signature ⁇ .
  • RSA signature method As a typical trapdoor-equipped one-way function F t used in the electronic signature system, for example, an RSA function can be cited.
  • the RSA function F t is based on the fact that the backward calculation is difficult based on the “complexity difficulty of prime factorization (primary factorization problem) for large composite numbers”.
  • p, q (p ⁇ q) is a prime number
  • N p * q
  • e is an integer that is relatively prime to n ⁇ 1
  • d is an integer that is d * e ⁇ 1 (mod n)
  • Z N is The modulo N remainder ring and the RSA function F t are expressed as in the following equation (1).
  • trapdoor is d.
  • the prime factorization problem is difficult to solve in the sense that there is no efficient algorithm for solving classical computers.
  • the prime factorization problem can be solved in a polynomial time by a quantum computer. Therefore, when a quantum computer is put into practical use, the security of an electronic signature scheme (RSA signature scheme) using the RSA function F t cannot be guaranteed.
  • RSA signature scheme electronic signature scheme
  • the discrete logarithm problem can be solved in polynomial time.
  • the RSA signature method even if only a classic computer is assumed, it is required to use an electronic signature having a sufficiently long signature length in order to ensure sufficient safety. It is difficult to apply to small devices.
  • the MPKC signature method represented by the HFE signature method and the OV signature method.
  • the MPKC signature scheme is based on “safety of non-linear multivariable polynomials”.
  • the MPKC signature scheme requires a shorter signature length than the RSA signature scheme or the like, which is necessary to ensure equivalent security.
  • the embodiment described later relates to the MPKC signature method.
  • the properties of the mapping F t in calculation algorithms such as the HFE function and the OV function, and the resistance against selected document attacks will be discussed.
  • the RSA function F t expressed by the above formula (1) is an example of a trapdoor-equipped one-way function F t having bijectivity.
  • the bijective of trapdoor with one-way function F t, as shown in FIG. 3 (for RSA function), and the element Y of the original X and range of the domain of the trapdoor with one-way function F t Say one-to-one correspondence.
  • RSA + FDH signature scheme a combination of the RSA signature scheme and the FDH signature scheme (hereinafter, RSA + FDH signature scheme) will be taken as a specific example and will be considered with reference to FIG. 4 shows a signature generation method (Step 1 to Step 3) in the RSA + FDH signature scheme, and a conceptual diagram of mapping using the hash function H and the RSA function F t .
  • the signature generation method in the RSA + FDH signature method is executed by the following three steps.
  • Race can execute the calculation of the hash function H in 1.
  • Step. Reverse operation of the RSA function F t in 2 is performed using a trapdoor d (signature key). Since the RSA function F t has bijectivity, whenever one y is input, one x is always output. If y (1) ⁇ y (2) , x (1) ⁇ x (2) . Therefore, when the hash values y (1) and y (2) are input to the RSA function F t , x (1) and x (2) are output with the same appearance frequency.
  • the present inventor has devised a method for improving the distribution characteristics of the trapdoor unidirectional function F t used in the MPKC signature method and ensuring the security against the selected document attack.
  • a method for improving the distribution characteristics of the trapdoor unidirectional function F t used in the MPKC signature method and ensuring the security against the selected document attack.
  • an application example of the above method regarding the HFE signature method, the OV signature method, and a combination thereof is shown.
  • K Finite ring composed of elements including q numbers K n : n direct products of K F t : K n ⁇ K n A: nth-order expansion of the finite ring K (number of elements q n ) B: m-order expansion of finite ring K (number of elements q m ) ⁇ : Linear map A ⁇ K n (see the following formula (2)) S: Reversible affine transformation on K n (transformation of the first secret polynomial) T: reversible affine transformation on K n (transformation of second secret polynomial) f: Central map (see formula (3) below) trapdoor: S, T, a ij , b i , c
  • the HFE function F t includes a central mapping f based on a nonlinear univariate polynomial. Therefore, there may be a plurality of elements of the original image ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ corresponding to a set of roots of a univariate polynomial for an element Y ′ of a certain end region A.
  • the number of elements of the original image about the HFE function F t is a plurality of (3 in the example of FIG. 5).
  • Step. 3 A set of X′ ⁇ ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ is calculated using Y ′.
  • Step. 5 One element X ′ is selected from the set of X′ ⁇ ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ .
  • Step. 7 Output x ⁇ K n .
  • f (Z) Y ′ ⁇
  • the bias of such distribution is present, information about the structure of HFE function F t is at risk of being leaked by chosen message attacks. Therefore, in order to guarantee the safety against the selected document attack, it is necessary to devise a technique for correcting such a distribution bias.
  • HFE signature method It has been described HFE function F t up here. It will now be described an electronic signature scheme (HFE signature scheme) using HFE function F t. However, here, as an example of the HFE signature method, a PFDH signature method (HFE + PFDH signature method) using an HFE function will be described.
  • PFDH signature system >> First, the key generation algorithm Gen, the signature generation algorithm Sig, and the signature verification algorithm Ver in the PFDH signature method will be described. These algorithms of the PFDH signature scheme use a one-way function with trapdoor F t : A ⁇ B and a hash function H: ⁇ 0,1 ⁇ * ⁇ B.
  • the key generation algorithm Gen calculates (sk, pk) by setting the security parameter as 1 ⁇ , the signature key sk as trapdoor t of F t , and the verification key pk as F t ((sk, pk) ⁇ Gen (1 ⁇ )).
  • the signature generation algorithm Sig receives the message M and the signature key sk and inputs the following Step. 1 to Step.
  • the electronic signature ⁇ is calculated according to 4 ( ⁇ ⁇ Sig (sk, M)).
  • Step. 1 A random number r is generated.
  • the main difference between the FDH signature method and the PFDH signature method is that a random number r is used in the signature generation algorithm Sig.
  • a random number r is used in the signature generation algorithm Sig.
  • HFE + PFDH signature scheme is a PFDH signature scheme using HFE function F t.
  • the signature key sk is set to traps S, T, a ij , b i and c of the HFE function F t
  • the verification key pk is set to F t .
  • the signature generation algorithm Sig receives the message M and the signature key sk and inputs the following Step. 1 to Step. 9 calculates the electronic signature ⁇ ( ⁇ ⁇ Sig (sk, M)).
  • Step. 1 A random number r is generated.
  • Step. 2 Using the random number r and the message M, the hash value y ⁇ K n ⁇ H (M, r) is calculated.
  • Step. 5 A set of X′ ⁇ ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ is calculated.
  • Step. 6 One element X ′ is selected from the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ . However, if the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ is an empty set, Step. Return to the process of 1.
  • Signature verification algorithm Ver forward calculation algorithm
  • Step. 1 The hash value y ⁇ H (M, r) is calculated using r included in the electronic signature ⁇ and the message M.
  • the nature of the HFE function F t with respect to 1 Tsunomoto y included in range of HFE function F t, there is a possibility that the number of elements of the original image about the HFE function F t there are multiple.
  • F t (z) y (1) ⁇ Is obtained.
  • ⁇ F t (z) y (2) z ⁇
  • FIG. 7 shows the case where the elements y (1) ,..., Y (5) included in the end region of the HFE function F t are selected with the same probability (1/5), and the HFE function F t for the selected element.
  • X (5) is the probability of appearance of the original image elements x (1) ,..., X (5) .
  • x (1) and x (2) are moved to y (2) by the HFE function F t .
  • x (3) , x (4) , and x (5) are transferred to y (4) by the HFE function F t .
  • y (1) , y (3) , and y (5) are assumed to have no element of the original image related to the HFE function F t .
  • the element x (3) of the original image is further selected with a probability of 1/3
  • the element x (4) of the original image is further 1
  • this extended HFE signature scheme will be described.
  • the flow of processing in the signature generation algorithm Sig and signature verification algorithm Ver of the HFE + PFDH signature scheme will be summarized.
  • FIG. 14 is an explanatory diagram showing a flow of processing by the signature generation algorithm Sig of the HFE + PFDH signature method.
  • the signer 10 prepares a message M and a signature key sk (S102), and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig generates a random number r (S104).
  • the signature generation algorithm Sig calculates the end element Y′ ⁇ A of the central mapping f from the hash value y ⁇ K n based on the inverse transformation T ⁇ 1 of the transformation T (S108).
  • the signature generation algorithm Sig calculates X′ ⁇ ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ , and determines whether or not the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ has an element. Judgment is made (S110). If the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ has an element, the signature generation algorithm Sig advances the process to step S112. On the other hand, when the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ has no element, the signature generation algorithm Sig returns the process to step S104. When the process proceeds to step S112, the signature generation algorithm Sig selects one element X ′ of the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ (S112).
  • the signature generation algorithm Sig converts the element X ′ selected in step S112 into x ⁇ K n based on the inverse transformation S ⁇ 1 of the transformation S (S114).
  • the non-uniform distribution of the HFE function F t is mainly caused by the branch process in step S110 and the selection process in step S112.
  • FIG. 15 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the HFE + PFDH signature method.
  • the security proof of the HFE + PFDH signature method is usually performed by a simulation as shown in FIG. In this simulation, the step of the signing orule simulation Step. There is a problem with 1. Steps of the signing orle simulation. In 1, by selecting a random final zone original, the original x j of the original image of the HFE function F t for the selected source is to be selected at random. However, even if the end region element is randomly selected, the original image element is not randomly selected due to the non-uniform distribution of the HFE function F t . Therefore, the HFE signature method cannot guarantee the security against the selected document attack.
  • the extended HFE signature scheme is an extension of the above HFE + PFDH signature scheme (hereinafter referred to as extension A).
  • the extended HFE signature method is proportional to the number of elements ⁇ when selecting one element x of the original image with respect to a certain end element with respect to the central map f in the signature generation algorithm of the above HFE signature system. It is characterized in that one original element x is selected with probability p. That is, in the extended HFE signature method, even if the original image related to the central map f has an element x with respect to an element y in a certain end region, the element y is re-recovered with a probability (1-p).
  • the signature generation algorithm Sig related to the extended HFE signature scheme receives the message M and the signature key sk as input, and the following Step. 1 to Step. 9 calculates the electronic signature ⁇ ( ⁇ ⁇ Sig (sk, M)).
  • the signature key sk is trapdoor S of F t, T, a ij, b i, c, verification key pk is F t.
  • the definition of each symbol is the same as that used in the description of the HFE + PFDH signature method.
  • Step. 1 A random number r is generated.
  • Step. 2 Using the random number r and the message M, a hash value y ⁇ H (M, r) is generated.
  • Step 5 A set of X′ ⁇ ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ is calculated.
  • Step. 6 From the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇
  • y (1) ,..., Y (5) is given with a probability of 1/5.
  • the element number ⁇ of the original image with respect to y (1) , y (3) , y (5) is zero.
  • the appearance probability of the original image element x related to the extended HFE function F t becomes uniform with respect to the uniformly given end region element. That is, the calculation algorithm in the reverse direction of the extended HFE function F t has a uniform distribution that outputs the original image elements that are uniformly distributed when the uniformly distributed terminal elements are input. . Therefore, it extended HFE signature scheme using the extended HFE function F t is guaranteed safety against chosen message attacks.
  • FIG. 18 is an explanatory diagram showing a flow of processing by the signature generation algorithm Sig of the extended HFE signature method.
  • the signer 10 prepares a message M and a signature key sk (S302) and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig generates a random number r (S304).
  • the signature generation algorithm Sig calculates the end element Y′ ⁇ A of the central mapping f from the hash value y ⁇ K n based on the inverse transformation T ⁇ 1 of the transformation T (S308).
  • the signature generation algorithm Sig calculates X′ ⁇ ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ , and the probability proportional to the number of elements ⁇ of the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ .
  • the process proceeds to step S312 with p (S310).
  • the signature generation algorithm Sig returns the process to step S304 with a probability (1-p) (S310).
  • the signature generation algorithm Sig selects one element X ′ of the set ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ (S312).
  • the signature generation algorithm Sig converts the element X ′ selected in step S312 into x ⁇ K n based on the inverse transformation S ⁇ 1 of the transformation S (S314).
  • Uniform distribution of the expansion HFE function F t is mainly realized by the branch processing based on the probability p at step S310.
  • FIG. 19 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the extended HFE signature method.
  • the security certification of the extended HFE signature method can be performed using a simulation called a reduction algorithm, for example.
  • a simulation called a reduction algorithm for example.
  • the HFE function F t is applied to the end element randomly given in the signing oracle simulation.
  • the fact that the original image element xj is not selected at random is the reason why the security against the selected document attack cannot be guaranteed.
  • a uniform distribution of the expansion HFE function F t by giving the original y of co-domain randomly, the original x j of the original image can be selected at random. Therefore, the extended HFE signature scheme guarantees security against selected document attacks.
  • the extended HFE signature method has been described above.
  • the extended HFE signature scheme guarantees security against selected document attacks.
  • the extended HFE signature scheme is based on the MPKC signature scheme based on the difficulty of solving a set of nonlinear polynomials randomly selected on a finite ring, and is tampered with a quantum computer. It also has resistance to actions.
  • the extended HFE signature scheme has the effect that the signature length necessary to ensure the same security is shorter than the RSA signature scheme and the like, as with other MPKC signature schemes.
  • Step. 4 Output y ⁇ K o .
  • the OV function F t includes a central mapping F based on a nonlinear multivariable polynomial. Therefore, there is a possibility that there is no element number of the original image ⁇ z ⁇ K o
  • F (z) y ′ ⁇ corresponding to the root set of the multivariable polynomial for an element y ′ of a certain end region K n. is there. In this case, since the end region element in which the element of the original image ⁇ z ⁇ K o
  • F (z) y ′ ⁇ does not exist at all is not included in the range, as shown in FIG. Different. By having such a property, even if the end region elements are uniformly input, the domain region elements obtained by the backward calculation of the OV function F t are not uniformly distributed.
  • the OV function F t is expressed as F t : A 1 ⁇ V ⁇ A 2 , (x, vx) when the set of Vinegar variables vx is expressed as V, the domain of the OV function F t is expressed as A 1 , and the end region is expressed as A 2.
  • the calculation algorithm in the reverse direction of the OV function F t is (S1) a fixed Vinegar variable vx, (S2) a function F t ( ⁇ , vx): A 1 ⁇ Vinegar variable vx fixed A 1 , x ⁇ F (x, vx) is calculated in two steps. More specifically, the backward calculation algorithm for the OV function F t is the following Step. 1 to Step. 5.
  • Step. 3 there may be no element of the original image ⁇ z ⁇ K o
  • F (z, vx) y ⁇ regarding the central map F.
  • Step. 2 the Vinegar variable vx is retaken.
  • the size of the value range of the OV function F t differs depending on the Vinegar variable vx. Therefore, even if an end region element having a uniform distribution with respect to the OV function F t is input, the output value of the backward calculation algorithm does not have a uniform distribution.
  • distribution bias exists, there is a risk that information on the structure of the OV function F t is leaked by the selected document attack. Therefore, in order to guarantee the safety against the selected document attack, it is necessary to devise a technique for correcting such a distribution bias.
  • the signature generation algorithm Sig receives the message M and the signature key sk and inputs the following Step. 1 to Step. 6 calculates the electronic signature ⁇ ( ⁇ ⁇ Sig (sk, M)).
  • Step. 1 Using the message M, the hash value y ⁇ K o ⁇ H (M) is calculated.
  • Step. Return to 3 and take the Vinegar variable again.
  • x ′ (ox 1 ,..., Ox o , vx 1 ,..., Vx v ) ⁇ K n composed of Oil variable ox ⁇ K o and Vinegar variable vx ⁇ K v
  • the electronic signature ⁇ x is output.
  • Step. 1 Using the message M, the hash value y ⁇ H (M) is calculated.
  • F t (vx (1) ,. ) Has a larger value range than F t (vx (2) ,.
  • F t (vx (1) has a larger value range than F t (vx (2) ,.
  • the probability of returning to 3 is reduced. That is, the appearance probability of the Vinegar variable vx (1) is increased, and in the calculation algorithm in the reverse direction of the OV signature method, the distribution of input and output is biased. Therefore, the inventor of the present invention has devised a method (extended OV signature method) for improving such distribution bias.
  • the extended OV signature scheme will be described.
  • the flow of processing in the signature generation algorithm Sig and signature verification algorithm Ver of the OV + FDH signature scheme will be summarized.
  • FIG. 16 is an explanatory diagram showing a flow of processing by the signature generation algorithm Sig of the OV + FDH signature method.
  • the signer 10 prepares a message M and a signature key sk (S202), and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig selects the Vinegar variable vx ⁇ K v (S208).
  • the signature generation algorithm Sig then computes ox ⁇ ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ , and the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ It is determined whether or not it is held (S210). If the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has an element, the signature generation algorithm Sig advances the process to step S212. On the other hand, when the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has no element, the signature generation algorithm Sig returns the process to step S208. When the process proceeds to step S212, the signature generation algorithm Sig selects one element ox of the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ (S212).
  • the non-uniform distribution of the OV function F t is mainly caused by the Vinegar variable re-taking process in steps S210 and S208.
  • FIG. 17 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the OV + FDH signature method.
  • Step of Random oraule simulation. 2 F t (x j ) may not be uniformly distributed even if x j is selected at random.
  • Step. 1 it is assumed that (v j , x j ) is selected at random.
  • a unidirectional function F t with trapdoor hereinafter referred to as a first extended OV function F t
  • a digital signature scheme using the first extension OV function F t hereinafter, the first expansion OV signature method
  • the first extended OV signature scheme is an extension of the OV + FDH signature scheme (hereinafter referred to as extension B).
  • extension B the Vinegar variable vx is re-established when there is no element of the original image for a certain terminal element. Rather, it is devised to regain the original y of the end region.
  • the end element y does not affect the size of the range of the central map F. Therefore, the distribution of the Vinegar variable vx output from the central map F can be made uniform by applying the first extended OV signature method.
  • the first extended OV function F t has a uniform distribution.
  • the first extended OV signature method will be described in detail.
  • the signature generation algorithm Sig receives the message M and the signature key sk as inputs, and performs the following Step. 1 to Step. 7 calculates the electronic signature ⁇ ( ⁇ ⁇ Sig (sk, M)).
  • the signature key sk is Ft trapsor S, T, a ij , b ij , c i , d i , e, and the verification key pk is F t .
  • the definition of each symbol is the same as that used in the description of the OV + FDH signature method.
  • Step. 2 A random number r is generated.
  • Step. 3 Using the random number r and the message M, the hash value y ⁇ K ⁇ o ⁇ H (r, M) is calculated.
  • x ′ (ox 1 ,..., Ox o , vx 1 ,..., Vx v ) ⁇ K n composed of Oil variable ox ⁇ K o and Vinegar variable vx ⁇ K v
  • the electronic signature ⁇ (x, r) is output.
  • the main difference between the first extended OV signature scheme and the OV + FDH signature scheme is the above described Step. 5 configuration.
  • the Vinegar variable vx is re-taken. It was broken.
  • the Vinegar variable vx is set to Step. 1 is fixed, and the end element y ′ of the central map F is re-examined.
  • the first extended OV signature scheme introduces a random number r as in the PFDH signature scheme.
  • FIG. 22 is an explanatory diagram showing a flow of processing by the signature generation algorithm Sig of the extended OV signature method.
  • the signer 10 prepares a message M and a signature key sk (S502) and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig randomly selects the Vinegar variable vx (S504).
  • the signature generation algorithm Sig generates a random number r (S506).
  • the signature generation algorithm Sig from the hash value Y ⁇ K o to calculate the original Y' ⁇ K o the co-domain of the central mapping F on the basis of the inverse transformation T -1 of the transformation T (S510).
  • the signature generation algorithm Sig then computes ox ⁇ ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ , and the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ It is determined whether or not it is held (S512). If the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has an element, the signature generation algorithm Sig advances the process to step S514. On the other hand, when the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has no element, the signature generation algorithm Sig returns the process to step S506. When the process proceeds to step S514, the signature generation algorithm Sig selects one element ox of the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ (S514).
  • the uniform distribution of the first extended OV function F t is that the Vinegar variable vx is not re-established when ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has no element in step S512. This is realized by re-taking the random number r in step S506.
  • FIG. 23 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the extended OV signature method.
  • the processing flow in the signature verification algorithm Ver is not significantly different between the first extended OV signature method and the OV + FDH signature method.
  • the first extended OV signature scheme introduces a random number r, the random number r is used during signature verification.
  • the first extended OV signature scheme has been described that improves the non-uniform distribution of the OV + FDH signature scheme and can guarantee the security against selected document attacks.
  • the first extension OV signature scheme were those devised reverse calculation algorithm OV function F t.
  • the second extended OV signature scheme another device for improving the non-uniform distribution of the OV + FDH signature scheme (hereinafter, the second extended OV signature scheme) will be described.
  • the non-uniform distribution of the OV + FDH signature method is caused by re-taking the Vinegar variable vx when there is no solution of the central map F (vx,%) With the Vinegar variable vx fixed.
  • the present inventor has proposed a contrivance for avoiding re-addition of the Vinegar variable vx as the first extended OV signature method.
  • the problem of the OV + FDH signature scheme does not occur if the probability that there is no solution of the central map F (vx,%) With the Vinegar variable vx fixed is small enough to be ignored. Therefore, the present inventor has devised a device for reducing the probability that there is no solution of the central map F (vx,%) With the Vinegar variable vx fixed as the second extended OV signature method.
  • the signature generation algorithm Sig and signature verification algorithm Ver of the OV signature scheme (second extended OV signature scheme) with the above-described device are as follows.
  • a ij, b ij, c i, d i, e ⁇ K, f 1, ..., f m ⁇ K [ox 1, ..., ox o, vx 1, ..., vx v] is.
  • FIG. 26 is an explanatory diagram showing a flow of processing by the signature generation algorithm Sig of the second extended OV signature method.
  • the signer 10 prepares a message M and a signature key sk (S702), and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig selects the random number r (S704).
  • the signature generation algorithm Sig from the hash value Y ⁇ K m to calculate the original Y' ⁇ K m of the co-domain of the central mapping F on the basis of the inverse transformation T -1 of the transformation T (S 708).
  • the signature generation algorithm Sig selects the Vinegar variable vx ⁇ K v (S710).
  • the signature generation algorithm Sig then computes ox ⁇ ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ , and the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ It is determined whether or not it is held (S712). If the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has an element, the signature generation algorithm Sig advances the process to step S714. On the other hand, when the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has no element, the signature generation algorithm Sig proceeds to step S720 and ends abnormally (S720). However, it should be noted that in the case of the second extended OV signature method, the above-described device is applied, so that the process proceeds to step S720 only with a probability that is negligibly small or with a probability of 0.
  • the signature generation algorithm Sig selects one element ox of the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ (S714).
  • the uniform distribution of the second extended OV function F t is realized by not proceeding to step S720 in the branch process of step S712.
  • FIG. 27 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the second extended OV signature method.
  • the second embodiment of the present invention relates to a device for improving non-uniform distribution in the MPKC signature method using the Vinegar variable vx.
  • HFEv function Ft is a combination of the HFE function and the OV function. Accordingly, as shown in FIG. 12, there may be a plurality of elements of the original image for the element y in a certain range, or none at all. In addition, the size of the range of HFEv function F t would change by way of taking Vinegar variable vx. For these reasons, the HFEv function has a distribution bias between input and output. Hereinafter, the HFEv function will be described in more detail.
  • x′ (ox 1 ′,..., Ox o ′, vx 1 ′, ..., vx v ') ⁇ K n .
  • Step. 2 ox′ ⁇ K o is converted to X 1 ′ ⁇ A by ⁇ o ⁇ 1 .
  • X 2 ' vx ⁇ K v .
  • the (Step.4) ⁇ m, y ' (y 1' to Y' ⁇ B, ..., y m ') into a that is an element of the set K m.
  • Step. 6 Output y ⁇ K m .
  • the HFEv function F t includes a central mapping f based on a non-linear multivariable polynomial, like the HFE function. Therefore, there may be a plurality of elements of the original image ⁇ Z ⁇ A
  • f (Z) Y ′ ⁇ corresponding to the set of roots of the multivariable polynomial for an element Y ′ of a certain end region A.
  • the number of elements of the original image about the HFE function F t is a plurality of (3 in the example of FIG. 12).
  • F t (x) y F t (x) ⁇ K n.
  • Step. 5 The set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ is calculated.
  • Step. 5 One element X 1 ′ is selected from the set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ . However, if the set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ is an empty set, Step. Return to 2 and select the Vinegar variable vx ′ again.
  • Step. 8 Output x ⁇ K n .
  • f (Z, X 2 ′) Y ′ ⁇
  • HFEv signature method HFEv signature method
  • HFEv + FDH signature method The signature generation algorithm Sig and signature verification algorithm Ver in the HFEv + FDH signature scheme will be described.
  • trapdoor S of the signature key sk F t, T, a ij , b ij, c i, the verification key pk is set to F t.
  • a ij ⁇ A, b i , c K v ⁇ A.
  • the signature generation algorithm Sig receives the message M and the signature key sk and inputs the following Step. 1 to Step. 9 calculates the electronic signature ⁇ ( ⁇ ⁇ Sig (sk, M)).
  • Step. 1 Using the message M, calculate the hash value y ⁇ K m ⁇ H (M).
  • Step. 4 y 1 ′,..., Y m ′) ⁇ K m is converted into Y′ ⁇ B by ⁇ m ⁇ 1 .
  • vx ⁇ K v is set to X 2 ′ ⁇ K v .
  • Step. 5 The set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ is calculated.
  • Step. 6 One element X 1 ′ is selected from the set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ . However, if the set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ is an empty set, Step. Returning to step 3, the Vinegar variable vx ′ is selected again.
  • ⁇ o, 'to convert the ⁇ A ox (ox 1, ... , ox o) to ⁇ K o
  • x' X 1 (ox 1 ', ..., ox o', vx 1 ' ,..., Vx v ′).
  • the electronic signature ⁇ x is output.
  • Step. 1 Using the message M, the hash value y ⁇ H (M) is calculated.
  • the HFEv function F t is a combination of the HFE function and the OV function. Therefore, as shown in FIG. 13, due to the characteristics of (A) the HFE function, even when the same end region element y is given, the number of elements of the original image for the element y may not be one. Further, (B) the size of the range varies depending on how the Vinegar variable vx is selected due to the characteristics of the OV function, so that the appearance of the element x according to the Vinegar variable vx included in the element x of the original image with respect to the element y of a certain end region Probabilities will be different. Therefore, the HFEv signature method cannot guarantee the security against the selected document attack.
  • the present inventor has devised a signature scheme (extended HFEv signature scheme) that can solve such problems.
  • extended HFEv signature scheme will be described.
  • the processing flow in the signature generation algorithm Sig and signature verification algorithm Ver of the HFEv + FDH signature scheme will be summarized.
  • FIG. 16 is an explanatory diagram showing a flow of processing by the signature generation algorithm Sig of the HFEv + FDH signature method.
  • the signer 10 prepares a message M and a signature key sk (S202), and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig selects the Vinegar variable vx ⁇ K v (S208).
  • the signature generation algorithm Sig then computes ox ⁇ ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ , and the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ It is determined whether or not it is held (S210). If the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has an element, the signature generation algorithm Sig advances the process to step S212. On the other hand, when the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ has no element, the signature generation algorithm Sig returns the process to step S208. When the process proceeds to step S212, the signature generation algorithm Sig selects one element ox of the set ⁇ z ⁇ K o
  • F (z, vx) y ′ ⁇ (S212).
  • HFEv function F t Non uniform distribution of HFEv function F t, the steps S210, retaking processing Vinegar variables in step S208, and caused by the selection processing in step S212.
  • FIG. 17 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the HFEv + FDH signature method.
  • the first extended HFEv signature method is a method of reselecting the Vinegar variable with a probability proportional to the number of elements of the original image with respect to an element in a certain range, as in the above-described extended HFE signature method.
  • the signature generation algorithm Sig and the signature verification algorithm Ver in the first extended HFEv signature scheme will be described with reference to FIGS.
  • the signature generation algorithm Sig calculates X 1 ′ ⁇ ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ and sets ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′.
  • the process proceeds to step S414 with a probability p proportional to the number ⁇ of elements (S412).
  • the signature generation algorithm Sig returns the process to step S410 with the probability (1-p).
  • the signature generation algorithm Sig selects one element X 1 ′ of the set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ (S414).
  • the branch process of step S412 is performed based on the probability p proportional to the number of elements ⁇ of the original image ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ . uniform distribution of HFEv function F t is achieved.
  • FIG. 21 is an explanatory diagram showing a flow of processing by the signature verification algorithm Ver of the HFEv + FDH signature method.
  • the second extended signature scheme is obtained by applying the devise of extension A relating to the extended HFE signature scheme and the contrivance of extension B relating to the first extended OV signature scheme to the HFEv signature scheme. That is, the second extended HFEv signature method is a method of reselecting the range element with a probability proportional to the number of elements of the original image with respect to a certain range element.
  • the signature generation algorithm Sig and the signature verification algorithm Ver in the second extended HFEv signature scheme will be described with reference to FIGS. 24 and 25.
  • the signer 10 prepares a message M and a signature key sk (S602), and inputs them to the signature generation algorithm Sig.
  • the signature generation algorithm Sig generates a random number r (S606).
  • the signature generation algorithm Sig calculates the end element Y′ ⁇ A of the central mapping f from the hash value y ⁇ K n based on the inverse transformation T ⁇ 1 of the transformation T (S610).
  • the signature generation algorithm Sig calculates X 1 ′ ⁇ ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ and sets ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′.
  • the process proceeds to step S614 with a probability p proportional to the number ⁇ of elements (S612).
  • the signature generation algorithm Sig returns the process to step S606 with a probability (1-p).
  • the signature generation algorithm Sig selects one element X 1 ′ of the set ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ (S614).
  • step S612 the branch process in step S612 is performed based on the probability p proportional to the number of elements ⁇ of the original image ⁇ Z ⁇ A
  • f (Z, X 2 ′) Y ′ ⁇ , and the probability (1
  • the uniform distribution of the second extended HFEv function F t is realized by reselecting the random number r instead of the new Vinegar variable vx in ⁇ p).
  • the third embodiment of the present invention relates to an application example of extension A and an application example of extension A + extension B to the HFEv signature scheme.
  • the extension A is applied when the original image of the central map f can have a plurality of elements for a certain end element, and the extension B is also added in the case of a signature scheme using a Vinegar variable. By applying this, the distribution bias between the input and the output is eliminated, and the security against the selected document attack can be guaranteed.
  • the first extended OV signature method was an application example of only extension B.
  • the number of elements of the original image of the central map f with respect to an element in a certain end region may not be 1, so it is necessary to use the extension A together.
  • extension A As described above, by appropriately using any one of the extension A, the extension B, and the extension A + extension B depending on the type of the MPKC signature method, it is possible to eliminate the uneven distribution between the input and the output of the function Ft. Become. Note that the second extended OV signature method may be combined in place of the extended B.
  • the random number r used here may be any number that a third party thinks is substantially a random number.
  • H ′ H ′ (M, r)
  • PSS Probable Signature Scheme
  • the PSS is a mechanism for generating a random number r or a part thereof from a part of the electronic signature ⁇ in the PFDH method.
  • the configuration of the basic OV function is illustrated for simplicity, but it can also be applied to a multi-layer OV function (for example, the OV function of the Rainbow signature scheme).
  • the multilayer OV function is configured by an algorithm that sequentially calculates Oil variables in the following steps.
  • the extended HFE function F t is used as the verification key pk.
  • a modification in which a part of the extended HFE function F t is used as the verification key pk (hereinafter, minus extended method) is also possible.
  • the extended HFE function F t includes n polynomials, (n ⁇ m) polynomials obtained by removing m (m ⁇ n) polynomials from the polynomials are provided to the verifier 20 as verification keys pk.
  • a hash function H that outputs a hash value y having (nm) elements is used.
  • the configuration may be such that elements other than (nm) elements are ignored from the output value of the hash function H that outputs the hash value y having n elements.
  • the verification of the electronic signature ⁇ is obtained by applying (nm) number y ′′ obtained by applying the electronic signature ⁇ to the verification key pk, the message M and the random number r to the hash function H ( n ⁇ m) comparisons with hash values y, while the electronic signature ⁇ is generated by applying (n ⁇ m) elements obtained by applying the message M and the random number r to the hash function H;
  • An original image is calculated by applying n elements composed of m random numbers to a backward calculation algorithm, and the calculation result is included in a part of the electronic signature ⁇ .
  • the technique according to the first embodiment can also be applied to the minus extension method, and the strength of the HFE function F t is further improved by applying the minus extension method.
  • ⁇ 6 Hardware configuration example>
  • the functions of the components included in the key generation device 100, the signature generation device 150, and the signature verification device 200 can be realized using, for example, the hardware configuration of the information processing apparatus illustrated in FIG. That is, the function of each component is realized by controlling the hardware shown in FIG. 31 using a computer program.
  • the form of this hardware is arbitrary, for example, personal information terminals such as personal computers, mobile phones, PHS, PDAs, game machines, contact or non-contact IC chips, contact or non-contact ICs This includes cards or various information appliances.
  • PHS is an abbreviation of Personal Handy-phone System.
  • the PDA is an abbreviation for Personal Digital Assistant.
  • this hardware mainly includes a CPU 902, a ROM 904, a RAM 906, a host bus 908, and a bridge 910. Furthermore, this hardware includes an external bus 912, an interface 914, an input unit 916, an output unit 918, a storage unit 920, a drive 922, a connection port 924, and a communication unit 926.
  • the CPU is an abbreviation for Central Processing Unit.
  • the ROM is an abbreviation for Read Only Memory.
  • the RAM is an abbreviation for Random Access Memory.
  • the CPU 902 functions as, for example, an arithmetic processing unit or a control unit, and controls the overall operation of each component or a part thereof based on various programs recorded in the ROM 904, the RAM 906, the storage unit 920, or the removable recording medium 928.
  • the ROM 904 is a means for storing a program read by the CPU 902, data used for calculation, and the like.
  • a program read by the CPU 902 various parameters that change as appropriate when the program is executed, and the like are temporarily or permanently stored.
  • a host bus 908 capable of high-speed data transmission.
  • the host bus 908 is connected to an external bus 912 having a relatively low data transmission speed via a bridge 910, for example.
  • a bridge 910 for example.
  • the input unit 916 for example, a mouse, a keyboard, a touch panel, a button, a switch, a lever, or the like is used.
  • a remote controller capable of transmitting a control signal using infrared rays or other radio waves may be used.
  • a display device such as a CRT, LCD, PDP, or ELD
  • an audio output device such as a speaker or a headphone, a printer, a mobile phone, or a facsimile, etc.
  • the above CRT is an abbreviation of Cathode Ray Tube.
  • the LCD is an abbreviation for Liquid Crystal Display.
  • the PDP is an abbreviation for Plasma Display Panel.
  • the above ELD is an abbreviation for Electro-Luminescence Display.
  • the storage unit 920 is a device for storing various data.
  • a magnetic storage device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, a magneto-optical storage device, or the like is used.
  • HDD hard disk drive
  • the above HDD is an abbreviation for Hard Disk Drive.
  • the drive 922 is a device that reads information recorded on a removable recording medium 928 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, or writes information to the removable recording medium 928.
  • the removable recording medium 928 is, for example, a DVD medium, a Blu-ray medium, an HD DVD medium, various semiconductor storage media, or the like.
  • the removable recording medium 928 may be, for example, an IC card on which a non-contact type IC chip is mounted, an electronic device, or the like.
  • the above IC is an abbreviation for Integrated Circuit.
  • the connection port 924 is a port for connecting an external connection device 930 such as a USB port, an IEEE 1394 port, a SCSI, an RS-232C port, or an optical audio terminal.
  • the external connection device 930 is, for example, a printer, a portable music player, a digital camera, a digital video camera, or an IC recorder.
  • the USB is an abbreviation for Universal Serial Bus.
  • the SCSI is an abbreviation for Small Computer System Interface.
  • the communication unit 926 is a communication device for connecting to the network 932.
  • a wired or wireless LAN for example, a wired or wireless LAN, Bluetooth (registered trademark), or a WUSB communication card, an optical communication router, an ADSL router, or a contact Or a device for non-contact communication.
  • the network 932 connected to the communication unit 926 is configured by a wired or wireless network, such as the Internet, home LAN, infrared communication, visible light communication, broadcast, or satellite communication.
  • the above LAN is an abbreviation for Local Area Network.
  • the WUSB is an abbreviation for Wireless USB.
  • the above ADSL is an abbreviation for Asymmetric Digital Subscriber Line.
  • the functional configuration of the above information processing apparatus can be expressed in two ways as follows.
  • the information processing apparatus the inverse transformation T -1 of the first secret polynomial T, the original y of the original y finite ring K n of the finite ring K n containing source consisting of n number '
  • a first inverse transform unit for transforming into a finite ring K n and an element y ′ of the finite ring K n obtained by the first inverse transform unit as an element Y of an nth-order extension A of the finite ring K, and using the element Y
  • An element calculation unit for calculating an element X ⁇ ⁇ Z ⁇ A
  • f (Z) Y ⁇ of the original image of the map f (f: A ⁇ A) expressed by a predetermined multivariable polynomial;
  • An element selection unit that selects one element X of the original image calculated by the element calculation unit with a probability p proportional to the number of elements ⁇ and outputs an exceptional value with a probability (1-p); and the element selection the by elements X selected in part
  • the element selection unit selects the element X of the original image with the probability p proportional to the number of elements ⁇ of the original image, the probability that the element of each original image is selected becomes the same. Therefore, if the original y set having a uniform distribution on a finite ring K n is input to the first inverse transformation unit, a first inverse transform unit, element calculation unit, element selection unit, the second inverse transformation unit original x obtained through the process has a uniform distribution on a finite ring K n. That is, the mapping F t corresponding to the processes of the first inverse transform unit, the element calculation unit, the element selection unit, and the second inverse transform unit has bijectivity. As described above, since the map F t has bijectivity, the digital signature system based on the map F t is guaranteed to be safe against a selected document attack.
  • a partial element selection unit for selecting the original vx finite ring K v containing source consists of the number of v number, the number generator for generating a number r, the number of A data generation unit that generates an element y of a finite ring K m including elements composed of m numbers using the number r and electronic data M generated by the generation unit, and a first secret polynomial T the inverse transform T -1, and the first inverse transformation unit for converting the original y of the finite ring K m generated by the data generating unit based on y 'of the finite ring K m, in the first inverse transform unit
  • the element of the original image when the element of the original image does not exist, instead of reselecting the element vx related to the number of elements of the original image, the element y is generated by regenerating the number r and changing the element y.
  • the bijectivity of the mapping Ft corresponding to the processing of the inverse transformation unit, the element calculation unit, the element selection unit, and the second inverse transformation unit is realized.
  • the map F t since the map F t has bijectivity, the digital signature system based on the map F t is guaranteed to be safe against a selected document attack.
  • the signature generation algorithm of the extended HFE signature method illustrated in FIG. 18 can be executed by the signature generation apparatus 150 illustrated in FIG. 28 using, for example, hardware illustrated in FIG.
  • the signature generation algorithm of the extended HFE signature method shown in FIG. 19 can be executed by the signature verification apparatus 200 shown in FIG. 28 using, for example, the hardware shown in FIG.
  • the signature generation algorithm of the first extended HFEv signature method shown in FIG. 20 can be executed by the signature generation device 150 shown in FIG. 28 using, for example, the hardware shown in FIG.
  • the signature generation algorithm of the first extended HFEv signature method illustrated in FIG. 21 can be executed by the signature verification apparatus 200 illustrated in FIG. 28 using, for example, hardware illustrated in FIG.
  • the signature generation algorithm of the first extended OV signature method shown in FIG. 22 can be executed by the signature generation device 150 shown in FIG. 28 using, for example, the hardware shown in FIG.
  • the signature generation algorithm of the first extended OV signature method shown in FIG. 23 can be executed by the signature verification apparatus 200 shown in FIG. 28 using, for example, the hardware shown in FIG.
  • the signature generation algorithm of the second extended HFEv signature method shown in FIG. 24 can be executed by the signature generation device 150 shown in FIG. 28 using, for example, the hardware shown in FIG.
  • the signature generation algorithm of the second extended HFEv signature method illustrated in FIG. 25 can be executed by the signature verification apparatus 200 illustrated in FIG. 28 using, for example, hardware illustrated in FIG.
  • the signature generation algorithm of the second extended OV signature method shown in FIG. 26 can be executed by the signature generation device 150 shown in FIG. 28 using, for example, the hardware shown in FIG.
  • the signature generation algorithm of the second extended OV signature method illustrated in FIG. 27 can be executed by the signature verification apparatus 200 illustrated in FIG. 28 using, for example, hardware illustrated in FIG.
  • the various signature generation algorithms described in the above embodiments can be executed by the signature generation apparatus 150 illustrated in FIG. 28 using, for example, the hardware illustrated in FIG.
  • the various signature generation algorithms described in the above embodiment can be executed by the signature verification apparatus 200 shown in FIG. 28 using, for example, the hardware shown in FIG.

Abstract

【課題】選択文書攻撃に対する安全性証明が可能なMPKC方式の電子署名システムを実現するための情報処理装置が提供される。 【解決手段】第1秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y'に変換する第1逆変換部と、ここで得られた有限環Kの元y'を有限環Kのn次拡大Aの元Yとみなし、元Yを用いて、所定の多変数多項式で表現される写像f:A→Aの原像の要素X∈{Z|f(Z)=Y}を算出する要素算出部と、原像の要素数αに比例した確率pで原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、ここで選択された要素Xを有限環Kの元x'とみなし、第2秘密多項式Sの逆変換S-1により、有限環Kの元x'を有限環Kの元xに変換する第2逆変換部とを備える、情報処理装置が提供される。

Description

情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム
 本発明は、情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラムに関する。
 情報処理技術や通信技術の急速な発展に伴い、公文書、私文書を問わず、文書の電子化が急速に進んでいる。これに伴い、多くの個人や企業は、電子文書の安全管理に大きな関心を寄せている。こうした関心の高まりを受け、各方面で電子文書の盗聴や偽造等のタンパリング行為に対する安全性が盛んに議論されるようになってきた。電子文書の盗聴に対する安全性は、例えば、電子文書を暗号化することにより確保される。また、電子文書の偽造に対する安全性は、例えば、電子署名を利用することにより確保される。但し、暗号や電子署名には十分なタンパリング耐性が求められる。
 電子署名は、電子文書の作成者を特定するために利用される。そのため、電子署名は、電子文書の作成者しか生成できないようにすべきである。仮に、悪意ある第三者が同じ電子署名を生成できてしまうと、その第三者が電子文書の作成者に成りすますことができてしまう。つまり、悪意ある第三者により電子文書が偽造されてしまう。こうした偽造を防止するため、電子署名の安全性については様々な議論が交わされてきた。現在広く利用されている電子署名方式として、例えば、RSA署名方式やDSA署名方式を利用する方式が挙げられる。
 RSA署名方式は、「大きな合成数に対する素因数分解の困難性(以下、素因数分解問題)」を安全性の根拠とする。また、DSA署名方式は、「離散対数問題に対する解答の困難性」を安全性の根拠とする。これらの根拠は、古典的なコンピュータを利用して素因数分解問題や離散対数問題を効率的に解くアルゴリズムが存在しないことに起因する。つまり、上記の困難性は、古典的なコンピュータにおける計算量的な困難性を意味する。なお、ここで言う古典的なコンピュータは、所謂量子コンピュータではないコンピュータのことを意味する。また、量子コンピュータは、素因数分解問題や離散対数問題に対する解答を効率的に算出することができると言われている。
 そこで、RSA署名方式やDSA署名方式とは異なる安全性の根拠を有するアルゴリズムやプロトコルに注目が集まっている。その有力な候補の1つが「多変数多項式に対する解答の困難性(以下、多変数多項式問題)」を安全性の根拠とする多項式公開鍵暗号(MPKC;Multivative Public Key Cryptography)署名方式である。多変数多項式問題には、量子コンピュータによる効率的な解法アルゴリズムが存在しないと言われている。また、MPKC署名方式は、RSA署名方式やDSA署名方式に比べ、同程度の安全性を確保するために保持すべき情報量が少なくて済む。そのため、演算能力やメモリ容量が少ないデバイスでの利用にも適している。
 MPKC署名方式としては、例えば、MI(Matsumoto-Imai cryptography)、HFE(Hidden Field Equation cryptography;例えば、非特許文献1を参照)、OV(Oil-Vinegar signature scheme)、TTM(Tamed Transformation Method cryptography)等に基づくものが良く知られている。また、HFE署名方式の派生形として、HFE署名方式とOV署名方式との組み合わせ(以下、HFEv署名方式)やHFE署名方式とPFDH(Probabilistic Full Domain Hash)署名方式との組み合わせ(以下、HFE+PFDH方式;例えば、非特許文献2を参照)等が知られている。
Jacques Patarin Asymmetric Cryptography with a Hidden Monomial.CRYPTO 1996, pp.45-60. Patarin, J., Courtois, N., and Goubin, L. QUARTZ, 128-Bit LongDigital Signatures. In Naccache,D., Ed. Topics in Cryptology - CT-RSA 2001 (SanFrancisco, CA, USA, April 2001), vol. 2020 of Lecture Notes in ComputerScience, Springer-Verlag., pp.282-297.
 上記の通り、HFE署名方式やOV署名方式等のMPKC署名方式は、量子コンピュータを用いたタンパリング行為に対して耐性があり、かつ、RSA署名方式等に比べて演算負荷や使用メモリ量が少ないという優れた特性を有している。しかしながら、HFE署名方式やOV署名方式等のMPKC署名方式において利用されるtrapdoor付き一方向性関数fは、全単射性を有していない。そのため、これらのMPKC署名方式は、選択文書攻撃(CMA;Chosen-Message Attack)に対する安全性が保証されない。選択文書攻撃とは、検証鍵等の公開情報に加え、任意の電子文書に対する電子署名を攻撃者が自由に取得できる状況で電子署名の偽造を試みる行為である。
 そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、MPKC署名方式に利用されるtrapdoor付き一方向性関数に相当する写像の全単射性又は全単射に近い性質を実現することが可能な、新規かつ改良された情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラムを提供することにある。
 上記課題を解決するために、本発明のある観点によれば、第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換部と、を備える、情報処理装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×K→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、を備える、情報処理装置が提供される。
 また、上記の情報処理装置は、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて前記有限環Kの元yを生成するデータ生成部と、前記データ生成部にて生成された有限環Kの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Kの元xを含む電子署名σを生成する署名生成部と、をさらに備えていてもよい。この場合、前記署名生成部は、前記要素選択部にて例外値が出力された場合、前記数生成部により異なる数rを生成させ、前記データ生成部により前記異なる数rに基づいて生成された有限環Kの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Kの元xを含む電子署名σを生成する。
 また、上記課題を解決するために、本発明の別の観点によれば、第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、を備える、鍵生成装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×K→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、を備える、鍵生成装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、を備える、情報処理装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記部分選択部に異なる元vxを選択させ、前記異なる数vxを用いて前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、を備え、前記mは、n≧m+βの条件を満たし、前記βは、有限環Kの要素数qに対してq-β≪1の条件を満たす、情報処理装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記部分選択部に異なる元vxを選択させ、前記異なる数vxを用いて前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、を備え、前記写像fは、ox=(ox1,…,oxo),vx=(vx1,…,vxv)について、f(ox1,…,oxo,vx1,…,vxv)
= L(vx1,…,vxv)(ox1,…,oxo)T + g(vx1,…,vxv)と表現され、前記Lは、L(vx1,…,vxv) = L1 L2(vx1,…,vxv) L3と表現され、前記L、Lは、正則行列であり、前記Lは、vx,…,vxの関数lij(vx,…,vx)をi行j列の要素とし、対角成分を1とする上又は下三角行列である、情報処理装置が提供される。
 また、前記第2の秘密多項式Sは、恒等写像であってもよい。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、を備える、鍵生成装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成する第1データ生成部と、第1の秘密多項式Tの逆変換T-1により、前記第1データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記第1データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元x及び前記数生成部にて生成された数rを含む電子署名σを生成する署名生成部と、を有する署名生成装置から、前記第1の秘密多項式T、前記写像f、前記第2の秘密多項式Sで構成される合成写像Fの情報と、前記電子署名σと、前記電子データMとを取得する取得部と、前記電子署名σに含まれる数r、及び前記電子データMを用いて有限環Kの元y1を生成する第2データ生成部と、前記電子署名σに含まれる有限環Kの元xを前記合成写像Fに適用して有限環Kの元y2を生成する第3データ生成部と、前記第2データ生成部にて生成された有限環Kの元y1と、前記第3データ生成部にて生成された有限環Kの元y2とが一致するか否かを検証する検証部と、を備える、署名検証装置が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、前記第1逆変換ステップにて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出ステップと、前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、前記要素選択ステップにて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換ステップと、を含む、情報処理方法が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択ステップと、第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、前記第1逆変換ステップにて得られた有限環Kの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択ステップにて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×K→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出ステップと、前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、前記要素選択ステップにて選択された要素Xを有限環Kの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換ステップと、を含む、情報処理方法が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択ステップと、数rを生成する数生成ステップと、前記数生成ステップにて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成ステップと、第1の秘密多項式Tの逆変換T-1により、前記データ生成ステップにて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、前記第1逆変換ステップにて得られた有限環Kの元y’、及び前記部分要素選択ステップにて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出ステップと、前記原像の要素が存在する場合には前記要素算出ステップにて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成ステップにより異なる数rを生成させ、前記異なる数rを用いて前記データ生成ステップ、前記第1逆変換ステップ、及び前記要素算出ステップの処理により算出された前記原像の要素oxを選択する要素選択ステップと、第2の秘密多項式Sの逆変換S-1により、前記要素選択ステップにて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換ステップと、前記第2逆変換ステップにて得られた有限環Kの元xを含む電子署名σを生成する署名生成ステップと、を含む、署名生成方法が提供される。
 また、上記課題を解決するために、本発明の別の観点によれば、第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、前記第1逆変換ステップにて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出ステップと、前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、前記要素選択ステップにて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換ステップと、をコンピュータに実行させるためのプログラムが提供される。また、上記課題を解決するために、本発明の別の観点によれば、上記のプログラムが記録された、コンピュータにより読み取り可能な記録媒体が提供される。
 以上説明したように本発明によれば、MPKC署名方式に利用されるtrapdoor付き一方向性関数に相当する写像の全単射性又は全単射に近い性質を実現することが可能になる。その結果、MPKC署名方式において選択文書攻撃に対する安全性を保証することが可能になる。
trapdoor付き一方向性関数の性質を説明するための説明図である。 trapdoor付き一方向性関数を用いたFDH署名方式の概要を示す説明図である。 RSA関数の性質を示す説明図である。 RSA関数に基づくFDH署名方式の概要を示す説明図である。 HFE関数の性質を示す説明図である。 HFE関数に基づくPFDH署名方式の概要を示す説明図である。 HFE関数の性質を示す説明図である。 本発明の第1実施形態に係る技術を適用したHFE関数(拡張HFE関数)の性質を示す説明図である。 OV関数の性質を示す説明図である。 OV関数に基づくFDH署名方式の概要を示す説明図である。 本発明の第2実施形態に係る技術を適用したOV関数に基づくFDH署名方式(拡張OV署名方式)の性質を示す説明図である。 HFEv関数の性質を示す説明図である。 HFEv関数に基づくFDH署名方式の概要、及び本発明の第3実施形態に係る拡張方法を示す説明図である。 HFE関数に基づくPFDH署名方式に係る署名生成アルゴリズムの一例を示す説明図である。 HFE関数に基づくPFDH署名方式に係る署名検証アルゴリズムの一例を示す説明図である。 OV/HFEv関数に基づくFDH署名方式に係る署名生成アルゴリズムの一例を示す説明図である。 OV/HFEv関数に基づくFDH署名方式に係る署名検証アルゴリズムの一例を示す説明図である。 本発明の第1実施形態(拡張HFE署名方式)に係る署名生成アルゴリズムの一例を示す説明図である。 本発明の第1実施形態(拡張HFE署名方式)に係る署名検証アルゴリズムの一例を示す説明図である。 本発明の第3実施形態(第1拡張HFEv署名方式)に係る署名生成アルゴリズムの一例を示す説明図である。 本発明の第3実施形態(第1拡張HFEv署名方式)に係る署名検証アルゴリズムの一例を示す説明図である。 本発明の第2実施形態(第1拡張OV署名方式)に係る署名生成アルゴリズムの一例を示す説明図である。 本発明の第2実施形態(第1拡張OV署名方式)に係る署名検証アルゴリズムの一例を示す説明図である。 本発明の第3実施形態(第2拡張HFEv署名方式)に係る署名生成アルゴリズムの一例を示す説明図である。 本発明の第3実施形態(第2拡張HFEv署名方式)に係る署名検証アルゴリズムの一例を示す説明図である。 本発明の第2実施形態(第2拡張OV署名方式)に係る署名生成アルゴリズムの一例を示す説明図である。 本発明の第2実施形態(第2拡張OV署名方式)に係る署名検証アルゴリズムの一例を示す説明図である。 本発明の第1~第3実施形態に係る電子署名方式を実現することが可能なシステムの構成例を示す説明図である。 HFE関数に基づくPFDH署名方式の安全性証明の概要を示す説明図である。 OV関数に基づくFDH署名方式の安全性証明の概要を示す説明図である。 本発明の第1~第3実施形態に係る電子署名方式を実現することが可能なシステムに含まれる各種装置のハードウェア構成例を示す説明図である。
 以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 [説明の流れについて]
 ここで、以下に記載する本発明の実施形態に関する説明の流れについて簡単に述べる。まず、図1~図4を参照しながら、trapdoor付き一方向性関数、及びこれを用いた電子署名方式について簡単に説明する。この中で、trapdoor付き一方向性関数の一例としてRSA関数を挙げ、その性質について述べると共にRSA関数を用いたFDH署名方式について簡単に説明する。また、図28を参照しながら、電子署名システムのシステム構成例について簡単に説明する。
 次いで、図5~図8、図14、図15、図18、図19を参照しながら、本発明の第1実施形態に係るtrapdoor付き一方向性関数及びこれを用いた電子署名方式(以下、拡張HFE署名方式)について説明する。この中で、一般的なHFE関数及びこれを用いた電子署名方式について述べ、図29を参照しつつ、その電子署名方式が抱える問題点の指摘を行い、本発明の第1実施形態に係る技術の適用による改善効果について述べる。
 次いで、図9~図11、図16、図17、図22、図23、図26、図27を参照しながら、本発明の第2実施形態に係るtrapdoor付き一方向性関数及びこれを用いた電子署名方式(以下、拡張OV署名方式)について説明する。この中で、一般的なOV関数及びこれを用いた電子署名方式について述べ、図30を参照しつつ、その電子署名方式が抱える問題点の指摘を行い、本発明の第2実施形態に係る技術の適用による改善効果について述べる。
 次いで、図12、図13、図16、図17、図20、図21、図24、図25を参照しながら、本発明の第3実施形態に係るtrapdoor付き一方向性関数及びこれを用いた電子署名方式(以下、拡張HFEv署名方式)について説明する。この中で、一般的なHFE署名方式とOV署名方式とを組み合わせたHFEv署名方式について述べ、その電子署名方式が抱える問題点の指摘を行い、本発明の第3実施形態に係る技術の適用による改善効果について述べる。次いで、本発明の第1~第3実施形態に係る電子署名方式の拡張に関する説明を補足する。
 次いで、本発明の第1~第3実施形態に係る電子署名方式を実現することが可能な電子署名システムに含まれる各種装置のハードウェア構成例について簡単に説明する。最後に、本発明の第1~第3実施形態の技術的思想について纏め、当該技術的思想から得られる作用効果について簡単に説明する。
 (説明項目)
 1:はじめに
   1-1:電子署名システムの構成例
   1-2:trapdoor付き一方向性関数の性質
   1-3:trapdoor付き一方向性関数に基づく電子署名方式
   1-4:RSA署名方式
 2:第1実施形態(HFE署名方式への適用例)
   2-1:HFE関数の性質
   2-2:HFE署名方式
   2-3:拡張HFE署名方式
 3:第2実施形態(OV署名方式への適用例)
   3-1:OV関数の性質
   3-2:OV署名方式
   3-3:第1拡張OV署名方式
   3-4:第2拡張OV署名方式
 4:第3実施形態(HFEv署名方式への適用例)
   4-1:HFEv関数の性質
   4-2:HFEv署名方式
   4-3:第1拡張HFEv署名方式
   4-4:第2拡張HFEv署名方式
 5:補遺
   5-1:PSS署名方式への拡張
   5-2:多層型OV署名方式への拡張
   5-3:HFE関数Fのマイナス拡張方式
 6:ハードウェア構成例
 7:まとめ
 <1:はじめに>
 まず、本発明の実施形態について説明するに先立ち、電子署名システムのシステム構成、電子署名方式に用いられるtrapdoor付き一方向性関数の性質、trapdoor付き一方向性関数に基づく電子署名方式の例(FDH署名方式、RSA署名方式)について簡単に説明する。
 [1-1:電子署名システムの構成例]
 まず、図28を参照しながら、電子署名システムのシステム構成例について説明する。図28は、電子署名システムのシステム構成例を示す説明図である。例えば、図28に示すシステム構成に対し、後述する各種電子署名方式の演算アルゴリズムを具体的に適用することにより、その演算アルゴリズムに基づく電子署名システムが構築できる。
 図28に示すように、電子署名システムは、署名者10、検証者20という2つのエンティティを含む。また、電子署名システムの機能は、鍵生成アルゴリズムGen、署名生成アルゴリズムSig、署名検証アルゴリズムVerという3つのアルゴリズムにより実現される。鍵生成アルゴリズムGen、署名生成アルゴリズムSigは、署名者10により利用される。また、署名検証アルゴリズムVerは、検証者20により利用される。図28の例において、鍵生成アルゴリズムGenは、鍵生成装置100により実行される。また、署名生成アルゴリズムSigは、署名生成装置150により実行される。そして、署名検証アルゴリズムVerは、署名検証装置200により実行される。
 署名者10には、システムパラメータcpが与えられる。例えば、システムパラメータcpは、電子署名システムのシステム管理者により与えられる。システムパラメータcpは、セキュリティパラメータ1λに基づいて生成される。鍵生成アルゴリズムGenは、システムパラメータcpの入力に対し、署名者10に固有の署名鍵sk、検証鍵pkのペアを出力する((sk,pk)←Gen(cp))。署名鍵skは、秘密に保持され、署名者10による電子署名の生成に用いられる。一方、検証鍵pkは、検証者20に公開され、検証者20による電子署名の検証に用いられる。
 署名生成アルゴリズムSigは、鍵生成アルゴリズムGenから出力された署名鍵sk、及び電子署名を付加する電子データ(以下、メッセージ)Mの入力に対し、電子署名σを出力する(σ←Sig(sk,M))。電子署名σは、メッセージMと共に検証者20に提供され、メッセージMの正当性を検証するために用いられる。署名検証アルゴリズムVerは、署名者10により公開された検証鍵pk、署名者10から提供されたメッセージM、電子署名σの入力に対し、検証結果0/1を出力する。例えば、電子署名σによりメッセージMの正当性が証明された場合((M,σ)が受理された場合)、署名検証アルゴリズムVerは1を出力する。一方、電子署名σによりメッセージMの正当性が証明されなかった場合((M,σ)が拒否された場合)、署名検証アルゴリズムVerは0を出力する。
 上記のように、電子署名システムは、主に、鍵生成アルゴリズムGen、署名生成アルゴリズムSig、署名検証アルゴリズムVerにより構成される。そして、これらのアルゴリズムは電子署名方式毎に異なる。本稿では、署名生成アルゴリズムSig、及び署名検証アルゴリズムVerに注目する。
 [1-2:trapdoor付き一方向性関数の性質]
 上記の署名生成アルゴリズムSig、及び署名検証アルゴリズムVerの機能は、trapdoor付き一方向性関数Fを用いて実現される。trapdoor付き一方向性関数Fは、図1に示すように、trapdoorを知らないと逆方向の演算結果(X=F -1(Y))を得るのが困難な関数である。つまり、(A)Fの順方向の計算(Y=F(X))についてはtrapdoor無しで効率的に計算する計算アルゴリズムが存在するが、(B)Ftの逆方向の計算についてはtrapdoor無しで効率的に計算する計算アルゴリズムが存在しない。このような性質を有する関数Ftをtrapdoor付き一方向性関数と呼ぶ。
 本稿では、「順方向の計算アルゴリズム」「逆方向の計算アルゴリズム」という表現を用いる。ここで、「順方向の計算アルゴリズム」「逆方向の計算アルゴリズム」の定義について述べる。写像f:A→Bに関する「順方向の計算アルゴリズム」は、x∈Aを与えられたときにf(x)=yとなるy∈Bを計算するアルゴリズムである。一方、写像f:A→Bに関する「逆方向の計算アルゴリズム」は、y∈Bを与えられたときにf-1(y)=xとなるx∈Aを計算するアルゴリズムである。但し、順方向の計算アルゴリズムでは、入力x∈Aに対して出力値f(x)=yが1つ決定される。一方、逆方向の計算アルゴリズムでは、入力y∈Bに対して出力値xが複数存在したり、全く存在しない可能性がある。そのため、逆方向の計算アルゴリズムの出力値はA∪{err}となる。但し、errは例外値を表す。
 [1-3:trapdoor付き一方向性関数を利用した電子署名方式]
 trapdoor付き一方向性関数Ftは、図2に示すような形で署名生成アルゴリズムSig、及び署名検証アルゴリズムVerに適用される。図2は、FDH署名方式と呼ばれる電子署名方式の概要を示した説明図である。FDH署名方式は、電子署名の生成に用いる入力値として、メッセージMの代わりにハッシュ値(Hash値)を利用する点に特徴がある。ハッシュ値Hは、ハッシュ関数(Hash関数)を利用して算出される。但し、ハッシュ値Hの生成処理(C)は、誰にでも実行可能である。
 trapdoor付き一方向性関数Fを利用した電子署名方式において、検証鍵pkは、trapdoor付き一方向性関数Fである。また、署名鍵skは、trapdoor付き一方向性関数Ftのtrapdoorである。従って、trapdoor付き一方向生関数Fは、検証者20に公開される。一方、trapdoorは、署名者10により秘密に管理される。
 署名生成アルゴリズムSigは、trapdoor付き一方向性関数Fの逆方向演算(B)を用いてハッシュ値Hから電子署名σを生成する計算アルゴリズムである。trapdoor付き一方向性関数Fの逆方向の計算アルゴリズム(B)は、trapdoorを知らなければ実行するのが困難である。従って、署名者10以外の者は、電子署名σを生成することはできない。一方、署名検証アルゴリズムVerは、trapdoor付き一方向性Fの順方向演算(A)を用いて、メッセージMに対する電子署名σの正当性を検証する計算アルゴリズムである。trapdoor付き一方向性関数Fの順方向の計算アルゴリズム(A)は、trapdoorを知らなくとも実行可能である。従って、検証鍵pk(trapdoor付き一方向性関数Ft)を知っている誰もが電子署名σの検証を行うことができる。
 上記のように、trapdoor付き一方向性関数Fを利用することで、メッセージMに付された電子署名σにより署名者10を確かに特定することができるようになる。但し、trapdoor付き一方向性関数Fの逆演算がtrapdoorを知らない第三者により容易に実行されないことが前提となる。この前提が崩れると、電子署名σにより署名者10を確かに特定することができなくなる。
 [1-4:RSA署名方式]
 電子署名システムに利用されている代表的なtrapdoor付き一方向性関数Fとして、例えば、RSA関数を挙げることができる。RSA関数Fは、「大きな合成数に対する素因数分解(素因数分解問題)の計算量的な解答困難性」を逆方向演算が困難であることの根拠に置いている。p,q(p≠q)を素数、N=p*q、eをn-1との間で互いに素となる整数、dをd*e≡1(mod n)となる整数、Zをmodulo Nの剰余環、RSA関数Fは、下記の式(1)のように表現される。
Figure JPOXMLDOC01-appb-M000001
 上記の式(1)で表現されるRSA関数Fにおいて、trapdoorは、dである。RSA関数Fの順方向の計算アルゴリズムは、与えられたx∈Zを用いて、y=F(x)=x mod Nを計算するステップで構成される。一方、RSA関数Fの逆方向の計算アルゴリズムは、与えられたy∈Z及びtrapdoor dを用いて、x=y mod Nを計算するステップで構成される。このステップは、素因数分解問題の計算量的な解答困難性のため、trapdoor dを知らないと実行困難である。
 但し、素因数分解問題は、古典的なコンピュータによる効率的な解法アルゴリズムが存在しないという意味で解答の困難性を有する。しかし、素因数分解問題は、量子コンピュータにより多項式時間内で解答可能であると言われている。従って、量子コンピュータが実用化されると、RSA関数Fを用いた電子署名方式(RSA署名方式)の安全性が保証されなくなる。同様に、量子コンピュータが実用化されると、離散対数問題も多項式時間内に解答可能になると言われている。また、RSA署名方式の場合、古典的なコンピュータだけを想定していても、十分な安全性を確保するためには十分に署名長の長い電子署名を利用することが求められ、非接触ICカード等、小型のデバイスに適用しにくい。
 こうした理由から、量子コンピュータによる効率的な解法が知られていないtrapdoor付き一方向性関数Fを利用した電子署名方式に注目が集まっている。その一例が、HFE署名方式やOV署名方式等に代表されるMPKC署名方式である。MPKC署名方式は、「非線形な多変数多項式の解答困難性」を安全性の根拠としている。また、MPKC署名方式は、同等の安全性を確保するために必要な署名長がRSA署名方式等に比べて短くて済む。後述する実施形態は、MPKC署名方式に関するものである。特に、HFE関数やOV関数等の計算アルゴリズムにおける写像Fの性質、及び選択文書攻撃に対する耐性について議論する。
 一般に、全単射性を有するtrapdoor付き一方向性関数Fを利用すれば、図2に示すようなFDH署名方式及びその拡張であるPFDH署名方式は、選択文書攻撃に対する安全性が保証されると言われている。上記の式(1)で表現されるRSA関数Fは、全単射性を有するtrapdoor付き一方向性関数Fの一例である。trapdoor付き一方向性関数Fの全単射性とは、図3(RSA関数の場合)に示すように、trapdoor付き一方向性関数Fの定義域の元Xと値域の元Yとが一対一対応することを言う。全単射性を有すると、trapdoor付き一方向性関数Fに一様な入力を与えたとき、trapdoor付き一方向性関数Fから一様な出力が得られる。
 この性質は、署名鍵skを知らない第三者に対し、検証鍵pk、及び任意のメッセージMと電子署名σとの組み合わせから署名鍵skの情報を何ら与えないようにする上で非常に重要である。この点について、RSA署名方式とFDH署名方式との組み合わせ(以下、RSA+FDH署名方式)を具体例として挙げ、図4を参照しながら考察する。図4には、RSA+FDH署名方式における署名生成方法(Step.1~Step.3)と、ハッシュ関数H、RSA関数Fによる写像の概念図とが示されている。
 RSA+FDH署名方式における署名生成方法は、下記の3ステップにより実行される。Step.1におけるハッシュ関数Hの演算は誰でも実行可能である。Step.2におけるRSA関数Fの逆方向演算は、trapdoor d(署名鍵)を用いて実行される。RSA関数Fは、全単射性を有するため、1つのyが入力されると必ず1つのxが出力される。また、y(1)≠y(2)であればx(1)≠x(2)である。従って、ハッシュ値y(1)、y(2)がRSA関数Fに入力されると、同じ出現頻度でx(1)、x(2)が出力される。
 Step.1:y←H(M),H(…)はハッシュ関数
 Step.2:x∈{z|F(z)=y}を1つ選択
 Step.3:電子署名σ=xを出力
 上記のように、trapdoor付き一方向性関数Fが全単射性を有する場合、一様な分布を有する値の入力に対し、一様な分布を有する値が出力される。もし、入力と出力との間で分布の偏りが生じている場合、その偏りからtrapdoor付き一方向性関数Fの構造に関する情報が漏れる危険性がある。特に、このような偏りが存在すると、選択文書攻撃に対する安全性を保証することができない。後述するMPKC署名方式に用いるHFE関数やOV関数等は、全単射性を有していない。そのため、これらのMPKC署名方式は、選択文書攻撃に対する安全性が保証されていない。
 そこで、本件発明者は、MPKC署名方式で用いているtrapdoor付き一方向性関数Fの分布特性を改善し、選択文書攻撃に対する安全性を保証可能にする方法を考案した。後述する実施形態では、HFE署名方式、OV署名方式、及びこれらの組み合わせに関する上記方法の適用例を示す。
 <2:第1実施形態(HFE署名方式への適用例)>
 まず、本発明に係る第1実施形態について説明する。上記の通り、HFE関数は、全単射性を有しないため、一様分布を持つ値を入力しても、一様分布を持つ値が出力されない(以下、非一様分布性)。本実施形態では、HFE関数の逆方句の計算アルゴリズムを改良し、分布特性を改善したHFE関数(以下、拡張HFE関数)を提供する。
 [2-1:HFE関数の性質]
 拡張HFE関数について説明するに先立ち、HFE関数Fの定義、及びHFE関数Fの性質について簡単に説明する。
 ≪記号の定義≫
 K:q個の数を含む元で構成される有限環
 K:Kのn個の直積
 F:K→K
 A:有限環Kのn次拡大(要素数q
 B:有限環Kのm次拡大(要素数q
 φ:線形写像A→K(下記の式(2)を参照)
 S:K上での可逆的アフィン変換(第1の秘密多項式の変換)
 T:K上での可逆的アフィン変換(第2の秘密多項式の変換)
 f:中央写像(下記の式(3)を参照)
 trapdoor:S、T、aij、b、c
Figure JPOXMLDOC01-appb-M000002
 但し、dをそれほど大きくない整数として、aij,b,c∈A、「q+q>dならばaij=0」かつ「q>dならばb=0」である。
 ≪HFE関数Fの構造≫
 HFE関数Fは、変換Sによる写像、中央写像F(=φ-1*f*φ)、及び変換Tによる写像の合成写像F=T*F*Sにより表現される(この*は写像の合成)。そして、y=F(x)を計算するアルゴリズムは、次のようになる。
 (Step.1)変換Sにより、与えられたx=(x,…,xn-1)∈Kをx’=(x’,…,xn-1’)∈Kに変換する。
 (Step.2)φ-1により、x’∈KをX’∈Aに変換する。
 (Step.3)中央写像fにより、X’∈AをY’=f(X’)∈Aに変換する。
 (Step.4)φにより、Y’∈Aをy’=(y’,…,yn-1’)∈Kに変換する。
 (Step.5)変換Tにより、y’∈Kをy=(y,…,yn-1)∈Kに変換する。
 (Step.6)y∈Kを出力する。
 上記の式(3)に示すように、HFE関数Fは、非線形の一変数多項式に基づく中央写像fを含んでいる。そのため、ある終域Aの元Y’に対し、一変数多項式の根の集合に相当する原像{Z∈A|f(Z)=Y’}の要素数が複数存在する可能性がある。この場合、図5に示すように、値域の元yに対し、HFE関数Fに関する原像の要素数が複数(図5の例では3)となる。
 また、ある終域Aの元Y’に対し、原像{Z∈A|f(Z)=Y’}の要素が全く存在しない可能性もある。この場合、原像{Z∈A|f(Z)=Y’}の要素が全く存在しない終域の元は値域に含まれないため、図5に示すように、終域と値域とは異なる。このような性質を有することにより、一様に終域の元が入力されたとしても、HFE関数Fの逆方向演算により得られる定義域の元は一様に分布しない。
 以下、HFE関数Fの計算アルゴリズムについて、より詳細に説明する。
 ≪順方向の計算アルゴリズム≫
 HFE関数Fに対する順方向の計算アルゴリズムは、与えられたx∈KをHFE関数F(x)に代入してy=F(x)∈Kを得るステップにより構成される。この順方向の計算アルゴリズムに定義域の元xが1つ入力されると値域の元yが1つ出力される。
 ≪逆方向の計算アルゴリズム≫
 HFE関数Fに関する逆方向の計算アルゴリズムは、次のStep.1~Step.7により構成される。
 (Step.1)与えられたy=(y,…,yn-1)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,yn-1’)∈Kを得る。
 (Step.2)φ-1により、y’=(y’,…,yn-1’)∈KをY’∈Aに変換する。
 (Step.3)Y’を用いて、X’∈{Z∈A|f(Z)=Y’}の集合を計算する。但し、{Z∈A|f(Z)=Y’}が空集合の場合、例外値errを出力する。なお、X’∈{Z∈A|f(Z)=Y’}は、例えば、多項式f(X)-Y’を因数分解することにより求められる。また、終域の要素Y’をランダムに選択したとき、その要素Y’に対する原像{Z∈A|f(Z)=Y’}がm個の元を持つ確率は、近似的に1/(m!e)となる(但し、このeはネイピア数)。
 (Step.4)X’∈{Z∈A|f(Z)=Y’}の集合から1つの要素X’を選択する。
 (Step.5)φにより、Step.4で選択された1つの要素X’∈Aをx’=(x’,…,xn-1’)∈Kに変換する。
 (Step.6)変換Sの逆変換S-1により、x’∈Kをx=(x,…,xn-1)∈Kに変換する。
 (Step.7)x∈Kを出力する。
 上記のStep.3において、X’∈{Z∈A|f(Z)=Y’}の要素数α=|{Z∈A|f(Z)=Y’}|がα=0又はα≧2となる可能性がある。そのため、一様な分布を有する終域の元が入力されたとしても、逆方向の計算アルゴリズムの出力値は一様な分布にならない。先にも述べたように、このような分布の偏りが存在すると、HFE関数Fの構造に関する情報が選択文書攻撃により漏洩してしまう危険性がある。そこで、選択文書攻撃に対する安全性を保証するためには、このような分布の偏りを是正する工夫が必要になる。
 [2-2:HFE署名方式]
 ここまでHFE関数Fについて説明してきた。次に、HFE関数Fを用いた電子署名方式(HFE署名方式)について説明する。但し、ここでは、HFE署名方式の一例として、HFE関数を用いたPFDH署名方式(HFE+PFDH署名方式)について説明する。
 ≪PFDH署名方式≫
 まず、PFDH署名方式における鍵生成アルゴリズムGen、署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。これらPFDH署名方式のアルゴリズムは、trapdoor付き一方向性関数F:A→B、ハッシュ関数H:{0,1}→Bを利用する。
 (鍵生成アルゴリズムGen)
 鍵生成アルゴリズムGenは、セキュリティパラメータを1λとし、署名鍵skをFのtrapdoor tとし、検証鍵pkをFとして(sk,pk)を計算する((sk,pk)←Gen(1λ))。
 (署名生成アルゴリズムSig)
 署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.4により電子署名σを計算する(σ←Sig(sk,M))。
 (Step.1)乱数rを生成する。
 (Step.2)y=H(M,r)∈Bを計算する。
 (Step.3)trapdoor tを用いてFの逆方向の計算アルゴリズムを実行し、y=F(x)となるxを算出する。但し、y=F(x)となるxが存在しない場合にはStep.1に戻る。
 (Step.4)電子署名σ=(x,r)を出力する。
 (署名検証アルゴリズムVer)
 署名検証アルゴリズムVerは、検証鍵pk=Ft、メッセージM、電子署名σ=(x,r)を入力とし、次のStep.1、Step.2によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
 (Step.1)F(x)=H(M,r)か否かを判断する。
 (Step.2)F(x)=H(M,r)の場合に1を出力し、F(x)≠H(M,r)の場合に0を出力する。
 (FDH署名方式とPFDH署名方式との相違点について)
 FDH署名方式とPFDH署名方式との主な違いは、署名生成アルゴリズムSigにおいて乱数rを利用する点にある。このように、乱数rを利用することにより、同じメッセージMについて、trapdoor付き一方向性関数Fの終域の元yを選び直すことができるようになる。FDH署名方式の場合、あるメッセージMのハッシュ値yに対し、y=F(x)となるxが存在しない場合、そのメッセージMの電子署名σを生成することができない。しかし、PFDH署名方式を用いれば、このようなFDH署名方式の問題点を解決することができる。
 ≪HFE+PFDH署名方式≫
 次に、HFE+PFDH署名方式における署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。HFE+PFDH署名方式は、HFE関数Fを用いたPFDH署名方式である。なお、HFE+PFDH署名方式では、署名鍵skをHFE関数Fのtrapdoor S,T,aij、b、c、検証鍵pkをFに設定する。
 (署名生成アルゴリズムSig(逆方向の計算アルゴリズム))
 署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.9により電子署名σを計算する(σ←Sig(sk,M))。
 (Step.1)乱数rを生成する。
 (Step.2)乱数r、メッセージMを用いて、ハッシュ値y∈K←H(M,r)を計算する。
 (Step.3)y=(y,…,yn-1)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,yn-1’)∈Kを得る。
 (Step.4)φ-1により、y’=(y’,…,yn-1’)∈KをY’∈Aに変換する。
 (Step.5)X’∈{Z∈A|f(Z)=Y’}の集合を計算する。
 (Step.6)集合{Z∈A|f(Z)=Y’}から1つの要素X’を選択する。但し、集合{Z∈A|f(Z)=Y’}が空集合の場合、Step.1の処理へ戻る。
 (Step.7)φにより、X’∈Aをx’=(x’,…,xn-1’)∈Kに変換する。
 (Step.8)変換Sにより、x’∈Kをx=(x,…,xn-1)∈Kに変換する。
 (Step.9)電子署名σ=(x,r)を出力する。
 (署名検証アルゴリズムVer(順方向の計算アルゴリズム))
 署名検証アルゴリズムVerは、検証鍵pk=F、メッセージM、電子署名σ=(x,r)を入力とし、次のStep.1~Step.3によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
 (Step.1)電子署名σに含まれるr、及びメッセージMを用いて、ハッシュ値y←H(M,r)を計算する。
 (Step.2)電子署名σに含まれるx∈KをHFE関数F(x)に代入して、y”=F(x)∈Kを計算する。
 (Step.3)y=y”ならば1を出力し、y≠y”ならば0を出力する。
 (HFE+PFDH署名方式の特性について)
 HFE+PFDH署名方式の場合、ある終域の元に対するHFE関数Fの原像が要素を持たないことがある。そのため、図6に示すように、HFE関数Fの終域と値域とは一致しない。しかし、HFE+PFDH署名方式の場合、同じメッセージMに対してHFE関数Fの終域の元yを選択し直すことができるため、任意のメッセージMに対して電子署名σを付加することができる。図6の例では、メッセージMに対し、y(e)=H(M,r(e))は、HFE関数Fの値域に含まれない。そのため、この場合には乱数rが再び生成され、異なる乱数rを用いてハッシュ値yが生成される。
 また、HFE関数Fの性質により、HFE関数Fの値域に含まれる1つの元yに対し、HFE関数Fに関する原像の要素数が複数存在する可能性がある。図6の例では、HFE関数Fの値域に含まれる元y(1)に対し、HFE関数Fに関する原像の元x(1)∈{z|F(z)=y(1)}の集合が得られる。同様に、HFE関数Fの値域に含まれる元y(2)に対し、HFE関数Fに関する原像の元x(2)∈{z|F(z)=y(2)}の集合が得られる。図6の例では、|{z|F(z)=y(1)}|>|{z|F(z)=y(2)}|である。つまり、HFE関数Fの終域の元yがランダムに与えられた場合、x(1)の出現頻度>x(2)の出現頻度となる。
 (HFE関数Fの非一様分布性について)
 この点について、図7を参照しながら、より詳細に説明する。図7は、HFE関数Fの終域に含まれる元y(1),…,y(5)が同じ確率(1/5)で選択された場合に、選択された元に対するHFE関数Fの原像の元x(1),…,x(5)が出現する確率を示している。図7の例において、x(1)、x(2)は、HFE関数Fによりy(2)に移るものとする。また、x(3)、x(4)、x(5)は、HFE関数Fによりy(4)に移るものとする。さらに、y(1)、y(3)、y(5)は、HFE関数Fに関する原像の要素が存在しないものとする。
 x(1),…,x(5)がそれぞれ1/5の確率でHFE関数Fの逆方向の計算アルゴリズムに入力されると、y(1)、y(3)、y(5)については原像の要素が存在しないため、yの取り直し処理(乱数rの再生成)が行われる。この取り直し処理が発生する確率が3/5である。一方、y(2)については原像の要素数が2であるため、原像の元x(1)が更に1/2の確率で選択され、そして、原像の元x(2)が更に1/2の確率で選択される。つまり、x(1)、x(2)の出現確率は、それぞれ1/2*1/5=1/10となる。
 同様に、y(4)については原像の要素数が3であるため、原像の元x(3)が更に1/3の確率で選択され、原像の元x(4)が更に1/3の確率で選択され、そして、原像の元x(5)が更に1/3の確率で選択される。つまり、x(3)、x(4)、x(5)の出現確率は、それぞれ1/3*1/5=1/15となる。従って、HFE関数Fの逆方向の計算アルゴリズムを用いて得られるHFE関数Fの元x(1),…,x(5)の出現確率は一様にならない。そこで、本件発明者は、このような出現確率の非一様性を改善する方式(拡張HFE署名方式)を考案した。以下、この拡張HFE署名方式について説明するが、ここでHFE+PFDH署名方式の署名生成アルゴリズムSig及び署名検証アルゴリズムVerにおける処理の流れについて纏めておく。
 (署名生成アルゴリズムSigの詳細)
 まず、図14を参照しながら、HFE+PFDH署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図14は、HFE+PFDH署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
 図14に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S102)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S104)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S106)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像fの終域の元Y’∈Aを算出する(S108)。
 次いで、署名生成アルゴリズムSigは、X’∈{Z∈A|f(Z)=Y’}を計算し、集合{Z∈A|f(Z)=Y’}が要素を持つか否かを判断する(S110)。集合{Z∈A|f(Z)=Y’}が要素を持つ場合、署名生成アルゴリズムSigは、処理をステップS112に進める。一方、集合{Z∈A|f(Z)=Y’}が要素を持たない場合、署名生成アルゴリズムSigは、ステップS104に処理を戻す。ステップS112に処理を進めた場合、署名生成アルゴリズムSigは、集合{Z∈A|f(Z)=Y’}の要素X’を1つ選択する(S112)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS112で選択した要素X’をx∈Kに変換する(S114)。次いで、署名生成アルゴリズムSigは、電子署名σ=(x,r)を出力する(S116)。HFE関数Fの非一様分布性は、主に、ステップS110における分岐処理、及びステップS112における選択処理に起因して生じる。
 (署名検証アルゴリズムVerの詳細)
 次に、図15を参照しながら、HFE+PFDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図15は、HFE+PFDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図15に示すように、まず、検証者20は、メッセージM、電子署名σ=(M,r)、検証鍵pkを署名者10から取得し(S132)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、電子署名σに含まれる乱数r、及びメッセージMを用いてハッシュ値y=H(M,r)を算出する(S134)。次いで、署名検証アルゴリズムVerは、検証鍵pk(F)を用いてy”=F(x)を算出する(S136)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S138)。
 (HFE+PFDH署名方式の安全性証明について)
 次に、図29を参照しながら、HFE+PFDH署名方式の安全性証明について簡単に考察する。HFE+PFDH署名方式の安全性証明は、通常、図29に示すようなシミュレーションにより行われる。このシミュレーションの中で、Signing oracleシミュレーションのStep.1に問題がある。Signing oracleシミュレーションのStep.1では、ランダムに終域の元を選択することにより、選択された元に対するHFE関数Fの原像の元xがランダムに選択されることになっている。しかし、終域の元をランダムに選択したとしても、HFE関数Fの非一様分布性により原像の元がランダムに選択されない。従って、HFE署名方式は、選択文書攻撃に対する安全性が保証されない。
 [2-3:拡張HFE署名方式]
 そこで、本件発明者は、HFE関数Fの逆方向の計算アルゴリズムを改良し、一様な分布を持つ終域の元を入力した場合に、入力した元に対する原像の元が一様に分布するようなtrapdoor付き一方向性関数F(拡張HFE関数F)を考案した。以下、拡張HFE関数Fを用いた電子署名方式(拡張HFE署名方式)について説明する。
 ≪拡張HFE署名方式に係る署名生成アルゴリズムSig≫
 拡張HFE署名方式は、上記のHFE+PFDH署名方式の拡張(以下、拡張A)である。拡張HFE署名方式は、上記のHFE署名方式の署名生成アルゴリズムの中で、中央写像fに関して、ある終域の元に対する原像の元xを1つ選択する際に、その要素数αに比例した確率pで原像の元xを1つ選択する点に特徴がある。つまり、拡張HFE署名方式では、ある終域の元yに対し、中央写像fに関する原像が要素xを持つ場合でも、確率(1-p)で元yの取り直し処理が行われる。このように、終域の元yに対する原像の要素数αに比例した確率pを導入することで、原像の元xの出現頻度は全て同じになる。以下、拡張HFE署名方式について詳細に説明する。
 (署名生成アルゴリズムSigの概要)
 拡張HFE署名方式に係る署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.9により電子署名σを計算する(σ←Sig(sk,M))。但し、署名鍵skはFのtrapdoor S,T,aij、b、c、検証鍵pkはFである。また、各記号の定義はHFE+PFDH署名方式の説明で用いた定義と同じである。
 (Step.1)乱数rを生成する。
 (Step.2)乱数r、メッセージMを用いて、ハッシュ値y←H(M,r)を生成する。
 (Step.3)y=(y,…,yn-1)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,yn-1’)∈Kを得る。
 (Step.4)φ-1により、y’=(y’,…,yn-1’)∈KをY’∈Aに変換する。
 (Step.5)X’∈{Z∈A|f(Z)=Y’}の集合を計算する。
 (Step.6)集合{Z∈A|f(Z)=Y’}から、その集合の要素数|{Z∈A|f(Z)=Y’}|=αに比例した確率p=s*α(sはαに非依存の比例係数、1要素当たりの選択確率)で1つの要素X’を選択し、確率(1-p)でStep.1の処理へ戻る(要素数α=0の場合、必ずStep.1に戻る)。
 (Step.7)φにより、X’∈Aをx’=(x’,…,xn-1’)∈Kに変換する。
 (Step.8)変換Sにより、x’∈Kをx=(x,…,xn-1)∈Kに変換する。
 (Step.9)電子署名σ=(x,r)を出力する。
 拡張HFE署名方式とHFE署名方式との主な違いは、上記のStep.6の構成にある。HFE署名方式の場合、要素数α≧1であれば必ずStep.7に進んでいた。しかし、拡張HFE署名方式の場合、要素数α≧1であっても、確率(1-p)でStep.1に戻る。このような構成にすることにより、図8に示すように、同じ確率で終域の元yが与えられた場合、与えられた終域の元yに対する原像の元xは同じ出現確率になる。
 図8の例では、y(1),…,y(5)が1/5の確率で与えられている。このうち、y(1)、y(3)、y(5)に対する原像の要素数αは0である。また、y(2)に対する原像の要素数αは2である。従って、y(2)が入力された場合、y(2)に対する原像の要素数α=2に比例した確率p(図8の例ではp=α/3=2/3)で原像の元x(1)又はx(2)が1つ選択される。つまり、y(2)に対する原像の元x(1)、x(2)を選択する確率は、それぞれp/2*1/5=1/15となる。
 また、y(4)に対する原像の要素数αは3である。従って、y(4)が入力された場合、y(4)に対する原像の要素数α=3に比例した確率p(図8の例ではp=α/3=3/3)で原像の元x(3)、x(4)、x(5)から1つを選択する。従って、原像の元x(3)、x(4)、x(5)を選択する確率は、それぞれp/3*1/5=1/15となる。つまり、x(1),…,x(5)の出現確率は、全て同じ1/15になる。
 また、終域の元yが取り直される確率は、終域の元y(2)が選択された場合に(1-2/3)*1/5=1/15となる。そして、終域の元yが取り直される確率は、終域の元y(4)が選択された場合に(1-3/3)*1/5=0となる。さらに、終域の元y(1),y(3)、y(5)が選択された場合に終域の元yが取り直されるため、終域の元yが取り直される確率は、1/15+0+3/5=2/3となる。
 このように、拡張HFE署名方式を適用することにより、一様に与えられた終域の元に対し、拡張HFE関数Fに関する原像の元xの出現確率が一様になる。つまり、拡張HFE関数Fの逆方向の計算アルゴリズムは、一様に分布する終域の元を入力した場合に一様に分布する原像の元を出力する一様分布性を有している。そのため、拡張HFE関数Fを利用した拡張HFE署名方式は、選択文書攻撃に対する安全性が保証される。
 以下、図18、図19を参照しながら、拡張HFE署名方式の署名生成アルゴリズムSig及び署名検証アルゴリズムVerにおける処理の流れについて纏める。
 (署名生成アルゴリズムSigの詳細)
 まず、図18を参照しながら、拡張HFE署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図18は、拡張HFE署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
 図18に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S302)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S304)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S306)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像fの終域の元Y’∈Aを算出する(S308)。
 次いで、署名生成アルゴリズムSigは、X’∈{Z∈A|f(Z)=Y’}を計算し、集合{Z∈A|f(Z)=Y’}の要素数αに比例した確率pでステップS312に処理を進める(S310)。また、署名生成アルゴリズムSigは、確率(1-p)でステップS304に処理を戻す(S310)。ステップS312に処理を進めた場合、署名生成アルゴリズムSigは、集合{Z∈A|f(Z)=Y’}の要素X’を1つ選択する(S312)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS312で選択した要素X’をx∈Kに変換する(S314)。次いで、署名生成アルゴリズムSigは、電子署名σ=(x,r)を出力する(S316)。拡張HFE関数Fの一様分布性は、主に、ステップS310における確率pに基づく分岐処理によって実現される。
 (署名検証アルゴリズムVerの詳細)
 次に、図19を参照しながら、拡張HFE署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図19は、拡張HFE署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図19に示すように、まず、検証者20は、メッセージM、電子署名σ=(M,r)、検証鍵pkを署名者10から取得し(S332)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、電子署名σに含まれる乱数r、及びメッセージMを用いてハッシュ値y=H(M,r)を算出する(S334)。次いで、署名検証アルゴリズムVerは、検証鍵pk(Ft)を用いてy”=F(x)を算出する(S336)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S338)。
 このように、署名検証アルゴリズムVerにおける処理の流れは、拡張HFE署名方式とHFE+PFDH署名方式とで大きな差はない。
 (拡張HFE署名方式の安全性証明について)
 拡張HFE署名方式の安全性証明は、例えば、reductionアルゴリズムと呼ばれるシミュレーションを利用して行うことができる。図29に示したHFE+PFDH署名方式の安全性証明に関する説明で触れたように、HFE+PFDH署名方式の場合、Signing oracleシミュレーションの中で、ランダムに与えられた終域の元に対し、HFE関数Fの原像の元xがランダムに選択されないことが選択文書攻撃に対する安全性を保証できない原因であった。しかし、拡張HFE署名方式の場合、拡張HFE関数Fの一様分布性により、終域の元yをランダムに与えることにより、原像の元xをランダムに選択することができる。従って、拡張HFE署名方式は、選択文書攻撃に対する安全性が保証される。
 以上、本発明の第1実施形態に係る拡張HFE署名方式ついて説明した。上記の通り、拡張HFE署名方式は、選択文書攻撃に対する安全性が保証される。また、拡張HFE署名方式は、ある有限環上でランダムに選択された非線形多項式の組を解くことの困難性を安全性の根拠とするMPKC署名方式に基づいており、量子コンピュータを用いたタンパリング行為への耐性も有する。そして、拡張HFE署名方式は、他のMPKC署名方式と同様、RSA署名方式等に比べ、同じ安全性を確保するために必要な署名長が短くて済むという効を奏する。
 <3:第2実施形態(OV署名方式への適用例)>
 次に、本発明の第2実施形態について説明する。上記の第1実施形態では、HFE署名方式を拡張し、HFE関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張HFE署名方式を提案した。本実施形態では、OV関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張OV署名方式(第1拡張OV署名方式、第2拡張OV署名方式)を提案する。
 [3-1:OV関数の性質]
 拡張OV関数について説明するに先立ち、OV関数Fの定義、及びOV関数Fの性質について簡単に説明する。但し、ここでは簡単のため、OV関数Fの終域の要素数をOil変数の要素数oを利用して設定している。
 ≪記号の定義≫
 K:有限環
 F:写像K→K
 n:n=o+v
 ox:ox=(ox,…,ox):Oil変数
 vx:vx=(vx,…,vx):Vinegar変数
 F:K→K、中央写像(下記の式(4)及び式(5)を参照)
 S:K上での可逆的アフィン変換(第1の秘密多項式の変換)
 T:K上での可逆的アフィン変換(第2の秘密多項式の変換)
 trapdoor:S、T、aij,bij,c,d,e
Figure JPOXMLDOC01-appb-M000003
 但し、aij,bij,c,d,e∈K、f,…,f∈K[ox,…,ox,vx,…,vx]である。
 ≪OV関数Fの構造≫
 OV関数Fは、変換Sによる写像、中央写像F、及び変換Tによる写像の合成写像F=T*F*Sにより表現される(この*は直積)。そして、y=F(x)を計算するアルゴリズムは、次のようになる。
 (Step.1)変換Sにより、与えられたx=(x,…,x)∈Kをov=(ox,…,ox,vx,…,vx)∈Kに変換する。
 (Step.2)中央写像F(ox,…,ox,vx,…,vx)により、ov=(ox,…,ox,vx,…,vx)をy’=(y’,…,y’)∈Kに変換する。
 (Step.3)変換Tにより、y’∈Kをy=(y,…,y)∈Kに変換する。
 (Step.4)y∈Kを出力する。
 上記の式(4)及び式(5)に示すように、OV関数Fは、非線形の多変数多項式に基づく中央写像Fを含んでいる。そのため、ある終域Kの元y’に対し、多変数多項式の根の集合に相当する原像{z∈K|F(z)=y’}の要素数が全く存在しない可能性がある。この場合、原像{z∈K|F(z)=y’}の要素が全く存在しない終域の元は値域に含まれないため、図9に示すように、終域と値域とは異なる。このような性質を有することにより、一様に終域の元が入力されたとしても、OV関数Fの逆方向演算により得られる定義域の元は一様に分布しない。
 以下、OV関数Fの計算アルゴリズムについて、より詳細に説明する。
 ≪順方向の計算アルゴリズム≫
 OV関数Fに対する順方向の計算アルゴリズムは、与えられたx∈KをOV関数Fに代入してy=F(x)∈Kを得るステップにより構成される。この順方向の計算アルゴリズムに定義域の元xが1つ入力されると、値域の元yが1つ出力される。
 ≪逆方向の計算アルゴリズム≫
 OV関数Fは、Vinegar変数vxの集合をV、OV関数Fの定義域をA、終域をAと表現すると、F:A×V→A,(x,vx)→F(x,vx)と表現することができる。このような表現を用いると、OV関数Fの逆方向の計算アルゴリズムは、(S1)Vinegar変数vxの固定、(S2)Vinegar変数vxを固定した関数F(・,vx):A→A、x→F(x,vx)の計算という2ステップで実行される。より詳細には、OV関数Fに関する逆方向の計算アルゴリズムは、次のStep.1~Step.5により構成される。
 (Step.1)与えられたy=(y,…,y)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,y’)∈Kを得る。
 (Step.2)ランダムにVinegar変数vx=(vx,…,vx)∈Kを選択する。
 (Step.3)y’=(y’,…,y’)∈K、Vinegar変数vx∈Kを用いて、F(ox,…,ox,vx,…,vx)=(y,…,y)を満たすOil変数ox=(ox,…,ox)を計算する。但し、解が存在しない場合には、Step.2に戻り、Vinegar変数vxを選択し直す。
 (Step.4)Oil変数ox∈K、Vinegar変数vx∈Kで構成されるx’=(ox,…,ox,vx,…,vx)∈Kに変換Sの逆変換S-1を適用してx=(x,…,x)∈Kを得る。
 (Step.5)x∈Kを出力する。
 上記のStep.3において、中央写像Fに関する原像{z∈K|F(z,vx)=y}の要素が全く存在しない可能性がある。この場合、Step.2の処理に戻り、Vinegar変数vxの取り直しが行われる。しかし、Vinegar変数vxに依存してOV関数Fの値域の大きさが異なる。そのため、OV関数Fに対して一様な分布を有する終域の元が入力されたとしても、逆方向の計算アルゴリズムの出力値は一様な分布にならない。このような分布の偏りが存在すると、OV関数Fの構造に関する情報が選択文書攻撃により漏洩してしまう危険性がある。そこで、選択文書攻撃に対する安全性を保証するためには、このような分布の偏りを是正する工夫が必要になる。
 [3-2:OV署名方式]
 ここまでOV関数Fについて説明してきた。次に、OV関数Fを用いた電子署名方式(OV署名方式)について説明する。但し、ここでは、OV署名方式の一例として、OV関数を用いたFDH署名方式(OV+FDH署名方式)について説明する。
 ≪OV+FDH署名方式≫
 OV+FDH署名方式における署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。なお、OV+FDH署名方式では、署名鍵skをFのtrapdoor S,T,aij,bij,c,d,e、検証鍵pkをFに設定する。
 (署名生成アルゴリズムSig(逆方向の計算アルゴリズム))
 署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.6により電子署名σを計算する(σ←Sig(sk,M))。
 (Step.1)メッセージMを用いて、ハッシュ値y∈K←H(M)を計算する。
 (Step.2)y=(y,…,y)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,y’)∈Kを得る。
 (Step.3)ランダムにVinegar変数vx=(vx,…,vx)∈Kを選択する。
 (Step.4)y’∈K、Vinegar変数vx∈Kを用いて、F(ox,…,ox,vx,…,vx)=(y,…,y)を満たすOil変数ox=(ox,…,ox)を計算する。但し、解が存在しない場合、Step.3に戻り、Vinegar変数を取り直す。
 (Step.5)Oil変数ox∈K、Vinegar変数vx∈Kで構成されるx’=(ox,…,ox,vx,…,vx)∈Kに変換Sの逆変換S-1を適用してx=(x,…,x)∈Kを得る。
 (Step.6)電子署名σ=xを出力する。
 (署名検証アルゴリズムVer(順方向の計算アルゴリズム))
 署名検証アルゴリズムVerは、検証鍵pk=F、メッセージM、電子署名σ=xを入力とし、次のStep.1~Step.3によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
 (Step.1)メッセージMを用いて、ハッシュ値y←H(M)を計算する。
 (Step.2)電子署名σに含まれるx=(x,…,x)∈KをOV関数Fに代入してy”を得る。
 (Step.3)y=y”ならば1を出力し、y≠y”ならば0を出力する。
 (OV+FDH署名方式の特性について)
 OV+FDH署名方式の場合、ある終域の元に対するOV関数Fの原像が要素を持たないことがある。そのため、図10に示すように、OV関数Fの終域と値域とは一致しない。また、OV関数Fの逆方向の計算アルゴリズムは、ある終域の元に対する原像の要素が存在しない場合、Vinegar変数をランダムに選択し直す。しかし、Vinegar変数は、OV関数FのOil変数oxに関する値域の大きさに依存する。そのため、Vinegar変数vxの取り方により、図10に示すように、OV関数Fの値域の大きさが変わってしまう。
 図10の例では、F(vx(1),・)の方がF(vx(2),・)よりも値域が大きい。この場合、終域の元が一様に入力されると、上記逆方向の計算アルゴリズムのStep.4において、F(vx(1),・)の方がStep.3に戻る確率が小さくなる。つまり、Vinegar変数vx(1)の出現確率が大きくなり、OV署名方式の逆方向の計算アルゴリズムにおいて、入力と出力の分布に偏りが生じてしまう。そこで、本件発明者は、このような分布の偏りを改善する方式(拡張OV署名方式)を考案した。以下、この拡張OV署名方式について説明するが、ここでOV+FDH署名方式の署名生成アルゴリズムSig及び署名検証アルゴリズムVerにおける処理の流れについて纏めておく。
 (署名生成アルゴリズムSigの詳細)
 まず、図16を参照しながら、OV+FDH署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図16は、OV+FDH署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
 図16に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S202)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、メッセージMを用いてハッシュ値y=H(M)を算出する(S204)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像Fの終域の元y’∈Kを算出する(S206)。次いで、署名生成アルゴリズムSigは、Vinegar変数vx∈Kを選択する(S208)。
 次いで、署名生成アルゴリズムSigは、ox∈{z∈K|F(z,vx)=y’}を計算し、集合{z∈K|F(z,vx)=y’}が要素を持つか否かを判断する(S210)。集合{z∈K|F(z,vx)=y’}が要素を持つ場合、署名生成アルゴリズムSigは、処理をステップS212に進める。一方、集合{z∈K|F(z,vx)=y’}が要素を持たない場合、署名生成アルゴリズムSigは、ステップS208に処理を戻す。ステップS212に処理を進めた場合、署名生成アルゴリズムSigは、集合{z∈K|F(z,vx)=y’}の要素oxを1つ選択する(S212)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS212で選択した要素ox、ステップS208で選択したVinegar変数vxで構成されるx’=(ox,…,ox,vx,…,vx)をx∈Kに変換する(S214)。次いで、署名生成アルゴリズムSigは、電子署名σ=xを出力する(S216)。OV関数Fの非一様分布性は、主に、ステップS210、ステップS208におけるVinegar変数の取り直し処理に起因して生じる。
 (署名検証アルゴリズムVerの詳細)
 次に、図17を参照しながら、OV+FDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図17は、OV+FDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図17に示すように、まず、検証者20は、メッセージM、電子署名σ=x、検証鍵pkを署名者10から取得し(S232)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、メッセージMを用いてハッシュ値y=H(M)を算出する(S234)。次いで、署名検証アルゴリズムVerは、検証鍵pk(F)を用いてy”=F(x)を算出する(S236)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S238)。
 (OV+FDH署名方式の安全性証明について)
 次に、図30を参照しながら、OV+FDH署名方式の安全性証明について簡単に考察する。OV+FDH署名方式の安全性証明は、通常、図30に示すようなシミュレーションにより行われる。このシミュレーションの中で、Random oracleシミュレーションのStep.2、及びSigning oracleシミュレーションのStep.1に問題がある。Random oracleシミュレーションのStep.2では、xがランダムに選ばれていてもF(x)が一様に分布していない可能性がある。また、Signing oracleシミュレーションのStep.1では、(v,x)がランダムに選ばれることが仮定されているが、実際にはOV関数の値域の大きさがVinegar変数(ここではv)に依存するため、(v,x)がランダムにならない。従って、HFE署名方式は、選択文書攻撃に対する安全性が保証されない。
 [3-3:第1拡張OV署名方式]
 そこで、本件発明者は、OV関数Fの逆方向の計算アルゴリズムを改良し、一様な分布を持つ終域の元を入力した場合に、入力した元に対する原像の元が一様に分布するようなtrapdoor付き一方向性関数F(以下、第1拡張OV関数F)を考案した。以下、第1拡張OV関数Fを用いた電子署名方式(以下、第1拡張OV署名方式)について説明する。
 第1拡張OV署名方式は、上記のOV+FDH署名方式の拡張(以下、拡張B)である。但し、第1拡張OV署名方式は、図11に示すように、Vinegar変数vxを固定した中央写像Fに関して、ある終域の元に対する原像の要素が存在しない場合に、Vinegar変数vxを取り直すのではなく、終域の元yを取り直すように工夫したものである。終域の元yは、中央写像Fの値域の大きさに影響しない。そのため、第1拡張OV署名方式を適用することにより、中央写像Fから出力されるVinegar変数vxの分布を一様にすることができる。その結果、第1拡張OV関数Fは一様分布性を有する。以下、第1拡張OV署名方式について詳細に説明する。
 (署名生成アルゴリズムSigの概要)
 第1拡張OV署名方式に係る署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.7により電子署名σを計算する(σ←Sig(sk,M))。但し、署名鍵skはFtのtrapdoor S、T、aij,bij,c,d,e、検証鍵pkはFである。また、各記号の定義はOV+FDH署名方式の説明で用いた定義と同じである。
 (Step.1)ランダムにVinegar変数vx=(vx,…,vx)∈Kを選択する。
 (Step.2)乱数rを生成する。
 (Step.3)乱数r、メッセージMを用いて、ハッシュ値y∈K^o←H(r,M)を計算する。
 (Step.4)y=(y,…,y)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,y’)∈Kを得る。
 (Step.5)y’∈K、Vinegar変数vx∈Kを用いて、F(ox,…,ox,vx,…,vx)=(y,…,y)を満たすOil変数ox=(ox,…,ox)を計算する。但し、解が存在しない場合には、Step.2に戻り、乱数rを取り直す。
 (Step.6)Oil変数ox∈K、Vinegar変数vx∈Kで構成されるx’=(ox,…,ox,vx,…,vx)∈Kに変換Sの逆変換S-1を適用してx=(x,…,x)∈Kを得る。
 (Step.7)電子署名σ=(x,r)を出力する。
 第1拡張OV署名方式とOV+FDH署名方式との主な違いは、上記のStep.5の構成にある。OV+FDH署名方式の場合、F(ox,…,ox,vx,…,vx)=(y,…,y)の解が得られないならばVinegar変数vxの取り直し処理が行われていた。しかし、第1拡張OV署名方式の場合、Vinegar変数vxはStep.1で固定され、中央写像Fの終域の元y’の取り直しが行われる。元y’の取り直しは、値域の大きさに影響を与えないため、Vinegar変数vxの出現確率に偏りを生じさせることがない。また、同じメッセージMに対し、元y’の取り直しを可能にするため、第1拡張OV署名方式では、PFDH署名方式のように乱数rが導入されている。このような構成にすることにより、第1拡張OV署名方式は、一様分布性を有することになり、選択文書攻撃に対する安全性が保証される。
 以下、図22、図23を参照しながら、第1拡張OV署名方式の署名生成アルゴリズムSig及び署名検証アルゴリズムVerにおける処理の流れについて纏める。
 (署名生成アルゴリズムSigの詳細)
 まず、図22を参照しながら、第1拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図22は、拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
 図22に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S502)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、ランダムにVinegar変数vxを選択する(S504)。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S506)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S508)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像Fの終域の元y’∈Kを算出する(S510)。
 次いで、署名生成アルゴリズムSigは、ox∈{z∈K|F(z,vx)=y’}を計算し、集合{z∈K|F(z,vx)=y’}が要素を持つか否かを判断する(S512)。集合{z∈K|F(z,vx)=y’}が要素を持つ場合、署名生成アルゴリズムSigは、処理をステップS514に進める。一方、集合{z∈K|F(z,vx)=y’}が要素を持たない場合、署名生成アルゴリズムSigは、ステップS506に処理を戻す。ステップS514に処理を進めた場合、署名生成アルゴリズムSigは、集合{z∈K|F(z,vx)=y’}の要素oxを1つ選択する(S514)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS514で選択した要素ox、ステップS504で選択したVinegar変数vxで構成されるx’=(ox,…,ox,vx,…,vx)をx∈Kに変換する(S516)。次いで、署名生成アルゴリズムSigは、電子署名σ=xを出力する(S518)。第1拡張OV関数Fの一様分布性は、ステップS512にて{z∈K|F(z,vx)=y’}が要素を持たない場合に、Vinegar変数vxの取り直しを行わず、ステップS506にて乱数rを取り直すことにより実現される。
 (署名検証アルゴリズムVerの詳細)
 次に、図23を参照しながら、第1拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図23は、拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図23に示すように、まず、検証者20は、メッセージM、電子署名σ=(M,r)、検証鍵pkを署名者10から取得し(S532)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、電子署名σに含まれる乱数r、及びメッセージMを用いてハッシュ値y=H(M,r)を算出する(S534)。次いで、署名検証アルゴリズムVerは、検証鍵pk(F)を用いてy”=F(x)を算出する(S536)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S538)。
 このように、署名検証アルゴリズムVerにおける処理の流れは、第1拡張OV署名方式とOV+FDH署名方式とで大きな差はない。但し、第1拡張OV署名方式では、乱数rが導入されているため、署名検証時に乱数rが用いられている点が異なる。
 以上、本発明の第2実施形態に係る第1拡張OV署名方式について説明した。
 [3-4:第2拡張OV署名方式]
 ここまでOV+FDH署名方式の非一様分布性を改善し、選択文書攻撃に対する安全性を保証できるようにした第1拡張OV署名方式について説明してきた。この第1拡張OV署名方式は、OV関数Fの逆方向の計算アルゴリズムを工夫したものであった。ここでは、OV+FDH署名方式の非一様分布性を改善する他の工夫(以下、第2拡張OV署名方式)について述べる。
 OV+FDH署名方式の非一様分布性は、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない場合にVinegar変数vxを取り直すことに起因して生じる。このような問題を避けるため、本件発明者は、上記の第1拡張OV署名方式として、Vinegar変数vxの取り直しを避ける工夫を提案した。しかし、OV+FDH署名方式が抱える問題は、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない確率が無視できる程小さければ生じない。そこで、本件発明者は、第2拡張OV署名方式として、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない確率を無視できる程小さくするための工夫を考案した。
 (工夫1)
 上記の説明においては、簡単のため、OV関数Fの終域の要素数mをVinegar変数vxの要素数oと同じに設定していた。この設定(m=o)によると、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない確率は十分に大きい。しかし、mに対して下記の式(5)で表現される条件を課すことにより、解が存在しない確率を無視できる程度に小さくすることができる。但し、βは、Kの要素数qに対し、q-βが無視できる程度に小さい値(q-β≪1)とする。
Figure JPOXMLDOC01-appb-M000004
 (工夫2)
 また、次のように中央写像Fの構成を工夫することにより、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない確率を無視できる程度に小さくすることができる。まず、下記の式(7)に示すm×n行列Lを用いて、下記の式(8)に示すように中央写像Fを表現する。また、行列L、L、Lを用いて、m×n行列Lを下記の式(9)のように表現する。行列L、Lは正則行列である。また、Lは、vxの関数aij(vx)を要素とし、対角成分を1とする上三角行列又は下三角行列である。このような表現にすることで、任意のvxについてLが正則になる。なお、Lは、行列Lと同等の性質を持つ行列を複数用いて表現されていてもよい。
Figure JPOXMLDOC01-appb-M000005
 (計算アルゴリズム(工夫1、工夫2の適用時))
 上記のような工夫を施したOV署名方式(第2拡張OV署名方式)の署名生成アルゴリズムSig、及び署名検証アルゴリズムVerは、以下のようになる。
 ≪記号の定義≫
 K:有限環
 F:写像K→K
 n:n=o+v
 ox:ox=(ox,…,ox):Oil変数
 vx:vx=(vx,…,vx):Vinegar変数
 F:写像K→K、中央写像(上記の式(10)及び式(11)を参照)
 S:K上での可逆的アフィン変換(第1の秘密多項式の変換)
 T:K上での可逆的アフィン変換(第2の秘密多項式の変換)
Figure JPOXMLDOC01-appb-M000006
 但し、aij,bij,c,d,e∈K、f,…,f∈K[ox,…,ox,vx,…,vx]である。
 ≪署名生成アルゴリズムSig≫
 図26を参照しながら、第2拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図26は、第2拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
 図26に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S702)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、乱数rを選択する(S704)。次いで、署名生成アルゴリズムSigは、メッセージMを用いてハッシュ値y=H(M,r)を算出する(S706)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像Fの終域の元y’∈Kを算出する(S708)。次いで、署名生成アルゴリズムSigは、Vinegar変数vx∈Kを選択する(S710)。
 次いで、署名生成アルゴリズムSigは、ox∈{z∈K|F(z,vx)=y’}を計算し、集合{z∈K|F(z,vx)=y’}が要素を持つか否かを判断する(S712)。集合{z∈K|F(z,vx)=y’}が要素を持つ場合、署名生成アルゴリズムSigは、処理をステップS714に進める。一方、集合{z∈K|F(z,vx)=y’}が要素を持たない場合、署名生成アルゴリズムSigは、ステップS720に処理を進め、異常終了する(S720)。但し、第2拡張OV署名方式の場合、上記の工夫が施されていることにより、無視できる程度に小さな確率又は確率0でしかステップS720には進まない点に注意されたい。
 ステップS714に処理を進めた場合、署名生成アルゴリズムSigは、集合{z∈K|F(z,vx)=y’}の要素oxを1つ選択する(S714)。次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS714で選択した要素ox、ステップS710で選択したVinegar変数vxで構成されるx’=(ox,…,ox,vx,…,vx)をx∈Kに変換する(S716)。次いで、署名生成アルゴリズムSigは、電子署名σ=(x,r)を出力する(S718)。第2拡張OV関数Fの一様分布性は、ステップS712の分岐処理でステップS720に進まないことにより実現される。
 ≪署名検証アルゴリズムVer≫
 次に、図27を参照しながら、第2拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図27は、第2拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図27に示すように、まず、検証者20は、メッセージM、電子署名σ=(x,r)、検証鍵pkを署名者10から取得し(S732)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、メッセージMを用いてハッシュ値y=H(M,r)を算出する(S734)。次いで、署名検証アルゴリズムVerは、検証鍵pk(Ft)を用いてy”=F(x)を算出する(S736)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S738)。
 以上、本発明の第2実施形態に係る第2拡張OV署名方式について説明した。
 以上説明したように、本発明の第2実施形態は、Vinegar変数vxを用いるMPKC署名方式における非一様分布性を改善する工夫に関する。上記説明した工夫を施すことにより、Vinegar変数vxを用いるMPKC署名方式においても、一様分布性が実現され、選択文書攻撃に対する安全性を保証することが可能になる。
 <4:第3実施形態(HFEv署名方式への適用例)>
 次に、本発明の第3実施形態について説明する。上記の第1実施形態では、HFE署名方式を拡張し、HFE関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張HFE署名方式を提案した。上記の第2実施形態では、OV署名方式を拡張子、OV関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な第1及び第2拡張OV署名方式を提案した。本実施形態は、HFE関数とOV関数とを組み合わせたHFEv関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張HFEv署名方式(第1拡張HFEv署名方式、第2拡張HFEv署名方式)を提案する。
 [4-1:HFEv関数の性質]
 拡張HFEv関数について説明するに先立ち、HFEv関数Ftの定義、及びHFEv関数Fの性質について簡単に説明する。上記の通り、HFEv関数Fは、HFE関数とOV関数との組み合わせである。従って、図12に示すように、ある値域の元yに対して原像の要素数が複数存在したり、全く存在しなかったりする。また、Vinegar変数vxの取り方によりHFEv関数Fの値域の大きさが変わってしまう。こうした理由から、HFEv関数は入力と出力との間で分布の偏りがある。以下、HFEv関数について、より詳細に説明する。
 ≪記号の定義≫
 K:要素数nの有限環
 F:写像K→K
 n:n=o+v
 ox:ox=(ox,…,ox):Oil変数
 vx:vx=(vx,…,vx):Vinegar変数
 f:A×K→A、中央写像(下記の式(12)を参照)
 A:有限環Kのo次拡大(要素数q)
 B:有限環Kのm次拡大(要素数q)
 φ:線形写像A→K(下記の式(13)を参照)
 φ:線形写像B→K(下記の式(14)を参照)
 S:K上での可逆的アフィン変換(第1の秘密多項式の変換)
 T:K上での可逆的アフィン変換(第2の秘密多項式の変換)
 trapdoor:S、T、aij、b(Xの関数)、c(Xの関数)
Figure JPOXMLDOC01-appb-M000007
 但し、dをそれほど大きくない整数として、aij,b,c∈A、「q+q>dならばaij=0」かつ「q>dならばb=0」とする。
 ≪HFEv関数Ftの構造≫
 HFEv関数Fは、変換Sによる写像、中央写像F(=φ -1*f*φ)、及び変換Tによる写像の合成写像F=T*F*Sにより表現される(この*は直積)。そして、y=F(x)を計算するアルゴリズムは、次のようになる。
 (Step.1)変換Sにより、x=(ox,…,ox,vx,…,vx)∈Kをx’=(ox’,…,ox’,vx’,…,vx’)∈Kに変換する。
 (Step.2)φ -1により、ox’∈KをX’∈Aに変換する。X’=vx∈Kとする。
 (Step.3)中央写像fにより、(X’,X’)∈A×KをY’=f(X’,X’)∈Bに変換する。
 (Step.4)φにより、Y’∈Bをy’=(y’,…,y’)∈Kに変換する。
 (Step.5)変換Tにより、y’∈Kをy=(y,…,y)∈Kに変換する。
 (Step.6)y∈Kを出力する。
 上記の式(12)に示すように、HFEv関数Fは、HFE関数と同様、非線形の多変数多項式に基づく中央写像fを含んでいる。そのため、ある終域Aの元Y’に対し、多変数多項式の根の集合に相当する原像{Z∈A|f(Z)=Y’}の要素数が複数存在する可能性がある。この場合、図12に示すように、値域の元yに対し、HFE関数Fに関する原像の要素数が複数(図12の例では3)となる。
 また、ある終域Aの元Y’に対し、原像{Z∈A|f(Z)=Y’}の要素が全く存在しない可能性もある。この場合、原像{Z∈A|f(Z)=Y’}の要素が全く存在しない終域の元は値域に含まれないため、図12に示すように、終域と値域とは異なる。このような性質を有することにより、一様に終域の元が入力されたとしても、HFEv関数Fの逆方向演算により得られる定義域の元は一様に分布しない。
 以下、HFEv関数Fの計算アルゴリズムについて、より詳細に説明する。
 ≪順方向の計算アルゴリズム≫
 HFEv関数Fに対する順方向の計算アルゴリズムは、与えられたx∈KをHFEv関数F(x)に代入してy=F(x)∈Kを得るステップにより構成される。この順方向の計算アルゴリズムに定義域の元xが1つ入力されると、値域の元yが1つ出力される。
 ≪逆方向の計算アルゴリズム≫
 HFE関数Fに関する逆方向の計算アルゴリズムは、次のStep.1~Step.8により構成される。
 (Step.1)与えられたy=(y,…,y)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,y’)∈Kを得る。
 (Step.2)ランダムにvx’=(vx’,…,vx’)∈Kを選択する。
 (Step.3)φ -1により、y’=(y’,…,y’)∈KをY’∈Bに変換する。また、vx∈KをX’∈Kとする。
 (Step.4)集合{Z∈A|f(Z,X’)=Y’}を計算する。
 (Step.5)集合{Z∈A|f(Z,X’)=Y’}から1つの要素X’を選択する。但し、集合{Z∈A|f(Z,X’)=Y’}が空集合の場合、Step.2へ戻り、Vinegar変数vx’を選択し直す。なお、集合{Z∈A|f(Z,X’)=Y’}は、例えば、X’について多項式f(X,X’)-Y’を因数分解することにより求められる。
 (Step.6)φにより、X’∈Aをox=(ox,…,ox)∈Kに変換し、x’=(ox’,…,ox’,vx’,…,vx’)を得る。
 (Step.7)変換Sの逆変換S-1により、x’∈Kをx=(ox,…,ox,vx,…,vx)∈Kに変換する。
 (Step.8)x∈Kを出力する。
 上記のStep.4において、集合{Z∈A|f(Z,X’)=Y’}の要素数α=|{Z∈A|f(Z,X’)=Y’}|がα=0又はα≧2となる可能性がある。そのため、一様な分布を有する終域の元が入力されたとしても、逆方向の計算アルゴリズムの出力値は一様な分布にならない。また、上記のStep.5において、要素数αが0の場合、Step.2に戻ってVinegar変数vx’の再選択が行われる。Vinegar変数vx’を再選択すると、HFEv関数Ftの値域が変化してしまい、入力が一様分布を成していても逆方向の計算アルゴリズムの出力分布が一様にならない。そこで、選択文書攻撃に対する安全性を保証するためには、このような分布の偏りを是正する工夫が必要になる。
 [4-2:HFEv署名方式]
 ここまでHFEv関数Fについて説明してきた。次に、HFEv関数Fを用いた電子署名方式(HFEv署名方式)について説明する。但し、ここでは、HFEv署名方式の一例として、HFEv関数を用いたFDH署名方式(HFEv+FDH署名方式)について説明する。
 ≪HFEv+FDH署名方式≫
 HFEv+FDH署名方式における署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。なお、HFEv+FDH署名方式では、署名鍵skをFのtrapdoor S,T,aij,bij,c、検証鍵pkをFに設定する。但し、aij∈A、b,c:K→Aである。
 (署名生成アルゴリズムSig(逆方向の計算アルゴリズム))
 署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.9により電子署名σを計算する(σ←Sig(sk,M))。
 (Step.1)メッセージMを用いて、ハッシュ値y∈K←H(M)を計算する。
 (Step.2)y=(y,…,y)∈Kを変換Tの逆変換T-1に適用してy’=(y’,…,y’)∈Kを得る。
 (Step.3)ランダムにvx’=(vx’,…,vx’)∈Kを選択する。
 (Step.4)φ -1により、y’=(y’,…,y’)∈KをY’∈Bに変換する。また、vx∈KをX’∈Kとする。
 (Step.5)集合{Z∈A|f(Z,X’)=Y’}を計算する。
 (Step.6)集合{Z∈A|f(Z,X’)=Y’}から1つの要素X’を選択する。但し、集合{Z∈A|f(Z,X’)=Y’}が空集合の場合、Step.3へ戻り、Vinegar変数vx’を選択し直す。なお、集合{Z∈A|f(Z,X’)=Y’}は、例えば、X’について多項式f(X,X’)-Y’を因数分解することにより求められる。
 (Step.7)φにより、X’∈Aをox=(ox,…,ox)∈Kに変換し、x’=(ox’,…,ox’,vx’,…,vx’)を得る。
 (Step.8)変換Sの逆変換S-1により、x’∈Kをx=(ox,…,ox,vx,…,vx)∈Kに変換する。
 (Step.9)電子署名σ=xを出力する。
 (署名検証アルゴリズムVer(順方向の計算アルゴリズム))
 署名検証アルゴリズムVerは、検証鍵pk=F、メッセージM、電子署名σ=xを入力とし、次のStep.1~Step.3によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
 (Step.1)メッセージMを用いて、ハッシュ値y←H(M)を計算する。
 (Step.2)電子署名σに含まれるx=(ox,…,ox,vx,…,vx)∈KをOV関数Fに代入してy”を得る。
 (Step.3)y=y”ならば1を出力し、y≠y”ならば0を出力する。
 (HFEv+FDH署名方式の特性について)
 上記の通り、HFEv関数Fは、HFE関数とOV関数との組み合わせである。そのため、図13に示すように、(A)HFE関数の特性により、同じ終域の元yが与えられても、その元yに対する原像の要素数が1つにならない場合が生じてしまう。また、(B)OV関数の特性により、Vinegar変数vxの選び方により値域の大きさが異なるため、ある終域の元yに対する原像の元xに含まれるVinegar変数vxに応じて元xの出現確率が異なってしまう。そのため、HFEv署名方式は、選択文書攻撃に対する安全性を保証することができない。
 そこで、本件発明者は、このような問題点を解決することが可能な署名方式(拡張HFEv署名方式)を考案した。以下、この拡張HFEv署名方式について説明するが、ここでHFEv+FDH署名方式の署名生成アルゴリズムSig及び署名検証アルゴリズムVerにおける処理の流れについて纏めておく。
 (署名生成アルゴリズムSigの詳細)
 まず、図16を参照しながら、HFEv+FDH署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図16は、HFEv+FDH署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
 図16に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S202)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、メッセージMを用いてハッシュ値y=H(M)を算出する(S204)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像Fの終域の元y’∈Kを算出する(S206)。次いで、署名生成アルゴリズムSigは、Vinegar変数vx∈Kを選択する(S208)。
 次いで、署名生成アルゴリズムSigは、ox∈{z∈K|F(z,vx)=y’}を計算し、集合{z∈K|F(z,vx)=y’}が要素を持つか否かを判断する(S210)。集合{z∈K|F(z,vx)=y’}が要素を持つ場合、署名生成アルゴリズムSigは、処理をステップS212に進める。一方、集合{z∈K|F(z,vx)=y’}が要素を持たない場合、署名生成アルゴリズムSigは、ステップS208に処理を戻す。ステップS212に処理を進めた場合、署名生成アルゴリズムSigは、集合{z∈K|F(z,vx)=y’}の要素oxを1つ選択する(S212)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS212で選択した要素ox、ステップS208で選択したVinegar変数vxで構成されるx’=(ox,…,ox,vx,…,vx)をx∈Kに変換する(S214)。次いで、署名生成アルゴリズムSigは、電子署名σ=xを出力する(S216)。HFEv関数Fの非一様分布性は、ステップS210、ステップS208におけるVinegar変数の取り直し処理、及びステップS212における選択処理に起因して生じる。
 (署名検証アルゴリズムVerの詳細)
 次に、図17を参照しながら、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図17は、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図17に示すように、まず、検証者20は、メッセージM、電子署名σ=x、検証鍵pkを署名者10から取得し(S232)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、メッセージMを用いてハッシュ値y=H(M)を算出する(S234)。次いで、署名検証アルゴリズムVerは、検証鍵pk(F)を用いてy”=F(x)を算出する(S236)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S238)。
 以上、HFEv署名方式について説明した。
 [4-3:第1拡張HFEv署名方式]
 次に、本発明の第3実施形態に係る第1拡張HFEv署名方式について説明する。第1拡張HFEv署名方式は、上記の拡張HFE署名方式と同様に、ある値域の元に対する原像の要素数に比例した確率でVinegar変数を選択し直す方法である。以下、図20、図21を参照しながら、第1拡張HFEv署名方式における署名生成アルゴリズムSig、及び署名検証アルゴリズムVerについて説明する。
 ≪署名生成アルゴリズムSig≫
 図20に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S402)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S404)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S406)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像fの終域の元Y’∈Aを算出する(S408)。
 次いで、署名生成アルゴリズムSigは、ランダムにVinegar変数vx=X’を選択する(S410)。次いで、署名生成アルゴリズムSigは、X’∈{Z∈A|f(Z,X’)=Y’}を計算し、集合{Z∈A|f(Z,X’)=Y’}の要素数αに比例した確率pで処理をステップS414に進める(S412)。一方、署名生成アルゴリズムSigは、確率(1-p)でステップS410に処理を戻す。ステップS414に処理を進めた場合、署名生成アルゴリズムSigは、集合{Z∈A|f(Z,X’)=Y’}の要素X’を1つ選択する(S414)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS414で選択した要素X’、及びステップS410で選択したVinegar変数X’からx=(ox,vx)∈Kを得る(S416)。次いで、署名生成アルゴリズムSigは、電子署名σ=(x,r)を出力する(S418)。このように、ステップS412の分岐処理を原像{Z∈A|f(Z,X’)=Y’}の要素数αに比例した確率pに基づいて行うようにしたことで第1拡張HFEv関数Fの一様分布性が実現される。
 ≪署名検証アルゴリズムVer≫
 次に、図21を参照しながら、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図21は、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
 図21に示すように、まず、検証者20は、メッセージM、電子署名σ=(M,r)、検証鍵pkを署名者10から取得し(S432)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、電子署名σに含まれる乱数r、及びメッセージMを用いてハッシュ値y=H(M,r)を算出する(S434)。次いで、署名検証アルゴリズムVerは、検証鍵pk(F)を用いてy”=F(x)を算出する(S436)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S438)。
 以上、本発明の第3実施形態に係る第1拡張HFEv署名方式について説明した。
 [4-4:第2拡張HFEv署名方式]
 次に、本発明の第3実施形態に係る第2拡張HFEv署名方式について説明する。第2拡張署名方式は、拡張HFE署名方式に関する拡張Aの工夫と、第1拡張OV署名方式に関する拡張Bの工夫とをHFEv署名方式に適用したものである。つまり、第2拡張HFEv署名方式は、ある値域の元に対する原像の要素数に比例した確率で値域の元を選択し直す方法である。以下、図24、図25を参照しながら、第2拡張HFEv署名方式における署名生成アルゴリズムSig、及び署名検証アルゴリズムVerについて説明する。
 ≪署名生成アルゴリズムSig≫
 図24に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S602)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、ランダムにVinegar変数vx=X’を選択する(S604)。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S606)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S608)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Kから中央写像fの終域の元Y’∈Aを算出する(S610)。
 次いで、署名生成アルゴリズムSigは、X’∈{Z∈A|f(Z,X’)=Y’}を計算し、集合{Z∈A|f(Z,X’)=Y’}の要素数αに比例した確率pで処理をステップS614に進める(S612)。一方、署名生成アルゴリズムSigは、確率(1-p)でステップS606に処理を戻す。ステップS614に処理を進めた場合、署名生成アルゴリズムSigは、集合{Z∈A|f(Z,X’)=Y’}の要素X’を1つ選択する(S614)。
 次いで、署名生成アルゴリズムSigは、変換Sの逆変換S-1に基づき、ステップS614で選択した要素X’、及びステップS604で選択したVinegar変数X’からx=(ox,vx)∈Kを得る(S616)。次いで、署名生成アルゴリズムSigは、電子署名σ=(x,r)を出力する(S618)。このように、ステップS612の分岐処理を原像{Z∈A|f(Z,X’)=Y’}の要素数αに比例した確率pに基づいて行うようにしたこと、確率(1-p)で新たなVinegar変数vxの代わりに乱数rを選択し直すようにしたことで第2拡張HFEv関数Fの一様分布性が実現される。
 ≪署名検証アルゴリズムVer≫
 図25に示すように、まず、検証者20は、メッセージM、電子署名σ=(M,r)、検証鍵pkを署名者10から取得し(S632)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、電子署名σに含まれる乱数r、及びメッセージMを用いてハッシュ値y=H(M,r)を算出する(S634)。次いで、署名検証アルゴリズムVerは、検証鍵pk(Ft)を用いてy”=F(x)を算出する(S636)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S638)。
 以上、本発明の第3実施形態に係る第2拡張HFEv署名方式について説明した。
 以上説明したように、本発明の第3実施形態は、HFEv署名方式への拡張Aの適用例、拡張A+拡張Bの適用例に関する。このように、ある終域の元に対して中央写像fの原像が複数の要素を持ちうる場合には拡張Aを適用し、さらにVinegar変数を利用する署名方式の場合には拡張Bを併せて適用することにより、入力と出力との間における分布の偏りが解消され、選択文書攻撃に対する安全性が保証できるようになる。
 なお、第1拡張OV署名方式は、拡張Bのみの適用例であった。多くの場合、ある終域の元に対する中央写像fの原像の要素数が1にならない可能性があるため、拡張Aを併用する必要がある。しかし、OV関数の場合、「原像の一部vxを固定したとき、任意の終域の元yについて、F(vx,z)=yとなるzが存在するならば、その個数はyに依らず一定である」という特殊な性質があるため、拡張Aの併用が不要であった。このように、MPKC署名方式の種類によって、拡張A、拡張B、拡張A+拡張Bのいずれかを適宜使い分けることにより、関数Ftの入力と出力との間における分布の偏りを解消することが可能になる。なお、拡張Bに代えて、第2拡張OV署名方式を組み合わせてもよい。
 <5:補遺>
 これまで、本発明に係る第1~第3実施形態について説明してきた。これらの実施形態は、あくまでも本発明に係る技術的思想を具体化した一例に過ぎず、本発明の適用範囲がこれらの例に限定されるものではない。例えば、上記説明においては、HFE署名方式、OV署名方式、HFEv署名方式、及びその派生形を例に挙げたが、これらに限定されず、他のMPKC署名方式へと応用することも可能である。もちろん、このような応用についても、上記実施形態の説明において言及した内容から想到可能な範囲、及び当業者が出願時の技術を参酌して想到可能な範囲については、当然のことながら、本発明に係る実施形態として、その技術的範囲に含まれる。
 さて、上記説明した署名方式においては、乱数rを利用するものがある。しかし、ここで用いる乱数rは、第三者が実質的に乱数と思うような数であればよい。例えば、署名者10は、乱数rの代わりに、署名者10に固有の値δ(秘密に管理される値)をメッセージMと共にハッシュ関数H’に入力して得られるr=H’(M,r)を用いてもよい。また、上記の各拡張OV署名方式において、第2の秘密多項式の変換を恒等写像としたり、第2の秘密多項式の変換(及び逆変換)に係る処理を省略したりする変形も可能である。このような変形についても、本発明に係る実施形態の技術的範囲に属する。
 [5-1:PSS署名方式への拡張]
 また、本発明の各実施形態に係る署名生成方法に対し、PSS(Probablistic Signature Scheme)を組み合わせてもよい。PSSは、PFDH方式において、電子署名σの一部から、乱数r又はその一部を生成する仕組みである。
 [5-2:多層型OV署名方式への拡張]
 また、上記の第2実施形態においては、簡単のために基本的なOV関数の構成を例示したが、多層型のOV関数(例えば、Rainbow署名方式のOV関数)に応用することもできる。多層型のOV関数は、次のようなステップでOil変数を逐次的に算出するアルゴリズムで構成される。
 (第1層目の演算ステップ)
 第1層目のVinegar変数を選択し、Oil変数を算出する。次いで、第1層目のVinegar変数、算出したOld変数を第2層目のVinegar変数とする。
 (第2層目の演算ステップ)
 第2層目のVinegar変数を用いて、Oil変数を算出する。次いで、第2層目のVinegar変数、算出したOld変数を第3層目のVinegar変数とする。
 (第3層目の演算ステップ)
 第3層目のVinegar変数を用いて、Oil変数を算出する。次いで、第3層目のVinegar変数、算出したOld変数を第4層目のVinegar変数とする。
 …
 (第N層目の演算ステップ)
 第N-1層目のVinegar変数を用いて、第N層目のOil変数を算出する。
 このような多層型のOV関数に対しても、上記の拡張A、拡張Bを適宜適用することにより、入力と出力との間における分布の偏りを解消し、一様分布性を実現することができる。このような拡張を行うことにより、選択文書攻撃に対する安全性が保証された電子署名方式を実現することができる。
 [5-3:HFE関数Fのマイナス拡張方式]
 また、上記の第1実施形態においては、拡張HFE関数Fを検証鍵pkとしたが、拡張HFE関数Fの一部を検証鍵pkとする変形(以下、マイナス拡張方式)も可能である。例えば、拡張HFE関数Fがn本の多項式を含む場合、その中からm本(m<n)の多項式を取り除いた(n-m)本の多項式が検証鍵pkとして検証者20に提供される。また、このような検証鍵pkを利用する場合、(n-m)個の要素を持つハッシュ値yを出力するハッシュ関数Hが用いられる。但し、n個の要素を持つハッシュ値yを出力するハッシュ関数Hの出力値から(n-m)個の要素以外の要素を無視する構成にしてもよい。
 また、電子署名σの検証は、電子署名σを検証鍵pkに適用して得られる(n-m)個の値y”と、メッセージM及び乱数rをハッシュ関数Hに適用して得られる(n-m)個のハッシュ値yとの比較により行われる。一方、電子署名σの生成は、メッセージM及び乱数rをハッシュ関数Hに適用して得られる(n-m)個の要素と、m個の乱数とにより構成されるn個の要素を逆方向計算アルゴリズムに適用して原像を計算し、その計算結果を電子署名σの一部に含めることで行われる。このように、上記の第1実施形態に係る技術は、マイナス拡張方式にも適用可能である。そして、マイナス拡張方式を適用することにより、HFE関数Fの強度がさらに向上する。
 <6:ハードウェア構成例>
 上記の鍵生成装置100、署名生成装置150、署名検証装置200が有する各構成要素の機能は、例えば、図31に示す情報処理装置のハードウェア構成を用いて実現することが可能である。つまり、当該各構成要素の機能は、コンピュータプログラムを用いて図31に示すハードウェアを制御することにより実現される。なお、このハードウェアの形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、PHS、PDA等の携帯情報端末、ゲーム機、接触式又は非接触式のICチップ、接触式又は非接触式のICカード、又は種々の情報家電がこれに含まれる。但し、上記のPHSは、Personal Handy-phone Systemの略である。また、上記のPDAは、Personal Digital Assistantの略である。
 図31に示すように、このハードウェアは、主に、CPU902と、ROM904と、RAM906と、ホストバス908と、ブリッジ910と、を有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926と、を有する。但し、上記のCPUは、Central Processing Unitの略である。また、上記のROMは、Read Only Memoryの略である。そして、上記のRAMは、Random Access Memoryの略である。
 CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
 これらの構成要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等が用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ(以下、リモコン)が用いられることもある。
 出力部918としては、例えば、CRT、LCD、PDP、又はELD等のディスプレイ装置、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。但し、上記のCRTは、Cathode Ray Tubeの略である。また、上記のLCDは、Liquid Crystal Displayの略である。そして、上記のPDPは、Plasma DisplayPanelの略である。さらに、上記のELDは、Electro-Luminescence Displayの略である。
 記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、ハードディスクドライブ(HDD)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。但し、上記のHDDは、Hard Disk Driveの略である。
 ドライブ922は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928は、例えば、DVDメディア、Blu-rayメディア、HD DVDメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体928は、例えば、非接触型ICチップを搭載したICカード、又は電子機器等であってもよい。但し、上記のICは、Integrated Circuitの略である。
 接続ポート924は、例えば、USBポート、IEEE1394ポート、SCSI、RS-232Cポート、又は光オーディオ端子等のような外部接続機器930を接続するためのポートである。外部接続機器930は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はICレコーダ等である。但し、上記のUSBは、Universal Serial Busの略である。また、上記のSCSIは、Small Computer System Interfaceの略である。
 通信部926は、ネットワーク932に接続するための通信デバイスであり、例えば、有線又は無線LAN、Bluetooth(登録商標)、又はWUSB用の通信カード、光通信用のルータ、ADSL用のルータ、又は接触又は非接触通信用のデバイス等である。また、通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークにより構成され、例えば、インターネット、家庭内LAN、赤外線通信、可視光通信、放送、又は衛星通信等である。但し、上記のLANは、Local Area Networkの略である。また、上記のWUSBは、Wireless USBの略である。そして、上記のADSLは、Asymmetric Digital Subscriber Lineの略である。
 <7:まとめ>
 最後に、本発明の実施形態に係る技術内容について簡単に纏める。ここで述べる技術内容は、例えば、PC、携帯電話、携帯ゲーム機、携帯情報端末、情報家電、カーナビゲーションシステム等、種々の情報処理装置、或いは、非接触又は接触式のスマートカードやリーダ/ライタ等に対して適用することができる。
 上記の情報処理装置の機能構成は次のように2通りで表現することができる。
 (1)当該情報処理装置は、第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換部と、を有する。
 上記のように、要素選択部が原像の要素数αに比例した確率pで原像の要素Xを選択することにより、各原像の要素が選択される確率が同じになる。そのため、有限環K上で一様な分布を持つ集合の元yが第1逆変換部に入力されると、第1逆変換部、要素算出部、要素選択部、第2逆変換部の処理を経て得られる元xは有限環K上で一様な分布を持つ。つまり、第1逆変換部、要素算出部、要素選択部、第2逆変換部の処理に対応する写像Fは全単射性を有する。このように、写像Fが全単射性を有することにより、写像Fに基づく電子署名システムは、選択文書攻撃に対する安全性が保証される。
 (2)また、当該情報処理装置は、v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、を有する。
 上記のように、原像の要素が存在しない場合に、原像の要素数に関係する元vxを選択し直すのではなく、数rを生成し直して元yを変更することにより、第1逆変換部、要素算出部、要素選択部、第2逆変換部の処理に対応する写像Ftの全単射性が実現される。このように、写像Fが全単射性を有することにより、写像Fに基づく電子署名システムは、選択文書攻撃に対する安全性が保証される。
 (最後に)
 図18に示した拡張HFE署名方式の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。図19に示した拡張HFE署名方式の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
 また、図20に示した第1拡張HFEv署名方式の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。図21に示した第1拡張HFEv署名方式の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
 また、図22に示した第1拡張OV署名方式の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。図23に示した第1拡張OV署名方式の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
 また、図24に示した第2拡張HFEv署名方式の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。図25に示した第2拡張HFEv署名方式の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
 また、図26に示した第2拡張OV署名方式の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。図27に示した第2拡張OV署名方式の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
 また、上記実施形態において説明した各種の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。さらに、上記実施形態において説明した各種の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
 以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
 100  鍵生成装置
 150  署名生成装置
 200  署名検証装置

Claims (18)

  1.  第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、
     前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、
     前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、
     前記要素選択部にて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換部と、
    を備える、
     情報処理装置。
  2.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、
     第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、
     前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×K→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出部と、
     前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、
     前記要素選択部にて選択された要素Xを有限環Kの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、
    を備える、
     情報処理装置。
  3.  数rを生成する数生成部と、
     前記数生成部にて生成された数r及び電子データMを用いて前記有限環Kの元yを生成するデータ生成部と、
     前記データ生成部にて生成された有限環Kの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Kの元xを含む電子署名σを生成する署名生成部と、
    をさらに備え、
     前記署名生成部は、前記要素選択部にて例外値が出力された場合、前記数生成部により異なる数rを生成させ、前記データ生成部により前記異なる数rに基づいて生成された有限環Kの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Kの元xを含む電子署名σを生成する、
     請求項1に記載の情報処理装置。
  4.  数rを生成する数生成部と、
     前記数生成部にて生成された数r及び電子データMを用いて前記有限環Kの元yを生成するデータ生成部と、
     前記データ生成部にて生成された有限環Kの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Kの元xを含む電子署名σを生成する署名生成部と、
    をさらに備え、
     前記署名生成部は、前記要素選択部にて例外値が出力された場合、前記数生成部により異なる数rを生成させ、前記データ生成部により前記異なる数rに基づいて生成された有限環Kの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Kの元xを含む電子署名σを生成する、
     請求項2に記載の情報処理装置。
  5.  第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、
     前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、
    を備える、
     鍵生成装置。
  6.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、
     第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×K→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Kの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、
     前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、
    を備える、
     鍵生成装置。
  7.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、
     数rを生成する数生成部と、
     前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、
     第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、
     前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、
     前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、
     第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、
     前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、
    を備える、
     情報処理装置。
  8.  電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、
     v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、
     第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、
     前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、
     前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記部分選択部に異なる元vxを選択させ、前記異なる数vxを用いて前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、
     第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、
     前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、
    を備え、
     前記mは、n≧m+βの条件を満たし、
     前記βは、有限環Kの要素数qに対してq-β≪1の条件を満たす、
     情報処理装置。
  9.  電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、
     v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、
     第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、
     前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、
     前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記部分選択部に異なる元vxを選択させ、前記異なる数vxを用いて前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、
     第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、
     前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、
    を備え、
     前記写像fは、ox=(ox1,…,oxo),vx=(vx1,…,vxv)について、
     f(ox1,…,oxo,vx1,…,vxv) = L(vx1,…,vxv)(ox1,…,oxo)T + g(vx1,…,vxv)と表現され、
     前記Lは、L(vx1,…,vxv) = L1
    L2(vx1,…,vxv) L3と表現され、
     前記L、Lは、正則行列であり、
     前記Lは、vx,…,vxの関数lij(vx,…,vx)をi行j列の要素とし、対角成分を1とする上又は下三角行列である、
     情報処理装置。
  10.  前記第2の秘密多項式Sが恒等写像である、
     請求項7に記載の情報処理装置。
  11.  前記第2の秘密多項式Sが恒等写像である、
     請求項8に記載の情報処理装置。
  12.  前記第2の秘密多項式Sが恒等写像である、
     請求項9に記載の情報処理装置。
  13.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元xを含む電子署名σを生成する署名生成部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、
     前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、
    を備える、
     鍵生成装置。
  14.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成する第1データ生成部と、第1の秘密多項式Tの逆変換T-1により、前記第1データ生成部にて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記第1データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Kの元x及び前記数生成部にて生成された数rを含む電子署名σを生成する署名生成部と、を有する署名生成装置から、
     前記第1の秘密多項式T、前記写像f、前記第2の秘密多項式Sで構成される合成写像Fの情報と、前記電子署名σと、前記電子データMとを取得する取得部と、
     前記電子署名σに含まれる数r、及び前記電子データMを用いて有限環Kの元y1を生成する第2データ生成部と、
     前記電子署名σに含まれる有限環Kの元xを前記合成写像Fに適用して有限環Kの元y2を生成する第3データ生成部と、
     前記第2データ生成部にて生成された有限環Kの元y1と、前記第3データ生成部にて生成された有限環Kの元y2とが一致するか否かを検証する検証部と、
    を備える、
     署名検証装置。
  15.  第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、
     前記第1逆変換ステップにて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出ステップと、
     前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、
     前記要素選択ステップにて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換ステップと、
    を含む、
     情報処理方法。
  16.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択ステップと、
     第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、
     前記第1逆変換ステップにて得られた有限環Kの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択ステップにて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×K→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出ステップと、
     前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、
     前記要素選択ステップにて選択された要素Xを有限環Kの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換ステップと、
    を含む、
     情報処理方法。
  17.  v個の数で構成される元を含む有限環Kの元vxを選択する部分要素選択ステップと、
     数rを生成する数生成ステップと、
     前記数生成ステップにて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kの元yを生成するデータ生成ステップと、
     第1の秘密多項式Tの逆変換T-1により、前記データ生成ステップにて生成された有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、
     前記第1逆変換ステップにて得られた有限環Kの元y’、及び前記部分要素選択ステップにて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:K→K,n=o+v)の原像の要素ox∈{Z∈K|f(Z,vx)=y’}を算出する要素算出ステップと、
     前記原像の要素が存在する場合には前記要素算出ステップにて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成ステップにより異なる数rを生成させ、前記異なる数rを用いて前記データ生成ステップ、前記第1逆変換ステップ、及び前記要素算出ステップの処理により算出された前記原像の要素oxを選択する要素選択ステップと、
     第2の秘密多項式Sの逆変換S-1により、前記要素選択ステップにて選択された要素oxを含む前記有限環K(n=o+v)の元x’=(ox,vx)を有限環Kの元xに変換する第2逆変換ステップと、
     前記第2逆変換ステップにて得られた有限環Kの元xを含む電子署名σを生成する署名生成ステップと、
    を含む、
     署名生成方法。
  18.  第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Kの元yを有限環Kの元y’に変換する第1逆変換ステップと、
     前記第1逆変換ステップにて得られた有限環Kの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出ステップと、
     前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、
     前記要素選択ステップにて選択された要素Xを有限環Kの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kの元x’を有限環Kの元xに変換する第2逆変換ステップと、
    をコンピュータに実行させるためのプログラム。
     
PCT/JP2010/066312 2009-11-19 2010-09-21 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム WO2011061994A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP10831393A EP2503729A1 (en) 2009-11-19 2010-09-21 Information processing device, key generating device, signature verifying device, information processing method, signature generating method, and program
BR112012011220A BR112012011220A2 (pt) 2009-11-19 2010-09-21 aparelho e método de processamento de informação, aparelho de geração de chave, aparelho de verificação de assinatura, método de geração de assinatura , e, programa
RU2012119502/08A RU2012119502A (ru) 2009-11-19 2010-09-21 Устройство обработки информации, устройство генерирования ключа, устройство проверки электронной подписи, способ обработки информации, способ генерирования электронной подписи и программа
US13/510,843 US8675867B2 (en) 2009-11-19 2010-09-21 Key generation algorithm using secret polynomial over finite ring and transformation
CN2010800514096A CN102640451A (zh) 2009-11-19 2010-09-21 信息处理设备、密钥生成设备、签名验证设备、信息处理方法、签名生成方法和程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-264242 2009-11-19
JP2009264242A JP2011107528A (ja) 2009-11-19 2009-11-19 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2011061994A1 true WO2011061994A1 (ja) 2011-05-26

Family

ID=44059479

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/066312 WO2011061994A1 (ja) 2009-11-19 2010-09-21 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム

Country Status (7)

Country Link
US (1) US8675867B2 (ja)
EP (1) EP2503729A1 (ja)
JP (1) JP2011107528A (ja)
CN (1) CN102640451A (ja)
BR (1) BR112012011220A2 (ja)
RU (1) RU2012119502A (ja)
WO (1) WO2011061994A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420691A (zh) * 2011-12-16 2012-04-18 河海大学 基于证书的前向安全签名方法及系统
CN112154495A (zh) * 2018-05-25 2020-12-29 日本电信电话株式会社 秘密批量近似系统、秘密计算装置、秘密批量近似方法、以及程序

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086854B2 (en) * 2008-04-01 2011-12-27 Apple Inc. Content protection information using family of quadratic multivariate polynomial maps
TW201351195A (zh) 2012-03-02 2013-12-16 Sony Corp 演算裝置、控制方法、及程式
CN103200001B (zh) * 2013-03-27 2016-05-25 武汉大学 一种多变量公钥加密方法
CN103490897B (zh) * 2013-09-17 2017-04-05 华南理工大学 一种多变量公钥签名/验证系统及签名/验证方法
WO2016164496A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
DE102015217724A1 (de) * 2015-09-16 2017-03-16 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Erstellen einer asymmetrischen Prüfsumme
CN109150506B (zh) * 2017-06-19 2021-12-10 深圳职业技术学院 一种彩虹签名的侧信道分析方法及装置
CN109981296A (zh) * 2019-04-03 2019-07-05 王晓兰 一种基于Rainbow的环签名方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0946333A (ja) * 1995-07-27 1997-02-14 Cp 8 Transac 暗号通信法
JP2005253107A (ja) * 1999-04-29 2005-09-15 Bull Cp 8 Sa 公開鍵を署名する方法とシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4575251B2 (ja) * 2005-07-25 2010-11-04 株式会社東芝 デジタル署名生成装置、デジタル署名検証装置、デジタル署名生成方法、デジタル署名検証方法、デジタル署名生成プログラム及びデジタル署名検証プログラム
JP4865282B2 (ja) * 2005-09-09 2012-02-01 キヤノン株式会社 画像処理装置の制御方法、画像処理装置、プログラムコード及び記憶媒体

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0946333A (ja) * 1995-07-27 1997-02-14 Cp 8 Transac 暗号通信法
JP2005253107A (ja) * 1999-04-29 2005-09-15 Bull Cp 8 Sa 公開鍵を署名する方法とシステム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CORON, J.-S.: "Optimal security proofs for PSS and other signature schemes", CRYPTOLOGY EPRINT ARCHIVE, REPORT 2001/062, 13 August 2001 (2001-08-13), XP008153216 *
JACQUES PATARIN: "Asymmetric Cryptography with a Hidden Monomial", CRYPTO, vol. 4, 1996, pages 5 - 60
PATARIN, J. ET AL.: "QUARTZ, 128-Bit Long Digital Signatures", LECTURE NOTES IN COMPUTER SCIENCE, 23 April 2001 (2001-04-23), pages 282 - 297, XP008153513 *
PATARIN, J.; COURTOIS, N.; GOUBIN, L.: "Topics in Cryptology - CT-RSA 2001", vol. 2020, SPRINGER-VERLAG, article "QUARTZ, 128-Bit Long Digital Signatures", pages: 282 - 297

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420691A (zh) * 2011-12-16 2012-04-18 河海大学 基于证书的前向安全签名方法及系统
CN102420691B (zh) * 2011-12-16 2014-04-16 河海大学 基于证书的前向安全签名方法及系统
CN112154495A (zh) * 2018-05-25 2020-12-29 日本电信电话株式会社 秘密批量近似系统、秘密计算装置、秘密批量近似方法、以及程序
CN112154495B (zh) * 2018-05-25 2024-04-26 日本电信电话株式会社 秘密批量近似系统及方法、秘密计算装置、记录介质

Also Published As

Publication number Publication date
RU2012119502A (ru) 2013-11-20
US8675867B2 (en) 2014-03-18
JP2011107528A (ja) 2011-06-02
US20120233704A1 (en) 2012-09-13
CN102640451A (zh) 2012-08-15
BR112012011220A2 (pt) 2016-04-05
EP2503729A1 (en) 2012-09-26

Similar Documents

Publication Publication Date Title
WO2011061994A1 (ja) 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム
Ding et al. Complete attack on RLWE key exchange with reused keys, without signal leakage
JP5419056B2 (ja) Cartier対形成の暗号化適用
Herranz Deterministic identity-based signatures for partial aggregation
CN103748832A (zh) 签名验证设备、签名验证方法、程序和记录介质
US20070076865A1 (en) Hashing byte streams into elements of the Shafarevich-Tate group of an abelian variety
CN102263639A (zh) 认证装置、认证方法、程序和签名生成装置
US10461923B2 (en) Multivariate signature method for resisting key recovery attack
WO2011148902A1 (ja) 匿名認証システム、ユーザ装置、検証装置、匿名認証方法および匿名認証プログラム
WO2006115021A1 (ja) 署名生成装置及び署名検証装置
Chen et al. Identity-based signature schemes for multivariate public key cryptosystems
CN115664675B (zh) 基于sm2算法的可追踪环签名方法、系统、设备及介质
CN101877639A (zh) 信息处理设备、密钥更新方法和程序
US20100046745A1 (en) Encrypting apparatus, decrypting apparatus, cryptocommunication system, and methods and computer program products therefor
CN116346328A (zh) 一种数字签名方法、系统、设备及计算机可读存储介质
Xin et al. Identity-based quantum designated verifier signature
CN110190957A (zh) 基于无证书的多变量广播多重签名方法
Ding et al. Multivariate public-key cryptosystems
Stallings Digital signature algorithms
Chande et al. An improvement of a elliptic curve digital signature algorithm
JP2010087590A (ja) アグリゲート署名生成システム、アグリゲート署名生成方法、およびアグリゲート署名生成プログラム
CN112613078A (zh) 一种文档电子签名方法、验签方法及其装置
Valluri Digital signature scheme based on the conjugate twisted root extraction problem
Zhang et al. OGPADSM2: oriented-group public auditing for data sharing with multi-user modification
JP4176537B2 (ja) 匿名署名装置、署名検証装置、匿名署名方法、匿名署名プログラム及び署名検証プログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080051409.6

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10831393

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010831393

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012119502

Country of ref document: RU

Ref document number: 4185/CHENP/2012

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 13510843

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112012011220

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112012011220

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20120511