KR100529594B1 - Method for verifying public key in different certification domain - Google Patents
Method for verifying public key in different certification domain Download PDFInfo
- Publication number
- KR100529594B1 KR100529594B1 KR1020030038247A KR20030038247A KR100529594B1 KR 100529594 B1 KR100529594 B1 KR 100529594B1 KR 1020030038247 A KR1020030038247 A KR 1020030038247A KR 20030038247 A KR20030038247 A KR 20030038247A KR 100529594 B1 KR100529594 B1 KR 100529594B1
- Authority
- KR
- South Korea
- Prior art keywords
- key
- public key
- user terminal
- authentication information
- self
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Abstract
본 발명은 서로 다른 인증 도메인에서 공개키를 검증하기 위한 방법에 관한 것이다. 이러한 본 발명에 따른 자체 인증 공개키 발급 방법이, 사용자 단말기가, 상기 사용자 단말기의 비밀키와 키발급기관의 공개키 파라미터를 가지고 공개키를 생성하는 과정과, 상기 사용자 단말기의 개인식별정보와 상기 생성된 공개키를 상기 키발급기관으로 전송하는 과정과, 상기 키발급기관이, 상기 키발급기관의 개인식별정보와 상기 공개키 파라미터를 일방향 해쉬 함수에 입력하여 상기 키발급기관의 인증정보를 생성하는 과정과, 상기 사용자 단말기로부터 수신된 상기 개인식별정보와 상기 공개키를 상기 해쉬함수에 입력하여 상기 사용자 단말기의 인증정보를 생성하는 과정과, 상기 키발급기관의 인증정보, 상기 사용자 단말기의 인증정보, 상기 공개키 및 상기 공개키 파라미터를 가지고 자체 인증 공개키를 생성하는 과정과, 상기 생성된 자체 인증 공개키를 상기 사용자 단말기로 전송하는 과정을 포함한다.The present invention relates to a method for verifying a public key in different authentication domains. The self-authentication public key issuing method according to the present invention includes the steps of: a user terminal generating a public key having a secret key of the user terminal and a public key parameter of a key issuer; Transmitting the generated public key to the key issuing institution, and generating the authentication information of the key issuing body by inputting the personal identification information and the public key parameter of the key issuing body into a one-way hash function; And generating authentication information of the user terminal by inputting the personal identification information and the public key received from the user terminal into the hash function, authentication information of the key issuer, and authentication of the user terminal. Generating a self-authenticating public key with information, the public key and the public key parameters, A body authentication public key comprises the step of transmitting to the user terminal.
자체 인증 공개키, 인증, 키발급기관, 무선Self-certified public key, certificate, key issuer, wireless
Description
도 1은 본 발명의 실시 예에 따른 시스템 구성을 보여주는 도면.1 is a view showing a system configuration according to an embodiment of the present invention.
도 2는 본 발명의 실시 예에 있어서 자체 인증 공개키 발급과정에 대한 사용자(10)의 수행절차를 도시하는 도면.2 is a diagram illustrating a
도 3은 본 발명의 실시 예에 있어서 자체 인증 공개키 발급과정에 대한 키발급기관(30)의 수행절차를 도시하는 도면.3 is a view showing the procedure of the
도 4는 본 발명의 실시 예에 있어서 자체 인증 공개키 사용과정에 대한 사용자(10)의 수행절차를 도시하는 도면.4 is a diagram illustrating a
도 5는 본 발명의 실시 예에 있어서 자체 인증 공개키 검증과정에 대한 사용자(20)의 수행절차를 도시하는 도면.FIG. 5 is a diagram illustrating a
도 6은 본 발명의 실시 예에 있어서 자체 인증 공개키 검증과정에 대한 키발급기관(40)의 수행절차를 도시하는 도면.6 is a diagram illustrating a procedure of performing a
본 발명은 공개키 인증 방법에 관한 것으로, 특히 서로 다른 인증 도메인에서 공개키를 검증하기 위한 방법에 관한 것이다. The present invention relates to a public key authentication method, and more particularly, to a method for verifying a public key in different authentication domains.
공개키 인증 방법에는 크게 3가지가 있다. 먼저, 인증서 기반 방식은 인증서와 인증서 효력정지 및 폐지 목록을 검증해야 하는 부담이 있다. 그리고, 사용자 개인식별정보 기반 방식은 사용자의 비밀키가 키 발급 기관에 노출된다는 단점이 있고, 자체 인증 방식은 서로 다른 인증 도메인의 사용자는 상대방 공개키를 인증할 수 없다는 단점이 있다.There are three public key authentication methods. First, the certificate-based approach has the burden of verifying the certificate, certificate revocation and revocation list. In addition, the user personal identification information-based method has a disadvantage in that the secret key of the user is exposed to the key issuing authority, and the self-authentication method has a disadvantage in that users of different authentication domains cannot authenticate the other party's public key.
공개키의 인증을 위해 가장 보편적으로 사용되는 방법은 기존의 공개키 기반 구조(PKI : Public Key Infrastructure)하에서 인증기관이 발급한 공개키 인증서를 검증하는 것이다. 이러한 PKI 환경에서는 많은 수의 사용자들을 수용하고 효율적인 인증서 관련 서비스를 제공하기 위해 여러 개의 인증기관을 다양한 형태로 두고 있다. 따라서 각 사용자는 자신이 신뢰하는 인증기관의 인증서 뿐만 아니라 다른 인증기관이 발급한 인증서를 검증해야 하는 경우가 있다. 이를 위해 인증기관간 상호 인증을 체결하여 상이한 도메인의 사용자간에 서로 상대방의 공개키 인증서를 검증할 수 있도록 한다. The most commonly used method for authenticating a public key is to verify a public key certificate issued by a certification authority under an existing public key infrastructure (PKI). In such a PKI environment, several certification authorities have various forms to accommodate a large number of users and to provide efficient certificate-related services. Therefore, each user may need to verify a certificate issued by another certification authority as well as the certificate authority's trusted certificate authority. To this end, mutual authentication is signed between certification authorities so that users of different domains can verify each other's public key certificates.
공개키 인증서를 사용하지 않고 공개키를 인증할 수 있는 방법으로 1985년 A. Shamir가 제안한 공개키가 사용자의 개인식별정보에 기반하는 방식이 있다. 이 방식은 사용자의 개인식별정보를 공개키 자체로 사용함으로써 누구나 공개키를 쉽게 인증할 수 있도록 하였다. 그러나, 공개키 즉 개인식별정보에 대응하는 비밀키 를 키 발급 기관이 직접 생성하여 사용자에게 전송해 주기 때문에, 사용자의 비밀키가 키 발급 기관에 노출되는 단점이 있다. One way to authenticate a public key without using a public key certificate is by a public key proposed by A. Shamir in 1985 based on the user's personally identifiable information. This method makes it easier for anyone to authenticate the public key by using the user's personal identification information as the public key itself. However, since the key issuer directly generates and transmits the public key, that is, the secret key corresponding to the personal identification information, to the user, the secret key of the user is exposed to the key issuer.
1991년 M. Girault에 의해 제안된 자체 인증 공개키 역시 인증서를 사용하지 않고 개인식별정보에 기반하는 방식이다. 그러나 이 방식은 사용자가 비밀키를 직접 생성하고, 이에 대응하는 공개키에 대해 키 발급 기관이 자체 인증 공개키를 발급해 줌으로써 공개키 자체가 인증서의 역할(자체 인증성)을 하도록 하였다. 1999년 S. Kim 등은 이러한 자체 인증 공개키의 개념을 확장하여, 서명 또는 키 분배 등에 자체 인증 공개키가 사용되어 문제가 발생한 경우 서명 또는 키 분배 등에 문제가 있는지, 자체 인증 공개키에 문제가 있는지 확인(검증 가능성)할 수 있는 검증 가능한 자체 인증 공개키를 제안하였다. 하지만 이 방식은 서로 다른 키 발급 기관을 신뢰하는 사용자는 상대방의 공개키를 인증할 수 없는 단점이 있다.The self-certified public key proposed by M. Girault in 1991 is also based on personally identifiable information without using a certificate. However, this method allows a user to generate a private key directly, and the key issuer issues a self-certified public key for the corresponding public key so that the public key itself acts as a certificate (self-authentication). In 1999, S. Kim et al. Extended the concept of self-certified public key, and if the problem occurred because the self-certified public key was used for signature or key distribution, there was a problem with the signature or key distribution. We proposed a verifiable self-certifying public key that can verify its validity. However, this method has a disadvantage in that users who trust different key issuers cannot authenticate the other party's public key.
따라서, 본 발명의 목적은 사용자의 비밀정보가 키 발급 기관에 노출되지 않으며, 공개키 자체로 인증이 가능하고, 서로 다른 인증 도메인에서도 공개키 검증이 가능한 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a method in which a user's secret information is not exposed to a key issuing authority, can be authenticated by the public key itself, and public key verification can be performed in different authentication domains.
상기 목적을 달성하기 위한 본 발명의 제1견지에 따르면, 서로 다른 도메인에서 검증가능한 자체 인증 공개키 발급 방법이, 사용자 단말기가, 상기 사용자 단말기의 비밀키와 키발급기관의 공개키 파라미터를 가지고 공개키를 생성하는 과정과, 상기 사용자 단말기의 개인식별정보와 상기 생성된 공개키를 상기 키발급기 관으로 전송하는 과정과, 상기 키발급기관이, 상기 키발급기관의 개인식별정보와 상기 공개키 파라미터를 일방향 해쉬 함수에 입력하여 상기 키발급기관의 인증정보를 생성하는 과정과, 상기 사용자 단말기로부터 수신된 상기 개인식별정보와 상기 공개키를 상기 해쉬함수에 입력하여 상기 사용자 단말기의 인증정보를 생성하는 과정과, 상기 키발급기관의 인증정보, 상기 사용자 단말기의 인증정보, 상기 공개키 및 상기 공개키 파라미터를 가지고 자체 인증 공개키를 생성하는 과정과, 상기 생성된 자체 인증 공개키를 상기 사용자 단말기로 전송하는 과정을 포함하는 것을 특징으로 한다.According to a first aspect of the present invention for achieving the above object, a method for issuing a self-authenticating public key that can be verified in different domains is disclosed by a user terminal having a secret key of the user terminal and a public key parameter of a key issuer. Generating a key, transmitting the personal identification information of the user terminal and the generated public key to the key issuer, and the key issuer, the personal identification information of the key issuer and the public key parameter Generating an authentication information of the key issuer by inputting a one-way hash function, and generating authentication information of the user terminal by inputting the personal identification information and the public key received from the user terminal into the hash function. Process, authentication information of the key issuer, authentication information of the user terminal, the public key and the public key La has a meter and a process of generating a self-certified public key, and the generated self-certified public key, characterized in that it comprises the step of transmitting to the user terminal.
본 발명의 제2견지에 따르면, 서로 다른 도메인에서 검증가능한 자체 인증 공개키 사용 방법이, 제1사용자 단말기가, 제1키발급기관이 공개한 공개키 파라미터 와 상에서 임의로 선택한 원소 를 이용하여 중간값 을 계산하는 과정과, 상기 제1사용자 단말기의 비밀키 와 를 이용하여 서명문 에 대한 서명 를 생성하는 과정과, 상기 중간값 , 상기 제1키발급기관으로부터 발급받은 자체 인증 공개키 , 상기 제1키발급기관의 인증정보 , 상기 제1사용자 단말기의 인증정보 를 제2사용자 단말기로 전송하는 과정과, 상기 제2사용자 단말기가, 상기 제1사용자 단말기로부터 수신한 와 상기 제1키발급기관의 공개키 파라미터 로 상기 제1 사용자 단말기의 를 검증하는 과정을 포함하는 것을 특징으로 한다.According to a second aspect of the present invention, there is provided a method of using a self-authenticating public key that can be verified in different domains, wherein the first user terminal is a public key parameter disclosed by the first key issuer. Wow Randomly selected elements Median using Calculating a secret key of the first user terminal; Wow Signature using Signature for And generating the intermediate value , Self-certified public key issued by the first key issuing agency Authentication information of the first key issuing organization Authentication information of the first user terminal Transmitting the message to the second user terminal, and receiving the message received from the first user terminal by the second user terminal. And a public key parameter of the first key issuer Of the first user terminal It characterized in that it comprises a process of verifying.
본 발명의 제3견지에 따르면, 서로 다른 도메인에서 검증가능한 자체 인증 공개키 검증 방법이, 제2사용자 단말기가, 제1키발급기관의 인증정보를 상기 제2사용자 단말기가 신뢰하는 제2키발급기관으로 요청하는 과정과, 상기 제2키발급기관이, 사전에 정당성을 검증하여 보관중인 상기 제1키발급기관의 공개키 파라미터 와 개인식별정보로 상기 제1키발급기관의 인증정보 를 생성하는 과정과, 상기 제2키발급기관의 비밀키 로 상기 인증정보에 대한 서명 를 생성하여 상기 제2사용자로 전송하는 과정과, 상기 제2사용자 단말기가, 상기 서명, 상기 제2키발급기관의 공개키 파라미터 및 키발급기관의 공개키를 가지고 상기 제1키발급기관의 인증정보 를 계산하는 과정과, 상기 제1키발급기관의 개인식별정보 와 상기 공개키 파라미터 를 일방향 해쉬 함수에 입력하여 나온 결과값과 상기 계산된 제1키발급기관의 인증정보이 동일한지 비교하여 상기 공개키 파라미터 의 정당성을 검증하는 과정과, 상기 정당성이 검증된 공개키 파라미터 로 상기 제1사용자단말기의 공개키 를 계산하는 과정과, 상기 계산된 공개키 를 상기 제1사용자단말기의 개인식별정보 와 함께 일방향 해쉬 함수에 입력하여 나온 결과값과 상기 제1사용자단말기로부터 수신한 인증정보가 동일한지 비교하여 상기 제1사용자 단말기의 공개키 의 정당성을 검증하는 과정을 포함하는 것을 특징으로 한다.According to a third aspect of the present invention, there is provided a self-certifying public key verification method that can be verified in different domains, wherein the second user terminal trusts the authentication information of the first key issuing agency by the second user terminal. Requesting to the institution; and the public key parameter of the first key issuing institution that the second key issuing institution has previously verified and stored in advance. And personally identifiable information Authentication information of the first key issuing organization Generating a secret key of the second key issuing organization; Signature for the above authentication information Generating and transmitting the generated information to the second user; , Public key parameter of the second key issuing organization And authentication information of the first key issuing agency with the public key of the key issuing institution Calculating the personal identification information of the first key issuing institution; And the public key parameter To the one-way hash function and the calculated result and authentication information of the first key issuing organization Compare the public key parameters Verifying the validity of the public key parameter, and verifying the validity of the public key parameter The public key of the first user terminal Calculating a; and the calculated public key Personal identification information of the first user terminal And the result value inputted to the one-way hash function and the authentication information received from the first user terminal. Public key of the first user terminal in comparison Characterized in that it includes a process of verifying the validity of.
이하 본 발명의 바람직한 실시 예를 첨부된 도면의 참조와 함께 상세히 설명한다. 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In describing the present invention, if it is determined that the detailed description of the related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
먼저, 설명에 앞서 본 발명에서 사용되는 기호에 대해서 살펴보면 다음과 같다.First, prior to explaining the symbols used in the present invention as follows.
< 시스템 파라미터 ><System Parameter>
: 각 사용자 : Each user
: 각각 와 가 신뢰하는 키 발급 기관 : each Wow Trusted key issuing authority
두 키 발급 기관은 서로 다른 도메인을 형성하고 있으며, 상호 The two key issuers form different domains,
신뢰 관계가 구축되어 있어 상대방 기관의 공개키 및 공개키 A trust relationship is established so that the public key and public key of the other party's organization
파라미터를 저장하고 있음 Storing parameters
: 각각 와 의 개인식별정보 : each Wow Personally identifiable information
: 각각 와 의 공개키 파라미터 : each Wow Public key parameters
이때, 와 은 Pohlig-Hellman attack에 대해 안전하기At this time, Wow Is safe against Pohlig-Hellman attacks
위해 각각 비슷한 크기의 상당히 큰 소수이어야 하며, To be fairly large prime numbers of similar size each,
, , 일 때, , , when,
역시 큰 소수이어야 함 Must also be a large prime number
(e.g. )(eg )
정수 3 : 등 모든 키 발급 기관의 공개키Integer 3: Public keys of all key issuers
공개키를 이용한 지수 연산의 효율성을 높이기 위해 사용되는 Used to increase the efficiency of exponential operations with public keys
두 가지 형태() 중 In two forms: ) Of
본 발명에서는 을 사용함In the present invention Used
: 각각 와 의 비밀키 : each Wow Secret key
이 때, At this time,
상에서의 원시원소 Primitive elements
: 인 일방향 해쉬 함수 : One-way hash function
이하 본 발명은 서로 다른 인증 도메인에서도 검증 가능한 자체 인증 공개키의 발급, 사용 및 검증에 대해 설명할 것이다.Hereinafter, the present invention will be described for issuance, use, and verification of self-certified public keys that can be verified in different authentication domains.
도 1은 본 발명의 실시 예에 따른 시스템 구성을 보여주고 있다.1 shows a system configuration according to an embodiment of the present invention.
도시된 바와 같이, 사용자A(사용자 단말기A)(10), 사용자B(사용자 단말기B)(20), 키발급기관A(30) 및 키발급기관(40)을 포함하여 구성된다. 특히, 도 1은 각 장치들 사이에 교환되는 정보들을 보여주고 있다. As shown in the drawing, a user A (user terminal A) 10, a user B (user terminal B) 20, a key issuing
상기 키발급기관(30)과 사용자(또는 사용자 단말기)(10) 사이에 교환되는 정 보들은 자체 인증 공개키 발급과정에서 교환되는 정보들이다. 사용자(10)가 사용자(10)의 개인식별정보 와 공개키 를 키발급기관(30)으로 전송하면, 상기 키발급기관(30)은 자체 인증 공개키 를 생성하여 상기 사용자(10)에게 전송한다. 그러면, 상기 사용자(10)는 수신된 자체 인증 공개키 를 가지고 앞서 생성한 공개키 를 검증한다.Information exchanged between the
상기 사용자(10)와 사용자(또는 사용자 단말기)(20) 사이에 교환되는 정보는 사용자(10)가 생성한 서명을 사용자(20)가 검증할 때 교환되는 정보이다. 사용자(10)가 중간값 (≡), 서명문 , 서명 , 자체 인증 공개키 , 키발급기관(30)의 인증정보 , 사용자(10)의 인증정보 를 사용자(20)에게 전송하면, 상기 사용자(20)는 상기 자체 인증 공개키, 키발급기관(30)의 인증정보, 사용자(10)의 인증정보 및 키발급기관(30)의 공개키 파라미터 로 사용자(10)의 서명(, , )을 검증한다.The information exchanged between the
상기 사용자(20)와 키발급기관(40) 사이에 교환되는 정보는 위의 과정에서 사용자(10)의 검증이 실패할 경우 사용자(20)가 상기 자체 인증 공개키를 검증할 때 교환되는 정보이다. 사용자(20)가 키발급기관(40)으로 상기 공개키 파라미터 의 정당성을 확인할 수 있는 인증정보를 요청하면, 상기 키발급기관(40)은 키발급기관(10)의 인증정보 를 생성하고 키발급기관(40)의 비밀키 로 서명 SB를 생성하여 사용자(20)에게 전송한다. 그러면, 상기 사용자(20)는 상기 공개키 파라미터 의 정당성을 검증하고, 정당성이 검증된 공개키 파라미터로 사용자(10)의 공개키 를 계산하고, 상기 공개키 를 가지고 사용자(10)의 공개키 를 검증한다.The information exchanged between the
본 발명은 크게, 키발급기관으로부터 자체 인증 공개키를 발급받는 과정과, 상기 자체 인증 공개키를 서명 및 키 분배 등의 어플리케이션에 사용하는 과정과, 사용 후 문제가 발생한 경우 다른 도메인의 사용자가 자체 인증 공개키에 이상이 있는지, 서명이나 키 분배 과정에 이상이 있는지를 검증하는 과정으로 구분할 수 있다.The present invention is largely the process of issuing a self-certified public key from a key issuing agency, using the self-certified public key in applications such as signing and key distribution, and if a problem occurs after use by a user of another domain It can be divided into the process of verifying whether there is an error in the certificate public key or whether there is an error in the signature or key distribution process.
먼저, 자체 인증 공개키 발급 과정을 살펴보면 다음과 같다.First, the self-certification public key issuance process is as follows.
도 2는 본 발명의 실시 예에 있어서 상기 자체 인증 공개키 발급과정에 대한 사용자(10)의 수행절차를 도시하고 있다. 2 is a flowchart illustrating a
도 2를 참조하면, 먼저 사용자(10)는 201단계에서 비밀키 를 선택하고, 203단계에서 자신이 신뢰하는 키발급기관(30)의 공개키 파라미터 를 이용하여 공개키 (≡)를 계산한다. 그리고 상기 사용자(10)는 205단계에서 사용자(10)의 개인식별정보 와 상기 공개키 를 상기 키발급기관(30)으로 전송한다.Referring to FIG. 2, first, the
이후, 상기 사용자(10)는 207단계에서 상기 키발급기관(30)으로부터 자체 인 증 공개키 가 수신되는지 검사한다. 상기 자체 인증 공개키 수신시, 상기 사용자(10)는 209단계에서 키발급기관(30)의 개인식별정보 와 공개키 파라미터 를 일방향 해쉬함수 에 입력하여 상기 키발급기관(30)의 인증정보 를 생성하고, 211단계에서 상기 사용자(10)의 개인식별정보 와 공개키 를 일방향 해쉬함수 에 입력하여 상기 사용자(10)의 인증정보 를 생성한다.Thereafter, the
그리고, 상기 사용자(10)는 213단계에서 상기 인증정보들(, )과 상기 수신된 자체 인증 공개키 및 공개키 파라미터 를 이용해 하기 수식에 의해 앞서 생성한 공개키 의 정당성을 검증한후 종료한다.In
도 3은 본 발명의 실시 예에 있어서 상기 자체 인증 공개키 발급과정에 대한 키발급기관(30)의 수행절차를 도시하고 있다. 3 is a flowchart illustrating an execution procedure of a
도 3을 참조하면, 먼저 키발급기관(30)은 301단계에서 상기 사용자(10)의 신원을 확인한다. 신원이 확인되면, 상기 키발급기관(30)은 303단계에서 상기 사용자(10)로부터 상기 개인식별정보 와 공개키 가 수신되는지 검사한다. Referring to FIG. 3, first, the
상기 개인식별정보와 공개키가 수신되면, 상기 키발급기관(30)은 305단계에서 상기 키발급기관(30)의 개인식별정보 와 공개키 파라미터 를 일 방향 해쉬함수 에 입력하여 상기 키발급기관(30)의 인증정보 를 생성하고, 307단계에서 상기 사용자(10)의 개인식별정보 와 공개키 를 일방향 해쉬함수 에 입력하여 상기 사용자(10)의 인증정보 를 생성한다.When the personal identification information and the public key are received, the
그리고, 상기 키발급기관(30)은 309단계에서 하기 수식과 같이 상기 키발급기관(20)의 인증정보 와 상기 사용자(10)의 인증정보 에 배타적 논리합을 취해 상기 사용자(10)의 공개키 와 함께 서명을 함으로써 자체 인증 공개키 를 생성하고, 311단계에서 상기 생성된 자체 인증 공개키 를 상기 사용자(10)에게 전송한후 종료한다.In addition, the
상기 도 2 및 도 3을 참조하여 자체 인증 공개키 발급과정을 정리하면 하기 <표 1>과 같다.Referring to FIG. 2 and FIG. 3, the self-authentication public key issuing process is summarized as shown in Table 1 below.
상기 <표 1>에서 보여지는 바와 같이, 먼저 키발급기관(30)은 사용자(10)의 신원을 확인한다. As shown in Table 1, the
한편, 상기 사용자(10)는 비밀키 를 선택하고, 자신이 신뢰하는 키발급기관(30)의 공개키 파라미터 를 이용하여 공개키 (≡)를 계산한다. 그리고, 사용자(10)는 자신의 개인식별정보 와 공개키 를 상기 키발급기관(30)으로 전송한다.On the other hand, the
이후, 상기 키발급기관(30)은 자신의 개인식별정보 와 사용자들에게 공개하고 있는 공개키 파라미터 를 일방향 해쉬 함수 에 입력하여 자신의 인증 정보 를 생성하고, 상기 사용자(10)로부터 수신된 와 를 동일한 를 입력하여 상기 사용자(10)의 인증정보 를 생성한다. 그리고, 상기 키발급기관(30)은 상기 와 에 배타적 논리합을 취해 상기 사용자(10)의 공개키와 함께 서명을 함으로써 자체 인증 공개키 를 생성하고, 상기 생성된 자체 인증 공개키를 상기 사용자(10)에게 전송한다.Subsequently, the
상기 자체 인증 공개키를 수신한 상기 사용자(10)는 일방향 해쉬함수 를 이용하여 키발급기관(30)의 인증정보 와 사용자(10)의 인증정보 를 계산하고, 이 값들과 상기 수신된 자체 인증 공개키 및 공개키 파라미터를 이용해 앞서 생성한 공개키 의 정당성을 검증한다.The
다음으로, 자체 인증 공개키 사용 과정을 살펴보면 다음과 같다.Next, the process of using the self-authentication public key is as follows.
이하 사용자(10)가 ElGamal 서명 방식을 이용하여 생성한 서명을 사용자(20)가 검증하는 것으로 가정하여 설명한다.Hereinafter, it is assumed that the
도 4는 본 발명의 실시 예에 있어서 상기 자체 인증 공개키 사용과정에 대한 사용자(10)의 수행절차를 도시하고 있다.4 is a flowchart illustrating a
도 4를 참조하면, 먼저 사용자(10)는 401단계에서 상에서 임의로 선택한 원소 를 선택하고, 403단계에서 키발급기관(30)이 공개한 공개키 파라미터 와 상기 원소 를 가지고 중간값 (≡)을 계산한다.Referring to FIG. 4, first, the
이후, 상기 사용자(10)는 405단계에서 서명문 M에 대하여 상기 사용자(10)의 비밀키 와 를 이용하여 서명 (≡)를 생성한다. 그리고 상기 사용자(10)는 407단계에서 상기 서명문 , 상기 중간값 , 상기 서명 , 상기 자체 인증 공개키 , 키발급기관(30)의 인증정보 및 사용자(10)의 인증정보 를 사용자(20)에게 전송한다.Thereafter, the
상술한 내용에 근거하여 자체 인증 공개키 사용과정을 정리하면 하기 <표 2>과 같다.Based on the above description, the process of using the self-authentication public key is summarized in Table 2 below.
상기 <표 2>에서 보여지는 바와 같이, 먼저 사용자(10)는 키발급기관(30)이 공개한 파라미터 와 상에서 임의로 선택한 원소 를 이용하여 중간값 (≡)을 계산한다.As shown in Table 2, first, the
그리고, 상기 사용자(10)는 서명문 에 대해 자신의 비밀키 와 를 이용하여 서명 (≡)를 생성하고, 그리고 를 사용자(20)에게 전송한다.Then, the
다음으로, 자체 인증 공개키 및 서명 검증과정을 살펴보면 다음과 같다.Next, the self-public key and signature verification process is as follows.
도 5는 본 발명의 실시 예에 있어서 상기 자체 인증 공개키 및 서명 검증과정에 대한 사용자(20)의 수행절차를 도시하고 있다. FIG. 5 is a flowchart illustrating a
도 5를 참조하면, 먼저 사용자(20)는 501단계에서 키발급기관(30)의 공개키 파라미터 의 정당성을 확인하기 위해 키발급기관(40)으로 키발급기관(30)의 인증정보를 요청한다.Referring to FIG. 5, first, the
이후, 상기 사용자(20)는 503단계에서 상기 키발급기관(40)으로부터 상기 인증정보에 대한 서명 이 수신되는지 검사한다. 상기 인증정보에 대한 서명 수신시, 상기 사용자(20)는 505단계에서 키발급기관(40)의 공개키 파라미터 와 키발급기관의 공개키를 가지고 상기 수신된 서명 로부터 상기 키발급기관의 인증정보 를 추출한다. Thereafter, the
그리고, 상기 사용자(20)는 507단계에서 상기 키발급기관(30)의 개인식별정보 와 공개키 파라미터 를 일방향 해쉬함수에 입력하여 키발급기관(30)의 인증정보 를 생성한다. 그리고, 상기 사용자(20)는 509단계에서 상기 생성된 인증정보와 상기 추출된 인증정보 가 동일한지 검사한다. 상기 두 인증정보가 상이하면, 상기 사용자(20)는 519단계로 진행하여 해당처리를 수행한다. 상기 두 인증정보가 동일하면, 상기 사용자(20)는 511단계로 진행하여 정당성이 검증된 공개키 파라미터 로 사용자(10)의 공개키 (≡)를 생성한다. In
그리고, 사용자(20)는 513단계에서 상기 사용자(10)의 공개키 와 상기 키발급기관(30)의 공개키 파라미터로 사용자(10)의 , , 를 다음과 같이 검증한다.In
이후, 상기 사용자(20)는 515단계에서 상기 생성된 공개키 와 상기 사용자(10)의 개인식별정보 를 일방향 해쉬함수에 입력하여 사용자(10)의 인증정보를 생성한다. 그리고 상기 사용자(20)는 517단계에서 사용자(10)로부터 수신한 인증정보와 상기 생성된 인증정보를 비교하여 사용자(10)의 공개키의 정당성을 검증한후 종료한다.In
도 6은 본 발명의 실시 예에 있어서 상기 자체 인증 공개키 및 서명 검증과정에 대한 키발급기관(40)의 수행절차를 도시하고 있다. FIG. 6 is a flowchart illustrating a procedure of executing a
도 6을 참조하면, 먼저 상기 키발급기관(40)은 601단계에서 상기 사용자(20)로부터 상기 키발급기관(30)의 인증정보를 요청하는 신호가 수신되는지 검사한다. 상기 키발급기관(30)의 인증정보를 요청하는 신호 수신시, 상기 키발급기관(40)은 603단계에서 사전에 정당성을 검증하여 보관중인 키발급기관(30)의 공개키 파라미터 와 개인식별정보 로 키발급기관(30)의 인증정보 를 생성한다. Referring to FIG. 6, the
그리고 상기 키발급기관(40)은 605단계에서 키발급기관(40)의 비밀키 로 상기 생성된 인증정보에 대한 서명 를 생성하고, 607단계에서 상기 생성된 서명 를 사용자(20)에게 전송한후 종료한다.And the
상술한 내용에 근거하여 자체 인증 공개키 및 서명 검증과정을 정리하면 하기 <표 3>과 같다.Based on the above description, the self-certification public key and signature verification process are summarized as shown in Table 3 below.
상기 <표 3>에서 보여지는 바와 같이, 먼저 사용자(20)는 상기 키발급기관(30)의 공개키 파라미터 의 정당성을 확인할 수 있는 인증 정보를 자신이 신뢰하는 키발급기관(40)으로 요청한다.As shown in Table 3, the
그러면, 상기 키발급기관(40)은 사전에 정당성을 검증하여 보관중인 상기 키발급기관(30)의 공개키 파라미터 와 개인식별정보로 키발급기관(30)의 인증정보 인증정보 를 생성하고, 자신의 비밀키 로 상기 인증정보에 대한 서명 (≡)를 생성하여 상기 사용자(20)에게 전송한다.Then, the
그러면, 상기 사용자(20)는 자신이 신뢰하는 키발급기관(40)의 공개키 파라미터 와 키발급기관의 공개키로부터 (≡)를 계산한다. 그리고 를 일방향 해쉬 함수에 입력하여 나온 결과값과 이 같은지 비교함으로써 의 정당성을 검증한다.Then, the
이후, 상기 사용자(20)는 정당성이 검증된 공개키 파라미터로 사용자(10)의 공개키 (≡)을 계산한다.Thereafter, the
그리고, 상기 사용자(20)는 상기 공개키 와 키발급기관(30)의 공개키 파라미터 , 로 상기 사용자(10)의 를 다음과 같이 검증한다.Then, the
그리고, 상기 를 와 함께 일방향 해쉬 함수 에 입력하여 나온 결과값과 상기 사용자(10)로부터 수신한 인증정보가 같은지 비교하여 사용자(10)의 공개키의 정당성을 검증한다.And the above To One-way hash function with Result value inputted in and authentication information received from the user (10) Is validated by comparing the public key of the
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정 해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the scope of the following claims, but also by those equivalent to the scope of the claims.
상술한 바와 같이, 본 발명은 공개키 인증서를 검증해야하는 부담이 없고, 자체 인증 공개키를 검증하는 과정에서 요구되는 계산량이 적다. 따라서 인증서로 인한 통신량과 계산량에 대한 부담이 없을 뿐만 계산의 효율성을 제공하기 때문에 계산 능력이 떨어지고 저장 공간이 부족한 사용자 단말기가 사용되는 무선 환경에 활용하기 적합하다. 그리고, 본 발명은 공개키 자체만으로 정당성 검증이 가능한 자체 인증성을 제공하고, 서명 또는 키 분배 등의 어플리케이션에 사용되어 문제가 발생한 경우 어플리케이션에 이상이 있는지 자체 인증 공개키에 이상이 있는지를 확인할 수 있는 검증 가능성도 제공한다. 한편, 사용자는 자신이 신뢰하는 키 발급 기관만을 통해 다른 도메인 사용자의 공개키도 검증할 수 있기 때문에 서로 다른 키 발급 기관을 신뢰하는 사용자간에도 상대방 공개키를 검증할 수 있는 이점이 있다. As described above, the present invention does not have a burden of verifying the public key certificate, and the amount of calculation required in the process of verifying the self-certified public key is small. Therefore, there is no burden on communication and calculation amount due to the certificate, and it provides the efficiency of calculation, so it is suitable for the wireless environment in which a user terminal with low computational power and lack of storage space is used. In addition, the present invention provides a self-authentication that can be justified by the public key itself, and can be used for applications such as signature or key distribution, and can check whether there is an error in the application or the self-certified public key when a problem occurs. It also offers valid verification possibilities. On the other hand, since the user can also verify the public key of another domain user only through the key issuing authority trusted by the user, there is an advantage that the user can verify the other party's public key even between users who trust different key issuing institutions.
또한, 본 발명은 모듈러 합성수 상에서의 이산대수 문제에 기반을 하고 있기 때문에, 제3자가 정당한 사용자의 공개키를 자신 또는 임의의 공개키로 대체하는 공격, 사용자가 기존에 키발급기관으로부터 발급받은 공개키를 자신의 공개키가 아니라고 부인하는 공격, 제3자가 키발급기관의 공개키 파라미터를 임의의 값으로 대체하는 공격에 대해 안전하다. 그리고 공개키 인증서와 인증서 효력정지 및 폐지목 록에 대한 유효성 검증이 필요없고 자체 인증 공개키의 검증과정에서 요구되는 계산량이 상당히 적기 때문에 계산능력과 저장 공간이 부족한 단말기를 사용하는 무선환경에서 사용하기 적합하다. 즉, 본 발명은 유·무선 환경에서 인증서를 사용하지 않고도 높은 안전성을 요구하는 전자 상거래, 인터넷 뱅킹 등에 사용될 수 있을 것으로 기대된다.In addition, since the present invention is based on the problem of discrete algebra on modular synthetic water, an attack in which a third party replaces a legitimate user's public key with himself or an arbitrary public key, and the user has been previously issued from a key issuer. It is safe against attacks that deny a key is not its own public key, or attacks in which a third party replaces a key issuer's public key parameter with an arbitrary value. In addition, since there is no need to validate public key certificates, certificate revocation and revocation lists, and the amount of calculation required in the process of verifying the self-certified public key is very small, it can be used in wireless environments that use terminals with insufficient computing power and storage space. Suitable. That is, the present invention is expected to be used in electronic commerce, Internet banking, and the like that require high security without using a certificate in a wired or wireless environment.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030038247A KR100529594B1 (en) | 2003-06-13 | 2003-06-13 | Method for verifying public key in different certification domain |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030038247A KR100529594B1 (en) | 2003-06-13 | 2003-06-13 | Method for verifying public key in different certification domain |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040107234A KR20040107234A (en) | 2004-12-20 |
KR100529594B1 true KR100529594B1 (en) | 2006-01-09 |
Family
ID=37381498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030038247A KR100529594B1 (en) | 2003-06-13 | 2003-06-13 | Method for verifying public key in different certification domain |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100529594B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170026765A (en) | 2015-08-27 | 2017-03-09 | 고려대학교 산학협력단 | Method of secure public auditing using self-certified signature in cloud storage and system of the same |
US20210203481A1 (en) * | 2018-05-14 | 2021-07-01 | nChain Holdings Limited | Systems and methods for storage, generation and verification of tokens used to control access to a resource |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101657932B1 (en) | 2015-01-30 | 2016-09-22 | 중부대학교 산학협력단 | Key management and user authentication method using self-extended certification |
-
2003
- 2003-06-13 KR KR1020030038247A patent/KR100529594B1/en not_active IP Right Cessation
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170026765A (en) | 2015-08-27 | 2017-03-09 | 고려대학교 산학협력단 | Method of secure public auditing using self-certified signature in cloud storage and system of the same |
KR101740956B1 (en) | 2015-08-27 | 2017-05-30 | 고려대학교 산학협력단 | Method of secure public auditing using self-certified signature in cloud storage and system of the same |
US20210203481A1 (en) * | 2018-05-14 | 2021-07-01 | nChain Holdings Limited | Systems and methods for storage, generation and verification of tokens used to control access to a resource |
US11764947B2 (en) * | 2018-05-14 | 2023-09-19 | Nchain Licensing Ag | Systems and methods for storage, generation and verification of tokens used to control access to a resource |
US11838407B2 (en) | 2018-05-14 | 2023-12-05 | Nchain Licensing Ag | Computer-implemented systems and methods for using a blockchain to perform an atomic swap |
US11917051B2 (en) | 2018-05-14 | 2024-02-27 | Nchain Licensing Ag | Systems and methods for storage, generation and verification of tokens used to control access to a resource |
Also Published As
Publication number | Publication date |
---|---|
KR20040107234A (en) | 2004-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108270571B (en) | Internet of Things identity authorization system and its method based on block chain | |
KR101298562B1 (en) | System and method for implementing digital signature using one time private keys | |
US8589693B2 (en) | Method for two step digital signature | |
JP5330591B2 (en) | Identification method and shared key generation method | |
KR20090020778A (en) | Method for providing anonymous public key infrastructure and method for providing service using the same | |
MX2012011105A (en) | Certificate authority. | |
WO2014069985A1 (en) | System and method for identity-based entity authentication for client-server communications | |
US20220116230A1 (en) | Method for securely providing a personalized electronic identity on a terminal | |
KR101679771B1 (en) | Method, device, and system for identity authentication | |
Odelu et al. | A secure and efficient ECC‐based user anonymity preserving single sign‐on scheme for distributed computer networks | |
US20190007218A1 (en) | Second dynamic authentication of an electronic signature using a secure hardware module | |
CN111817857A (en) | Electronic document signing method based on electronic notarization and SM2 collaborative signature and server adopted by same | |
CN101867587B (en) | A kind of method and system of anonymous authentication | |
KR101635598B1 (en) | Method, device, and system for authentication | |
Hajny et al. | Attribute‐based credentials with cryptographic collusion prevention | |
CN110460609B (en) | Bidirectional authentication method and system for terminal application and security authentication platform | |
KR101371054B1 (en) | Method for digital signature and authenticating the same based on asymmetric-key generated by one-time_password and signature password | |
KR100529594B1 (en) | Method for verifying public key in different certification domain | |
Lee et al. | Comment on" A remote user authentication scheme using smart cards with forward secrecy | |
KR101238846B1 (en) | System and method for verifying certificate | |
Chatterjee et al. | A novel multi-server authentication scheme for e-commerce applications using smart card | |
JP2004242195A (en) | Attested processing method, attested instrument, attested transaction program, electronic certificate management server, and electronic certificate management system | |
KR100761245B1 (en) | Method for producing of one time password response value using random number | |
Malina et al. | Efficient and secure access control system based on programmable smart cards | |
Kim | Impersonation Attack on the ID-based Password Authentication Scheme using Smart Cards and Fingerprints |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20110503 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |