KR101870042B1 - Efficient public key extraction method from implicit certificates - Google Patents

Efficient public key extraction method from implicit certificates Download PDF

Info

Publication number
KR101870042B1
KR101870042B1 KR1020160149659A KR20160149659A KR101870042B1 KR 101870042 B1 KR101870042 B1 KR 101870042B1 KR 1020160149659 A KR1020160149659 A KR 1020160149659A KR 20160149659 A KR20160149659 A KR 20160149659A KR 101870042 B1 KR101870042 B1 KR 101870042B1
Authority
KR
South Korea
Prior art keywords
public key
certificate
signature
certification authority
extracting
Prior art date
Application number
KR1020160149659A
Other languages
Korean (ko)
Other versions
KR20180052399A (en
Inventor
이문규
권희용
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR1020160149659A priority Critical patent/KR101870042B1/en
Publication of KR20180052399A publication Critical patent/KR20180052399A/en
Application granted granted Critical
Publication of KR101870042B1 publication Critical patent/KR101870042B1/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/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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

내재적 인증서에서 효율적인 공개키를 추출하는 방법 및 시스템이 개시된다. 일 실시예에 따른 공개키 추출 방법은, 발신자로부터 전송되는 전자 서명이 부가된 메시지에 기반하여 전자 인증서를 수신하는 단계; 상기 전자 서명과 관련된 동일한 인증 기관들을 공유하는 경우, 이전의 공개키 추출 과정에서 계산한 결과를 재사용하여 상기 발신자의 공개키를 추출하는 단계; 및 상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계를 포함할 수 있다. A method and system for extracting an efficient public key from an implicit certificate are disclosed. A public key extraction method according to an exemplary embodiment of the present invention includes receiving an electronic certificate based on a message to which an electronic signature transmitted from a sender is added; Extracting a public key of the sender by reusing a result calculated in a previous public key extraction process when sharing the same certification authorities related to the digital signature; And performing signature verification on the digital signature using the extracted public key.

Description

내재적 인증서에서 효율적인 공개키 추출 방법{EFFICIENT PUBLIC KEY EXTRACTION METHOD FROM IMPLICIT CERTIFICATES}[0001] EFFICIENT PUBLIC KEY EXTRACTION METHOD FROM IMPLICIT CERTIFICATES [0002]

아래의 설명은 공개키 추출 기술에 관한 것으로, 내재적 인증서에서 공개키를 추출하는 방법 및 시스템에 관한 것이다.
The following description relates to a public key extraction technique and relates to a method and system for extracting a public key from an implicit certificate.

네트워크 통신상에서 메시지는 악의적인 공격자에 의해 위조 또는 변조될 수 있기 때문에, 통신 프로토콜들에서 메시지의 무결성(Integrity)과 인증성(Authenticity)은 반드시 보장되어야 한다. 이를 해결하기 위해 메시지 발신자는 메시지와 전자 서명을 함께 전송하고, 수신자는 전자 서명이 유효한 것인지 검증할 수 있어야만 한다. Because messages can be falsified or tampered by malicious attackers over network communications, the integrity and authenticity of messages must be assured in communication protocols. To solve this problem, the sender of the message sends the message and the digital signature together, and the receiver must be able to verify that the digital signature is valid.

도 1은 공개키 추출 과정을 설명하기 위한 도면이다. 이러한 전자 서명은 공개키 암호 방식에 기반하는데, 공개키 암호방식은 매우 풀기 어려운 수학적 문제를 바탕으로 생성되며, 특정한 종류의 비밀 정보(비밀키)와 비밀 정보로부터 유도되는 공개 정보(공개키)의 키 쌍을 사용한다. 각각의 클라이언트들(발신자 및 수신자)(110, 120)은 각각 자신이 신뢰하는 인증기관의 인증서를 가지고 있을 수 있다. 이때, 클라이언트들(110, 120)은 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 클라이언트들(110, 120)의 예를 들면, 스마트폰(smart phone), 휴대폰, 내비게이션, 컴퓨터, 노트북, 디지털 방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등이 해당될 수 있다. 또한, 전자 서명이 부가된 메시지를 전송하는 서버일 수도 있다. 1 is a diagram for explaining a public key extraction process. Such a digital signature is based on a public key cryptosystem. The public key cryptosystem is generated based on a mathematical problem that is very difficult to solve. It is generated from a secret key of a certain type (public key) and public information Use the key pair. Each of the clients (sender and receiver) 110, 120 may each have a certificate of a trusted authority. At this time, the clients 110 and 120 may be a fixed terminal implemented as a computer device or a mobile terminal. Examples of the clients 110 and 120 include a smart phone, a mobile phone, a navigation device, a computer, a notebook, a digital broadcast terminal, a PDA (Personal Digital Assistants), a PMP (Portable Multimedia Player) . It may also be a server for transmitting a message with an electronic signature added thereto.

발신자(110)는 발신자의 비밀키를 사용하여 메시지에 대한 전자 서명을 생성한 후, 전자 서명이 부가된 메시지를 수신자(120)에게 전송할 수 있다. 수신자(120)는 발신자(110)로부터 전자 서명이 부가된 메시지를 수신하게 된다. 수신자(120)는 발신자의 공개키를 사용하여 상기 메시지의 전자 서명을 확인할 수 있다. 일반적으로 발신자(110)의 공개키는 공개키의 유효성을 증명하기 위한 전자 인증서와 함께 제공된다. 인증 기관(CA)(100)은 전자 인증서를 발급하는 신뢰할 수 있는 기관을 의미한다. 전자 인증서는 유효성 증명 대상인 발신자의 공개키 정보 및 관련 부가 정보를 메시지로 하고, 상기 메시지에 대해 인증 기관(100)이 전자 서명을 추가한 형태로 구성될 수 있다. The originator 110 may generate a digital signature for the message using the secret key of the sender, and then send the digital signature added message to the recipient 120. The recipient 120 receives the message with the digital signature added thereto from the sender 110. [ The recipient 120 can verify the electronic signature of the message using the sender's public key. Generally, the public key of the sender 110 is provided with an electronic certificate for verifying the validity of the public key. The certification authority (CA) 100 means a trusted authority issuing an electronic certificate. The electronic certificate may be configured in such a manner that the public key information and the related additional information of the sender as the validity proof message are used as a message and the digital signature is added to the message by the certification authority 100.

이에 따라 발신자에게 전자 인증서를 발급한 인증 기관(100)의 신뢰성이 확인되지 않을 경우, 다시 말해서, 수신자(120)가 인증 기관(100)의 공개키를 모를 경우, 인증 기관(100)의 전자 서명을 확인하기 어렵기 때문에 더 상위의 인증 기관(CA')이 인증 기관(CA)의 공개키에 대한 전자 인증서를 발급해주는 식으로 연쇄적인 신뢰 체인의 구성이 필요하다. 이러한 체인의 중간 또는 끝에는 수신자가 공개키를 가지고 있는 인증 기관의 전자 서명이 있을 수 있으며, 이로부터 역방향으로 유효성 증명이 이루어져 결국 발신자의 공개키를 확인할 수 있게 된다. 예를 들면, 도 2를 참고하면, 발신자에게 전자 인증서를 발급한 CA1은 더 상위 인증 기관인 CA2로부터 인증서를 발급받고, CA2는 CA3으로부터 인증서를 발급받고, 이 방식이 루트 인증 기관까지 연결된다. 실제로, 전자 인증서는 여러 개의 인증서가 연결되어 있는 체인의 형태로 존재한다. If the recipient 120 does not know the public key of the certification authority 100, the electronic signature of the certification authority 100 is transmitted to the certificate authority 100, It is necessary to construct a chain of trust chains in such a way that a higher certification authority (CA ') issues an electronic certificate for the public key of the certification authority (CA). At the middle or end of such a chain, the recipient may have a digital signature of the certificate authority that has the public key, from which the validity is verified in the reverse direction, so that the public key of the sender can be confirmed. For example, Referring to FIG. 2, CA 1 issued to the sender of the electronic certificates are issued a certificate from a more top certification organization CA 2, CA 2 has been issued a certificate from the CA 3, the way to the root certification authority . In practice, an electronic certificate exists in the form of a chain of multiple certificates connected.

한편, 특수한 네트워크 통신 환경에서는 통신 대역폭이 극도로 제한되는 경우가 있는데, 이를 위해 해당 프로토콜들에서는 발신자의 공개키와 인증 기관의 서명을 포함하는 기존의 명시적 인증서를 대신하여 내재적 인증서를 사용할 수 있다. 이 경우 인증서는 공개키와 서명, 즉 두 가지 정보의 조합이 아니라, 인증서 자체 정보로 존재하며, 수신자는 이로부터 발신자의 공개키를 추출하여 사용하게 된다. 이렇게 함으로써 대역폭 사용을 절약할 수 있다. 일례로 IEEE 1609.2 자동차 통신 표준인 Wireless Access in Vehicular Environments(WAVE) 에서는 전자 서명 알고리즘으로 Elliptic Curve Digital Signature Algorithm(ECDSA), 인증서의 한 종류로 Elliptic Curve Qu-Vanstone (ECQV) 내재적 인증서를 사용한다.
On the other hand, in a special network communication environment, the communication bandwidth may be extremely limited. In order to do so, corresponding protocols may use an implicit certificate in place of the existing explicit certificate including the public key of the sender and the signature of the certification authority . In this case, the certificate is not a combination of the public key and the signature, that is, the two pieces of information, but exists as the certificate itself, and the recipient extracts the public key of the sender from the certificate. This saves bandwidth usage. For example, the IEEE 1609.2 automotive communications standard, Wireless Access in Vehicular Environments (WAVE), uses the Elliptic Curve Digital Signature Algorithm (ECDSA) as an electronic signature algorithm and the Elliptic Curve Qu-Vanstone (ECQV)

본 발명은 인증서 내의 재구성 정보를 이용하여 발신자의 공개키를 추출하고, 서명 검증을 수행하는 과정에서 효율적으로 공개키를 추출하는 방법을 제공할 수 있다.
The present invention can provide a method of extracting a public key of a sender by using reconstruction information in a certificate and efficiently extracting a public key in a process of performing signature verification.

공개키 추출 방법은, 발신자로부터 전송되는 전자 서명이 부가된 메시지에 기반하여 전자 인증서를 수신하는 단계; 상기 전자 서명과 관련된 동일한 인증 기관들을 공유하는 경우, 이전의 공개키 추출 과정에서 계산한 결과를 재사용하여 상기 발신자의 공개키를 추출하는 단계; 및 상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계를 포함할 수 있다. A public key extraction method includes: receiving an electronic certificate based on a message to which an electronic signature transmitted from a sender is added; Extracting a public key of the sender by reusing a result calculated in a previous public key extraction process when sharing the same certification authorities related to the digital signature; And performing signature verification on the digital signature using the extracted public key.

상기 발신자의 공개키를 추출하는 단계는, 상기 전자 인증서로서 내재적 인증서를 사용함에 따라 상기 내재적 인증서의 해시값 및 상기 내재적 인증서에 인코딩되어 있는 공개키 재구성 정보를 추출하고, 상기 해시값 및 상기 재구성 정보와 내재적 인증서를 발급한 인증 기관의 공개키를 사용하여 상기 발신자의 공개키를 추출하는 단계를 포함할 수 있다. The extracting of the public key of the sender may include extracting a hash value of the implicit certificate and public key reconstruction information encoded in the implicit certificate according to the use of the implicit certificate as the electronic certificate and extracting the hash value and the reconstruction information And extracting the public key of the sender using the public key of the certification authority that issued the implicit certificate.

상기 발신자의 공개키를 추출하는 단계는, 상기 인증 기관의 공개키를 식별하지 못하는 경우, 상기 인증 기관보다 상위의 인증 기관으로부터 발급된 상기 인증 기관에 대한 내재적 인증서로부터 상기 인증 기관의 공개키를 추출하는 단계를 포함할 수 있다. The step of extracting the public key of the sender may include extracting a public key of the certification authority from an implicit certificate for the certification authority issued by an authentication authority higher than the certification authority in the case of failing to identify the public key of the certification authority .

상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계는, ECDSA 또는 변형된 ECDSA을 포함하는 일괄 서명 검증 방법이 적용될 수 있다. In performing the signature verification on the digital signature using the extracted public key, a batch signature verification method including the ECDSA or the modified ECDSA may be applied.

상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계는, 상기 전자 서명을 생성함에 따라 획득된 임시점의

Figure 112016110065969-pat00001
-좌표, 상기 전자 서명이 부가될 메시지의 해시값 및 상기 발신자의 개인키를 이용하여 생성된 제1 서명쌍을 사용하여 상기 임시점을 재구성함에 따라 획득된 재구성점의
Figure 112016110065969-pat00002
-좌표를 비교하거나, 상기 제1 서명쌍 대신 상기 임시점이 포함된 제2 서명쌍을 사용하여 상기 재구성점과 상기 임시점을 비교하는 단계를 포함할 수 있다. Wherein the step of performing the signature verification on the digital signature using the extracted public key comprises the steps of:
Figure 112016110065969-pat00001
- a hash value of the message to which the digital signature is to be added and a first signature pair generated using the sender's private key,
Figure 112016110065969-pat00002
- comparing the coordinates or comparing the temporary point with the reconstruction point using a second signature pair including the temporary point instead of the first signature pair.

공개키 추출 시스템은, 발신자로부터 전송되는 전자 서명이 부가된 메시지에 기반하여 전자 인증서를 수신하는 수신부; 상기 전자 서명과 관련된 동일한 인증 기관들을 공유하는 경우, 이전의 공개키 추출 과정에서 계산한 결과를 재사용하여 상기 발신자의 공개키를 추출하는 추출부; 및 상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 수행부를 포함할 수 있다.
A public key extraction system includes: a receiver for receiving an electronic certificate based on a message to which an electronic signature transmitted from a sender is added; An extraction unit for extracting the public key of the sender by reusing the result calculated in the previous public key extraction process when sharing the same certification authorities related to the digital signature; And an execution unit for performing signature verification on the digital signature using the extracted public key.

본 발명은 복수의 발신자로부터 전달받은 서명을 검증할 때, 각각의 발신자의 내재적 인증서로부터 공개키를 추출하는 과정에서 반복되는 연산을 재활용함으로써 전체적인 연산량을 줄일 수 있다.The present invention can reduce the overall amount of computation by reusing repeated operations in extracting a public key from an implicit certificate of each sender when verifying a signature received from a plurality of senders.

본 발명은 동일한 인증 기관으로부터 전달받은 내재적 인증서 연산을 공유하여 공개키를 추출함에 따라 연산량을 감소시킴으로써 공개키 추출 과정에 소요되는 시간을 단축시킬 수 있다.
The present invention can reduce the time required for the public key extraction process by reducing the amount of computation by extracting the public key by sharing the inherent certificate operation received from the same certification authority.

도 1은 공개키 추출 과정을 설명하기 위한 도면이다.
도 2는 인증 기관의 연쇄적인 신뢰 체인의 구성을 설명하기 위한 도면이다.
도 3은 일 실시예에 있어서, 인증서 트리를 통하여 내재적 인증서에서 공개키를 추출하는 방법을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 공개키 추출 시스템의 구성을 설명하기 위한 블록도이다.
도 5는 일 실시예에 따른 공개키 추출 시스템에서 서명 검증의 전체 과정을 설명하기 위한 흐름도이다.
1 is a diagram for explaining a public key extraction process.
Fig. 2 is a diagram for explaining a configuration of a chain of trust chains of a certification authority.
3 is a diagram for explaining a method of extracting a public key from an implicit certificate through a certificate tree, according to an embodiment of the present invention.
4 is a block diagram illustrating a configuration of a public key extraction system according to an embodiment.
FIG. 5 is a flowchart illustrating an entire process of signature verification in a public key extraction system according to an embodiment.

이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

아래의 실시예에서는 내재적 인증서에서 효율적인 공개키를 추출하기 위한 과정을 설명하기로 한다. 전자 서명의 검증을 수행하기 위하여, 전자 서명 발신자의 공개키를 우선적으로 알아야 한다. 종래의 명시적 인증서를 사용하는 프로토콜에서는 인증서에 포함되어 있는 발신자의 공개키를 사용한 반면, 실시예에서는 내재적 인증서를 사용하는 프로토콜에 기반하여 인증서의 해시값, 인증서 내의 재구성 정보, 그리고 인증서를 발급한 인증 기관의 공개키를 이용하여 발신자의 공개키를 추출하여 사용할 수 있다. In the following embodiment, a procedure for extracting an efficient public key from an implicit certificate will be described. In order to carry out the verification of the digital signature, the public key of the sender of the electronic signature must first be known. In the protocol using the conventional explicit certificate, the public key of the sender included in the certificate is used, whereas in the embodiment, the hash value of the certificate, the reconstruction information in the certificate, and the certificate are issued based on the protocol using the implicit certificate The public key of the sender can be extracted and used by using the public key of the certification authority.

예를 들면, Certicom의 ECQV 내재적 인증서를 이용할 경우, 내재적 인증서로부터 전자 서명 발신자의 공개키를 추출할 수 있다. 발신자(

Figure 112016110065969-pat00003
)의 내재적 인증서로부터 인증서의 해시값(
Figure 112016110065969-pat00004
) 및 인증서에 인코딩되어 있는 공개키 재구성 정보(
Figure 112016110065969-pat00005
)를 추출하고, 인증 기관(CA)의 공개키(
Figure 112016110065969-pat00006
)를 사용하여 발신자의 공개키를 아래와 같은 식에 기초하여 추출할 수 있다.For example, using Certicom's ECQV implicit certificate, the public key of the digital signature originator can be extracted from the implicit certificate. Caller(
Figure 112016110065969-pat00003
) From the implicit certificate of the certificate (
Figure 112016110065969-pat00004
) And public key reconstruction information encoded in the certificate (
Figure 112016110065969-pat00005
), Extracts the public key of the certification authority (CA)
Figure 112016110065969-pat00006
) Can be used to extract the public key of the sender based on the following equation.

수학식 1: Equation (1)

Figure 112016110065969-pat00007
Figure 112016110065969-pat00007

이때, 인증 기관의 공개키(

Figure 112016110065969-pat00008
)를 알고 있지 않을 경우, 상기 인증 기관보다 상위의 인증 기관이 발급한 인증 기관의 내재적 인증서로부터 인증 기관의 공개키를 추출하는 과정이 추가로 필요하며, 이를 재귀적으로 적용할 수 있다. At this time, the public key of the certification authority
Figure 112016110065969-pat00008
), The process of extracting the public key of the certification authority from the internal certificate of the certification authority issued by the certification authority higher than the certification authority is further needed, and it can be recursively applied.

예를 들면, 발신자의 내재적 인증서에 연결된 인증 기관의 내재적 인증서가 L-1개 이고, 수신자가 마지막으로 최상위 인증 기관(CAL)의 공개키(

Figure 112016110065969-pat00009
)를 알고 있다면, 발신자의 공개키는 아래와 같은 식으로 추출할 수 있다.For example, if the implicit certificate of the certificate authority associated with the sender's implicit certificate is L -1 and the recipient is the last public key of the top-level certificate authority (CA L )
Figure 112016110065969-pat00009
), The sender's public key can be extracted as follows.

수학식 2:Equation 2:

Figure 112016110065969-pat00010
Figure 112016110065969-pat00010

이때, 타원곡선 상의 다수의 점의 상수배를 효율적으로 획득할 수 있는 Straus 알고리즘을 공개키를 추출하는데 적용할 수 있다. 윈도우의 크기를

Figure 112016110065969-pat00011
라고 할 때, 발신자 1(U 1)의 공개키 추출 과정에서 명시적 인증서에 포함된 공개키인 최상위 인증 기관(CA L )의 공개키(
Figure 112016110065969-pat00012
)를 제외하면, 아래와 같이 부분 결과를 점차적으로 누적하는 형식으로 계산될 수 있다. At this time, the Straus algorithm, which can efficiently obtain a constant multiple of the points on the elliptic curve, can be applied to extract the public key. The size of the window
Figure 112016110065969-pat00011
, The public key of the top-level certification authority (CA L ), which is a public key included in the explicit certificate in the public key extraction process of the sender 1 ( U 1 )
Figure 112016110065969-pat00012
), It can be calculated in the form of gradually accumulating partial results as follows.

Figure 112016110065969-pat00013
Figure 112016110065969-pat00013

이러한 계산 과정은 중간 결과를

Figure 112016110065969-pat00014
비트씩 이동하여
Figure 112016110065969-pat00015
회 반복될 수 있다. This calculation process can be used to
Figure 112016110065969-pat00014
Bit by bit
Figure 112016110065969-pat00015
Times.

또한, 복수의 발신자로부터 전자 서명을 입력받은 경우, 공개키 추출 과정을 복수 번 수행해야 한다. 이때, 동일한 중간 인증 기관들을 공유하는 경우, 내재적 인증서로부터 인증서의 해시값(

Figure 112016110065969-pat00016
) 및 인증서에 인코딩되어 있는 공개키 재구성 정보(P)가 동일하기 때문에 이전의 공개키 추출 과정에서 계산한 결과를 재사용할 수 있다. In addition, when a digital signature is input from a plurality of senders, the public key extraction process must be performed a plurality of times. At this time, if the same intermediate certification authorities are shared, the hash value of the certificate
Figure 112016110065969-pat00016
) And the public key reconstruction information ( P ) encoded in the certificate are the same, the result calculated in the previous public key extraction process can be reused.

예를 들면, 두 명의 발신자 U 1, U 2가 있다고 가정하자. 발신자 U 1, U 2가 앞서 설명한 바와 같이, 자신의 인증서에 연결된 L개의 인증 기관의 인증서를 공유할 때, U 1의 공개키 추출식은 수학식 3, U 2의 공개키 추출식은 수학식 4와 같이 나타낼 수 있다.For example, suppose there are two callers U 1 , U 2 . Caller U 1, as is U 2 above, when sharing the certificate of the L number of the certificate authority connected to the own certificate, the public key extracted expression of U 1 Equation (3), the public key extracted expression of U 2 (4) and As shown in Fig.

수학식 3:Equation (3)

Figure 112016110065969-pat00017
Figure 112016110065969-pat00017

수학식 4:Equation 4:

Figure 112016110065969-pat00018
Figure 112016110065969-pat00018

이때, U 1, U 2의 공개키를 추출하는데 있어서,

Figure 112016110065969-pat00019
의 계산이 중첩되게 된다. 이에 따라 공개키 계산을 처음 1회 수행한 후, 이후의 계산에서는 계산 결과를 재사용할 수 있다. 더욱 상세하게는, U 1의 공개키를 추출하는 과정에서, At this time, in extracting the public keys of U 1 and U 2 ,
Figure 112016110065969-pat00019
Are superimposed on each other. Thus, after performing the first public key computation once, the computation results can be reused in subsequent computations. More specifically, in the process of extracting the public key of U 1 ,

Figure 112016110065969-pat00020
Figure 112016110065969-pat00020

의 순서로 부분합을 누적하는 과정은 마지막 항인

Figure 112016110065969-pat00021
을 제외하면, U 2의 공개키를 추출하는 과정에서도 공통으로 계산해야 하는 부분이므로, 중간 결과를 저장할 수 있다. 이후, 저장된 중간 결과는 U 2의 공개키를 추출하는데 사용될 수 있다. The process of accumulating the subtotals in the order of
Figure 112016110065969-pat00021
, The intermediate result can be stored because it is a part to be commonly calculated in the process of extracting the public key of U 2 . The stored intermediate result can then be used to extract the public key of U 2 .

상기와 같은 방법을 사용할 경우,

Figure 112016110065969-pat00022
개의 내재적 인증서를 공유한다고 할 때, U2공개키 추출에서 한 단계 계산 비용은
Figure 112016110065969-pat00023
(점의 두배 연산
Figure 112016110065969-pat00024
회, 점의 덧셈 연산 L회)에서
Figure 112016110065969-pat00025
(점의 두 배 연산
Figure 112016110065969-pat00026
회, 점의 덧셈 연산
Figure 112016110065969-pat00027
회)로 줄어들게 된다. When the above method is used,
Figure 112016110065969-pat00022
If we share two intrinsic certificates, the cost of one step computation in U 2 public key extraction is
Figure 112016110065969-pat00023
(Double operation of the point
Figure 112016110065969-pat00024
L, addition operation of point, point)
Figure 112016110065969-pat00025
(Double operation of the point
Figure 112016110065969-pat00026
Addition of point and point
Figure 112016110065969-pat00027
).

발신자의 내재적 인증서에 L-1개의 중간 인증 기관의 내재적 인증서가 연결되어 있고, 최상위 인증 기관의 인증서(

Figure 112016110065969-pat00028
) 및 연결된 공개키를 수신자가 이미 알고 있을 때, 발신자의 인증서를
Figure 112016110065969-pat00029
, 연결된 중간 인증 기관의 인증서를
Figure 112016110065969-pat00030
이라고 표시하면, 본 발명의 실시예에 따른 내재적 인증서에서 공개키를 추출하는 방법은 도 3을 참고하면, 인증서 트리를 이용하여 설명할 수 있다. 이때, 모든 발신자(U i)에 대해
Figure 112016110065969-pat00031
Figure 112016110065969-pat00032
의 비트 수는 같으며,
Figure 112016110065969-pat00033
의 배수라고 가정하자. The implicit certificate of the sender is linked to the L- 1 intermediate CA's implicit certificate, and the certificate of the top-level CA
Figure 112016110065969-pat00028
) And the associated public key is already known by the recipient, the certificate of the sender
Figure 112016110065969-pat00029
, The certificate of the connected intermediate certification authority
Figure 112016110065969-pat00030
A method of extracting a public key from an inherent certificate according to an embodiment of the present invention will be described using a certificate tree with reference to FIG. At this time, for all senders ( U i )
Figure 112016110065969-pat00031
And
Figure 112016110065969-pat00032
Lt; RTI ID = 0.0 >
Figure 112016110065969-pat00033
.

각각의 발신자 U i에 대하여, 중간 결과 For each sender U i , the intermediate result

Figure 112016110065969-pat00034
Figure 112016110065969-pat00035
Figure 112016110065969-pat00034
Figure 112016110065969-pat00035

가 이미 계산되어 있다면, (다시 말해서,

Figure 112016110065969-pat00036
노드가 존재)Is already calculated, (that is,
Figure 112016110065969-pat00036
Node exists)

Figure 112016110065969-pat00037
를 새로운 중간 결과로서 계산하고,
Figure 112016110065969-pat00038
노드에 계산된 중간 결과인
Figure 112016110065969-pat00039
을 저장할 수 있다.
Figure 112016110065969-pat00037
As a new intermediate result,
Figure 112016110065969-pat00038
Intermediate result computed at node
Figure 112016110065969-pat00039
Lt; / RTI >

마찬가지로,

Figure 112016110065969-pat00040
를 새로운 중간 결과로서 계산하고,
Figure 112016110065969-pat00041
노드에 계산된 중간 결과인
Figure 112016110065969-pat00042
를 저장할 수 있다. Likewise,
Figure 112016110065969-pat00040
As a new intermediate result,
Figure 112016110065969-pat00041
Intermediate result computed at node
Figure 112016110065969-pat00042
Can be stored.

이와 같은 계산 방법으로,

Figure 112016110065969-pat00043
부터 X 1까지 계산할 수 있다. With this calculation method,
Figure 112016110065969-pat00043
To X 1 .

Figure 112016110065969-pat00044
를 새로운 중간 결과로 계산하고, CA1 노드에 계산된 중간 결과인 X1을 저장할 수 있다.
Figure 112016110065969-pat00044
As a new intermediate result, and store the intermediate result X 1 calculated at the CA 1 node.

마지막으로, U i에 대한 최종 결과인

Figure 112016110065969-pat00045
를 계산할 수 있다.
Figure 112016110065969-pat00046
는 계산에 발신자의 내재적 인증서 정보를 포함하기 때문에 다른 발신자들과는 공유하지 않는다. 따라서
Figure 112016110065969-pat00047
는 저장하지 않는다.Finally, the final result for U i
Figure 112016110065969-pat00045
Can be calculated.
Figure 112016110065969-pat00046
Does not share with other senders because it includes the sender's implicit certificate information in the calculation. therefore
Figure 112016110065969-pat00047
Is not stored.

그리고 나서, 중간 결과점들에 대하여

Figure 112016110065969-pat00048
배 연산과
Figure 112016110065969-pat00049
Figure 112016110065969-pat00050
각각의 다음
Figure 112016110065969-pat00051
비트들에 대하여 앞서 설명한 계산 과정(중간 결과 계산 과정)을 반복하는 Left-to-Right Straus 알고리즘으로
Figure 112016110065969-pat00052
를 계산할 수 있다. 그 후, 이미 알고 있는 인증 기관의 공개키(
Figure 112016110065969-pat00053
)를 가산함으로써 U i의 공개키
Figure 112016110065969-pat00054
를 계산할 수 있다. Then, for intermediate result points
Figure 112016110065969-pat00048
Multiplication operation and
Figure 112016110065969-pat00049
And
Figure 112016110065969-pat00050
Each of the following
Figure 112016110065969-pat00051
Left-to-Right Straus algorithm that repeats the above-described calculation process (intermediate result calculation process) on bits
Figure 112016110065969-pat00052
Can be calculated. Then, the public key of the known certification authority (
Figure 112016110065969-pat00053
) To add U i 's public key
Figure 112016110065969-pat00054
Can be calculated.

전자 서명 검증을 수행함에 있어서, 발신자로부터 입력받은 복수의 서명들을 검증하는 시간을 단축하기 위해 일반적으로 일괄 서명 검증 방법이 적용된다. 일괄 서명 검증을 위해서는 변형된 ECDSA가 일반적으로 사용될 수 있다. 기본 ECDSA는 서명 생성 과정에서 생성되는 임시점(R)의

Figure 112016110065969-pat00055
-좌표인 r및 메시지의 해시값인 H(m)에 서명자의 개인키를 사용하여 생성하는 서명쌍 (r, s)를 사용할 수 있고, 서명 검증 과정에서는 임시점(R)을 재구성함에 따라 재구성점(R')를 획득하고, 재구성점(R')의
Figure 112016110065969-pat00056
-좌표와 r을 비교하여 서명의 유효성을 검증할 수 있다. In performing digital signature verification, in general, a batch signature verification method is applied to shorten the time for verifying a plurality of signatures inputted from a sender. For bulk signature verification, a modified ECDSA can generally be used. The default ECDSA is the signature of the temporary point (R)
Figure 112016110065969-pat00055
- The signature pair (r, s), which is generated using the signer r and the signer's private key in the hash value H (m) of the message, can be used. In the signature verification process, Obtain the point R ' , and obtain the point R' of the reconstruction point R '
Figure 112016110065969-pat00056
- The validity of the signature can be verified by comparing the coordinates with r.

변형된 ECDSA에서는 서명쌍 (r, s)대신, (R, s)의 서명쌍을 사용하여 재구성점(R')과 임시점(R)을 직접 비교할 수 있다. 더욱 상세하게는, 발신자로부터 수신한 메시지의 해시값H(m), 타원 곡선의 기본 점을 G, 메시지에 대한 전자 서명을 (R, s), 임시점(R)의 -좌표를 r, 발신자의 공개키를

Figure 112016110065969-pat00057
라고 할 때, 메시지의 전자 서명은 임시점(R)과
Figure 112016110065969-pat00058
를 비교함으로써 검증될 수 있다. 일괄 서명 검증에서는 복수의 전자 서명에 대하여
Figure 112016110065969-pat00059
(
Figure 112016110065969-pat00060
는 난수(randomizer))와
Figure 112016110065969-pat00061
, 다시 말해서, In a modified ECDSA signature pair (r, s) Instead, (R, s) signature pair reconstruction point (R ') and that the temporary use of a (R) can be compared directly. More specifically, the hash value H (m) of the message received from the sender, the base point of the elliptic curve is G, the electronic signature of the message is (R, s), the coordinates of the temporary point R are r, The public key of
Figure 112016110065969-pat00057
, The digital signature of the message is the temporary point R
Figure 112016110065969-pat00058
Lt; / RTI > In the collective signature verification,
Figure 112016110065969-pat00059
(
Figure 112016110065969-pat00060
Is a randomizer) and
Figure 112016110065969-pat00061
, In other words,

Figure 112016110065969-pat00062
를 비교함으로써 보다 빠른 서명 검증이 가능하게 된다.
Figure 112016110065969-pat00062
To enable faster signature verification.

일 실시예에 따르면, 공개키 추출 시스템은 정상적인 발신자의 공개키를 획득하는 것이 가능하게 된다. 기존의 공개키 추출 과정과 동일한 내재적 인증서의 중간 계산 결과를 재사용하기 때문에 기존에 추출해야 하는 발신자의 공개키와 동일한 값을 획득할 수 있다.According to one embodiment, the public key extraction system is enabled to obtain the public key of the normal caller. Since the intermediate calculation result of the same implicit certificate is reused as in the existing public key extraction process, the same value as the public key of the sender to be extracted can be obtained.

일 실시예에 따르면, 공개키 추출 시스템은 기존의 내재적 인증서를 사용하는 프로토콜에서의 기본 전자 서명 검증과 일괄 서명 검증 방법을 적용한 전자 서명 검증 방법에 모두 적용함으로써 전자 서명 검증 시간을 단축시킬 수 있다. According to the embodiment, the public key extraction system can reduce the digital signature verification time by applying both the basic digital signature verification in the protocol using the existing inherent certificate and the digital signature verification method applying the collective signature verification method.

도 4는 일 실시예에 따른 공개키 추출 시스템의 구성을 설명하기 위한 블록도이고, 도 5는 일 실시예에 따른 공개키 추출 시스템에서 서명 검증의 전체 과정을 설명하기 위한 흐름도이다.FIG. 4 is a block diagram illustrating a configuration of a public key extraction system according to an embodiment. FIG. 5 is a flowchart illustrating an entire process of signature verification in a public key extraction system according to an exemplary embodiment.

공개키 추출 시스템(400)은 수신부(410), 추출부(420) 및 수행부(430)를 포함할 수 있다. 이러한 공개키 추출 시스템(400) 및 공개키 추출 시스템(400)의 구성요소들은 도 5의 서명 검증의 전체 과정이 포함하는 단계들(510 내지 530)을 수행하도록 공개키 추출 시스템을 제어할 수 있다. 이때, 공개키 추출 시스템(400) 및 공개키 추출 시스템(400)의 구성요소들은 메모리가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 공개키 추출 시스템(400)의 구성요소들은 공개키 추출 시스템(400)에 저장된 프로그램 코드가 제공하는 제어 명령에 따라 공개키 추출 시스템(400)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. The public key extraction system 400 may include a receiving unit 410, an extracting unit 420, and an executing unit 430. The components of the public key extraction system 400 and the public key extraction system 400 may control the public key extraction system to perform the steps 510 to 530, which includes the entire process of signature verification of FIG. 5 . At this time, the components of the public key extraction system 400 and the public key extraction system 400 may be implemented to execute an instruction according to code of an operating system and code of at least one program included in the memory. Here, the components of the public key extraction system 400 may include different functions performed by the public key extraction system 400 in accordance with control commands provided by the program code stored in the public key extraction system 400, ≪ / RTI >

단계(510)에서 수신부(410)는 발신자로부터 전송되는 전자 서명이 부가된 메시지에 기반하여 전자 인증서를 수신할 수 있다. In step 510, the receiving unit 410 may receive the electronic certificate based on the message to which the electronic signature transmitted from the sender is added.

단계(520)에서 추출부(420)는 전자 서명과 관련된 동일한 인증 기관들을 공유하는 경우, 이전의 공개키 추출 과정에서 계산한 결과를 재사용하여 발신자의 공개키를 추출할 수 있다. 예를 들면, 복수의 발신자의 공개키를 추출함에 있어서 계산 과정의 일부분이 중첩될 수 있다. 이에 따라 제일 처음 공개키를 추출하는 계산을 수행한 이후의 공개키 추출 계산에서는 중첩된 계산 과정을 재사용할 수 있다.In step 520, if the extraction unit 420 shares the same certification authorities related to the digital signature, it can extract the public key of the sender by reusing the result calculated in the previous public key extraction process. For example, in extracting the public keys of a plurality of senders, a portion of the calculation process may overlap. Accordingly, in the public key extraction calculation after the calculation for extracting the first public key is performed, the overlapping calculation process can be reused.

추출부(420)는 전자 인증서로서 내재적 인증서를 사용함에 따라 내재적 인증서의 해시값 및 내재적 인증서에 인코딩되어 있는 공개키 재구성 정보를 추출하고, 해시값 및 재구성 정보와 내재적 인증서를 발급한 인증 기관의 공개키를 사용하여 발신자의 공개키를 추출할 수 있다. 추출부(420)는 인증 기관의 공개키를 식별하지 못하는 경우, 인증 기관보다 상위의 인증 기관으로부터 발급된 인증 기관에 대한 내재적 인증서로부터 인증 기관의 공개키를 추출할 수 있다. 이때, 공개키를 추출하는 계산 과정에서 타원곡선 상에서 다수의 점의 상수배를 효율적으로 도출하는 Straus 알고리즘이 적용될 수 있다. The extraction unit 420 extracts the hash value of the implicit certificate and the public key reconstruction information encoded in the implicit certificate by using the implicit certificate as the electronic certificate, and outputs the hash value, the reconstruction information, and the publicity of the certification authority that issued the implicit certificate Keys can be used to extract the sender's public key. If the extraction unit 420 can not identify the public key of the certification authority, the extraction unit 420 may extract the public key of the certification authority from the internal certificate for the certification authority issued by the certification authority higher than the certification authority. In this case, the Straus algorithm that efficiently derives a constant multiple of the points on the elliptic curve can be applied in the calculation process of extracting the public key.

단계(530)에서 수행부(430)는 추출된 공개키를 이용하여 전자 서명에 대한 서명 검증을 수행할 수 있다. 수행부(430)는 전자 서명에 대한 서명 검증에 있어서, 입력받은 다수의 서명들을 검증하는 시간을 단축하기 위하여 일괄 서명 검증 방법이 적용될 수 있다. 일괄 서명 검증을 위한 서명 알고리즘으로 변형된 ECDSA가 적용될 수 있다. In step 530, the execution unit 430 may perform signature verification on the digital signature using the extracted public key. The execution unit 430 may apply the batch signature verification method in order to shorten the time for verifying the inputted multiple signatures in the signature verification of the digital signature. ECDSA modified by signature algorithm for collective signature verification can be applied.

수행부(430)는 전자 서명을 생성함에 따라 획득된 임시점의

Figure 112016110065969-pat00063
-좌표, 전자 서명이 부가될 메시지의 해시값 및 발신자의 개인키를 이용하여 생성된 제1 서명쌍(r, s)을 사용하여 임시점을 재구성함에 따라 획득된 재구성점의
Figure 112016110065969-pat00064
-좌표를 비교할 수 있다. 또는 수행부(430)는 제1 서명쌍 대신 상기 임시점이 포함된 제2 서명쌍(R, s)을 사용하여 재구성점과 임시점을 비교할 수 있다. The execution unit 430 generates a digital signature based on the obtained temporary point
Figure 112016110065969-pat00063
- coordinates, the hash value of the message to which the digital signature is to be added, and the first signature pair (r, s) generated using the sender's private key to reconstruct the temporary point
Figure 112016110065969-pat00064
- Coordinates can be compared. Alternatively, the performing unit 430 may compare the temporary point with the reconstruction point using the second signature pair (R, s) including the temporary point instead of the first signature pair.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be embodyed temporarily. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (6)

공개키 추출 방법에 있어서,
발신자로부터 전송되는 전자 서명이 부가된 메시지에 기반하여 전자 인증서를 수신하는 단계;
상기 전자 서명과 관련된 동일한 인증 기관들을 공유하는 경우, 이전의 공개키 추출 과정에서 계산한 결과를 재사용하여 상기 발신자의 공개키를 추출하는 단계; 및
상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계
를 포함하고,
상기 발신자의 공개키를 추출하는 단계는,
상기 전자 인증서로서 내재적 인증서를 사용함에 따라 상기 내재적 인증서로부터 해시값 및 상기 내재적 인증서에 인코딩되어 있는 공개키 재구성 정보를 추출하고, 상기 해시값 및 상기 재구성 정보와 내재적 인증서를 발급한 인증 기관의 공개키를 사용하여 상기 발신자의 공개키를 추출하고, 상기 인증 기관의 공개키를 식별하지 못하는 경우, 상기 인증 기관보다 상위의 인증 기관으로부터 발급된 상기 인증 기관에 대한 내재적 인증서로부터 상기 인증 기관의 공개키를 추출하는 단계
를 포함하는 공개키 추출 방법.
In a public key extraction method,
Receiving an electronic certificate based on a message added with an electronic signature transmitted from a sender;
Extracting a public key of the sender by reusing a result calculated in a previous public key extraction process when sharing the same certification authorities related to the digital signature; And
Performing signature verification on the digital signature using the extracted public key
Lt; / RTI >
Wherein the step of extracting the sender's public key comprises:
Extracting the hash value and the public key reconstruction information encoded in the inherent certificate from the inherent certificate according to the use of the inherent certificate as the electronic certificate and extracting the hash value and the public key of the certification authority that issued the implicit certificate If the public key of the certification authority is not identified, extracts a public key of the certification authority from an implicit certificate for the certification authority issued from a certification authority higher than the certification authority Step of extracting
/ RTI >
삭제delete 삭제delete 제1항에 있어서,
상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계는,
ECDSA 또는 변형된 ECDSA을 포함하는 일괄 서명 검증 방법이 적용되는
공개키 추출 방법.
The method according to claim 1,
Wherein the step of performing signature verification on the digital signature using the extracted public key comprises:
ECDSA or a modified ECDSA.
Public key extraction method.
제4항에 있어서,
상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 단계는,
상기 전자 서명을 생성함에 따라 획득된 임시점의
Figure 112016110065969-pat00065
-좌표, 상기 전자 서명이 부가될 메시지의 해시값 및 상기 발신자의 개인키를 이용하여 생성된 제1 서명쌍을 사용하여 상기 임시점을 재구성함에 따라 획득된 재구성점의
Figure 112016110065969-pat00066
-좌표를 비교하거나, 상기 제1 서명쌍 대신 상기 임시점이 포함된 제2 서명쌍을 사용하여 상기 재구성점과 상기 임시점을 비교하는 단계
를 포함하는 공개키 추출 방법.
5. The method of claim 4,
Wherein the step of performing signature verification on the digital signature using the extracted public key comprises:
The generated temporary signature is generated by generating the digital signature
Figure 112016110065969-pat00065
- a hash value of the message to which the digital signature is to be added and a first signature pair generated using the sender's private key,
Figure 112016110065969-pat00066
- comparing the coordinates or comparing the temporary point with the reconstruction point using a second signature pair including the temporary point instead of the first signature pair
/ RTI >
공개키 추출 시스템에 있어서,
발신자로부터 전송되는 전자 서명이 부가된 메시지에 기반하여 전자 인증서를 수신하는 수신부;
상기 전자 서명과 관련된 동일한 인증 기관들을 공유하는 경우, 이전의 공개키 추출 과정에서 계산한 결과를 재사용하여 상기 발신자의 공개키를 추출하는 추출부; 및
상기 추출된 공개키를 이용하여 상기 전자 서명에 대한 서명 검증을 수행하는 수행부
를 포함하고,
상기 추출부는,
상기 전자 인증서로서 내재적 인증서를 사용함에 따라 상기 내재적 인증서로부터 해시값 및 상기 내재적 인증서에 인코딩되어 있는 공개키 재구성 정보를 추출하고, 상기 해시값 및 상기 재구성 정보와 내재적 인증서를 발급한 인증 기관의 공개키를 사용하여 상기 발신자의 공개키를 추출하고, 상기 인증 기관의 공개키를 식별하지 못하는 경우, 상기 인증 기관보다 상위의 인증 기관으로부터 발급된 상기 인증 기관에 대한 내재적 인증서로부터 상기 인증 기관의 공개키를 추출하는
공개키 추출 시스템.
A public key extraction system comprising:
A receiving unit for receiving an electronic certificate based on a message to which an electronic signature transmitted from a sender is added;
An extraction unit for extracting the public key of the sender by reusing the result calculated in the previous public key extraction process when sharing the same certification authorities related to the digital signature; And
And an execution unit for performing signature verification on the digital signature using the extracted public key,
Lt; / RTI >
The extracting unit extracts,
Extracting the hash value and the public key reconstruction information encoded in the inherent certificate from the inherent certificate according to the use of the inherent certificate as the electronic certificate and extracting the hash value and the public key of the certification authority that issued the implicit certificate If the public key of the certification authority is not identified, extracts a public key of the certification authority from an implicit certificate for the certification authority issued from a certification authority higher than the certification authority Extract
Public key extraction system.
KR1020160149659A 2016-11-10 2016-11-10 Efficient public key extraction method from implicit certificates KR101870042B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160149659A KR101870042B1 (en) 2016-11-10 2016-11-10 Efficient public key extraction method from implicit certificates

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160149659A KR101870042B1 (en) 2016-11-10 2016-11-10 Efficient public key extraction method from implicit certificates

Publications (2)

Publication Number Publication Date
KR20180052399A KR20180052399A (en) 2018-05-18
KR101870042B1 true KR101870042B1 (en) 2018-06-21

Family

ID=62454055

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160149659A KR101870042B1 (en) 2016-11-10 2016-11-10 Efficient public key extraction method from implicit certificates

Country Status (1)

Country Link
KR (1) KR101870042B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658301B1 (en) * 1999-11-22 2006-12-14 주식회사 케이티 Public key based mutual authentication method in wireless communication system
KR100930923B1 (en) * 2007-11-06 2009-12-10 고려대학교 산학협력단 Method and System for Generating a Bundled Signature

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Li, Wei, Shuyue Xiang, and Shuangbao Chen. "Improvement method of SSL protocol identity authentication based on the attribute certificate," Computer Science & Service System (CSSS), 2012.
Sajeev, C., and C. Suyambulingom. "Cryptography Implementation in IP Datagram", International Journal of Engineering And Computer Science, Volume 2 Issue 11, pp.3238-3244 (2013.11.)

Also Published As

Publication number Publication date
KR20180052399A (en) 2018-05-18

Similar Documents

Publication Publication Date Title
US11853437B2 (en) Method for storing data on a storage entity
EP2737656B1 (en) Credential validation
CA2976795C (en) Implicitly certified digital signatures
CN109818730B (en) Blind signature acquisition method and device and server
US11184168B2 (en) Method for storing data on a storage entity
US20160149708A1 (en) Electronic signature system
KR101253683B1 (en) Digital Signing System and Method Using Chained Hash
JP6780771B2 (en) Verification information granting device, verification device, information management system, method and program
CN114785524A (en) Electronic seal generation method, device, equipment and medium
CN116566626B (en) Ring signature method and apparatus
WO2016014048A1 (en) Attribute-based cryptography
CN116684104A (en) RSA2 signature rechecking method and device of API (application program interface), electronic equipment and medium
KR102019558B1 (en) Efficient signature verification method for digital signatures using implicit certificates
US10454919B2 (en) Secure component certificate provisioning
KR101870042B1 (en) Efficient public key extraction method from implicit certificates
CN111355584B (en) Method and apparatus for generating blockchain multi-signatures
CN111355576B (en) Data processing method and computer system
CN113326527A (en) Credible digital signature system and method based on block chain
CN112887097A (en) Signature method based on SM2 elliptic curve, related device and storage medium
CN111490876A (en) Communication method based on USB KEY and USB KEY
CN113806810B (en) Authentication method, authentication system, computing device, and storage medium
CN115134093B (en) Digital signature method and computing device
CN112749964B (en) Information monitoring method, system, equipment and storage medium
KR102203699B1 (en) Data transmission apparatus capable of digital signature through dirty paper coding and operating method thereof
Bos et al. Post-quantum secure over-the-air update of automotive systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right