KR20210054146A - 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 - Google Patents
발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 Download PDFInfo
- Publication number
- KR20210054146A KR20210054146A KR1020190139894A KR20190139894A KR20210054146A KR 20210054146 A KR20210054146 A KR 20210054146A KR 1020190139894 A KR1020190139894 A KR 1020190139894A KR 20190139894 A KR20190139894 A KR 20190139894A KR 20210054146 A KR20210054146 A KR 20210054146A
- Authority
- KR
- South Korea
- Prior art keywords
- group
- group member
- polynomial
- signing
- value
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3255—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0825—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3257—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using blind signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/26—Testing cryptographic entity, e.g. testing integrity of encryption key or encryption algorithm
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/42—Anonymization, e.g. involving pseudonyms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
본 발명은 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 에 관한 것이다.
본 발명에 따른 분산화된 그룹 서명 방법은 (a) 그룹 서명 방법의 구성 요소 및 각 그룹 멤버가 생성하고 공유하는 정보를 정의하는 시스템 초기 설정 단계와, (b) 그룹 멤버 초기 설정 단계와, (c) 새로운 그룹 멤버를 그룹에 추가시키는 그룹 멤버 참여 단계와, (d) 특정 메시지에 그룹 서명을 하는 그룹 서명 단계와, (e) 그룹 서명을 검증하는 단계와, (f) 특정 그룹 멤버에게 서명된 그룹 서명으로부터 그룹 구성원의 동의를 얻어 익명성을 제거하는 단계; 및 (g) 특정 그룹 멤버를 그룹 구성원의 동의를 얻어 추방하는 단계를 포함하고, 그룹 매니저의 독자적 권한을 그룹 멤버들이 분할하여 가지는 것을 특징으로 한다.
본 발명에 따른 분산화된 그룹 서명 방법은 (a) 그룹 서명 방법의 구성 요소 및 각 그룹 멤버가 생성하고 공유하는 정보를 정의하는 시스템 초기 설정 단계와, (b) 그룹 멤버 초기 설정 단계와, (c) 새로운 그룹 멤버를 그룹에 추가시키는 그룹 멤버 참여 단계와, (d) 특정 메시지에 그룹 서명을 하는 그룹 서명 단계와, (e) 그룹 서명을 검증하는 단계와, (f) 특정 그룹 멤버에게 서명된 그룹 서명으로부터 그룹 구성원의 동의를 얻어 익명성을 제거하는 단계; 및 (g) 특정 그룹 멤버를 그룹 구성원의 동의를 얻어 추방하는 단계를 포함하고, 그룹 매니저의 독자적 권한을 그룹 멤버들이 분할하여 가지는 것을 특징으로 한다.
Description
본 발명은 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법에 관한 것이다.
그룹 서명(Group signature) 방법은 서명 주체의 익명성을 제공하기 위해 널리 사용되고 있다.
그룹 서명 방법에서는 일반적으로 그룹 구성원(Group members)이 모두 신뢰하는 그룹의 대표자(Group manager)가 있어서, 대표자를 통해 키(key)를 생성하고, 새로운 멤버를 참여시키거나 서명의 익명성을 제거하여 누가 서명을 했는지 밝혀낼 수 있다.
그룹 서명 방법은 그룹 대표자에게 집중되는 권한을 분산화하여, 공동의 합의를 통해 그룹이 운영될 수도 있도록 발전되어 왔으며, 예를 들어 새로운 멤버를 참여시키거나 서명의 익명성을 제거할 때 그룹 멤버간의 합의를 필요로 하는데 (t, n) 임계 속성을 가진다.
(t, n) 임계 속성은 총 n개의 구성원 중 t개 이상 구성원의 동의를 필요로 한다.
개인의 신원 증명, 학위 및 재직 증명, 특정 사실 혹은 자격에 대한 증명을 위해 디지털 인증 시스템이 사용된다.
특히, 개인의 프라이버시 보호와 증명서의 안전성을 위해 익명 인증서 시스템(anonymous credential system)이 활발히 연구되었고 IBM의 IdeMix(Identity Mixer) 또는 Microsoft의 U-Prove 등이 개발되어 사용되고 있다.
익명 인증서 시스템은 인증서의 부분적인 정보를 숨기거나 가공하여 증명에 이용할 수 있고 대상자(Identity owner)를 가명화(pseudonym)하여 신원 증명 발행인 및 검증자를 통해 식별되는 것을 방지한다.
익명 인증서 시스템은 사용자의 선택에 의해 인증서의 속성을 부분적으로 증명할 수 있지만 인증서를 발행한 발행인은 검증자에게 노출이 될 수 밖에 없다.
이러한 인증서 시스템에서는 검증자가 인증서를 발행한 발행인에 대한 신뢰를 바탕으로 하기 때문에 근본적으로 발행인의 식별이 필요하다.
하지만 발행인의 식별은 때로는 프라이버시 문제점으로 나타날 수 있다.
특히, 블라인드 심사/채용과 같은 상황에서 학위 증명을 할 경우에 쉽게 문제점을 살펴볼 수 있다.
예를 들어, 지원자가 A대학에서 학사학위를 받은 졸업생이라면 A대학으로부터 학사학위증명서를 발급받을 수 있다.
그런데 발급받은 학위증명서를 "학사학위를 보유하고 있다는 사실" 만을 증명하기 위해 검증자에게 제출하더라도, 검증자는 A대학이 인증서(학위증명서)를 발급했다는 사실을 알게 된다.
사용자가 학위를 받은 학교를 노출하고 싶지 않더라도, 검증자는 발행인(A대학)에 대한 신뢰 없이는 인증서 내용의 진위를 확인할 수 없으므로 발행인의 노출은 필수불가결하다.
이러한 문제점을 해결하기 위해서는 발행인이 연합체를 구성하고, 검증자는 발행인 연합체에 대한 신뢰를 바탕으로 인증서를 검증할 수 있다.
예를 들어, 대학교는 대학 연합체를 만들어서 인증서를 대학 연합체의 서명을 이용하여 발급하고, 검증자는 대학 연합체에 대한 신뢰를 바탕으로 서명된 인증서의 내용을 확인할 수 있다.
특히, 이러한 연합체를 구성할 때 연합체의 대표자를 두어 연합체 구성원의 추가, 탈퇴 등의 권한을 주게 되면 대표자에게 권한이 집중되는 문제가 생기기 때문에, 대표자 없이 대표자의 권한을 연합체의 구성원이 나누어가지는 방법은 이러한 시스템의 보안성을 향상시킬 수 있다.
본 발명은 전술한 문제점을 해결하기 위하여 제안된 것으로, 그룹 매니저(대표)가 독자적으로 가지고 있는 권한을 분할하여 그룹 멤버들이 가지도록 함으로써, 인증서 시스템에 활용되어 발행인의 익명성을 보장하는 것이 가능한 분산화된 그룹 서명 방법을 제공하는데 그 목적이 있다.
본 발명에 따른 분산화된 그룹 서명 방법은 (a) 그룹 서명 방법의 구성 요소 및 각 그룹 멤버가 생성하고 공유하는 정보를 정의하는 시스템 초기 설정 단계와, (b) 그룹 멤버 초기 설정 단계와, (c) 새로운 그룹 멤버를 그룹에 추가시키는 그룹 멤버 참여 단계와, (d) 특정 메시지에 그룹 서명을 하는 그룹 서명 단계와, (e) 그룹 서명을 검증하는 단계와, (f) 특정 그룹 멤버에게 서명된 그룹 서명으로부터 그룹 구성원의 동의를 얻어 익명성을 제거하는 단계; 및 (g) 특정 그룹 멤버를 그룹 구성원의 동의를 얻어 추방하는 단계를 포함하고, 그룹 매니저의 독자적 권한을 그룹 멤버들이 분할하여 가지는 것을 특징으로 한다.
본 발명에 따르면, 대표자가 없이도 그룹 멤버의 합의를 통해 그룹 매니저의 역할을 수행할 수 있는 분산화된 그룹 서명 기법을 제공하는 효과가 있다.
본 발명에 따르면, 각 그룹 멤버가 신뢰 기관 또는 신뢰하는 특정 멤버를 통하지 않고 초기 설정이 가능하므로 안전성이 뛰어나며, 인증서 시스템에 활용되어 발행인의 익명성을 제공하는 인증서 시스템으로 확장 가능한 효과가 있다.
본 발명의 효과는 이상에서 언급한 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법을 도시한다.
도 2 내지 도 4는 본 발명의 실시예에 따른 그룹 멤버 초기 설정 단계를 도시한다.
도 5 및 도 6은 본 발명의 실시예에 따른 그룹 멤버 참여 단계를 도시한다.
도 7 내지 도 9는 본 발명의 실시예에 따른 그룹 서명 단계를 도시한다.
도 10은 본 발명의 실시예에 따른 그룹 서명 검증 단계를 도시한다.
도 11은 본 발명의 실시예에 따른 그룹 멤버 익명성 제거 단계를 도시한다.
도 12는 본 발명의 실시예에 따른 그룹 멤버 익명성 제거 단계 및 그룹 멤버 추방 단계를 포함한다.
도 13 및 도 14는 본 발명의 실시예에 따른 익명 인증 시스템 내 프로토콜 흐름에 대해 설명한다.
도 15는 본 발명의 실시예에 따른 익명 인증 시스템 관련 파라미터를 도시한다.
도 16은 본 발명의 실시예에 따른 익명 인증 시스템 관련 파라미터의 사이즈를 도시한다.
도 17 내지 도 19는 본 발명의 실시예에 따른 그룹 멤버, 사용자, 검증자 간의 흐름을 도시한다.
도 2 내지 도 4는 본 발명의 실시예에 따른 그룹 멤버 초기 설정 단계를 도시한다.
도 5 및 도 6은 본 발명의 실시예에 따른 그룹 멤버 참여 단계를 도시한다.
도 7 내지 도 9는 본 발명의 실시예에 따른 그룹 서명 단계를 도시한다.
도 10은 본 발명의 실시예에 따른 그룹 서명 검증 단계를 도시한다.
도 11은 본 발명의 실시예에 따른 그룹 멤버 익명성 제거 단계를 도시한다.
도 12는 본 발명의 실시예에 따른 그룹 멤버 익명성 제거 단계 및 그룹 멤버 추방 단계를 포함한다.
도 13 및 도 14는 본 발명의 실시예에 따른 익명 인증 시스템 내 프로토콜 흐름에 대해 설명한다.
도 15는 본 발명의 실시예에 따른 익명 인증 시스템 관련 파라미터를 도시한다.
도 16은 본 발명의 실시예에 따른 익명 인증 시스템 관련 파라미터의 사이즈를 도시한다.
도 17 내지 도 19는 본 발명의 실시예에 따른 그룹 멤버, 사용자, 검증자 간의 흐름을 도시한다.
본 발명의 전술한 목적 및 그 이외의 목적과 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.
그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 목적, 구성 및 효과를 용이하게 알려주기 위해 제공되는 것일 뿐으로서, 본 발명의 권리범위는 청구항의 기재에 의해 정의된다.
한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자가 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가됨을 배제하지 않는다.
본 발명의 실시예에 따르면, 키 생성 등의 그룹 구성원에 대한 초기 절차, 새로운 멤버의 참여나 탈퇴 절차, 서명의 익명성 제거 절차 등 모든 절차에 있어서, 신뢰해야 할 그룹 대표자 없이 구성원 간의 동의로 그룹 서명이 가능하며, 본 발명의 실시예에 따른 분산화된 그룹 서명 방법은 신원 증명 시스템에 활용성이 높다.
이하에서는, 분산화된 그룹 서명 방법 및 분산화된 그룹 서명 방법을 인증서 시스템에 적용하는 실시예에 대해 설명한다.
이하, 본 발명의 실시예에 따른 분산화된 그룹 서명 방법을 설명한다.
본 발명의 실시예에 따른 분산화된 그룹 서명 방법은 시스템 초기 설정 단계(S110), 그룹 멤버 초기 설정 단계(S120), 그룹 멤버 참여 단계(S130), 그룹 서명 단계(S140), 그룹 서명 검증 단계(S150), 그룹 멤버 익명성 제거 단계(S160) 및 그룹 멤버 추방 단계(S170)를 포함한다.
시스템 초기 설정 단계(S110)에서는, 그룹 서명 기법(group signature scheme)의 구성 요소 및 사전에 공통적으로 또는 각 구성원이 생성/공유하는 정보를 정의한다.
그룹 멤버 초기 설정 단계(S120)에서는, 시스템 초기 설정 후에 각 그룹 멤버가 그룹 서명, 서명 검증, 참여, 추방 등의 절차를 위해 사전에 이루어지는 절차를 게시한다.
그룹 멤버 참여 단계(S130)에서는, 새로운 그룹 멤버가 그룹에 추가될 때 이루어지는 방법을 게시한다.
그룹 서명 단계(S140)에서는, 특정 메시지에 그룹 서명을 하는 방법을 게시한다.
그룹 서명 검증 단계(S150)에서는, 그룹 서명을 검증하는 방법을 게시한다.
그룹 멤버 익명성 제거 단계(S160)에서는, 특정 그룹 멤버에게 서명된 그룹 서명으로부터 그룹 구성원의 동의를 얻어 익명성을 제거하는 방법을 게시한다.
그룹 멤버 추방 단계(S170)에서는, 특정 그룹 멤버를 그룹 구성원의 동의를 얻어 추방하는 방법을 게시한다.
이하, 시스템 초기 설정 단계에 대해 설명한다.
본 발명의 실시예에 따른 그룹 서명 방법은 다음과 같은 설정에서 정의되며, 초기에 공통적으로 그룹 구성원(그룹 멤버)이 알고 있는 값들은 본 발명에서 게시하는 범위를 벗어나 다른 경로를 통해(out-of-band) 각 그룹 구성원이 공유하고 있다고 가정한다.
n: 초기 그룹 멤버의 수
t: 합의에 필요한 정족수
대칭키 암호화/복호화 알고리즘 Ek{}, Dk{} - k는 대칭키
서명 및 서명 검증 알고리즘 Ssk{}, Vpk{} - (sk, pk)는 공개키쌍
해쉬 함수 H{}
커미트먼트 생성 함수 COMM{}
이하, 도 2 내지 도 4를 참조하여, 그룹 멤버 초기 설정 단계에 대해 설명한다.
본 발명의 실시예에 따른 그룹 멤버 초기 설정 단계는 그룹 서명, 서명 검증, 참여, 추방, 익명성 제거 등을 위해 각 그룹 멤버가 다항식을 생성하고 결합하는 초기 설정 과정으로, 각 그룹 멤버 별 다항식 생성 단계, 각 그룹 멤버 별 다항식 검증 데이터 공유 단계, 각 그룹 멤버 별 다항식 값 공유 단계, 각 그룹 멤버 별 다항식 및 검증 데이터 결합 단계 및 결합된 다항식 검증 단계를 포함한다.
각 그룹 멤버 별 다항식 생성 단계에서는, [수학식 1]에 따라 익명성 제거 시 사용되는 다항식을 생성하고, [수학식 2]에 따라 서명 시 사용되는 다항식을 생성한다.
[수학식 1]
[수학식 2]
각 그룹 멤버 별 다항식 검증 데이터 공유 단계에서, [수학식 3]에 따라 다항식 commitment 값을 생성하고, [수학식 4]에 따라 공개 파라미터를 생성하며, [수학식 5[에 따라 공개 파라미터를 공유한다.
[수학식 3]
이는 향후 다항식의 무결성을 확인하기 위한 다항식 commitment값을 생성하는 것이다.
[수학식 4]
이는 신뢰 기관을 분산했기 때문에, 각 그룹 멤버가 공개 파라미터를 생성하는 것이다.
[수학식 5]
전술한 바와 같이, 신뢰 기관을 분산했기 때문에, 본 발명의 실시예에 따르면 각 그룹 멤버가 공개 파라미터를 공유한다.
각 그룹 멤버 별 다항식 값 공유 단계에서, [수학식 6]에 따라 그룹 멤버가 생성한 다항식에 에 대입하여 결과 값을 생성하고 전송하고, [수학식 7]에 따라 각 그룹 멤버가 수신한 값들을 검증한다.
[수학식 6]
이는 그룹 멤버의 블라인드 식별자에 대한 다항식 값을 계산하는 것이다.
[수학식 7]
이는 신뢰 기관을 분산했기 때문에, 각 그룹 멤버로부터 다항식 값을 수신하고 해당 값들을 검증하는 것이다.
각 그룹 멤버 별 다항식 및 검증 데이터 결합 단계에서, 공통의 그룹 파라미터를 생성하기 위해, 각 그룹 멤버는 [수학식 8]에 따라 수신한 값들을 결합한다.
[수학식 8]
결합된 다항식 검증 단계에서는 [수학식 9]에 따라 각 멤버별 결합된 값을 검증한다.
[수학식 9]
이하, 도 5 및 도 6을 참조하여, 그룹 멤버 참여 단계에 대해 설명한다.
본 발명의 실시예에 따른 그룹 멤버 참여 단계는 신규 그룹 멤버가 그룹에 참여하기 위해 각 그룹 멤버와 데이터를 공유하고 다항식을 구성/검증하는 절차로서, 신규 그룹 멤버 참여를 위한 각 그룹 멤버의 데이터 공유 단계, 신규 그룹 멤버 다항식 구성 단계 및 신규 그룹 멤버의 다항식 검증 단계를 포함한다.
공개/공유 파라미터는ynew,XIDnew, yi,XIDi이다.
신규 그룹 멤버 참여를 위한 각 그룹 멤버의 데이터 공유 단계에서, [수학식 10]에 따라 신규 그룹 멤버의 그룹 참여를 요청하고, [수학식 11]에 따라 기존 그룹 멤버의 응답이 이루어진다.
[수학식 10]
[수학식 11]
신규 그룹 멤버 다항식 구성 단계에서, 신규 그룹 멤버가 t 명 이상으로부터 응답을 받을 경우 [수학식 12]에 따라 본인이 그룹 멤버로서 사용할 다항식을 구성하고, 연립방정식을 해결하여 을 구한다.
[수학식 12]
신규 그룹 멤버의 다항식 검증 단계에서, [수학식 13]에 따라 신규 그룹 멤버는 자신이 생성한 다항식을 검증하고, [수학식 14]에 따라 검증 실패의 경우 잘못된 값을 준 그룹 멤버를 특정한다.
[수학식 13]
[수학식 14]
이하, 도 7 내지 도 9를 참조하여, 특정 메시지에 대해 그룹 서명을 하는 그룹 서명 단계에 대해 설명한다.
그룹 서명 단계는 서명 시 필요한 개별 데이터 생성 단계와, 수신한 개별 데이터 검증 단계와, 서명한 인원 확인 시 사용할 다항식 구성 단계와, 수신한 개별 데이터 결합 및 메시지 서명 단계와, 메시지 부분 서명 데이터 전송 단계와, 수신한 부분 서명 데이터 검증 및 서명 값 생성 단계를 포함한다.
서명 시 필요한 개별 데이터 생성 단계에서, 각 그룹 멤버는 [수학식 15]에 따라 임의의 랜덤 값을 선택하고, [수학식 16]에 따라 서명을 구성하기 위해 생성한 개별 서명 데이터를 생성하고, [수학식 17]에 따라 각 그룹 멤버에게 생성된 개별 서명 데이터를 전송한다.
[수학식 15]
[수학식 16]
[수학식 17]
[수학식 18]
서명한 인원 확인 시 사용할 다항식 구성 단계에서는, [수학식 19]에 따라 서명한 인원 확인에 사용할 다항식을 구성한다.
[수학식 19]
수신한 개별 데이터 결합 및 메시지 서명 단계에서는 [수학식 20]에 따라 수신한 개별 데이터를 결합하고, [수학식 21]에 따라 메시지 서명을 수행한다.
[수학식 20]
[수학식 21]
메시지 부분 서명 데이터 전송 단계에서, [수학식 22]에 따라 메시지 서명 데이터를 전송한다.
[수학식 22]
수신한 부분 서명 데이터 검증 및 서명 값 생성 단계에서, [수학식 23]에 따라 수신한 서명 데이터를 검증하고, [수학식 24]에 따라 서명 값을 생성한다.
[수학식 23]
[수학식 24]
이하, 도 10을 참조하여 그룹 서명 검증 단계에 대해 설명한다.
그룹 서명 검증 단계는 [수학식 25]에 따라 서명 값 검증을 위한 계산을 수행하고, [수학식 26]에 따라 메시지 m에 대한 서명을 검증한다.
[수학식 25]
[수학식 26]
이하, 도 11을 참조하여, 그룹 멤버 익명성 제거 단계에 대해 설명한다.
[수학식 27]에 따라, 각 매니저는 t개 이상의 다항식 값을 수신할 경우 이를 통해 다항식을 복구한 뒤 검증한다.
[수학식 27]
[수학식 28]
이하, 도 12를 참조하여 그룹 멤버 추방 단계에 대해 설명한다.
그룹 멤버 추방 단계에서, [수학식 29]에 따라 t명 이상의 그룹 멤버들은 추방 멤버 리스트에 서명하고(은 전술한 그룹 멤버 익명성 제거 단계로부터 획득된다), [수학식 30]에 따라 서명에 같이 참여한 그룹 멤버로서 탈퇴 멤버가 사용한 값을 확인한다.
[수학식 29]
[수학식 30]
이하에서는 전술한 분산화된 그룹 서명 방법을 인증서 시스템에 적용하여, 발행인 익명성을 제공하는 인증서 시스템 구성에 대해 설명한다.
이하에서는, IdeMix 프로토콜에 분산화된 그룹 서명 방법을 적용한 익명 인증 시스템의 프로토콜을 설명하며, 본 발명의 실시예에 따르면 인증서를 발행하는 그룹 멤버의 식별자를 다른 그룹 멤버들이 블라인드 서명한 값을 증명하는 방법을 통해 인증서의 유효성을 증명한다.
1. 이하, 익명 인증 시스템 적용 방안의 개요에 대해 설명한다.
본 발명의 실시예에 따른 익명 인증 시스템은 최초 사용자가 그룹 멤버를 검증하는 로직이 추가된다.
본 발명의 실시예에 따르면, 향후 검증자가 발급자의 유효성을 검증할 수 있도록 하기 위해 사용자는 관련 정보를 속성 값으로 지정한다.
본 발명의 실시예에 따르면, 유효한 그룹 멤버들이 그룹 멤버의 블라인드 식별자에 서명한 값을 익명 인증 시스템 내 참여자에게 증명함으로써 익명 인증 시스템의 발급자 역할을 수행한다.
익명 인증 시스템에서 사용할 키 쌍을 생성한다.
사용자는 그룹 멤버가 유효한 그룹 멤버인지 검증하고, 인증 받고자 하는 속성 중 공개하지 않을 속성에 대한 지식 증명 값을 생성한다.
발급자는 사용자로부터 받은 속성 값을 검증하고, 비공개 속성 값과 공개 속성 값들에 대한 인증서를 발행한다.
사용자는 검증자에게 인증서 제공 전 작업으로서, 인증서를 랜덤화하고 비공개 속성에 대한 증명 데이터를 생성하며, 검증자에게 인증서를 제공한다.
검증자는 유효한 그룹 멤버가 생성한 인증서임을 확인하고, 인증서의 유효성을 검증하고, 필요한 속성 값을 확인한다.
본 발명의 실시예에 따르면, 발행인 익명성 보장을 위해 그룹 성명 도입 시 수정 범위로서, 인증서 발급자가 그룹 멤버임을 증명하는 단계가 추가된 기술적 특징이 있다.
본 발명의 실시예에 따른 블라인드 식별자 서명 처리 옵션으로서, 실시간 서명 처리 방안(옵션 1)에 대해 설명한다.
선행 작업으로서 그룹 멤버 참여 절차를 수행하고, 추가로 블라인드 식별자가 필요할 때마다 그룹 서명 절차를 반복하여 블라인드 식별자를 생성한다.
이 때, 사용자에게 블라인드 식별자의 영지식 증명을 사용하여 인증서를 발급할 경우 다음 사용자의 서명을 위해 새로운 블라인드 식별자 생성하고, 블라인드 식별자를 수신한 그룹 멤버는 해당 값에 서명하여 타 그룹 멤버에게 전송하며, 임계 서명 정책에 따라 유효한 서명을 생성한다.
그룹 멤버들로부터 블라인드 식별자에 유효한 서명 값이 생성될 경우, 이를 활용하여 사용자에게 인증서를 발급한다.
본 발명의 실시예에 따른 블라인드 식별자 서명 처리 옵션으로서, 일괄 서명 처리 방안(옵션 2)에 대해 설명한다.
선행 작업으로서 그룹 멤버 참여 절차 수행하고, 미리 협의한 특정 시점에 일괄적으로 그룹 서명 절차를 수행한다.
이 때, 임의로 정한 시간에 인증서 발급 시 사용될 블라인드 식별자를 대량으로 생성하여 그룹 멤버에게 전달하고, 블라인드 식별자를 수신한 그룹 멤버는 해당 값에 서명하여 타 그룹 멤버에게 전송하며, 임계 서명 정책에 따라 유효한 서명을 생성한다.
그룹 멤버들로부터 블라인드 식별자에 유효한 서명 값이 생성될 경우 이를 활용하여 사용자에게 인증서를 발급한다.
도 13 및 도 14를 참조하여, 익명 인증 시스템 내 프로토콜 흐름에 대해 설명한다.
도 13을 참조하면, IDEMIX의 발급 프로토콜의 참가자들의 입력 값에 대한 개요를 도시하며, 발급자와 수신자의 속성 값은 다를 수 있다.
특히, 발급자는 비밀 데이터들에 대한 어떠한 지식도 알 수 없고, 그룹과 시스템 파라미터는 인증서 구조체에 주어진 참조를 통해 접근할 수 있다.
도 14를 참조하면, 증명 프로토콜에 대한 입력 값은 주로 증명 명세서이다.
증명 명세서는 증명자 측의 인증서를 연결하며 검증자 측의 증명서 구조체와도 연결된다.
검증자는 발급 프로토콜과 같은 애플리케이션 특정 작업에 사용할 수 있는 암호학적 비밀 출력 객체로서 이를 얻는다.
2. 이하, 익명 인증 시스템 적용 방안의 표기법에 대해 설명한다.
아래는 그룹 서명 관련 표기법을 설명한다.
익명 인증 시스템 관련 파라미터 및 설명은 도 15에 도시한 바와 같고, 익명 인증 시스템 관련 파라미터의 사이즈는 도 16에 도시한 바와 같다.
3. 이하, 익명 인증 시스템 적용 방안의 인증서 발행 절차 (발급자/사용자), 인증서 발급 프로토콜에 대해 설명한다.
발급자(issuer)는 sk, 그룹 서명 정보이다.
공통 출력 값으로, The CL-Signature (A, e, v) 또는 프로토콜이 실패한다면 ⊥를 반환한다.
Round 0
Round 0은 그룹 멤버를 인증하기 위한 절차로써 발급자 익명성 보장과 함께 사용자/검증자가 발급자가 유효한 그룹 멤버임을 검증하는 단계이다.
핵심은 해당 블라인드 식별자가 그룹 서명을 받은 것인지와 발급자의 블라인드 식별자에 대한 영지식 증명을 검증하는 것이다.
본 검증이 의미하는 바는 그룹 멤버 중 정족수가 동의한 사용자의 블라인드 식별자임을 증명하고, 실제 인증서를 발급하는 발급자는 해당 블라인드 식별자의 소유자임을 확인하는 것이다.
0.5 사용자 : 아래의 내용을 검증함
발급자가 사용자가 보낸 값을 사용하여 c를 생성하였는지 검증함
0.6 발급자와 사용자 : S로부터 속성 구조체 A를 불러옴
Round 1
에서, 향후 검증자가 발급자의 유효성을 검증하기 위해 사용자는 자신의 속성에 그룹 멤버의 블라인드 식별자를 삽입하고 발급자 역시 자신이 사용하고 있는 블라인드 식별자가 해당 위치에 속성 값이 있는지 검증한다.
1.3 사용자 : non-interactive proof
1.3.1 (U'의 표현에 대한 지식 증명)
1.3.2 (커밋 값의 지식 증명)
1.3.3 (도전 값)
1.3.4 (응답 값)
1.3.5 (출력)
Round 2(서명 생성)
2.1 발급자는 P1을 검증한다.
2.1.1 (U의 표현(representation))
2.1 발급자는 P1을 검증한다.
2.1.3 (검증)
2.1.4 (길이 점검)
길이 점검이 실패한다면, 인증서 발급 프로토콜을 중단하고 ⊥를 반환한다.
2.2 발급자는 속성들에 대해 CL 서명을 생성한다.
2.3 발급자는 아래와 같이 정확성 증명 데이터(proof of correctness)를 생성한다.
Round 3
3.3 사용자 P2를 검증한다.
4. 이하, 익명 인증 시스템 적용 방안의 인증서 업데이트 절차 (발급자/사용자)에 대해 설명한다.
Round 1
1.3 발급자는 업데이트 파일로부터 이전에 저장한 객체를 불러온다.
1.4 발급자는 속성에 대해 CL 서명을 생성한다.
1.4.1 랜덤 소수를 선택한다.
1.5 발급자는 아래와 같은 정확성 증명 데이터(proof of correctness )을 생성한다.
Round 2
2.1 사용자는 업데이트 파일로부터 이전에 저장된 객체를 불러온다.
2.2 사용자는 P2를 검증한다.
5. 이하, 익명 인증 시스템 적용 방안의 증명데이터 생성 절차(사용자)에 대해 설명한다.
증명데이터 검증 방법은 증명 생성 프로토콜 실행에 따라 모든 하위 프로토콜(CL 서명 증명 프로토콜, AND 연산 증명 데이터 생성 프로토콜, … etc)을 수행하여 해당 프로토콜의 T 값에 해당되는 값을 계산하는 단계와, 도전(Challenge) c 값을 생성하는 단계와, c 값을 활용하여 모든 하위 프로토콜의 S 값을 계산하는 단계 및 검증자에게 증명 데이터를 전송하는 단계를 포함한다.
는 인증서,는 커밋먼트(commitments), 는 표현(representations), 는 가명(pseudonyms), 는 도메인 가명(domain pseudonyms), 는 검증 가능한 암호화(verifiable encryptions), 는 메시지(messages), 는 안에 명시된 술부의 집합, 는 노출된 식별자의 집합, 는 노출되지 않는 식별자의 집합, 는 검증자로부터 발생된 논스이다.
0. 설정
1. t 값을 계산한다.
1.1 에 있는 각 는 적절한 하위 증명 프로토콜을 호출한다. 각 하위 증명 프로토콜은 t 값을 저장하기 위해 목록 T에 접근하고, 공통 값을 저장하기 위해 목록 Common에 접근한다. 하위 증명 프로토콜은 단계 0.1로부터 생성된 랜담 값에 접근할 수 있다. 본 발명에서는, 부분 프로토콜이 증명이 끝날 때까지 (i.e., t와 s값이 완료될 때까지) 상태를 유지한다고 가정한다.
2. 도전을 계산한다.
2.1 도전(challenge) c:
3. 응답을 계산한다.
4. 증명 데이터를 출력한다.
이하, CL 서명 증명 프로토콜에 대해 설명한다.
CL 서명 증명 프로토콜은 자신이 소유한 인증서를 랜덤화한 상태에서 유효한 인증서임을 증명한다.
1. 서명을 랜덤화시킨다.
2. t 값을 계산한다.
이하, AND 연산자 증명 데이터 생성 프로토콜에 대해 설명한다.
입력은 PrimeEncodePredicate p (with AND operator), [c]이고, 출력은 만약 라면, 두 개의 t값과 공통 값을 출력하고 아니면 두 개의 s값을 출력한다.
1. m 에 커밋한다(커밋먼트 계산).
2. t값을 계산한다.
2.1 랜덤 정수를 선택한다.
2.2 아래와 같이 계산한다.
이하, NOT 연산자 증명 데이터 생성 프로토콜에 대해 설명한다.
입력은 PrimeEncodePredicate p (with NOT operator), [c]이고, 출력은 만약 라면 하나의 t 값과 공통 값을 출력하고 아니면 세 개의 s 값을 출력한다.
1. m에 커밋하고 지수를 계산한다.
2. t 값을 계산한다.
이하, 부등 증명 데이터 생성 프로토콜에 대해 설명한다. 이는 <, ≤,>,≥ 연산자에 대한 증명 프로토콜이다.
1. 증명 데이터 설정 (Proof setup)
1.1 정의
그리고
2. t 값을 계산한다.
3. s 값을 계산한다.
이하, 커밋먼트 증명 데이터 생성 프로토콜에 대해 설명한다.
1. t 값을 계산한다.
1.1 랜덤 정수를 선택한다.
2. 응답 값을 계산한다.
이하, 표현(Representation) 증명 데이터 생성 프로토콜에 대해 설명한다.
표현(Representation)은 일반적으로 커밋먼트의 베이스(bases)는 공개키로 구성되지만, 해당 베이스를 임의로 선정하였다면 이를 표현 (Representation) 라고 부른다.
이하, 가명(Pseudonyms)/도메인 가명(Domain Pseudonyms) 증명 데이터 생성 프로토콜에 대해 설명한다.
입력은 nym and/or dNym, NymPredicate and/or DomNymPredicate p, [c]이고, 출력은 만약 라면 하나의 t 값을 출력하고 아니면 하나의 s 값을 출력한다.
1. t 값을 출력한다.
1.1 랜덤 정수 값을 선택한다.
(발급자 검증 시 사용되는 속성 값들로 사용자의 가명 정보를 포함한 속성 값의 인덱스 번호가 변경됨)
2. s 값을 생성하고 출력한다.
이하, 검증 가능한 암호 증명 데이터 생성 프로토콜에 대해 설명한다. 이는 속성 검증 가능한 암호화 된 값의 증명 프로토콜이다.
1. t 값을 계산한다.
1.1 랜덤 정수를 선택한다.
1.2 아래와 같이 계산한다.
술부(predicate) p는 공개키를 포함한다.
암호문(u, v, e)과 랜덤값 r 은 증명자가 로드한다.
6. 이하, 익명 인증 시스템 적용 방안의 증명데이터 검증 절차(검증자)에 대해 설명한다.
이하, 증명 데이터 검증 프로토콜에 대해 설명한다. 이는 사용자로부터 받은 증명 데이터를 검증하는 알고리즘이다.
1.1 각 술부(predicate) 는 적절한 하위 검증 프로토콜을 호출한다. 각 하위 검증자는 Common으로 부터 적절한 공통 값과 값을 저장하기 위해 목록 에 접근한다. 하위 검증 프로토콜은 s 값들에 접근할 수 있다.
2. 검증 도전(verfication challenge)를 계산한다.
3. 도전 값이 같은지 확인한다.
이하, CL 서명 데이터 검증 프로토콜에 대해 설명한다.
사용자로부터 받은 증명서가 유효한 증명서임을 확인하는 프로토콜
1. 아래와 같이 계산한다.
2. 길이를 검증한다.
이하, AND 연산자 증명 데이터 검증 프로토콜에 대해 설명한다. AND 연산자 증명 데이터의 유효성을 판단한다.
1. 아래와 같이 계산한다.
2. 길이를 검증한다.
이하, NOT 연산자 증명 데이터 검증 프로토콜에 대해 설명한다. NOT 연산자 증명 데이터의 유효성을 판단한다.
1. 아래와 같이 계산한다.
2. 길이를 검증한다.
이하, 부등 증명 데이터 검증 프로토콜에 대해 설명한다. <, ≤,>,≥ 연산자에 대한 증명 검증 프로토콜이다.
2. t값을 계산한다.
2.1 아래의 값을 계산한다.
2.3 아래의 값을 계산한다.
이하, 커밋먼트 증명 데이터 검증 프로토콜에 대해 설명한다.
1. 아래의 값을 계산한다.
이하, 가명(Pseudonyms)/도메인 가명(Domain Pseudonyms) 증명 데이터 검증 프로토콜에 대해 설명한다.
1. 아래의 값을 계산한다.
(발급자 검증 시 사용되는 속성 값들로 사용자의 가명 정보를 포함한 속성 값의 인덱스 번호가 변경됨)
이하, 검증 가능한 암호 증명 데이터 검증 프로토콜에 대해 설명한다. 속성 검증 가능한 암호화 된 값의 증명 검증 프로토콜이다.
1. 아래의 값을 계산한다.
7. 기타
도 17 내지 도 19는 그룹 멤버, 사용자, 검증자 간의 흐름을 도시한다.
한편, 본 발명의 실시예에 따른 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법은 컴퓨터 시스템에서 구현되거나, 또는 기록매체에 기록될 수 있다. 컴퓨터 시스템은 적어도 하나 이상의 프로세서와, 메모리와, 사용자 입력 장치와, 데이터 통신 버스와, 사용자 출력 장치와, 저장소를 포함할 수 있다. 전술한 각각의 구성 요소는 데이터 통신 버스를 통해 데이터 통신을 한다.
컴퓨터 시스템은 네트워크에 커플링된 네트워크 인터페이스를 더 포함할 수 있다. 프로세서는 중앙처리 장치(central processing unit (CPU))이거나, 혹은 메모리 및/또는 저장소에 저장된 명령어를 처리하는 반도체 장치일 수 있다.
메모리 및 저장소는 다양한 형태의 휘발성 혹은 비휘발성 저장매체를 포함할 수 있다. 예컨대, 메모리는 ROM 및 RAM을 포함할 수 있다.
따라서, 본 발명의 실시예에 따른 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법은 컴퓨터에서 실행 가능한 방법으로 구현될 수 있다. 본 발명의 실시예에 따른 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법이 컴퓨터 장치에서 수행될 때, 컴퓨터로 판독 가능한 명령어들이 본 발명에 따른 그룹 서명 방법을 수행할 수 있다.
한편, 상술한 본 발명에 따른 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터로 판독 가능한 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이제까지 본 발명의 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
Claims (15)
- (a) 그룹 서명 방법의 구성 요소 및 각 그룹 멤버가 생성하고 공유하는 정보를 정의하는 시스템 초기 설정 단계;
(b) 그룹 멤버 초기 설정 단계;
(c) 새로운 그룹 멤버를 그룹에 추가시키는 그룹 멤버 참여 단계;
(d) 특정 메시지에 그룹 서명을 하는 그룹 서명 단계;
(e) 그룹 서명을 검증하는 단계;
(f) 특정 그룹 멤버에게 서명된 그룹 서명으로부터 그룹 구성원의 동의를 얻어 익명성을 제거하는 단계; 및
(g) 특정 그룹 멤버를 그룹 구성원의 동의를 얻어 추방하는 단계
를 포함하고, 그룹 매니저의 독자적 권한을 그룹 멤버들이 분할하여 가지는 것을 특징으로 하는 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제1항에 있어서,
상기 (a) 단계에서 상기 그룹 멤버는 초기 그룹 멤버수, 합의에 필요한 정족수, 그룹 멤버의 공개키, 해쉬 함수, 커미트먼트 생성 함수를 알고 있으며, 공개키쌍 및 식별자쌍을 생성하고 공개 값을 상호 공유하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제1항에 있어서,
상기 (b) 단계는 각 그룹 멤버 별 다항식 생성 단계, 각 그룹 멤버 별 다항식 검증 데이터 공유 단계, 각 그룹 멤버 별 다항식 값 공유 단계, 각 그룹 멤버 별 다항식 및 검증 데이터 결합 단계 및 결합된 다항식 검증 단계를 포함하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제3항에 있어서,
상기 각 그룹 멤버 별 다항식 생성 단계는 익명성 제거 시 사용되는 다항식 및 서명 시 사용되는 다항식을 생성하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제3항에 있어서,
상기 각 그룹 멤버 별 다항식 검증 데이터 공유 단계는 다항식의 무결성을 확인하기 위한 다항식 커밋먼트 값을 생성하고, 각 그룹 멤버가 공개 파라미터를 생성하고 공유하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제3항에 있어서,
상기 각 그룹 멤버 별 다항식 값 공유 단계는 그룹 멤버의 블라인드 식별자에 대한 다항식 값을 계산하고, 해당 값을 검증하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제3항에 있어서,
상기 각 그룹 멤버 별 다항식 및 검증 데이터 결합 단계는 공통의 그룹 파라미터 생성을 위해 각 그룹 멤버가 생성한 값들을 결합하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제1항에 있어서,
상기 (c) 단계는 신규 그룹 멤버 참여를 위한 각 그룹 멤버의 데이터 공유 단계, 신규 그룹 멤버 다항식 구성 단계 및 신규 그룹 멤버의 다항식 검증 단계를 포함하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제8항에 있어서,
상기 신규 그룹 멤버 참여를 위한 각 그룹 멤버의 데이터 공유 단계는 익명 인증 시스템과 연동하기 위한 그룹 멤버 식별자를 이용하여 신규 그룹 멤버의 그룹 참여 요청이 이루어지면, 기존 그룹 멤버의 응답이 수행되는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제8항에 있어서,
상기 신규 그룹 멤버 다항식 구성 단계는 신규 그룹 멤버가 기설정 기준 이상의 멤버로부터 응답을 받을 경우 본인이 그룹 멤버로서 사용할 다항식을 구성하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제10항에 있어서,
상기 신규 그룹 멤버의 다항식 검증 단계는 상기 신규 그룹 멤버가 자신이 생성한 다항식을 검증하되, 검증 실패의 경우 잘못된 값을 준 그룹 멤버를 특정하는 것
인 분산화된 그룹 서명 방법.
- 제1항에 있어서,
상기 (d) 단계는 서명 시 필요한 개별 데이터 생성 단계, 수신한 개별 데이터 검증 단계, 서명한 인원 확인 시 사용할 다항식 구성 단계, 수신한 개별 데이터 결합 및 메시지 서명 단계, 메시지 부분 서명 데이터 전송 단계, 수신한 부분 서명 데이터 검증 및 서명 값 생성 단계를 포함하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제12항에 있어서,
상기 서명 시 필요한 개별 데이터 생성 단계는 각 그룹 멤버가 임의의 랜덤 값을 선택하고, 서명 구성을 위해 생성한 개별 서명 데이터를 생성하며, 각 그룹 멤버에게 생성된 개별 서명 데이터를 전송하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제1항에 있어서,
상기 (f) 단계는 이상 그룹 멤버의 정보를 공유하고, 각 매니저는 다항식을 복구한 뒤 검증하여 사용자 정보를 확인하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
- 제14항에 있어서,
상기 (g) 단계는 상기 (f) 단계에서 밝혀진 그룹 멤버를 추방하되, 기설정 수 이상의 그룹 멤버가 추방 멤버 리스트에 서명하고, 추방 멤버가 사용한 값을 확인하는 것
인 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190139894A KR102372718B1 (ko) | 2019-11-05 | 2019-11-05 | 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 |
US17/088,998 US11750404B2 (en) | 2019-11-05 | 2020-11-04 | Decentralized group signature scheme for credential systems with issuer anonymization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190139894A KR102372718B1 (ko) | 2019-11-05 | 2019-11-05 | 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210054146A true KR20210054146A (ko) | 2021-05-13 |
KR102372718B1 KR102372718B1 (ko) | 2022-03-11 |
Family
ID=75688064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190139894A KR102372718B1 (ko) | 2019-11-05 | 2019-11-05 | 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11750404B2 (ko) |
KR (1) | KR102372718B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102435349B1 (ko) * | 2021-11-05 | 2022-08-23 | 주식회사 스마트엠투엠 | 프라이빗 블록체인 기반의 비식별화된 센싱 데이터 처리 방법 및 시스템 |
KR102439195B1 (ko) * | 2022-05-03 | 2022-08-31 | 세종대학교산학협력단 | 다중 서명 생성 방법 및 시스템과 이를 수행하기 위한 컴퓨팅 장치 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6981472B2 (ja) * | 2017-08-22 | 2021-12-15 | 日本電信電話株式会社 | 合意システム、合意装置、プログラム、および記録媒体 |
EP4049406A1 (en) * | 2019-10-23 | 2022-08-31 | "Enkri Holding", Limited Liability Company | Method and system for anonymous identification of a user |
CN114172668B (zh) * | 2022-02-10 | 2022-07-05 | 亿次网联(杭州)科技有限公司 | 一种基于数字证书的群成员管理方法和系统 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7543139B2 (en) * | 2001-12-21 | 2009-06-02 | International Business Machines Corporation | Revocation of anonymous certificates, credentials, and access rights |
KR100537514B1 (ko) * | 2003-11-01 | 2005-12-19 | 삼성전자주식회사 | 그룹 구성원의 신원 정보를 기반으로 한 전자 서명 방법및 전자 서명을 수행한 그룹 구성원의 신원 정보를획득하기 위한 방법 및 그룹 구성원의 신원 정보를기반으로 한 전자 서명 시스템 |
DE102005004611A1 (de) * | 2005-02-01 | 2006-08-10 | Siemens Ag | Verfahren und Vorrichtung zur Kontrolle von Netzelementen in einem dezentralen Netzwerk |
US20100122080A1 (en) | 2008-11-11 | 2010-05-13 | Electronics And Telecommunications Research Institute | Pseudonym certificate process system by splitting authority |
KR101543711B1 (ko) | 2011-10-11 | 2015-08-12 | 한국전자통신연구원 | 짧은 서명을 제공하는 경량 그룹서명 방법 및 장치 |
FR3003713B1 (fr) | 2013-03-25 | 2016-10-07 | Morpho | Signature de groupe utilisant un pseudonyme |
GB2552453A (en) * | 2016-05-23 | 2018-01-31 | Maidsafe Found | Method of creating a data chain in a data structure that can be cryptographically proven to contain valid data |
GB201711878D0 (en) * | 2017-07-24 | 2017-09-06 | Nchain Holdings Ltd | Computer - implemented system and method |
US11115193B2 (en) * | 2017-12-29 | 2021-09-07 | Intel Corporation | Technologies for internet of things key management |
EP3769463A1 (en) * | 2018-03-22 | 2021-01-27 | Communication Security Group Inc. | Decentralised communication system and method |
WO2020033216A2 (en) * | 2018-07-31 | 2020-02-13 | Oded Wertheim | Scaling and accelerating decentralized execution of transactions |
JP2022538697A (ja) * | 2019-03-20 | 2022-09-05 | デフィニティ スティフトゥング | ブラインド識別情報を有する分散ネットワーク |
US11451406B2 (en) * | 2019-04-04 | 2022-09-20 | Moac Blockchain Tech Inc | Cross-chain messaging and message validation |
US11973884B2 (en) * | 2019-05-27 | 2024-04-30 | Nippon Telegraph And Telephone Corporation | Anonymous signature system, signature generation apparatus, anonymous signature generation apparatus, verification apparatus, anonymous signature method and program |
EP3957025B1 (en) * | 2020-07-03 | 2022-12-28 | Alipay (Hangzhou) Information Technology Co., Ltd. | System and method for providing privacy and security protection in blockchain-based private transactions |
-
2019
- 2019-11-05 KR KR1020190139894A patent/KR102372718B1/ko active IP Right Grant
-
2020
- 2020-11-04 US US17/088,998 patent/US11750404B2/en active Active
Non-Patent Citations (3)
Title |
---|
NASIMA BEGUM et al., Efficiency Improvement in Group Signature Scheme with Probabilistic Revocation, Journal of Information Processing Vol.27 (2019.09.) * |
WANG Xiao-Ming, Distributed and Dynamic Threshold Group Signature Scheme, 2008 11th IEEE Singapore International Conference on Communication Systems (2008.11.19.) * |
Yisen Cao et al., Decentralized Group Signature Scheme based on Blockchain, International Conference on Communications, Information System and Computer Engineering (CISCE), (2019.07.05.) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102435349B1 (ko) * | 2021-11-05 | 2022-08-23 | 주식회사 스마트엠투엠 | 프라이빗 블록체인 기반의 비식별화된 센싱 데이터 처리 방법 및 시스템 |
KR102439195B1 (ko) * | 2022-05-03 | 2022-08-31 | 세종대학교산학협력단 | 다중 서명 생성 방법 및 시스템과 이를 수행하기 위한 컴퓨팅 장치 |
Also Published As
Publication number | Publication date |
---|---|
US11750404B2 (en) | 2023-09-05 |
US20210135879A1 (en) | 2021-05-06 |
KR102372718B1 (ko) | 2022-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110391911B (zh) | 区块链匿名投票系统及方法 | |
KR102372718B1 (ko) | 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 | |
JP5468157B2 (ja) | 公開鍵を検証可能に生成する方法及び装置 | |
US7590850B2 (en) | Digital signature method based on identification information of group members, and method of acquiring identification information of signed-group member, and digital signature system for performing digital signature based on identification information of group members | |
US8650403B2 (en) | Crytographic method for anonymous authentication and separate identification of a user | |
US8930704B2 (en) | Digital signature method and system | |
JP5205398B2 (ja) | 鍵認証方式 | |
US9882890B2 (en) | Reissue of cryptographic credentials | |
Smyth et al. | Direct Anonymous Attestation (DAA): Ensuring privacy with corrupt administrators | |
US10846372B1 (en) | Systems and methods for trustless proof of possession and transmission of secured data | |
JP2008503966A (ja) | 匿名証明書呈示に関する匿名証明書 | |
WO2017195886A1 (ja) | 認証システム、認証方法およびプログラム | |
Morrissey et al. | The TLS handshake protocol: A modular analysis | |
CN112380584B (zh) | 区块链数据更新方法、装置、电子设备和存储介质 | |
CN113360943A (zh) | 一种区块链隐私数据的保护方法及装置 | |
WO2019110399A1 (en) | Two-party signature device and method | |
MacKenzie et al. | Threshold password-authenticated key exchange | |
JP2023539432A (ja) | しきい値署名 | |
EP1090478B1 (en) | A method for preventing key share attacks | |
JP3513324B2 (ja) | ディジタル署名処理方法 | |
CN110278073B (zh) | 一种群组数字签名、验证方法及其设备和装置 | |
CN111314059A (zh) | 账户权限代理的处理方法、装置、设备及可读存储介质 | |
Byun | PDAKE: a provably secure PUF-based device authenticated key exchange in cloud setting | |
CN110572257B (zh) | 基于身份的数据来源鉴别方法和系统 | |
Abraham | An abuse-free optimistic contract signing protocol with multiple TTPs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |