KR100676461B1 - Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of a message using specific prime factors - Google Patents
Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of a message using specific prime factors Download PDFInfo
- Publication number
- KR100676461B1 KR100676461B1 KR1020017009493A KR20017009493A KR100676461B1 KR 100676461 B1 KR100676461 B1 KR 100676461B1 KR 1020017009493 A KR1020017009493 A KR 1020017009493A KR 20017009493 A KR20017009493 A KR 20017009493A KR 100676461 B1 KR100676461 B1 KR 100676461B1
- Authority
- KR
- South Korea
- Prior art keywords
- value
- mod
- integer
- equal
- profile
- 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
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/388—Payment protocols; Details thereof using mutual authentication without cards, e.g. challenge-response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
- G06Q20/40975—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
-
- 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/3218—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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
아래의 파라미터들에 의해 검증이 제공된다. 즉, f>2인 f 소인수들 pi의 곱에 의해 형성되는 공개 모듈(module) n; 및 공개 지수 v ; 및 m>1 인 m개의 기수들 gi. 기수 gi는 두개의 식(1) 및 식(2): 즉, x2≡gi mod n 및 x2 ≡- gi mod n 이 정수 계수(modulo) n의 정수환(ring)에서 x로 풀릴 수 없도록, 및 Verification is provided by the following parameters. That is, an open module n formed by the product of f prime factors p i with f>2; And an open index v; And m radix g i with m> 1. Radix g i is the two formulas (1) and (2) released by x in other words, x 2 ≡g i mod n and x 2 ≡g i mod n is an integer coefficient (modulo) of n jeongsuhwan (ring) So that, and
식(3): 즉, 이 공개 지수 v가 v=2k이고, k는 보안 파라미터(security parameter)들인 경우, 정수 계수 n의 정수환에서 x로 풀릴 수 있도록된다.Equation (3): If this open index v is v = 2 k and k are security parameters, then it can be solved by x in the integer ring of integer coefficient n.
인증성, 검증, 무결성, 엔티티, GQ2, RSAAuthentication, Validation, Integrity, Entity, GQ2, RSA
Description
본 발명은 엔티티의 인증성, 메시지의 무결성 및(또는) 인증성을 검증하기 위해 고안된 방법, 시스템 및 장치의 기술분야에 관한 것이다.The present invention relates to the technical field of methods, systems and apparatus designed to verify the authenticity of an entity, the integrity and / or authenticity of a message.
EP 0 311 470 B1호(발명자; Louis Guillou와 Jean-Jacques Quisquater)는 상기 방법을 기재하고 있다. 이하, 상기 특허를 "GQ특허" 또는 "GQ방법"이라는 용어를 사용하여 참조할 것이며, 프랑스 텔레콤, TDF 와 Mathrizk사가 출원하고 발명자는 Louis Guillou 및 Jean-Jacques Quisquater인 본 출원과 동일자로 출원된, "GQ기술"의 새로운 개량형태인 "GQ2","GQ2발명" 또는 "GQ2 기법"이라 표현할 것이다. 상기 출원의 특징은 아래 상세한 설명에서 필요할 경우에 다시 언급할 것이다. EP 0 311 470 B1 (inventor; Louis Guillou and Jean-Jacques Quisquater) describes this method. The patent will now be referred to using the terms "GQ patent" or "GQ method", filed by France Telecom, TDF and Mathrizk and filed on the same day as the inventors of this application, Louis Guillou and Jean-Jacques Quisquater. A new variant of "GQ technology" will be described as "GQ2", "GQ2 invention" or "GQ2 technique". The features of this application will be mentioned again as needed in the detailed description below.
상기 GQ기법에 따르면, "신뢰받은 당국(trusted authority)"으로 알려진 엔티티는 "증인(witness)"라 하는 엔티티 각각에 동일성(identity)을 할당하고 그 RSA 서명을 연산한다. 개별화된 과정에서, 상기 신뢰받은 당국은 증인에 동일성 및 서명을 부여한다. 그런 후, 상기 증인은 "여기에 나의 동일성이 있음, 나는 그 RSA의 서명을 알아냈음" 이라고 선언한다. 상기 사실을 공개하지 않고, 상기 증인은 자신이 그 동일성의 RSA 서명을 알고 있음을 증명한다. 신뢰받은 당국에 의해 분배된 RSA 공개 식별키일지라도, "제어자(controller)"로 알려진 엔티티는 상기 식별키의 정보를 제공받지 않고, 상기 RSA서명이 상기 선언된 동일성과 일치하는지를 확인한다. 상기 GQ기법을 이용하는 메카니즘은 "정보의 전달없이" 이루어진다. 상기 GQ 기법에 따르면, 상기 증인은 신뢰받은 당국이 수많은 식별자를 서명하는데 사용하는 RSA 비밀키를 알지 못한다. According to the GQ technique, an entity known as a "trusted authority" assigns an identity to each entity called "witness" and computes its RSA signature. In the individualized process, the trusted authority gives witnesses identity and signature. The witness then declares, "Here is my identity, I have found the signature of the RSA." Without disclosing the fact, the witness certifies that he knows the RSA signature of the identity. Even if the RSA public identification key is distributed by a trusted authority, an entity known as a "controller" is not provided with the information of the identification key and verifies that the RSA signature matches the declared identity. The mechanism using the GQ technique is done "without information transfer". According to the GQ technique, the witness does not know the RSA secret key that a trusted authority uses to sign numerous identifiers.
상술된 GQ기법은 RSA기술을 이용한다. 그러나, RSA기법이 정확하게 계수 n의 인수분해에 의존하는 반면에, 이러한 의존성은 등가(equivalence)가 아니다. 즉, RSA기술을 구현하는 디지탈 서명의 다양한 표준에 대한 소위 승산 어택(multiplicative attack)에서 나타나는 것과 같이, 결코 등가와 관련없다.The GQ technique described above uses RSA technology. However, while the RSA technique depends precisely on the factorization of the coefficient n, this dependency is not equivalent. In other words, it is by no means equivalent, as is manifested in so-called multiplicative attacks against the various standards of digital signatures that implement RSA technology.
GQ2기법의 목적은 2가지이다. 하나는 RSA기법의 고유의 성능을 향상시키는 것이고, 다른 하나는 RSA기법의 본질적인 문제를 해결하는 것이다. GQ2 비밀키의 정보는 계수 n의 인수분해의 정보와 동등하다. 상기 트리플렛(triplet) GQ2에 대한 임의의 어택(attack)은 계수 n의 인수분해가 된다. 이경우 등가관계가 성립한다. 상기 GQ2기법을 이용함으로써, 서명 또는 자기인증 엔티티 및 제어 엔티티를 위해 상기 작업부하를 감소시킨다. 보안 및 성능의 관점에서 인수분해를 바람직하게 사용함으로써 상기 GQ2 기법은 RSA 기술의 단점을 극복할 수 있다.The purpose of the GQ2 technique is twofold. One is to improve the inherent performance of the RSA technique, and the other is to solve the inherent problems of the RSA technique. The information of the GQ2 secret key is equivalent to the information of the factorization of the coefficient n. Any attack on the triplet GQ2 results in a factorization of coefficient n. In this case, an equivalence relationship is established. By using the GQ2 technique, the workload is reduced for signing or self-certifying entities and control entities. By preferably using factoring in terms of security and performance, the GQ2 technique can overcome the disadvantages of the RSA technique.
상기 GQ기법은 512비트 이상로 이루어진 수의 계수(modulo) 연산을 구현한다. 상기 연산은 216+1차수의 거듭제곱을 누승한 크기와 실질적으로 동일한 크기를 갖는 수와 관련되어 있다. 특히, 은행카드 분야에서, 현존하는 마이크로전자 하부구조는 연산 보조프로세서 없이 자체 프로그램 가능한 모노리식 마이크로 프로세서(monolithic self-programmable microprocessor)를 사용한다. 상기 GQ기법과 같은 방법에 속하는 다중 연산 애플리케이션과 관련된 작업부하는 계산시간을 야기하고, 이러한 계산시간은 어떤 경우에는 소비자가 구매시 은행카드를 사용하여 지불하는데 불편을 느끼게 된다. 여기서, 지불카드의 보안성을 향상시키는데 있어서, 은행당국이 해결하기 특별히 어려운 문제에 직면할 수 있다는 것을 생각해볼 수 있다. 실제로, 명백하게 모순되는 2가지 문제를 해결해야 한다. 즉, 한편으로는 각 카드에 점차 길고 명확한 키를 사용하여 보안성을 증가시키는 반면에, 다른 한편으로 그 작업부하로 인해 사용자에게 과도한 계산시간이 야기되지 않도록 해야한다. 존재하는 하부구조 및 존재하는 마이크로프로세서 구조에 주의하는 것이 또한 필요하므로 이러한 문제는 특히 심각한 문제가 된다.The GQ technique implements a modulo operation of a number of 512 bits or more. The operation is related to a number having a magnitude substantially equal to a power of 2 16 +1 powers. In particular, in the field of bank cards, existing microelectronic infrastructures use monolithic self-programmable microprocessors without computational coprocessors. Workload associated with multi-computation applications belonging to the same method as the GQ technique causes calculation time, which in some cases makes the consumer uncomfortable paying using a bank card at the time of purchase. It is conceivable here that, in improving the security of payment cards, banks may face problems that are particularly difficult to solve. Indeed, two obviously contradictory problems must be solved. That is, on the one hand, increasing the security by using increasingly long and clear keys on each card, while on the other hand, ensures that the workload does not cause excessive computation time for the user. This problem is particularly serious because it is also necessary to pay attention to existing infrastructure and existing microprocessor architectures.
GQ2 기법은 보안성을 높이는 반면에 이러한 문제의 해법을 제공한다. While the GQ2 technique increases security, it provides a solution to this problem.
GQ2 기법은 특별한 특성을 갖고 있는 소인수(factor)들을 사용한다. 이러한 소인수들을 제공하기 위한 이미 존재하는 다양한 기법들이 있다. 본 발명의 목적은 상기와 같은 소인수들의 계통적인 제공을 위한 방법에 있다. 또한 그 목적은 GQ2 기법의 사용에 있어서 이러한 인수들로 이루어질 수 있는 응용에 관계되는 것이다. 이러한 특별한 소인수 및 그들을 얻기 위해 사용되는 방법은 GQ2 기법의 분야에서 사용될 수 있다는 것이 강조된다. The GQ2 technique uses factors that have special characteristics. There are a variety of existing techniques for providing these prime factors. An object of the present invention is a method for the systematic provision of such prime factors. Its purpose also relates to applications that can be made with these arguments in the use of the GQ2 technique. It is emphasized that these particular prime factors and the method used to obtain them can be used in the field of GQ2 techniques.
본 발명은 컨트롤러 엔티티(entity)에서 아래와 같은 점들을 :The present invention addresses the following points in the controller entity:
- 엔티티의 인증성 및/또는 -The authenticity of the entity and / or
- 상기 엔티티와 연관되는 메시지 M의 무결성Integrity of message M associated with said entity
을 검증하기 위한 방법에 적용될 수 있는 것이다. It can be applied to the method for verifying
이러한 검증은 아래의 모든 또는 일부의 매개변수들 또는 그의 미분계수들에 의해 성립된다: 즉, This verification is established by all or some of the following parameters or their derivatives:
- f 개의 소인수들 p1,p2,...,pf (f는 2보다 크거나 같다.)의 곱에 의해 구성되는 공개 계수 n;a public coefficient n composed of the product of f prime factors p 1 , p 2 , ..., p f (f is greater than or equal to 2);
- 공개 지수(public exponent) v;Public exponent v;
- m개의 다른 정수 기수들 g1,g2,...,gm (m은 1보다 크거나 같다.)m different integer radix g 1 , g 2 , ..., g m (m is greater than or equal to 1)
상기 기수들 gi가 두개의 식(1) 및 식(2): 즉, x2≡gi mod n 및 x2 ≡- gi mod n 이 정수 계수(modulo) n의 정수환(ring)에서 x로 풀릴 수 없도록, 및 The radix gi is represented by two equations (1) and (2): that is, x 2 ≡g i mod n and x 2 i- g i mod n are integers in a ring of modulo n Unresolved, and
식(3): 즉, 이 정수 계수 n의 정수환에서 x로 풀릴 수 있도록 된다.Equation (3): It can be solved by x in the integer ring of this integer coefficient n.
본 발명에 따른 방법은 f 개의 소인수들 p1,p2,...,pf 를 생성하도록 사용되고, 그러한 것에 의해서 상기 식(1),(2) 및 (3)이 만족된다. 본 발명에 따른 방법은 The method according to the invention is used to generate f prime factors p 1 , p 2 ,..., P f , whereby the above formulas (1), (2) and (3) are satisfied. The method according to the invention
●m개의 다른 정수 기수들 g1,g2,...,gm ,M different integer radix g 1 , g 2 , ..., g m ,
●계수 n의 크기,The size of the coefficient n,
●f 개의 소인수들 p1,p2,...,pf 의 크기The magnitude of f prime factors p 1 , p 2 , ..., p f
를 우선 선택하는 단계로 구성된다. The first step is to select.
상기 방법은 상기 공개지수 v 가 v = 2k 형식을 갖고, k는 1보다 큰 보안 변수(security parameter)인 경우에 관련된다. 상기 보안 변수 k는 또한 소수로서 선택된다. 지수 v 의 특별한 값은 GQ2 기법의 필수적인 특징 중의 하나이다. The method relates to the case where the public index v has the format v = 2 k and k is a security parameter greater than one. The security variable k is also chosen as a prime number. The special value of the index v is one of the essential features of the GQ2 technique.
바람직하게는, m개의 다른 정수 기수들 g1,g2,...,gm 가 적어도 첫번째 정수들 일부 중에서 선택된다. 또한 바람직하게는, 인증 변수 k 는 특히 100 보다 작은, 작은 정수이다. 유리하게는, 계수 n의 크기는 수백 비트 보다 크다. 또한 f 개의 소인수들 p1,p2,...,pf 가 인수들의 개수 f에 의해 나누어지는 계수 n 의 크기에 가까운 크기를 갖는다.Preferably, m different integer radix g 1 , g 2 , ..., g m are selected from at least some of the first integers. Also preferably, the authentication variable k is a small integer, in particular less than 100. Advantageously, the magnitude of the coefficient n is greater than several hundred bits. In addition, f prime factors p 1 , p 2 , ..., p f have a size close to the size of the coefficient n divided by the number f of the factors.
본 발명에 따른 방법의 중요한 특성에 따르면, f 개의 소인수들 p1,p2,...,pf 는 어떠한 명시되지 않은 방법에서 선택되지는 않는다. f 개의 소인수들 p1,p2,...,pf 중에서, 그들중의 어떤 숫자가: 즉 e가 1 modulo(계수) 4 에 연관되어 선택된다. e는 0 이 될 수 있다. e 가 0이라면, 계수 n 은 이하에서 기준 계수(basic modulus) 라고 불린다. e > 0 이면, 계수 n 은 이하에서 조합된 계수(combined modulus)라고 불린다. f-e 개의 다른 소인수들이 3 modulo(계수) 4 에 연관되도록 선택된다. f-e 는 적어도 2와 같게 된다. According to an important feature of the method according to the invention, the f prime factors p 1 , p 2 ,..., P f are not selected in any unspecified method. Among the f prime factors p 1 , p 2 , ..., p f , any number of them is selected: e is associated with 1 modulo 4. e can be zero. If e is zero, then the coefficient n is referred to as a basic modulus hereinafter. If e> 0, then the coefficient n is called the combined modulus below. fe different prime factors are chosen to be associated with 3 modulo 4. fe is at least equal to two.
3 modulo(계수) 4 에 연관되는 f-e 개의 소인수들의 선택 Selection of f-e prime factors associated with 3 modulo 4
3 modulo(계수) 4 에 연관되는 f-e 개의 소인수들 p1,p2,...,pf-e 를 생성하기 위해, 아래의 단계가 사용된다: 즉,To generate fe prime factors p 1 , p 2 , ..., p fe related to 3 modulo 4, the following steps are used:
-3 modulo(계수) 4 에 연관되는 첫번째 소인수 p1 이 선택되고, 그리고나서,The first prime factor p 1 associated with -3 modulo 4 is selected, and then
- 두번째 소인수 p2가 기수 g1에 대하여 p1과 상보적이 되도록 선택된다. The second prime factor p 2 is chosen to be complementary to p 1 with respect to the base g 1 .
인수 pi+1 를 선택하기 위해, 두개의 경우로 구분되는 아래의 절차(procedure)가 사용된다. To select the argument p i + 1 , the following procedure, which is divided into two cases, is used.
(1) i > m 인 경우(1) if i> m
i > m 이면, 3 modulo(계수) 4 에 연관되는 인수 pi+1이 선택된다. If i> m, the factor p i + 1 associated with 3 modulo 4 is selected.
(2) i ≤m 인 경우(2) when i ≤ m
i ≤m 이면, i개의 첫번째 소인수들 p1에 대한 gi의 프로파일 (Profilei(gi))이 계산된다: 이는, If i ≤ m, the profile of g i for i first prime factors p 1 is calculated (Profile i (g i )):
●만약 Profilei(gi)이 플랫(flat) 하다면, 인수 pi+1은 pi+1이 gi에 대하여 p1과 상보적이 되도록 선택되고,If Profile i (g i ) is flat, the argument p i + 1 is chosen such that p i + 1 is complementary to p 1 for g i ,
●그렇지 않으면, i-1개의 기수들 g1,g2,...,gi-1 및 모든 그들의 승산 조합(multiplicative combinations)들 중에서, 이하에서 g라고 불리는 숫자가 Profilei(g) = Profilei(gi) 가 되도록 선택되고, 그리고나서 pi+1이 Profilei+1(gi) ≠Profilei+1(g)이 되도록 선택된다. Otherwise, of the i-1 radix g 1 , g 2 , ..., g i-1 and all of their multiplicative combinations, the number called g below is Profile i (g) = Profile i (g i ) is selected and then p i + 1 is selected to be Profile i + 1 (g i ) ≠ Profile i + 1 (g).
"상보적(complementary)", "프로파일(profile)" , "플랫 프로파일(flat profile)" 이라는 용어는 상세한 설명에서 정의되는 의미를 갖는다.The terms "complementary", "profile" and "flat profile" have the meanings defined in the detailed description.
마지막 소인수 pf-e를 선택하기 위해, 세가지 경우로 구분되는 아래의 절차가 사용된다. To select the last prime factor p fe , the following procedure is used, divided into three cases.
(1) f-e-1 > m 인 경우,(1) when f-e-1> m,
f-e-1 > m 인 경우, 3 modulo(계수) 4 에 연관되는 pf-e가 선택된다.If fe-1> m, p fe associated with 3 modulo 4 is selected.
(2) f-e-1 = m 인 경우,(2) when f-e-1 = m,
f-e-1 = m 인 경우, p1에서 pf-e-1 까지의 f-e-1 개의 첫번째 소인수들에 대한 Profilef-e-1(gm)이 계산된다.If fe-1 = m, Profile fe-1 (g m ) for the first fe-1 prime factors from p 1 to p fe-1 is calculated.
● 만약 Profilef-e-1(gm)이 플랫(flat) 하다면, 인수 pf-e-1은 gm 에 대하여 p1과 상보적이 되도록 선택되고,If Profile fe-1 (g m ) is flat, then the argument p fe-1 is chosen to be complementary to p 1 for g m ,
● 그렇지 않으면, 이하에서 규정하는 절차가 뒤따른다.● Otherwise, the procedure specified below will follow.
g1에서 gm-1까지의 m-1 기수들 및 모든 그들의 승산 조합(multiplicative combinations)들 중에서, 이하에서 g라고 불리는 숫자가 Profilei(g) = Profilei(gi) 가 되도록 선택되고, 그리고나서 pf-e 이 Profilef-e(g) ≠Profilef-e(gm)이 되도록 선택된다. Of the m-1 radix from g 1 to g m-1 and all their multiplicative combinations, the number called g below is selected such that Profile i (g) = Profile i (g i ), Then p fe is chosen to be Profile fe (g) ≠ Profile fe (g m ).
(3) f-e-1 < m 인 경우,(3) when f-e-1 <m,
f-e-1 < m 인 경우, pf-e 가 아래의 두가지 조건들을 만족하도록 선택된다. (3.1) 첫번째 상태When fe-1 <m, p fe is selected to satisfy the following two conditions. (3.1) First state
p1에서 pf-e-1 까지의 f-e-1 개의 첫번째 소인수들에 대한 Profilef-e-1(gf-e-1)이 계산되고, 두가지 경우가 고려된다. 이러한 두가지 경우들에 의해, 첫번째 상태는 달라지게된다. pOnePfe-1 Profile of f-e-1 first prime factors up tofe-1(gfe-1) Is calculated and two cases are considered. In these two cases, the first state is changed.
만약 Profilef-e-1(gf-e-1)이 플랫(flat) 하다면, 인수 pf-e은 gf-e-1 에 대 하여 p1과 상보적이 되는 첫번째 상태를 만족하도록 선택된다.(첫번째 경우에 의한 첫번째 상태) 그렇지 않으면, g1에서 gm-1까지의 f-e-1 기수들 및 모든 그들의 승산 조합(multiplicative combinations) 중에서, 이하에서 g라고 불리는 숫자가 Profilei(g) = Profilef-e-1(gf-e-1) 가 되도록 선택되고, 그리고나서 pf-e이 Profilef-e(g) ≠Profilef-e(gm)이 되도록 선택된다. ( 두번째 경우에 의한 첫번째 상태) If Profile fe-1 (g fe-1 ) is flat, the argument p fe is chosen to satisfy the first state that is complementary to p 1 for g fe-1 (the first state by the first case). ) Otherwise, of the fe-1 radix from g 1 to g m-1 and all of their multiplicative combinations, the number called g below is Profile i (g) = Profile fe-1 (g fe- 1 ), and then p fe is chosen to be Profile fe (g) ≠ Profile fe (g m ). (First state by second case)
(3.2) 두번째 상태(3.2) Second state
gf-e 부터 gm 까지의 모든 마지막 기수들 중에서, 그들의 프로파일 즉 Profilef-e-1(gi)이 플랫(flat)한 숫자가 선택되고, pf-e가 각각의 선택되는 기수들에 대하여 p1에 상보적이 되는 두번째 조건을 만족하도록 선택된다. (두번째 상태)Of all the last radixes from g fe to g m , a number whose flat, Profile fe-1 (g i ) is flat, is selected and p fe is complementary to p 1 for each selected radix. It is chosen to satisfy the second condition of being an enemy. (Second state)
1 modulo(계수) 4 에 연관되는 e 소인수의 선택Selection of the e prime factor associated with 1 modulo 4
1 modulo(계수) 4 에 연관되는 e 소인수를 생성하기 위하여, 아래의 두가지 연속되는 테스트에 의해 pf-e 에서 pf 까지의 각 소인수 후보값 p가 연산된다. In order to generate the e prime factors associated with 1 modulo 4, each prime factor value p from p fe to p f is computed by the following two consecutive tests.
(1) 첫번째 테스트(1) first test
르장드르 기호(Legendre symbol)가 후보 소인수 값 p에 관하여, g1 에서 gm 까지의 각 기수 gi에 대하여 계산되고,The Regendre symbol is calculated for each radix gi from g1 to gm with respect to the candidate prime factor value p,
●르장드르 기호가 -1 이라면, 후보값 p는 거절되고,If the genre symbol is -1, the candidate value p is rejected,
●르장드르 기호가 +1 이라면, 후보값 p의 연산은 다음 기수로 통과하고, 마 지막 기수가 고려되면, 두번째 테스트로 통과한다. If the genre symbol is +1, the operation of the candidate value p passes to the next radix and, if the last radix is considered, passes to the second test.
(2) 두번째 테스트(2) second test
정수 t 가 p-1이 2t에 의해 나누어지고 2t+1에 의해서는 나누어지지 않도록 계산되고, 그리고나서 정수 s가 s=(p-1+2t)/2t+1 이 되도록 계산된다. Is an integer t is divided into p-1 is by 2 t is calculated so that is not divided by 2 t + 1, then the integer s is calculated so that the s = (p-1 + 2 t) / 2 t + 1 .
키 <s,p> 가 결과치 r을 얻도록 각 공개 값 Gi에 적용되고 The key <s, p> is applied to each public value G i to get the result r
즉, r ≡Gi smod p 이다. That is, r ≡ G i s mod p.
만약 r 이 gi 또는 -gi 와 같다면, 두번째 테스트가 아래의 공개 값 Gi+1이 통과하도록 계속된다. If r equals g i or -g i , the second test continues to pass the public value G i + 1 below.
만약 r 이 gi 또는 -gi 와 다르다면, 인수 u 가 1 에서 t-2 까지의 범위의 인덱스 ii에서 특정되는 아래의 알고리즘의 적용하에서 계산된다. 상기 알고리즘은 두개의 변수들을 사용한다: 즉, 키 <(p-1)/2t,p> 를 CG(p)의 비 이차 잉여에 적용하는 것에 의해서 얻어지는 정수 b 뿐만아니라, r에 의해 초기화 되는 w 및 2 에서 2t-2 사이 값을 갖는 jj = 2ii 를 사용한다. 상기 알고리즘은 필요한 만큼 아래의 시퀀스를 반복하도록 구성된다: 즉,If r is different from g i or -g i , then the argument u is computed under the application of the following algorithm specified at index ii in the range 1 to t-2. The algorithm uses two variables: that is, initialized by r as well as the integer b obtained by applying the key <(p-1) / 2 t , p> to the non-secondary surplus of CG (p). Use jj = 2 ii with values between w and 2 to 2 t-2 . The algorithm is configured to repeat the following sequence as necessary:
●단계 1: w2/Gi(mod p) 가 계산되고. Step 1: w 2 / G i (mod p) is calculated.
●단계 2: 상기 결과를 2t-ii-1 의 거듭제곱을 한다. 두가지 경우가 고 려된다. Step 2: The result is raised to the power of 2 t-ii-1 . Two cases are considered.
첫번째 경우First case
+1 이 얻어지면, 다음 공개값 Gi+1로 통과하고 두번째 테스트가 상기 공개 값에서 행해진다.If +1 is obtained, then pass to the next public value Gi + 1 and a second test is done on that public value.
두번째 경우Second case
-1 이 얻어지면, jj = 2ii가 계산되고, 그리고나서 w는 wbjj(mod p)로 치환된다. 그리고나서 상기 알고리즘은 인덱스 ii를 갖는 다음 값으로 계속된다. If -1 is obtained, jj = 2 ii is calculated, then w is replaced by wb jj (mod p). The algorithm then continues with the next value with index ii.
상기 알고리즘의 끝에서, 변수 jj의 값은 jj = 2t-u의 관계에 의해 정수 u를 계산하도록 사용되고 t-u의 표현이 계산된다. 두가지 경우가 발생한다: 즉, At the end of the algorithm, the value of the variable jj is used to calculate the integer u by the relationship jj = 2 tu and the representation of tu is calculated. Two cases occur:
●t-u < k 이면, 후보값 p가 거절되고 If t-u <k, the candidate value p is rejected
●t-u > k 이면, 후보값 p의 연산은 다음 공개 값 Gi+1로 통과하면서 계속되고 두번째 테스트를 계속한다. If tu> k, the operation of candidate value p continues with passing to the next public value G i + 1 and continues with the second test.
두번째 테스트의 끝에서, 만약 모든 m 공개 값 Gi에서, 그것은 거절되지 않는다면, 후보값 p는 1 modulo(계수) 4 에 연관되는 소인수로서 채택된다. At the end of the second test, at all m public values G i , if it is not rejected, the candidate value p is taken as a prime factor associated with 1 modulo 4.
GQ2의 공개 및 비밀 값에의 적용.Application of GQ2 to Public and Secret Values.
본 발명은 또한 상술된 방법을 적용하는 그리고 특별한 특성값을 갖는 p1,p2,...,pf의 f 소인수를 생성는 것을 가능하게 하는 방법(GQ2 방법)에 연관된다; 상술된 방법의 적용을 위한 방법은 제어자 엔티티(controller entity)에게 The invention also relates to a method (GQ2 method) which makes it possible to apply the above-described method and to generate f prime factors of p 1 , p 2 , ..., p f with special characteristic values; The method for the application of the above-described method to the controller entity
- 엔티티의 인증성 또는(및)The authenticity of the entity or (and)
- 상기 엔티티와 관련된 메시지 M의 무결성을 검증하는 것이다. To verify the integrity of message M associated with the entity.
이러한 검증은 아래의 변수들 또는 이러한 변수들의 미분계수(derivative)들 모두 또는 일부에 의해서 행해진다: 즉, This verification is done by all or some of the following variables or their derivatives:
- m개 쌍의 비밀값 Q1,Q2,...,Qm 및 공개값 G1,G2,...,Gm (m은 1 이상임)와,m pairs of secret values Q 1 , Q 2 , ..., Q m and the public values G 1 , G 2 , ..., G m (m is 1 or more),
- f개의 소인수 p1,p2,...,pf의 곱에 의해 구성된 공개 계수 n(f는 2 이상임)과,-a public coefficient n (f is greater than or equal to 2) composed of the product of f prime factors p 1 , p 2 , ..., p f ,
- 공개지수 v 이다. -Public index v.
상기 계수, 상기 지수 및 상기 값은 Gi.Qi v ≡1 mod n 또는 Gi ≡Qi v mod n 의 식에 의해 연관된다. 상기 지수 v는 v=2k가 되며, 여기서, k가 1보다 큰 보안 파라미터(sequrity parameter)이다. The coefficient, the exponent and the value are G i .Q i v ≡1 mod n or G i It is related by the expression ≡Q i v mod n. The index v becomes v = 2 k , where k is a security parameter greater than one.
상기 공개값 Gi는 f개의 소인수 p1,p2,...,pf보다 작은 기수(base number) gi의 제곱 gi 2이며, 상기 기수 gi는, 두 식, x2 ≡gi mod n 및 x2 ≡- gi mod n이 정수 계수 n의 정수환에서 x로 풀릴 수 없게 하고, 식 xv ≡gi 2 mod n이 정수 계수 n의 정수환에서 x로 풀릴 수 있게 된다. The published value G i is the square g i 2 of base number g i less than f prime factors p 1 , p 2 , ..., p f , and the radix g i is two expressions, x 2 μg i mod n and x 2 ≡- g i mod n cannot be solved with x in the integer ring of integer coefficient n, and the expression x v ≡g i 2 mod n can be solved as x in the integer ring of integer coefficient n.
상기 방법은 증거(witness)라 하는 엔티티를 다음 단계에서 구현한다. 상기 증거는 f개 소인수 pi , 및/또는 소인수 및/또는 공개 계수 n의 차이니스 잉여의 파라미터, 및/또는 상기 m개의 비밀값 Qi , 및/또는 그 비밀값 Qi 및/또는 그 공개지수v의 f·m 개의 요소(component) Qi,j (Qi,j ≡Qi mod pj )를 구비한다.The method implements an entity called witness in the next step. The evidence shows that the parameters of Chinese surplus of f prime factors p i and / or prime factors and / or publication coefficients n and / or the m secret values Q i , and / or their secret values Q i and / or their disclosures F · m components Q i, j (Q i, j ≡ Q i mod p j ) of the exponent v are provided.
상기 증거는 정수 계수 n의 정수환에서 R ≡rv mod n의 연산을 실행하거나, Ri ≡ri v mod pi의 연산을 실행하고, 이어 차이니스 잉여 방법을 적용함 - 여기서, r은 0 < r < n이 되는 랜덤값이며, ri은 0 < ri < pi이 되는, 소수 Pi 와 관련된 랜덤값이고 각 ri는 랜덤값의 콜렉션 {r1,r2,...,ri}에 속함-으로써 공약(commitment) R 각각을 계산한다.The evidence is that R in the integer ring of integer coefficient n Vr v perform the operation of mod n, or R i 연산 r i v mod p i and then apply the difference surplus method-where r is a random value where 0 <r <n and r i is 0 <r i <p i , Compute each of the commitments R by a random value associated with the decimal P i and each r i belongs to a collection of random values {r 1 , r 2 , ..., r i }.
상기 증거는 각각 m개의 초기 챌린지(elementary challenge)라고 하는 정수 di를 포함한, 하나 이상의 챌린지 d을 수신하고, 그 증거는 각 챌린지 d에 기초하여 D ≡rㆍ Q1 d1ㆍQ2 d2ㆍ...ㆍQm dm mod n 의 연산을 실행하거나,Di ≡riㆍ Qi,1 d1ㆍQi,2 d2ㆍ...ㆍQi,m dm mod pi 의 연산을 실행하고, 이어, 차이니스 잉여 방법을 적용함으로써 응답 D를 계산한다.The evidence receives one or more challenges d, each including an integer d i called m initial challenges, the evidence being based on each challenge d, D? R Q 1 d 1 Q 2 d 2 . Q m dm Performs a mod n operation, or D i ≡ r i Q i, 1 d1 Q i, 2 d2 Q i, m dm Compute the response D by executing the operation of mod p i and then applying the Chinese excess method.
상기 방법은 상기 응답 D이 상기 챌린지 d와 상기 공약 R의 수와 동일한 수가 되도록 하여, 상기 R,d,D의 그룹은 {R,d,D}로 참조된 트리플릿을 형성하도록 한다. The method allows the response D to be equal to the number of the challenge d and the commitment R such that the group of R, d, D forms a triplet referred to as {R, d, D}.
바람직하게는, 상술된 바와 같이 비밀값 Q1,Q2,...,Qm 및 공개값 G1,G2,...,Gm 의 쌍들을 사용하기 위하여, 상기 방법은 소인수 p1,p2,...,pf 및/또는 차이니스 잉여들의 변수들, 기수 g1,g2,...,gm 및/또는 공개값 G1,G2,...,Gm 를,Preferably, the secret value as described above, Q 1, Q 2, ..., Q m and public values G 1, G 2, ..., in order to use a pair of G m, the method prime factors p 1 , p 2 , ..., p f and / or variables of Chinese surpluses, radix g 1 , g 2 , ..., g m and / or published values G 1 , G 2 , ..., G m To,
- Gi의 계수 n 의 k번째 제곱근을 추출하는 것에 의해, 또는 Gi의 계수 n의 k번째 제곱근의 인버스(inverse)를 취하는 것에 의해 비밀값 Q1,Q2,...,Qm 를 계산하기 위하여,Compute the secret values Q 1 , Q 2 , ..., Q m by extracting the kth square root of Gi's coefficient n or by taking the inverse of the kth square root of Gi's coefficient n for,
- 또는, 비밀값 Q1,Q2,...,Qm 의 f·m 개의 비밀 콤포넌트들 Qi,j가 Qi,j ≡Qi가(mod pj) 가 되도록 계산하기 위하여 사용한다. Or, it is used to calculate that f · m secret components Q i, j of secret values Q 1 , Q 2 , ..., Q m become Q i, j ≡Q i (mod pj).
보다 바람직하게는, 비밀값 Q1,Q2,...,Qm 의 fㆍm 개의 비밀 콤포넌트들 Qi,j More preferably, the f · m secret components Q i, j of secret values Q 1 , Q 2 , ..., Q m
를 계산하기 위하여:To calculate
- 키 <s,pj> 가 z ≡Gi smod pj 가 되도록 z를 계산하기 위하여 적용되고:-Is applied to compute z such that the key <s, p j > is z i i s mod p j :
- 및, t 및 u 값들이 사용된다. And t and u values are used.
상기 t 및 u 값들은 pj가 1 modulo(계수) 4 와 연관될 때 상기와 같이 계산된다. 상기 값들은 pj가 3 modulo(계수) 4 와 연관되는 1값(t=1) 및 0 값(u=0)에 각각 일치하게 취한다. The t and u values are calculated as above when p j is associated with 1 modulo 4. The values are taken such that p j corresponds to one value (t = 1) and zero value (u = 0) associated with 3 modulo 4.
만약 u가 0이면, zz가 z와 같거나 또는 zz가 z의 (mod pj)와 1에서 min(k,t) 까지의 ii범위의 단위원(unity)의 2ii-t2ii번째의 원시근(primitive root)들 각각과의 곱과 같아지도록 고려한다. If u is 0, zz is the same as z, or zz the z of (mod pj) and one in min 2 ii-t 2 ii-th circle of the (k, t) ii unit circle (unity) in the range up to Consider being equal to the product of each of the primitive roots.
만약 u가 양수이면, zz가 za의 (mod pj)와 단위원(unity)의 2k2k번째의 근들 각각과의 곱과 같아지도록 고려하고, za가 제10항에서 사용되는 알고리즘의 끝에서 변수 w의 값을 지정하게 된다.If u is positive, consider zz to be equal to the product of (mod pj) of za and each of the 2 k 2 k th roots of unitity, and at the end of the algorithm used in paragraph 10, This will specify the value of the variable w.
적어도 하나의 성분 값 Qi,j 는 그로부터 추론된다. 식 Gi ≡Qi v mod n 이 사용될 때 zz와 같아지고, 식 Gi.Qi v ≡1 mod n 이 사용될 때는 zz의 zz modulo(계수) pj의 인버스(inverse)와 같아진다. At least one component value Q i, j is deduced therefrom. Expression G i When iQ i v mod n is used, it is equal to zz, and when the equation G i .Q i v ≡1 mod n is used, it is equal to the inverse of zz modulo p j of zz.
도 1A 에서 1D 는 각각의 필드의 p-1 의 영이아닌(non-zero) 성분이 그 위치를 찾는 방향성 그래프에 의해 "CG(p) 의 제곱으로 승산" 기능을 도시한다. 즉 비이차 잉여들(non-qudratic residues)은 흰색이고 이차 잉여들(qudratic residues)은 검은색이며; 이차 잉여들 중에서 홀수 패리티 랭크 성분은 원으로 되어 있다. In FIG. 1A, 1D shows the "multiply by CG (p) square" function by a directional graph where the non-zero component of p-1 of each field finds its location. That is, the non-qudratic residues are white and the quadratic residues are black; Of the secondary surpluses, the odd parity rank component is a circle.
이러한 도면들은 각각 아래의 내용을 도시한다. Each of these figures shows the following.
- 도 1A: p가 3(mod 4)와 연관되는 경우;1A: p is associated with 3 (mod 4);
- 도 1B: p가 5(mod 8)와 연관되는 경우;1B: p is associated with 5 (mod 8);
- 도 1C: p가 9(mod 16)와 연관되는 경우;1C: p is associated with 9 (mod 16);
- 도 1D: p가 17(mod 32)와 연관되는 경우;1D: p is associated with 17 (mod 32);
GQ 기법의 목적은: 엔티티 및 메시지의 디지탈 서명 뿐 아니라 연관된 메시지들의 동적 인증성이다. The purpose of the GQ technique is: not only the digital signature of entities and messages, but also the dynamic authenticity of associated messages.
GQ 기법의 표준 버전은 RSA 기법을 사용하는 것이다. 그러나, RSA기법이 정확하게 계수 n의 인수분해에 의존하는 반면에, 이러한 의존성은 등가(equivalence)가 아니다. 즉, RSA기술을 구현하는 디지탈 서명의 다양한 표준에 대한 소위 승산 어택(multiplicative attack)에서 나타나는 것과 같이, 결코 등가와 관련없다.The standard version of the GQ technique is to use the RSA technique. However, while the RSA technique depends precisely on the factorization of the coefficient n, this dependency is not equivalent. In other words, it is by no means equivalent, as is manifested in so-called multiplicative attacks against the various standards of digital signatures that implement RSA technology.
GQ2의 기법에서, 본 발명은 동적 인증성 및 디지탈 서명을 제공하기 위하여 고안된 GQ2 키들의 세트들의 생성에 특히 관련된다. GQ2 기법은 RSA 기법을 사용하지는 않는다. 상기 목적은 두가지이다. 하나는 RSA기법의 고유의 성능을 향상시키는 것이고, 다른 하나는 RSA기법의 본질적인 문제를 해결하는 것이다. GQ2 비밀키는 계수 n의 인수분해이다. 상기 트리플렛(triplet) GQ2에 대한 임의의 어택(attack)은 계수 n의 인수분해의 합이다. 이경우 같은 점이 존재한다. 상기 GQ2기법을 이용함으로써, 서명 또는 자기인증 엔티티 및 제어 엔티티를 위해 상기 작업부하를 감소시킨다. 보안 및 성능의 관점에서 인수분해를 바람직하게 사용함으로써 상기 GQ2 기법은 RSA 기법에 필적하게 되는 것이다. In the technique of GQ2, the present invention is particularly concerned with the generation of sets of GQ2 keys designed to provide dynamic authentication and digital signature. The GQ2 technique does not use the RSA technique. The purpose is twofold. One is to improve the inherent performance of the RSA technique, and the other is to solve the inherent problems of the RSA technique. The GQ2 secret key is a factorization of the coefficient n. Any attack on the triplet GQ2 is the sum of the factorizations of the coefficients n. In this case, the same point exists. By using the GQ2 technique, the workload is reduced for signing or self-certifying entities and control entities. The preferred use of factoring in terms of security and performance makes the GQ2 technique comparable to the RSA technique.
상기 GQ2 기법은 예를 들면 기수라 불리고 gi에 쓰이는, m 개의 작은 정수들(m≥1)인, 하나 또는 그 이상의 1보다 작은 정수들을 사용한다. 그리고나서, 공개 검증 키 <v, n>가 아래와 같이 선택된다. 공개 검증 지수 v는 2k 이고, k는 1보다 큰 작은 정수이다.(k≥2) 공개 계수 n은 기수들 보다 큰 적어도 2개의 소인수(prime factor)의 곱인데, 이는 예를 들면 pj에 사용되는 f 개의 소인수(f≥2) p1,p2,...,pf를 말하는 것이다. 상기 f 소인수는 공개 계수 n이 g1 에서 gm 까지의 m 개의 기수 각각에 관하여 아래와 같은 특성을 갖도록 선택된다. The GQ2 technique uses one or more integers less than one, for example m small integers (m ≧ 1), called radix and used for gi. Then, the public verification key <v, n> is selected as follows. The open validation index v is 2 k and k is a small integer greater than 1 (k≥2). The open coefficient n is the product of at least two prime factors greater than the radix, for example p j . The f prime factors (f≥2) p 1 , p 2 , ..., p f are used. The f prime factor is selected such that the open coefficient n has the following characteristics with respect to each of the m radix from g1 to gm.
- 첫째로, 식(1) 및 식(2)는 정수 계수(modulo) n의 정수환(ring)에서 x로 풀릴 수 없는데, 이는 다시말하면, gi 및 -gi가 두개의 비(non) 이차 잉여( mod n)들 이라는 것이다. First, equations (1) and (2) cannot be solved for x in the integer ring of the modulo n, which means that g i and -g i are two non-secondary It's called mod n.
x2≡gi (mod n) (1)x 2 ≡g i (mod n) (1)
x2 ≡- gi ( mod n ) (2)x 2 ≡- g i (mod n) (2)
- 둘째로, 식(3)은 정수 계수 n의 정수환에서 x로 풀릴 수 있다. Second, equation (3) can be solved by x in the integer ring of integer coefficient n.
(3) (3)
이하에서, 이러한 특성들은 또한 GQ2 원리로 불린다. In the following, these properties are also called GQ2 principle.
공개 검증 키 <v,n>이 m ≥1 의 g1 에서 gm 까지의 기수에 따라 고정되기 때 문에, 각각의 기수 gi는 공개 값 Gi 및 비밀 값 Qi를 구성하는 한쌍의 GQ2 값, 즉 G1Q1 에서 GmQm 까지의 m개의 쌍을 결정한다. 공개 값 Gi
는 기수 gi의 제곱이고, Gi=gi
2 값을 부여한다. 비밀 값 Qi는 식(3)의 해 중의 하나이거나 상기와 같은 해의 인버스(mod n) 이다.
Since the public verification key <v, n> is fixed according to the base of g 1 to g m of m ≥ 1 , each base g i is a pair of GQ2 constituting the public value G i and the secret value Q i . Determine the value, that is, m pairs from G 1 Q 1 to G m Q m . The public value G i is the square of the base g i and gives the value G i = g i 2 . The secret value Q i is one of the solutions of equation (3) or an inverse (mod n) of such a solution.
계수 n이 f개의 소인수로 쪼개지는 것처럼, 정수 계수 n의 정수환은 CG(p1) 에서 CG(pf)까지의 f개의 갈루아 필드(Galois field)들로 쪼개진다. 아래는 CG(pj)의 식 (1),(2) 및 (3) 의 프로젝션(projection)들이다. Just as the coefficient n is split into f prime factors, the integer ring of integer coefficient n is split into f Galois fields from CG (p 1 ) to CG (p f ). Below are projections of equations (1), (2) and (3) of CG (pj).
x2≡gi (mod n) (1.a)x 2 ≡gi (mod n) (1.a)
x2 ≡- gi ( mod n ) (2.b)x 2 ≡- gi (mod n) (2.b)
(3.c) (3.c)
각 비밀 값 Qi는 소인수 하나당 한개, 즉 Qij ≡Qi (mod pj)의 f 개의 비밀 성분으로 표현될 수 있다. 각각의 비밀 성분 Qij는 식(3.a)에 대한 해 또는 상기와 같은 해의 인버스(mod pj) 이다. 각 식 (3.a)의 가능한 모든 해가 계산된 다음, 차이니스 잉여(Chinese remainder) 기법은 Qi,1에서 Qi,f 의 f 개의 요소들에 기초한 각각의 비밀 값 Qi의 가능한 값들을 만든다. 즉 Qi=차이니스 잉여(Qi,1,Qi,2,...,Qi,f)로 놓아 식(3)의 모든 가능한 해를 얻도록 한다. Each secret value Q i may be represented by one secret component of one prime factor, that is, f secret components of Q ij ijQ i (mod p j ). Each secret component Q ij is the solution to equation (3.a) or an inverse of such solution (mod p j ). After all possible solutions of each equation (3.a) have been computed, the Chinese remainder technique yields the possible values of each secret value Q i based on the f elements of Q i, 1 to Q i, f . Make them. In other words, let Q i = significant surplus (Q i, 1 , Q i, 2 , ..., Q i, f ) to obtain all possible solutions of equation (3).
다음은 상기 차이니스 잉여 기법이다. 0 < a < b가 되는 상호 소수(prime number) a와 b인 2개의 양수와, 0 내지 a-1 인 Xa와 0 내지 b-1인 Xb, 2개의 요소를 설정한다. X = 차이니스 잉여(Xa,Xb)을 결정하는 것이 필요하다. 즉, Xa ≡X(mod a)와 Xb ≡X(mod b)가 되는, 0에서 aㆍb - 1 까지의 유일수(unique number) X이다. 차이니스 잉여 파라미터는 α≡{b(mod a)}-1(mod a)이다. 차이니스 잉여 연산은 ε≡Xb(mod a); δ= Xa - ε; 만일 δ가 음이라면, δ는 δ+ a로 대신함; γ ≡ αㆍδ(mod a); X= γㆍb + Xb이다. The following is the Chinese surplus technique. 0 sets the <a <mutually prime number (prime number) a and b of the two positive and, from 0 to a-1 of X a and X b is from 0 to b-1, two factors that b. It is necessary to determine X = Chinese surplus (X a , X b ). That is, a ≡X X (mod a) and b ≡X X (mod b) is, in a 0 and b is - a yuilsu to 1 (unique number) X. The Chinese surplus parameter is α≡ {b (mod a)} −1 (mod a). The Chinese surplus operation is ε≡X b (mod a); δ = X a -ε; If δ is negative, δ replaces δ + a; γ ≡ α · δ (mod a); X = a and γ b + X b.
소인수를 최소인 p1에서 최대인 pf 까지의 오름순서로 배열할 때에, 상기 차이니스 잉여 파라미터는, 제1 차이니스 잉여 파라미터 α≡{p2 (mod p1)}-1(mod p1)이고, 제2 차이니스 잉여 파라미터 β≡{p1ㆍp2 (mod p3)}-1(mod p3)이며, 제i 차이니스 잉여 파라미터 λ≡{p1ㆍp2ㆍ...ㆍpi-1 (mod pi)}-1(mod pi) 등이다. 최종적으로, f-1 차이니스 잉여 연산에서, 제1 결과(mod p2 곱하기 p1)는 제1 파라미터로 얻을 수 있으며, 제2 결과(mod p1ㆍ p2 곱하기 p1)는 제2 파라미터로 얻을 수 있으며, 이러한 방법으로 결과(mod p1ㆍ...ㆍpf-1 곱하기 pf), 즉 (mod n)까지 얻을 수 있다. When arranging prime factors in ascending order from the smallest p 1 to the largest p f , the Chinese surplus parameter is the first Chinese surplus parameter α≡ {p 2 (mod p 1 )} −1 (mod p 1). ), And the second difference residual parameter β≡ {p 1 · p 2 (mod p 3 )} −1 (mod p 3 ), and the i difference coefficient surplus parameter λ≡ {p 1 · p 2 . P i-1 (mod p i )} -1 (mod p i ) and the like. Finally, in the f-1 difference surplus operation, the first result (mod p 2 times p 1 ) can be obtained as the first parameter, and the second result (mod p 1 · p 2 times p 1 ) is obtained as the second parameter. In this way, the result (mod p 1 ... P f-1 times p f ), i.e. (mod n), can be obtained.
본 발명의 목적은 모든 가능한 배열중의 GQ2 키의 배열의 임의의 생성을 위한 방법에 있는데, 즉:
It is an object of the present invention to provide a method for any generation of an array of GQ2 keys in all possible arrays, namely:
- 모든 가능한 GQ2 모듈리(moduli) 중의 모듈리의 임의의 생성, 즉 각각의 m개의 기수들 gi 에서, 식 (1) 및 식 (2)는 식(3)이 그들중의 하나를 갖는 반면에 w정수 계수 n의 정수환(ring)에서 x로 풀릴 수 없고, Any generation of moduli in all possible GQ2 moduli, ie in each m radix g i , equations (1) and (2) have the formula (3) having one of them cannot be solved by x in the integer ring of integer coefficient n,
- 식 (3.a)의 각각의 가능한 모든 해를 계산한다. 차이니스 잉여 기법은 Qi,1 에서 Qi,f 까지의 f 성분의 각각의 배열로 부터 비밀 값을 얻는 것을 가능하게 하여, 가능한 식들 중에서 식(3)을 위한 x의 해를 얻도록 한다. Calculate all possible solutions for each of equations (3.a). The Chinese surplus technique makes it possible to obtain a secret value from each array of f components from Q i, 1 to Q i, f , so as to obtain the solution of x for equation (3) among the possible equations.
Qi=차이니스 잉여(Qi,1, Qi,2 ,..., Qi,f)Q i = Chinese surplus (Q i, 1 , Q i, 2 , ..., Q i, f )
문제를 이해하고, 그리고 나서 문제에 주어진 해를 이해하기 위해, 즉 본발명에서 먼저 GQ2 기법의 원리의 적용을 분석해야 한다. "CG(p) 의 제곱으로 승산" 및 "CG(p) 의 제곱 잉여의 제곱근을 취함"의 기능을 연구하기 위하여 갈루아 필드(Galois field) 내의 계수의 정의를 상기함에 의해 시작한다. 그리고 나서 CG(p)의 x의 해의 존재 및 개수를 식(1.a),(2.a) 및 (3.a)에 대해 분석한다. In order to understand the problem, and then to understand the solution given to it, that is, in the present invention, the application of the principles of the GQ2 technique must first be analyzed. Begin by recalling the definition of the coefficients in the Galois field to study the functions of "multiply by CG (p) squared" and "take square root of squared excess of CG (p)". The presence and number of solutions of x of CG (p) are then analyzed for equations (1.a), (2.a) and (3.a).
CG(p)의 성분의 랭크(rank)Rank of components of CG (p)
홀수 소수(prime number) p 및 p보다 작은 양의 소수 a를 생각하자. 그리고 나서 {X}를 한정한다. Consider an odd prime number p and a positive prime a less than p. Then qualify {X}.
{X}≡{x1=a; puis, pour i≥1, xi+1≡axi(mod p)}{X} ≡ {x 1 = a; puis, pour i≥1, x i + 1 ≡ax i (mod p)}
인덱스 i+p를 계산하고 페르마의 이론(Fermat's theorem)을 사용한다.Compute the index i + p and use Fermat's theorem.
xi+p= apxi≡axi≡xi+1(mod p)x i + p = a p x i ≡ax i ≡x i + 1 (mod p)
결과적으로, 시퀀스(sequence) {X}의 주기(period)는 p-1이거나 p-1의 분할자(divider)이다. 이러한 주기는 a 값에 의존한다. 정의에 의해, 상기 주기는 "a(mod p) 의 랭크"라고 불린다. 시퀀스 {X} 에서의 단위원(unity)의 외적 인덱스이다. As a result, the period of sequence {X} is either p-1 or a divider of p-1. This period depends on the value of a. By definition, this period is called "rank of a (mod p)". External index of unitity in sequence {X}.
Xrank(a,p)≡1(mod p)X rank (a, p) ≡1 (mod p)
예를 들면, (p-1)/2 가 홀수 소수 p'이고, 갈루아 필드 CG(p)가 랭크 1을 가진 단일 성분으로 구성된다: 즉, 랭크 2를 가진 단일 성분이면, 1이다. 랭크 p'의 p'-1 성분,랭크 2·p'의 p'-1 성분이면, 즉 p-1랭크의 성분이면, -1 이다.For example, (p-1) / 2 is an odd prime number p 'and Galois field CG (p) consists of a single component with rank 1: 1, if it is a single component with rank 2. If it is a p'-1 component of rank p ', and a p'-1 component of rank 2p', ie, a component of p-1 rank, it is -1.
랭크가 p-1인 CG(p)의 성분들은 원시성분(primitive element) 또는 다시 CG(p)의 생성원(generator)들이라고 불린다. 상기 명칭은 그들의 CG(p)에서의 연속적인 거듭제곱, 즉 1에서 p-1까지의 시퀀스 {X}가 CG(p)에서 모든 영이 아닌(non-zero) 성분들의 치환을 형성한다는 사실에 의해 기인한다. The components of CG (p) having a rank of p-1 are called primitive elements or, in turn, generators of CG (p). The name is due to the fact that their successive powers in CG (p), i.e., the sequence {X} from 1 to p-1 form the substitution of all non-zero components in CG (p). Is caused.
CG(p)의 원시성분 y에 따라, i 및 p-1의 함수로 성분 yi(mod p)의 랭크를 계산한다. i 가 p-1을 가진 소수일 때는, p-1이다. p-1이 i 로 나누어 질 때, (p- 1)/i 이다. 모든 경우에, (p-1)/pgcd(p-1,i) 이다. According to the primitive component y of CG (p), the rank of component y i (mod p) is calculated as a function of i and p-1. When i is a prime number with p-1, it is p-1. When p-1 is divided by i, it is (p-1) / i. In all cases, (p-1) / pgcd (p-1, i).
오일러 함수는 φ에 의해 참조된다. 정의에 의해, n이 양의 정수 이므로, Φ(n)은 n보다 작은 양의 정수의 수이고 n과 함께 소수가 된다. 필드 CG(p)에서, 그러므로 φ(p-1) 원시 성분(rpimitive element)들이 된다. Euler functions are referenced by φ. By definition, since n is a positive integer, Φ (n) is a positive integer less than n and primed with n. In field CG (p), therefore, φ (p-1) primitive elements.
상술한 방법에 따라, RSA 기법의 기초가 아래에 있다. 공개 계수 n은 f≥2 인 p1 에서 pf 까지의 f개의 소인수의 곱이고, 각 소인수 pj마다 공개 지수 v가 pj-1의 소수가 되도록 한다. 키 <v,pj>는 CG(pj)의 성분의 랭크에 따른다: 즉, 그들을 치환한다. v·sj-1을 pj-1이 나누도록 역 치환은 <sj,pj> 에서 얻어진다. According to the method described above, the basis of the RSA technique is below. The open coefficient n is the product of the f prime factors from p 1 to p f , where f ≧ 2, and for each prime factor p j , the open index v is a prime number of p j −1. The key <v, p j > depends on the rank of the components of CG (pj): ie replace them. Inverse substitution is obtained at <s j , p j > such that v · s j −1 is divided by p j −1.
CG(p)의 제곱 및 제곱근Square and square root of CG (p)
x 및 p-x 성분은 CG(p)에서 같은 제곱을 갖는다. 키<2,p>는 p-1이 짝수 값이기 때문에 CG(p)의 성분을 치환하지 않는다. 각각의 소수 p에 대해, 정수 t를 아래와 같이 정의하자: p-1은 2t에 의해 나누어 지고 2t+1에 의해 나누어지지 않는데, 즉 p는 2t+1 (mod 2t+1) 과 연관된다. 예를 들어 p가 3(mod 4)와 연관될 때, t=1 이고; p가 5(mod 8)와 연관될 때, t=2 이고; p가 9(mod 16)와 연관될 때, t=3 이고; p가 17(mod 32)와 연관될 때, t=4 이다. 각각의 홀수 소수는 단지 하나의 카테고리 내에서 보여진다. 즉, p는 t번째 카테고리에서 보인다. 실제로, 만약 연속적인 소수의 상당히 큰 수를 가정하면, 두개중의 대략 하나는 첫번째 카테고리에 있을 것이고, 넷 중의 하나는 두번째에 있을 것이고, 여덟 중의 하나는 세번째, 열여섯 중의 하나는 네번째, 등등의 카테고리에 있을 것이다. 간단히 말하면, 2t 중의 하나는 평균적으로 t번째 카테고리에 있다는 것이다. The x and px components have the same square in CG (p). The key <2, p> does not substitute a component of CG (p) because p-1 is an even value. For each of a small number of p, let the integer defined as follows: t: p-1 is divided by 2 t does not divided by 2 t + 1, i.e., p is 2 t +1 (mod 2 t + 1) and Associated. For example, when p is associated with 3 (mod 4), t = 1; when p is associated with 5 (mod 8), t = 2; when p is associated with 9 (mod 16), t = 3; When p is associated with 17 (mod 32), t = 4. Each odd prime is shown in only one category. That is, p is seen in the t-th category. Indeed, if we assume a fairly large number of consecutive primes, approximately one of the two will be in the first category, one of the four will be in the second, one of the eight, the third of the sixteen, the fourth, and so on. Will be in category. In short, one of 2 t is on average in the t th category.
상기에서 논의한 랭크의 패리티(parity)에 따라 "CG(p) 의 제곱으로 누승(raise)" 기능에 대해 고려해본다. Consider the "raise by square of CG (p)" function according to the parity of the rank discussed above.
- 단지 하나의 고정된 성분이 있다. 즉 이는 1이다. 홀수 패리티 랭크의 다른 성분의 제곱은 같은 랭크를 갖는 다른 성분이 된다. 결과적으로, 키 <2,p>는 모든 그의 (p-1)/2t 홀수 패리티 랭크 성분으로 치환한다. 치환의 수는 (p-1)/2t 의 팩토라이제이션(factorization)에 의한다. 예를 들면, (p-1)/2t가 소수 p'일 때, p'-1 성분으로 구성되는 큰 치환 사이클이 있게 된다.There is only one fixed component. That is 1. The square of the other components of the odd parity rank is the other component of the same rank . As a result, the key <2, p> is replaced by all of its (p-1) / 2 t odd parity rank components. The number of substitutions is by factorization of (p-1) / 2 t . For example, when (p-1) / 2 t is a prime p ', there is a large substitution cycle consisting of the p'-1 component.
- 임의의 짝수 패리티 랭크 성분의 제곱은 그 랭크가 두개로 나누어지는 다른 성분이다. 결과적으로, 짝수 패리티 랭크 성분은 (p-1)/2t 브랜치(branch)들에 분배된다. 홀수 패리티 랭크를 가진 각각의 0이 아닌(non-zero) 성분은 길이 t를 가진 2t-1 성분으로 구성되는 브랜치를 포함하는데, 즉: 랭크의 성분은 2로 나누어지고 4로 나누어지지는 않으며, 그리고 만약 t≥2이면, 랭크의 두개의 성분은 4로 나누어지고 8로는 나누어지지 않으며, 그리고 만약 t≥3이면, 랭크의 네개의 성분은 8로 나누어지고 16로는 나누어지지 않으며, 만약 t≥4이면, 랭크의 여덟개의 성분은 16로 나누어지고 32로는 나누어지지 않는다. 각각의 브랜치의 2t-1 끝들은 비이차 잉여들(non-qudratic residues)이고; 그들의 랭크는 2t에 의해 나누어진다. The square of any even parity rank component is another component whose rank is divided into two . As a result, the even parity rank component is distributed to the (p-1) / 2 t branches. Each non-zero component with an odd parity rank includes a branch consisting of 2 t -1 components of length t, i.e., the components of the rank are divided by 2 and not divided by 4. And if t≥2, the two components of the rank are divided by 4 and not divided by 8, and if t≥3, the four components of the rank are divided by 8 and not divided by 16, and if t≥ If 4, the eight components of the rank are divided by 16 and not by 32. The 2 t-1 ends of each branch are non-qudratic residues; Their rank is divided by 2 t .
도 1A 에서 1D 는 각각의 필드의 p-1 의 영이 아닌(non-zero) 성분이 그 위치를 찾는 방향성 그래프에 의해 "CG(p) 에서 제곱으로 누승(累乘)" 기능을 도시한다. 즉 비이차 잉여들(non-qudratic residues)은 흰색이고 이차 잉여들(qudratic residues)은 검은색이며; 이차 잉여들 중에서 홀수 패리티 랭크 성분은 원으로 되어 있다. In FIG. 1A, 1D illustrates the function of " squared in CG (p) " by a directional graph where the non-zero component of p-1 of each field finds its location. That is, the non-qudratic residues are white and the quadratic residues are black; Of the secondary surpluses, the odd parity rank component is a circle.
이러한 도면들은 각각 아래의 내용을 도시한다. Each of these figures shows the following.
- 도 1A: p가 3(mod 4)와 연관되는 경우;1A: p is associated with 3 (mod 4);
- 도 1B: p가 5(mod 8)와 연관되는 경우;1B: p is associated with 5 (mod 8);
- 도 1C: p가 9(mod 16)와 연관되는 경우;1C: p is associated with 9 (mod 16);
- 도 1D: p가 17(mod 32)와 연관되는 경우;1D: p is associated with 17 (mod 32);
이제 식 x2≡a(mod p) 의 해를 x로 계산하는 방법을 살펴보자. 여기서 a는 CG(p)의 이차 잉여이며, 즉 어떻게 "CG(p)에서 제곱근을 구하는가" 에 관한 것이다. 물론 같은 결과를 얻을 수 있는 많은 방법이 있다. 즉 헨리 코헨의 "대수 계산 이론의 과정(A Course in Computation Algebric Number Theory)" (베르린, 스프정수환거, 1993, 31-36페이지), 및 "그래듀에이트 텍스트 인 메트매틱스(Graduate Text in Mathematics)" (vol. 138) 을 참조할 수 있다.Now let's look at how to compute the solution of the expression x 2 ≡a (mod p) as x. Where a is the secondary surplus of CG (p), ie, how to find the square root of CG (p). Of course, there are many ways to achieve the same result. Henry Cohen's "A Course in Computation Algebric Number Theory" (Berlin, Spragg, 1993, pages 31-36), and "Graduate Text in Mathematics." (vol. 138).
키 <s,p> 를 생성하기 위해 정수 s=(p-1+2t)/2t+1 를 계산한다. p가 3(mod 4)와 연관되는 경우 <(p+1)/4,p> 으로 놓고, p가 5(mod 8)와 연관되는 경우 <(p+3)/8,p> 으로 놓고,p가 9(mod 16)와 연관되는 경우 <(p+7)/16,p> 으로 놓고,p가 17(mod 32)와 연관되는 경우 <(p+15)/32,p> 로 놓는다. Compute the integer s = (p-1 + 2 t ) / 2 t + 1 to generate the key <s, p>. If p is associated with 3 (mod 4), set it to <(p + 1) / 4, p>, if p is associated with 5 (mod 8), set it to <(p + 3) / 8, p>, If p is associated with 9 (mod 16), it is set to <(p + 7) / 16, p>, and if p is associated with 17 (mod 32), it is set to <(p + 15) / 32, p>.
- 키 <s,p> 는 임의의 홀수 패리티 랭크 성분의 홀수 패리티 랭크 제곱근을 주게된다. 실제로, CG(p)에서, r2/a 는 거듭제곱 (2(p-1+2t)/2t+1)-1=(p-1)/2 t 까지 승산된 a와 같게된다. 결과적으로, a가 사이클에 있을 때, 키 <s,p>는 w로 불리는 해로 변환된다. 다른 해는 p-w 이다. The key <s, p> is given the square root of the odd parity rank of any odd parity rank component. In fact, in CG (p), r 2 / a is equal to a multiplied by power (2 (p-1 + 2 t ) / 2 t + 1 ) -1 = (p-1) / 2 t . As a result, when a is in cycle, the key <s, p> is converted into a solution called w. Another solution is pw.
- 일반적으로, 키 <s,p>는 r이라 불리는 해의 첫번째 추정에서 임의의 이차 잉여 a로 변환된다. 이하는 a 의 제곱근으로 추정하는 단계적인 증명을 위한 방법의 대략적인 스케치의 두개의 키포인트를 나타낸다. In general, the key <s, p> is converted to any secondary surplus a in the first estimate of the solution called r. The following represent two key points of the approximate sketch of the method for the step-by-step proof of estimation with the square root of a.
- 첫째로, a는 이차 잉여이므로, 키 <2t-1,p>는 분명히 r2/a를 1로 변환한다.Firstly, since a is a secondary surplus, the key <2 t-1 , p> obviously converts r 2 / a to 1.
- 둘째로, y라고 명명한 CG(p)의 비이차 잉여를 알고 있다고 가정할 수 있고; 키 <(p-1)/2t,p>는 y를 b라고 불리는 성분으로 변환한다. 즉 이는 -1의 2t-1번째 근이다. 실제로, y(p-1)/2≡-1(mod p)이다. 결과적으로, CG(p)에서, 단위원(unity)의 2t2t번째 승산 그룹은 1에서 2t까지의 지수에 있어서의 b의 거듭제곱의 승산 그룹과 같은 형이다. Second, one can assume that we know the non-secondary surplus of CG (p) named y; The key <(p-1) / 2 t , p> converts y into a component called b. That is, the 2 t-1 th root of -1. In fact, y (p-1) / 2 ≡-1 (mod p). As a result, in CG (p), the 2 t 2 t th multiplication group of the unitity is of the same type as the multiplication group of the power of b in the exponent of 1 to 2 t .
- a의 제곱근에 접근하기 위해서, r2/a를 2t-2(mod p)의 거듭제곱을 한다: 그 결과는 +1 또는 -1 이다. 만약 그 결과가 +1 이면 새로운 추정은 r이 되고, 그렇지 않고 그 결과가 -1이면 b·r(mod p)가 된다. 결과적으로, 키 <2t-2,p> 는 확실히 새로운 추정을 1로 변환한다. 요구값에 계속해서 접근하는 것이 가능하다. 즉 다음 단계에서, 필요하다면 b2(mod p)에 의해 곱해지는 것에 의해 조정이 행해질 수 있다.
To approach the square root of a, r 2 / a is raised to 2 t-2 (mod p): the result is either +1 or -1. If the result is +1, the new estimate is r; otherwise, the result is -1, b · r (mod p). As a result, the key <2 t-2 , p> surely converts the new estimate to one. It is possible to access the required value continuously. That is, in the next step, adjustments can be made by multiplying by b 2 (mod p) if necessary.
아래의 알고리즘은 상기에서 정의된 정수 r 및 b로부터 a의 제곱근에 도달하는 연속적인 추정을 만들게 되고; 이는 두개의 정수 변수를 사용한다. 즉 연속적인 추정을 나타내도록 r에 의해 초기화되는 w 및 2에서 2t-2 까지의 2의 거듭제곱 중에서의 jj 가정값이다. The algorithm below makes a continuous estimate reaching the square root of a from the integers r and b defined above; It uses two integer variables. I.e., the jj hypotheses in w and 2 to 2 t-2 initialized by r to represent a continuous estimate.
1에서 t-2까지의 i범위에서, 아래의 시퀀스를 반복한다. In the i range from 1 to t-2, the following sequence is repeated.
- w2/a(mod p)를 계산하고, 그 결과를 2t-i-1(mod p)의 거듭제곱을 한다. 즉, +1 또는 -1 이 얻어진다. -1 이 얻어지면, jj=2i를 계산하고, 그리고나서 w를 wbjj(mod p)로 치환한다. +1이 얻어지면, 아무것도 하지 않는다. Calculate w 2 / a (mod p) and multiply the result by 2 ti-1 (mod p). That is, +1 or -1 is obtained. If -1 is obtained, calculate jj = 2 i and then replace w with wb jj (mod p). If +1 is obtained, do nothing.
계산의 끝단계에서, w 및 p-w는 CG(p)에서의 a의 두개의 제곱근이 된다. 추 가적으로, CG(p)에서의 a의 랭크는 2t/jj 에 의해 나누어 질 수 있고 2t+1/jj에 의해서는 나누어지지 않는다. 이러한 관계는 아래에서 추가적으로 보이게 된다.
At the end of the calculation, w and pw are the two square roots of a in CG (p). In addition, the rank of a in CG (p) can be divided by 2 t / jj and not by 2 t + 1 / jj. This relationship is shown further below.
CG(p) 에서의 GQ2 기법의 원리의 분석Analysis of the principle of the GQ2 technique in CG (p)
1보다 큰 두개의 정수 g 및 k, g보다 큰 소수 p를 취한다. 식(1.a), (2.a) 및 (3.a) 에서 CG(p) 내에서 x의 해의 존재 및 개수를 분석하자. Take two integers g greater than 1 and k, a prime number p greater than g. Analyze the presence and number of solutions of x in CG (p) in equations (1.a), (2.a) and (3.a).
갈루아 필드(Galois field) CG(p)에서, t의 값에 의존하는 다른 경우들을, p-1을 나누는 두개의 거듭제곱에 따라서, 구별하자. p-1 은 2t 에 의해 나누어 질 수 있고 2t+1 에 의해서는 나누어지지 않는다는 것, 즉 p는 2t+1(mod 2t+1)과 연관된다는 것을 상기할 수 있다. 전술한 분석은 근접 해 뿐만 아니라 문제에 대한 상당히 정확한 개념을 주게된다.In the Galois field CG (p), distinguish other cases that depend on the value of t, according to two powers dividing p-1. It can be recalled that p-1 can be divided by 2 t and not by 2 t + 1 , that is, p is associated with 2 t +1 (mod 2 t + 1 ). The above analysis gives us a fairly accurate concept of the problem as well as the proximity.
t=1 일때, p는 3(mod 4)에 연관된다. p와 관련된 g 및 -g의 르장드르 기호들(Legendre symbols)은 서로 다르다. 즉 CG(p)의 임의의 이차 잉여는 CG(p) 내에서 두개의 제곱근을 갖는다. 하나는 이차 잉여이고 다른하나는 비이차 잉여이다. 첫째로, 두개의 식(1.a) 또는 (2.a) 중의 하나는 CG(p) 내의 x의 두개의 해를 갖고, 다른 하나는 갖지 않는다. 둘째로, 식 (3.a)는 k값이 무엇이든 CG(p) 내에서 x에 대한 두개의 해를 갖는다. When t = 1, p is associated with 3 (mod 4). The Legendre symbols of g and -g associated with p are different. That is, any secondary surplus of CG (p) has two square roots in CG (p). One is secondary surplus and the other is non-secondary surplus. First, one of the two equations (1.a) or (2.a) has two solutions of x in CG (p) and no one. Second, equation (3.a) has two solutions to x in CG (p) whatever k value.
t=2 일때, p는 5(mod 8)에 연관된다. p와 관련된 g의 르장드르 기호(Legendre symbol)에 의존되는 두가지 경우가 발생한다. 상기 기호가 -1과 같을 때, g 및 -g는 둘다 CG(p)의 비이차 잉여이다. 상기 세개의 식(1.a),(2.a) 및 (3.a)는 CG(p) 내에 x의 해를 갖지 않는다. 상기 기호가 +1이면, g 및 -g는 CG(p)의 두개의 이차 잉여이고, 각 식 (1.a) 및 (2.a)는 CG(p) 내에 x의 두개의 해를 갖는다. 추가적으로, CG(p) 내의 g2의 랭크는 k값이 무엇이든 그것을 반영하는 홀수 패리티 값이고, 식 (3.a)는 그중의 단지 하나가 홀수 패리티 랭크를 갖는, CG(p) 내의 x의 네개의 해를 갖는다. When t = 2 , p is associated with 5 (mod 8). Two cases occur depending on the Regendre symbol of g associated with p. When the symbol is equal to -1, g and -g are both non-secondary surpluses of CG (p). The three equations (1.a), (2.a) and (3.a) do not have a solution of x in CG (p). If the symbol is +1, g and -g are two secondary surpluses of CG (p), and each formula (1.a) and (2.a) has two solutions of x in CG (p). Additionally, the rank of g 2 in CG (p) is an odd parity value that reflects whatever k value is, and equation (3.a) is of x in CG (p) with only one of which has an odd parity rank. Has four solutions.
도2는 t=2이고, p는 5(mod 8)과 연관되고, k=6인 식(3.a)의 해를 도시한다. 5(mod 8)과 연관되는 p에 관하여 2의 르장드르 기호(Legendre symbol)가 -1과 같기 때문이라는 것을 주의해야한다. 2(p-1)/4(mod p)은 -1의 제곱근이다. 그러므로, Figure 2 shows the solution of equation (3.a) where t = 2, p is associated with 5 (mod 8) and k = 6. Note that, for p associated with 5 (mod 8), the Legendre symbol of 2 is equal to -1. 2 (p-1) / 4 (mod p) is the square root of -1. therefore,
; 따라서 (2|p)=-1 이고, ; So (2 | p) =-1,
; 그러므로 b2≡-1(mod p) 이다.
; Therefore b 2 ≡-1 (mod p).
t=3 일때, p는 9(mod 16)에 연관된다. p와 관련된 g의 르장드르 기호(Legendre symbol)를 고려한다. 상기 기호가 -1일 경우, g 및 -g는 CG(p)의 두개의 비이차 잉여이다. 상기 세개의 식(1.a),(2.a) 및 (3.a)는 CG(p) 내에 x의 해를 갖지 않는다. 상기 기호가 +1이면, g 및 -g는 CG(p)의 두개의 이차 잉여이고, 각 식 (1.a) 및 (2.a)는 CG(p) 내에 x의 두개의 해를 갖는다. 식 (3.a)의 x의 해의 존재는 CG(p) 내의 g2의 랭크에 의존한다. 상기 랭크는 홀수 패리티 값이거나 2에 의해 나누어지고 4에 의해 나누어지지 않는다. CG(p) 내의 g2의 랭크가 2에 의해 나누어지고 4에 의해 나누어지지 않는 경우, 식 (3.a)는 k=2 인 경우 CG(p) 내의 x에 대한 네개의 해를 갖고; k≥3 이상이 될수 없다. CG(p) 내의 g2의 랭크가 홀수 패리티 값일 경우, 식 (3.a)는 k=2 인 경우 CG(p) 내의 x에 대한 네개의 해를 갖고, k≥3 이면 여덟개의 해를 갖는다. 상기 두개의 경우 모두, 단지 하나의 값이 홀수 패리티 값이다. When t = 3 , p is associated with 9 (mod 16). Consider the Legendre symbol of g associated with p. When the symbol is -1, g and -g are two non-secondary surpluses of CG (p). The three equations (1.a), (2.a) and (3.a) do not have a solution of x in CG (p). If the symbol is +1, g and -g are two secondary surpluses of CG (p), and each formula (1.a) and (2.a) has two solutions of x in CG (p). The presence of the solution of x in equation (3.a) depends on the rank of g 2 in CG (p). The rank is an odd parity value or divided by two and not divided by four. When the rank of g 2 in CG (p) is divided by 2 and not by 4, equation (3.a) has four solutions to x in CG (p) when k = 2; k≥3 If the rank of g 2 in CG (p) is an odd parity value, equation (3.a) has four solutions to x in CG (p) when k = 2, and eight solutions when k≥3. . In both cases, only one value is an odd parity value.
t=4 일때, p는 17(mod 32)에 연관된다. p와 관련된 g의 르장드르 기호(Legendre symbol)를 고려한다. 상기 기호가 -1일 경우, g 및 -g는 CG(p)의 두개의 비이차 잉여이다. 상기 세개의 식(1.a),(2.a) 및 (3.a)는 CG(p) 내에 x의 해를 갖지 않는다. 상기 기호가 +1이면, g 및 -g는 CG(p)의 두개의 이차 잉여이고, 각 식 (1.a) 및 (2.a)는 CG(p) 내에 x의 두개의 해를 갖는다. 식 (3.a)의 x의 해의 존재는 CG(p) 내의 g2의 랭크에 의존한다. 상기 랭크는 홀수 패리티 값이거나 2 또는 4 에 의해 나누어지고 8에 의해 나누어지지 않는다. CG(p) 내의 g2의 랭크가 2에 의해 나누어지고 8에 의해 나누어지지 않는 경우, 식 (3.a)는 k=2 인 경우 CG(p) 내의 x에 대한 네개의 해를 갖고; k≥3 이상이 될수 없다. CG(p) 내의 g2의 랭크가 2에 의해 나누어지고 4에 의해 나누어지지 않는 경우, 식 (3.a)는 k=2 인 경우 CG(p) 내의 x에 대한 네개의 해를 갖고, k=3인 경우 여덟개의 해를 갖고; k≥4 인 경우 해가 없게된다. CG(p) 내의 g2의 랭크가 홀수 패리티 값일 경우, 식 (3.a)는 k=2 인 경우 CG(p) 내의 x에 대한 네개의 해를 갖고, k≥3 이면 여덟개의 해를 갖고, k≥4 이면 16개의 해를 갖는다. 상기 세가지 경우 모두, 단지 하나의 값이 홀수 패리티 값이다. When t = 4 , p is associated with 17 (mod 32). Consider the Legendre symbol of g associated with p. When the symbol is -1, g and -g are two non-secondary surpluses of CG (p). The three equations (1.a), (2.a) and (3.a) do not have a solution of x in CG (p). If the symbol is +1, g and -g are two secondary surpluses of CG (p), and each formula (1.a) and (2.a) has two solutions of x in CG (p). The presence of the solution of x in equation (3.a) depends on the rank of g 2 in CG (p). The rank is an odd parity value or divided by 2 or 4 and not divided by 8. When the rank of g 2 in CG (p) is divided by 2 and not by 8, equation (3.a) has four solutions to x in CG (p) when k = 2; k≥3 If the rank of g 2 in CG (p) is divided by 2 and not by 4, equation (3.a) has four solutions to x in CG (p) when k = 2, and k If = 3 there are eight solutions; If k≥4, there is no harm. If the rank of g 2 in CG (p) is an odd parity value, Equation (3.a) has four solutions to x in CG (p) when k = 2, and eight solutions when k≥3. If k≥4, we have 16 solutions. In all three cases, only one value is an odd parity value.
p가 1(mod 4)에 연관되는 경우와 같이 다른 경우도 같으며, 아래에 요약될 수 있다.Other cases are the same, such as when p is associated with 1 (mod 4) and can be summarized below.
p가 1(mod 4)와 연관되는 경우, p와 관련된 g의 르장드르 기호(Legendre symbol)를 고려한다. 상기 기호가 -1일 경우, g 및 -g는 CG(p)의 두개의 비이차 잉여이다. 상기 세개의 식(1.a),(2.a) 및 (3.a)는 CG(p) 내에 x의 해를 갖지 않는다. 상기 기호가 +1이면, g 및 -g는 CG(p)의 두개의 이차 잉여이고, 각 식 (1.a) 및 (2.a)는 CG(p) 내에 x의 두개의 해를 갖는다. 정수 u를 정의한다. CG(p) 내의 g2의 랭크는 2u에 의해 나누어 질 수 있으나, 2u+1에 의해서는 나누어질 수 없다. u의 값은 0에서 t-2 까지의 t-1개의 가능한 값들 사이에 있다. 식 (3.a)에 대한 CG(p) 내의 x의 해의 존재 및 개수는 k, t 및 u 값들에의해 좌우된다. u가 양수이고 k가 t-u 보다 큰 경우, 식 (3.a)는 CG(p) 내의 x의 해를 갖지 않는다. u가 영(zero)이고 k가 t보다 큰 경우, 식 (3.a)는 CG(p) 내에서 x의 2t개의 해를 갖는다. k가 t-u보다 크거나 같으면, 식(3.a)는 CG(p) 내에서 x의 2k개의 해를 갖는다. If p is associated with 1 (mod 4 ), consider the Regendre symbol of g associated with p. When the symbol is -1, g and -g are two non-secondary surpluses of CG (p). The three equations (1.a), (2.a) and (3.a) do not have a solution of x in CG (p). If the symbol is +1, g and -g are two secondary surpluses of CG (p), and each formula (1.a) and (2.a) has two solutions of x in CG (p). Define the integer u. The rank of g 2 in CG (p) can be divided by 2 u , but not by 2 u + 1 . The value of u is between t-1 possible values from 0 to t-2. The presence and number of solutions of x in CG (p) for equation (3.a) depends on k, t and u values. If u is positive and k is greater than tu, then equation (3.a) has no solution of x in CG (p). If u is zero and k is greater than t, equation (3.a) has 2 t solutions of x in CG (p). If k is greater than or equal to tu, equation (3.a) has 2 k solutions of x in CG (p).
정수 계수(modulo)의 정수환(ring)에서의 GQ2 원리의 응용Application of the GQ2 principle to the ring of integer modulo
식(1) 및 (2) 각각이 정수 계수 n의 정수환(ring)에서 x의 해를 갖지 않도록 하려면, p1에서 pf 까지의 적어도 하나의 소인수 p에서 식 (1.a) 및 (2.a) 각각이 CG(p) 내의 x의 해를 갖지 않도록 하는 것이 필요하다. In order to ensure that each of the equations (1) and (2) does not have a solution of x in the ring of integer coefficients n, the equations (1.a) and (2. 2) in at least one prime factor p from p 1 to p f . a) It is necessary to ensure that each does not have a solution of x in CG (p).
식(3)이 정수 계수 n의 정수환(ring)에서 x의 해를 갖도록 하려면, p1에서 pf 까지의 각각의 소인수 p에서 식 (3.a)이 CG(p) 내의 x의 해를 갖도록 해야한다. For equation (3) to have a solution of x in the integer ring of integer coefficients n, then for each prime factor p from p 1 to p f , let equation (3.a) have the solution of x in CG (p). Should be.
식 (3)은 g1에서 gm 까지의 기수 g중의 하나에서, 1(mod 4) 와 연관되는 소인수 p가 - p와 연관된 르장드르 기호(Legendre symbol) g가 -1과 같거나; 또는 p와 연관된 르장드르 기호(Legendre symbol) g가 +1과 같은 것중의 하나이고 - 양수의 u 가 되는 것 및 t-k 보다 큰 것을 방해한다. 1(mod 4) 와 연관되는 소인수 p가 가능하기 위해, 상기에서 정의된 두개의 정수인 t 및 u와 관련하여, g1에서 gm 까지의 기수 g의 각각에서 아래의 두 상태중 하나를 충족하는 것이 필요하다. CG(p) 내의 g2의 랭크는, k 값에 상관없이, CG(p) 내의 홀수 패리티 랭크이거나, 즉 u=0 이거나, CG(p) 내의 g2의 랭크는 CG(p) 내의 짝수 패리티 랭크 값이다. 즉 u>0 및 u+k≤t 의 조건을 만족하는 값이다. Equation (3) is one of the bases g from g 1 to g m , where the prime factor p associated with 1 (mod 4) is -Legendre symbol g associated with -p is equal to -1; Or the Legendre symbol g associated with p is one of the same as +1-interfering with being positive u and greater than tk. In order to enable the prime factor p associated with 1 (mod 4), with respect to the two integers t and u defined above, one of the following two states is satisfied in each of the bases g from g 1 to g m : It is necessary. The rank of g 2 in CG (p) is an odd parity rank in CG (p), i.e. u = 0, or the rank of g 2 in CG (p) is an even parity in CG (p), regardless of the value of k. Rank value. That is, it satisfies the condition of u> 0 and u + k ≦ t.
1(mod 4)와 연관되는 소인수의 곱은 GQ2 기법의 원리를 모두 만족할 수는 없다. 각 GQ2 계수는 3(mod 4)와 연관되는 적어도 2개의 소인수를 가져서, 각각의 기수 g에서, 이러한 인수 중의 하나와 관련된 르장드르 기호(Legendre symbol) g가 다른것과 관련된 르장드르 기호(Legendre symbol) g와 다르게 되도록 한다. 모든 소인수가 3(mod 4)와 연관되는 때, GQ2 계수가 기준(basic)이다라고 말할 수 있다. 3(mod 4)에 연관된 적어도 2개의 소인수를 추가하여, 계수가 1(mod 4)와 연관된 하나 또는 그 이상의 소인수를 포함할 때, 계수 GQ2는 결합(combined)된다라고 말할 수 있다. The product of the prime factors associated with 1 (mod 4) cannot satisfy all of the principles of the GQ2 technique. Each GQ2 coefficient has at least two prime factors associated with 3 (mod 4), so that in each radix g, the Regendre symbol g associated with one of these arguments is associated with the other. to be different from g. When all prime factors are associated with 3 (mod 4), we can say that the GQ2 coefficient is basic. By adding at least two prime factors associated with 3 (mod 4), one can say that when the coefficient includes one or more prime factors associated with 1 (mod 4), the coefficient GQ2 is combined.
모듈리(moduli) GQ2의 계통적 구축Systematic Construction of Moduli GQ2
최초에, 전체 제한들이 계수 n에 의해 지시되어 지도록 고정하는 것이 필요하다. 즉 1에서의 가장 중요한 연속적인 비트(bit)들의 수( 일반적으로 16 또는 32 비트 중의 적어도 하나) 뿐만 아니라 비트로 표현된 크기(예를 들면, 512 또는 1024 비트), f개의 소인수 및 e개(가능하다면 0인)의 소인수가 1(mod 4)와 연관되어야 하는 것과 ; 다른 소인수, 즉 f-e 인수의 적어도 두개가 3(mod 4)와 연관되어야 한다. 계수 n은 같은 크기의 f 소인수들의 곱이 된다. e=0일 때, 기본 계수 GQ2 가 얻어지고; e>0 일 때, 결합 계수 GQ2 가 얻어진다. 기본 계수는 모두가 3(mod 4)와 연관되는 소인수들의 곱이다. 그러므로 결합 계수 GQ2 는 1(mod 4)와 연관되는 하나 또는 그 이상의 다른 소인수들에 의해 곱해지는 기본 계수 GQ2 의 곱으로 볼 수 있다. 무엇보다, 3(mod 4)와 연관되는 소인수들이 생성된다. 그리고 나서 e>0 이라면, 1(mod 4)와 연관된 소인수가 생성된다.Initially, it is necessary to fix so that the entire limits are indicated by the coefficient n. That is, the number of most significant consecutive bits in 1 (generally at least one of 16 or 32 bits), as well as the size expressed in bits (e.g., 512 or 1024 bits), f prime factors and e (possibly Zero prime factor must be associated with 1 (mod 4); Another prime factor, at least two of the fe arguments, must be associated with 3 (mod 4). The coefficient n is the product of f prime factors of the same magnitude. when e = 0, the base coefficient GQ2 is obtained; When e> 0, the coupling coefficient GQ2 is obtained. The base coefficient is the product of the prime factors, all of which are associated with 3 (mod 4). Therefore, the coupling coefficient GQ2 can be viewed as the product of the base coefficient GQ2 multiplied by one or more other prime factors associated with 1 (mod 4). First of all, prime factors associated with 3 (mod 4) are generated. Then if e> 0, the prime factor associated with 1 (mod 4) is generated.
GQ2 모듈리(moduli)의 구축의 효과를 위해, 그것이 소인수 값(prime value)인지를 찾기 전에 각 후보값들을 선택하는 것이 확실히 더 좋다.For the effect of the construction of GQ2 moduli, it is certainly better to select each candidate value before finding if it is a prime value.
g1, g2,...에 참조되는, 기수들은 일반적으로 첫번째 기수들: 2,3,5,7,... 이다. 반대되는 점이 없다면, m개의 기수들은 m 개의 소수들이다. 즉 g1 = 2, g2 = 3, g3 = 5, g4 = 7,... 이다. 그러나, 아래의 사항들은 주의해야 한다. 즉 5(mod 8)과 연관되는 인수가 예상된다면, 2는 피해야 하고; 공개 키 <3,n> 이 RSA 공개 인증 키로서 사용된다면, 3은 피해야 한다. The radix, referred to g 1 , g 2 , ... are generally the first radix: 2,3,5,7, ... If there is no opposite, m bases are m primes. G 1 = 2, g 2 = 3, g 3 = 5, g 4 = 7, ... However, the following points should be noted. That is, if an argument associated with 5 (mod 8) is expected, 2 should be avoided; If public key <3, n> is used as the RSA public authentication key, 3 should be avoided.
3(mod 4) 와 연관되는 f-e 소인수의 선택Selection of f-e prime factors associated with mod 4
두번째 인수를 바탕으로, 프로그램은 한 인수당 하나의 기수를 요구하고 사용한다. 3(mod 4)와 연관된 마지막 인수의 선택에서, 프로그램은 다른 기수들이 있는지, 즉 m 이 f-e 보다 큰지 또는 같은지를 찾고 이러한 경우 gf-e 에서 gm 까지의 마지막 기수들을 요구하고 고려하게 된다. 3(mod 4)와 연관되는 소인수들의 선택을 공식화하기 위해, 프로파일(profile) 이라는 용어를 소개한다. 프로파일은 g보다 크고 3(mod 4)와 연관되는 소인수들의 세트(set)에 관한 정수 g를 특성화 한다. Based on the second argument, the program requires and uses one radix per argument. In the selection of the last argument associated with 3 (mod 4), the program looks for other radix, that is, if m is greater than or equal to fe and in this case requires and considers the last radix from g fe to g m . To formulate the choice of prime factors associated with mod 4, we introduce the term profile. The profile characterizes an integer g for a set of prime factors greater than g and associated with 3 (mod 4).
- 정수 g가 두개의 소인수에 관하여 같은 르장드르 기호(Legendre symbol)를 갖는 경우, 소인수들은 g에 관하여 등가(equivalent)이다라고 한다. 그렇지 않으 면, g에 관하여 상보적(complementary)이다라고 한다. If the integer g has the same Regendre symbol for two prime factors, the prime factors are said to be equivalent to g. Otherwise, it is said to be complementary with respect to g.
- f개의 소인수들 p1,p2,...,pf 에 관한, porfilef(g)에 사용되는, 정수 g 의 프로파일은 소인수 하나 당 하나의 비트인, f비트(bits)의 시퀀스이다. 첫번째 비트는 1과 같고; 각각의 뒤이은 비트는 다음 인수가 g에 관하여 p1과 같은지 또는 상보적인지에 좌우되어 1 또는 0과 같은 값이 된다. The profile of integer g, used in porfile f (g), for f prime factors p 1, p 2 , ..., p f is a sequence of f bits, one bit per prime factor. . The first bit is equal to 1; Each subsequent bit is a value equal to 1 or 0 depending on whether the next argument is equal to p1 or complementary with respect to g.
- 프로파일의 모든 비트들이 1과 같을 때, 프로파일이 플랫(flat)하다고 말한다. 상기의 경우, g의 모든 르장드르 기호(Legendre symbol)는 +1과 같거나 또는 -1과 같다. g의 프로파일이 플랫하지 않은 경우, 식(1) 및 (2)는 정수 계수 n의 정수환(ring)에서 풀릴 수 없다. When all bits in the profile are equal to 1, say the profile is flat. In this case, all of the Regendre symbols of g are equal to +1 or equal to -1. If the profile of g is not flat, equations (1) and (2) cannot be solved in the ring of integer coefficients n.
- 정의에 의해, 3(mod 4)에 연관된 단일의 소수에 관한 g의 프로파일은 항상 플랫(flat)하다. 이것은 3(mod 4)에 연관된 소인수의 선택의 알고리즘을 일반화하는데 사용된다.
By definition, the profile of g for a single prime number associated with 3 (mod 4) is always flat. This is used to generalize the algorithm of selection of prime factors associated with 3 (mod 4).
두개의 기수 g1 및 g2의 프로파일들이 서로 다를 때(이는 적어도 세개의 소인수가 3(mod 4)에 연관된다는 것을 나타낸다.), 두개의 비밀 값인 Q1 및 Q2의 정보는 계수 n의 두개의 다른 분할의 정보를 유발한다. 기수가 작은 소수인 경우, 프로그램은 f-e-1개의 기준 소수의 2f-e-1-1 개의 승산조합이 모두 다르다는 것을 보장한다. 즉, 모든 가능한 값들을 취한다. 프로파일이라는 용어는 1(mod 4)에 연관된 소인수에 까지 확장되지는 않는다. When the profiles of the two radixes g 1 and g 2 are different (which indicates that at least three prime factors are associated with 3 (mod 4)), the information of the two secret values Q1 and Q2 is two different coefficients of n. Induces information of partitioning. For small radix primes, the program ensures that the 2 fe-1 -1 multiplication combinations of the fe-1 reference primes are all different. That is, take all possible values. The term profile does not extend to the prime factors associated with 1 (mod 4).
3(mod 4)에 연관되는 첫번째 소인수 p1: 각 후보값은 다른 특별 제한 없이 3(mod 4)에 연관되어야 한다. First prime factor p 1 associated with 3 (mod 4): Each candidate value must be associated with 3 (mod 4) without any special restrictions.
첫번째 기수 g1과 같이 고려되는 3(mod 4)에 연관되는 두번째 소인수 p2: 각 후보값은 g1에 관하여 p1과 상보적이어야 한다. Second prime factor p 2 associated with 3 (mod 4) considered as the first radix g1: Each candidate value must be complementary to p 1 with respect to g 1 .
두번째 기수 g2와 같이 고려되는 3(mod 4)에 연관되는 세번째 소인수 p3: 두개의 첫번째 소인수 p1과 p2에 관한 g2 의 프로파일에 따르면, 두가지 경우가 발생한다. profile2(g2)가 플랫(flat)한 경우, 각 후보값은 g2에 관하여 p1 과 상보적이어야 한다. 그렇지 않으면, profile2(g1)=profile2(g2) 이 되고; 각 후보값이 profile3(g1)≠profile3(g2)이 되는 것을 보장해야 한다. Third prime factor p 3 associated with 3 (mod 4) considered as second base g 2 : According to the profile of g 2 for the two first prime factors p 1 and p 2 , two cases occur. If profile 2 (g 2 ) is flat, each candidate value should be complementary to p 1 with respect to g 2 . Otherwise, profile 2 (g 1 ) = profile 2 (g 2 ); You must ensure that each candidate value is profile 3 (g 1 ) ≠ profile 3 (g 2 ).
기수 gi와 같이 고려되는 3(mod 4)에 연관되는 i번째 소인수 pi+1의 선택: i개의 첫번째 소인수들 p1,p2,...,pi에 따르면, 두가지 경우가 발생한다. profilei(gi) 이 플랫(flat)한 경우, 각 후보값들은 gi와 관련하여 p1에 상보적이어야 한다. 그렇지 않으면, i-1 개의 기수들 g1,g2,...,gi-1 및 그들의 모든 승산 조합(multiplicative combination)들인 g1ㆍg2,...,g1ㆍg2ㆍ...ㆍgi-1 중에서, 즉 상기 모든 것들 중 2i-1-1 개의 정수들에서, 프로파일i(gi)=프로파일i(g) 이 되도록 오직 하나의 정수 g가 있고; 각 후보값이 그리고나서 profilei+1(gi)≠profilei+1(g) 가 되는 것을 보장해야 한다. Selection of the i th prime p i + 1 associated with 3 (mod 4) considered as radix g i : According to the i first prime factors p 1 , p 2 , ..., p i , two cases occur . If profile i (g i ) is flat, then each candidate value should be complementary to p 1 with respect to g i . Otherwise, i-1 radix g 1 , g 2 , ..., g i-1 and all of their multiplicative combinations g 1 · g 2 , ..., g 1 · g 2 . ... G among g i-1 , ie in 2 i-1 −1 integers of all the above, there is only one integer g such that profile i (g i ) = profile i (g); We must ensure that each candidate value is then profile i + 1 (g i ) ≠ profile i + 1 (g).
기수 gf-e-1 및 gf-e 에서 gm 까지의 다른 기수들과 같이 고려되는 3(mod 4)에 연관되는 마지막 소인수 pf-e: 기수 gf-e-1에 의한 제한은 상기와 같이 고려된다. 추가적으로, m이 f-e 와 같거나 클 때, 각각의 후보값은 f-e 소인수들과 관련된 gf-e 로부터 gm 까지의 마지막 기수들을 위한 비-플랫(non-flat) 프로파일을 제공해야 한다. 각 후보값들은 profilef-e-1(gi)이 플랫한 gi의 모든 값에 관하여 p1에 상보적이 되어야 한다.
Finally prime factors p fe is associated to 3 (mod 4) to be considered as any other odd number of g to m in the radix-fe g 1 and g fe: limited by the rider gf-e-1 are considered, as described above. In addition, when m is equal to or greater than fe, each candidate value should provide a non-flat profile for the last radix from g fe to g m associated with fe prime factors . Each candidate value should be complementary to p 1 for all values of g i flat for profile fe-1 (g i ).
요약하면, 3(mod 4)에 연관되는 소인수들은 서로의 함수로써 선택된다.
In summary, the prime factors associated with 3 (mod 4) are chosen as functions of each other.
0 에서 f-e-1 까지의 i 범위에서, 3(mod 4)에 연관되는 i+1 번째의 소인수를 선택하기 위하여, 후보값 pi+1은 아래의 시험들을 통과해야 한다. In the i range from 0 to fe-1, in order to select the i + 1 th prime factor associated with 3 (mod 4), the candidate value p i + 1 must pass the following tests.
i > m 이거나 i = 0 이면, 후보값 pi+1은 다른 제약이 없고; 그러므로 선택될 수 있다. If i> m or i = 0, the candidate value p i + 1 has no other constraint; Therefore it can be chosen.
0 < i ≤m 이면, 후보값 pi+1은 i번째 기수 gi를 고려해야 한다. p1 에서 pi 까지의 i 첫번째 소인수들에 관련된 기수 gi의 profilei(gi)이 계산된다. 상기 결과에 기초하여, 아래의 두가지 경우 중 오직 하나의 경우가 발생한다. If 0 <i ≤ m, the candidate value p i + 1 must take into account the i th base g i . The profile i (g i ) of the radix g i associated with the first prime factors i from p 1 to p i is calculated. Based on the above results, only one of the following two cases occurs.
- 프로파일이 플랫하면, 후보값 pi+1은 gi와 관련하여 p1에 상보적이어야 하고; 그렇지 않으면, 그값은 거절된다. If the profile is flat, the candidate value pi + 1 should be complementary to p1 with respect to gi; Otherwise, the value is rejected.
- 그렇지 않으면, i-1 기수들 및 그들의 모든 승산 조합(multiplicative combination)들 중에서 profilei(g)=profilei(gi) 이 되도록 g라 불리는 오직 하나의 수가 존재하고; 각 후보값 pi+1이 그리고나서 profilei+1(g)≠profilei+1(g i) 가 되어야 하고; 그렇지 않으면, 그값은 거절된다. Otherwise, there is only one number called g such that among the i-1 radix and all of the multiplicative combinations there is profile i (g) = profile i (g i ); Each candidate value p i + 1 must then be profile i + 1 (g) ≠ profile i + 1 (g i ); Otherwise, the value is rejected.
i+1 = f-e 및 i < m 이면, 즉 기수들이 남아있는 경우, 아직 고려되지 않은, 3(mod 4)와 연관된 gf-e 에서 gm 까지의 마지막 소인수를 선택하기 위하여, 후보값 pf-e는 그것들을 고려해야 한다. 즉, 이러한 기수들 중에서, profilef-e-1(gi ) 가 플랫한 프로파일이 선택되고; 후보값 pf-e는 각각의 선택된 기수들에 관련되어 p1에 상보적이 되어야 하고; 그렇지 않으면 그들은 거절되어야 한다. If i + 1 = fe and i <m, i.e. if radix remains, to select the last prime factors from g fe to g m associated with 3 (mod 4) that have not yet been considered, the candidate value p fe is Should be taken into account. That is, among these radix, a profile whose profile fe-1 (g i ) is flat is selected; The candidate value p fe must be complementary to p 1 in relation to the respective selected radix; Otherwise they must be rejected.
상기의 테스트들을 성공적으로 마쳤으면 후보값은 선택된다.
If the above tests have been successfully completed, the candidate value is selected.
1(mod 4)에 연관되는 e 소인수들의 선택Selection of e prime factors associated with 1 (mod 4)
1(mod 4)에 연관되는 각 후보값 p는 g1 에서 gm 까지의 각 기수에 관하여 아래의 상태들을 만족해야 한다. Each candidate value p associated with 1 (mod 4) must satisfy the following conditions for each radix from g 1 to g m .
- p와 관련된 각 기수 gi 의 르장드르 기호(Legendre symbol)를 계산한다. 만약 상기 기호가 -1과 같다면, 상기 후보값 p를 거절하고 다른 후보값으로 간다. 만약 상기 기호가 +1과 같다면, 상기 후보값의 계산을 계속한다. 정수 2가 기수로 사용되면, 5(mod 8)에 연관된 모든 후보값들은 제거되어야 한다: 즉 기수 2는 5(mod 8)에 연관된 인수와 양립할 수 없는 것이다. Compute the Regendre symbol for each radix g i associated with p. If the symbol is equal to -1, then reject the candidate value p and go to another candidate value. If the symbol is equal to +1, the calculation of the candidate value is continued. If the integer 2 is used as an odd number, all candidate values associated with 5 (mod 8) must be eliminated: that is, the odd number 2 is incompatible with the argument associated with 5 (mod 8).
- 키 <s, p> 를 만들도록 정수 s = (p-1+2t)/2t+1 를 계산한다. 결과 r을 얻도록 키 <s, p> 를 각 공개 값 Gi에 적용한다. 두가지 경우가 발생한다. Compute the integer s = (p-1 + 2 t ) / 2 t + 1 to produce the key <s, p>. Apply key <s, p> to each public value G i to get the result r. Two cases occur.
- 만약 r 이 gi 또는 -gi 와 같다면, u = 0 이다. 이러한 경우에, Gi는 사이클 내에 있다. 사소한 케이스를 주의해야 한다: 즉 p가 5(mod 8)에 연관되고 p와 연관된 gi의 르장드르 기호가 +1과 같다면 Gi 가 사이클 내에 있다는 것이다. Gi = 4 는 이러한 케이스에서 불가능하다는 것을 다시한번 상기해야 한다. If r is equal to g i or -g i , then u = 0 In this case, Gi is in cycle. Note the trivial case: if p is associated with 5 (mod 8) and the genre symbol of g i associated with p is equal to +1, then G i is in cycle. Recall that G i = 4 is not possible in this case.
- 만약 r 이 gi 또는 -gi 와 같지 않다면, u > 0 이다. 키 <(p-1)/2t,p> 는 모든 비 이차 잉여(non-quadratic residue) y 를 단위원의 2t 번째 원시 근이 되는 성분 b로 변환하는 것을 주의해야 한다. 아래의 알고리즘은, r에 의해 초기화 되는 w 및 2 에서 2t-2 사이 값을 취하는 jj 인, 두개의 정수 변수들을 사용하는 것에 의해 u를 r및 b 로부터 계산한다. If r is not equal to g i or -g i , then u> 0. Note that the key <(p-1) / 2 t , p> converts all non-quadratic residues y to component b, which is the 2 t th primitive root of the unit circle. The algorithm below calculates u from r and b by using two integer variables, w being initialized by r and jj taking a value between 2 and 2 t-2 .
1 에서 t-2 까지의 i에서, 아래의 시퀀스를 반복한다. At i through t-2, repeat the sequence below.
- w2/Gi(mod pj) 를 계산하고 상기 결과를 2t-i-1(mod pj)의 거듭제곱을 한다: 그 결과는 +1 또는 -1 이다. 만약 그 결과가 -1 이면, jj = 2i를 계산하고, 그리고나서 w를 wbjj(mod pj)로 치환한다. +1이 얻어지면, 아무것도 하지 않는다. Calculate w 2 / Gi (mod p j ) and multiply the result by 2 ti-1 (mod p j ): the result is +1 or -1. If the result is -1, calculate jj = 2 i , and then replace w with wb jj (mod p j ). If +1 is obtained, do nothing.
계산의 끝에서, 변수 w는 gi 또는 -gi 값을 갖는다. 추가적으로, CG(p) 내의 Gi 랭크는 2t/jj에 의해 나누어지나 2t+1/jj에 의해서는 나누어지지 않는다는 것을 알게되며, 즉 jj는 jj = 2t-u에 의해서 u값을 결정하게 된다. v 가 jj보다 큰 경우, 즉 k > t-u 인 경우, 상기 후보값을 거절하고 다른 후보값으로 간다. v가 jj와 같거나 작다면, 즉 k ≤t-u 라면, 상기 후보값의 계산을 계속한다. At the end of the calculation, the variable w has a value of g i or -g i . In addition, we find that the Gi rank in CG (p) is divided by 2 t / jj, but not by 2 t + 1 / jj, ie jj determines u by jj = 2 tu . If v is greater than jj, i.e., k> tu, the candidate value is rejected and goes to another candidate value. If v is less than or equal to jj, i.e., k < tu, then the calculation of the candidate value is continued.
f 소인수가 생성되면, 공개 계수 n은 f 소인수들 p1,p2,..pf 의 곱이다. 부호가 정해지지 않은 정수 n은 두개의 시퀀스에 의해 표시될 수 있고; 이 시퀀스는 비트의 크기 및 1에서의 연속적인 가장 중요한 비트의 수에 대한 프로그램의 시작에서 부과되는 제한들을 나타낸다. 소인수의 선택은 m 기수들 g1,g2,..gm 각각에 대하여 계수 n의 아래의 성질들을 제공한다. 추가적으로, 식 (1) 및 (2)는 정수 계수 n 의 정수환(ring)에서 x에 관한 해를 갖지 않는다. 둘째로, 식(3)은 정수 계수 n 의 정수환(ring)에서 x에 관한 해를 갖는다. If f prime factors are generated, then the open coefficient n is the product of f prime factors p 1 , p 2 , .. p f . An unsigned integer n can be represented by two sequences; This sequence represents the restrictions imposed at the beginning of the program on the size of the bits and the number of consecutive most significant bits in one. The choice of prime factors provides the following properties of the coefficient n for each of the m bases g 1 , g 2 , .. g m . In addition, equations (1) and (2) do not have a solution with respect to x in the ring of integer coefficients n. Second, equation (3) has a solution for x in the integer ring of integer coefficients n.
요약하면, 1(mod 4) 에 연관된 소인수들은 상호 독립적으로 선택된다.
In summary, the prime factors associated with 1 (mod 4) are chosen independently of each other.
3(mod 4)에 연관된 인수들이 차차 기수들을 고려하는 반면에, 각 1(mod 4)에 연관된 각각의 소인수는 각 기수들에 의해 지시되는 모든 제한들을 고려해야한다. 1(mod 4)에 연관되는 각각의 소인수는, 즉 pf-e 에서 pf 까지의 p 는 아래의 두개의 단계로 된 시험을 성공적으로 거쳐야 한다. Whereas the arguments associated with 3 (mod 4) take into account the gradual order, each prime factor associated with each 1 (mod 4) must take into account all the restrictions dictated by the respective radix. Each prime factor associated with 1 (mod 4), ie p from p fe to p f , must be successfully tested in two steps:
1) 단계(1)은 g1에서 gm 까지의 m 기수들 각각에 대하여 성공적으로 수행되어야 한다. 1) Step (1) must be performed successfully for each of the m radix from g1 to gm.
후보값 p에 관한 현재 기수 g의 르장드르 기호가 계산된다. 아래의 두가지 경우 중의 오직 하나가 발생한다. 즉 기호가 -1과 같으면, 후보값은 거절된다. 그렇지 않으면(기호가 +1이면), 시험은 단계(1)을 따라서 기수 g가 시험을 통과하도록 계속된다. The genre symbol of the current radix g for the candidate value p is calculated. Only one of the following two cases occurs. In other words, if the sign is equal to -1, the candidate value is rejected. Otherwise (if the symbol is +1), the test continues along step (1) for the radix g to pass the test.
후보값이 m 기수들 모두에게 수용되는 경우, 상기 연산은 단계(2)를 거친다.
If the candidate value is acceptable to all m bases, the operation goes to step (2).
2) 단계(2) 는 G1에서 Gm의 m 공개 값 각각에 대하여 성공적으로 수행되어야 한다. 2) Step (2) must be performed successfully for each of the m public values of Gm in G1.
정수 t가 p-1이 2t에 의해 나누어질 수 있도록, 그러나 2t+1에 의해서는 나누어지지 않도록 계산되고, 그리고 나서 정수 s = (p-1+2t)/2t+1 가 계산되고, 키 <s,p> 를 생성한다. 키 <s,p> 는 결과 r을 얻도록 G = g2 에 적용되고, 즉: r ≡Gs(mod p) 이다. 상기 결과에 따라, 아래의 상태 중 오직 하나의 상태가 발생한다. The integer t is calculated so that p-1 can be divided by 2 t , but not by 2 t + 1 , and then the integer s = (p-1 + 2 t ) / 2 t + 1 is calculated And generate keys <s, p>. The key <s, p> is applied to G = g2 to get the result r, that is: r ≡G s (mod p). According to the result, only one of the following states occurs.
a) r이 g 또는 -g 와 같다면, u = 0이고, 상기 후보값의 시험은 단계(2)에서 아래의 공개 값 G를 통과하도록 계속된다. a) If r is equal to g or -g, then u = 0, and the test of the candidate value continues to pass the public value G below in step (2).
b) 그렇지 않으면, 아래의 알고리즘은 두개의 정수 변수들 - 키 <(p-1)/2t,p> 를 CG(p)의 비 이차 잉여에 적용하는 것에 의해서 얻어지는 정수 b 뿐만아니라, r에 의해 초기화 되는 w 및 2 에서 2t-2 사이 값을 취하는 jj - 을 사용하는 것에 있어서, 양수 u는 1 에서 t-2 까지의 값들 중의 하나를 취하도록 계산된다. b) Otherwise, the algorithm below applies to r as well as the integer b obtained by applying two integer variables-the key <(p-1) / 2 t , p> to the non-secondary surplus of CG (p). In using w and jj − taking a value between 2 and 2 t −2 , the positive u is calculated to take one of the values from 1 to t −2.
1에서 t-2까지 범위의 인덱스ii 에서, 아래의 연산이 반복된다. At index ii in the range 1 to t-2, the following operation is repeated.
즉 w2/G(mod p)가 계산되고 키 <(p-1)/2t,p> 는 결과치가 +1 또는 -1 값을 얻도록 적용된다. (그렇지 않으면, 상기 후보값은 소인수가 아니라는 증거가 된다.) 만약 그 결과가 -1 이면, jj = 2ii가 계산되고 c≡bjj 이고, 그리고나서 w는 wc(mod p)로 치환되며, 그리고나서 다음 인덱스 ii 로 통과한다. 만약 +1 이 얻어지면, 다음 인덱스 ii로 통과한다.
That is, w 2 / G (mod p) is calculated and the key <(p-1) / 2 t , p> is applied so that the result gets a +1 or -1 value. (Otherwise, the candidate value is proof that it is not a prime factor.) If the result is -1, jj = 2 ii is calculated and c≡b jj , then w is replaced by wc (mod p), Then pass to the next index ii. If +1 is obtained, then pass to the next index ii.
알고리즘의 끝에서, 변수 jj의 값은 jj = 2t-u 의 관계에 의해 u를 정의하고; 변수 w 내의 값은 G의 제곱근이고, 즉 g 또는 -g 이다. ( 그렇지 않으면, 상기 후 보값이 소인수가 아니라는 증거이다. ) 두가지 경우가 발생한다. At the end of the algorithm, the value of the variable jj defines u by the relationship jj = 2 tu ; The value in the variable w is the square root of G, ie g or -g. (Otherwise, it is evidence that the candidate value is not a prime factor.) Two cases occur.
■만약 t-u < k 이면, 후보값 p 는 G가 발생하는 브랜치(branch)가 충분히 길지 않기 때문에 거절된다. If t-u <k, the candidate value p is rejected because the branch where G occurs is not long enough.
■만약 t-u ≥k 이면, 후보값의 값은 단계(2)를 따라 다음 공개 값 G로 계속 진행된다. If t-u? K, then the value of the candidate value continues to the next published value G following step (2).
후보값이 모든 m 공개 값에 대해 수용가능하면, 이는 1(mod 4)에 연관된 소인수로서 받아들여 진다.
If the candidate value is acceptable for all m public values, it is taken as a prime factor associated with 1 (mod 4).
관련 값들의 계산Calculation of related values
비밀 콤포넌트(component)들을 얻기 위해, 첫째로 일반적인 케이스를 보기전에 두개의 가장 간단하고 가장 최신의 케이스들을 통해 식(3.a)의 모든 해를 계산하자.To get the secret components, first calculate all the solutions of equation (3.a) through the two simplest and most recent cases before looking at the general case.
3(mod 4)에 연관된 각각의 소인수 pj에서, 키 <(pj+1)/4,pj> 는 임의의 이차 잉여의 이차 제곱근을 주게된다. 이러한 것에서부터, 식(3.a)의 해를 계산하기 위해 방법이 추론된다. 즉, In each prime factor pj associated with 3 (mod 4) , the key <(p j +1) / 4, p j > gives the second square root of any secondary surplus. From this, the method is inferred to calculate the solution of equation (3.a). In other words,
sj ≡((pj+1)/4)k(mod(pj-1)/2); 그리고, Qi,j ≡G i sj(mod pj) s j ≡ ((p j +1) / 4) k (mod (p j −1) / 2); And, Q i, j ≡G i sj (mod p j)
이거나 그렇지 않으면 상기와 같은 해의 인버스(mod pj) 이다. 즉,Or otherwise mod pj of the same year. In other words,
sj ≡(pj-1)/2-((pj+1)/4)k(mod(pj-1)/2); 그리고, Qi,j ≡Gi sj(mod pj) 이다. s j ≡ (p j -1) / 2-((p j +1) / 4) k (mod (p j -1) / 2); And Q i, j ≡G i sj (mod p j ).
CG(p) 에서, 단위원(unity)의 오직 두개의 제곱근(즉 +1 및 -1)이 존재하고; 그러므로 식(3.a)에서의 x의 두개의 해이다. 즉 Qi,j 및 pj- Qi,j가 같은 Gi(mod pj)의 제곱이 된다.
In CG (p) there are only two square roots of unity (ie +1 and -1); Therefore, two solutions of x in equation (3.a). That is, Q i, j and p j -Q i, j are the squares of the same G i (mod p j ).
5(mod 8)에 연관된 각각의 소인수 pj 에서, 키 <(pj+1)/4,pj> 는 임의의 홀수 패리티 랭크 성분의 홀수 패리티 랭크 제곱 근을 주게된다. 이러한 것에서부터, 식(3.a)의 해를 계산하기 위해 방법이 추론된다. 즉, In each prime factor pj associated with 5 (mod 8) , the key <(p j +1) / 4, p j > is given the root root of the odd parity rank of any odd parity rank component. From this, the method is inferred to calculate the solution of equation (3.a). In other words,
sj ≡((pj+3)/8)k(mod(pj-1)/4); 그리고, Qi,j ≡G i sj(mod pj) s j ≡ ((p j +3) / 8) k (mod (p j −1) / 4); And, Q i, j ≡G i sj (mod p j)
이거나 그렇지 않으면 상기와 같은 해의 인버스(mod pj) 이다. 즉Or otherwise mod pj of the same year. In other words
sj ≡(pj-1)/4-((pj+3)/8)k(mod(pj-1)/4); 그리고, Qi,j ≡Gi sj(mod pj) 이다.s j ≡ (p j -1) / 4-((p j +3) / 8) k (mod (p j -1) / 4); And Q i, j ≡G i sj (mod p j ).
CG(p) 에서, 단위원(unity)의 오직 네개의 제곱근이 존재하고; 그러므로 식(3.a)에서의 x의 네개의 해이다. 5(mod 8)에 연관된 p에 관한 2의 르장드르 기호가 -1과 같기 때문에 2(pj-1)/4(mod pj) 는 -1의 제곱근이 된다는 것을 주의해야 한다. 만약 Qi,j 가 하나의 해라면, Qi,j의 (mod pj)와 -1의 제곱근과의 곱과 같이, pj - Qi,j는 다른 해가 된다. In CG (p) there are only four square roots of unity; Therefore, the four solutions of x in equation (3.a). Note that 2 (pj-1) / 4 (mod p j ) is the square root of -1 because the 2nd genre de sign for p associated with 5 (mod 8) is equal to -1. If Q i, j is a solution, then p j -Q i, j is another solution, as is the product of (mod pj) of Q i, j and the square root of -1.
2t+1(mod 2t+1) 과 연관되는 소인수 pj에서, 키 <(pj-1+2t)/2t+1,p j> 는 임의 의 홀수 패리티 랭크 성분의 홀수 패리티 제곱근을 주게된다. 그러므로 식(3.a)의 해를 계산할 수 있게된다. In the prime factor pj associated with 2t + 1 (mod 2t + 1) , the key <(p j -1 + 2 t ) / 2 t + 1 , p j > gives the odd parity square root of any odd parity rank component. . Thus, the solution of equation (3.a) can be calculated.
- 키 <sj,pj>를 생성하기 위해, 첫째로 정수 sj ≡((pj-1+2 t)/2t+1)k(mod(pj-1)/2t)를 계산한다. To generate the key <s j , p j >, firstly the integer s j ≡ ((p j -1 + 2 t ) / 2 t + 1 ) k (mod (p j -1) / 2 t ) Calculate
- 키 <(pj-1+2t)/2t+1,pj> 가 Gi를 gi 또는 -gi로 변환할 때, Gi의 랭크는 CG(p)의 홀수 패리티 값(u = 0)이 된다. 그리고 나서, 키 <sj,pj> 는 Gi를 z 로 변환한다. 즉 이는 식(3.a)의 홀수 패리티 랭크 해가 된다. t 및 k 의 값에 따라, 여전히 하나 또는 그 이상의 브랜치(branch)들에서의 min(2k-1,2t-1)의 다른 해가 존재한다. z2의 브랜치는 다른 해를 끌어낸다: 즉 이는 pj-z 이다 t ≥2 인 경우, z4 의 브랜치는 두개의 다른 해이다: 즉 이는 -1의 두개의 제곱근 각각과 z와의 곱이고, 단위원(unity)의 두개의 원시 네번째 근(primitive fourth roots)들 각각을 말한다. When the key <(p j -1 + 2 t ) / 2 t + 1 , p j > converts G i to g i or -g i , the rank of G i is the odd parity value of CG (p) ( u = 0). Then, the key <s j , p j > converts G i to z. This is the odd parity rank solution of equation (3.a). Depending on the value of t and k, there is still another solution of min (2 k −1,2 t −1) in one or more branches. The branch of z 2 derives another solution: that is p j -z If t ≥2, the branch of z 4 is two different solutions: that is, the product of z square root of -1 and z, Each of the two primitive fourth roots of the unitity.
만약 y가 CG(p)의 비 이차 잉여(non-quadratic residue)인 경우, y(pj-1)/4(mod pj) 는 -1의 제곱근이다. 일반적으로, 1에서 min(k,t) 까지의 각 값들의 i개의 선택에서, z의 2i번째 거듭제곱의 브랜치는 2i-1개의 해를 갖는다: 즉 이들은 단위원(unity)의 2i-1 개의 원시 2i번째 근(primitive fourth roots)들 각각과 z의 (mod pj)의 곱이다. If y is a non-quadratic residue of CG (p), y (pj-1) / 4 (mod pj) is the square root of -1. In general, in the i selection of values from 1 to min (k, t), the branch of the 2 i th power of z has 2 i-1 solutions: that is, 2 i of the unit circle. the product of -1 of raw 2 i-th root (fourth primitive roots) of (mod p j) of each and z.
만약 y가 CG(p)의 비 이차 잉여(non-quadratic residue)인 경우, y의 (pj-1)/2i의 거듭제곱은 c라고 부르는 2i번째 원시 근(primitive fourth roots)이다. 단위원(unity)의 2i-1번째 에서 2i번째 원시 근(primitive fourth roots)은 c의 홀수 패리트 거듭제곱이다: 즉 c, c3(mod pj), c5(mod pj),...,(mod pj)이다.If y is a CG (p) a secondary non-redundant (non-quadratic residue) of the case, the y (p j -1) / 2 i 2 i -th raw near-power is called the c (fourth primitive roots) of. The 2 i-1 to 2 i primitive fourth roots of the unitity are the odd parit powers of c: c, c 3 (mod pj), c 5 (mod pj), and so on. .., (mod pj).
- 키 <(pj-1+2t)/2t+1,pj> 가 Gi를 gi 및 -gi 가 아닌 정수 r로 변환할 때, Gi의 랭크는 CG(p)의 짝수 패리티 값(u > 0)이 된다. 그리고 나서, Gi가 상당히 긴 브랜치에 위치하면, 즉 t ≥k + u 이면, Gi가 위치하는 브랜치에 2k개의 해가 존재한다. 2k 번째의 근을 계산하기 위하여, 상술한 제곱 근 계산 알고리즘을 k 랭크(rank)번 만큼 반복하는 것으로 충분하고, 해 z에 가까운 연속적인 결과의 제곱근을 계산할 수 있게 된다. 이러한 계산은 물론 2k 번째의 근에 직접적으로 접근하도록 최적화될 수 있고 그리고 나서 해 z를 얻기위한 단일 연산에서의 2k 번째의 근의 추정을 조정하는 것이 가능하다. 다른 모든 해를 얻기 위하여, y가 CG(pj)의 비이차 잉여인지가 유의하여야 하고, 그리고나서 y의 (pj-1)/2k 거듭제곱이 d라고 부르는 단위원(unity)의 2k 번째의 원시 근이 된다. 단위원의 2k2k번째 근들은 d의 연속적인 거듭제곱이다: 즉 d, d2(mod pj), d3(mod pj),...,(mod pj)이고, (mod pj)가 1과 같다. Gi가 위치한 브랜치에서의 2k 해는 이러한 근들 각각에서 z의 (mod pj)의 곱들이다. The key <(p j -1 + 2 t ) / 2 t + 1, p j> is the conversion to the G i and g i i -g integer r not the rank of G i is CG (p) - An even parity value (u> 0) is obtained. Then, if Gi is located in a fairly long branch, i.e. t> k + u, there are 2 k solutions in the branch where Gi is located. In order to calculate the 2 k th root, it is sufficient to repeat the above-mentioned square root calculation algorithm by k rank times, and the square root of successive results close to solution z can be calculated. This calculation can of course be optimized to directly access the 2 k th root and then it is possible to adjust the 2 k th root estimate in a single operation to obtain the solution z. To get all other solutions, it should be noted that y is the non-secondary surplus of CG (p j ), and then 2k of the unitity of (p j -1) / 2 k powers of y called d. First primitive root. The 2 k 2 k th roots of the unit circle are successive powers of d: d, d 2 (mod pj), d 3 (mod pj), ..., (mod pj), (mod pj) is equal to one. The 2 k solution at the branch where G i is located is the product of (mod p j ) of z in each of these roots.
요약하면, 알려진 k,t 및 u를 가지고, 소인수 p 및 기수 g에 대한 콤포넌트(component)를 계산하기 위해, 아래의 방식이 사용된다: 즉,In summary, to calculate the components for prime factors p and base g with known k, t and u, the following scheme is used:
1) 정수가 계산된다: 즉, 키 <s,p> 를 계산하기 위하여 1) An integer is calculated: ie to calculate the key <s, p>
s ≡(p-1+2t)/2t+1)k(mod(p-1)/2t) 를 계산한다. 그리고나서, 키 <s,p> 는 z ≡Gs(mod p)를 얻기 위하여 G에 적용된다. u 값에 따라서, 단계(2) 또는 단계(3)으로 통과하게 된다.Calculate s ≡ (p-1 + 2 t ) / 2 t + 1 ) k (mod (p-1) / 2 t ). Then, the key <s, p> is applied to G to obtain z ≡ G s (mod p). Depending on the u value, it passes to step (2) or step (3).
2) u = 0 이면, z는 식(3.a)의 홀수 패리티 해이다. 여전히 min(2k-1,2t-1)개의 다른 짝수 패리티 랭크 해가 하나 또는 그 이상의 브랜치들 위에 있고, 매우 정확히는 min(k,t) 개의 다른 브랜치들에 있다. 1에서 min(k,t) 까지의 i 범위에서, z의 2i번째의 거듭제곱은 2i-1개의 해를 가지고 있다: 즉, 이들은 각각의 단위원의 2i-12i번째 원시 근(primitive roots of unity)과 z의 (mod p)와의 곱이다. 식 (3.a)의 일반적인 해는 zz로 표시한다. 상기 연산은 단계(4)로 이어진다. 2) If u = 0, then z is the odd parity solution of equation (3.a). There are still min (2 k −1,2 t −1) other even parity rank solutions above one or more branches, and very precisely min (k, t) other branches. In the i range of 1 to min (k, t), the 2 i th power of z has 2 i-1 solutions: that is, they are the 2 i-1 2 i th primitive roots of each unit circle. The product of (primitive roots of unity) and (mod p) of z. The general solution of equation (3.a) is represented by zz. The operation continues with step (4).
3) u > 0 이면, 식(3.a)의 모든 해는 짝수 패리티 해이다. 2k개의 해들이 있고 G가 위치하는 브랜치 내에 모두 존재하고; 즉, t-u ≥k 이다. 해를 계산하기 위하여, 아래의 알고리즘은 - 키 <(p-1)/2t,p> 를 CG(p)의 비 이차 잉여에 적용하는 것에 의해서 얻어지는 정수 b 뿐만아니라, z에 의해 초기화 되는 w 및 2 에서 2t-2 사이 값을 갖는 jj 인 - 두개의 변수들을 사용한다. 3) If u> 0, then all solutions in equation (3.a) are even parity solutions. There are 2 k solutions and all are in the branch where G is located; That is, tu ≥ k. To compute the solution, the algorithm below is initialized by z as well as the integer b obtained by applying the key <(p-1) / 2 t , p> to the non-secondary surplus of CG (p) And jj with a value between 2 and 2 t-2 .
아래의 시퀀스는 k 랭크 횟수만큼 반복된다. The following sequence is repeated by the number of k ranks.
1 에서 t-2 까지의 인덱스 ii 범위에서, 아래의 연산이 반복된다: 즉 w2/G(mod p)가 계산되고 키 <2t-ii-1,p> 는 결과치가 +1 또는 -1 값을 얻도록 적용된다. (그렇지 않으면, 상기 후보값은 소수가 아니라는 증거가 된다.) 만약 그 결과가 -1 이면, jj = 2ii가 계산되고, c≡bjj 이고, 그리고나서 w는 wc(mod p)로 치환되며, 그리고나서 다음 인덱스 ii 로 통과한다. 만약 +1 이 얻어지면, 다음 인덱스 ii로 통과한다. In the range of index ii from 1 to t-2, the following operation is repeated: i.e. w 2 / G (mod p) is calculated and the key <2 t-ii-1 , p> has a result of +1 or -1 Applied to get the value. (Otherwise, the candidate value is proof that it is not a prime number.) If the result is -1, jj = 2 ii is calculated, c≡b jj , and then w is replaced by wc (mod p). , And then pass to the next index ii. If +1 is obtained, then pass to the next index ii.
알고리즘의 끝에서, 변수 w는 za 값을 갖는다. G가 위치하는 브랜치에서의 2k 개의 해는 단위원의 2k번째 근 각각과 za의 (mod p)와의 곱이 된다. 식(3.a)의 일반해는 zz로 표시된다. 상기 연산은 단계(4)로 넘어간다. At the end of the algorithm, the variable w has a za value. The 2 k solutions in the branch where G is located are the product of each of the 2 kth roots of the unit circle and (mod p) of za. The general solution of equation (3.a) is represented by zz. The operation goes to step (4).
4) 알려진 zz와 함께, 성분 값은 그로부터 추론된다: 즉, 식 GQv≡1(mod n)이 사용될 때 zz 계수(modulo) p 의 인버스 값이고, 식 G ≡Qv (mod n)가 사용될 때 zz 값이다. 4) With known zz, the component value is deduced therefrom: that is, the inverse value of the zz modulo p when the equation GQ v ≡1 (mod n) is used, and the equation G ≡Q v (mod n) is used. When the zz value.
주의. 비밀 콤포넌트들 및 비밀 값들을 얻기위한 다양한 방법들이 있다. f 콤포넌트들의 집합이 알려져 있다면, 즉 주어진 기수들의 f 콤포넌트들에서, 차이니스 잉여 기법(Chinese remainder technique)이 그와 일치하는 비밀 값을 계산하기 위하여 사용된다. 주어진 공개 값 G 및 계수 n 에서, 많은 가능한 비밀 값들 Q를 갖는 것이 가능하다는 것을 볼 수 있다. n이 3(mod 4)에 연관되는 두개의 소인수들의 곱일 때, 그들 중 4개가 존재하고; n이 3(mod 4)에 연관되는 세개의 소인수들의 곱일 때, 그들 중 8개가 존재하고; n이 3(mod 4)에 연관되는 두개의 소인수들 및 5(mod 8)에 연관되는 하나의 소인수의 곱일 때, 그들 중 16개가 존재한다. 이러한 다수개의 값들의 사용은 GQ2 를 사용하는 칩카드(chip card)의 전기적인 소비의 분석에 의한 어택(attack)들을 복잡하게 할 수 있다. Caution There are various ways to obtain secret components and secret values. If a set of f components is known, i.e. at f components of a given radix, the Chinese remainder technique is used to calculate the corresponding secret value. It can be seen that at a given publication value G and coefficient n, it is possible to have many possible secret values Q. when n is the product of two prime factors associated with 3 (mod 4), there are 4 of them; when n is the product of three prime factors associated with 3 (mod 4), there are eight of them; When n is the product of two prime factors associated with 3 (mod 4) and one prime factor associated with 5 (mod 8), there are 16 of them. The use of these multiple values can complicate the attacks by analyzing the electrical consumption of the chip card using GQ2.
t가 증가할 때, 프로그램은 점점더 드문 경우들로 복잡하게 된다. 즉, 소수들은 아래와 같은 평균값들로 분배된다: 즉, 두개중의 하나에서 t=1, 넷중의 하나에서 t=2, 여덟 중의 하나에서 t=3 등이다. 추가적으로, m 기수들에 의한 제한들은 후보값들이 점점더 수용할 수 없게 만든다. 경우가 어떠하든, 조합된 모듈리(moduli)는 확실하게 GQ2 기법의 일부를 형성하고; GQ2 계수의 형태는 동적 인증성 및 디지탈 서명 프로토콜(protocol)들에 영향을 준다. As t increases, the program becomes more and more complicated in rare cases. That is, the prime numbers are divided by the following average values: t = 1 in one of the two, t = 2 in one of the four, t = 3 in one of the eight, and so on. In addition, the limitations by the m radix make the candidate values increasingly unacceptable. In any case, the combined moduli certainly form part of the GQ2 technique; The form of the GQ2 coefficients affects dynamic authentication and digital signature protocols .
도 3은 9(mod 16)과 연관된 소인수 p를 가진 사이클 내에서 Gi = gi 2 를 도시 하고, 즉 k ≥3 뿐만아니라 t=3, u=0 이다. FIG. 3 shows G i = g i 2 in a cycle with a prime factor p associated with 9 (mod 16), ie t = 3, u = 0 as well as k ≧ 3.
b ≡ b ≡
b8 ≡1(mod p)b 8 ≡1 (mod p)
b4 ≡-1(mod p)b 4 ≡-1 (mod p)
라는 것을 유의해야 한다. It should be noted that
도 4는 65(mod 128)과 연관된 소인수 p를 가진 사이클 내에서 Gi = gi 2 를 도시하고, 즉 k = 4 및 u = 2 일뿐만아니라 t=6 이다. FIG. 4 shows G i = g i 2 in a cycle with prime factor p associated with 65 (mod 128), ie k = 4 and u = 2 as well as t = 6.
k = 6 , v = 64, m = 3, 세개의 기수:g1 = 3, g2 = 5, g3 = 7, 및 f = 3 를 가진, 즉 세개의 소인수를 가진 계수:3(mod 4)와 연관된 두개 및 5(mod 8)과 연관된 하나를 가진 GQ2 의 키들의 첫번째 조합이 있다. g = 2 는 5(mod 8)에 연관된 소인수와 양립할 수 없다. k = 6, v = 64, m = 3, three bases: g 1 = 3, g 2 = 5, g 3 = 7, and f = 3, that is, a factor with three prime factors: 3 (mod 4 There is a first combination of keys of GQ2 with two associated with) and one associated with 5 (mod 8). g = 2 is not compatible with the prime factors associated with 5 (mod 8).
아래의 것은 5(mod 8) 과 연관된 p3에 관련된 성분의 다른 가능한 값이다.
Below are other possible values of the component related to p3 associated with 5 (mod 8).
아래는 CG(p) 내에서의 -1의 제곱근이다: 즉, c = 2(p3-1)/4(mod p3)=Below is the square root of -1 in CG (p): c = 2 (p3-1) / 4 (mod p 3 ) =
아래는 GQ2 키들의 두번째 세트이고, 이는 k=9, v=512, m=2, 및 두개의 기수들이 g1=2 및 g2=3 , 그리고 f=3 이며, 3(mod 4)에 연관되는 세개의 소인수들을 제공한다. Below is the second set of GQ2 keys, which are k = 9, v = 512, m = 2, and the two radixes g1 = 2 and g2 = 3, and f = 3, three associated with 3 (mod 4) Gives the prime factors of.
본 발명은 GQ2 키의 세트를, 즉 지수 v가 2k와 같은, 모듈리(moduli) n 및 공개 및 비밀 값 G 및 Q 각각의 쌍들을, 생성하는 방법을 기술한다. 이러한 키들의 세트는 엔티티의 인증성, 및/또는 메시지의 무결성 및/또는 인증성을 검증하도록 구성된 방법을 사용한다. The present invention describes a method for generating a set of GQ2 keys, ie, pairs of moduli n and public and secret values G and Q, each with an index v equal to 2k . This set of keys uses a method configured to verify the authenticity of an entity and / or the integrity and / or authenticity of a message.
프랑스 텔레콤, TDF 와 Mathrizk사가 출원하고 발명자는 Louis Guillou 및 Jean-Jacques Quisquater인 본 출원과 동일자로 출원된 출원에서, 엔티티의 인증성, 및/또는 메시지의 무결성 및/또는 인증성을 검증하도록 구성된 방법, 시스템, 및 장치들이 청구되어 있다. 이러한 두개의 출원은 여기에서 참고적으로 구체화된다. In an application filed by French Telecom, TDF and Mathrizk, and filed on the same day as the inventor of the invention, Louis Guillou and Jean-Jacques Quisquater, the method is configured to verify the authenticity of the entity and / or the integrity and / or authenticity of the message. , Systems, and devices are claimed. These two applications are incorporated herein by reference.
Claims (24)
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9901065A FR2788910A1 (en) | 1999-01-27 | 1999-01-27 | Banking message authentication technique having private/public word transfer power two relationship connected with authentication unit knowing relation and carrying out confirmation calculations. |
FR99/01065 | 1999-01-27 | ||
FR99/03770 | 1999-03-23 | ||
FR9903770A FR2788911A1 (en) | 1999-01-27 | 1999-03-23 | Banking message authentication technique having private/public word transfer power two relationship connected with authentication unit knowing relation and carrying out confirmation calculations. |
FR9912467A FR2788912B1 (en) | 1999-01-27 | 1999-10-01 | METHOD, SYSTEM, DEVICE FOR PROVIDING THE AUTHENTICITY OF AN ENTITY AND / OR THE INTEGRITY AND / OR AUTHENTICITY OF A MESSAGE BY MEANS OF FIRST PARTICULAR FACTORS |
FR99/12468 | 1999-10-01 | ||
FR99/12465 | 1999-10-01 | ||
FR9912465A FR2788908B1 (en) | 1999-01-27 | 1999-10-01 | METHOD, SYSTEM, DEVICE FOR PROVIDING THE AUTHENTICITY OF AN ENTITY AND / OR THE INTEGRITY AND / OR AUTHENTICITY OF A MESSAGE |
FR99/12467 | 1999-10-01 | ||
FR9912468A FR2824974B1 (en) | 1999-01-27 | 1999-10-01 | METHOD FOR PROVIDING THE AUTHENTICITY OF AN ENTITY OR THE INTEGRITY OF A MESSAGE BY MEANS OF A PUBLIC EXHIBITOR EQUAL TO A POWER OF TWO. |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010108144A KR20010108144A (en) | 2001-12-07 |
KR100676461B1 true KR100676461B1 (en) | 2007-01-31 |
Family
ID=26234789
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020017009492A KR20010108143A (en) | 1999-01-27 | 2000-01-27 | Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of a message |
KR1020017009491A KR100676460B1 (en) | 1999-01-27 | 2000-01-27 | Method for proving the authenticity of an entity and/or the integrity of a message by means of a public exponent equal to the power of two |
KR1020017009493A KR100676461B1 (en) | 1999-01-27 | 2000-01-27 | Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of a message using specific prime factors |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020017009492A KR20010108143A (en) | 1999-01-27 | 2000-01-27 | Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of a message |
KR1020017009491A KR100676460B1 (en) | 1999-01-27 | 2000-01-27 | Method for proving the authenticity of an entity and/or the integrity of a message by means of a public exponent equal to the power of two |
Country Status (2)
Country | Link |
---|---|
KR (3) | KR20010108143A (en) |
FR (4) | FR2788911A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2822002B1 (en) * | 2001-03-12 | 2003-06-06 | France Telecom | CRYPTOGRAPHIC AUTHENTICATION BY EPHEMER MODULES |
FR2865590A1 (en) | 2004-01-23 | 2005-07-29 | France Telecom | Keys establishing method for proving e.g. authenticity of entity, involves determining adjustment parameter such that each public value is of odd row with respect to each prime factor |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2620248B1 (en) * | 1987-09-07 | 1989-11-24 | France Etat | METHODS OF AUTHENTICATING ACCREDITATIONS OR MESSAGES WITH ZERO KNOWLEDGE AND SIGNATURE OF MESSAGES |
EP0374225B1 (en) * | 1988-05-19 | 1993-01-20 | Ncr International Inc. | Method and device for authentication |
EP0381523A3 (en) * | 1989-02-02 | 1993-03-03 | Kabushiki Kaisha Toshiba | Server-aided computation method and distributed information processing unit |
FR2733379B1 (en) * | 1995-04-20 | 1997-06-20 | Gemplus Card Int | PROCESS FOR GENERATING ELECTRONIC SIGNATURES, ESPECIALLY FOR SMART CARDS |
DE69704684T2 (en) * | 1996-02-23 | 2004-07-15 | Fuji Xerox Co., Ltd. | Device and method for authenticating a user's access rights to resources according to the challenge-response principle |
-
1999
- 1999-03-23 FR FR9903770A patent/FR2788911A1/en active Pending
- 1999-10-01 FR FR9912467A patent/FR2788912B1/en not_active Expired - Fee Related
- 1999-10-01 FR FR9912465A patent/FR2788908B1/en not_active Expired - Fee Related
- 1999-10-01 FR FR9912468A patent/FR2824974B1/en not_active Expired - Fee Related
-
2000
- 2000-01-27 KR KR1020017009492A patent/KR20010108143A/en not_active Application Discontinuation
- 2000-01-27 KR KR1020017009491A patent/KR100676460B1/en active IP Right Grant
- 2000-01-27 KR KR1020017009493A patent/KR100676461B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20010108142A (en) | 2001-12-07 |
KR100676460B1 (en) | 2007-01-31 |
FR2788912B1 (en) | 2002-08-09 |
KR20010108144A (en) | 2001-12-07 |
KR20010108143A (en) | 2001-12-07 |
FR2824974A1 (en) | 2002-11-22 |
FR2788908B1 (en) | 2003-09-26 |
FR2788912A1 (en) | 2000-07-28 |
FR2788908A1 (en) | 2000-07-28 |
FR2788911A1 (en) | 2000-07-28 |
FR2824974B1 (en) | 2004-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Camenisch et al. | Efficient protocols for set membership and range proofs | |
US4759064A (en) | Blind unanticipated signature systems | |
Bos et al. | Provably unforgeable signatures | |
Couteau et al. | Removing the strong RSA assumption from arguments over the integers | |
JP4809310B2 (en) | Method, system, device for proving entity authenticity or message integrity | |
US6212637B1 (en) | Method and apparatus for en-bloc verification of plural digital signatures and recording medium with the method recorded thereon | |
US7346637B2 (en) | Polynomial time deterministic method for testing primality of numbers | |
US7461261B2 (en) | Method to generate, verify and deny an undeniable signature | |
Monnerat et al. | Undeniable signatures based on characters: How to sign with one bit | |
JP4772189B2 (en) | Method, system, and apparatus for proving message integrity and / or authenticity using entity authenticity and / or special prime factors | |
Lim et al. | A study on the proposed Korean digital signature algorithm | |
Cheon et al. | Use of sparse and/or complex exponents in batch verification of exponentiations | |
Kotukh et al. | Method of Security Improvement for MST3 Cryptosystem Based on Automorphism Group of Ree Function Field | |
KR100676461B1 (en) | Method, system, device for proving the authenticity of an entity and/or the integrity and/or the authenticity of a message using specific prime factors | |
Ateniese et al. | Leakage-resilient identification schemes from zero-knowledge proofs of storage | |
Tada | A secure multisignature scheme with signing order verifiability | |
US6978372B1 (en) | Verification of correct exponentiation or other operations in cryptographic applications | |
JP2005513564A (en) | Cryptography to distribute the load across multiple entities and their devices | |
KR100844546B1 (en) | Method, system, device for proving the authenticity of an entity or integrity of a message | |
KR20050016988A (en) | Cryptographic method and devices for facilitating calculations during transactions | |
Di Crescenzo et al. | Delegating a Product of Group Exponentiations with Application to Signature Schemes (Submission to Special NutMiC 2019 Issue of JMC). | |
RU2325767C1 (en) | Method of generation and authenticity check of electronic digital signature, which certifies electronic document | |
JP2004222331A (en) | Method for enabling user to check legality of electronic commerce/information service provider | |
Metzgar | RSA cryptosystem: an analysis and python simulator | |
Sato et al. | An efficient method of generating rational points on elliptic curves |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121227 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20131227 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20141230 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20151230 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20161229 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20171228 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20181227 Year of fee payment: 13 |