[go: up one dir, main page]

WO2015030553A1 - Lattice-based certificateless signature system and method - Google Patents

Lattice-based certificateless signature system and method Download PDF

Info

Publication number
WO2015030553A1
WO2015030553A1 PCT/KR2014/008144 KR2014008144W WO2015030553A1 WO 2015030553 A1 WO2015030553 A1 WO 2015030553A1 KR 2014008144 W KR2014008144 W KR 2014008144W WO 2015030553 A1 WO2015030553 A1 WO 2015030553A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
entity
signature
lattice
trapdoor
Prior art date
Application number
PCT/KR2014/008144
Other languages
French (fr)
Korean (ko)
Inventor
김기성
정익래
박소현
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Publication of WO2015030553A1 publication Critical patent/WO2015030553A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Definitions

  • the present invention relates to an electronic signature system and method.
  • Digital signature technology is used for authentication and integrity of data and is one of the most widely used technologies in cryptography.
  • the signer generates a signature using a private key for a given message, and the verifier uses the public key paired with the private key to determine the validity of the signature.
  • certificate-based digital signature systems are expensive to maintain, and the issuing authority must handle the enormous traffic. It also has a trust issue with the certificate itself.
  • Korean Patent Publication No. 0369408 (name of the invention: "a method for designating a recipient-specific proxy signature in mobile communication") discloses a signature generation method based on the difficulty of discrete algebra problems.
  • Korean Laid-Open Patent Publication No. 2005-0128506 (name of the invention: "Limited validator signature method using parallel mapping”) discloses a method for generating a specified validator signature using the parallel mapping.
  • the present invention has been made to solve the above problems, and an object thereof is to provide an electronic signature system and method having high safety and efficiency.
  • an electronic signature system uses a master key and public identification information of a user entity to generate a first private key and assign it to the user entity. individual; And a user entity that generates its own public key and a second private key; wherein the user entity is a verifier entity that generates a signature generated using the public key, the first private key, and the second private key.
  • Signer object to send to; And a verifier entity that verifies a signature received from the signer entity using the public identification information of the signer entity and a public key, wherein the master key, the first secret key, and the second secret key are generated.
  • a trapdoor generated based on the difficulty of a small integer solution (SIS) problem on the lattice is used.
  • a digital signature method comprising: (a) a master entity setting security parameters and generating its own master key; (b) the master entity generating and assigning a first private key to the user entity based on the publicly identified identification information of the user entity including a signer entity and a verifier entity; (c) the user entity generating its public key and second private key; (d) sending a signature generated by the signer entity using its public key, first secret key, and second secret key to the verifier entity; And (e) verifying, by the verifier entity, the signature received from the signer entity using the signer entity's published identification information and a public key, wherein the master key, the first secret key, and A trapdoor generated based on the difficulty of a small integer solution (SIS) problem on a lattice is used to generate the second secret key.
  • SIS small integer solution
  • the present invention provides an electronic signature system and method having high safety and efficiency.
  • the present invention since the present invention does not use a certificate, there is no certificate management cost and security problem of a certificate-based digital signature system, and there is no need to fully trust an accredited certification authority.
  • certificate-free that is, certificate-free, digital signature techniques known to date.
  • FIG. 1 illustrates a structure of an electronic signature system according to an embodiment of the present invention.
  • FIG. 2 shows the structure of the system of FIG. 1 from another perspective.
  • FIG 3 illustrates a flow of an electronic method according to an embodiment of the present invention.
  • FIG. 4 shows a flow of a system setting method according to an embodiment of the present invention.
  • Figure 5 shows the flow of a first secret key issuing method according to an embodiment of the present invention.
  • FIG. 6 illustrates a flow of a public key and second secret key generation method according to an embodiment of the present invention.
  • FIG. 7 shows a flow of a signature method according to an embodiment of the present invention.
  • FIG. 8 illustrates a flow of a verification method according to an embodiment of the present invention.
  • FIG. 9 is a flow diagram illustrating a trapdoor generation method according to an embodiment of the present invention.
  • Figure 10 shows the flow of the trapdoor expansion method according to an embodiment of the present invention.
  • FIG. 11 illustrates a flow of a Gaussian sampling method according to an embodiment of the present invention.
  • the certificate-free digital signature system which is certificate-free, solves the problem of a high cost of maintaining and managing the certificates of the conventional certificate-based digital signature system and the occurrence of certificate-related accidents such as leakage or manipulation. It was.
  • Lattice-based cryptosystems have had many problems due to lack of security proofs, but recently, Lattice-based cryptosystems have been introduced based on worst-case problems. In view of the fact that existing cryptosystems are designed based on average-case problems, we can see that they provide very high security.
  • Lattice-based cryptographic systems are very efficient compared to conventional techniques.
  • the computational complexity of factoring, discrete algebra, pairing, etc. However, the computational complexity in Lattice to be.
  • the present invention is to provide a certificate-free electronic signature technology that can prove the safety in a lattice environment.
  • FIG. 1 and 2 illustrate a structure of an electronic signature system according to an embodiment of the present invention.
  • the electronic signature system 10 includes an object such as a user and a master (M) including a signer (X), a verifier (Y), and a third party (Z) connected through a network. entity) participates.
  • M master
  • X signer
  • Y verifier
  • Z third party
  • signers (X), validator (Y), and third party (Z) entity are all user entities, and their roles are not fixed, and there is no limit to the number of user entities participating in the electronic signature system 10. It will be easy to understand.
  • each of these user entities may mean an entity such as a device or software used by the user. Since this is a commonly used concept, an explicit description thereof is omitted herein.
  • a user may refer to a user entity such as a signer (X), a verifier (Y), a third party (Z), and the like.
  • the master (M) should issue a public certificate to each user, but the electronic signature system 10 according to an embodiment of the present invention, the master (M) is a user (X)
  • the first secret key is issued to the user (X, Y, Z) by using the public identification information (ID) of Y, Z). Therefore, the electronic signature system 10 does not need to manage the public certificate for both the master M and the users X, Y, and Z, so that the electronic signature system 10 has high efficiency and safety. This is because the electronic signature system 10 has no cost or load due to the management of the public certificate, and there is no security risk such as public certificate theft.
  • the electronic signature system 10 further generates stability because the users X, Y, and Z generate themselves a second secret key, which is another secret key not exposed to the master M.
  • the electronic signature system 10 is a public key based method.
  • the public key-based scheme generates a pair of keys corresponding to each other so that the double public key is used for encryption or signature verification, and the secret key is an asymmetric encryption or signature scheme for decryption or signature.
  • the secret key functions like a stamp on a document.
  • the electronic signature system 10 is based on the difficulty of a small integer solution (SIS) problem and a learning with errors (LWE) problem in a lattice.
  • SIS small integer solution
  • LWE learning with errors
  • the decryption key corresponding to the encryption key used at the time of encryption is a trapdoor.
  • the encryption key may be disclosed even if the encryption key exists, so that it can be decrypted.
  • trapdoors or decryption keys should not be disclosed. Therefore, in the public key based environment, the information used to generate the trapdoor is disclosed as the public key, and the trapdoor is not disclosed as the secret key.
  • LSIS-based SIS problem and the LWE problem are mathematical problems that are difficult to solve in the worst case as described above. Therefore, many attempts have been made to apply them to encryption and digital signature systems.
  • Lattice is the collection of all points created through the linear combination of two basis in space. If you don't know the basis, even if the third party (Z) finds a point, it is very difficult to find out where the nearest lattice point is. In addition, the third party (Z) has the advantage that it is very difficult to find a lattice point within a certain length without knowing the basis.
  • the user object (X, Y, Z) is a signer for transmitting to the verifier entity (Y) a signature generated using its public key, the first secret key, and the second secret key And a verifier entity (Y) that verifies the signature received from the entity (X) and the signer entity (X) using the public identification information of the signer entity (X), and the public key.
  • a trapdoor generated based on a difficulty of a small integer solution (SIS) problem on a lattice is used to generate a master key, a first secret key, and a second secret key.
  • SIS small integer solution
  • a library L including a trapdoor generator L100, a trapdoor expansion unit L200, and a sampling unit L300 may be connected to or included therein.
  • the trapdoor generator L100 is a trap that is a short basis of the lattice generated from an arbitrary matrix selected from the master (M) and each user (A, B, C) uniform distribution (uniform distribution) You can create a door.
  • the trapdoor extension L200 may extend the lattice of the trapdoor to another lattice and generate an extended trapdoor that is a short base of another lattice.
  • the sampling unit L300 may sample the vector from the trapdoor extension L200 and the Gaussian distribution of the trapdoor.
  • each object (M) of the electronic signature system 10 in accordance with an embodiment of the present invention provides the basic functions for creating, extending, and using trapdoors. , X, Y, Z).
  • FIGS. 9 through 11 The operations performed by the trapdoor generator L100, the trapdoor extension L200, and the sampling unit L300 are illustrated in FIGS. 9 through 11.
  • the system setting unit 100 of the master M sets security parameters, selects a series of hash functions, and uses a trap door generated by using the trap door generation unit L100 as a master key which is its secret key. .
  • the system setting unit 100 also publishes the corresponding matrix generated together with the hash function.
  • the key issuer 200 of the master uses the trapdoor extension L200 to issue an extended trapdoor generated from the user's public identification information as the first secret key of the user.
  • the user's key generation unit 300 uses the trapdoor generated using the trapdoor generation unit L100 as its second secret key, and uses the generated corresponding matrix as its own public key.
  • the signer (X) uses the signing unit 400 to generate a first signature using its first private key and public key, and a second signature using its second private and public key. do.
  • the signer X generates a signature using the first signature and the second signature, and at this time, the trapdoor generator L100, the trapdoor extension L200, and the sampling unit L300 are used.
  • the signer X samples the vector from the Gaussian distribution of the first secret key to generate a first signature, and extends the lattice of the second secret key into an extended lattice using the public key.
  • the signer X generates an extended trapdoor, which is a short basis of the extended lattice, and samples a vector from the Gaussian distribution of the extended trapdoor to generate a second signature.
  • the verifier Y of the user verifies the first signature and the second signature by using the verifier 500 and the public identification information of the signer X, and the public key. Also, verifier Y accepts the signature received when it is determined that both the first signature and the second signature are legitimate signatures, and otherwise rejects it.
  • each entity of the electronic signature system 10 has the same keys as shown in the keystore associated with each entity of FIG.
  • the master M has a master key msk, which is a secret key that should not be disclosed to the outside. While the corresponding matrix is a public parameter with hash functions Published as.
  • Identification information and public key of each user are also disclosed.
  • the first and second secret keys of each user X, Y, and Z are not disclosed.
  • the master entity M sets security parameters and generates its own master key (S100).
  • the master object M generates a first secret key based on the publicly identified identification information of the user object X, Y, Z, including the signer object X and the verifier object Y, thereby generating the user object X. , Y, Z) (S200).
  • the user entity (X, Y, Z) generates its own public key and second secret key (S300).
  • the signer entity X transmits the signature generated using its public key, the first secret key, and the second secret key to the verifier entity Y (S400).
  • the verifier entity Y verifies the signature received from the signer entity X using the public identification information and the public key of the signer entity X (S500).
  • FIG. 4 shows a flow of a system setting method according to an embodiment of the present invention.
  • the master M selects a hash function (S110).
  • the system setting method generates a matrix A and a corresponding trapdoor by using the trapdoor generator L100 (S120).
  • the trapdoor is a short basis of lattice generated based on matrix A.
  • the system setting method outputs the matrix A and the hash function as public parameters (S130).
  • the generated trapdoor is used as a master key (S140).
  • the system setting step (S100) is a step of determining a master key of the master (M), which is an institution that issues various keys and issues keys for use in the system.
  • FIG. 5 shows a flow of a first secret key issuing method according to an embodiment of the present invention.
  • the master M receives a user ID (S210).
  • the matrix B is calculated by hashing the user ID (S220).
  • the master key is extended based on the matrix B (S230).
  • the extended master key is transmitted to the user (X, Y, Z) as the first secret key for the ID (S240).
  • the first private key issuing step S200 is a step in which the master M issues a first private key for a given using its master key.
  • M Master (M) is , And After running the algorithm, of Set as the primary private key for, and in a secure way Pass the key to the signer.
  • FIG. 6 illustrates a flow of a method for generating a public key and a second secret key according to an embodiment of the present invention.
  • the users X, Y, and Z generate their public and second secret keys completely independent of the master M. Therefore, as described above, the users X, Y, and Z do not have to trust the master M entirely, and since the second secret key is not known to the master M, the electronic signature method according to an embodiment of the present invention is safe. This is high.
  • the users X, Y, and Z generate the matrix C and the corresponding trapdoors by using the trapdoor generator L100 (S310).
  • the trapdoor is a short basis of lattice generated based on matrix C.
  • the matrix C is used as its public key (S320).
  • the generated trap door is used as a second secret key (S330).
  • the public key and the second secret key generation step (S300)
  • the user X, Y, and Z corresponding to the step of generating their own public key and second secret key.
  • the master M can directly know the first secret key of the user X, Y, and Z, but the second secret key is generated by the user X, Y, and Z. Because I can not know. Therefore, even if the master M does not know the second secret key, the signature of the signer X cannot be generated. As such, the certificate-free electronic signature system 10 according to an embodiment of the present invention has an advantage of not having to trust the master M entirely.
  • FIG. 7 illustrates a flow of a signature method according to an embodiment of the present invention.
  • the signer X receives the message m (S410).
  • a first signature is generated from its private key using the sampling unit L300 (S420). At this time, the hash value of the public key along with the message and arbitrary string is used.
  • the second secret key is expanded using the trapdoor expansion unit L200 (S440).
  • a second signature is generated from its extended second secret key using the sampling unit L300 (S450). The value that hashes the message with another random string is used.
  • a signature is generated using the first signature and the second signature (S460).
  • the generated signature is sent to the verifier Y (S470).
  • the signing step (S400) Signer (X) corresponding to his first private key And the second secret key Generating a signature for a given message using.
  • Signer (X) is the message Create a signature for
  • FIG. 8 shows a flow of a verification method according to an embodiment of the present invention.
  • the verifier Y receives the signature of the signer X (S510).
  • the verification step S500 is a step in which the verifier Y verifies the signature sent by the signer X corresponding to the ID.
  • 9 through 11 illustrate a method of generating, extending, and sampling a trapdoor based on the difficulty of an SIS problem on a lattice for use in issuing and signing a key according to an electronic signature method according to an embodiment of the present invention. It demonstrates concretely.
  • the present invention We use a full-rank integer lattice of dimensions, which has a finite index Is a discrete additive subgroup of. That is, a quoted group This is finite.
  • One lattice silver Linear independent basis vectors Is defined equal to the set of all integer linear combinations.
  • the present invention uses the following specific forms of integer lattice. here and Is an integer, dimension Is the security parameter used in the present invention, all other parameters Suppose it is nested into functions of. here Dimensional hard lattice is a parity check matrix It is created by and defined as
  • the problem of hard lattice (short integer solution) on which the present invention is based belongs to the average-case hardness problems, and Miklos Ajtai describes this problem as the worst-case hardness problems. I've found a way to connect.
  • FIG. 9 is a flowchart illustrating a trapdoor generation method according to an embodiment of the present invention.
  • the security parameter is input (SL110).
  • An arbitrary matrix is selected from the uniform distribution (SL120).
  • a lattice is generated from the matrix (SL130).
  • the calculated short basis is outputted along with the matrix as a trapdoor (SL150).
  • the trapdoor generator L100 is a matrix randomly selected from the uniform distribution. And the lattice generated from these matrices Short basis of Algorithm to generate To provide.
  • FIG. 10 is a flowchart illustrating a trapdoor expansion method according to an embodiment of the present invention.
  • An arbitrary matrix is selected from the uniform distribution (SL220).
  • the calculated short basis is output to the extended trapdoor (SL250).
  • the trapdoor extension L200 provides an algorithm that delegates the short basis of Lattice.
  • FIG. 11 illustrates a flow of a Gaussian sampling method according to an embodiment of the present invention.
  • a short basis of lattice, a sampling input value, and a sampling parameter are input (SL310).
  • a Gaussian distribution is generated (SL320).
  • the vector is sampled from the distribution (SL330).
  • the vector is output (SL340).
  • sampling unit L300 provides an algorithm for sampling the vector from the Gaussian distribution of the lattice.
  • Gaussian sampling is used by the signer X to extract a lattice vector to use for signing from its private key, i. E. The extended trapdoor.
  • Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media.
  • Computer readable media may include both computer storage media and communication media.
  • Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transmission mechanism, and includes any information delivery media.
  • a hardware system includes a processor, cache, memory, and one or more software applications and drivers related to the functions described above. can do.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention provides a digital signature system comprising: a master object for generating a first secret key by using a master key of the master object and published identification information of a user object, and then allocating the first secret key to the user object; and the user object for generating a public key of the user object and a second secret key, wherein the user object comprises: a signer object for transmitting, to a verifier object, a signature generated by using the public key, the first secret key and the second secret key of the signer object; and the verifier object for verifying the signature received from the signer object by using the published identification information of the signer object and the public key, and a trapdoor generated on the basis of the difficulty of a small integer solution (SIS) problem in a lattice is used for the generation of the master key, the first secret key and the second secret key.

Description

래티스 기반 인증서 비사용 서명 시스템 및 방법Lattice-based certificate unused signing system and method
본 발명은 전자 서명 시스템 및 방법에 관한 것이다.The present invention relates to an electronic signature system and method.
전자서명 기술은 데이터에 대한 인증 및 무결성 보장 등에 사용되며 암호 분야에서 가장 널리 사용되는 기술 중 하나이다. 이러한 전자서명 기술에서 서명자는 주어진 메시지에 대해 자신의 비밀키를 사용해 서명을 생성하며, 검증자는 비밀키와 쌍을 이루는 공개키를 사용해 해당 서명의 정당성을 판단한다.Digital signature technology is used for authentication and integrity of data and is one of the most widely used technologies in cryptography. In this digital signature technology, the signer generates a signature using a private key for a given message, and the verifier uses the public key paired with the private key to determine the validity of the signature.
이러한 환경에서 특정 공개키가 어떠한 사용자의 것인지를 증명하는 문제는 매우 중요하기 때문에 대부분의 환경에서는 신뢰할 수 있는 제3기관에서 발급하는 공인인증서를 통해 이러한 문제를 해결하고 있다. In this environment, the problem of proving which user is a specific public key is very important. In most environments, this problem is solved through a certificate issued by a trusted third party.
그러나 인증서 기반 전자 서명 시스템은 공인인증서 유지 관리를 위해 많은 비용을 감수해야하며, 이를 발급하는 기관은 막대한 트래픽을 처리해야 한다. 또한 인증서 자체에 대한 신뢰 문제도 가지고 있다.However, certificate-based digital signature systems are expensive to maintain, and the issuing authority must handle the enormous traffic. It also has a trust issue with the certificate itself.
이에 따라 S. S. Al-Riyami와 K. G. Paterson가 2003년 ASIACRYPT에서 발표한 “Certificateless Public Key Cryptography”라는 제목의 논문은 인증서를 사용하지 않는 전자서명 기술을 제안하였다. 인증서를 사용하지 않으므로 전술한 여러 문제가 해결되어 종래의 인증서 기반 전자 서명 시스템보다 높은 효율성 및 안전성을 제공한다.Accordingly, a paper titled “Certificateless Public Key Cryptography” published by A.AC.RYPT in 2003 by S. S. Al-Riyami and K. G. Paterson proposed a digital signature technology without a certificate. Since no certificate is used, the above-mentioned problems are solved, providing higher efficiency and security than conventional certificate-based digital signature systems.
한편, 서명의 안전성을 높이기 위해 기반이 되는 수학적 난제에 대한 연구도 많이 이루어졌다. 예를 들어, 이산 대수 문제의 어려움, 겹선형 함수의 어려움 등 평균적인 경우 어려운 문제(average-case hardness problems)들에서 최악의 경우에도 어려운 문제(worst-case hardness problems)로 알려진 래티스(lattice) 상에서의 SIS(small integer solution) 문제와 LWE(learning with errors) 문제의 어려움에 기반을 두는 서명 기법들로 발전하고 있다. 이러한 래티스 기반 암호화 기술은 높은 안전성뿐 아니라 연산 효율성 또한 제공한다. 특히 양자 컴퓨터 분석에 대해 내성이 있는 것으로 알려져 최근 이에 대한 연구가 크게 늘고 있다.On the other hand, a lot of research has been done on the mathematical difficulties that are the foundation for enhancing the safety of signatures. For example, on average lattice, known as worst-case hardness problems, to average-case hardness problems, such as the difficulty of discrete algebraic problems and the difficulty of fold-line functions. Significance techniques are evolving based on the difficulty of small integer solution (SIS) problems and learning with errors (LWE) problems. This lattice-based encryption technology provides not only high security but also operational efficiency. In particular, it is known to be resistant to quantum computer analysis, and research on this has been greatly increased in recent years.
따라서 래티스 기반의 암호 기술을 인증서 비사용 전자 서명 기술에 적용시킨다면, 더욱 높은 안전성과 효율성을 갖는 전자 서명 기술을 제공할 수 있을 것이다.Therefore, if Lattice-based cryptography is applied to certificate-free digital signature technology, it is possible to provide digital signature technology with higher security and efficiency.
전자 서명과 관련하여 한국 등록특허공보 제0369408호(발명의 명칭: "이동 통신에서의 수신자 지정 대리 서명 방법")에는 이산 대수 문제의 어려움에 기반을 둔 서명 생성 방법이 개시되어 있다.Regarding an electronic signature, Korean Patent Publication No. 0369408 (name of the invention: "a method for designating a recipient-specific proxy signature in mobile communication") discloses a signature generation method based on the difficulty of discrete algebra problems.
또한, 한국 공개특허공보 제2005-0128506호(발명의 명칭: "겹선형 사상을 이용한 한정적 검증자 서명 방법")에는 겹선형 사상을 이용한 지정된 검증자 서명 생성 방법이 개시되어 있다. In addition, Korean Laid-Open Patent Publication No. 2005-0128506 (name of the invention: "Limited validator signature method using parallel mapping") discloses a method for generating a specified validator signature using the parallel mapping.
본 발명은 전술한 문제를 해결하기 위한 것으로서, 그 목적은 높은 안전성 및 효율성을 갖는 전자 서명 시스템 및 방법을 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object thereof is to provide an electronic signature system and method having high safety and efficiency.
상기와 같은 목적을 달성하기 위한 본 발명의 제 1 측면에 따른 전자 서명 시스템은 자신의 마스터 키 및 사용자 개체의 공개된 식별 정보를 사용하여, 제 1 비밀키를 생성하여 상기 사용자 개체에게 할당하는 마스터 개체; 및 자신의 공개키 및 제 2 비밀키를 생성하는 사용자 개체;를 포함하되, 상기 사용자 개체는 상기 자신의 공개키, 제 1 비밀키, 및 제 2 비밀키를 사용하여 생성한 서명을 검증자 개체에게 전송하는 서명자 개체; 및 상기 서명자 개체로부터 수신한 서명을 상기 서명자 개체의 공개된 식별 정보, 및 공개키를 사용하여 검증하는 검증자 개체;를 포함하되, 상기 마스터 키, 제 1 비밀키, 및 상기 제 2 비밀키 생성에 래티스(lattice) 상에서의 SIS(small integer solution) 문제의 어려움에 기반하여 생성한 트랩도어(trapdoor)가 사용되는 것을 특징으로 한다.In order to achieve the above object, an electronic signature system according to the first aspect of the present invention uses a master key and public identification information of a user entity to generate a first private key and assign it to the user entity. individual; And a user entity that generates its own public key and a second private key; wherein the user entity is a verifier entity that generates a signature generated using the public key, the first private key, and the second private key. Signer object to send to; And a verifier entity that verifies a signature received from the signer entity using the public identification information of the signer entity and a public key, wherein the master key, the first secret key, and the second secret key are generated. A trapdoor generated based on the difficulty of a small integer solution (SIS) problem on the lattice is used.
상기와 같은 목적을 달성하기 위한 본 발명의 제 2 측면에 따른 전자 서명 방법은 (a) 마스터 개체가 보안 파라미터를 설정하고 자신의 마스터 키를 생성하는 단계; (b) 상기 마스터 개체가 서명자 개체 및 검증자 개체를 포함하는 사용자 개체의 공개된 식별 정보에 기초하여, 제 1 비밀키를 생성하여 상기 사용자 개체에게 할당하는 단계; (c) 상기 사용자 개체가 자신의 공개키 및 제 2 비밀키를 생성하는 단계; (d) 상기 서명자 개체가 자신의 공개키, 제 1 비밀키, 및 제 2 비밀키를 사용하여 생성한 서명을 검증자 개체에게 전송하는 단계; 및 (e) 상기 검증자 개체가 상기 서명자 개체로부터 수신한 서명을 상기 서명자 개체의 공개된 식별 정보, 및 공개키를 사용하여 검증하는 단계;를 포함하되, 상기 마스터 키, 제 1 비밀키, 및 상기 제 2 비밀키 생성에 래티스(lattice) 상에서의 SIS(small integer solution) 문제의 어려움에 기반하여 생성한 트랩도어(trapdoor)가 사용되는 것을 특징으로 한다. According to a second aspect of the present invention, there is provided a digital signature method comprising: (a) a master entity setting security parameters and generating its own master key; (b) the master entity generating and assigning a first private key to the user entity based on the publicly identified identification information of the user entity including a signer entity and a verifier entity; (c) the user entity generating its public key and second private key; (d) sending a signature generated by the signer entity using its public key, first secret key, and second secret key to the verifier entity; And (e) verifying, by the verifier entity, the signature received from the signer entity using the signer entity's published identification information and a public key, wherein the master key, the first secret key, and A trapdoor generated based on the difficulty of a small integer solution (SIS) problem on a lattice is used to generate the second secret key.
본 발명은 높은 안전성 및 효율성을 갖는 전자 서명 시스템 및 방법을 제공한다.The present invention provides an electronic signature system and method having high safety and efficiency.
구체적으로, 본 발명은 인증서를 사용하지 않기 때문에 인증서 기반 전자 서명 시스템이 갖는 인증서 관리 비용 및 안전성 문제가 없으며, 공인 인증 기관을 전적으로 신뢰하지 않아도 된다.Specifically, since the present invention does not use a certificate, there is no certificate management cost and security problem of a certificate-based digital signature system, and there is no need to fully trust an accredited certification authority.
또한, 본 발명은 최악의 경우에도 어려운 수학적 난제인 래티스 상에서의 SIS 문제의 어려움에 기반을 두고 있으므로, 안전성이 높다.In addition, the present invention is based on the difficulty of the SIS problem on Lattice, which is a difficult mathematical problem even in the worst case, and thus has high safety.
래티스 기반으로 설계되었기 때문에 래티스 기반 암호 시스템이 갖는 연산 효율성, 높은 안전성, 양자 컴퓨터 분석에 대한 내성의 장점을 나타낸다. 따라서 현재까지 알려진 무인증서 기반, 즉, 인증서 비사용 전자 서명 기법 중 가장 높은 안전성을 갖는다.Designed on a Lattice basis, it demonstrates the advantages of computational efficiency, high security, and immunity to quantum computer analysis. Therefore, it has the highest security among certificate-free, that is, certificate-free, digital signature techniques known to date.
도 1은 본 발명의 일실시예에 따른 전자 서명 시스템의 구조를 도시함.1 illustrates a structure of an electronic signature system according to an embodiment of the present invention.
도 2는 도 1의 시스템의 구조를 다른 관점에서 도시함.FIG. 2 shows the structure of the system of FIG. 1 from another perspective.
도 3는 본 발명의 일실시예에 따른 전자 방법의 흐름을 도시함.3 illustrates a flow of an electronic method according to an embodiment of the present invention.
도 4은 본 발명의 일실시예에 따른 시스템 설정 방법의 흐름을 도시함.4 shows a flow of a system setting method according to an embodiment of the present invention.
도 5는 본 발명의 일실시예에 따른 제 1 비밀키 발급 방법의 흐름을 도시함.Figure 5 shows the flow of a first secret key issuing method according to an embodiment of the present invention.
도 6은 본 발명의 일실시예에 따른 공개키 및 제 2 비밀키 생성 방법의 흐름을 도시함.6 illustrates a flow of a public key and second secret key generation method according to an embodiment of the present invention.
도 7은 본 발명의 일실시예에 따른 서명 방법의 흐름을 도시함.7 shows a flow of a signature method according to an embodiment of the present invention.
도 8은 본 발명의 일실시예에 따른 검증 방법의 흐름을 도시함.8 illustrates a flow of a verification method according to an embodiment of the present invention.
도 9는 본 발명의 일실시예에 따른 트랩도어 생성 방법의 흐름을 도시함.9 is a flow diagram illustrating a trapdoor generation method according to an embodiment of the present invention.
도 10은 본 발명의 일실시예에 따른 트랩도어 확장 방법의 흐름을 도시함.Figure 10 shows the flow of the trapdoor expansion method according to an embodiment of the present invention.
도 11은 본 발명의 일실시예에 따른 가우시안 샘플링 방법의 흐름을 도시함.11 illustrates a flow of a Gaussian sampling method according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless otherwise stated.
전술한 바와 같이 무인증서 기반인 인증서 비사용 전자 서명 시스템은 종래의 인증서 기반 전자 서명 시스템이 갖고 있는 인증서를 유지, 관리하는 비용이 크다는 문제 및 유출이나 조작 등 인증서 관련 사고가 발생한다는 문제 등을 해결하였다.As mentioned above, the certificate-free digital signature system, which is certificate-free, solves the problem of a high cost of maintaining and managing the certificates of the conventional certificate-based digital signature system and the occurrence of certificate-related accidents such as leakage or manipulation. It was.
이제까지 이러한 무인증서 기반 전자 서명 시스템은 인수 분해, 이산 대수, 페어링(pairing)을 기반으로 설계되었다. 하지만 풀기 어려워 안전하다고 여겨지던 이러한 문제들은 최근 양자 알고리즘의 발전으로 더 이상 안전성을 보장할 수 없다. So far, these certificate-free digital signature systems have been designed based on factoring, discrete algebra, and pairing. However, these problems, which were difficult to solve and considered safe, cannot be guaranteed anymore due to the recent development of quantum algorithms.
이에 따라 양자 분석에 내성이 있는 것으로 알려진 래티스 기반 암호 시스템에 대한 관심이 점차 높아지고 있다. Accordingly, there is a growing interest in lattice-based cryptographic systems that are known to be resistant to quantum analysis.
기존의 래티스 기반의 암호 시스템의 경우 안전성 증명이 결여되어 많은 문제점이 있었으나, 최근 최악의 경우(worst-case) 문제에 기반하여 증명되는 래티스 기반의 암호 시스템들이 등장하고 있다. 기존의 암호 시스템이 평균적인 경우(average-case) 문제에 기반하여 설계된 점을 비추어 볼 때 매우 높은 안전성을 제공한다는 것을 알 수 있다.Conventional Lattice-based cryptosystems have had many problems due to lack of security proofs, but recently, Lattice-based cryptosystems have been introduced based on worst-case problems. In view of the fact that existing cryptosystems are designed based on average-case problems, we can see that they provide very high security.
이 뿐만 아니라 래티스 기반 암호 시스템은 종래 기법에 비해 매우 효율적이다. 인수 분해, 이산 대수, 페어링 등의 연산 복잡도는
Figure PCTKR2014008144-appb-I000001
이지만, 래티스에서의 연산 복잡도는
Figure PCTKR2014008144-appb-I000002
이다.
In addition, Lattice-based cryptographic systems are very efficient compared to conventional techniques. The computational complexity of factoring, discrete algebra, pairing, etc.
Figure PCTKR2014008144-appb-I000001
However, the computational complexity in Lattice
Figure PCTKR2014008144-appb-I000002
to be.
따라서 본 발명은 래티스 환경에서 안전성 증명이 가능한 무인증서 기반 전자 서명 기술을 제공하고자 한다.Accordingly, the present invention is to provide a certificate-free electronic signature technology that can prove the safety in a lattice environment.
도 1 및 도 2는 본 발명의 일실시예에 따른 전자 서명 시스템의 구조를 도시하고 있다.1 and 2 illustrate a structure of an electronic signature system according to an embodiment of the present invention.
본 발명의 일실시예에 따른 전자 서명 시스템(10)에는 네트워크를 통해 연결된 서명자(X), 검증자(Y), 및 제3자(Z)를 포함하는 사용자와 마스터(M) 등의 개체(entity)가 참여한다.The electronic signature system 10 according to an embodiment of the present invention includes an object such as a user and a master (M) including a signer (X), a verifier (Y), and a third party (Z) connected through a network. entity) participates.
사용자 중, 서명자(X)는 메시지에 서명하여 검증자(Y)에게 전송하는 개체이며, 검증자(Y)는 서명자(X)로부터 수신한 서명을 검증하는 개체이다. 이때, 검증이란 전술한 바와 같이, 수신한 서명이 서명자(X)에 의해 생성된, 유효한 서명임을 확인하는 것이다.Among the users, the signer (X) is an entity that signs a message and sends it to the verifier (Y), and the verifier (Y) is an entity that verifies the signature received from the signer (X). At this time, the verification is to confirm that the received signature is a valid signature generated by the signer X as described above.
서명을 생성하여 전송한 서명자(X)와 서명을 수신한 검증자(Y) 이외의 다른 사용자인 제3자(Z)는 해당 서명을 검증할 수 없다.A third party (Z), a user other than the signer (X) that generated and sent the signature and the verifier (Y) that received the signature, cannot verify the signature.
도면에는 각각 하나의 서명자(X), 검증자(Y), 및 제3자(Z) 개체만이 도시되어 있고, 이들이 서로 다른 개체인 것처럼 도시되어 있다. 그러나 서명자(X), 검증자(Y), 및 제3자(Z)는 모두 사용자 개체로서, 이들의 역할은 고정적이지 않으며, 전자 서명 시스템(10)에 참여하는 사용자 개체의 수에도 제한이 없을 것임을 쉽게 이해할 수 있을 것이다. 또한, 이들 각 사용자 개체는 사용자가 사용하는 기기나 소프트웨어 등의 실체를 의미할 수 있다. 이는 통용되는 개념이므로 본 명세서에서 이에 대한 명시적 기재는 생략한다. 예를 들어, 이하 기술에서 사용자라 함은 서명자(X), 검증자(Y), 제3자(Z) 등의 사용자 개체를 나타낼 수 있다.Only one signer (X), validator (Y), and third party (Z) entity is shown in the figure, and they are shown as if they are different entities. However, signers (X), verifiers (Y), and third parties (Z) are all user entities, and their roles are not fixed, and there is no limit to the number of user entities participating in the electronic signature system 10. It will be easy to understand. In addition, each of these user entities may mean an entity such as a device or software used by the user. Since this is a commonly used concept, an explicit description thereof is omitted herein. For example, in the following description, a user may refer to a user entity such as a signer (X), a verifier (Y), a third party (Z), and the like.
전술한 바와 같이, 본 발명의 일실시예에 따른 전자 서명 시스템(10)에는 각 사용자의 제 1 비밀키를 생성하여 해당 사용자에게 배포하는 마스터(M) 개체가 참여한다. 여기에서 마스터(M)는 키 생성 기관(Key Generation Center), 인증 기관(Certification Authority) 등 다양한 이름으로 불릴 수 있으며, 전자 서명 시스템(10)이 원활하게 운영되도록 관리하는 기관들을 통칭하는 개념으로 사용하였다.As described above, in the electronic signature system 10 according to an embodiment of the present invention, a master (M) entity that generates and distributes a first private key of each user participates. In this case, the master (M) may be called various names such as a key generation center and a certification authority, and is used as a general term for agencies that manage the digital signature system 10 to operate smoothly. It was.
종래의 공개키 기반 환경에서는 전술한 바와 같이, 마스터(M)가 각 사용자에게 공인 인증서를 발급해야 하지만, 본 발명의 일실시예에 따른 전자 서명 시스템(10)은 마스터(M)가 사용자(X, Y, Z)의 공개된 식별정보(ID)를 사용하여 사용자(X, Y, Z)에게 제 1 비밀키를 발급해준다. 그렇기 때문에, 전자 서명 시스템(10)은 마스터(M)와 사용자(X, Y, Z) 모두 공인 인증서를 관리할 필요가 없어, 효율적이고 안전성이 높다. 이는, 전자 서명 시스템(10)이 공인 인증서 관리에 따른 비용이나 부하가 없고, 공인 인증서 도용 등과 같은 보안 위험이 없기 때문이다. 또한 후술하는 바와 같이, 전자 서명 시스템(10)은 사용자(X, Y, Z)는 마스터(M)에게 노출되지 않는 또 다른 비밀키인 제 2 비밀키를 스스로 생성하므로, 안정성이 더욱 높다.In the conventional public key based environment, as described above, the master (M) should issue a public certificate to each user, but the electronic signature system 10 according to an embodiment of the present invention, the master (M) is a user (X) The first secret key is issued to the user (X, Y, Z) by using the public identification information (ID) of Y, Z). Therefore, the electronic signature system 10 does not need to manage the public certificate for both the master M and the users X, Y, and Z, so that the electronic signature system 10 has high efficiency and safety. This is because the electronic signature system 10 has no cost or load due to the management of the public certificate, and there is no security risk such as public certificate theft. In addition, as will be described later, the electronic signature system 10 further generates stability because the users X, Y, and Z generate themselves a second secret key, which is another secret key not exposed to the master M.
종래와 달리 공인 인증서를 사용하지 않으나, 본 발명의 일실시예에 따른 전자 서명 시스템(10)은 공개키 기반 방식이다.Unlike the conventional public certificate is not used, the electronic signature system 10 according to an embodiment of the present invention is a public key based method.
공개키 기반 방식은 서로 대응되는 키 쌍을 생성하여, 이중 공개키는 암호화 또는 서명 확인용으로 사용하며, 비밀키는 복호화 또는 서명용으로 사용하는 비대칭형 암호화 또는 서명 방식이다.The public key-based scheme generates a pair of keys corresponding to each other so that the double public key is used for encryption or signature verification, and the secret key is an asymmetric encryption or signature scheme for decryption or signature.
공개키 기반 방식은 해당 메시지를 보낸 사용자가 누구인가를 증명하기 위한 것이므로, 어떤 메시지에 서명할 때는 비밀키로 서명하고 대응되는 공개키로 이를 확인한다. 즉, 비밀키는 문서에 찍는 도장과 같은 기능을 한다.Since the public key-based method is used to prove who sent the message, when signing a message, the private key is signed and the corresponding public key is verified. In other words, the secret key functions like a stamp on a document.
한편 전술한 바와 같이, 암호화 및 전자 서명 시스템은 특정 정보가 없으면 풀기 어려운 수학적 난제에 기반하여 구축되다. 본 발명의 일실시예에 따른 전자 서명 시스템(10)은 래티스(lattice) 상에서의 SIS(small integer solution) 문제와 LWE(learning with errors) 문제의 어려움에 기반하고 있다.On the other hand, as described above, encryption and digital signature systems are built on mathematical challenges that are difficult to solve without specific information. The electronic signature system 10 according to an embodiment of the present invention is based on the difficulty of a small integer solution (SIS) problem and a learning with errors (LWE) problem in a lattice.
특정 정보가 없으면 풀기 어렵다는 것은 연산이 일방향성이라는 의미이다. 일방향성은 연산은 쉬워도 연산의 역을 구하는 것은 어렵다. 그러나 특정 정보를 갖고 있는 경우에는 쉽게 역을 구할 수 있음을 나타낸다. 이러한 특정 정보를 트랩도어(trapdoor)라고 부른다. Difficult to solve without specific information means that the operation is one-way. Unidirectionality is easy, but it is difficult to find the inverse of the calculation. However, if you have certain information, you can easily find the inverse. This specific information is called a trapdoor.
예를 들어, 공개키 기반 환경에서 암호화 연산은 암호화는 쉽다. 그러나 암호화 시 사용한 암호화 키에 대응하는 복호화 키가 없는 경우에는 암호화의 역변환인 복호화는 매우 어려운 일방향성 연산을 사용하여 수행된다. 즉, 암호화 시 사용한 암호화 키에 대응되는 복호화 키가 트랩도어이다. 일단 메시지를 암호화하고 나면 암호화 키가 있어도 이를 복호화할 수 없으므로, 암호화 키는 공개되어도 된다. 반면, 트랩도어 또는 복호화 키는 공개되면 안 된다. 따라서, 공개키 기반 환경에서 트랩도어를 생성하는 데 사용된 정보는 공개키로서 공개되고, 트랩도어는 비밀키로서 공개되지 않는다. For example, in public key-based environments, cryptographic operations are easy to encrypt. However, if there is no decryption key corresponding to the encryption key used for encryption, decryption, which is an inverse transformation of encryption, is performed using a very difficult one-way operation. That is, the decryption key corresponding to the encryption key used at the time of encryption is a trapdoor. Once the message has been encrypted, the encryption key may be disclosed even if the encryption key exists, so that it can be decrypted. On the other hand, trapdoors or decryption keys should not be disclosed. Therefore, in the public key based environment, the information used to generate the trapdoor is disclosed as the public key, and the trapdoor is not disclosed as the secret key.
래티스에 기반한 SIS 문제와 LWE 문제는 전술한 바와 같이 최악의 경우에서도 풀기 어려운 수학적 난제이므로, 최근 암호화 및 전자 서명 시스템에 이를 적용하려는 시도가 많이 이루어지고 있는 추세이다. 래티스는 공간에서 2개의 기저의 선형 결합을 통해 만들어지는 모든 점의 집합이다. 기저를 모르면 제3자(Z)가 어떤 점을 알아내었다고 해도 해당 점으로부터 가장 가까운 래티스 점이 어딘지 알아내는 것은 매우 어렵다는 장점이 있다. 또한, 기저를 모르면 제3자(Z)는 특정 길이 이내의 래티스 점을 찾는 것이 매우 어렵다는 장점이 있다.The LSIS-based SIS problem and the LWE problem are mathematical problems that are difficult to solve in the worst case as described above. Therefore, many attempts have been made to apply them to encryption and digital signature systems. Lattice is the collection of all points created through the linear combination of two basis in space. If you don't know the basis, even if the third party (Z) finds a point, it is very difficult to find out where the nearest lattice point is. In addition, the third party (Z) has the advantage that it is very difficult to find a lattice point within a certain length without knowing the basis.
따라서 본 발명의 일실시예에 따른 전자 서명 시스템(10)은 자신의 마스터 키 및 사용자 개체(X, Y, Z)의 공개된 식별 정보를 사용하여, 제 1 비밀키를 생성하여 사용자 개체(X, Y, Z)에게 할당하는 마스터 개체(M)를 포함한다. 또한, 전자 서명 시스템(10)은 자신의 공개키 및 제 2 비밀키를 생성하는 사용자 개체(X, Y, Z)를 포함한다. 그리고 전자 서명 시스템(10)은 사용자 개체(X, Y, Z)는 자신의 공개키, 제 1 비밀키, 및 제 2 비밀키를 사용하여 생성한 서명을 검증자 개체(Y)에게 전송하는 서명자 개체(X) 및 서명자 개체(X)로부터 수신한 서명을 서명자 개체(X)의 공개된 식별 정보, 및 공개키를 사용하여 검증하는 검증자 개체(Y)를 포함한다. 이때 마스터 키, 제 1 비밀키, 및 제 2 비밀키 생성에 래티스(lattice) 상에서의 SIS(small integer solution) 문제의 어려움에 기반하여 생성한 트랩도어(trapdoor)가 사용된다.Accordingly, the electronic signature system 10 according to an embodiment of the present invention generates a first private key by using the public identification information of its master key and the user entity (X, Y, Z) to generate the user entity (X). It includes the master object (M) to assign to, Y, Z). The electronic signature system 10 also includes a user entity (X, Y, Z) for generating its public key and second secret key. And the electronic signature system 10, the user object (X, Y, Z) is a signer for transmitting to the verifier entity (Y) a signature generated using its public key, the first secret key, and the second secret key And a verifier entity (Y) that verifies the signature received from the entity (X) and the signer entity (X) using the public identification information of the signer entity (X), and the public key. In this case, a trapdoor generated based on a difficulty of a small integer solution (SIS) problem on a lattice is used to generate a master key, a first secret key, and a second secret key.
도 2에 도시되어 있는 바와 같이, 이를 위해 트랩도어 생성부(L100), 트랩도어 확장부(L200) 및 샘플링부(L300)를 포함하는 라이브러리(L)을 포함하거나 이에 연결될 수 있다. 이때, 트랩도어 생성부(L100)는 마스터(M) 및 각 사용자(A, B, C)는 균일한 분포(uniform distribution)에서 선택된 임의의 행렬로부터 생성되는 래티스의 짧은 기저(short basis)인 트랩도어를 생성할 수 있다. 또한, 트랩도어 확장부(L200)는 트랩도어의 래티스를 또 다른 래티스로 확장하고 또 다른 래티스의 짧은 기저인 확장된 트랩도어를 생성할 수 있다. 샘플링부(L300)는 트랩도어 확장부(L200), 및 트랩도어의 가우시안 분포로부터 벡터를 샘플링할 수 있다. As illustrated in FIG. 2, a library L including a trapdoor generator L100, a trapdoor expansion unit L200, and a sampling unit L300 may be connected to or included therein. At this time, the trapdoor generator L100 is a trap that is a short basis of the lattice generated from an arbitrary matrix selected from the master (M) and each user (A, B, C) uniform distribution (uniform distribution) You can create a door. In addition, the trapdoor extension L200 may extend the lattice of the trapdoor to another lattice and generate an extended trapdoor that is a short base of another lattice. The sampling unit L300 may sample the vector from the trapdoor extension L200 and the Gaussian distribution of the trapdoor.
다시 말해 라이브러리(L)는 래티스 상에서의 SIS 문제의 어려움에 기반하여 트랩도어를 생성, 확장, 및 사용하기 위한 기본 기능을 본 발명의 일실시예에 따른 전자 서명 시스템(10)의 각 개체(M, X, Y, Z)에 제공한다.In other words, the library L is based on the difficulty of the SIS problem on the lattice, each object (M) of the electronic signature system 10 in accordance with an embodiment of the present invention provides the basic functions for creating, extending, and using trapdoors. , X, Y, Z).
이들 트랩도어 생성부(L100), 트랩도어 확장부(L200), 및 샘플링부(L300)가 수행하는 동작은 도 9 내지 도 11에 도시되어 있다.The operations performed by the trapdoor generator L100, the trapdoor extension L200, and the sampling unit L300 are illustrated in FIGS. 9 through 11.
마스터(M)의 시스템 설정부(100)는 보안 파라미터를 설정하고, 일련의 해시 함수를 선택하며, 트랩도어 생성부(L100)를 사용하여 생성한 트랩도어를 자신의 비밀키인 마스터 키로 사용한다. 또한, 시스템 설정부(100)는 함께 생성된 대응 행렬을 해시 함수와 함께 공개한다.The system setting unit 100 of the master M sets security parameters, selects a series of hash functions, and uses a trap door generated by using the trap door generation unit L100 as a master key which is its secret key. . The system setting unit 100 also publishes the corresponding matrix generated together with the hash function.
마스터의 키 발급부(200)는 트랩도어 확장부(L200)를 사용하여 사용자의 공개된 식별 정보로부터 생성된 확장된 트랩도어를 사용자의 제 1 비밀키로 발급한다.The key issuer 200 of the master uses the trapdoor extension L200 to issue an extended trapdoor generated from the user's public identification information as the first secret key of the user.
사용자의 키 생성부(300)는 트랩도어 생성부(L100)를 사용하여 생성한 트랩도어를 자신의 제 2 비밀키로 사용하고, 함께 생성된 대응 행렬을 자신의 공개키로 사용한다.The user's key generation unit 300 uses the trapdoor generated using the trapdoor generation unit L100 as its second secret key, and uses the generated corresponding matrix as its own public key.
그러므로, 전술한 바와 같이, 사용자의 제 2 비밀키는 마스터(M)와 전혀 무관하게 사용자 자신이 생성하므로, 본 발명의 일실시예에 따른 전자 서명 시스템(10)은 마스터(M)를 전적으로 신뢰하지 않아도 되는 장점을 가진다.Therefore, as described above, since the user's second secret key is generated by the user independently of the master M at all, the electronic signature system 10 according to the embodiment of the present invention trusts the master M entirely. It has the advantage of not having to.
사용자 중 서명자(X)는 서명부(400)를 사용하여 자신의 제 1 비밀키 및 공개키를 사용하여 제 1 서명을 생성하고, 자신의 제 2 비밀키 및 공개키를 사용하여 제 2 서명을 생성한다. 또한, 서명자(X)는 제 1 서명과 제 2 서명을 사용하여 서명을 생성하며, 이때 트랩도어 생성부(L100), 트랩도어 확장부(L200), 샘플링부(L300)를 사용한다.Among the users, the signer (X) uses the signing unit 400 to generate a first signature using its first private key and public key, and a second signature using its second private and public key. do. In addition, the signer X generates a signature using the first signature and the second signature, and at this time, the trapdoor generator L100, the trapdoor extension L200, and the sampling unit L300 are used.
서명자(X)는 제 1 비밀키의 가우시안 분포로부터 벡터를 샘플링하여 제 1 서명을 생성하며, 제 2 비밀키의 래티스를 공개키를 사용하여 확장된 래티스로 확장한다. 그리고 서명자(X)는 확장된 래티스의 짧은 기저인 확장된 트랩도어를 생성하여, 확장된 트랩도어의 가우시안 분포로부터 벡터를 샘플링하여 제 2 서명을 생성한다.The signer X samples the vector from the Gaussian distribution of the first secret key to generate a first signature, and extends the lattice of the second secret key into an extended lattice using the public key. The signer X generates an extended trapdoor, which is a short basis of the extended lattice, and samples a vector from the Gaussian distribution of the extended trapdoor to generate a second signature.
사용자 중 검증자(Y)는 검증부(500)를 사용하여 서명자(X)의 공개된 식별 정보, 및 공개키를 사용하여 제 1 서명 및 제 2 서명을 각각 검증한다. 또한, 검증자(Y)는 제 1 서명 및 제 2 서명이 모두 정당한 서명이라고 판단되었을 때 수신한 서명을 받아들이고 그렇지 않으면 기각한다.The verifier Y of the user verifies the first signature and the second signature by using the verifier 500 and the public identification information of the signer X, and the public key. Also, verifier Y accepts the signature received when it is determined that both the first signature and the second signature are legitimate signatures, and otherwise rejects it.
따라서 본 발명의 일실시예에 따른 전자 서명 시스템(10)의 각 개체는 도 1의 각 개체에 연결된 키 저장소에 도시되어 있는 것과 같은 키들을 가진다. Thus, each entity of the electronic signature system 10 according to an embodiment of the present invention has the same keys as shown in the keystore associated with each entity of FIG.
마스터(M)는 마스터 키(msk)를 가지며, 이는 외부에 공개되어서는 안되는 비밀키이다. 반면 대응하는 행렬은 해시 함수들과 함께 공개 파라미터
Figure PCTKR2014008144-appb-I000003
로서 공개된다.
The master M has a master key msk, which is a secret key that should not be disclosed to the outside. While the corresponding matrix is a public parameter with hash functions
Figure PCTKR2014008144-appb-I000003
Published as.
각 사용자(X, Y, Z)의 식별 정보와 공개키도 공개된다. 반면 각 사용자(X, Y, Z)의 제 1 비밀키 및 제 2 비밀키는 공개되지 않는다.Identification information and public key of each user (X, Y, Z) are also disclosed. On the other hand, the first and second secret keys of each user X, Y, and Z are not disclosed.
도 3는 본 발명의 일실시예에 따른 전자 방법의 흐름을 도시하고 있다.3 illustrates a flow of an electronic method according to an embodiment of the present invention.
마스터 개체(M)는 보안 파라미터를 설정하고 자신의 마스터 키를 생성한다(S100).The master entity M sets security parameters and generates its own master key (S100).
마스터 개체(M)는 서명자 개체(X) 및 검증자 개체(Y)를 포함하는 사용자 개체(X, Y, Z)의 공개된 식별 정보에 기초하여, 제 1 비밀키를 생성하여 사용자 개체(X, Y, Z)에게 할당한다(S200).The master object M generates a first secret key based on the publicly identified identification information of the user object X, Y, Z, including the signer object X and the verifier object Y, thereby generating the user object X. , Y, Z) (S200).
사용자 개체(X, Y, Z)는 자신의 공개키 및 제 2 비밀키를 생성한다(S300).The user entity (X, Y, Z) generates its own public key and second secret key (S300).
서명자 개체(X)는 자신의 공개키, 제 1 비밀키, 및 제 2 비밀키를 사용하여 생성한 서명을 검증자 개체(Y)에게 전송한다(S400).The signer entity X transmits the signature generated using its public key, the first secret key, and the second secret key to the verifier entity Y (S400).
검증자 개체(Y)는 서명자 개체(X)로부터 수신한 서명을 서명자 개체(X)의 공개된 식별 정보, 및 공개키를 사용하여 검증한다(S500).The verifier entity Y verifies the signature received from the signer entity X using the public identification information and the public key of the signer entity X (S500).
이하 도 4 내지 도 8을 통해 각 단계를 좀더 자세히 설명한다.Hereinafter, each step will be described in more detail with reference to FIGS. 4 to 8.
도 4은 본 발명의 일실시예에 따른 시스템 설정 방법의 흐름을 도시하고 있다.4 shows a flow of a system setting method according to an embodiment of the present invention.
마스터(M)는 해시 함수를 선택한다(S110).The master M selects a hash function (S110).
시스템 설정 방법은 트랩도어 생성부(L100)를 사용하여, 행렬 A 및 대응하는 트랩도어를 생성한다(S120). 트랩도어는 행렬 A에 기초하여 생성되는 래티스의 짧은 기저(short basis)이다.The system setting method generates a matrix A and a corresponding trapdoor by using the trapdoor generator L100 (S120). The trapdoor is a short basis of lattice generated based on matrix A.
시스템 설정 방법은 공개 파라미터로 행렬 A 및 해시 함수를 출력한다(S130).The system setting method outputs the matrix A and the hash function as public parameters (S130).
생성된 트랩도어를 마스터 키로 사용한다(S140).The generated trapdoor is used as a master key (S140).
다시 말해, 시스템 설정 단계(S100)는 시스템에서 사용할 다양한 파리미터를 정하고 키를 발급하는 기관인 마스터(M)의 마스터 키를 정하는 단계이다. In other words, the system setting step (S100) is a step of determining a master key of the master (M), which is an institution that issues various keys and issues keys for use in the system.
먼저, 다음과 같은 성질을 만족하는 충돌내성 해쉬 함수(collision-resistant hash function)를 선택한다. First, we choose a collision-resistant hash function that satisfies the following properties:
Figure PCTKR2014008144-appb-I000004
Figure PCTKR2014008144-appb-I000004
Figure PCTKR2014008144-appb-I000005
Figure PCTKR2014008144-appb-I000005
Figure PCTKR2014008144-appb-I000006
Figure PCTKR2014008144-appb-I000006
Figure PCTKR2014008144-appb-I000007
Figure PCTKR2014008144-appb-I000007
그리고 마스터(M)는
Figure PCTKR2014008144-appb-I000008
을 생성하여 공개 파라미터
Figure PCTKR2014008144-appb-I000009
와 마스터키
Figure PCTKR2014008144-appb-I000010
를 정한다.
And the master (M)
Figure PCTKR2014008144-appb-I000008
To create a public parameter
Figure PCTKR2014008144-appb-I000009
And master key
Figure PCTKR2014008144-appb-I000010
Determine.
도 5는 본 발명의 일실시예에 따른 제 1 비밀키 발급 방법의 흐름을 도시하고 있다.5 shows a flow of a first secret key issuing method according to an embodiment of the present invention.
마스터(M)가 사용자 ID를 입력 받는다(S210).The master M receives a user ID (S210).
사용자 ID를 해시하여 행렬 B를 산출한다(S220).The matrix B is calculated by hashing the user ID (S220).
트랩도어 확장부(L200)를 사용하여, 마스터 키를 행렬 B에 기초하여 확장한다(S230).Using the trapdoor extension L200, the master key is extended based on the matrix B (S230).
확장된 마스터 키를 ID에 대한 제 1 비밀키로서 사용자(X, Y, Z)에게 전달한다(S240).The extended master key is transmitted to the user (X, Y, Z) as the first secret key for the ID (S240).
다시 말해, 제 1 비밀키 발급 단계(S200)는 마스터(M)가 자신의 마스터 키를 이용해 주어진 에 대한 제 1 비밀키를 발급해주는 단계이다. In other words, the first private key issuing step S200 is a step in which the master M issues a first private key for a given using its master key.
마스터(M)는
Figure PCTKR2014008144-appb-I000011
을 계산하고,
Figure PCTKR2014008144-appb-I000012
알고리즘을 실행한 후,
Figure PCTKR2014008144-appb-I000013
Figure PCTKR2014008144-appb-I000014
에 대한 제 1 비밀키로 정하고, 안전한 방법으로 해당
Figure PCTKR2014008144-appb-I000015
의 서명자에게 키를 전달한다.
Master (M) is
Figure PCTKR2014008144-appb-I000011
, And
Figure PCTKR2014008144-appb-I000012
After running the algorithm,
Figure PCTKR2014008144-appb-I000013
of
Figure PCTKR2014008144-appb-I000014
Set as the primary private key for, and in a secure way
Figure PCTKR2014008144-appb-I000015
Pass the key to the signer.
도 6은 본 발명의 일실시예에 따른 공개키 및 제 2 비밀키 생성 방법의 흐름을 도시하고 있다.6 illustrates a flow of a method for generating a public key and a second secret key according to an embodiment of the present invention.
후술하는 바와 같이, 사용자(X, Y, Z)는 마스터(M)와 완전히 독립적으로 자신의 공개키 및 제 2 비밀키를 생성한다. 그러므로 전술한 바와 같이 사용자(X, Y, Z)는 마스터(M)를 전적으로 신뢰하지 않아도 되며 제 2 비밀키가 마스터(M)에게 알려지지 않으므로, 본 발명의 일실시예에 따른 전자 서명 방법은 안전성이 높다.As will be described later, the users X, Y, and Z generate their public and second secret keys completely independent of the master M. Therefore, as described above, the users X, Y, and Z do not have to trust the master M entirely, and since the second secret key is not known to the master M, the electronic signature method according to an embodiment of the present invention is safe. This is high.
사용자(X, Y, Z)가 트랩도어 생성부(L100)를 사용하여, 행렬 C 및 대응하는 트랩도어를 생성한다(S310). 트랩도어는 행렬 C에 기초하여 생성되는 래티스의 짧은 기저(short basis)이다.The users X, Y, and Z generate the matrix C and the corresponding trapdoors by using the trapdoor generator L100 (S310). The trapdoor is a short basis of lattice generated based on matrix C.
행렬 C를 자신의 공개키로 사용한다(S320).The matrix C is used as its public key (S320).
생성된 트랩도어를 제 2 비밀키로 사용한다(S330).The generated trap door is used as a second secret key (S330).
다시 말해, 공개키 및 제 2 비밀키 생성 단계(S300)는
Figure PCTKR2014008144-appb-I000016
에 해당하는 사용자(X, Y, Z)가 자신의 공개키와 제 2 비밀키를 생성하는 단계이다.
In other words, the public key and the second secret key generation step (S300)
Figure PCTKR2014008144-appb-I000016
The user X, Y, and Z corresponding to the step of generating their own public key and second secret key.
사용자(X, Y, Z)는
Figure PCTKR2014008144-appb-I000017
알고리즘을 실행한 후,
Figure PCTKR2014008144-appb-I000018
를 자신의
Figure PCTKR2014008144-appb-I000019
에 대한 공개키로
Figure PCTKR2014008144-appb-I000020
Figure PCTKR2014008144-appb-I000021
에 대한 제 2 비밀키로 출력한다.
User (X, Y, Z)
Figure PCTKR2014008144-appb-I000017
After running the algorithm,
Figure PCTKR2014008144-appb-I000018
Own
Figure PCTKR2014008144-appb-I000019
As the public key for
Figure PCTKR2014008144-appb-I000020
To
Figure PCTKR2014008144-appb-I000021
Output as the second secret key for.
주목할 점은 전술한 바와 같이 마스터(M)는 사용자(X, Y, Z)의 제 1 비밀키는 직접 생성하였으므로 알 수 있으나, 제 2 비밀키는 사용자(X, Y, Z)가 직접 생성하였기 때문에 알 수 없다. 따라서 아무리 마스터(M)라고 해도 제 2 비밀키를 모르는 이상 서명자(X)의 서명을 생성할 수 없다. 이와 같이 본 발명의 일실시예에 따른 인증서 비사용 전자 서명 시스템(10)은 마스터(M)를 전적으로 신뢰하지 않아도 되는 장점을 가진다.Note that, as described above, the master M can directly know the first secret key of the user X, Y, and Z, but the second secret key is generated by the user X, Y, and Z. Because I can not know. Therefore, even if the master M does not know the second secret key, the signature of the signer X cannot be generated. As such, the certificate-free electronic signature system 10 according to an embodiment of the present invention has an advantage of not having to trust the master M entirely.
도 7은 본 발명의 일실시예에 따른 서명 방법의 흐름을 도시하고 있다.7 illustrates a flow of a signature method according to an embodiment of the present invention.
서명자(X)가 메시지 m을 입력 받는다(S410).The signer X receives the message m (S410).
샘플링부(L300)를 사용하여 자신의 비밀키로부터 제 1 서명을 생성한다(S420). 이때 자신의 공개키를 메시지, 임의의 문자열과 함께 해시한 값이 사용된다.A first signature is generated from its private key using the sampling unit L300 (S420). At this time, the hash value of the public key along with the message and arbitrary string is used.
트랩도어 확장부(L200)를 사용하여 자신의 제 2 비밀키를 확장한다(S440).The second secret key is expanded using the trapdoor expansion unit L200 (S440).
샘플링부(L300)를 사용하여 자신의 확장된 제 2 비밀키로부터 제 2 서명을 생성한다(S450). 이때 메시지와 또 다른 임의의 문자열을 함께 해시한 값이 사용된다.A second signature is generated from its extended second secret key using the sampling unit L300 (S450). The value that hashes the message with another random string is used.
제 1 서명과 제 2 서명을 사용하여 서명을 생성한다(S460).A signature is generated using the first signature and the second signature (S460).
생성한 서명을 검증자(Y)에게로 발송한다(S470).The generated signature is sent to the verifier Y (S470).
다시 말해, 서명 단계(S400)는
Figure PCTKR2014008144-appb-I000022
에 해당하는 서명자(X)가 자신의 제 1 비밀키
Figure PCTKR2014008144-appb-I000023
와 제 2 비밀키
Figure PCTKR2014008144-appb-I000024
를 사용하여 주어진 메시지에 대한 서명을 생성하는 단계이다. 서명자(X)는 메시지
Figure PCTKR2014008144-appb-I000025
에 대한 서명을 다음과 같이 생성한다.
In other words, the signing step (S400)
Figure PCTKR2014008144-appb-I000022
Signer (X) corresponding to his first private key
Figure PCTKR2014008144-appb-I000023
And the second secret key
Figure PCTKR2014008144-appb-I000024
Generating a signature for a given message using. Signer (X) is the message
Figure PCTKR2014008144-appb-I000025
Create a signature for
먼저,
Figure PCTKR2014008144-appb-I000026
을 계산한다. 여기서
Figure PCTKR2014008144-appb-I000027
은 서명자(X)가 선택한 임의의 문자열이며, 파라미터
Figure PCTKR2014008144-appb-I000028
Figure PCTKR2014008144-appb-I000029
알고리즘에 쓰이는 파라미터다.
first,
Figure PCTKR2014008144-appb-I000026
Calculate here
Figure PCTKR2014008144-appb-I000027
Is any string chosen by the signer (X) and is a parameter
Figure PCTKR2014008144-appb-I000028
Is
Figure PCTKR2014008144-appb-I000029
This parameter is used for algorithm.
그 후,
Figure PCTKR2014008144-appb-I000030
을 계산하여, 자신의 제 2 비밀키
Figure PCTKR2014008144-appb-I000031
을 이용해
Figure PCTKR2014008144-appb-I000032
알고리즘을 실행한 후, 생성한
Figure PCTKR2014008144-appb-I000033
을 사용하여
Figure PCTKR2014008144-appb-I000034
을 계산한다. 여기서
Figure PCTKR2014008144-appb-I000035
역시 서명자(X)가 선택한 임의의 문자열이며, 동일한 파라미터
Figure PCTKR2014008144-appb-I000036
를 사용한다.
After that,
Figure PCTKR2014008144-appb-I000030
By calculating its own second secret key
Figure PCTKR2014008144-appb-I000031
Using
Figure PCTKR2014008144-appb-I000032
After running the algorithm,
Figure PCTKR2014008144-appb-I000033
Using
Figure PCTKR2014008144-appb-I000034
Calculate here
Figure PCTKR2014008144-appb-I000035
Is also an arbitrary string chosen by the signer (X), with the same parameters
Figure PCTKR2014008144-appb-I000036
Use
최종적으로 전자 서명은
Figure PCTKR2014008144-appb-I000037
으로 구성된다.
Finally, the electronic signature
Figure PCTKR2014008144-appb-I000037
It consists of.
도 8은 본 발명의 일실시예에 따른 검증 방법의 흐름을 도시하고 있다.8 shows a flow of a verification method according to an embodiment of the present invention.
검증자(Y)가 서명자(X)의 서명을 입력 받는다(S510).The verifier Y receives the signature of the signer X (S510).
서명자의 ID 및 공개키를 사용하여 제 1 서명에 대해 도시되어 있는 바와 같은 기 지정된 조건을 만족하는지 판단한다(S520).It is determined whether the predetermined condition as shown for the first signature is satisfied using the signer's ID and the public key (S520).
서명자의 ID 및 공개키를 사용하여 제 1 서명에 대해 도시되어 있는 바와 같은 기 지정된 조건을 만족하는지 판단한다(S530).It is determined whether the predetermined condition as shown for the first signature is satisfied using the signer's ID and the public key (S530).
제 1 서명 조건 및 제 2 서명 조건을 모두 만족할 경우 서명은 검증되며, 하나라도 만족하지 못할 경우 서명은 기각된다(S540).If both the first signature condition and the second signature condition are satisfied, the signature is verified, and if none is satisfied, the signature is rejected (S540).
다시 말해, 검증 단계(S500)는 ID에 해당하는 서명자(X)가 보내온 서명을 검증자(Y)가 검증하는 단계이다. In other words, the verification step S500 is a step in which the verifier Y verifies the signature sent by the signer X corresponding to the ID.
주어진 서명
Figure PCTKR2014008144-appb-I000038
은 다음과 같은 조건을 만족할 때 정당하다.
Given signature
Figure PCTKR2014008144-appb-I000038
Is justified when the following conditions are met:
Figure PCTKR2014008144-appb-I000039
그리고
Figure PCTKR2014008144-appb-I000040
Figure PCTKR2014008144-appb-I000039
And
Figure PCTKR2014008144-appb-I000040
Figure PCTKR2014008144-appb-I000041
그리고
Figure PCTKR2014008144-appb-I000042
Figure PCTKR2014008144-appb-I000041
And
Figure PCTKR2014008144-appb-I000042
이하 도 9 내지 도 11을 통해 본 발명의 일실시예에 따른 전자 서명 방법이 키 발급 및 서명에 사용하기 위해 래티스 상에서의 SIS 문제의 어려움에 기반하여 트랩도어를 생성, 확장, 및 샘플링하는 방법을 구체적으로 설명한다.9 through 11 illustrate a method of generating, extending, and sampling a trapdoor based on the difficulty of an SIS problem on a lattice for use in issuing and signing a key according to an electronic signature method according to an embodiment of the present invention. It demonstrates concretely.
본 발명은
Figure PCTKR2014008144-appb-I000043
차원의 풀-랭크(full-rank) 정수 래티스를 사용하며, 이것은 유한개의 지수(finite index)를 가지는
Figure PCTKR2014008144-appb-I000044
의 이산 가산 서브그룹(discrete additive subgroup)이다. 즉, 쿼션트 그룹(quotient group)
Figure PCTKR2014008144-appb-I000045
이 유한하다.
The present invention
Figure PCTKR2014008144-appb-I000043
We use a full-rank integer lattice of dimensions, which has a finite index
Figure PCTKR2014008144-appb-I000044
Is a discrete additive subgroup of. That is, a quoted group
Figure PCTKR2014008144-appb-I000045
This is finite.
하나의 래티스
Figure PCTKR2014008144-appb-I000046
Figure PCTKR2014008144-appb-I000047
개의 선형 독립 기저(basis) 벡터
Figure PCTKR2014008144-appb-I000048
의 모든 정수 선형 결합의 집합과 동일하게 정의된다.
One lattice
Figure PCTKR2014008144-appb-I000046
silver
Figure PCTKR2014008144-appb-I000047
Linear independent basis vectors
Figure PCTKR2014008144-appb-I000048
Is defined equal to the set of all integer linear combinations.
Figure PCTKR2014008144-appb-I000049
Figure PCTKR2014008144-appb-I000049
여기서
Figure PCTKR2014008144-appb-I000050
경우, 동일한 래티스를 생성하는 기저들은 무수히 많다.
here
Figure PCTKR2014008144-appb-I000050
In this case, there are a number of bases that produce the same lattice.
본 발명은 다음과 같은 정수 래티스의 특정한 형태를 사용한다. 여기서
Figure PCTKR2014008144-appb-I000051
Figure PCTKR2014008144-appb-I000052
는 정수이며, 차원
Figure PCTKR2014008144-appb-I000053
은 본 발명에서 사용되는 시큐리티 파라미터이고, 모든 다른 파라미터들은
Figure PCTKR2014008144-appb-I000054
의 함수들로 내포되었다고 가정한다. 여기서
Figure PCTKR2014008144-appb-I000055
차원 하드 래티스는 패리티 검사 행렬(parity check matrix)
Figure PCTKR2014008144-appb-I000056
에 의해 생성되며, 다음과 같이 정의된다.
The present invention uses the following specific forms of integer lattice. here
Figure PCTKR2014008144-appb-I000051
and
Figure PCTKR2014008144-appb-I000052
Is an integer, dimension
Figure PCTKR2014008144-appb-I000053
Is the security parameter used in the present invention, all other parameters
Figure PCTKR2014008144-appb-I000054
Suppose it is nested into functions of. here
Figure PCTKR2014008144-appb-I000055
Dimensional hard lattice is a parity check matrix
Figure PCTKR2014008144-appb-I000056
It is created by and defined as
Figure PCTKR2014008144-appb-I000057
Figure PCTKR2014008144-appb-I000057
어떤
Figure PCTKR2014008144-appb-I000058
에 대해서, 패리티 검사 행렬
Figure PCTKR2014008144-appb-I000059
에 의해 생성되는 코셋(coset)은 다음과 같이 정의된다.
which
Figure PCTKR2014008144-appb-I000058
For the parity check matrix
Figure PCTKR2014008144-appb-I000059
The coset generated by is defined as follows.
Figure PCTKR2014008144-appb-I000060
Figure PCTKR2014008144-appb-I000060
어떤 고정된 상수
Figure PCTKR2014008144-appb-I000061
과 어떤
Figure PCTKR2014008144-appb-I000062
에 대해, 균등하게 랜덤 한(uniformly random)
Figure PCTKR2014008144-appb-I000063
의 열 벡터는
Figure PCTKR2014008144-appb-I000064
상의 모두를 (
Figure PCTKR2014008144-appb-I000065
확률을 제외하고) 생성할 수 있다. 따라서 본 발명은 균등하게 랜덤 한
Figure PCTKR2014008144-appb-I000066
를 사용한다.
Any fixed constant
Figure PCTKR2014008144-appb-I000061
And what
Figure PCTKR2014008144-appb-I000062
Uniformly random
Figure PCTKR2014008144-appb-I000063
Column vector of the
Figure PCTKR2014008144-appb-I000064
All of the tops (
Figure PCTKR2014008144-appb-I000065
Except for probability). Therefore, the present invention is equally random
Figure PCTKR2014008144-appb-I000066
Use
본 발명이 기반하는 하드 래티스의 (short integer solution) 문제는 평균적인 경우에 어려운 문제(average-case hardness problems)에 속해있으며, Miklos Ajtai는 이 문제를 최악의 경우에 어려운 문제(worst-case hardness problems)로 커넥션(connection)하는 방법을 발견하였다.The problem of hard lattice (short integer solution) on which the present invention is based belongs to the average-case hardness problems, and Miklos Ajtai describes this problem as the worst-case hardness problems. I've found a way to connect.
래티스의 SIS 문제는 (
Figure PCTKR2014008144-appb-I000067
norm에서의)
Figure PCTKR2014008144-appb-I000068
문제는 어떤
Figure PCTKR2014008144-appb-I000069
에 대해 균등하게 랜덤한 행렬
Figure PCTKR2014008144-appb-I000070
을 입력으로 받아
Figure PCTKR2014008144-appb-I000071
Figure PCTKR2014008144-appb-I000072
(즉,
Figure PCTKR2014008144-appb-I000073
)을 만족하는 영이 아닌(nonzero) 정수 벡터
Figure PCTKR2014008144-appb-I000074
를 찾는 것으로 정의된다.
Lattice's SIS problem is (
Figure PCTKR2014008144-appb-I000067
norm)
Figure PCTKR2014008144-appb-I000068
The question is what
Figure PCTKR2014008144-appb-I000069
Equally random matrix for
Figure PCTKR2014008144-appb-I000070
Take as input
Figure PCTKR2014008144-appb-I000071
Wow
Figure PCTKR2014008144-appb-I000072
(In other words,
Figure PCTKR2014008144-appb-I000073
Nonzero integer vector satisfying
Figure PCTKR2014008144-appb-I000074
It is defined as finding.
도 9는 본 발명의 일실시예에 따른 트랩도어 생성 방법의 흐름을 도시하고 있다.9 is a flowchart illustrating a trapdoor generation method according to an embodiment of the present invention.
보안 파라미터를 입력 받는다(SL110).The security parameter is input (SL110).
균등한 분포에서 임의의 행렬을 선택한다(SL120).An arbitrary matrix is selected from the uniform distribution (SL120).
행렬로부터 래티스를 생성한다(SL130).A lattice is generated from the matrix (SL130).
래티스의 짧은 기저를 산출한다(SL140).Calculate the short basis of lattice (SL140).
산출된 짧은 기저를 트랩도어로서 행렬과 함께 출력한다(SL150).The calculated short basis is outputted along with the matrix as a trapdoor (SL150).
다시 말해, 트랩도어 생성부(L100)는 균등한 분포에서 임의로 선택된 매트릭스
Figure PCTKR2014008144-appb-I000075
와 이러한 매트릭스로 생성되는 래티스
Figure PCTKR2014008144-appb-I000076
의 짧은 기저
Figure PCTKR2014008144-appb-I000077
를 생성하는 알고리즘
Figure PCTKR2014008144-appb-I000078
을 제공한다.
In other words, the trapdoor generator L100 is a matrix randomly selected from the uniform distribution.
Figure PCTKR2014008144-appb-I000075
And the lattice generated from these matrices
Figure PCTKR2014008144-appb-I000076
Short basis of
Figure PCTKR2014008144-appb-I000077
Algorithm to generate
Figure PCTKR2014008144-appb-I000078
To provide.
임의의 래티스의 짧은 기저를 찾는 문제는 결국
Figure PCTKR2014008144-appb-I000079
문제이기 때문에 알고리즘
Figure PCTKR2014008144-appb-I000080
은 임의의 래티스와 그것의 트랩도어(
Figure PCTKR2014008144-appb-I000081
문제에 대한) 즉, 짧은 기저를 생성하게 된다.
The problem of finding a short basis for random lattice ends up
Figure PCTKR2014008144-appb-I000079
Algorithm because it's a problem
Figure PCTKR2014008144-appb-I000080
Is a random lattice and its trapdoor (
Figure PCTKR2014008144-appb-I000081
That is, a short basis.
이때 파라미터들은
Figure PCTKR2014008144-appb-I000082
을 만족하며, 기저
Figure PCTKR2014008144-appb-I000083
의 길이는
Figure PCTKR2014008144-appb-I000084
만큼 짧다.
Where the parameters
Figure PCTKR2014008144-appb-I000082
Satisfied
Figure PCTKR2014008144-appb-I000083
The length of
Figure PCTKR2014008144-appb-I000084
As short as
도 10은 본 발명의 일실시예에 따른 트랩도어 확장 방법의 흐름을 도시하고 있다.10 is a flowchart illustrating a trapdoor expansion method according to an embodiment of the present invention.
래티스를 나타내는 행렬, 즉, 래티스를 생성하는 행렬 및 래티스의 짧은 기저를 입력 받는다(SL210).The matrix representing the lattice, that is, the matrix generating the lattice and the short basis of the lattice are input (SL210).
균등한 분포에서 임의의 행렬을 선택한다(SL220).An arbitrary matrix is selected from the uniform distribution (SL220).
확장된 래티스를 생성한다(SL230).An extended lattice is generated (SL230).
확장된 래티스의 짧은 기저를 산출한다(SL240).The short basis of the expanded lattice is calculated (SL240).
산출된 짧은 기저를 확장된 트랩도어로 출력한다(SL250).The calculated short basis is output to the extended trapdoor (SL250).
다시 말해, 트랩도어 확장부(L200)는 래티스의 짧은 기저를 위임하는 알고리즘을 제공한다.In other words, the trapdoor extension L200 provides an algorithm that delegates the short basis of Lattice.
래티스
Figure PCTKR2014008144-appb-I000085
와 그것의 짧은 기저
Figure PCTKR2014008144-appb-I000086
,
Figure PCTKR2014008144-appb-I000087
를 입력값으로 하는 알고리즘
Figure PCTKR2014008144-appb-I000088
은 출력값으로 래티스
Figure PCTKR2014008144-appb-I000089
와 그것의 짧은 기저
Figure PCTKR2014008144-appb-I000090
을 출력한다.
Lattice
Figure PCTKR2014008144-appb-I000085
And its short basis
Figure PCTKR2014008144-appb-I000086
,
Figure PCTKR2014008144-appb-I000087
As an input
Figure PCTKR2014008144-appb-I000088
Is the output as a lattice
Figure PCTKR2014008144-appb-I000089
And its short basis
Figure PCTKR2014008144-appb-I000090
Outputs
도 11은 본 발명의 일실시예에 따른 가우시안 샘플링 방법의 흐름을 도시하고 있다.11 illustrates a flow of a Gaussian sampling method according to an embodiment of the present invention.
래티스의 짧은 기저, 샘플링 입력값, 샘플링 파라미터를 입력받는다(SL310).A short basis of lattice, a sampling input value, and a sampling parameter are input (SL310).
가우시안 분포를 생성한다(SL320).A Gaussian distribution is generated (SL320).
분포로부터 벡터를 샘플링한다(SL330).The vector is sampled from the distribution (SL330).
벡터를 출력한다(SL340).The vector is output (SL340).
다시 말해, 샘플링부(L300)는 래티스의 가우시안 분포로부터 벡터를 샘플링하는 알고리즘을 제공한다.In other words, the sampling unit L300 provides an algorithm for sampling the vector from the Gaussian distribution of the lattice.
어떤
Figure PCTKR2014008144-appb-I000091
과 차원
Figure PCTKR2014008144-appb-I000092
에 대해, 가우시안 함수(Gaussian function)
Figure PCTKR2014008144-appb-I000093
Figure PCTKR2014008144-appb-I000094
으로 정의된다.
which
Figure PCTKR2014008144-appb-I000091
And dimensions
Figure PCTKR2014008144-appb-I000092
For the Gaussian function
Figure PCTKR2014008144-appb-I000093
Is
Figure PCTKR2014008144-appb-I000094
Is defined.
어떤 코셋 에 대해, 코셋 상의 (중심이 0인) 이산 가우시안 분포(discrete Gaussian distribution)
Figure PCTKR2014008144-appb-I000095
는 각각의
Figure PCTKR2014008144-appb-I000096
에서
Figure PCTKR2014008144-appb-I000097
에 비례하는 확률을 가진다.
For any corset, a discrete Gaussian distribution (zero center) on the corset
Figure PCTKR2014008144-appb-I000095
Is each
Figure PCTKR2014008144-appb-I000096
in
Figure PCTKR2014008144-appb-I000097
Has a probability proportional to
래티스에서의 가우시안 분포와 관련되는 성질을 살펴보면 다음과 같다. 여기에서
Figure PCTKR2014008144-appb-I000098
는 어떤
Figure PCTKR2014008144-appb-I000099
에 대한
Figure PCTKR2014008144-appb-I000100
의 기저를 말하며,
Figure PCTKR2014008144-appb-I000101
이다.
The properties related to Gaussian distribution in Lattice are as follows. From here
Figure PCTKR2014008144-appb-I000098
Which
Figure PCTKR2014008144-appb-I000099
For
Figure PCTKR2014008144-appb-I000100
The basis of
Figure PCTKR2014008144-appb-I000101
to be.
Figure PCTKR2014008144-appb-I000102
Figure PCTKR2014008144-appb-I000102
Figure PCTKR2014008144-appb-I000103
Figure PCTKR2014008144-appb-I000103
이에 따라
Figure PCTKR2014008144-appb-I000104
Figure PCTKR2014008144-appb-I000105
통계적인 거리를 가지는
Figure PCTKR2014008144-appb-I000106
로부터 샘플링을 할 수 있다.
Accordingly
Figure PCTKR2014008144-appb-I000104
silver
Figure PCTKR2014008144-appb-I000105
With statistical distance
Figure PCTKR2014008144-appb-I000106
Sampling can be done from
전술한 바와 같이, 가우시안 샘플링은 서명자(X)가 자신의 비밀키, 즉 확장된 트랩도어에서 서명에 사용할 래티스 벡터를 추출하기 위해 사용한다.As mentioned above, Gaussian sampling is used by the signer X to extract a lattice vector to use for signing from its private key, i. E. The extended trapdoor.
본 발명의 일실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. One embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by the computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transmission mechanism, and includes any information delivery media.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다. 본 발명의 일실시예의 하나 이상의 구성 요소 또는 동작을 실시하기 위하여 사용될 수 있는 컴퓨터 시스템 아키텍쳐의 일례를 설명하면, 하드웨어 시스템은 프로세서, 캐쉬, 메모리 및 상술한 기능에 관련된 하나 이상의 소프트웨어 어플리케이션 및 드라이버를 포함할 수 있다.Although the methods and systems of the present invention have been described in connection with specific embodiments, some or all of their components or operations may be implemented using a computer system having a general purpose hardware architecture. Referring to one example of a computer system architecture that may be used to perform one or more components or operations of one embodiment of the present invention, a hardware system includes a processor, cache, memory, and one or more software applications and drivers related to the functions described above. can do.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

Claims (12)

  1. 전자 서명 시스템에 있어서,In an electronic signature system,
    자신의 마스터 키 및 사용자 개체의 공개된 식별 정보를 사용하여, 제 1 비밀키를 생성하여 상기 사용자 개체에게 할당하는 마스터 개체; 및A master entity for generating and assigning a first secret key to the user entity, using its master key and publicly identified identification information of the user entity; And
    자신의 공개키 및 제 2 비밀키를 생성하는 사용자 개체;를 포함하되,Including a user object for generating its own public key and second private key;
    상기 사용자 개체는The user object
    상기 자신의 공개키, 제 1 비밀키, 및 제 2 비밀키를 사용하여 생성한 서명을 검증자 개체에게 전송하는 서명자 개체; 및A signer entity for transmitting a signature generated using the public key, the first secret key, and the second secret key to a verifier entity; And
    상기 서명자 개체로부터 수신한 서명을 상기 서명자 개체의 공개된 식별 정보, 및 공개키를 사용하여 검증하는 검증자 개체;를 포함하되,And a verifier entity that verifies the signature received from the signer entity using the public identification information of the signer entity and a public key.
    상기 마스터 키, 제 1 비밀키, 및 상기 제 2 비밀키 생성에 래티스(lattice) 상에서의 SIS(small integer solution) 문제의 어려움에 기반하여 생성한 트랩도어(trapdoor)가 사용되는 전자 서명 시스템.And a trapdoor generated based on difficulty of a small integer solution (SIS) problem on a lattice for generating the master key, the first secret key, and the second secret key.
  2. 제 1 항에 있어서,The method of claim 1,
    상기 마스터 개체는The master entity
    균일한 분포(uniform distribution)에서 선택된 임의의 행렬로부터 생성되는 래티스의 짧은 기저(short basis)인 트랩도어를 생성하여,By creating a trapdoor that is a short basis of lattice generated from any matrix selected in a uniform distribution,
    상기 트랩도어를 자신의 비밀키인 마스터 키로 사용하고, 상기 임의의 행렬을 공개하는 전자 서명 시스템.And use the trapdoor as its master key, which is its secret key, and disclose the arbitrary matrix.
  3. 제 1 항에 있어서,The method of claim 1,
    상기 마스터 키의 래티스를 상기 사용자 개체의 공개된 식별 정보를 사용하여 확장된 래티스로 확장하고 상기 확장된 래티스의 짧은 기저인 확장된 트랩도어를 생성하여,Extend the lattice of the master key to the extended lattice using the publicly identified identification of the user entity and create an extended trapdoor that is a short basis of the extended lattice,
    상기 확장된 트랩도어를 상기 사용자 개체의 제 1 비밀키로 발급하는 전자 서명 시스템.Electronic signature system for issuing the extended trapdoor with a first private key of the user entity.
  4. 제 1 항에 있어서,The method of claim 1,
    상기 사용자 개체는The user object
    균일한 분포에서 선택된 임의의 행렬로부터 생성되는 래티스의 짧은 기저인 트랩도어를 생성하여,Create a trapdoor, a short base of lattice generated from a random matrix chosen from a uniform distribution,
    상기 트랩도어를 자신의 제 2 비밀키로 사용하고, 상기 임의의 행렬을 자신의 공개키로 사용하는 전자 서명 시스템.And use the trapdoor as its second secret key and use the arbitrary matrix as its public key.
  5. 제 1 항에 있어서,The method of claim 1,
    상기 사용자 개체는The user object
    자신의 제 1 비밀키 및 공개키를 사용하여 제 1 서명을 생성하고,Generate a first signature using its first private key and public key,
    자신의 제 2 비밀키 및 공개키를 사용하여 제 2 서명을 생성하여,Generate a second signature using its second private key and public key,
    상기 제 1 서명과 제 2 서명을 사용하여 상기 서명을 생성하는 전자 서명 시스템.And generate the signature using the first signature and the second signature.
  6. 제 5 항에 있어서,The method of claim 5,
    상기 사용자 개체는The user object
    상기 제 1 비밀키의 가우시안 분포로부터 벡터를 샘플링하여 상기 제 1 서명을 생성하는 전자 서명 시스템.And generate a first signature by sampling a vector from a Gaussian distribution of the first secret key.
  7. 제 5 항에 있어서,The method of claim 5,
    상기 사용자 개체는The user object
    상기 제 2 비밀키의 래티스를 상기 공개키를 사용하여 확장된 래티스로 확장하고 상기 확장된 래티스의 짧은 기저인 확장된 트랩도어를 생성하여,Expand the lattice of the second secret key into an extended lattice using the public key and generate an extended trapdoor that is a short basis of the extended lattice,
    상기 확장된 트랩도어의 가우시안 분포로부터 벡터를 샘플링하여 상기 제 2 서명을 생성하는 전자 서명 시스템.And generate a second signature by sampling a vector from a Gaussian distribution of the extended trapdoor.
  8. 전자 서명 방법에 있어서,In the digital signature method,
    (a) 마스터 개체가 보안 파라미터를 설정하고 자신의 마스터 키를 생성하는 단계;(a) the master entity setting security parameters and generating its master key;
    (b) 상기 마스터 개체가 서명자 개체 및 검증자 개체를 포함하는 사용자 개체의 공개된 식별 정보에 기초하여, 제 1 비밀키를 생성하여 상기 사용자 개체에게 할당하는 단계;(b) the master entity generating and assigning a first private key to the user entity based on the publicly identified identification information of the user entity including a signer entity and a verifier entity;
    (c) 상기 사용자 개체가 자신의 공개키 및 제 2 비밀키를 생성하는 단계;(c) the user entity generating its public key and second private key;
    (d) 상기 서명자 개체가 자신의 공개키, 제 1 비밀키, 및 제 2 비밀키를 사용하여 생성한 서명을 검증자 개체에게 전송하는 단계; 및(d) sending a signature generated by the signer entity using its public key, first secret key, and second secret key to the verifier entity; And
    (e) 상기 검증자 개체가 상기 서명자 개체로부터 수신한 서명을 상기 서명자 개체의 공개된 식별 정보, 및 공개키를 사용하여 검증하는 단계;를 포함하되,(e) verifying, by the verifier entity, the signature received from the signer entity using the publicly identifying information of the signer entity, and a public key;
    상기 마스터 키, 제 1 비밀키, 및 상기 제 2 비밀키 생성에 래티스(lattice) 상에서의 SIS(small integer solution) 문제의 어려움에 기반하여 생성한 트랩도어(trapdoor)가 사용되는 전자 서명 방법.And a trapdoor generated based on a difficulty of a small integer solution (SIS) problem on a lattice for generating the master key, the first secret key, and the second secret key.
  9. 제 8 항에 있어서,The method of claim 8,
    상기 (a) 단계는Step (a) is
    균일한 분포(uniform distribution)에서 선택된 임의의 행렬로부터 생성되는 래티스의 짧은 기저(short basis)인 트랩도어를 생성하여,By creating a trapdoor that is a short basis of lattice generated from any matrix selected in a uniform distribution,
    상기 트랩도어를 상기 마스터 개체의 비밀키인 마스터 키로 사용하고, 상기 임의의 행렬은 공개되는 전자 서명 방법.Using the trapdoor as a master key, which is the secret key of the master entity, and wherein the arbitrary matrix is public.
  10. 제 8 항에 있어서,The method of claim 8,
    상기 (b) 단계는Step (b) is
    상기 마스터 키의 래티스를 상기 사용자 개체의 공개된 식별 정보를 사용하여 확장된 래티스로 확장하고 상기 확장된 래티스의 짧은 기저인 확장된 트랩도어를 생성하여,Extend the lattice of the master key to the extended lattice using the publicly identified identification of the user entity and create an extended trapdoor that is a short basis of the extended lattice,
    상기 확장된 트랩도어를 상기 사용자 개체의 제 1 비밀키로 발급하는 전자 서명 방법.Electronic signature method for issuing the extended trapdoor with a first private key of the user entity.
  11. 제 8 항에 있어서,The method of claim 8,
    상기 (c) 단계는Step (c) is
    균일한 분포에서 선택된 임의의 행렬로부터 생성되는 래티스의 짧은 기저인 트랩도어를 생성하여Create a trapdoor, a short basis of lattice, generated from a random matrix chosen from a uniform distribution
    상기 트랩도어를 상기 사용자 개체의 제 2 비밀키로 사용하고, 상기 임의의 행렬을 상기 사용자 개체의 공개키로 사용하는 전자 서명 방법.Using the trapdoor as the second private key of the user entity and using the arbitrary matrix as the public key of the user entity.
  12. 제 8 항에 있어서,The method of claim 8,
    상기 (d) 단계는Step (d)
    상기 서명자 개체의 제 1 비밀키 및 공개키를 사용하여, 상기 제 1 비밀키의 가우시안 분포로부터 벡터를 샘플링하여 제 1 서명을 생성하고,Generate a first signature by sampling a vector from a Gaussian distribution of the first private key using the first private key and the public key of the signer entity,
    상기 서명자 개체의 제 2 비밀키 및 공개키를 사용하여, 상기 제 2 비밀키의 래티스를 상기 공개키를 사용하여 확장된 래티스로 확장하고 상기 확장된 래티스의 짧은 기저인 확장된 트랩도어를 생성하여, 상기 확장된 트랩도어의 가우시안 분포로부터 벡터를 샘플링하여 제 2 서명을 생성하여,Using the second private key and the public key of the signer entity, expand the lattice of the second private key into an extended lattice using the public key and create an extended trapdoor that is a short basis of the expanded lattice Generating a second signature by sampling a vector from a Gaussian distribution of the extended trapdoor;
    상기 제 1 서명과 제 2 서명을 사용하여 상기 서명을 생성하는 전자 서명 방법.Electronic signature method for generating the signature using the first signature and the second signature.
PCT/KR2014/008144 2013-08-30 2014-09-01 Lattice-based certificateless signature system and method WO2015030553A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0104107 2013-08-30
KR1020130104107A KR101404642B1 (en) 2013-08-30 2013-08-30 System and method for lattice-based certificateless signature

Publications (1)

Publication Number Publication Date
WO2015030553A1 true WO2015030553A1 (en) 2015-03-05

Family

ID=51132107

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/008144 WO2015030553A1 (en) 2013-08-30 2014-09-01 Lattice-based certificateless signature system and method

Country Status (2)

Country Link
KR (1) KR101404642B1 (en)
WO (1) WO2015030553A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9973342B2 (en) 2016-06-16 2018-05-15 International Business Machines Corporation Authentication via group signatures
US10129029B2 (en) 2016-06-16 2018-11-13 International Business Machines Corporation Proofs of plaintext knowledge and group signatures incorporating same
CN109862559A (en) * 2019-03-02 2019-06-07 西安邮电大学 Certificateless Signature Method and System for Industrial Internet Data Awareness
CN109936458A (en) * 2019-03-18 2019-06-25 上海扈民区块链科技有限公司 A Lattice-based Digital Signature Method Based on Multiple Evidence Error Correction
CN110266490A (en) * 2019-07-25 2019-09-20 西南石油大学 Keyword ciphertext generation method and device for cloud storage data
SE2150223A1 (en) * 2021-03-01 2022-09-02 Assa Abloy Ab Privacy-enhanced delegation of access right

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237116B1 (en) * 2000-01-19 2007-06-26 International Business Machines Corporation Digital signature system and method based on hard lattice problem
US20070165843A1 (en) * 2006-01-13 2007-07-19 Microsoft Corporation Trapdoor Pairings
KR20120071884A (en) * 2010-12-23 2012-07-03 한국전자통신연구원 Ring signature method based on lattices
KR20130085491A (en) * 2011-12-09 2013-07-30 한국전자통신연구원 Multi-user searchable encryption system with index validation and tracing and method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101382626B1 (en) 2013-01-03 2014-04-07 고려대학교 산학협력단 System and method for id-based strong designated verifier signature

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237116B1 (en) * 2000-01-19 2007-06-26 International Business Machines Corporation Digital signature system and method based on hard lattice problem
US20070165843A1 (en) * 2006-01-13 2007-07-19 Microsoft Corporation Trapdoor Pairings
KR20120071884A (en) * 2010-12-23 2012-07-03 한국전자통신연구원 Ring signature method based on lattices
KR20130085491A (en) * 2011-12-09 2013-07-30 한국전자통신연구원 Multi-user searchable encryption system with index validation and tracing and method thereof

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9973342B2 (en) 2016-06-16 2018-05-15 International Business Machines Corporation Authentication via group signatures
US10129029B2 (en) 2016-06-16 2018-11-13 International Business Machines Corporation Proofs of plaintext knowledge and group signatures incorporating same
CN109862559A (en) * 2019-03-02 2019-06-07 西安邮电大学 Certificateless Signature Method and System for Industrial Internet Data Awareness
CN109936458A (en) * 2019-03-18 2019-06-25 上海扈民区块链科技有限公司 A Lattice-based Digital Signature Method Based on Multiple Evidence Error Correction
WO2020186750A1 (en) * 2019-03-18 2020-09-24 上海扈民区块链科技有限公司 Multi-evidence error correction-based lattice-based digital signature method
CN109936458B (en) * 2019-03-18 2022-04-26 上海扈民区块链科技有限公司 A Lattice-based Digital Signature Method Based on Multiple Evidence Error Correction
CN110266490A (en) * 2019-07-25 2019-09-20 西南石油大学 Keyword ciphertext generation method and device for cloud storage data
CN110266490B (en) * 2019-07-25 2023-04-21 西南石油大学 Keyword ciphertext generation method and device for cloud storage data
SE2150223A1 (en) * 2021-03-01 2022-09-02 Assa Abloy Ab Privacy-enhanced delegation of access right
SE545260C2 (en) * 2021-03-01 2023-06-13 Assa Abloy Ab Privacy-enhanced delegation of access right to unlock a physical lock involving a delegator, a delegatee, a derivation scalar and public and secret keys

Also Published As

Publication number Publication date
KR101404642B1 (en) 2014-06-11

Similar Documents

Publication Publication Date Title
Miao et al. Multi-authority attribute-based keyword search over encrypted cloud data
CN113098838B (en) Trusted distributed identity authentication method, system, storage medium and application
WO2015030553A1 (en) Lattice-based certificateless signature system and method
WO2014069783A1 (en) Password-based authentication method, and apparatus for performing same
Krawczyk et al. HMAC-based extract-and-expand key derivation function (HKDF)
WO2014069778A1 (en) Id-based encryption and decryption method, and apparatus for executing same
CN106341232B (en) A password-based anonymous entity authentication method
CN111797427A (en) A blockchain user identity supervision method and system that takes into account privacy protection
US20250088352A1 (en) Password security hardware module
WO2021060720A1 (en) Blockchain system supporting change in plain text data included in transaction
Chalaemwongwan et al. A practical national digital ID framework on blockchain (NIDBC)
WO2020138733A1 (en) Blockchain system for providing anonymity of private information and method for providing anonymity of private information in blockchain
WO2020032351A1 (en) Method for establishing anonymous digital identity
WO2020235733A1 (en) Device and method for authenticating user and obtaining user signature using user's biometrics
CN117240452A (en) A blockchain-based secure sharing method for plateau data
Long et al. Blockchain-based anonymous authentication and key management for internet of things with Chebyshev chaotic maps
Yang et al. An environmental monitoring data sharing scheme based on attribute encryption in cloud-fog computing
Asare et al. A hybrid lightweight cryptographic scheme for securing node data based on the feistel cipher and MD5 hash algorithm in a local IoT network
CN114866244A (en) Controllable anonymous authentication method, system and device based on ciphertext block chaining encryption
WO2024090628A1 (en) Cryptographic communication method and apparatus of decentralized-id-based service
JP2001111538A (en) Communication system, method therefor, communication equipment and ic card
CN114640468B (en) Block chain privacy protection method based on online offline attribute encryption
Wang et al. EBIAS: ECC-enabled blockchain-based identity authentication scheme for IoT device
WO2019245452A1 (en) Method and device for configuring alias credential
Mahmmod et al. Design an active verification mechanism for certificates revocation in OCSP for internet authentication

Legal Events

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

Ref document number: 14839185

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14839185

Country of ref document: EP

Kind code of ref document: A1