KR102370814B1 - Method for butterfly key expansion in communication system - Google Patents

Method for butterfly key expansion in communication system Download PDF

Info

Publication number
KR102370814B1
KR102370814B1 KR1020200043990A KR20200043990A KR102370814B1 KR 102370814 B1 KR102370814 B1 KR 102370814B1 KR 1020200043990 A KR1020200043990 A KR 1020200043990A KR 20200043990 A KR20200043990 A KR 20200043990A KR 102370814 B1 KR102370814 B1 KR 102370814B1
Authority
KR
South Korea
Prior art keywords
key
server
expansion
extension
public key
Prior art date
Application number
KR1020200043990A
Other languages
Korean (ko)
Other versions
KR102370814B9 (en
KR20210126820A (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 KR1020200043990A priority Critical patent/KR102370814B1/en
Priority to CN202011096705.XA priority patent/CN113572596A/en
Publication of KR20210126820A publication Critical patent/KR20210126820A/en
Application granted granted Critical
Publication of KR102370814B1 publication Critical patent/KR102370814B1/en
Publication of KR102370814B9 publication Critical patent/KR102370814B9/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 통신 시스템에서 RA(registration authority) 서버의 버터플라이 키 확장(butterfly key expansion) 방법을 개시한다. 상기 버터플라이 키 확장 방법은, RA 서버가 확장 키(expansion key) 및 확장 값(expansion value)을 생성하는 단계와, 상기 RA 서버가 EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신하는 단계와, 상기 RA 서버가 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송하는 단계를 포함한다.The present invention discloses a method for butterfly key expansion of a registration authority (RA) server in a communication system. The butterfly key expansion method comprises the steps of: an RA server generating an expansion key and an expansion value; Cocoon key expansion including public key information from an EE (end entity) by the RA server ( receiving a cocoon key expansion) request, the RA server performing cocoon key expansion based on the expansion key, the expansion value, and the public key information, and encrypting the expansion key based on the public key information and transmitting to the EE.

Description

통신 시스템에서 버터플라이 키 확장 방법{METHOD FOR BUTTERFLY KEY EXPANSION IN COMMUNICATION SYSTEM}METHOD FOR BUTTERFLY KEY EXPANSION IN COMMUNICATION SYSTEM

본 발명은 차량 간 통신 시스템에서 인증서를 발급하기 위해 버터플라이 키 확장(Butterfly Key Expansion) 알고리즘을 적용하는 기술에 관한 것이다. The present invention relates to a technique for applying a Butterfly Key Expansion algorithm to issue a certificate in a vehicle-to-vehicle communication system.

최근, 차량에서 다른 차량이나 인터넷 상의 서버, 사물 기기 등 다양한 인프라에 포함된 많은 기기들과 통신하여 텔레매틱스 등 편리한 응용 서비스들을 지원하기 위한 V2X(Vehicle to Everything) 통신이 발전하고 있다.Recently, V2X (Vehicle to Everything) communication has been developed to support convenient application services such as telematics by communicating with many devices included in various infrastructures, such as other vehicles, servers on the Internet, and object devices.

V2X 통신 시 다양한 주변 기기들과 통신하기 위하여 다수의 인증서가 요구된다. 부트스트랩을 거친 EE(End Entity)가 등록인증서를 이용하여 RA(registration authority) 서버에 익명인증서를 요청하면, PCA(Pseudonym Certificate Authority) 서버가 버터플라이 키 확장(Butterfly Key Expansion) 알고리즘을 이용하여 다량의 익명 인증서를 생성할 수 있도록 RA 서버는 다량의 공개키 확장 과정인 코쿤 키 확장(Cocoon Key Expansion) 과정을 수행할 수 있다.In V2X communication, multiple certificates are required to communicate with various peripheral devices. When the bootstrap EE (End Entity) requests an anonymous certificate from the RA (registration authority) server using the registration certificate, the PCA (Pseudonym Certificate Authority) server uses the Butterfly Key Expansion algorithm to In order to generate an anonymous certificate of

다만, 버터플라이 키 확장은 EE의 요청 즉시 RA 서버에서 다량의 공개키를 생성해야 하기 때문에 상당한 시간이 소요되는 문제가 발생할 수 있다.However, the butterfly key extension may take a considerable amount of time because a large amount of public keys must be generated in the RA server immediately upon request of the EE.

본 발명에서는 버터플라이 키 확장(Butterfly Key Expansion)에 소요되는 시간을 줄이기 위해 코쿤 키 확장(Cocoon Key Expansion) 과정에서 소요되는 시간을 줄이는 방법을 제안한다. In the present invention, in order to reduce the time required for the Butterfly Key Expansion, a method for reducing the time required for the Cocoon Key Expansion process is proposed.

본 발명의 실시예에 따른 통신 시스템에서 RA(registration authority) 서버의 버터플라이 키 확장(butterfly key expansion) 방법은, RA 서버가 확장 키(expansion key) 및 확장 값(expansion value)을 생성하는 단계와, 상기 RA 서버가 EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신하는 단계와, 상기 RA 서버가 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송하는 단계를 포함한다.A method of butterfly key expansion of a registration authority (RA) server in a communication system according to an embodiment of the present invention comprises the steps of: generating, by the RA server, an expansion key and an expansion value; , receiving, by the RA server, a cocoon key expansion request including public key information from an end entity (EE); based on the Cocoon key expansion, and encrypting the expansion key based on the public key information and transmitting the encrypted key to the EE.

실시예에 따라, 상기 공개 키 정보는, 전자서명용 시드 공개 키, 암호화용 시드 공개 키, 및 상기 EE의 암호화용 공개 키 중에서 적어도 하나를 포함할 수 있다.According to an embodiment, the public key information may include at least one of a seed public key for digital signature, a seed public key for encryption, and a public key for encryption of the EE.

실시예에 따라, 상기 버터플라이 키 확장 방법은, 상기 RA 서버가 상기 확장 키 및 상기 확장 값을 매핑하여 데이터베이스나 파일 시스템에 저장하는 단계를 더 포함할 수 있다.According to an embodiment, the method of extending the butterfly key may further include the step of the RA server mapping the extension key and the extension value and storing the mapping in a database or a file system.

실시예에 따라, 상기 버터플라이 키 확장 방법은, 상기 RA 서버가 상기 코쿤 키 확장에 기반하여 코쿤 키를 생성하고, 상기 코쿤 키를 ACA(authorization certificate authority) 서버로 전송하는 단계와, 상기 RA 서버가 상기 ACA 서버로부터 암호화된 인증서를 수신하는 단계를 더 포함할 수 있다.According to an embodiment, the butterfly key extension method includes the steps of: the RA server generating a cocoon key based on the cocoon key extension, and transmitting the cocoon key to an authorization certificate authority (ACA) server; The method may further include receiving an encrypted certificate from the ACA server.

실시예에 따라, 상기 버터플라이 키 확장 방법은, 상기 RA 서버가 상기 암호화된 인증서와 관련된 인증서 배치(batch) 파일 다운르도 요청을 상기 EE로부터 수신하는 단계를 더 포함할 수 있다.According to an embodiment, the method for expanding the butterfly key may further include receiving, by the RA server, a certificate batch file download request related to the encrypted certificate from the EE.

실시예에 따라, 상기 버터플라이 키 확장 방법은, 상기 RA 서버가 미리 설정된 시간 이후에 생성된 확장 키 및 확장 값을 삭제하는 단계와, 상기 RA 서버가 상기 확장 키 및 상기 확장 값을 재생성하는 단계를 더 포함할 수 있다.According to an embodiment, the butterfly key extension method includes the steps of: deleting, by the RA server, an extension key and an extension value generated after a preset time; and regenerating, by the RA server, the extension key and the extension value may further include.

실시예에 따라, 상기 확장 키는 전자서명 용 확장 키 및 암호화용 확장 키 중에서 적어도 하나를 포함할 수 있다. According to an embodiment, the extension key may include at least one of an extension key for digital signature and an extension key for encryption.

본 발명의 실시예에 따른 통신 시스템에서 버터플라이 키 확장(butterfly key expansion)을 수행하는 RA(registration authority) 서버는, 송수신부, 및 확장 키(expansion key) 및 확장 값(expansion value)을 생성하고, EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신하도록 제어하고, 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송하도록 제어하는 제어부를 포함한다.A registration authority (RA) server that performs butterfly key expansion in a communication system according to an embodiment of the present invention generates a transceiver, and an expansion key and an expansion value, and , control to receive a cocoon key expansion request including public key information from an EE (end entity), and perform cocoon key expansion based on the expansion key, the expansion value, and the public key information, , a control unit for controlling to encrypt the extension key based on the public key information and transmit it to the EE.

본 발명의 실시예에 따른 RA 서버는 확장 값(Expansion value)을 미리 생성해 놓고 RA 서버의 저장소(하드디스크 등)에 저장한 뒤 EE의 요청이 들어오면 저장된 값을 사용함으로써 버터플라이 키 확장(Butterfly Key Expansion) 알고리즘 상의 전체 소요시간을 줄일 수 있다. The RA server according to an embodiment of the present invention generates an expansion value in advance, stores it in the storage (hard disk, etc.) of the RA server, and then uses the stored value when an EE request comes in to expand the butterfly key ( Butterfly Key Expansion) algorithm can reduce the overall time required.

본 발명의 실시예에 따른 RA 서버가 확장값들을 미리 생성해서 계산함으로써 RA 서버의 부하를 분산시킬 수 있고, RA 서버에서 인증서 발급 시간에 대한 예측이 정확해짐으로 인하여 익명인증서 발급업무 효율성을 향상시킬 수 있다. The RA server according to the embodiment of the present invention can distribute the load of the RA server by generating and calculating extension values in advance, and the RA server can accurately predict the certificate issuance time, thereby improving the efficiency of the anonymous certificate issuance task. can

도 1은 통신 시스템에서 코쿤 키 확장(cocoon key expansion) 과정을 설명하기 위한 블록도이다.
도 2는 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따라 통신 시스템에서 코쿤 키 확장(cocoon key expansion) 과정을 설명하기 위한 블록도이다.
도 4는 본 발명의 실시예에 따라 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따라 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 설명하기 위한 블록도이다.
도 6은 본 발명의 다른 실시예에 따라 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 설명하기 위한 블록도이다.
도 7은 본 발명의 실시예들에 따른 장치를 설명하기 위한 블록도이다.
1 is a block diagram for explaining a cocoon key expansion process in a communication system.
2 is a diagram illustrating a butterfly key expansion process in a communication system.
3 is a block diagram illustrating a cocoon key expansion process in a communication system according to an embodiment of the present invention.
4 is a diagram illustrating a butterfly key expansion process in a communication system according to an embodiment of the present invention.
5 is a block diagram illustrating a butterfly key expansion process in a communication system according to an embodiment of the present invention.
6 is a block diagram illustrating a butterfly key expansion process in a communication system according to another embodiment of the present invention.
7 is a block diagram illustrating an apparatus according to embodiments of the present invention.

이하, 첨부된 도면을 참조하여 본 개시(present disclosure)를 설명한다. 본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.Hereinafter, the present disclosure will be described with reference to the accompanying drawings. As the present disclosure is capable of various changes and may have various embodiments, specific embodiments are illustrated in the drawings and the related detailed description is set forth. However, this is not intended to limit the present disclosure to specific embodiments, and should be understood to include all modifications and/or equivalents or substitutes included in the spirit and scope of the present disclosure. In connection with the description of the drawings, like reference numerals have been used for like elements.

본 개시 가운데 사용될 수 있는 "포함한다" 또는 "포함할 수 있다" 등의 표현은 개시된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 개시에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Expressions such as “comprises” or “may include” that may be used in the present disclosure indicate the existence of the disclosed function, operation, or component, and do not limit one or more additional functions, operations, or components. In addition, in the present disclosure, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification is present, but one or more It is to be understood that this does not preclude the possibility of addition or presence of other features or numbers, steps, operations, components, parts, or combinations thereof.

본 개시에서 "또는" 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, "A 또는 B"는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.In the present disclosure, expressions such as “or” include any and all combinations of the words listed together. For example, "A or B" may include A, may include B, or may include both A and B.

본 개시 가운데 "제 1," "제2," "첫째," 또는 "둘째," 등의 표현들이 본 개시의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. 예를 들어, 제1 사용자 기기와 제 2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2구성요소도 제1 구성요소로 명명될 수 있다.In the present disclosure, expressions such as “first,” “second,” “first,” or “second,” may modify various components of the disclosure, but do not limit the components. For example, the above expressions do not limit the order and/or importance of corresponding components. The above expressions may be used to distinguish one component from another. For example, both the first user device and the second user device are user devices, and represent different user devices. For example, without departing from the scope of the present disclosure, a first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.When a component is referred to as being “connected” or “connected” to another component, it may be directly connected or connected to the other component, but it is understood that other components may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 개시에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.Terms used in the present disclosure are used only to describe specific embodiments, and are not intended to limit the present disclosure. The singular expression includes the plural expression unless the context clearly dictates otherwise.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present disclosure. does not

부트스트랩을 거친 EE(End Entity)가 등록인증서를 이용하여 RA(registration authority) 서버에 익명인증서를 요청하면 RA 서버는 다량의 익명인증서를 생성한다(예를 들어, Camp 표준에서 제안하는 예시 : 3120 = 20*52*3).When an EE (End Entity) that has undergone bootstrap requests an anonymous certificate to the RA (registration authority) server using the registration certificate, the RA server generates a large number of anonymous certificates (for example, the example suggested by the Camp standard: 3120 = 20*52*3).

이 과정에서 EE의 암호화 키 생성 부하 및 RA 서버에 대한 전송 부하를 줄이고자 단일 시드(seed)에서 다량의 암호 키 쌍을 생성하는 버터플라이 키 확장(Butterfly Key Expansion) 알고리즘을 적용할 수 있다. In this process, the Butterfly Key Expansion algorithm, which generates a large number of encryption key pairs from a single seed, can be applied to reduce the EE's encryption key generation load and the transmission load on the RA server.

다만, 버터플라이 키 확장은 EE의 요청 즉시 RA 서버에서 다량의 공개키를 생성해야 하기 때문에 상당한 시간이 소요되는 문제가 발생할 수 있다. However, the butterfly key extension may take a considerable amount of time because a large amount of public keys must be generated in the RA server immediately upon request of the EE.

본 발명에서는 버터플라이 키 확장(Butterfly Key Expansion)에 소요되는 시간을 줄이기 위해 코쿤 키 확장(Cocoon Key Expansion) 과정에서 소요되는 시간을 줄이는 방법을 제안한다. In the present invention, in order to reduce the time required for the Butterfly Key Expansion, a method for reducing the time required for the Cocoon Key Expansion process is proposed.

종래에는 EE가 RA 서버에 버터플라이 키 확장(Butterfly Key Expansion) 요청 시 확장 함수(Expansion Function)을 통해 확장 값(Expansion value)의 생성을 시작한다. Conventionally, when an EE requests a Butterfly Key Expansion from an RA server, it starts to generate an expansion value through an expansion function.

다만, 본 발명에서는 RA 서버가 확장 값(Expansion value)을 미리 생성해 놓고 RA 서버의 저장소(하드디스크 등)에 저장한 뒤 EE의 요청이 들어오면 저장된 값을 사용함으로써 버터플라이 키 확장(Butterfly Key Expansion) 알고리즘 상의 전체 소요시간을 줄일 수 있다. However, in the present invention, the RA server generates an Expansion value in advance, stores it in the storage (hard disk, etc.) of the RA server, and then uses the stored value when an EE request comes in to expand the Butterfly Key (Butterfly Key). Expansion) algorithm can reduce the overall time required.

본 발명의 실시예에 따르면, RA 서버가 확장값들을 미리 생성해서 계산해 놓으므로 RA의 부하를 분산시킬 수 있고, RA 서버에서 기존보다 인증서 발급 시간에 대한 예측이 정확해짐으로 인하여 익명인증서 발급업무 효율성 향상시킬 수 있다. (또한, PCA에서도 같은 아이디어 적용 가능)According to the embodiment of the present invention, since the RA server generates and calculates the extension values in advance, the load of the RA can be distributed, and the RA server predicts the certificate issuance time more accurately than before, so that the anonymous certificate issuance work efficiency can be improved (Also, the same idea can be applied to PCA)

본 발명의 실시예에 따르면, RA 서버에서 강력한 PRG(Pseudo-random generator)를 사용하면 컴퓨팅 능력이 상대적으로 부족한 EE에서 랜덤값을 사용하는 것 보다 연산의 정확도 및 속도를 향상시킬 수 있다. According to an embodiment of the present invention, when a powerful pseudo-random generator (PRG) is used in the RA server, the accuracy and speed of calculation can be improved compared to using a random value in the EE, which has relatively insufficient computing power.

도 1은 통신 시스템에서 코쿤 키 확장(cocoon key expansion) 과정을 설명하기 위한 블록도이다. 1 is a block diagram for explaining a cocoon key expansion process in a communication system.

도 1을 참조하면, S110 단계에서, EE(100)는 RA 서버(200)로 코쿤 키 확장 (Cocoon Key Expansion) 요청을 전송할 수 있다. 이때, 코쿤 키 확장 (Cocoon Key Expansion) 요청에는 전자서명용 Seed 공개키(S = sG), 암호화용 Seed 공개키(E = eG), 전자서명용 확장 키(Ks), 및 암호화용 확장 키(Ke) 중에서 적어도 하나가 포함될 수 있다. Referring to FIG. 1 , in step S110 , the EE 100 may transmit a Cocoon Key Expansion request to the RA server 200 . At this time, the Cocoon Key Expansion request includes a seed public key for digital signature (S = sG), a seed public key for encryption (E = eG), an extension key for digital signature (K s ), and an expansion key for encryption (K). e ) at least one of them may be included.

한편, 상기 G는 IEEE1609.2 표준 및 CAMP 표준에서 정의하는 타원곡선암호의 기준점(Base Point)를 의미하고, "sG"는 s라는 상수에 기준점 G에 곱한 것(scalar multiplication)을 의미한다. "sG"는 G에 s를 곱한 s*G의 표기를 의미한다.On the other hand, G means the base point of the elliptic curve cipher defined in the IEEE1609.2 standard and the CAMP standard, and "sG" means a constant s multiplied by the reference point G (scalar multiplication). "sG" means the notation of s*G multiplied by s.

EE(100)는 전자서명용 Seed 공개키(S = sG), 암호화용 Seed 공개키(E = eG), 전자서명용 확장 키(Ks), 및 암호화용 확장 키(Ke) 중에서 적어도 하나를 생성할 수 있다. EE 100 generates at least one of a seed public key for digital signature (S = sG), a seed public key for encryption (E = eG), an extended key for digital signature (K s ), and an extended key for encryption (K e ) can do.

S120 단계에서, RA 서버(200)는 상기 코쿤 키 확장 (Cocoon Key Expansion) 요청에 대한 응답 리턴을 EE(100)로 전송할 수 있다.In step S120 , the RA server 200 may transmit a response return to the Cocoon Key Expansion request to the EE 100 .

도 2는 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 나타내는 도면이다. 2 is a diagram illustrating a butterfly key expansion process in a communication system.

도 2에 도시된 통신 시스템은 EE(100), RA 서버(200), 및 PCA(pseudonym certificate authority) 서버(300)를 포함한다. 여기서, PCA 서버(300)는 ACA(authorization certificate authority) 서버로도 지칭될 수 있다.The communication system shown in FIG. 2 includes an EE 100 , an RA server 200 , and a pseudonym certificate authority (PCA) server 300 . Here, the PCA server 300 may also be referred to as an authorization certificate authority (ACA) server.

S210 단계에서, EE(100)는 개인키(s)를 생성하고, 생성된 개인키(s)를 이용하여 공개키(S = s*G)를 생성할 수 있다. 또한, EE(100)는 확장키(k)를 생성할 수 있다. EE(100)는 S210 단계에서 생성한 공개키(S = s*G) 및 확장키(k)를 RA 서버(200)로 전송할 수 있다. In step S210, the EE 100 may generate a private key (s) and generate a public key (S = s*G) using the generated private key (s). Also, the EE 100 may generate an extension key k. The EE 100 may transmit the public key (S = s*G) and the extended key (k) generated in step S210 to the RA server 200 .

S220 단계에서, RA 서버(200)는 확장키(k)와 관련된 확장 함수(fk(i))를 이용하여 다수의 확장값(Fi = fk(i) * G)을 생성할 수 있다. RA 서버(200)는 EE(100)로부터 수신한 공개키(S) 및 다수의 확장값(Fi) 각각을 더하여 코쿤 키(Bi) 각각을 생성할 수 있다. RA 서버(200)는 생성된 코쿤 키(Bi) 각각을 PCA 서버(300)로 전송할 수 있다. In step S220, the RA server 200 may generate a plurality of extension values (F i = f k (i) * G) using the extension function f k (i) related to the extension key k. . The RA server 200 may generate each of the cocoon keys (B i ) by adding the public key (S) received from the EE 100 and each of the plurality of extension values ( Fi ). The RA server 200 may transmit each of the generated cocoon keys (B i ) to the PCA server 300 .

S230 단계에서, PCA 서버(300)는 랜덤값(ci)을 생성하고, 생성된 랜덤값(Ci)을 이용하여 암호화값(Ri = ci * G)을 계산할 수 있다. PCA 서버(300)는 RA 서버(200)로부터 수신한 코쿤 키(Bi) 각각과 암호화값(Ri) 각각을 더하여 버터플라이 공개키(Ci)를 생성할 수 있다. PCA 서버(300)는 버터플라이 공개키(Ci)를 포함하는 인증서 및 랜덤값(ci)을 EE(100)로 전송할 수 있다. In step S230, the PCA server 300 may generate a random value (c i ) and calculate an encryption value (R i = c i * G) using the generated random value (C i ). The PCA server 300 may generate a butterfly public key (C i ) by adding each of the cocoon key (B i ) received from the RA server ( 200 ) and each of the encryption values (R i ). The PCA server 300 may transmit a certificate and a random value c i including the butterfly public key (C i ) to the EE ( 100 ).

S240 단계에서, EE(100)는 랜덤값(ci)과, 개인키(s), 기존에 저장하고 있는 확장키 k 를 통해 만들 수 있는 확장값(Fi)에 기반하여 비밀키(ti)를 생성할 수 있다.In step S240, the EE 100 is based on a random value (c i ), a private key (s), and an extension value (F i ) that can be created through the previously stored extension key k, a secret key (t i ) ) can be created.

도 3은 본 발명의 실시예에 따라 통신 시스템에서 코쿤 키 확장(cocoon key expansion) 과정을 설명하기 위한 블록도이다. 3 is a block diagram illustrating a cocoon key expansion process in a communication system according to an embodiment of the present invention.

도 3을 참조하면, S310 단계에서, RA 서버(200)는 확장 키(expansion key) 및 확장 값(expansion value)을 생성할 수 있다. 이때, RA 서버(200)는 전자서명용 확장 키(Ks) 및 암호화용 확장 키(Ke) 중에서 적어도 하나를 미리 생성 수 있다. 또한, RA 서버(200)는 전자서명용 확장 값 및 암호화용 확장 값 중에서 적어도 하나를 미리 생성 수 있다.Referring to FIG. 3 , in step S310 , the RA server 200 may generate an expansion key and an expansion value. In this case, the RA server 200 may generate in advance at least one of the digital signature extension key (K s ) and the encryption extension key (K e ). Also, the RA server 200 may generate in advance at least one of an extended value for digital signature and an extended value for encryption.

S320 단계에서, EE(100)는 RA 서버(200)로 코쿤 키 확장 (Cocoon Key Expansion) 요청을 전송할 수 있다. 이때, 코쿤 키 확장 (Cocoon Key Expansion) 요청에는 전자서명용 Seed 공개키(S = sG), 암호화용 Seed 공개키(E = eG), 및 EE(100)의 암호화용 공개키(k) 중에서 적어도 하나가 포함될 수 있다. In step S320 , the EE 100 may transmit a Cocoon Key Expansion request to the RA server 200 . At this time, in the Cocoon Key Expansion request, at least one of the seed public key for digital signature (S = sG), the seed public key for encryption (E = eG), and the public key for encryption of the EE 100 (k) may be included.

S330 단계에서, RA 서버(200)는 상기 코쿤 키 확장 (Cocoon Key Expansion) 요청에 대한 응답 리턴을 EE(100)로 전송할 수 있다. 이때, 응답 리턴에는 전자서명용 확장 키(Ks) 및 암호화용 확장 키(Ke) 중에서 적어도 하나가 포함될 수 있다.In step S330 , the RA server 200 may transmit a response return to the Cocoon Key Expansion request to the EE 100 . In this case, the response return may include at least one of an extended key for digital signature (K s ) and an extended key for encryption (K e ).

도 4는 본 발명의 실시예에 따라 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 나타내는 도면이다. 4 is a diagram illustrating a butterfly key expansion process in a communication system according to an embodiment of the present invention.

도 4에 도시된 통신 시스템은 EE(100), RA 서버(200), 및 PCA(pseudonym certificate authority) 서버(300)를 포함한다. 여기서, PCA 서버(300)는 ACA(authorization certificate authority) 서버로도 지칭될 수 있다.The communication system shown in FIG. 4 includes an EE 100 , an RA server 200 , and a pseudonym certificate authority (PCA) server 300 . Here, the PCA server 300 may also be referred to as an authorization certificate authority (ACA) server.

S410 단계에서, EE(100)는 개인키(s)를 생성하고, 생성된 개인키(s)를 이용하여 공개키(S = s*G)를 생성할 수 있다. EE(100)는 S210 단계에서 생성한 공개키(S = s*G)를 RA 서버(200)로 전송할 수 있다. In step S410, the EE 100 may generate a private key (s) and generate a public key (S = s*G) using the generated private key (s). The EE 100 may transmit the public key (S = s*G) generated in step S210 to the RA server 200 .

S420 단계에서, RA 서버(200)는 EE(100)로부터 공개키(S)를 수신하고, http 응답을 통해 확장키(k)를 수신할 수 있다. RA 서버(200)는 RA 저장소(210)를 포함하고, EE(100)의 코쿤 키 확장(Cocoon Key Expansion) 요청 이전에 k, Fi = fk(i) * G 값을 미리 생성하고 이를 RA 저장소(210)에 저장할 수 있다.In step S420 , the RA server 200 may receive the public key S from the EE 100 , and may receive the extension key k through the http response. The RA server 200 includes the RA storage 210, and before the Cocoon Key Expansion request of the EE 100, k, F i = f k (i) * G values are generated in advance and the RA It may be stored in the storage 210 .

S420 단계에서, RA 서버(200)는 미리 만들어져서 저장된 Fi * G 값을 사용하여, 코쿤 키(Bi) 각각을 생성할 수 있다. 구체적으로, RA 서버(200)는 EE(100)로부터 수신한 공개키(S) 및 RA 저장소(210)에 미리 저장된 확장값(Fi)을 더하여 코쿤 키(Bi) 각각을 생성할 수 있다. RA 서버(200)는 생성된 코쿤 키(Bi) 각각을 PCA 서버(300)로 전송할 수 있다. In step S420 , the RA server 200 may generate each of the cocoon keys (B i ) using the previously made and stored F i * G values. Specifically, the RA server 200 may generate each of the cocoon keys (B i ) by adding the public key S received from the EE 100 and the extension value F i previously stored in the RA storage 210 . . The RA server 200 may transmit each of the generated cocoon keys (B i ) to the PCA server 300 .

이때, RA 서버(200)는 전자서명용 확장 키 및 암호화용 확장 키 중에서 적어도 하나를 미리 생성하고 이들을 이용하여 코쿤 키(Bi) 각각을 생성할 수 있다.In this case, the RA server 200 may generate in advance at least one of an extended key for digital signature and an extended key for encryption, and use them to generate each of the cocoon keys (B i ).

S430 단계에서, PCA 서버(300)는 랜덤값(ci)을 생성하고, 생성된 랜덤값(ci)을 이용하여 암호화값(Ri = ci * G)을 계산할 수 있다. PCA 서버(300)는 RA 서버(200)로부터 수신한 코쿤 키(Bi) 각각과 암호화값(Ri) 각각을 더하여 버터플라이 공개키(Ci)를 생성할 수 있다. PCA 서버(300)는 버터플라이 공개키(Ci)를 포함하는 인증서 및 랜덤값(ci)을 EE(100)로 전송할 수 있다. In step S430 , the PCA server 300 may generate a random value c i and calculate an encryption value (R i = c i * G) using the generated random value c i . The PCA server 300 may generate a butterfly public key (C i ) by adding each of the cocoon key (B i ) received from the RA server ( 200 ) and each of the encryption values (R i ). The PCA server 300 may transmit a certificate and a random value c i including the butterfly public key (C i ) to the EE ( 100 ).

S440 단계에서, EE(100)는 랜덤값(ci), 개인키(s), 기존에 저장하고 있는 확장키 k를 통해 만들 수 있는 확장값(Fi)에 기반하여 비밀키(ti)를 생성할 수 있다.In step S440, the EE 100 is a random value (c i ), a private key (s), a secret key (t i ) based on an extension value ( Fi ) that can be created through the previously stored extension key k can create

도 5는 본 발명의 일 실시예에 따라 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 설명하기 위한 블록도이다. 5 is a block diagram illustrating a butterfly key expansion process in a communication system according to an embodiment of the present invention.

도 5는 본 발명의 실시예에 따라 통신 시스템에서 코쿤 키 확장(cocoon key expansion) 과정을 설명하기 위한 블록도이다. 5 is a block diagram illustrating a cocoon key expansion process in a communication system according to an embodiment of the present invention.

도 5를 참조하면, S510 단계에서, RA 서버(200)는 확장 키(expansion key) 및 확장 값(expansion value)을 생성하여 저장소(210)에 저장할 수 있다. 이때, RA 서버(200)는 전자서명용 확장 키(Ks) 및 암호화용 확장 키(Ke) 중에서 적어도 하나를 미리 생성하여 저장소(210)에 저장할 수 있다. 또한, RA 서버(200)는 전자서명용 확장 값 및 암호화용 확장 값 중에서 적어도 하나를 미리 생성하여 저장소(210)에 저장할 수 있다.Referring to FIG. 5 , in step S510 , the RA server 200 may generate and store an expansion key and an expansion value in the storage 210 . In this case, the RA server 200 may generate in advance at least one of an extended key for digital signature (K s ) and an extended key for encryption (K e ) and store it in the storage 210 . Also, the RA server 200 may generate at least one of an extended value for digital signature and an extended value for encryption in advance and store it in the storage 210 .

S520 단계에서, EE(100)는 RA 서버(200)로 코쿤 키 확장 (Cocoon Key Expansion) 요청을 전송할 수 있다. 이때, 코쿤 키 확장 (Cocoon Key Expansion) 요청에는 전자서명용 Seed 공개키(S = sG), 암호화용 Seed 공개키(E = eG), 및 EE(100)의 암호화용 공개키(k) 중에서 적어도 하나가 포함될 수 있다. In step S520 , the EE 100 may transmit a Cocoon Key Expansion request to the RA server 200 . At this time, in the Cocoon Key Expansion request, at least one of the seed public key for digital signature (S = sG), the seed public key for encryption (E = eG), and the public key for encryption of the EE 100 (k) may be included.

S530 단계에서, RA 서버(200)는 상기 코쿤 키 확장 (Cocoon Key Expansion) 요청에 대한 응답 리턴을 EE(100)로 전송할 수 있다. 이때, 응답 리턴에는 전자서명용 확장 키(Ks) 및 암호화용 확장 키(Ke) 중에서 적어도 하나가 포함될 수 있다.In step S530 , the RA server 200 may transmit a response return to the Cocoon Key Expansion request to the EE 100 . In this case, the response return may include at least one of an extended key for digital signature (K s ) and an extended key for encryption (K e ).

S540 단계에서, RA 서버(200)는 확장된 코쿤 키(expanded cocoon key)를 ACA 서버(300)로 전송할 수 잇다. 이때, ACA 서버(300)는 PCA 서버로도 지칭될 수 있다.In step S540 , the RA server 200 may transmit an expanded cocoon key to the ACA server 300 . In this case, the ACA server 300 may also be referred to as a PCA server.

S550 단계에서, ACA 서버(300)는 확장된 코쿤 키(expanded cocoon key)를 이용하여 암호화된 인증서를 생성하고, 상기 암호화된 인증서를 RA 서버(200)로 전송할 수 있다. In step S550 , the ACA server 300 may generate an encrypted certificate using an expanded cocoon key, and transmit the encrypted certificate to the RA server 200 .

S560 단계에서, EE(100)는 RA 서버(200)로 인증서 배치(batch) 파일 다운로드 요청을 전송할 수 있다. S570 단계에서, EE(100)는 RA 서버(200)로부터 인증서 배치 파일을 다운로드할 수 있다. In step S560 , the EE 100 may transmit a certificate batch file download request to the RA server 200 . In step S570 , the EE 100 may download the certificate batch file from the RA server 200 .

본 발명의 실시예에 따른 통신 시스템에서 RA(registration authority) 서버의 버터플라이 키 확장(butterfly key expansion) 방법을 정리하면 다음과 같다. A method of butterfly key expansion of a registration authority (RA) server in a communication system according to an embodiment of the present invention is summarized as follows.

RA 서버는 확장 키(expansion key) 및 확장 값(expansion value)을 생성할 수 있다. 상기 RA 서버가 EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신할 수 있다. The RA server may generate an expansion key and an expansion value. The RA server may receive a cocoon key expansion request including public key information from an end entity (EE).

상기 RA 서버가 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송할 수 있다. The RA server may perform cocoon key extension based on the extension key, the extension value, and the public key information, and may encrypt the extension key based on the public key information and transmit it to the EE.

실시예에 따라, 상기 공개 키 정보는, 전자서명용 시드 공개 키, 암호화용 시드 공개 키, 및 상기 EE의 암호화용 공개 키 중에서 적어도 하나를 포함할 수 있다. According to an embodiment, the public key information may include at least one of a seed public key for digital signature, a seed public key for encryption, and a public key for encryption of the EE.

실시예에 따라, 상기 RA 서버가 상기 확장 키 및 상기 확장 값을 매핑하여 데이터베이스나 파일 시스템에 저장할 수 있다. According to an embodiment, the RA server may map the extension key and the extension value and store it in a database or a file system.

실시예에 따라, 상기 RA 서버가 상기 코쿤 키 확장에 기반하여 코쿤 키를 생성하고, 상기 코쿤 키를 ACA(authorization certificate authority) 서버로 전송할 수 있다. 이후, 상기 RA 서버가 상기 ACA 서버로부터 암호화된 인증서를 수신할 수 있다. According to an embodiment, the RA server may generate a cocoon key based on the cocoon key extension and transmit the cocoon key to an authorization certificate authority (ACA) server. Thereafter, the RA server may receive the encrypted certificate from the ACA server.

실시예에 따라, 상기 RA 서버가 상기 암호화된 인증서와 관련된 인증서 배치(batch) 파일 다운르도 요청을 상기 EE로부터 수신할 수 있다. According to an embodiment, the RA server may also receive a request to download a certificate batch file related to the encrypted certificate from the EE.

실시예에 따라, 상기 RA 서버가 미리 설정된 시간 이후에 생성된 확장 키 및 확장 값을 삭제하고, 상기 RA 서버가 상기 확장 키 및 상기 확장 값을 재생성할 수 있다. 이때, 상기 확장 키는 전자서명 용 확장 키 및 암호화용 확장 키 중에서 적어도 하나를 포함할 수 있다. According to an embodiment, the RA server may delete the extended key and the extended value generated after a preset time, and the RA server may regenerate the extended key and the extended value. In this case, the extension key may include at least one of an extension key for digital signature and an extension key for encryption.

도 6은 본 발명의 다른 실시예에 따라 통신 시스템에서 버터플라이 키 확장(butterfly key expansion) 과정을 설명하기 위한 블록도이다. 6 is a block diagram illustrating a butterfly key expansion process in a communication system according to another embodiment of the present invention.

도 6에서는 PCA 서버(300)에서 랜덤 값(ci)와 ci*G 값을 미리 생성하는 실시예를 설명하기 위한 도면이다. 6 is a diagram for explaining an embodiment in which the PCA server 300 generates a random value c i and a c i *G value in advance.

도 6을 참조하면, S610 단계에서, PCA 서버(300)는 랜덤 값(ci)과 ci*G 값을 미리 생성하고, 생성된 랜덤 값(ci)과 ci*G 값을 PCA 서버(300) 내 저장소(310)에 저장할 수 있다. Referring to FIG. 6 , in step S610, the PCA server 300 generates a random value c i and c i *G value in advance, and sets the generated random value c i and c i *G value to the PCA server. (300) can be stored in my storage (310).

S620 단계에서, RA 서버(200)는 코쿤 키(Bi) 번들을 PCA 서버(300)로 전송할 수 있다. 이후, S630 단계에서, PCA 서버(300)는 인증서(Ci) 및 랜덤값(ci)를 RA 서버(200)로 전송할 수 있다. In step S620 , the RA server 200 may transmit the cocoon key (B i ) bundle to the PCA server 300 . Thereafter, in step S630 , the PCA server 300 may transmit the certificate (C i ) and the random value ( ci ) to the RA server 200 .

S640 단계에서, EE(100)와 RA 서버(200) 간 인증서(Ci) 및 랜덤값(ci) 요청과 다운로드가 수행될 수 있다. In step S640, a certificate (C i ) and a random value ( ci ) request and download between the EE 100 and the RA server 200 may be performed.

도 7은 본 발명의 실시예들에 따른 장치를 설명하기 위한 블록도이다. 7 is a block diagram illustrating an apparatus according to embodiments of the present invention.

도 7에 도시된 장치는 본 발명의 실시예들에 따른 EE(100), RA 서버(200), 및 PCA 서버(300) 각각일 수 있다. The apparatus shown in FIG. 7 may be each of the EE 100 , the RA server 200 , and the PCA server 300 according to embodiments of the present invention.

특히, 도 7에 도시된 장치는 통신 시스템에서 버터플라이 키 확장(butterfly key expansion)을 수행하는 RA 서버(700)일 수 있다. In particular, the device shown in FIG. 7 may be an RA server 700 that performs butterfly key expansion in a communication system.

도 1 내지 도 7을 참조하면, RA 서버(700)는 통신부(710), 제어부(720), 및 저장부(730)를 포함할 수 있다. 1 to 7 , the RA server 700 may include a communication unit 710 , a control unit 720 , and a storage unit 730 .

통신부(710)는 EE(100) 및 PCA 서버(300) 각각과 통신을 수행할 수 있다. The communication unit 710 may communicate with each of the EE 100 and the PCA server 300 .

제어부(720)는 통신부(710) 및 저장부(730)의 동작을 제어할 수 있다. 제어부(720)는 확장 키(expansion key) 및 확장 값(expansion value)을 생성하고, EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신하도록 제어할 수 있다. The controller 720 may control operations of the communication unit 710 and the storage unit 730 . The control unit 720 generates an expansion key and an expansion value, and controls to receive a cocoon key expansion request including public key information from an end entity (EE). .

제어부(720)는 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송하도록 제어할 수 있다. The control unit 720 may perform a cocoon key extension based on the extension key, the extension value, and the public key information, and may control to encrypt the extension key based on the public key information and transmit it to the EE. .

실시예에 따라, 상기 공개 키 정보는, 전자서명용 시드 공개 키, 암호화용 시드 공개 키, 및 상기 EE의 암호화용 공개 키 중에서 적어도 하나를 포함할 수 있다. According to an embodiment, the public key information may include at least one of a seed public key for digital signature, a seed public key for encryption, and a public key for encryption of the EE.

실시예에 따라, 제어부(720)는 상기 확장 키 및 상기 확장 값을 매핑하여 저장부(730) 내 데이터베이스나 파일 시스템에 저장할 수 있다. According to an embodiment, the controller 720 may map the extension key and the extension value and store it in a database or a file system in the storage unit 730 .

실시예에 따라, 제어부(720)는 상기 RA 서버가 상기 코쿤 키 확장에 기반하여 코쿤 키를 생성하고, 상기 코쿤 키를 ACA(authorization certificate authority) 서버로 전송하도록 제어할 수 있다. 제어부(720)는 상기 RA 서버가 상기 ACA 서버로부터 암호화된 인증서를 수신하도록 제어할 수 있다. According to an embodiment, the controller 720 may control the RA server to generate a cocoon key based on the cocoon key extension and transmit the cocoon key to an authorization certificate authority (ACA) server. The controller 720 may control the RA server to receive an encrypted certificate from the ACA server.

실시예에 따라, 제어부(720)는 상기 RA 서버가 상기 암호화된 인증서와 관련된 인증서 배치(batch) 파일 다운르도 요청을 상기 EE로부터 수신하도록 제어할 수 있다. According to an embodiment, the controller 720 may control the RA server to receive a certificate batch file download request related to the encrypted certificate from the EE.

실시예에 따라, 제어부(720)는 상기 RA 서버가 미리 설정된 시간 이후에 생성된 확장 키 및 확장 값을 삭제하고, 상기 RA 서버가 상기 확장 키 및 상기 확장 값을 재생성하도록 제어할 수 있다. 여기서, 상기 확장 키는 전자서명 용 확장 키 및 암호화용 확장 키 중에서 적어도 하나를 포함할 수 있다. According to an embodiment, the controller 720 may control the RA server to delete the extended key and extended value generated after a preset time, and control the RA server to regenerate the extended key and the extended value. Here, the extension key may include at least one of an extension key for digital signature and an extension key for encryption.

상기 실시예들에 따른 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예들에서 사용될 수 있는 데이터 구조, 프로그램 명령, 혹은 데이터 파일은 컴퓨터로 읽을 수 있는 기록매체에 다양한 수단을 통하여 기록될 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함할 수 있다. The method according to the above embodiments can be written as a program that can be executed on a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. In addition, the data structure, program command, or data file that can be used in the above-described embodiments of the present invention may be recorded in a computer-readable recording medium through various means. The computer-readable recording medium may include any type of storage device in which data readable by a computer system is stored.

컴퓨터로 읽을 수 있는 기록매체의 예로는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 또한, 컴퓨터로 읽을 수 있는 기록매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 전송 매체일 수도 있다. 프로그램 명령의 예로는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and floppy disks. Hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like may be included. In addition, the computer-readable recording medium may be a transmission medium for transmitting a signal designating a program command, a data structure, and the like. Examples of program instructions may include high-level language codes that can be executed by a computer using an interpreter as well as machine language codes such as those generated by a compiler.

본 명세서와 도면에 개시된 실시 예들은 본 개시의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 개시의 범위를 한정하고자 하는 것은 아니다. 따라서 본 개시의 범위는 여기에 개시된 실시 예들 이외에도 본 개시의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.Embodiments disclosed in the present specification and drawings are merely provided for specific examples to easily explain the contents of the present disclosure and help understanding, and are not intended to limit the scope of the present disclosure. Therefore, the scope of the present disclosure should be construed as including all changes or modifications derived from the technical spirit of the present disclosure in addition to the embodiments disclosed herein as being included in the scope of the present disclosure.

100: EE
200: RA 서버
210: RA 저장소
300: PCA(ACA) 서버
310: PCA(ACA) 저장소
710: 통신부
720: 제어부
730: 저장부
100: EE
200: RA server
210: RA storage
300: PCA (ACA) server
310: PCA (ACA) storage
710: communication unit
720: control unit
730: storage

Claims (10)

통신 시스템에서 RA(registration authority) 서버의 버터플라이 키 확장(butterfly key expansion) 방법에 있어서,
RA 서버가 확장 키(expansion key) 및 확장 값(expansion value)을 생성하는 단계;
상기 RA 서버가 EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신하는 단계; 및
상기 RA 서버가 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송하는 단계를 포함하고,
상기 RA 서버가 상기 확장 키 및 상기 확장 값을 매핑하여 데이터베이스나 파일 시스템에 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.
In a butterfly key expansion method of a registration authority (RA) server in a communication system, the method comprising:
generating, by the RA server, an expansion key and an expansion value;
receiving, by the RA server, a cocoon key expansion request including public key information from an end entity (EE); and
The RA server performing Cocoon key extension based on the extension key, the extension value, and the public key information, and encrypting the extension key based on the public key information and transmitting it to the EE,
The method further comprising the step of the RA server mapping the extension key and the extension value and storing the mapping in a database or a file system.
제1항에 있어서, 상기 공개 키 정보는,
전자서명용 시드 공개 키, 암호화용 시드 공개 키, 및 상기 EE의 암호화용 공개 키 중에서 적어도 하나를 포함하는 것을 특징으로 하는 방법.
According to claim 1, wherein the public key information,
A method comprising: at least one of a seed public key for digital signature, a seed public key for encryption, and a public key for encryption of the EE.
삭제delete 제1항에 있어서,
상기 RA 서버가 상기 코쿤 키 확장에 기반하여 코쿤 키를 생성하고, 상기 코쿤 키를 ACA(authorization certificate authority) 서버로 전송하는 단계; 및
상기 RA 서버가 상기 ACA 서버로부터 암호화된 인증서를 수신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
According to claim 1,
generating, by the RA server, a cocoon key based on the cocoon key extension, and transmitting the cocoon key to an authorization certificate authority (ACA) server; and
The method of claim 1, further comprising the step of the RA server receiving an encrypted certificate from the ACA server.
제4항에 있어서,
상기 RA 서버가 상기 암호화된 인증서와 관련된 인증서 배치(batch) 파일 다운로드 요청을 상기 EE로부터 수신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
5. The method of claim 4,
and receiving, by the RA server, a certificate batch file download request related to the encrypted certificate from the EE.
제1항에 있어서,
상기 RA 서버가 미리 설정된 시간 이후에 생성된 확장 키 및 확장 값을 삭제하는 단계; 및
상기 RA 서버가 상기 확장 키 및 상기 확장 값을 재생성하는 단계를 더 포함하는 것을 특징으로 하는 방법.
According to claim 1,
deleting, by the RA server, an extension key and an extension value generated after a preset time; and
The method of claim 1, further comprising the step of regenerating, by the RA server, the extended key and the extended value.
제1항에 있어서,
상기 확장 키는 전자서명 용 확장 키 및 암호화용 확장 키 중에서 적어도 하나를 포함하는 것을 특징으로 하는 방법.
According to claim 1,
The extension key comprises at least one of an extension key for digital signature and an extension key for encryption.
통신 시스템에서 버터플라이 키 확장(butterfly key expansion)을 수행하는 RA(registration authority) 서버에 있어서,
송수신부; 및
확장 키(expansion key) 및 확장 값(expansion value)을 생성하고, EE(end entity)로부터 공개 키 정보를 포함하는 코쿤 키 확장(cocoon key expansion) 요청을 수신하도록 제어하고, 상기 확장 키, 상기 확장 값, 및 상기 공개 키 정보에 기반하여 코쿤 키 확장을 수행하고, 상기 공개 키 정보에 기반하여 상기 확장 키를 암호화하여 상기 EE로 전송하도록 제어하는 제어부를 포함하고,
상기 제어부는 상기 확장 키 및 상기 확장 값을 매핑하여 데이터베이스나 파일 시스템에 저장하는 것을 특징으로 하는 RA 서버.
In a registration authority (RA) server that performs butterfly key expansion in a communication system,
transceiver; and
Generates an expansion key and an expansion value, controls to receive a cocoon key expansion request including public key information from an end entity (EE), the expansion key, the expansion a value, and a control unit that performs Cocoon key expansion based on the public key information, encrypts the expansion key based on the public key information, and controls to transmit it to the EE,
and the control unit maps the extension key and the extension value and stores the mapping in a database or a file system.
제8항에 있어서, 상기 공개 키 정보는,
전자서명용 시드 공개 키, 암호화용 시드 공개 키, 및 상기 EE의 암호화용 공개 키 중에서 적어도 하나를 포함하는 것을 특징으로 하는 RA 서버.
The method of claim 8, wherein the public key information comprises:
RA server comprising at least one of a seed public key for digital signature, a seed public key for encryption, and a public key for encryption of the EE.
삭제delete
KR1020200043990A 2020-04-10 2020-04-10 Method for butterfly key expansion in communication system KR102370814B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200043990A KR102370814B1 (en) 2020-04-10 2020-04-10 Method for butterfly key expansion in communication system
CN202011096705.XA CN113572596A (en) 2020-04-10 2020-10-14 Butterfly key expansion method in communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200043990A KR102370814B1 (en) 2020-04-10 2020-04-10 Method for butterfly key expansion in communication system

Publications (3)

Publication Number Publication Date
KR20210126820A KR20210126820A (en) 2021-10-21
KR102370814B1 true KR102370814B1 (en) 2022-03-07
KR102370814B9 KR102370814B9 (en) 2023-04-12

Family

ID=78158767

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200043990A KR102370814B1 (en) 2020-04-10 2020-04-10 Method for butterfly key expansion in communication system

Country Status (2)

Country Link
KR (1) KR102370814B1 (en)
CN (1) CN113572596A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116156461B (en) * 2023-04-21 2023-07-21 南京芯驰半导体科技有限公司 Method and device for processing pseudonym certificate of vehicle-mounted equipment and vehicle-mounted equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101922965B1 (en) * 2016-11-11 2018-11-28 한밭대학교 산학협력단 Implicit Certificate Issuing Method and System for Applying Key Expansion

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4057217A (en) * 1974-01-14 1977-11-08 Sargent Industries, Inc. Valve construction
PL2792100T3 (en) * 2011-12-15 2021-03-22 Intel Corporation Method and device for secure communications over a network using a hardware security engine
CN103746805B (en) * 2013-12-05 2018-01-30 数安时代科技股份有限公司 The generation method and system of external authentication key
CN105915338B (en) * 2016-05-27 2018-12-28 北京中油瑞飞信息技术有限责任公司 Generate the method and system of key
US10771265B2 (en) * 2017-09-21 2020-09-08 Lg Electronics, Inc. Cryptographic methods and systems for managing digital certificates with linkage values
US11190363B2 (en) * 2018-01-11 2021-11-30 Lg Electronics, Inc. Cryptographic methods and systems using activation codes for digital certificate revocation
US10439825B1 (en) * 2018-11-13 2019-10-08 INTEGRITY Security Services, Inc. Providing quality of service for certificate management systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101922965B1 (en) * 2016-11-11 2018-11-28 한밭대학교 산학협력단 Implicit Certificate Issuing Method and System for Applying Key Expansion

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Marcos A. Simplicio Jr. 외 4명, "The Unified Butterfly Effect: Efficient Security Credential Management System for Vehicular Communications", 2018 IEEE Vehicular Networking Conference. (2018.)*

Also Published As

Publication number Publication date
KR102370814B9 (en) 2023-04-12
KR20210126820A (en) 2021-10-21
CN113572596A (en) 2021-10-29

Similar Documents

Publication Publication Date Title
CN110264200B (en) Block chain data processing method and device
US11082228B2 (en) Reuse system, key generation device, data security device, in-vehicle computer, reuse method, and computer program
JP6708784B2 (en) Authentication method, device and authentication client
US20030177351A1 (en) System and method for single session sign-on with cryptography
US20130268750A1 (en) Encoded database management system, client and server, natural joining method and program
US20040230540A1 (en) Method and system for regulating access to a service
KR102370814B1 (en) Method for butterfly key expansion in communication system
JP6294882B2 (en) Key storage device, key storage method, and program thereof
KR101922965B1 (en) Implicit Certificate Issuing Method and System for Applying Key Expansion
JP2009141674A (en) Id-based encryption system and method
KR102132685B1 (en) Apparatus and method for order-revealing encryption
KR20190080299A (en) Method of providing secure in-vehicle network communication and appratus for implementing the same
CN115426106B (en) Identity authentication method, device and system, electronic equipment and storage medium
CN114785532B (en) Security chip communication method and device based on bidirectional signature authentication
US20100115584A1 (en) Information processing system
Groza et al. CarINA-Car sharing with IdeNtity based Access control re-enforced by TPM
CN113672955B (en) Data processing method, system and device
CN115913621A (en) Database encryption method, terminal and system suitable for cloud environment
US8731187B2 (en) Computing genus-2 curves using general isogenies
JP5182100B2 (en) Key exchange device, key exchange processing system, key exchange method and program
JPH11215121A (en) Device and method for authentication
KR102122773B1 (en) System and method for providng redactable signature with recovery functionality
Kathiresh et al. Vehicle diagnostics over internet protocol and over-the-air updates
KR101974411B1 (en) In-vehicle secure communication support device and operating method thereof
KR102192594B1 (en) Apparatus and method for order-revealing encryption in multi-client environment without trusted authority

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]