WO2011061994A1 - 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム - Google Patents
情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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/3249—Cryptographic 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
Description
= L(vx1,…,vxv)(ox1,…,oxo)T + g(vx1,…,vxv)と表現され、前記Lは、L(vx1,…,vxv) = L1 L2(vx1,…,vxv) L3と表現され、前記L1、L3は、正則行列であり、前記L2は、vx1,…,vxvの関数lij(vx1,…,vxv)をi行j列の要素とし、対角成分を1とする上又は下三角行列である、情報処理装置が提供される。
ここで、以下に記載する本発明の実施形態に関する説明の流れについて簡単に述べる。まず、図1~図4を参照しながら、trapdoor付き一方向性関数、及びこれを用いた電子署名方式について簡単に説明する。この中で、trapdoor付き一方向性関数の一例としてRSA関数を挙げ、その性質について述べると共にRSA関数を用いたFDH署名方式について簡単に説明する。また、図28を参照しながら、電子署名システムのシステム構成例について簡単に説明する。
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関数Ftのマイナス拡張方式
6:ハードウェア構成例
7:まとめ
まず、本発明の実施形態について説明するに先立ち、電子署名システムのシステム構成、電子署名方式に用いられるtrapdoor付き一方向性関数の性質、trapdoor付き一方向性関数に基づく電子署名方式の例(FDH署名方式、RSA署名方式)について簡単に説明する。
まず、図28を参照しながら、電子署名システムのシステム構成例について説明する。図28は、電子署名システムのシステム構成例を示す説明図である。例えば、図28に示すシステム構成に対し、後述する各種電子署名方式の演算アルゴリズムを具体的に適用することにより、その演算アルゴリズムに基づく電子署名システムが構築できる。
上記の署名生成アルゴリズムSig、及び署名検証アルゴリズムVerの機能は、trapdoor付き一方向性関数Ftを用いて実現される。trapdoor付き一方向性関数Ftは、図1に示すように、trapdoorを知らないと逆方向の演算結果(X=Ft -1(Y))を得るのが困難な関数である。つまり、(A)Ftの順方向の計算(Y=Ft(X))についてはtrapdoor無しで効率的に計算する計算アルゴリズムが存在するが、(B)Ftの逆方向の計算についてはtrapdoor無しで効率的に計算する計算アルゴリズムが存在しない。このような性質を有する関数Ftをtrapdoor付き一方向性関数と呼ぶ。
trapdoor付き一方向性関数Ftは、図2に示すような形で署名生成アルゴリズムSig、及び署名検証アルゴリズムVerに適用される。図2は、FDH署名方式と呼ばれる電子署名方式の概要を示した説明図である。FDH署名方式は、電子署名の生成に用いる入力値として、メッセージMの代わりにハッシュ値(Hash値)を利用する点に特徴がある。ハッシュ値Hは、ハッシュ関数(Hash関数)を利用して算出される。但し、ハッシュ値Hの生成処理(C)は、誰にでも実行可能である。
電子署名システムに利用されている代表的なtrapdoor付き一方向性関数Ftとして、例えば、RSA関数を挙げることができる。RSA関数Ftは、「大きな合成数に対する素因数分解(素因数分解問題)の計算量的な解答困難性」を逆方向演算が困難であることの根拠に置いている。p,q(p≠q)を素数、N=p*q、eをn-1との間で互いに素となる整数、dをd*e≡1(mod n)となる整数、ZNをmodulo Nの剰余環、RSA関数Ftは、下記の式(1)のように表現される。
Step.2:x∈{z|Ft(z)=y}を1つ選択
Step.3:電子署名σ=xを出力
まず、本発明に係る第1実施形態について説明する。上記の通り、HFE関数は、全単射性を有しないため、一様分布を持つ値を入力しても、一様分布を持つ値が出力されない(以下、非一様分布性)。本実施形態では、HFE関数の逆方句の計算アルゴリズムを改良し、分布特性を改善したHFE関数(以下、拡張HFE関数)を提供する。
拡張HFE関数について説明するに先立ち、HFE関数Ftの定義、及びHFE関数Ftの性質について簡単に説明する。
K:q個の数を含む元で構成される有限環
Kn:Kのn個の直積
Ft:Kn→Kn
A:有限環Kのn次拡大(要素数qn)
B:有限環Kのm次拡大(要素数qm)
φ:線形写像A→Kn(下記の式(2)を参照)
S:Kn上での可逆的アフィン変換(第1の秘密多項式の変換)
T:Kn上での可逆的アフィン変換(第2の秘密多項式の変換)
f:中央写像(下記の式(3)を参照)
trapdoor:S、T、aij、bi、c
HFE関数Ftは、変換Sによる写像、中央写像F(=φ-1*f*φ)、及び変換Tによる写像の合成写像Ft=T*F*Sにより表現される(この*は写像の合成)。そして、y=Ft(x)を計算するアルゴリズムは、次のようになる。
(Step.2)φ-1により、x’∈KnをX’∈Aに変換する。
(Step.3)中央写像fにより、X’∈AをY’=f(X’)∈Aに変換する。
(Step.4)φにより、Y’∈Aをy’=(y0’,…,yn-1’)∈Knに変換する。
(Step.5)変換Tにより、y’∈Knをy=(y0,…,yn-1)∈Knに変換する。
(Step.6)y∈Knを出力する。
HFE関数Ftに対する順方向の計算アルゴリズムは、与えられたx∈KnをHFE関数Ft(x)に代入してy=Ft(x)∈Knを得るステップにより構成される。この順方向の計算アルゴリズムに定義域の元xが1つ入力されると値域の元yが1つ出力される。
HFE関数Ftに関する逆方向の計算アルゴリズムは、次のStep.1~Step.7により構成される。
(Step.2)φ-1により、y’=(y0’,…,yn-1’)∈Knを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’=(x0’,…,xn-1’)∈Knに変換する。
(Step.6)変換Sの逆変換S-1により、x’∈Knをx=(x0,…,xn-1)∈Knに変換する。
(Step.7)x∈Knを出力する。
ここまでHFE関数Ftについて説明してきた。次に、HFE関数Ftを用いた電子署名方式(HFE署名方式)について説明する。但し、ここでは、HFE署名方式の一例として、HFE関数を用いたPFDH署名方式(HFE+PFDH署名方式)について説明する。
まず、PFDH署名方式における鍵生成アルゴリズムGen、署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。これらPFDH署名方式のアルゴリズムは、trapdoor付き一方向性関数Ft:A→B、ハッシュ関数H:{0,1}*→Bを利用する。
鍵生成アルゴリズムGenは、セキュリティパラメータを1λとし、署名鍵skをFtのtrapdoor tとし、検証鍵pkをFtとして(sk,pk)を計算する((sk,pk)←Gen(1λ))。
署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.4により電子署名σを計算する(σ←Sig(sk,M))。
(Step.2)y=H(M,r)∈Bを計算する。
(Step.3)trapdoor tを用いてFtの逆方向の計算アルゴリズムを実行し、y=Ft(x)となるxを算出する。但し、y=Ft(x)となるxが存在しない場合にはStep.1に戻る。
(Step.4)電子署名σ=(x,r)を出力する。
署名検証アルゴリズムVerは、検証鍵pk=Ft、メッセージM、電子署名σ=(x,r)を入力とし、次のStep.1、Step.2によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
(Step.2)Ft(x)=H(M,r)の場合に1を出力し、Ft(x)≠H(M,r)の場合に0を出力する。
FDH署名方式とPFDH署名方式との主な違いは、署名生成アルゴリズムSigにおいて乱数rを利用する点にある。このように、乱数rを利用することにより、同じメッセージMについて、trapdoor付き一方向性関数Ftの終域の元yを選び直すことができるようになる。FDH署名方式の場合、あるメッセージMのハッシュ値yに対し、y=Ft(x)となるxが存在しない場合、そのメッセージMの電子署名σを生成することができない。しかし、PFDH署名方式を用いれば、このようなFDH署名方式の問題点を解決することができる。
次に、HFE+PFDH署名方式における署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。HFE+PFDH署名方式は、HFE関数Ftを用いたPFDH署名方式である。なお、HFE+PFDH署名方式では、署名鍵skをHFE関数Ftのtrapdoor S,T,aij、bi、c、検証鍵pkをFtに設定する。
署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.9により電子署名σを計算する(σ←Sig(sk,M))。
(Step.2)乱数r、メッセージMを用いて、ハッシュ値y∈Kn←H(M,r)を計算する。
(Step.3)y=(y0,…,yn-1)∈Knを変換Tの逆変換T-1に適用してy’=(y0’,…,yn-1’)∈Knを得る。
(Step.4)φ-1により、y’=(y0’,…,yn-1’)∈Knを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’=(x0’,…,xn-1’)∈Knに変換する。
(Step.8)変換Sにより、x’∈Knをx=(x0,…,xn-1)∈Knに変換する。
(Step.9)電子署名σ=(x,r)を出力する。
署名検証アルゴリズムVerは、検証鍵pk=Ft、メッセージM、電子署名σ=(x,r)を入力とし、次のStep.1~Step.3によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
(Step.2)電子署名σに含まれるx∈KnをHFE関数Ft(x)に代入して、y”=Ft(x)∈Knを計算する。
(Step.3)y=y”ならば1を出力し、y≠y”ならば0を出力する。
HFE+PFDH署名方式の場合、ある終域の元に対するHFE関数Ftの原像が要素を持たないことがある。そのため、図6に示すように、HFE関数Ftの終域と値域とは一致しない。しかし、HFE+PFDH署名方式の場合、同じメッセージMに対してHFE関数Ftの終域の元yを選択し直すことができるため、任意のメッセージMに対して電子署名σを付加することができる。図6の例では、メッセージMに対し、y(e)=H(M,r(e))は、HFE関数Ftの値域に含まれない。そのため、この場合には乱数rが再び生成され、異なる乱数rを用いてハッシュ値yが生成される。
この点について、図7を参照しながら、より詳細に説明する。図7は、HFE関数Ftの終域に含まれる元y(1),…,y(5)が同じ確率(1/5)で選択された場合に、選択された元に対するHFE関数Ftの原像の元x(1),…,x(5)が出現する確率を示している。図7の例において、x(1)、x(2)は、HFE関数Ftによりy(2)に移るものとする。また、x(3)、x(4)、x(5)は、HFE関数Ftによりy(4)に移るものとする。さらに、y(1)、y(3)、y(5)は、HFE関数Ftに関する原像の要素が存在しないものとする。
まず、図14を参照しながら、HFE+PFDH署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図14は、HFE+PFDH署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
次に、図15を参照しながら、HFE+PFDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図15は、HFE+PFDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
次に、図29を参照しながら、HFE+PFDH署名方式の安全性証明について簡単に考察する。HFE+PFDH署名方式の安全性証明は、通常、図29に示すようなシミュレーションにより行われる。このシミュレーションの中で、Signing oracleシミュレーションのStep.1に問題がある。Signing oracleシミュレーションのStep.1では、ランダムに終域の元を選択することにより、選択された元に対するHFE関数Ftの原像の元xjがランダムに選択されることになっている。しかし、終域の元をランダムに選択したとしても、HFE関数Ftの非一様分布性により原像の元がランダムに選択されない。従って、HFE署名方式は、選択文書攻撃に対する安全性が保証されない。
そこで、本件発明者は、HFE関数Ftの逆方向の計算アルゴリズムを改良し、一様な分布を持つ終域の元を入力した場合に、入力した元に対する原像の元が一様に分布するようなtrapdoor付き一方向性関数Ft(拡張HFE関数Ft)を考案した。以下、拡張HFE関数Ftを用いた電子署名方式(拡張HFE署名方式)について説明する。
拡張HFE署名方式は、上記のHFE+PFDH署名方式の拡張(以下、拡張A)である。拡張HFE署名方式は、上記のHFE署名方式の署名生成アルゴリズムの中で、中央写像fに関して、ある終域の元に対する原像の元xを1つ選択する際に、その要素数αに比例した確率pで原像の元xを1つ選択する点に特徴がある。つまり、拡張HFE署名方式では、ある終域の元yに対し、中央写像fに関する原像が要素xを持つ場合でも、確率(1-p)で元yの取り直し処理が行われる。このように、終域の元yに対する原像の要素数αに比例した確率pを導入することで、原像の元xの出現頻度は全て同じになる。以下、拡張HFE署名方式について詳細に説明する。
拡張HFE署名方式に係る署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.9により電子署名σを計算する(σ←Sig(sk,M))。但し、署名鍵skはFtのtrapdoor S,T,aij、bi、c、検証鍵pkはFtである。また、各記号の定義はHFE+PFDH署名方式の説明で用いた定義と同じである。
(Step.2)乱数r、メッセージMを用いて、ハッシュ値y←H(M,r)を生成する。
(Step.3)y=(y0,…,yn-1)∈Knを変換Tの逆変換T-1に適用してy’=(y0’,…,yn-1’)∈Knを得る。
(Step.4)φ-1により、y’=(y0’,…,yn-1’)∈Knを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’=(x0’,…,xn-1’)∈Knに変換する。
(Step.8)変換Sにより、x’∈Knをx=(x0,…,xn-1)∈Knに変換する。
(Step.9)電子署名σ=(x,r)を出力する。
まず、図18を参照しながら、拡張HFE署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図18は、拡張HFE署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
次に、図19を参照しながら、拡張HFE署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図19は、拡張HFE署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
拡張HFE署名方式の安全性証明は、例えば、reductionアルゴリズムと呼ばれるシミュレーションを利用して行うことができる。図29に示したHFE+PFDH署名方式の安全性証明に関する説明で触れたように、HFE+PFDH署名方式の場合、Signing oracleシミュレーションの中で、ランダムに与えられた終域の元に対し、HFE関数Ftの原像の元xjがランダムに選択されないことが選択文書攻撃に対する安全性を保証できない原因であった。しかし、拡張HFE署名方式の場合、拡張HFE関数Ftの一様分布性により、終域の元yをランダムに与えることにより、原像の元xjをランダムに選択することができる。従って、拡張HFE署名方式は、選択文書攻撃に対する安全性が保証される。
次に、本発明の第2実施形態について説明する。上記の第1実施形態では、HFE署名方式を拡張し、HFE関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張HFE署名方式を提案した。本実施形態では、OV関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張OV署名方式(第1拡張OV署名方式、第2拡張OV署名方式)を提案する。
拡張OV関数について説明するに先立ち、OV関数Ftの定義、及びOV関数Ftの性質について簡単に説明する。但し、ここでは簡単のため、OV関数Ftの終域の要素数をOil変数の要素数oを利用して設定している。
K:有限環
Ft:写像Kn→Ko
n:n=o+v
ox:ox=(ox1,…,oxo):Oil変数
vx:vx=(vx1,…,vxv):Vinegar変数
F:Kn→Ko、中央写像(下記の式(4)及び式(5)を参照)
S:Kn上での可逆的アフィン変換(第1の秘密多項式の変換)
T:Ko上での可逆的アフィン変換(第2の秘密多項式の変換)
trapdoor:S、T、aij,bij,ci,di,e
OV関数Ftは、変換Sによる写像、中央写像F、及び変換Tによる写像の合成写像Ft=T*F*Sにより表現される(この*は直積)。そして、y=Ft(x)を計算するアルゴリズムは、次のようになる。
(Step.2)中央写像F(ox1,…,oxo,vx1,…,vxv)により、ov=(ox1,…,oxo,vx1,…,vxv)をy’=(y1’,…,yo’)∈Koに変換する。
(Step.3)変換Tにより、y’∈Koをy=(y1,…,yo)∈Koに変換する。
(Step.4)y∈Koを出力する。
OV関数Ftに対する順方向の計算アルゴリズムは、与えられたx∈KnをOV関数Ftに代入してy=Ft(x)∈Koを得るステップにより構成される。この順方向の計算アルゴリズムに定義域の元xが1つ入力されると、値域の元yが1つ出力される。
OV関数Ftは、Vinegar変数vxの集合をV、OV関数Ftの定義域をA1、終域をA2と表現すると、Ft:A1×V→A2,(x,vx)→Ft(x,vx)と表現することができる。このような表現を用いると、OV関数Ftの逆方向の計算アルゴリズムは、(S1)Vinegar変数vxの固定、(S2)Vinegar変数vxを固定した関数Ft(・,vx):A1→A1、x→F(x,vx)の計算という2ステップで実行される。より詳細には、OV関数Ftに関する逆方向の計算アルゴリズムは、次のStep.1~Step.5により構成される。
(Step.2)ランダムにVinegar変数vx=(vx1,…,vxv)∈Kvを選択する。
(Step.3)y’=(y1’,…,yo’)∈Ko、Vinegar変数vx∈Kvを用いて、F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)を満たすOil変数ox=(ox1,…,oxo)を計算する。但し、解が存在しない場合には、Step.2に戻り、Vinegar変数vxを選択し直す。
(Step.4)Oil変数ox∈Ko、Vinegar変数vx∈Kvで構成されるx’=(ox1,…,oxo,vx1,…,vxv)∈Knに変換Sの逆変換S-1を適用してx=(x1,…,xn)∈Knを得る。
(Step.5)x∈Knを出力する。
ここまでOV関数Ftについて説明してきた。次に、OV関数Ftを用いた電子署名方式(OV署名方式)について説明する。但し、ここでは、OV署名方式の一例として、OV関数を用いたFDH署名方式(OV+FDH署名方式)について説明する。
OV+FDH署名方式における署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。なお、OV+FDH署名方式では、署名鍵skをFtのtrapdoor S,T,aij,bij,ci,di,e、検証鍵pkをFtに設定する。
署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.6により電子署名σを計算する(σ←Sig(sk,M))。
(Step.2)y=(y1,…,yo)∈Koを変換Tの逆変換T-1に適用してy’=(y1’,…,yo’)∈Koを得る。
(Step.3)ランダムにVinegar変数vx=(vx1,…,vxv)∈Kvを選択する。
(Step.4)y’∈Ko、Vinegar変数vx∈Kvを用いて、F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)を満たすOil変数ox=(ox1,…,oxo)を計算する。但し、解が存在しない場合、Step.3に戻り、Vinegar変数を取り直す。
(Step.5)Oil変数ox∈Ko、Vinegar変数vx∈Kvで構成されるx’=(ox1,…,oxo,vx1,…,vxv)∈Knに変換Sの逆変換S-1を適用してx=(x1,…,xn)∈Knを得る。
(Step.6)電子署名σ=xを出力する。
署名検証アルゴリズムVerは、検証鍵pk=Ft、メッセージM、電子署名σ=xを入力とし、次のStep.1~Step.3によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
(Step.2)電子署名σに含まれるx=(x1,…,xn)∈KnをOV関数Ftに代入してy”を得る。
(Step.3)y=y”ならば1を出力し、y≠y”ならば0を出力する。
OV+FDH署名方式の場合、ある終域の元に対するOV関数Ftの原像が要素を持たないことがある。そのため、図10に示すように、OV関数Ftの終域と値域とは一致しない。また、OV関数Ftの逆方向の計算アルゴリズムは、ある終域の元に対する原像の要素が存在しない場合、Vinegar変数をランダムに選択し直す。しかし、Vinegar変数は、OV関数FtのOil変数oxに関する値域の大きさに依存する。そのため、Vinegar変数vxの取り方により、図10に示すように、OV関数Ftの値域の大きさが変わってしまう。
まず、図16を参照しながら、OV+FDH署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図16は、OV+FDH署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
次に、図17を参照しながら、OV+FDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図17は、OV+FDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
次に、図30を参照しながら、OV+FDH署名方式の安全性証明について簡単に考察する。OV+FDH署名方式の安全性証明は、通常、図30に示すようなシミュレーションにより行われる。このシミュレーションの中で、Random oracleシミュレーションのStep.2、及びSigning oracleシミュレーションのStep.1に問題がある。Random oracleシミュレーションのStep.2では、xjがランダムに選ばれていてもFt(xj)が一様に分布していない可能性がある。また、Signing oracleシミュレーションのStep.1では、(vj,xj)がランダムに選ばれることが仮定されているが、実際にはOV関数の値域の大きさがVinegar変数(ここではvj)に依存するため、(vj,xj)がランダムにならない。従って、HFE署名方式は、選択文書攻撃に対する安全性が保証されない。
そこで、本件発明者は、OV関数Ftの逆方向の計算アルゴリズムを改良し、一様な分布を持つ終域の元を入力した場合に、入力した元に対する原像の元が一様に分布するようなtrapdoor付き一方向性関数Ft(以下、第1拡張OV関数Ft)を考案した。以下、第1拡張OV関数Ftを用いた電子署名方式(以下、第1拡張OV署名方式)について説明する。
第1拡張OV署名方式に係る署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.7により電子署名σを計算する(σ←Sig(sk,M))。但し、署名鍵skはFtのtrapdoor S、T、aij,bij,ci,di,e、検証鍵pkはFtである。また、各記号の定義はOV+FDH署名方式の説明で用いた定義と同じである。
(Step.2)乱数rを生成する。
(Step.3)乱数r、メッセージMを用いて、ハッシュ値y∈K^o←H(r,M)を計算する。
(Step.4)y=(y1,…,yo)∈Koを変換Tの逆変換T-1に適用してy’=(y0’,…,yo’)∈Koを得る。
(Step.5)y’∈Ko、Vinegar変数vx∈Kvを用いて、F(ox1,…,oxo,vx1,…,vxv)=(y1,…,yo)を満たすOil変数ox=(ox1,…,oxo)を計算する。但し、解が存在しない場合には、Step.2に戻り、乱数rを取り直す。
(Step.6)Oil変数ox∈Ko、Vinegar変数vx∈Kvで構成されるx’=(ox1,…,oxo,vx1,…,vxv)∈Knに変換Sの逆変換S-1を適用してx=(x1,…,xn)∈Knを得る。
(Step.7)電子署名σ=(x,r)を出力する。
まず、図22を参照しながら、第1拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図22は、拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
次に、図23を参照しながら、第1拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図23は、拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
ここまでOV+FDH署名方式の非一様分布性を改善し、選択文書攻撃に対する安全性を保証できるようにした第1拡張OV署名方式について説明してきた。この第1拡張OV署名方式は、OV関数Ftの逆方向の計算アルゴリズムを工夫したものであった。ここでは、OV+FDH署名方式の非一様分布性を改善する他の工夫(以下、第2拡張OV署名方式)について述べる。
上記の説明においては、簡単のため、OV関数Ftの終域の要素数mをVinegar変数vxの要素数oと同じに設定していた。この設定(m=o)によると、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない確率は十分に大きい。しかし、mに対して下記の式(5)で表現される条件を課すことにより、解が存在しない確率を無視できる程度に小さくすることができる。但し、βは、Kの要素数qに対し、q-βが無視できる程度に小さい値(q-β≪1)とする。
また、次のように中央写像Fの構成を工夫することにより、Vinegar変数vxを固定した中央写像F(vx,・)の解が存在しない確率を無視できる程度に小さくすることができる。まず、下記の式(7)に示すm×n行列Lを用いて、下記の式(8)に示すように中央写像Fを表現する。また、行列L1、L2、L3を用いて、m×n行列Lを下記の式(9)のように表現する。行列L1、L3は正則行列である。また、L2は、vxの関数aij(vx)を要素とし、対角成分を1とする上三角行列又は下三角行列である。このような表現にすることで、任意のvxについてLが正則になる。なお、Lは、行列L2と同等の性質を持つ行列を複数用いて表現されていてもよい。
上記のような工夫を施したOV署名方式(第2拡張OV署名方式)の署名生成アルゴリズムSig、及び署名検証アルゴリズムVerは、以下のようになる。
K:有限環
Ft:写像Kn→Km
n:n=o+v
ox:ox=(ox1,…,oxo):Oil変数
vx:vx=(vx1,…,vxv):Vinegar変数
F:写像Kn→Km、中央写像(上記の式(10)及び式(11)を参照)
S:Kn上での可逆的アフィン変換(第1の秘密多項式の変換)
T:Km上での可逆的アフィン変換(第2の秘密多項式の変換)
図26を参照しながら、第2拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図26は、第2拡張OV署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
次に、図27を参照しながら、第2拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図27は、第2拡張OV署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
次に、本発明の第3実施形態について説明する。上記の第1実施形態では、HFE署名方式を拡張し、HFE関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張HFE署名方式を提案した。上記の第2実施形態では、OV署名方式を拡張子、OV関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な第1及び第2拡張OV署名方式を提案した。本実施形態は、HFE関数とOV関数とを組み合わせたHFEv関数の非一様分布性を改善して選択文書攻撃に対する安全性を保証することが可能な拡張HFEv署名方式(第1拡張HFEv署名方式、第2拡張HFEv署名方式)を提案する。
拡張HFEv関数について説明するに先立ち、HFEv関数Ftの定義、及びHFEv関数Ftの性質について簡単に説明する。上記の通り、HFEv関数Ftは、HFE関数とOV関数との組み合わせである。従って、図12に示すように、ある値域の元yに対して原像の要素数が複数存在したり、全く存在しなかったりする。また、Vinegar変数vxの取り方によりHFEv関数Ftの値域の大きさが変わってしまう。こうした理由から、HFEv関数は入力と出力との間で分布の偏りがある。以下、HFEv関数について、より詳細に説明する。
Kn:要素数nの有限環
Ft:写像Kn→Km
n:n=o+v
ox:ox=(ox1,…,oxo):Oil変数
vx:vx=(vx1,…,vxv):Vinegar変数
f:A×Kv→A、中央写像(下記の式(12)を参照)
A:有限環Kのo次拡大(要素数q)
B:有限環Kのm次拡大(要素数q)
φo:線形写像A→Ko(下記の式(13)を参照)
φm:線形写像B→Km(下記の式(14)を参照)
S:Kn上での可逆的アフィン変換(第1の秘密多項式の変換)
T:Km上での可逆的アフィン変換(第2の秘密多項式の変換)
trapdoor:S、T、aij、bi(X2の関数)、c(X2の関数)
HFEv関数Ftは、変換Sによる写像、中央写像F(=φm -1*f*φo)、及び変換Tによる写像の合成写像Ft=T*F*Sにより表現される(この*は直積)。そして、y=Ft(x)を計算するアルゴリズムは、次のようになる。
(Step.2)φo -1により、ox’∈KoをX1’∈Aに変換する。X2’=vx∈Kvとする。
(Step.3)中央写像fにより、(X1’,X2’)∈A×KvをY’=f(X1’,X2’)∈Bに変換する。
(Step.4)φmにより、Y’∈Bをy’=(y1’,…,ym’)∈Kmに変換する。
(Step.5)変換Tにより、y’∈Kmをy=(y1,…,ym)∈Kmに変換する。
(Step.6)y∈Kmを出力する。
HFEv関数Ftに対する順方向の計算アルゴリズムは、与えられたx∈KnをHFEv関数Ft(x)に代入してy=Ft(x)∈Knを得るステップにより構成される。この順方向の計算アルゴリズムに定義域の元xが1つ入力されると、値域の元yが1つ出力される。
HFE関数Ftに関する逆方向の計算アルゴリズムは、次のStep.1~Step.8により構成される。
(Step.2)ランダムにvx’=(vx1’,…,vxv’)∈Kvを選択する。
(Step.3)φm -1により、y’=(y1’,…,ym’)∈KmをY’∈Bに変換する。また、vx∈KvをX2’∈Kvとする。
(Step.4)集合{Z∈A|f(Z,X2’)=Y’}を計算する。
(Step.5)集合{Z∈A|f(Z,X2’)=Y’}から1つの要素X1’を選択する。但し、集合{Z∈A|f(Z,X2’)=Y’}が空集合の場合、Step.2へ戻り、Vinegar変数vx’を選択し直す。なお、集合{Z∈A|f(Z,X2’)=Y’}は、例えば、X2’について多項式f(X1,X2’)-Y’を因数分解することにより求められる。
(Step.6)φoにより、X1’∈Aをox=(ox1,…,oxo)∈Koに変換し、x’=(ox1’,…,oxo’,vx1’,…,vxv’)を得る。
(Step.7)変換Sの逆変換S-1により、x’∈Knをx=(ox1,…,oxo,vx1,…,vxv)∈Knに変換する。
(Step.8)x∈Knを出力する。
ここまでHFEv関数Ftについて説明してきた。次に、HFEv関数Ftを用いた電子署名方式(HFEv署名方式)について説明する。但し、ここでは、HFEv署名方式の一例として、HFEv関数を用いたFDH署名方式(HFEv+FDH署名方式)について説明する。
HFEv+FDH署名方式における署名生成アルゴリズムSig、署名検証アルゴリズムVerについて説明する。なお、HFEv+FDH署名方式では、署名鍵skをFtのtrapdoor S,T,aij,bij,ci、検証鍵pkをFtに設定する。但し、aij∈A、bi,c:Kv→Aである。
署名生成アルゴリズムSigは、メッセージM、署名鍵skを入力とし、次のStep.1~Step.9により電子署名σを計算する(σ←Sig(sk,M))。
(Step.2)y=(y1,…,ym)∈Kmを変換Tの逆変換T-1に適用してy’=(y1’,…,ym’)∈Kmを得る。
(Step.3)ランダムにvx’=(vx1’,…,vxv’)∈Kvを選択する。
(Step.4)φm -1により、y’=(y1’,…,ym’)∈KmをY’∈Bに変換する。また、vx∈KvをX2’∈Kvとする。
(Step.5)集合{Z∈A|f(Z,X2’)=Y’}を計算する。
(Step.6)集合{Z∈A|f(Z,X2’)=Y’}から1つの要素X1’を選択する。但し、集合{Z∈A|f(Z,X2’)=Y’}が空集合の場合、Step.3へ戻り、Vinegar変数vx’を選択し直す。なお、集合{Z∈A|f(Z,X2’)=Y’}は、例えば、X2’について多項式f(X1,X2’)-Y’を因数分解することにより求められる。
(Step.7)φoにより、X1’∈Aをox=(ox1,…,oxo)∈Koに変換し、x’=(ox1’,…,oxo’,vx1’,…,vxv’)を得る。
(Step.8)変換Sの逆変換S-1により、x’∈Knをx=(ox1,…,oxo,vx1,…,vxv)∈Knに変換する。
(Step.9)電子署名σ=xを出力する。
署名検証アルゴリズムVerは、検証鍵pk=Ft、メッセージM、電子署名σ=xを入力とし、次のStep.1~Step.3によりメッセージMに対する電子署名σの正当性を検証する(0/1←Ver(pk,M,σ))。
(Step.2)電子署名σに含まれるx=(ox1,…,oxo,vx1,…,vxv)∈KnをOV関数Ftに代入してy”を得る。
(Step.3)y=y”ならば1を出力し、y≠y”ならば0を出力する。
上記の通り、HFEv関数Ftは、HFE関数とOV関数との組み合わせである。そのため、図13に示すように、(A)HFE関数の特性により、同じ終域の元yが与えられても、その元yに対する原像の要素数が1つにならない場合が生じてしまう。また、(B)OV関数の特性により、Vinegar変数vxの選び方により値域の大きさが異なるため、ある終域の元yに対する原像の元xに含まれるVinegar変数vxに応じて元xの出現確率が異なってしまう。そのため、HFEv署名方式は、選択文書攻撃に対する安全性を保証することができない。
まず、図16を参照しながら、HFEv+FDH署名方式の署名生成アルゴリズムSigによる処理の流れについて説明する。図16は、HFEv+FDH署名方式の署名生成アルゴリズムSigによる処理の流れを示す説明図である。
次に、図17を参照しながら、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図17は、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
次に、本発明の第3実施形態に係る第1拡張HFEv署名方式について説明する。第1拡張HFEv署名方式は、上記の拡張HFE署名方式と同様に、ある値域の元に対する原像の要素数に比例した確率でVinegar変数を選択し直す方法である。以下、図20、図21を参照しながら、第1拡張HFEv署名方式における署名生成アルゴリズムSig、及び署名検証アルゴリズムVerについて説明する。
図20に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S402)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S404)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S406)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Knから中央写像fの終域の元Y’∈Aを算出する(S408)。
次に、図21を参照しながら、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れについて説明する。図21は、HFEv+FDH署名方式の署名検証アルゴリズムVerによる処理の流れを示す説明図である。
次に、本発明の第3実施形態に係る第2拡張HFEv署名方式について説明する。第2拡張署名方式は、拡張HFE署名方式に関する拡張Aの工夫と、第1拡張OV署名方式に関する拡張Bの工夫とをHFEv署名方式に適用したものである。つまり、第2拡張HFEv署名方式は、ある値域の元に対する原像の要素数に比例した確率で値域の元を選択し直す方法である。以下、図24、図25を参照しながら、第2拡張HFEv署名方式における署名生成アルゴリズムSig、及び署名検証アルゴリズムVerについて説明する。
図24に示すように、まず、署名者10は、メッセージM、署名鍵skを用意し(S602)、署名生成アルゴリズムSigに入力する。次いで、署名生成アルゴリズムSigは、ランダムにVinegar変数vx=X2’を選択する(S604)。次いで、署名生成アルゴリズムSigは、乱数rを生成する(S606)。次いで、署名生成アルゴリズムSigは、メッセージM、乱数rを用いてハッシュ値y=H(M,r)を算出する(S608)。次いで、署名生成アルゴリズムSigは、変換Tの逆変換T-1に基づいてハッシュ値y∈Knから中央写像fの終域の元Y’∈Aを算出する(S610)。
図25に示すように、まず、検証者20は、メッセージM、電子署名σ=(M,r)、検証鍵pkを署名者10から取得し(S632)、署名検証アルゴリズムVerに入力する。次いで、署名検証アルゴリズムVerは、電子署名σに含まれる乱数r、及びメッセージMを用いてハッシュ値y=H(M,r)を算出する(S634)。次いで、署名検証アルゴリズムVerは、検証鍵pk(Ft)を用いてy”=Ft(x)を算出する(S636)。次いで、署名検証アルゴリズムVerは、y=y”ならば受理(1を出力)し、y≠y”ならば拒否(0を出力)する(S638)。
これまで、本発明に係る第1~第3実施形態について説明してきた。これらの実施形態は、あくまでも本発明に係る技術的思想を具体化した一例に過ぎず、本発明の適用範囲がこれらの例に限定されるものではない。例えば、上記説明においては、HFE署名方式、OV署名方式、HFEv署名方式、及びその派生形を例に挙げたが、これらに限定されず、他のMPKC署名方式へと応用することも可能である。もちろん、このような応用についても、上記実施形態の説明において言及した内容から想到可能な範囲、及び当業者が出願時の技術を参酌して想到可能な範囲については、当然のことながら、本発明に係る実施形態として、その技術的範囲に含まれる。
また、本発明の各実施形態に係る署名生成方法に対し、PSS(Probablistic Signature Scheme)を組み合わせてもよい。PSSは、PFDH方式において、電子署名σの一部から、乱数r又はその一部を生成する仕組みである。
また、上記の第2実施形態においては、簡単のために基本的なOV関数の構成を例示したが、多層型のOV関数(例えば、Rainbow署名方式のOV関数)に応用することもできる。多層型のOV関数は、次のようなステップでOil変数を逐次的に算出するアルゴリズムで構成される。
第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変数を算出する。
また、上記の第1実施形態においては、拡張HFE関数Ftを検証鍵pkとしたが、拡張HFE関数Ftの一部を検証鍵pkとする変形(以下、マイナス拡張方式)も可能である。例えば、拡張HFE関数Ftがn本の多項式を含む場合、その中からm本(m<n)の多項式を取り除いた(n-m)本の多項式が検証鍵pkとして検証者20に提供される。また、このような検証鍵pkを利用する場合、(n-m)個の要素を持つハッシュ値yを出力するハッシュ関数Hが用いられる。但し、n個の要素を持つハッシュ値yを出力するハッシュ関数Hの出力値から(n-m)個の要素以外の要素を無視する構成にしてもよい。
上記の鍵生成装置100、署名生成装置150、署名検証装置200が有する各構成要素の機能は、例えば、図31に示す情報処理装置のハードウェア構成を用いて実現することが可能である。つまり、当該各構成要素の機能は、コンピュータプログラムを用いて図31に示すハードウェアを制御することにより実現される。なお、このハードウェアの形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、PHS、PDA等の携帯情報端末、ゲーム機、接触式又は非接触式のICチップ、接触式又は非接触式のICカード、又は種々の情報家電がこれに含まれる。但し、上記のPHSは、Personal Handy-phone Systemの略である。また、上記のPDAは、Personal Digital Assistantの略である。
最後に、本発明の実施形態に係る技術内容について簡単に纏める。ここで述べる技術内容は、例えば、PC、携帯電話、携帯ゲーム機、携帯情報端末、情報家電、カーナビゲーションシステム等、種々の情報処理装置、或いは、非接触又は接触式のスマートカードやリーダ/ライタ等に対して適用することができる。
図18に示した拡張HFE署名方式の署名生成アルゴリズムは、図28に示した署名生成装置150により、例えば、図31に示すハードウェアを利用して実行されうる。図19に示した拡張HFE署名方式の署名生成アルゴリズムは、図28に示した署名検証装置200により、例えば、図31に示すハードウェアを利用して実行されうる。
150 署名生成装置
200 署名検証装置
Claims (18)
- 第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Knの元yを有限環Knの元y’に変換する第1逆変換部と、
前記第1逆変換部にて得られた有限環Knの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、
前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、
前記要素選択部にて選択された要素Xを有限環Knの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Knの元x’を有限環Knの元xに変換する第2逆変換部と、
を備える、
情報処理装置。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、
第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、
前記第1逆変換部にて得られた有限環Kmの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×Kv→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出部と、
前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、
前記要素選択部にて選択された要素Xを有限環Koの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、
を備える、
情報処理装置。 - 数rを生成する数生成部と、
前記数生成部にて生成された数r及び電子データMを用いて前記有限環Knの元yを生成するデータ生成部と、
前記データ生成部にて生成された有限環Knの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Knの元xを含む電子署名σを生成する署名生成部と、
をさらに備え、
前記署名生成部は、前記要素選択部にて例外値が出力された場合、前記数生成部により異なる数rを生成させ、前記データ生成部により前記異なる数rに基づいて生成された有限環Knの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Knの元xを含む電子署名σを生成する、
請求項1に記載の情報処理装置。 - 数rを生成する数生成部と、
前記数生成部にて生成された数r及び電子データMを用いて前記有限環Knの元yを生成するデータ生成部と、
前記データ生成部にて生成された有限環Knの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Knの元xを含む電子署名σを生成する署名生成部と、
をさらに備え、
前記署名生成部は、前記要素選択部にて例外値が出力された場合、前記数生成部により異なる数rを生成させ、前記データ生成部により前記異なる数rに基づいて生成された有限環Knの元yを前記第1逆変換部に入力し、前記第1逆変換部、前記要素算出部、前記要素選択部、及び前記第2逆変換部の処理により得られた前記有限環Knの元xを含む電子署名σを生成する、
請求項2に記載の情報処理装置。 - 第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Knの元yを有限環Knの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Knの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Knの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Knの元x’を有限環Knの元xに変換する第2逆変換部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、
前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、
を備える、
鍵生成装置。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、
第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kmの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×Kv→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出部と、前記原像の要素数αに比例した確率pで前記要素算出部にて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択部と、前記要素選択部にて選択された要素Xを有限環Koの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、
前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、
を備える、
鍵生成装置。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、
数rを生成する数生成部と、
前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kmの元yを生成するデータ生成部と、
第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、
前記第1逆変換部にて得られた有限環Kmの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:Kn→Ko,n=o+v)の原像の要素ox∈{Z∈Ko|f(Z,vx)=y’}を算出する要素算出部と、
前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、
第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、
前記第2逆変換部にて得られた有限環Knの元xを含む電子署名σを生成する署名生成部と、
を備える、
情報処理装置。 - 電子データMを用いて、m個の数で構成される元を含む有限環Kmの元yを生成するデータ生成部と、
v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、
第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、
前記第1逆変換部にて得られた有限環Kmの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:Kn→Ko,n=o+v)の原像の要素ox∈{Z∈Ko|f(Z,vx)=y’}を算出する要素算出部と、
前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記部分選択部に異なる元vxを選択させ、前記異なる数vxを用いて前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、
第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、
前記第2逆変換部にて得られた有限環Knの元xを含む電子署名σを生成する署名生成部と、
を備え、
前記mは、n≧m+βの条件を満たし、
前記βは、有限環Kの要素数qに対してq-β≪1の条件を満たす、
情報処理装置。 - 電子データMを用いて、m個の数で構成される元を含む有限環Kmの元yを生成するデータ生成部と、
v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、
第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、
前記第1逆変換部にて得られた有限環Kmの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:Kn→Ko,n=o+v)の原像の要素ox∈{Z∈Ko|f(Z,vx)=y’}を算出する要素算出部と、
前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記部分選択部に異なる元vxを選択させ、前記異なる数vxを用いて前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、
第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、
前記第2逆変換部にて得られた有限環Knの元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と表現され、
前記L1、L3は、正則行列であり、
前記L2は、vx1,…,vxvの関数lij(vx1,…,vxv)をi行j列の要素とし、対角成分を1とする上又は下三角行列である、
情報処理装置。 - 前記第2の秘密多項式Sが恒等写像である、
請求項7に記載の情報処理装置。 - 前記第2の秘密多項式Sが恒等写像である、
請求項8に記載の情報処理装置。 - 前記第2の秘密多項式Sが恒等写像である、
請求項9に記載の情報処理装置。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kmの元yを生成するデータ生成部と、第1の秘密多項式Tの逆変換T-1により、前記データ生成部にて生成された有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kmの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:Kn→Ko,n=o+v)の原像の要素ox∈{Z∈Ko|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Knの元xを含む電子署名σを生成する署名生成部と、を有する演算アルゴリズムで利用される、前記第1の秘密多項式T、前記第2の秘密多項式S、及び前記所定の多変数多項式の情報を含む秘密鍵を生成する秘密鍵生成部と、
前記第1の秘密多項式T、前記写像f、及び前記第2の秘密多項式Sで構成される合成写像Fの情報を含む公開鍵を生成する公開鍵生成部と、
を備える、
鍵生成装置。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択部と、数rを生成する数生成部と、前記数生成部にて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kmの元yを生成する第1データ生成部と、第1の秘密多項式Tの逆変換T-1により、前記第1データ生成部にて生成された有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換部と、前記第1逆変換部にて得られた有限環Kmの元y’、及び前記部分要素選択部にて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:Kn→Ko,n=o+v)の原像の要素ox∈{Z∈Ko|f(Z,vx)=y’}を算出する要素算出部と、前記原像の要素が存在する場合には前記要素算出部にて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成部により異なる数rを生成させ、前記異なる数rを用いて前記第1データ生成部、前記第1逆変換部、及び前記要素算出部の処理により算出された前記原像の要素oxを選択する要素選択部と、第2の秘密多項式Sの逆変換S-1により、前記要素選択部にて選択された要素oxを含む前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換部と、前記第2逆変換部にて得られた有限環Knの元x及び前記数生成部にて生成された数rを含む電子署名σを生成する署名生成部と、を有する署名生成装置から、
前記第1の秘密多項式T、前記写像f、前記第2の秘密多項式Sで構成される合成写像Fの情報と、前記電子署名σと、前記電子データMとを取得する取得部と、
前記電子署名σに含まれる数r、及び前記電子データMを用いて有限環Kmの元y1を生成する第2データ生成部と、
前記電子署名σに含まれる有限環Knの元xを前記合成写像Fに適用して有限環Kmの元y2を生成する第3データ生成部と、
前記第2データ生成部にて生成された有限環Kmの元y1と、前記第3データ生成部にて生成された有限環Kmの元y2とが一致するか否かを検証する検証部と、
を備える、
署名検証装置。 - 第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Knの元yを有限環Knの元y’に変換する第1逆変換ステップと、
前記第1逆変換ステップにて得られた有限環Knの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出ステップと、
前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、
前記要素選択ステップにて選択された要素Xを有限環Knの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Knの元x’を有限環Knの元xに変換する第2逆変換ステップと、
を含む、
情報処理方法。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択ステップと、
第1の秘密多項式Tの逆変換T-1により、m個の数で構成される元を含む有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換ステップと、
前記第1逆変換ステップにて得られた有限環Kmの元y’を有限環Kのm次拡大Aの元Yとみなし、前記元Y及び前記部分要素選択ステップにて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:A×Kv→B,Bは有限環Kのo次拡大)の原像の要素X∈{Z∈B|f(Z,vx)=Y}を算出する要素算出ステップと、
前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、
前記要素選択ステップにて選択された要素Xを有限環Koの元oxとみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換ステップと、
を含む、
情報処理方法。 - v個の数で構成される元を含む有限環Kvの元vxを選択する部分要素選択ステップと、
数rを生成する数生成ステップと、
前記数生成ステップにて生成された数r及び電子データMを用いて、m個の数で構成される元を含む有限環Kmの元yを生成するデータ生成ステップと、
第1の秘密多項式Tの逆変換T-1により、前記データ生成ステップにて生成された有限環Kmの元yを有限環Kmの元y’に変換する第1逆変換ステップと、
前記第1逆変換ステップにて得られた有限環Kmの元y’、及び前記部分要素選択ステップにて選択された元vxを用いて、所定の多変数多項式で表現される写像f(f:Kn→Ko,n=o+v)の原像の要素ox∈{Z∈Ko|f(Z,vx)=y’}を算出する要素算出ステップと、
前記原像の要素が存在する場合には前記要素算出ステップにて算出された前記原像の要素oxを選択し、前記原像の要素が存在しない場合には前記数生成ステップにより異なる数rを生成させ、前記異なる数rを用いて前記データ生成ステップ、前記第1逆変換ステップ、及び前記要素算出ステップの処理により算出された前記原像の要素oxを選択する要素選択ステップと、
第2の秘密多項式Sの逆変換S-1により、前記要素選択ステップにて選択された要素oxを含む前記有限環Kn(n=o+v)の元x’=(ox,vx)を有限環Knの元xに変換する第2逆変換ステップと、
前記第2逆変換ステップにて得られた有限環Knの元xを含む電子署名σを生成する署名生成ステップと、
を含む、
署名生成方法。 - 第1の秘密多項式Tの逆変換T-1により、n個の数で構成される元を含む有限環Knの元yを有限環Knの元y’に変換する第1逆変換ステップと、
前記第1逆変換ステップにて得られた有限環Knの元y’を有限環Kのn次拡大Aの元Yとみなし、前記元Yを用いて、所定の多変数多項式で表現される写像f(f:A→A)の原像の要素X∈{Z∈A|f(Z)=Y}を算出する要素算出ステップと、
前記原像の要素数αに比例した確率pで前記要素算出ステップにて算出された前記原像の要素Xを1つ選択し、確率(1-p)で例外値を出力する要素選択ステップと、
前記要素選択ステップにて選択された要素Xを有限環Knの元x’とみなし、第2の秘密多項式Sの逆変換S-1により、前記有限環Knの元x’を有限環Knの元xに変換する第2逆変換ステップと、
をコンピュータに実行させるためのプログラム。
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)
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)
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)
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4575251B2 (ja) * | 2005-07-25 | 2010-11-04 | 株式会社東芝 | デジタル署名生成装置、デジタル署名検証装置、デジタル署名生成方法、デジタル署名検証方法、デジタル署名生成プログラム及びデジタル署名検証プログラム |
JP4865282B2 (ja) * | 2005-09-09 | 2012-02-01 | キヤノン株式会社 | 画像処理装置の制御方法、画像処理装置、プログラムコード及び記憶媒体 |
-
2009
- 2009-11-19 JP JP2009264242A patent/JP2011107528A/ja active Pending
-
2010
- 2010-09-21 WO PCT/JP2010/066312 patent/WO2011061994A1/ja active Application Filing
- 2010-09-21 CN CN2010800514096A patent/CN102640451A/zh active Pending
- 2010-09-21 US US13/510,843 patent/US8675867B2/en not_active Expired - Fee Related
- 2010-09-21 RU RU2012119502/08A patent/RU2012119502A/ru unknown
- 2010-09-21 BR BR112012011220A patent/BR112012011220A2/pt not_active Application Discontinuation
- 2010-09-21 EP EP10831393A patent/EP2503729A1/en not_active Withdrawn
Patent Citations (2)
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)
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)
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 |