KR20090008162A - An apparatus and method for direct anonymous attestation from bilinear maps - Google Patents

An apparatus and method for direct anonymous attestation from bilinear maps Download PDF

Info

Publication number
KR20090008162A
KR20090008162A KR1020080069771A KR20080069771A KR20090008162A KR 20090008162 A KR20090008162 A KR 20090008162A KR 1020080069771 A KR1020080069771 A KR 1020080069771A KR 20080069771 A KR20080069771 A KR 20080069771A KR 20090008162 A KR20090008162 A KR 20090008162A
Authority
KR
South Korea
Prior art keywords
group
key
anonymous
trusted
private
Prior art date
Application number
KR1020080069771A
Other languages
Korean (ko)
Other versions
KR101004829B1 (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
Priority claimed from US11/778,804 external-priority patent/US8078876B2/en
Application filed by 인텔 코오퍼레이션 filed Critical 인텔 코오퍼레이션
Publication of KR20090008162A publication Critical patent/KR20090008162A/en
Application granted granted Critical
Publication of KR101004829B1 publication Critical patent/KR101004829B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • 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

Abstract

An apparatus and a method for direct anonymous attestation from bilinear maps are provided to verify a group digital signature of a member by using a public key of a reliable membership group, thereby verifying that a verifier of a digital signature is an actual member of the reliable membership group. A reliable membership group includes at least one reliable hardware device. The reliable membership group is generated as a member device(310). A group public/private key pair about a platform group including one or more public parameters of a process block are generated(320). An issuer generates a group membership certificate including security-related information and the public parameters(340). When the group public/private keys are generated, each member device of a reliable group is verified(350).

Description

이선형 맵들로부터의 직접적인 익명의 증명을 위한 장치 및 방법{AN APPARATUS AND METHOD FOR DIRECT ANONYMOUS ATTESTATION FROM BILINEAR MAPS}Apparatus and Method for Direct Anonymous Proof from Bilinear Maps {AN APPARATUS AND METHOD FOR DIRECT ANONYMOUS ATTESTATION FROM BILINEAR MAPS}

본 발명의 하나 이상의 실시예들은 일반적으로 암호(cryptography)의 분야에 관한 것이다. 보다 구체적으로, 본 발명의 하나 이상의 실시예들은 이선형 맵들로부터의 직접적인 익명의 증명을 위한 방법 및 장치들에 관한 것이다.One or more embodiments of the present invention generally relate to the field of cryptography. More specifically, one or more embodiments of the present invention relate to methods and apparatuses for direct anonymous proof from bilinear maps.

많은 현대 통신 시스템들에서, 교환된 정보의 신뢰성 및 보안성은 중요한 관심사이다. 이러한 관심사를 다루기 위해, TCPA(Trusted Computing Platform Alliance)는 플랫폼들에 대한 보안 솔루션들을 개발했다. 2002년 2월 22일에 또는 그 근처에 공개된, "Main Specification Version 1.1b"의 제목을 가진 TCPA 사양에서에 따라, 각각의 개인용 컴퓨터(PC)는 신뢰받는 플랫폼 모듈(Trusted Platform Module, TPM)으로서 지칭되는 신뢰받는 하드웨어 디바이스를 이용하여 구현된다.In many modern communication systems, the reliability and security of the exchanged information is an important concern. To address this concern, the Trusted Computing Platform Alliance (TCPA) has developed security solutions for the platforms. In accordance with the TCPA specification entitled "Main Specification Version 1.1b" published on or near February 22, 2002, each personal computer (PC) is a trusted platform module (TPM). It is implemented using a trusted hardware device referred to as.

동작 동안, 외부자(outside party)("입증자(verifier)"로서 지칭됨)는 TPM의 인증을 요청할 수 있다. 이는 2개의 반대되는 보안 관심사들을 생성한다. 우선, 입증자는 요청된 인증 정보가 유효한(valid) TPM으로부터 실제 나온다는 것을 확인(sure)할 필요가 있다. 두번째, TPM을 포함하는 PC의 소유자는 가능한 한 프라 이버시를 유지하기를 원한다. 특히, PC의 소유자는, 인증 정보가 동일한 TPM으로부터 나오는 것을 결정할 수 있는 그러한 입증자들 없이, 인증 정보를 상이한 입증자들에게 제공할 수 있기를 원한다.During operation, an outside party (referred to as "verifier") may request authentication of the TPM. This creates two opposing security concerns. First, the prover needs to ensure that the requested authentication information actually comes from a valid TPM. Second, the owner of the PC, including the TPM, wants to maintain privacy as much as possible. In particular, the owner of the PC wants to be able to provide authentication information to different attestors without such attestors who can determine that the authentication information comes from the same TPM.

2005년의 리얼 ID 법(REAL ID ACT)은, (2005년 5월 11일) 2005년 제정된, Pub. L. No. 109-13, 119 Stat.231, 국방에 대한 긴급 추가세출 예산안 , 테러에 대한 국제 전쟁, 및 쓰나미 구제((Emergency Supplemental Appropriations Act for Defense, the Global War on Terror, and Tsunami Relief, 2005, Pub. L. No. 109-13, 119 Stat.231)의 제목을 가진 미의회 법의 B 부분(division B)이다. 2005년의 리얼 ID 법은 주 운전 면허증(state driver's license)들의 발행에 대한 표준을 생성한다. 리얼 ID 법은, 대다수가 연방 정부의 현재 역량을 넘어서는, 주 운전 면허증 및 신분증명 카드들에 대한 연방 기술 표준들 및 입증 절차들을 강요하고, 2008년 5월까지 주 승낙(state compliance)을 명령하는 법이다.The REAL ID ACT of 2005 was issued in Pub. L. No. 109-13, 119 Stat.231, Emergency Supplementary Appropriations for Defense, International War on Terrorism, and Tsunami Relief (Emergency Supplemental Appropriations Act for Defense, the Global War on Terror, and Tsunami Relief, 2005, Pub.L. Division B of Congress Act, titled No. 109-13, 119 Stat. 231. The Real ID Act of 2005 creates a standard for issuance of state driver's licenses. The Real ID Act enforces federal technical standards and verification procedures for state driver's license and identification cards, the majority of which exceed the current capabilities of the federal government, and state compliance by May 2008. How to order

주 운전 면허증들에 대해 리얼 ID 법을 이행하는 하나의 시도는, 일반적으로 카드의 소유자(holder)의 개인적인 민감한 정보를 노출시킨다. 공교롭게도, 그러한 보안 정보는 종종 소유자들의 동의없이, 팔리고, 소유자의 이름이지만, 소유자들의 동의없이 부정 행위(fraudulent transaction)들을 이행하는데 이용된다. 그러한 행위는 일반적으로 신원(identity) 도용으로서 알려져 있고, 이는 매일 선의의 희생자(innocent victim)들의 신용을 훼손하는 널리 알려진 현상이다.One attempt to implement Real ID law for state driver's licenses generally exposes personal sensitive information of the card's holder. Unfortunately, such security information is often sold without the owner's consent, but used to perform fraudulent transactions without the owner's consent. Such behavior is generally known as identity theft, a widely known phenomenon that undermines the credibility of innocent victims every day.

이선형 맵들로부터의 직접적인 익명의 증명을 위한 방법 및 장치가 기술된다. 일 실시예에서, 방법은 발행자에 의해 정의된 신뢰받는 멤버쉽 그룹에 대한 공개/개인 키 쌍의 생성; 및 발행자에 의해 정의된 신뢰받는 멤버쉽 그룹의 적어도 하나의 익명의 멤버 디바이스에, 고유 비밀 서명 키를 할당하는 것을 포함한다. 일 실시예에서, 할당된 서명 키를 이용하여, 멤버는, 그룹 디지털 서명을 형성하기 위해 인증 요청으로서 수신된 메세지에 서명(sign)할 수 있다. 일 실시예에서, 멤버의 그룹 디지털 서명은, 신뢰받는 멤버쉽 그룹의 공개 키를 이용하여 입증될 수 있다. A method and apparatus for direct anonymous proof from bilinear maps is described. In one embodiment, the method includes generating a public / private key pair for a trusted membership group defined by the issuer; And assigning a unique secret signature key to at least one anonymous member device of the trusted membership group defined by the issuer. In one embodiment, using the assigned signature key, the member may sign a message received as an authentication request to form a group digital signature. In one embodiment, the group digital signature of the member may be verified using the public key of the trusted membership group.

결과로서, 그룹 디지털 서명의 입증자는, 멤버가 신뢰받는 멤버 디바이스가 입증자에 대해 익명성을 유지할 수 있도록, 멤버의 임의의 고유 신분증명 정보 또는 고유 개인 또는 공개 멤버 키의 노출을 요구하지 않고, 신뢰받는 멤버쉽 그룹의 실제(신뢰받는) 멤버인 것을 인증할 수 있다.As a result, the prover of the group digital signature does not require the disclosure of any unique identification information or unique private or public member key of the member, such that the member can remain anonymous to the prover, You can authenticate that you are a real (trusted) member of a trusted membership group.

일 실시예에서, 익명의 하드웨어 디바이스는, 비밀(개인) 서명 키를 형성하는 발행자가 신뢰받는 멤버쉽 그룹의 멤버가 되도록, 증명(결합) 절차에 관여한다. 일 실시예에서, 멤버 디바이스는 개인 서명 키를 가진 메세지를 디지털로 서명하기 위해 TPM(Trusted Platform Module)을 포함한다. 일 실시예에 대해, 개인 서명 키를 형성하고 메세지를 디지털로 서명하는 TPM의 기능은 펌웨어로서 전개된 다(deployed). 그러나, 그러한 기능은 전용 하드웨어 또는 소프트웨어로서 전개될 수 있다는 것이 고려된다. 펌웨어 또는 소프트웨어를 형성하는 명령어들 또는 코드가 머신-판독가능한 매체에 저장된다.In one embodiment, the anonymous hardware device participates in the attestation (combination) procedure such that the issuer forming the secret (private) signing key is a member of the trusted membership group. In one embodiment, the member device includes a Trusted Platform Module (TPM) to digitally sign a message with a private signature key. For one embodiment, the TPM's ability to form a private signing key and digitally sign a message is deployed as firmware. However, it is contemplated that such functionality may be deployed as dedicated hardware or software. Instructions or code that form firmware or software are stored on a machine-readable medium.

여기에서, "머신-판독가능한 매체"는, 플로피 디스켓, 하드 디스크, 광 디스크(예를 들어, CD-ROM들, DVD들, 미니-DVD들 등), 자기-광 디스크, ROM(read-only menory), RAM(read access momory)과 같은 반도체 메모리, 임의의 타입의 프로그램가능한 ROM(예를 들어, "PROM(programmable ROM)", "EPROM(erasable programmable ROM)", "EEPROM(electrically erasable programmable ROM)" 또는 플래시), 자기 또는 광 카드들 등을 포함할 수 있지만, 이들에 한정되지 않는다. 소프트웨어는 다운로드된 신호의 부분으로서 또는 통신 링크를 통한 전파 동안, 일시적으로 저장될 수 있기 때문에, 신호 자체 및/또는 통신 링크가 머신-판독가능한 매체로서 간주될 수 있다는 것이 고려된다.Here, "machine-readable media" includes floppy diskettes, hard disks, optical disks (eg, CD-ROMs, DVDs, mini-DVDs, etc.), magnetic-optical disks, read-only (ROM) menory), semiconductor memory such as read access momory (RAM), any type of programmable ROM (e.g., "programmable ROM" (PROM), "erasable programmable ROM" (EPROM), "electrically erasable programmable ROM" ) Or flash)), magnetic or optical cards, and the like. It is contemplated that the signal itself and / or the communication link may be considered as a machine-readable medium, as the software may be stored temporarily as part of the downloaded signal or during propagation over the communication link.

다음의 설명에서, 소정의 용어는 본 발명의 하나 이상의 실시예들의 소정의 특징을 설명하는데 이용된다. 예로서, "플랫폼"은 정보를 전송하고 수신하도록 구성된 임의의 타입의 통신 디바이스로서 정의된다. 다양한 플랫폼들의 예들은, 컴퓨터들, PDA(personal digital assistants), 셀룰러 전화들, 셋톱 박스들, 팩시밀리 머신들, 프린터들, 모뎀들, 라우터들, 스마트 카드들, USB 토큰들, 신분증명 카드, 면허증, 신용 카드 또는 집적 회로를 포함하는 다른 유사 형태 요소 디바이스 등을 포함하지만, 이들에 한정되거나 제한되지 않는다. "통신 링크"는 플랫폼에 적용된 하나 이상의 정보-전송 매체들로서 광범위하게 정의된다. 다양한 타입들의 통신 링크들의 예들은, 전기 와이어(들), 광 섬유(들), 케이블(들), 버스 트레이스(trace)(들) 또는 무선 신호 기술을 포함하지만, 이들에 한정되거나 제한되지 않는다.In the following description, certain terminology is used to describe certain features of one or more embodiments of the invention. By way of example, “platform” is defined as any type of communication device configured to transmit and receive information. Examples of various platforms include computers, personal digital assistants, cellular telephones, set top boxes, facsimile machines, printers, modems, routers, smart cards, USB tokens, identity cards, licenses , Other similar form element devices including credit cards or integrated circuits, and the like. A "communication link" is broadly defined as one or more information-transmission media applied to a platform. Examples of various types of communication links include, but are not limited to, electrical wire (s), optical fiber (s), cable (s), bus trace (s), or wireless signal technology.

"입증자(verifier)"는 다른 엔티티(entity)로부터의 인증 또는 권한에 대한 일부 입증을 요청하는 임의의 엔티티(예를 들어, 사람, 플랫폼, 시스템, 소프트웨어 및/또는 디바이스)를 지칭한다. 통상, 이것은 요청된 정보를 기재하거나 제공하기 전에 수행된다. "증명자(prover)"는 그의 권한, 유효성(validity), 및/또는 신원(identity)에 대한 일부 증명을 제공하도록 요구되는 임의의 엔티티를 지칭한다. "증명자"는 증명자가 개인 서명 키를 이용하여 메세지를 서명함으로써 인증 요청에 응답할 때, "서명자(signer)"로 간주될 수 있다. "발행자(issuer)"는 신뢰받는 멤버쉽 그룹을 정의하고, 하드웨어 디바이스들을 신뢰받는 멤버쉽 그룹에 결합(join)시키는데 이용한다. "증명 제조자(certifying manufacturer)"와 서로 교환하여 이용될 수 있는 "디바이스 제조자"는, 플랫폼 또는 디바이스(예를 들어, TPM)를 제조하거나 구성하는 임의의 엔티티를 지칭한다. 발행자는 디바이스/증명 제조자일 수 있다."Verifier" refers to any entity (eg, person, platform, system, software and / or device) that requests some proof of authorization or authorization from another entity. Typically, this is done before describing or providing the requested information. "Prover" refers to any entity that is required to provide some proof of its authority, validity, and / or identity. A "certifier" can be considered a "signer" when the prover responds to the authentication request by signing a message using a private signature key. An "issuer" defines a trusted membership group and uses it to join hardware devices to the trusted membership group. A “device manufacturer”, which may be used interchangeably with a “certifying manufacturer,” refers to any entity that manufactures or configures a platform or device (eg, a TPM). The issuer may be a device / certification manufacturer.

본원에 이용된 바와 같이, 증명자가 일부 암호 정보의 소유권(possession) 또는 지식을 갖는 입증자를 "증명"하거나 또는 "확신"하는 것은, 입증자에게 공개된 정보 및 증거(proof)에 기초하여, 증명자가 암호 정보를 가질 높은 확률이 존재한다는 것을 의미한다. 입증자에게 암호 정보를 "노출"시키거나 또는 "공개"하지 않고 입증자에게 이를 증명하는 것은, 입증자에게 공개된 정보에 기초하여, 입증자 가 암호 정보를 결정하는 것이 계산적으로 불가능하다는 것을 의미한다. 이하에서, 이러한 증거들은 직접 증거들로서 지칭된다.As used herein, an attestor “proving” or “confirming” a prover having the ownership or knowledge of some cryptographic information is based on the information and proof disclosed to the attestor. It means that there is a high probability of having self password information. Proving it with or without "exposing" cryptographic information to the prover means that it is computationally impossible for the prover to determine the cryptographic information based on the information disclosed to the prover. do. In the following, these evidences are referred to as direct evidence.

이후에 설명된 다양한 실시예들의 설명 및 도시(illumination) 전체에, 계수들, 변수들 및 다른 심볼들(예를 들어, "h")이 동일한 라벨 또는 이름으로서 참조된다. 따라서, 상이한 방정식들 또는 기능적 설명뿐만 아니라 방정식의 상이한 부분들에 심볼이 나타난 경우, 동일한 심볼이 참조된다.Throughout the description and illumination of the various embodiments described below, coefficients, variables, and other symbols (eg, “h”) are referenced as the same label or name. Thus, when a symbol appears in different parts of the equation as well as in different equations or functional descriptions, the same symbol is referenced.

도 1은 일 실시예에 따른, 신뢰받는 하드웨어 디바이스("신뢰받는 플랫폼 모듈" 또는 "TPM"으로 지칭됨)로 구현된 플랫폼을 특징하는(featuring) 시스템(100)을 도시한다. 제1 플랫폼(102)(입증자)은 네트워크(120)를 통해 제2 플랫폼(200)(증명자)에게 인증 요청(106)을 송신한다. 요청(106)에 응답하여, 제2 플랫폼(200)은 인증 정보(108)를 제공한다. 일 실시예에서, 네트워크(120)는, 회사 인트라넷, 인터넷 또는 다른 유사 네트워크와 같은, 로컬 또는 광대역 네트워크, 및/또는 종래 네트워크 인프라구조의 부분을 형성한다.1 illustrates a system 100 featuring a platform implemented as a trusted hardware device (referred to as a "trusted platform module" or "TPM"), according to one embodiment. The first platform 102 (certifier) sends an authentication request 106 to the second platform 200 (certifier) via the network 120. In response to the request 106, the second platform 200 provides the authentication information 108. In one embodiment, network 120 forms part of a local or broadband network, such as a corporate intranet, the Internet, or other similar network, and / or a conventional network infrastructure.

부가적으로, 강조된 보안에 대해, 제1 플랫폼(102)은 증명자 플랫폼(200)이 선택된 디바이스 제조자 또는 선택된 디바이스 제조자들(본원에서 이후 "디바이스 제조자(들)(발행자)(110)"로서 지칭됨)의 그룹 중 어느 하나에 의해 제조된다는 것을 입증할 필요가 있을 수 있다. 일 실시예에서, 제1 플랫폼(102)은 제2 플랫폼(200)에게, 제2 플랫폼이 발행자(110)에 의해 생성된 암호 정보(예를 들어, 개인 서명 키)를 갖는다는 것을 나타낼 것을 요구한다. 제2 플랫폼(200)은, 응답의 형태로, 본원에 "고유한, 디바이스 신분증명 정보"로서 지칭되는 암호 정보 또는 임 의의 디바이스/플랫폼 신분증명 정보를 드러내지 않고, 제2 플랫폼(200)이 발행자(110)에 의해 생성된 암호 정보를 갖는다는 것을 제1 플랫폼(102)에게 확신시키기 위해, 인증 정보를 제공함으로써 그 요구에 응답하여, 신뢰받는 멤버 디바이스가 입증자에 대해 익명성을 유지할 수 있도록 한다.Additionally, for emphasized security, the first platform 102 refers to the authenticator platform 200 as the selected device manufacturer or selected device manufacturers (hereafter referred to as "device manufacturer (s) (issuer) 110"). It may be necessary to demonstrate that it is produced by any one of In one embodiment, the first platform 102 requires the second platform 200 to indicate that the second platform has cryptographic information (eg, a personal signature key) generated by the issuer 110. do. The second platform 200 does not reveal any cryptographic information or any device / platform identification information, referred to herein as “unique, device identification information,” in the form of a response, wherein the second platform 200 is a publisher. In order to assure the first platform 102 that it has cryptographic information generated by 110, in response to the request by providing authentication information, the trusted member device may remain anonymous to the prover. do.

도 2는 TPM(220)과 동일 그룹에 있는 TPM들 모두에 대해 공통인 그룹 멤버쉽 증명서(certificate)를 갖는 TPM(220), 및 그룹 멤버쉽 증명서를 이용하여 입증될 수 있는 디지털 서명을 제공하는 개인 메모리 키를 포함하는 익명의 플랫폼(200)의 실시예를 더 도시하는 블록도이다. 일 실시예에서, 플랫폼(200)에 결합된 TPM(220)은, 신뢰받는 플랫폼(200)이 입증자(102)에 대해 익명성을 유지할 수 있도록, 개인 고유 서명 키를 포함하는 임의의 고유 디바이스 신분증명 정보의 공개없이, 플랫폼(200)이 발행자(110)(예를 들어, 디바이스 제조자)에 의해 정의된 신뢰받는 멤버쉽 그룹의 멤버이라는 것을 입증자에게 증명하기 위해, 개인 고유 서명 키(230)를 이용하여 인증 정보를 생성한다(도 1). 대표적으로, 컴퓨터 시스템(200)은 프로세서(CPU)(202)와 칩셋(210) 사이에서 정보를 통신하기 위해 프로세서 시스템 버스(프론트측 버스(front side bud(FSB))(204)를 포함한다. 본원에 설명된 바와 같이, 용어 "칩셋"은 CPU(202)에 연결된 다양한 디바이스들을 집합적으로 기재하는 방식에 이용되어, 원하는 시스템 기능을 수행한다.2 shows a TPM 220 having a group membership certificate common to both the TPM 220 and TPMs in the same group, and a personal memory providing digital signatures that can be verified using the group membership certificate. A block diagram further illustrates an embodiment of an anonymous platform 200 that includes a key. In one embodiment, the TPM 220 coupled to the platform 200 may include any unique device that includes a private unique signature key so that the trusted platform 200 can remain anonymous to the attestor 102. Without unique disclosure of identity information, the private signing key 230 is used to prove to the prover that the platform 200 is a member of a trusted membership group defined by the issuer 110 (eg, device manufacturer). Generate authentication information using (FIG. 1). Representatively, computer system 200 includes a processor system bus (front side bud (FSB) 204) for communicating information between processor (CPU) 202 and chipset 210. As described herein, the term “chipset” is used in a manner to collectively describe the various devices connected to the CPU 202 to perform the desired system functions.

대표적으로, 하드 드라이브 디바이스들(HDD)(214) 및 주 메모리(212)뿐만 아니라 그래픽 블록(218)은 칩셋(210)에 연결된다. 일 실시예에서, 그래픽 블록(218)은 그래픽 칩셋을 포함하거나, 선택적으로, 칩셋(210)은 그래픽 블록(218) 을 포함하여 그래픽 메모리 제어기 허브(GMCH)로서 동작할 수 있다. 일 실시예에서, 칩셋(210)은 메모리 제어기 및/또는 입출력(I/O) 제어기를 포함하여 I/O 디바이스들(216)(216-1, ..., 216-N)과 통신하도록 구성된다. 일 실시예에서, 주 메모리(212)는 RAM, DRAM, SRAM(static RAM), SDRAM(synchronous DRAM), DDR(double data rate) SDRAM(DDR-SDRAM), RDRAM(Rambus DRAM) 또는 데이터의 고속 버퍼링을 지원할 수 있는 임의의 디바이스를 포함할 수 있지만, 이들에 한정되지 않는다.Representatively, graphics block 218 as well as hard drive devices (HDD) 214 and main memory 212 are connected to chipset 210. In one embodiment, graphics block 218 may include a graphics chipset, or optionally, chipset 210 may include graphics block 218 to operate as a graphics memory controller hub (GMCH). In one embodiment, chipset 210 is configured to communicate with I / O devices 216 (216-1, ..., 216-N), including a memory controller and / or an input / output (I / O) controller. do. In one embodiment, main memory 212 includes RAM, DRAM, static RAM (SRAM), synchronous DRAM (SDRAM), double data rate (DDR) SDRAM (DDR-SDRAM), Rambus DRAM (RDRAM), or high-speed buffering of data. It may include any device that can support, but is not limited to these.

도 3은 일 실시예에 따른, 제2 플랫폼(200)의 신뢰받는 플랫폼 모듈(TPM)(220)을 더 도시한다. TPM(220)은 디바이스 제조자에 의해 제조된 암호 디바이스이다. 일 실시예에서, TPM(220)은 패키지 내에 인캡슐된 작은 양의 온-칩(on-chip) 메모리를 갖는 프로세서 유닛(222)을 포함한다. 일 실시예에서, 인캡슐된 메모리는 발행자(110)와의 결합 절차 동안 생성된 개인 고유 멤버쉽 키(230)을 저장하는데 이용될 수 있다. TPM(220)은, 유효한 TPM으로부터 인증 정보가 전송되는 것을 결정할 수 있는 제1 플랫폼(102)에게 인증 정보를 제공하도록 구성된다. 이용된 인증 정보는 TPM 또는 제2 플랫폼의 신분증명이 매우 쉽게 결정될 수 있도록 구성되는 랜덤화된 데이터이다.3 further illustrates a trusted platform module (TPM) 220 of the second platform 200, according to one embodiment. TPM 220 is a cryptographic device manufactured by a device manufacturer. In one embodiment, the TPM 220 includes a processor unit 222 having a small amount of on-chip memory encapsulated in a package. In one embodiment, the encapsulated memory may be used to store the personal unique membership key 230 generated during the association procedure with the issuer 110. The TPM 220 is configured to provide authentication information to the first platform 102 that can determine that authentication information is to be sent from a valid TPM. The authentication information used is randomized data that is configured such that the identification of the TPM or the second platform can be very easily determined.

일 실시예에서, TPM(220)은 하나 이상의 키들, 해쉬(hash) 값들, 서명들, 증명서들 등과 같은 암호 정보의 저장을 허여하는 비휘발성 메모리(224)(예를 들어, 플래시)를 더 포함한다. 일 실시예에서, 암호 정보는 예를 들어, 증명 제조자와 같은 발행자(110)로부터 수신된 개인 서명 키이다. 아래 나타낸 바와 같이, "X"의 해쉬 값은 "Hash(X)"로서 나타낼 수 있다. 물론, 그러한 정보는 플래시 메모 리(224) 대신에 플랫폼(200)의 외부 메모리(280) 내에 저장될 수 있다는 것이 고려된다. 암호 정보는 특히, TPM(220) 밖에 저장된다면, 암호화될 수 있다.In one embodiment, TPM 220 further includes non-volatile memory 224 (eg, flash) that allows storage of cryptographic information, such as one or more keys, hash values, signatures, certificates, and the like. do. In one embodiment, the cryptographic information is a personal signature key received from an issuer 110, such as, for example, a proof manufacturer. As shown below, the hash value of "X" may be represented as "Hash (X)". Of course, it is contemplated that such information may be stored in the external memory 280 of the platform 200 instead of the flash memory 224. Cryptographic information may be encrypted, especially if stored outside the TPM 220.

일 실시예에서, TPM(220)은 입증자 플랫폼으로부터의 인증 요청에 응답하는 인증 로직(240)을 포함한다. 일 실시예에서, 인증 로직(240)은 개인 서명 키(230)를 이용하여 수신된 메세지에 따른 디지털 서명을 연산(compute)하여, TPM(220)이, 임의의 고유 디바이스/플랫폼 신분증명 정보를 노출하지 않고, 신뢰받는 멤버쉽 그룹의 발행자에 의해 생성된 암호 정보를 저장한다는 것을, 입증자 플랫폼에게 확신시키거나 또는 증명한다. 결과로서, 인증 로직(240)은 플랫폼(200)의 익명성을 유지하기 위해 증명자 플랫폼의 신원(identity)을 보존하면서 요청된 인증을 수행한다. 인증 로직(240)은 도 4를 참조하여 더 도시된다.In one embodiment, TPM 220 includes authentication logic 240 that responds to an authentication request from an attestor platform. In one embodiment, the authentication logic 240 computes the digital signature according to the received message using the private signature key 230 so that the TPM 220 may generate any unique device / platform identification information. Convince or prove to the prover platform that it does not expose and stores cryptographic information generated by the issuer of the trusted membership group. As a result, the authentication logic 240 performs the requested authentication while preserving the identity of the prover platform to maintain the anonymity of the platform 200. Authentication logic 240 is further illustrated with reference to FIG. 4.

일 실시예에서, 증명 로직(certification logic)(250)은 개인 서명 키(230)의 발행자와의 1회의(one-round) 증명 절차 동안 개인 서명 키(230)를 형성한다. 일 실시예에서, 서명 로직(260)은 입증자로부터의 인증 요청의 부분으로서 수신된 메세지에 서명할 수 있다. 대표적으로, 폐기된 키 로직(revoked key logic)(270)은 플랫폼(200)에 의해 보유된 개인 서명 키(230)의 개인 멤버 키 컴포넌트가 폐기된(손상된(compromised)) 개인 멤버 키가 아니라는 것을 입증자 플랫폼에게 확신시키거나 증명한다. 대안적인 실시예에서, 개인 서명 키가 폐기된 서명 키가 아닌 것에 대한 입증이 입증자에 의해 수행된다. 상술된 것보다 더 적거나 더 많이 갖춘(equipped) 컴퓨터가 소정의 구현들에 대해 바람직할 수 있다는 것이 이해된다.In one embodiment, certification logic 250 forms personal signature key 230 during a one-round verification procedure with issuer of personal signature key 230. In one embodiment, signature logic 260 may sign the received message as part of an authentication request from an attestor. Typically, revoked key logic 270 indicates that the private member key component of the private signature key 230 held by the platform 200 is not a revoked (compromised) private member key. Convince or prove the prover platform. In an alternative embodiment, verification is performed by the verifier that the private signature key is not a revoked signature key. It is understood that a computer having fewer or more than described above may be desirable for certain implementations.

일 실시예에서, 신뢰받는 멤버쉽 그룹의 멤버인 각각의 하드웨어 디바이스는 발행자에 의해 고유한 개인 서명 키가 할당된다. 대표적으로, 할당된 개인 서명 키를 갖는 신뢰받는 멤버 디바이스는, 입증자로부터의 인증 요청의 부분으로서 수신된 메세지에 서명할 수 있다. 그러나, 종래 디지털 서명 시스템과 반대로, 멤버 디바이스의 고유한 개인 서명 키를 이용하여 생성된 그룹 디지털 서명의 입증은, 발행자에 의해 정의된 신뢰받는 멥버쉽 그룹에 대한 그룹 공개 키를 이용하여 입증된다. 신뢰받는 멤버쉽 그룹의 멤버 디바이스는, 그의 개인 서명 키를 이용하여, 고유 디바이스 신분증명 정보의 공개를, 디바이스가 증명 제조자로서 정의될 수 있는 신뢰받는 하드웨어 디바이스들의 신뢰받는 멤버쉽 그룹의 멤버라는 표시로 제한한다.In one embodiment, each hardware device that is a member of a trusted membership group is assigned a unique private signature key by the issuer. Typically, a trusted member device with an assigned personal signature key can sign a received message as part of an authentication request from an attestor. However, in contrast to conventional digital signature systems, the verification of a group digital signature generated using the unique private signature key of the member device is verified using the group public key for the trusted membership group defined by the issuer. A member device of a trusted membership group, using its private signature key, restricts the disclosure of unique device identification information to an indication that the device is a member of a trusted membership group of trusted hardware devices that can be defined as an attestation manufacturer. do.

일 실시예에서, 인증 로직(240)은 그가 그의 신분증명에 대한 임의의 정보를 드러내지 않고 그룹의 멤버인 것을 증명할 수 있도록 한다. 그룹의 멤버는 그룹의 멤버쉽을 증명하는데 이용될 수 있는 신임장(credential)("그룹 멤버쉽 증명서")를 갖는다. 일 실시예에서, 신임장들은 개인 멤버 키 및 그룹 멤버쉽 증명서로 구성된다. 개인 서명 키는 그룹의 상이한 멤버 마다 고유하고, 각각의 멤버는 발행자에게 알려지지 않은 멤버의 개인 멤버 키로서 비밀 랜덤 값을 선택한다. 그러나, 신뢰받는 멤버쉽 그룹의 그룹 공개 키는 그룹의 모든 멤버들에 대해 동일하다.In one embodiment, authentication logic 240 allows him to prove that he is a member of the group without revealing any information about his identification. Members of a group have a credential ("group membership certificate") that can be used to prove the group's membership. In one embodiment, the credentials consist of a private member key and a group membership certificate. The private signature key is unique for different members of the group, and each member selects a secret random value as the member's private member key unknown to the issuer. However, the group public key of the trusted membership group is the same for all members of the group.

본원에 설명된 바와 같이, 발행자(110)와 같은 발행자는, 사람(또는 엔티티)이 그룹의 멤버임을 수립(establish)하여 그 후, 멤버의 개인 서명 키를 형성하는데 이용되는 신임장을 멤버에게 발행하는 엔티티이다. 본원에 더 설명된 바와 같이, 증명자는 그룹 내에서 멤버쉽을 증명하기 위해 노력하는 사람 또는 엔티티이 다. 증명자가 그룹의 실제 멤버이고 유효한 신임장을 갖고 있다면, 증명은 성공적일 것이다. 본원에 더 설명된 바와 같이, 입증자는 증명자가 그룹의 멤버인지 아닌지를 확인하기 위해 노력하는 엔티티이다. 따라서, 증명자는 입증자에게 멤버쉽을 증명하기 위해 노력한다.As described herein, an issuer, such as issuer 110, establishes that a person (or entity) is a member of a group and then issues a credential to the member that is used to form the member's private signature key. It is an entity. As further described herein, an attestor is a person or entity who strives to prove membership in a group. If the prover is a real member of the group and has valid credentials, the proof will be successful. As further described herein, an attestor is an entity that strives to verify whether the attestor is a member of a group. Therefore, the prover tries to prove membership to the prover.

도 4에 나타낸 바와 같이, 멤버쉽을 증명하기 위해, 입증자는, 증명자가 예를 들어, 디지털 서명 로직(260)에서 일부 메세지들에 디지털로 서명할 것을 요청한다. 메세지가 현재 서명되었는지 입증자가 알 필요가 있다면, 그 때 입증자는 증명자에게 주어진 랜덤 값(임시)을 생성하여 서명에 포함시킨다. 증명자는 개인 서명 키를 이용하여 메세지에 서명하여 입증자에게 그 서명을 송신한다. 본원에 설명된 바와 같이, 그러한 서명은, 그것이 신뢰받는 멤버쉽 그룹의 공개된, 그룹 공개 키로서 입증됨에 따라 그룹 디지털 서명으로서 지칭된다.As shown in FIG. 4, to prove membership, an attestor requests that the attestor digitally sign some messages, eg, in digital signature logic 260. If the prover needs to know if the message is currently signed, then the prover generates a random value (temporary) given to the prover and includes it in the signature. The prover signs the message using the private signature key and sends the signature to the prover. As described herein, such a signature is referred to as a group digital signature as it is verified as a public, group public key of a trusted membership group.

일 실시예에서, 입증자는 그룹 공개 키를 이용하여 서명을 입증할 수 있고, 증명이 성공하면, 입증자는 증명자가 신뢰받는 그룹의 멤버라는 것을 알게 된다. 임의의 값이 시용되었다면, 입증자는 그룹 서명이 그가 임의의 값을 송신했던 때와 서명이 수신된 때 사이에 생성되었는지 알게 된다. 따라서, 입증자는 그룹의 신뢰받는 멤버들의 익명성을 유지하기 위해, 어떤 멤버가 그룹 디지털 서명을 생성하는지 알지 못한다.In one embodiment, the attestor can verify the signature using the group public key, and if the attestation is successful, the attestor knows that the attestor is a member of a trusted group. If any value is used, the verifier knows whether the group signature was generated between when he sent the random value and when the signature was received. Thus, the prover does not know which member generates the group digital signature in order to maintain the anonymity of the trusted members of the group.

일 실시예에서, TPM(220)은 PCMCIA 슬롯으로의 삽입을 위한 PCMCIA 카드의 형태 인자를 포함하는 스마트 카드 상에 포함될 수 있거나, 또는 운전자의 면허증, 신분증명 카드, 신용 카드 또는 표준 운전 면허증/신용 카드의 형태 인자(form factor)를 포함하고 본원에 설명된 바와 같이 하나 이상의 암호 절차들을 수행하는 집적 회로를 포함하는 다른 유사 구성과 같은 신분증명 디바이스 상에 포함될 수 있다. 그러나, 소정의 암호 함수들이 플랫폼(200)과 같은 추가 호스트(attached host)에 의해 연산될 수 있다는 것이 이해되어야 한다. 그러한 구성에 따라, 예를 들어, 운전 면허증에 대한 TPM(220)의 이용은, 개인적으로 민감한 정보의 공개 없이, 상기 언급된 바와 같이, 2005년의 리얼 ID 법과 일치할 수 있다.In one embodiment, TPM 220 may be included on a smart card that includes a form factor of a PCMCIA card for insertion into a PCMCIA slot, or may be a driver's license, identification card, credit card or standard driver's license / credit. It may be included on an identification device such as another similar configuration that includes a form factor of the card and includes an integrated circuit that performs one or more cryptographic procedures as described herein. However, it should be understood that certain cryptographic functions may be computed by an attached host, such as platform 200. According to such a configuration, for example, the use of the TPM 220 for a driver's license may be consistent with the Real ID Act of 2005, as mentioned above, without the disclosure of personally sensitive information.

그러한 구성에 따라, 교통부(Department of Motor Vehicles) 또는 DMV는 발행자이고, 그룹 공개 키 및 그룹 발행 개인 키를 생성하는 셉업 절차에 이용된다. 발행자는 공개 키를 공개하고, 그룹 발행 개인 키를 유지한다. 그러한 절차에 따라, 각각의 발행된 운전 면허증에 대해, 발행자에게 알려지지 않은 개인 멤버 키 컴포넌트를 포함하는 발행자로부터의 사용자 개인 서명 키를 제공하는 일반적인 절차가 뒤따른다. 따라서, 그룹 공개 키에 더하여 사용자 개인 서명 키는 본 그룹에 대한 사용자의 신임장이다.According to such a configuration, the Department of Motor Vehicles or DMV is an issuer and is used in the set up procedure for generating a group public key and a group issued private key. The issuer publishes a public key and maintains a group issued private key. According to such a procedure, a general procedure is followed for each issued driver's license to provide a user private signature key from the issuer that includes a private member key component unknown to the issuer. Thus, in addition to the group public key, the user private signature key is the user's credentials to this group.

그러한 실시예에 따르면, 도 4에 도시된 바와 같이, 인증 로직뿐만 아니라 TPM(220)은, 표준 운전 면허증, 신용 카드 또는 은행 머신들을 액세스하기 위한 다른 유사 스마트 카드 디바이스 등의 형태 인자를 갖는 카드 상에 포함되고, 카드의 소유자는, 예를 들어, 발행자(DMV)에게 손상된(compromised) 개인 키들의 복사본을 가질 것을 요청하지 않고, 카드의 소유자가 폐기된 멤버가 아닌 것을 증명하는 입증 절차에 이용될 수 있다.According to such an embodiment, as shown in FIG. 4, in addition to the authentication logic, the TPM 220 may be configured on a card having a form factor such as a standard driver's license, a credit card or other similar smart card device for accessing bank machines. Is included in the card, and the owner of the card, for example, does not request the issuer (DMV) to have a copy of the compromised private keys, but is used in the verification process to prove that the owner of the card is not a retired member. Can be.

도 5는 일 실시예에 따른 신뢰받는 멤버쉽 그룹 공개 키를 형성하는 방 법(400)을 도시하는 흐름도이다. "신뢰받는 멤버쉽 그룹"은 하나 이상의 플랫폼들 또는 디바이스들의 타입들을 포함하도록 발행자에 의해 정의될 수 있다. 예로서, 신뢰받는 멤버쉽 그룹은 그룹 공개 키와 같은, 보안 관련 정보의 공통 요소를 갖는 모든 플랫폼들(멤버들)의 세트일 수 있다. 이러한 보안 관련 정보는 특정 플랫폼 또는 디바이스의 모델 번호 및 제조자를 포함할 수 있다. 각각의 신뢰받는 멤버쉽 그룹에 대해, 발행자는 그 신뢰받는 멤버쉽 그룹에 이용되는 암호 파라미터들을 생성한다. 발행자는, 멤버 디바이스들(예를 들어, 플랫폼(200) 또는 TPM(220))에 의해 수신된 메세지들에 서명하는데 이용되는 결합 절차 동안 개인 서명 키를 생성하여, 디바이스가 신뢰받는 멤버쉽 그룹의 멤버임을 입증자에게 확신시킨다.5 is a flow diagram illustrating a method 400 of forming a trusted membership group public key according to one embodiment. A "trusted membership group" can be defined by an issuer to include types of one or more platforms or devices. By way of example, a trusted membership group may be a set of all platforms (members) that have a common element of security related information, such as a group public key. Such security related information may include the model number and manufacturer of the particular platform or device. For each trusted membership group, the issuer creates cryptographic parameters used for that trusted membership group. The issuer generates a private signing key during the joining procedure used to sign messages received by member devices (eg, platform 200 or TPM 220), so that the device is a member of a trusted membership group. To the prover.

일 실시예에서, 발행자는 멤버 디바이스(블록(310))로서 적어도 하나의 신뢰받는 하드웨어 디바이스를 포함하는 신뢰받는 멤버쉽 그룹을 생성한다. 일 실시예에서, 발행자는 그룹 공개/개인 키 쌍을 생성하기 위해 공개 키 암호 기능(예를 들어, 타원 곡선 암호)을 이용한다. 이는, Bruce Schneier에 의한, John Wiley & Sons; ISBN: 0471117099; 제 2판(1996), Applied Cryptography에 기술된 것들과 같은 잘 알려진 방법들을 이용하여 생성될 수 있다.In one embodiment, the publisher creates a trusted membership group that includes at least one trusted hardware device as a member device (block 310). In one embodiment, the issuer uses a public key cryptography function (eg, elliptic curve cryptography) to generate a group public / private key pair. This is done by Bruce Schneier, John Wiley &Sons; ISBN: 0471117099; It may be generated using well known methods such as those described in the second edition (1996), Applied Cryptography.

발행자는 공개 파라미터들, 신뢰받는 멤버쉽 그룹의 보안 관련 정보를 포함하는 그룹 멤버쉽 증명서를 생성한다. 플랫폼 그룹 공개/개인 키가 생성되면, 신뢰받는 그룹의 각각의 멤버 디바이스의 증명 절차가 수행된다(블록(350)). 증명 프로세스의 일부분으로서, 발행자는 신뢰받는 그룹의 멤버들 또는 디바이스들에 그룹 멤버쉽 증명서를 제공한다. 증명자(예를 들어, 도 1의 제2 플랫폼(200))로부터 입증자로의 그룹 멤버쉽 증명서와 연관된 암호 파라미터들의 분배는, 다수의 방법들로 이뤄질 수 있다. 그러나, 이러한 암호 파라미터들은, 그룹 멤버쉽 증명서가 발행자에 의해 생성되었다는 것을 입증자가 확신하게 되는 그러한 방법으로 입증자에게 분배되어야 한다.The issuer generates a group membership certificate containing public parameters, security related information of the trusted membership group. Once the platform group public / private key is generated, an attestation procedure for each member device of the trusted group is performed (block 350). As part of the attestation process, the issuer provides group membership credentials to members or devices of the trusted group. The distribution of cryptographic parameters associated with the group membership credential from the prover (eg, the second platform 200 of FIG. 1) to the prover can be accomplished in a number of ways. However, these cryptographic parameters should be distributed to the prover in such a way that the prover is assured that the group membership certificate was generated by the issuer.

예로서, 하나의 인정된 방법은 입증자에게 직접 파라미터들을 분배하는 것이다. 다른 인정된 방법은, 하나의 예로서 발행자가, 증명 권한에 의해 서명된 그룹 멤버쉽 중명서를 분배하는 것이다. 이 최후의 방법으로, 증명 권한의 공개 키가 입증자에게 분배되어야 하고, 서명된 그룹 멤버쉽 증명서는 신뢰받는 그룹(증명자 플랫폼)의 각각의 멤버에게 주어질 수 있다. 증명자 플랫폼은 그 후, 입증자에게 서명된 그룹 멤버쉽 증명서를 제공할 수 있다.As an example, one recognized method is to distribute the parameters directly to the prover. Another accepted method is, by way of example, by the issuer distributing a group membership statement signed by the attestation authority. In this last method, the public key of the proof authority must be distributed to the prover, and a signed group membership certificate can be given to each member of the trusted group (certifier platform). The prover platform may then provide the prover with the signed group membership certificate.

도 6은 본 발명에 따른, 도 5의 프로세스 블록(320)의 하나 이상의 공개 파라미터들을 포함하는 플랫폼 그룹에 대한 그룹 공개/개인 키 쌍을 생성하는 방법(322)을 도시하는 흐름도이다. 공개/개인 키 쌍 및 플랫폼 그룹에 대한 플랫폼 파라미터들의 생성은, 멤버 디바이스들이, 임의의 고유한 디바이스 신분증명 정보를 드러내지 않고 신뢰받는 멤버 디바이스들로서 스스로 식별할 수 있도록 한다. 일 실시예에서, 도 6에 대해 설명된 바와 같이, 그룹 공개 파라미터들의 생성은 셋업 프로토콜로서 본원에 언급된다.FIG. 6 is a flowchart illustrating a method 322 of generating a group public / private key pair for a platform group that includes one or more public parameters of process block 320 of FIG. 5, in accordance with the present invention. The generation of platform parameters for the public / private key pair and platform group allows member devices to identify themselves as trusted member devices without revealing any unique device identification information. In one embodiment, as described with respect to FIG. 6, generation of group disclosure parameters is referred to herein as a setup protocol.

일 실시예에서, 하드웨어 제조자(발행자)에 의해 셋업 프로토콜을 이용하여, 발행자에 의해 정의된 신뢰받는 그룹의 각각의 멤버 디바이스에 대한 고유 개인 서명 키를 생성하기 위해, 제조자에 의해 요구되는 공개/개인 키 쌍 및 다른 암호 파 라미터들을 생성하여 멤버 디바이스들을 증명한다.In one embodiment, the public / private required by the manufacturer to generate a unique private signature key for each member device of the trusted group defined by the issuer, using the setup protocol by the hardware manufacturer (issuer). Prove member devices by generating key pairs and other cryptographic parameters.

도 6을 다시 참조하면, 프로세스 블록(324)에서, 발행자는 (q, G, g, GT, gT,e)를 생성하고, 여기서, q는 소수(prime number), G 및 GT는 q 순서 그룹들(groups of order q), e: GxG→GT는 효율적으로 연산할 수 있는 이선형 맵 함수, g는 그룹 G의 발생기, gT는 그룹 GT의 발생기이다. 일 실시예에서, 그룹 디지털 서명은 이선형 맵들에 기초한 증명이 가능하도록 개인 서명 키를 이용하여 생성된다. 예를 들어, 소수 q를 갖는, 2개의 그룹들 G=<g> 및 GT=<gT>이 존재한다는 것을 가정한다. 축퇴되지 않는(non-degenerate) 효율적으로 연산가능한 이선형 맵 e, e:GxG→GT는 다음으로서 정의된 함수이다.Referring back to FIG. 6, in process block 324, the publisher produces (q, G, g, G T , g T , e), where q is the prime number, G and G T are q groups of order q, e: GxG → G T is a bilinear map function that can be efficiently computed, g is the generator of group G, and g T is the generator of group G T. In one embodiment, the group digital signature is generated using a private signature key to enable attestation based on bilinear maps. For example, assume that there are two groups G = <g> and G T = <g T >, with prime q. An efficient non-degenerate bilinear map e , e : GxG → G T is a function defined as

1. 모든 P, Q∈G에 대해, 모든 a, b∈Z에 대해, e(Pa, Qb)=e(P,Q)ab.1. For all P, Q∈G, for all a, b∈Z, e (P a , Q b ) = e (P, Q) ab .

2. e(P,Q)≠1이도록 일부 P, Q∈G가 존재하고, 여기서 1은 GT와 동일하다.2. Some P, Q∈G is present such that e (P, Q) ≠ 1, where 1 is equal to G T.

3. e를 연산하기 위한 효과적인 알고리즘이 존재한다.3. There is an effective algorithm for computing e .

도 6을 다시 참조하면, 프로세스 블록(326)에서, 발행자는 랜덤 값들 x 및 y를 선택한다. x 및 y가 선택되면, 프로세스 블록(328)에서, 발행자는 X=gX 및 Y=gy를 연산한다. 프로세스 블록(330)에서, 그룹 공개 키는 (q, G, g, GT, gT, e, X, Y)이고, 발행자에 대한 공개 키는 발행자에 의한 (x, y) 출력이다. 일 실시예에서, 랜덤 시드(random seed) 값을 고르고(picking), 의사난수 발생기를 이용하여 x 및 y 값들을 생성함으로써, 플랫폼 파라미터들 x 및 y의 랜덤한 선택이 수행된다. 일 실시예에서, 발행자의 비밀 키는 (x, y)이다.Referring again to FIG. 6, at process block 326, the publisher selects random values x and y. If x and y are selected, at process block 328, the publisher computes X = g X and Y = g y . In process block 330, the group public key is (q, G, g, G T , g T , e, X, Y) and the public key for the issuer is the (x, y) output by the issuer. In one embodiment, a random selection of platform parameters x and y is performed by picking a random seed value and generating x and y values using a pseudo random number generator. In one embodiment, the issuer's secret key is (x, y).

플랫폼 그룹 공개/개인 키가 형성되면, 발행자는 도 7에 대해 더 도시된 바와 같이, 결합 절차에 따라 플랫폼 그룹의 각각의 멤버를 증명할 수 있다. 대표적으로, 도 7은 일 실시예에 따라, 도 5의 프로세스 블록(350)의 정의된 신뢰받는 멤버쉽 그룹의 멤버 디바이스들을 증명하는 방법(352)을 도시하는 흐름도이다.Once the platform group public / private key has been formed, the issuer may prove each member of the platform group according to the association procedure, as further shown for FIG. Representatively, FIG. 7 is a flowchart illustrating a method 352 of proving member devices of the defined trusted membership group of process block 350 of FIG. 5, according to one embodiment.

대표적으로, 플랫폼은 그룹을 결합시키기 위해 발행자와 상호작용한다. 프로세스 블록(354)에서, TPM은 발행자에게 노출되지 않은 그의 DAA 시드로부터 개인 멤버 키 f를 도출하여 F=gf로 설정한다. 프로세스 블록(356)에서, TPM은 F를 발행자에게 송신하여 loggF에 대한 지식(knowledge)을 발행자에게 증명한다. 프로세스 블록(358)에서, 발행자는 TPM에 의해 수행된 지식에 대한 증명을 입증한다. 프로세스 블록(360)에서, 발행자는 랜덤 r을 선택하여 a=gr, b=ay, 및 c=aXFrxy를 연산한다. 프로세스 블록(362)에서, 발행자는 플랫폼의 멤버쉽 증명서로서, (a, b, c)를 호스트로 다시 송신한다. 프로세스 블록(364)에서, 호스트는 (a, b, c)를 TPM으로 전달한다. 일 실시예에서, 멤버 디바이스의 개인 서명 키는 (f, a, b, c)로서, 멤버쉽 증명서 (a, b, c)뿐만 아니라 개인 멤버 키 f를 포함한다.Typically, the platform interacts with the publisher to join the groups. In process block 354, the TPM derives the private member key f from its DAA seed that has not been exposed to the issuer and sets F = g f . At process block 356, the TPM sends F to the issuer to prove knowledge of the log g F to the issuer. At process block 358, the publisher verifies the proof of knowledge performed by the TPM. At process block 360, the publisher selects random r to compute a = g r , b = a y , and c = a X F rxy . In process block 362, the issuer sends (a, b, c) back to the host as the platform's membership certificate. At process block 364, the host passes (a, b, c) to the TPM. In one embodiment, the private signature key of the member device is (f, a, b, c), which includes the private member key f as well as the membership certificate (a, b, c).

일 실시예에서, TPM은 다음과 같이, 발행자에게 지식(SPK)의 서명 증명도 수행한다(이는 프로세스 블록(356 및 358)에 대응함):In one embodiment, the TPM also performs a signature proof of knowledge (SPK) to the issuer (corresponding to process blocks 356 and 358) as follows:

SPK{(f) : F=gf}. SPK {(f): F = g f }.

1. TPM은 랜덤 r∈Zq를 선택하고 T=gr을 연산한다.1. TPM selects random r∈Z q and computes T = g r .

2. TPM은

Figure 112008051575612-PAT00001
을 연산한다.2. TPM
Figure 112008051575612-PAT00001
Calculate

3. TPM은

Figure 112008051575612-PAT00002
을 연산한다.3. TPM
Figure 112008051575612-PAT00002
Calculate

4. TPM은 발행자에게 (F, c, s)를 송신한다.4. The TPM sends (F, c, s) to the issuer.

5. 발행자는

Figure 112008051575612-PAT00003
을 연산한다.5. The issuer
Figure 112008051575612-PAT00003
Calculate

6. 발행자는

Figure 112008051575612-PAT00004
임을 증명한다.6. Issuer
Figure 112008051575612-PAT00004
Prove it is.

도 8은 일 실시예에 따른, 플랫폼 그룹의 멤버 디바이스에 의해 개인 서명 키를 연산(computing)하는 방법(400)을 도시하는 흐름도이다. 프로세스 블록(410)에서, TPM은 기준 B를 선택한다. 메세지 m에 서명하기 위해, TPM은 비밀 서명 키로서 (f, a, b, c)를 갖고, 호스트는 (a, b, c)를 갖는다. 랜덤 기준의 선택(random base option)에서, TPM은 그룹 GT로부터 랜덤하게 B를 선택한다. 이름 기준의 선택(named-base option)에서, TPM은 입증자 기준 이름으로부터 B를 도출한다. TPM은 그 후, 가명(pseudonym) K=Bf를 연산한다. 프로세스 블록(420)에서, TPM은 2개의 랜덤 수들 r 및 r'를 선택하여 그들을 호스트로 송신한다. 프로세스 블록(430)에서, 호스트는 a'=ar', b'=br' 및 c=cr'r을 연산하고, 그 후 vx=e(X, a'), vxy=e(X, b') 및 vs=e(g, c')을 연산한다. 프로세스 블록(440)에서, 호스트는 (a', b', c', vx, vxy, vs)를 TPM으로 다시 송신한다. 프로세스 블록(450)에서, TPM은 ri 및 f를 노출하지 않고 vs ri=vxvxy f 및 K=Bf이도록, (ri, f)의 영-지식 증명(zero-knowledge proof of knowledge)을 연산하고, 여기서 ri는 r modulo q의 역이다. 상기 증명을 위한 지식의 서명을 표시하기 위해 ∑를 이용한다. 프로세스 블록(460)에서, 생성된 서명은 그 때 (a', b', c', B, K, ∑)이다.8 is a flow diagram illustrating a method 400 for computing a private signature key by a member device of a platform group, according to one embodiment. At process block 410, the TPM selects reference B. To sign message m, the TPM has (f, a, b, c) as the secret signing key and the host has (a, b, c). In a random base option, the TPM randomly selects B from group G T. In the named-base option, the TPM derives B from the prover base name. The TPM then computes the pseudonym K = B f . At process block 420, the TPM selects two random numbers r and r 'and sends them to the host. In process block 430, the host computes a '= a r' , b '= b r' and c = c r'r , and then v x = e (X, a '), v xy = e Compute (X, b ') and v s = e (g, c'). At process block 440, the host sends (a ', b', c ', v x , v xy , v s ) back to the TPM. In process block 450, the TPM is zero-knowledge proof of knowledge of (ri, f), so that the TPM is v s ri = v x v xy f and K = B f without exposing ri and f. , Where ri is the inverse of r modulo q. Use ∑ to indicate the signature of the knowledge for the proof. In process block 460, the generated signature is then (a ', b', c ', B, K, Σ).

일 실시예에서, TPM은 임의의 그룹 G로부터 B를 선택할 수 있고, G의 결정적인 디피-헬먼(Diffie-Hellman) 문제는 어렵다(hard). GT 대신 G에 대한 폐기(revocation) 체크가 수행될 수 있다.In one embodiment, the TPM may select B from any group G, and the critical Diffie-Hellman problem of G is hard. Revocation checks on G may be performed instead of G T.

일 실시예에서, TPM은 e(X, a), e(X, b), e(g, c')를 사전연산(pre-compute)한다. TPM은 2개의 난수들 r 및 r'를 선택하고 그들을 호스트로 송신한다. 호스트는 단지 a'=ar', b'=br' 및 c'=cr'r을 연산한다. 그리고, 그 후 TPM은 vx=e(X, a)r', vxy=e(X, b)r' 및 vs=e(g, c)r'r을 연산한다. 호스트는 (a', b', c')을 TPM으로 다시 송신한다.In one embodiment, the TPM pre-computes e (X, a), e (X, b), e (g, c '). The TPM selects two random numbers r and r 'and sends them to the host. The host only computes a '= a r' , b '= b r' and c '= c r'r . The TPM then computes v x = e (X, a) r ' , v xy = e (X, b) r' and v s = e (g, c) r'r . The host sends (a ', b', c ') back to the TPM.

일 실시예에서, TPM은 다음과 같이 "지식의 서명"을 연산한다.In one embodiment, the TPM computes the "signature of knowledge" as follows.

(a) TPM은 2개의 램덤 정수들 rr, rf∈Zq를 선택하여 T1=vs rrvxy - rf , T2=Brf을 연산한다.(a) is TPM to select two of the random integer rr, rf∈Z q T s 1 = v rr v xy - rf, calculates the T 2 = B rf.

(b) TPM은

Figure 112008051575612-PAT00006
을 연산한다.(b) the TPM is
Figure 112008051575612-PAT00006
Calculate

TPM은

Figure 112008051575612-PAT00007
을 연산한다.TPM is
Figure 112008051575612-PAT00007
Calculate

TPM은 (c, sr, sf)를 호스트로 송신한다.The TPM sends (c, sr, sf) to the host.

호스트는 서명 σ=(B, K, a', b', c', sr, sf)를 입증자에게 송신하고, 여기서, ∑=(sr, sf)이다.The host sends the signature σ = (B, K, a ', b', c ', sr, sf) to the prover, where ∑ = (sr, sf).

따라서, 개인 서명 키(f, a, b, c)를 이용하는, 신뢰받는 하드웨어 디바이스는, 디바이스가 예를 들어, 본원에서 발행자로서 언급된 증명 제조자에 의해 정의된 신뢰받는 익명의 하드웨어 디바이스들의 그룹의 멤버라는 것을 나타냄으로써, 스스로 신뢰받는 하드웨어 디바이스로서 식별하도록 한다. 일 실시예에서, 각각의 하드웨어 디바이스는 플랫폼 그룹의 멤버이고, 고유한 개인 서명 키가 할당된다. 대표적으로, 할당된 개인 서명 키를 갖는 신뢰받는 하드웨어 디바이스는, 입증자로부터의 인증 요청의 일부로서 수신된 메세지에 서명할 수 있다. 그러나, 종래 디지털 서명 시스템과 반대로, 멤버 디바이스의 고유한 개인 서명 키를 이용하여 생성된 디지털 서명의 입증은, 발행자에 의해 정의된 플랫폼 그룹에 대한 그룹 공개 키를 이용하여 입증된다.Thus, a trusted hardware device, using a private signature key (f, a, b, c), is a device that is a group of trusted anonymous hardware devices defined by the proof manufacturer, for example, referred to herein as an issuer. By indicating that you are a member, you identify yourself as a trusted hardware device. In one embodiment, each hardware device is a member of a platform group and is assigned a unique private signature key. Typically, a trusted hardware device with an assigned private signature key can sign a received message as part of an authentication request from an attestor. However, in contrast to conventional digital signature systems, the verification of the digital signature generated using the unique private signature key of the member device is verified using the group public key for the platform group defined by the issuer.

도 9는 일 실시예에 따른, 그룹 공개 키에 관한 유효성을 위해 서명들을 체크하는 입증 알고리즘의 방법(500)을 도시하는 흐름도이다. 그룹 서명은 (a', b', c', B, K, ∑)로 구성된다. 프로세스 블록(510)에서, 입증자는 우선 vx=e(X, a'), vxy=e(X, b'), vs=e(g, c')를 연산한다. 프로세스 블록(520)에서, 입증자는 지식의 서명 ∑의 정확성을 입증하고; 그렇지 않으면, 입증은 프로세스 블록(522)에서 실패한다. 서명이 입증되면, 프로세스 블록(530)에서, 입증자는 e(a' Y)=e(g, b')이 유지되는지를 체크한다; 그렇지 않으면, 입증은 프로세스 블록(532)에서 실패한다. 프로세스 블록(540)에서, 입증자는 서명이 폐기되었는지 체크, 즉, 로그 리스트(rogue list)의 각각의 폐기된 멤버 키에 대해, 입증자가 K≠Bfi인지를 체크한다.9 is a flowchart illustrating a method 500 of a verification algorithm for checking signatures for validity with respect to a group public key, according to one embodiment. The group signature consists of (a ', b', c ', B, K, ∑). In process block 510, the prover first computes v x = e (X, a '), v xy = e (X, b'), v s = e (g, c '). In process block 520, the prover verifies the accuracy of the signature? Of the knowledge; Otherwise, the verification fails at process block 522. If the signature is verified, at process block 530, the verifier checks whether e (a 'Y) = e (g, b') is kept; Otherwise, the verification fails at process block 532. At process block 540, the verifier checks whether the signature has been revoked, i.e., for each revoked member key of the rogue list, whether the verifier is K ≠ B fi .

예를 들어, m에 대한 그룹 서명 σ=(B, K, a', b', c', sr, sf)를 입증하기 위해, 입증자는 다음 단계들을 행한다:For example, perform a group signature σ = (B, K, a ', b', c ', sr, sf) to the authentication, demonstrated the following steps for the m:

1. 입증자는 e(a', Y)=e(g, b') 및 B∈GT임을 입증한다.1. The prover proves that e (a ', Y) = e (g, b') and B∈G T.

2. 입증자는 vx=e(X, a') vxy=e(X, b') vs=e(g, c')를 연산한다.2. The prover computes v x = e (X, a ') v xy = e (X, b') v s = e (g, c ').

3. 입증자는 T'1=vs srvxy - sfvx -c T'2=BsfK-c를 연산한다.Calculates a - 'sf v x -c T 1 = v s sr v xy' 2 = B sf K -c 3. The demonstrated T.

4. 입증자는

Figure 112008051575612-PAT00008
을 입증한다.4. The prover
Figure 112008051575612-PAT00008
Prove that.

로그-리스트(rogue-list)의 각각의 fi에 대해, 입증자는 도 10에 나타낸 바 와 같이, K≠Bfi인지를 체크한다. 매칭(matching)되는 폐기된 멤버 키가 검출되면, 입증은 프로세스 블록(560)에서 실패한다; 그렇지 않으면, 입증은 프로세스 블록(570)에서 성공한다.For each fi in the rogue-list, the verifier checks whether K ≠ B fi , as shown in FIG. 10. If a matching discarded member key is detected, attestation fails at process block 560; Otherwise, attestation succeeds at process block 570.

도 10은 일 실시예에 따른, 멤버 디바이스의 개인 서명 키가 폐기되지 않은 개인 서명 키임을 보증하는 방법(542)을 도시하는 흐름도이다. 따라서, 프로세스 블록(544)에서, 로그 키(rogue-key) 리스트가 수신되었는지가 결정된다. 수신되었으면, 프로세스 블록(546)에서, 로그 키 리스트로부터 폐기된 멤버 키가 선택된다. 프로세스 블록(548)에서, 디지털 서명의 일부로서 수신된 가명 값 K가 K=Bfi 형태의 방정식과 동일하지 않는지 결정된다. 가명 값(pseudonym value) K가 방정식과 동일하면, 서명은 프로세스 블록(552)에서 거절된다. 그렇지 않으면, 프로세스 블록(550)에서, 프로세스 블록들(546-548)은, 폐기된 키 리스트의 각각의 키가 프로세스될 때까지, 폐기된 키 리스트의 각각의 폐기된 멤버 키에 대해 반복된다. 따라서, 그룹 서명의 값 K가 Bfi와 매칭되지 않는다고 가정하면, 멤버 디바이스로부터 수신된 디지털 서명이 수신된다.10 is a flowchart illustrating a method 542 of assuring that a member device's private signature key is a private signature key that has not been revoked, according to one embodiment. Thus, at process block 544 it is determined whether a rogue-key list has been received. If so, at process block 546, the discarded member key is selected from the log key list. At process block 548, it is determined whether the alias value K received as part of the digital signature is not equal to an equation of the form K = B fi . If the pseudonym value K is equal to the equation, the signature is rejected at process block 552. Otherwise, at process block 550, process blocks 546-548 are repeated for each discarded member key of the discarded key list until each key of the discarded key list is processed. Thus, assuming that the value K of the group signature does not match B fi , the digital signature received from the member device is received.

일 실시예에서, 멤버 또는 신뢰받는 하드웨어 디바이스는 ECC와 같은 종래 암호 프로토콜을 이용하여 표준 공개/개인 키 쌍을 생성할 수 있다. 따라서, 일 실시예에서, 멤버 디바이스의 개인 서명 키는, 공개 키가 신뢰받는 하드웨어 디바이스에 의해 생성된 것을 도시하기 위해 공개 ECC 키를 서명하는데 이용될 수 있다. 따라서, 플랫폼 그룹의 신뢰받는 하드웨어 디바이스로서 멤버 디바이스의 초 기 인증을 따르는 종래의 공개/개인 키 ECC 쌍을 이용하여 연속하는 트랜잭션(tansaction)들이 수행될 수 있다.In one embodiment, the member or trusted hardware device may generate a standard public / private key pair using conventional cryptographic protocols such as ECC. Thus, in one embodiment, the member device's private signature key can be used to sign the public ECC key to show that the public key was generated by a trusted hardware device. Thus, consecutive transactions can be performed using a conventional public / private key ECC pair that follows the initial authentication of the member device as a trusted hardware device of the platform group.

본 발명의 다양한 실시예들의 다양한 특징들 및 이점들이 본 발명의 다양한 실시예들의 구조 및 기능에 대한 상세와 함께 이전 설명에 설명되었지만, 본원은 단지 예시일뿐이라는 것이 이해될 것이다. 일부 경우들에서, 소정의 서브어셈블리들은 단지 하나의 그러한 실시예로 상세히 설명된다. 그럼에도 불구하고, 그러한 서브어셈블리들이 본 발명의 다른 실시예들에 이용될 수 있다고 이해되고 생각된다. 첨부된 특허청구범위들이 표현된 용어들의 광범위한 일반적인 의미로 나타낸 전체 범위에 대해, 특히, 부분들의 관리 및 구조의 문제에 대한 본 발명의 실시예들의 원리들 내에서의 변화들이 상세히 이루어질 수 있다.While various features and advantages of the various embodiments of the present invention have been described in the foregoing description with details of the structure and function of the various embodiments of the present invention, it will be understood that the present application is by way of example only. In some cases, certain subassemblies are described in detail in only one such embodiment. Nevertheless, it is understood and understood that such subassemblies may be used in other embodiments of the present invention. Changes may be made in detail to the entire scope of the appended claims in their broad general sense, in particular the principles of the embodiments of the invention, in particular in terms of the management and structure of parts.

다음의 특허청구범위들에 의해 정의된 바와 같이, 본 발명의 실시예들의 범위 내에서 유지되면서, 기재된 예시적인 실시예들 및 최적의 모드를 갖는 수정들 및 변경들이, 기재된 실시예들에 대해 이루어질 수 있다.As defined by the following claims, modifications and variations having the described exemplary embodiments and optimal modes, while remaining within the scope of embodiments of the present invention, are made to the described embodiments. Can be.

본 발명의 다양한 실시예들은 예로서 도시될 뿐, 첨부의 도면들에 제한되지 않는다.Various embodiments of the invention are shown by way of example only and not as a limitation of the accompanying drawings.

도 1은 일 실시예에 따른, TPM으로 구현된 플랫폼을 특징하는 시스템을 도시하는 블록도이다.1 is a block diagram illustrating a system featuring a platform implemented with a TPM, according to one embodiment.

도 2는 일 실시예에 따른, 도 1의 플랫폼을 더 도시하는 블록도이다.2 is a block diagram further illustrating the platform of FIG. 1, according to one embodiment.

도 3은 일 실시예에 따른, 도 1 및 도 2의 TPM을 더 도시하는 블록도이다.3 is a block diagram further illustrating the TPM of FIGS. 1 and 2, according to one embodiment.

도 4는 일 실시예에 따른, 도 3의 인증 로직을 더 도시하는 블록도이다.4 is a block diagram further illustrating the authentication logic of FIG. 3, according to one embodiment.

도 5는 일 실시예에 따른, 신뢰받는 멤버 디바이스들의 신뢰받는 멤버쉽 그룹을 수립(establish)하는 방법을 도시하는 흐름도이다.5 is a flow diagram illustrating a method of establishing a trusted membership group of trusted member devices, according to one embodiment.

도 6은 일 실시예에 따른, 그룹 공개/개인 키 쌍 및 하나 이상의 공개 파라미터들을 생성하는 방법을 도시하는 흐름도이다.6 is a flow diagram illustrating a method of generating a group public / private key pair and one or more public parameters, according to one embodiment.

도 7은 일 실시예에 따른, 신뢰받는 멤버쉽 그룹의 멤버 디바이스를 증명하는 결합 프로토콜에 대한 방법을 도시하는 흐름도이다.7 is a flow diagram illustrating a method for a association protocol for authenticating member devices of a trusted membership group, according to one embodiment.

도 8은 일 실시예에 따른, 수신된 증명 요청에 응답하여 개인 서명 키를 생성하는 방법을 도시하는 흐름도이다.8 is a flow diagram illustrating a method of generating a personal signature key in response to a received attestation request, according to one embodiment.

도 9는 일 실시예에 따른, 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버로서 디바이스를 인증하기 위해, 디바이스의 그룹 디지털 서명을 입증하는 방법을 도시하는 흐름도이다.9 is a flow diagram illustrating a method of verifying a group digital signature of a device to authenticate the device as a trusted member of a trusted membership group, according to one embodiment.

도 10은 일 실시예에 따른, 수신된 서명을 생성하는데 이용되는 개인 서명 키가 폐기되지 않은(non-revoked) 개인 멤버 키를 포함하는 것을 입증하는 방법을 도시하는 흐름도이다.10 is a flow diagram illustrating a method for verifying that a private signature key used to generate a received signature includes a non-revoked private member key, according to one embodiment.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

102: 제1 플랫폼(입증자)102: first platform (provider)

106: 인증 요청106: Authentication request

108: 인증 정보108: authentication information

110: 발행자110: publisher

120: 네트워크120: network

200: 제2 플랫폼(증명자)200: second platform (certifier)

220: TPM220: TPM

Claims (25)

타원 곡선 연산(elliptic curve computation)을 이용한 익명의 증명(anonymous attestation)을 위한 방법으로서,As a method for anonymous attestation using elliptic curve computation, 익명의 하드웨어 디바이스가 신뢰받는 멤버쉽 그룹(trusted membership group)의 신뢰받는 멤버 디바이스라는 입증(verification)을 요청하는 단계;Requesting verification that the anonymous hardware device is a trusted member device of a trusted membership group; 상기 신뢰받는 멤버쉽 그룹으로부터의 공개된 암호 정보(published cryptographic information)에 따라 상기 익명의 하드웨어 디바이스로부터 수신된 입증을 인증하는 단계; 및 Authenticating attestation received from the anonymous hardware device according to published cryptographic information from the trusted membership group; And 신뢰받는 멤버 디바이스가 입증자에 대해 익명일 수 있도록, 상기 하드웨어 디바이스의 임의의 고유한 디바이스 신분증명(identification) 정보 또는 개인 멤버 키를 결정하지 않고, 상기 익명의 하드웨어 디바이스가, 상기 하드웨어 디바이스의 개인 서명 키의 개인 멤버 키 컴포넌트 및 손상된 멤버 키들의 로그(rogue) 리스트에 따라 상기 신뢰받는 플랫폼 그룹의 신뢰받는 멤버 디바이스라는 것을 입증하는 단계Without determining any unique device identification information or private member key of the hardware device such that a trusted member device may be anonymous to a prover, the anonymous hardware device is a private device of the hardware device. Proving that it is a trusted member device of the trusted platform group according to the private member key component of the signing key and the rogue list of corrupted member keys. 를 포함하는, 타원 곡선 연산을 이용한 익명의 증명 방법.Anonymous proof method using an elliptic curve operation, including. 제1항에 있어서,The method of claim 1, 상기 입증을 요청하는 단계는,Requesting the attestation, 상기 익명의 하드웨어 디바이스가 상기 신뢰받는 멤버쉽 그룹의 신뢰받는 멤 버 디바이스라는 입증을 요청하기 위해, 상기 익명의 하드웨어 디바이스에 메세지를 발행하는 단계; 및 Issuing a message to the anonymous hardware device to request verification that the anonymous hardware device is a trusted member device of the trusted membership group; And 상기 익명의 하드웨어 디바이스로부터 그룹 디지털 서명을 수신하는 단계Receiving a group digital signature from the anonymous hardware device 를 더 포함하고,More, 발행된 메세지에 서명하기 위해, 상기 익명의 하드웨어 디바이스의 상기 개인 서명 키를 이용하여 상기 익명의 하드웨어 디바이스에 의해 상기 그룹 디지털 서명이 생성되고, 상기 개인 서명 키는 상기 익명의 하드웨어 디바이스의 상기 개인 멤버 키 및 그룹 멤버쉽 증명서를 포함하는, 타원 곡선 연산을 이용한 익명의 증명 방법.To sign the issued message, the group digital signature is generated by the anonymous hardware device using the private signature key of the anonymous hardware device, the private signature key being the personal member of the anonymous hardware device. An anonymous proof method using elliptic curve operations, including key and group membership certificates. 제1항에 있어서,The method of claim 1, 상기 수신된 입증을 인증하는 단계는,Authenticating the received attestation, 상기 신뢰받는 멤버쉽 그룹의 그룹 공개 키를 식별하는(identifying) 단계; 및Identifying a group public key of the trusted membership group; And 상기 신뢰받는 멤버쉽 그룹의 상기 그룹 공개 키에 따라 수신된 그룹 디지털 서명을 인증하는 단계Authenticating a received group digital signature according to the group public key of the trusted membership group 를 더 포함하고,More, 상기 익명의 하드웨어 디바이스에 발행된 메세지에 서명하기 위해, 상기 익명의 하드웨어 디바이스의 상기 개인 서명 키를 이용하여 상기 익명의 하드웨어 디바이스에 의해 상기 그룹 디지털 서명이 생성되고, 상기 개인 서명 키는 상기 익명 의 하드웨어 디바이스의 상기 개인 멤버 키 및 그룹 멤버쉽 증명서를 포함하는, 타원 곡선 연산을 이용한 익명의 증명 방법.To sign a message issued to the anonymous hardware device, the group digital signature is generated by the anonymous hardware device using the private signature key of the anonymous hardware device, the private signature key being the anonymous signature. An anonymous proof method using an elliptic curve operation comprising said private member key and a group membership certificate of a hardware device. 제1항에 있어서,The method of claim 1, 상기 하드웨어 디바이스의 상기 개인 서명 키의 상기 개인 멤버 키 컴포넌트가, 손상된(compromised) 멤버 키들의 상기 로그 리스트로부터의 폐기된(revoked) 개인 멤버 키와 매칭된다면, 상기 익명의 하드웨어 디바이스의 인증을 거절하는 단계If the private member key component of the private signature key of the hardware device matches a revoked private member key from the log list of compromised member keys, rejecting authentication of the anonymous hardware device step 를 더 포함하는, 타원 곡선 연산을 이용한 익명의 증명 방법.Anonymous authentication method using an elliptic curve operation further comprising. 제4항에 있어서,The method of claim 4, wherein 상기 인증을 거절하는 단계는,Rejecting the authentication, 상기 하드웨어 디바이스의 상기 그룹 디지털 서명이, 폐기된 멤버 키 컴포넌트를 갖는 개인 서명 키를 이용하여 생성되었는지를 결정하는 단계; 및Determining if the group digital signature of the hardware device was generated using a private signature key having a revoked member key component; And 상기 그룹 디지털 서명이 폐기된 멤버 키를 이용하여 생성되었다면, 신뢰받지 않는 하드웨어 디바이스로서 상기 하드웨어 디바이스를 식별하는 단계If the group digital signature was generated using a revoked member key, identifying the hardware device as an untrusted hardware device 를 더 포함하는, 타원 곡선 연산을 이용한 익명의 증명 방법.Anonymous authentication method using an elliptic curve operation further comprising. 제4항에 있어서,The method of claim 4, wherein 상기 인증을 거절하는 단계는,Rejecting the authentication, (a) 상기 로그 리스트로부터 폐기된 멤버 키를 선택하는 단계;(a) selecting a revoked member key from the log list; (b) K≠Bfi - 여기서, fi는 선택된 폐기된 멤버 키이고, B는 상기 하드웨어 디바이스의 상기 그룹 디지털 서명의 암호 파라미터이며, i는 1에서 n까지의 정수이고, n은 1보다 큰 정수이며, K는 K=Bf 형태를 갖고, 여기서 f는 상기 하드웨어 디바이스의 상기 개인 멤버 키임 - 라면, 상기 하드웨어 디바이스의 상기 그룹 디지털 서명의 가명(pseudonym), 암호(cryptographic) 파라미터, K가, 상기 선택된 폐기된 멤버 키를 이용하여 생성되지 않았다고 입증하는 단계;(b) K ≠ B fi Where fi is the selected discarded member key, B is the cryptographic parameter of the group digital signature of the hardware device, i is an integer from 1 to n, n is an integer greater than 1, and K is K = B has the form f , where f is the private member key of the hardware device, wherein the pseudonym, cryptographic parameter, K of the group digital signature of the hardware device uses the selected discarded member key. Proving that it was not produced by; (c) 상기 로그 리스트에 나열된 각각의 폐기된 멤버 키, fi에 대해 (a)와 (b) 단계를 반복하는 단계; 및(c) repeating steps (a) and (b) for each discarded member key, fi, listed in the log list; And (d) 상기 그룹 디지털 서명이 상기 로그 리스트로부터의 폐기된 멤버 키를 이용하여 생성되었다면, 신뢰받지 않는 하드웨어 디바이스로서 상기 하드웨어 디바이스를 식별하는 단계(d) if the group digital signature was generated using a revoked member key from the log list, identifying the hardware device as an untrusted hardware device 를 더 포함하는, 타원 곡선 연산을 이용한 익명의 증명 방법.Anonymous authentication method using an elliptic curve operation further comprising. 타원 곡선 연산들을 이용한 익명의 증명 방법으로서,An anonymous proof method using elliptic curve operations, 발행자(issuer)에 의해 정의된 신뢰받는 멤버쉽 그룹에 대한 그룹 공개/개인 키 쌍을 생성하는 단계;Generating a group public / private key pair for a trusted membership group defined by an issuer; 상기 발행자에게 상기 하드웨어 디바이스의 비밀 멤버 키를 공개하지 않고, 익명의 하드웨어 디바이스가 비밀 서명 키의 비밀 멤버 키 컴포넌트를 생성했는지 를 입증하는 단계;Verifying that an anonymous hardware device has generated a secret member key component of a secret signing key without revealing the secret member key of the hardware device to the issuer; 상기 하드웨어 디바이스를 상기 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버 디바이스로 만들기(render) 위해, 상기 하드웨어 디바이스에 고유 그룹 멤버쉽 증명서(unique group membership certificate)를 할당하는 단계 - 상기 개인 서명 키는 상기 익명의 하드웨어 디바이스의 상기 개인 멤버 키 및 상기 그룹 멤버쉽 증명서를 포함함 - ; 및Assigning a unique group membership certificate to the hardware device to render the hardware device a trusted member device of the trusted membership group, wherein the private signature key is the anonymous hardware device. The private member key of the and the group membership certificate; And 입증자가, 상기 익명의 하드웨어 디바이스가 상기 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버 디바이스임을 입증할 수 있도록, 상기 그룹 공개 키를 공개하는 단계 - 상기 그룹 공개 키는, 신뢰받는 멤버 디바이스가 상기 입증자에 대해 익명일 수 있도록, 비밀 서명 키를 이용하여 생성된 그룹 디지털 서명을 입증함 - Publishing the group public key such that an attestor can prove that the anonymous hardware device is a trusted member device of the trusted membership group, wherein the group public key is determined by a trusted member device for the attestor. To verify group digital signatures generated using a secret signing key so that they can be anonymous- 을 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Anonymous proof method using elliptic curve operations, comprising. 제7항에 있어서,The method of claim 7, wherein 상기 발행자는 상기 신뢰받는 하드웨어 디바이스의 증명 제조자(certifying manufacturer)인, 타원 곡선 연산들을 이용한 익명의 증명 방법.And the issuer is a certifying manufacturer of the trusted hardware device. 제7항에 있어서,The method of claim 7, wherein 상기 입증하는 단계는,Proving the step, F=gf 형태의 가명, F를 수신하는 단계 - 여기서, f는 상기 개인 멤버 키이고 g는 상기 그룹 공개 키의 암호 파라미터임 - ; 및Receiving an alias of the form F = g f , where F is the private member key and g is an encryption parameter of the group public key; And 상기 개인 멤버 키가 상기 하드웨어 디바이스 내에 저장되는 것을 입증하기 위해 상기 하드웨어 디바이스로부터 증거(proof)를 수신하는 단계 - 상기 증거는 loggF 형태의 지식 증명(proof of knowledge)을 포함함 - Receiving proof from the hardware device to verify that the private member key is stored in the hardware device, the evidence comprising a proof of knowledge in the form of log g F- 를 더 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Further comprising, an anonymous verification method using elliptic curve operations. 제9항에 있어서,The method of claim 9, 상기 발행자에 의해, 랜덤 값, r을 선택하는 단계; 및Selecting, by the issuer, a random value, r; And 상기 발행자에 의해, a=gr, b=ay 및 c=axFrxy를 연산하는 단계 - 여기서, (x, y)는 상기 발행자의 개인 키이고, (a, b, c)는 상기 그룹 멤버쉽 증명서임 -Computing, by the issuer, a = g r , b = a y and c = a x F rxy , where (x, y) is the issuer's private key and (a, b, c) is the above Certificate of group membership- 를 더 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Further comprising, an anonymous verification method using elliptic curve operations. 제7항에 있어서,The method of claim 7, wherein 상기 그룹 멤버쉽 증명서를 할당하는 단계는,Assigning the group membership certificate, a=gr, b=ay 및 c=axFrxy인 경우, 상기 발행자에 의해, 상기 그룹 멤버쉽 증명서로서 상기 신뢰받는 멤버 디바이스의 호스트로 (a, b, c)를 송신하는 단계 - (x, y)는 상기 발행자의 개인 키이고, F는 F=gf 형태의 가명이고, f는 상기 개인 멤버 키이며, g는 상기 그룹 공개 키의 암호 파라미터임 - ; 및if a = g r , b = a y and c = a x F rxy , sending (a, b, c) by the issuer to the host of the trusted member device as the group membership certificate-( x, y) is the issuer's private key, F is a pseudonym of the form F = g f , f is the private member key, and g is an encryption parameter of the group public key; And 상기 호스트에 의해, 상기 신뢰받는 멤버 디바이스로 상기 그룹 멤버쉽 증명서 (a, b, c)를 전달하는 단계 - (f, a, b, c)는 상기 신뢰받는 멤버 디바이스의 비밀 서명 키임 -Delivering, by the host, the group membership certificate (a, b, c) to the trusted member device, where (f, a, b, c) is the secret signing key of the trusted member device 를 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Anonymous proof method using elliptic curve operations, comprising. 타원 곡선 연산들을 이용한 익명의 증명 방법으로서,An anonymous proof method using elliptic curve operations, 익명의 하드웨어 디바이스에 의해, 입증자로부터 수신된 메세지에 서명하는 단계 - 상기 메세지는 상기 익명의 하드웨어 디바이스의 개인 서명 키를 이용하여 서명됨 - ;Signing, by an anonymous hardware device, a message received from an attestor, wherein the message is signed using the private signature key of the anonymous hardware device; 상기 익명의 하드웨어 디바이스의 그룹 디지털 서명을 포함하는 디지털로 서명된 메세지를, 입증자에게 송신하는 단계 - 상기 입증자는, 상기 익명의 하드웨어 디바이스가, 신뢰받는 플랫폼 그룹의 그룹 공개 키를 이용하여 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버 디바이스임을 입증하기 위해, 상기 그룹 디지털 서명을 인증함 - ; 및Sending a digitally signed message to a prover, the digitally signed message comprising a group digital signature of the anonymous hardware device, wherein the prover is trusted by the anonymous hardware device using a group public key of a trusted platform group. Verify the group digital signature to prove that it is a trusted member device of a membership group; And 신뢰받는 멤버쉽 디바이스가 상기 입증자에 대해 익명일 수 있도록, 상기 익명의 하드웨어 디바이스의 임의의 고유한 디바이스 신분증명 정보 또는 상기 개인 멤버 키를 공개하지 않고, 상기 익명의 하드웨어 디바이스의 상기 개인 서명 키의 개인 멤버 키 컴포넌트가 손상된 멤버 키들의 로그 리스트로부터의 임의의 폐기된 멤버 키들과 매칭되지 않는다면, 폐기의 거부(denial of revocation)를 수신하는 단계Of the private signature key of the anonymous hardware device without revealing any unique device identification information or the private member key of the anonymous hardware device, such that a trusted membership device may be anonymous to the attestor. If the private member key component does not match any discarded member keys from the log list of corrupted member keys, receiving a denial of revocation 를 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Anonymous proof method using elliptic curve operations, comprising. 제12항에 있어서,The method of claim 12, 서명 단계 이전에, 상기 방법은,Prior to the signing step, the method 상기 익명의 하드웨어 디바이스의 상기 개인 멤버 키가, 손상된 멤버 키들의 상기 로그 리스트로부터의 폐기된 멤버 키와 매칭된다면, 입증의 거부를 수신하는 단계를 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.If the private member key of the anonymous hardware device matches a revoked member key from the log list of compromised member keys, receiving a denial of attestation. 제12항에 있어서,The method of claim 12, 서명 단계 이전에, 상기 방법은,Prior to the signing step, the method 증명 시드(attestation seed)에 따라 랜덤한 비밀 값, f를 도출하는(deriving) 단계;Deriving a random secret value, f, in accordance with an attestation seed; F=gf 형태의 값 F를 연산하는 단계 - g는 신뢰받는 멤버쉽 그룹의 그룹 공개 키의 암호 파라미터임 - ;Computing a value F of the form F = g f, where g is the cryptographic parameter of the group public key of the trusted membership group; 상기 신뢰받는 플랫폼 그룹에 결합하라는 요청으로서, 상기 신뢰받는 플랫폼 그룹의 발행자에게 값, F를 송신하는 단계;Sending a value, F, to a publisher of the trusted platform group as a request to join the trusted platform group; 개인 멤버 키가 상기 하드웨어 디바이스 내에 저장되는 것을 입증하기 위해 상기 발행자에게 증거를 송신하는 단계 - 상기 증거는 loggF 형태의 지식 증명을 포함함 - ; 및Sending evidence to the issuer to verify that a private member key is stored in the hardware device, the evidence comprising a proof of knowledge in the form of log g F; And 상기 발행자가 상기 지식 증명의 정확성을 입증하면, 그룹 멤버쉽 증명서 (a, b, c)를 수신하는 단계 - 상기 랜덤한 비밀 값, f는, 상기 신뢰받는 멤버 디바이스의 상기 개인 서명 키(f, a, b, c)의 개인 멤버 키 컴포넌트이고, 상기 신뢰받는 멤버 디바이스가 임의의 입증자들에 대해 익명일 수 있도록 상기 그룹 공개 키에 따라 입증됨 - If the issuer verifies the accuracy of the proof of knowledge, receiving a group membership certificate (a, b, c), wherein the random secret value, f is the private signature key (f, a) of the trusted member device; , a private member key component of b, c), and verified according to the group public key such that the trusted member device can be anonymous to any attestor- 을 더 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Further comprising, an anonymous verification method using elliptic curve operations. 제12항에 있어서,The method of claim 12, 상기 서명하는 단계는,The signing step, 상기 익명의 하드웨어 디바이스의 신뢰받는 플랫폼 모듈(trusted platform module, TPM)에 의해, 기준 값(base value), B를 선택하는 단계;Selecting a base value, B, by a trusted platform module (TPM) of the anonymous hardware device; TPM에 의해, K=Bf 형태의 가명, K를 연산하는 단계 - f는 상기 익명의 하드웨어 디바이스의 개인 멤버 키임 - ;Computing, by the TPM, an alias of the form K = B f , K, where f is the private member key of the anonymous hardware device; TPM에 의해, 상기 익명의 하드웨어 디바이스의 호스트에 2개의 난수들 r 및 r'를 송신하는 단계;Sending, by a TPM, two random numbers r and r 'to a host of the anonymous hardware device; 상기 호스트에 의해, a'=ar', b'=br', 및 c'=cr'r을 연산하는 단계 - a, b, 및 c는 상기 신뢰받는 멤버쉽 그룹의 그룹 멤버쉽 증명서의 암호 파라미터들임 - ; 및 Computing , by the host, a '= a r' , b '= b r' , and c '= c r'r , where a, b, and c are ciphers of the group membership certificate of the trusted membership group Parameters-; And 상기 호스트에 의해, vx=e(X, a'), vxy=e(X, b'), 및 vs=e(g, c')을 연산하는 단계 - X 및 Y는 상기 신뢰받는 멤버쉽 그룹의 그룹 공개 키의 암호 파라미터들이 고, q는 소수이고, G 및 GT는 q 순서 그룹들(groups of order q), e: GxG→GT는 효율적으로 연산할 수 있는 이선형 맵 함수, g는 그룹 G의 발생기 및 gT는 그룹 GT의 발생기임 -Computing, by the host, v x = e (X, a '), v xy = e (X, b'), and v s = e (g, c '), where X and Y are trusted Are cryptographic parameters of the group public key of the membership group, q is a prime number, G and G T are groups of order q, e: GxG → G T is a bilinear map function that can be efficiently computed, g is the generator of group G and g T is the generator of group G T- 을 더 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Further comprising, an anonymous verification method using elliptic curve operations. 제15항에 있어서,The method of claim 15, 상기 호스트로부터, (a', b', c', vx, vxy, vs)를 수신하는 단계;Receiving (a ', b', c ', v x , v xy , v s ) from the host; ri 및 f를 노출하지 않고 vs ri=vxvxy f 및 K=Bf가 되도록, TPM에 의해, (ri, f)의 영-지식 증명(zero-knowledge proof of knowledge)을 연산하는 단계 - ri는 r modulo q의 역임 - ; 및computing, by the TPM, a zero-knowledge proof of knowledge of (ri, f) such that v s ri = v x v xy f and K = B f without exposing ri and f ri is the role of r modulo q; And 상기 익명의 하드웨어 디바이스의 상기 디지털 서명으로서 상기 입증자에게 (a', b', c', B, K, ∑)를 송신하는 단계 - ∑는 상기 영-지식 증명을 나타냄 -Sending (a ', b', c ', B, K, ∑) to the attestor as the digital signature of the anonymous hardware device, where Σ represents the zero-knowledge proof 을 더 포함하는, 타원 곡선 연산들을 이용한 익명의 증명 방법.Further comprising, an anonymous verification method using elliptic curve operations. 발행자에 의해 장치에 할당된 개인 서명 키를 저장하는 플래시 메모리; 및Flash memory for storing a private signature key assigned to the device by the issuer; And 입증자로부터 수신된 메세지에 서명하는 신뢰받는 플랫폼 모듈Trusted platform module to sign messages received from attestors 을 포함하고,Including, 상기 메세지는 상기 개인 서명 키를 이용하여 서명되고, 상기 장치의 그룹 디지털 서명을 포함하는 디지털로 서명된 메세지를 상기 입증자에게 전송하고, 상기 입증자는, 익명의 하드웨어 디바이스가 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버 디바이스임을 입증하기 위해 상기 그룹 디지털 서명을 인증하고, 타원 곡선 연산들을 이용하여, 신뢰받는 멤버 디바이스가 상기 입증자에 대해 익명이 될 수 있도록 상기 익명의 하드웨어 디바이스의 임의의 고유한 디바이스 신분증명 정보 또는 상기 개인 멤버 키를 공개하지 않고, 손상된 멤버 키들의 로그 리스트 및 상기 익명의 하드웨어 디바이스의 상기 개인 서명 키의 개인 멤버 키 컴포넌트에 따라 폐기의 거부를 수행하는 장치.The message is signed using the private signature key, and sends a digitally signed message to the attestor, the digital signature of the device including the group digital signature of the device, the attestor being trusted by a membership group in which an anonymous hardware device is trusted. Authenticate the group digital signature to prove that it is a receiving member device, and use elliptic curve operations to identify any unique device identity of the anonymous hardware device so that a trusted member device can be anonymous to the attestor. And refusing to revoke according to a log list of compromised member keys and a private member key component of the private signature key of the anonymous hardware device without disclosing information or the private member key. 제17항에 있어서,The method of claim 17, TPM을 포함하는 집적 회로를 갖는 신분증명 카드를 포함하는 장치.And an identification card having an integrated circuit comprising a TPM. 제18항에 있어서,The method of claim 18, 상기 신분증명 카드는 주 운전 면허증(state driver's license)이고, 발행자는 주의 교통부(the state of department of motor vehicles)인 장치.Wherein the identification card is a state driver's license and the issuer is the state of department of motor vehicles. 네트워크에 연결된 입증자 플랫폼; 및A prover platform connected to the network; And 상기 네트워크에 연결된 익명의 증명자 플랫폼Anonymous prover platform connected to the network 을 포함하고,Including, 상기 익명의 증명자 플랫폼은,The anonymous prover platform, 버스,Bus, 상기 버스에 연결된 프로세서,A processor coupled to the bus, 신뢰받는 플랫폼 모듈을 포함하는, 상기 버스에 연결된 칩셋 - 상기 신뢰받는 플랫폼 모듈은 상기 입증자 플랫폼으로부터 수신된 메세지에 서명하고, 상기 메세지는 상기 증명자 플랫폼의 개인 서명 키를 이용하여 서명되고 상기 증명자 플랫폼의 그룹 디지털 서명을 포함하는 디지털로 서명된 메세지를 상기 입증자 플랫폼에 전송하고, 상기 입증자는 상기 익명의 증명자 플랫폼이 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버 디바이스임을 입증하기 위해 상기 그룹 디지털 서명을 인증함 - A chipset coupled to the bus, the trusted platform module comprising a trusted platform module, the trusted platform module signs a message received from the attester platform, the message being signed using a private signature key of the attester platform and Send a digitally signed message to the attestor platform, the digitally signed message including the group digital signature of the child platform, wherein the attestor is the group digital signature to verify that the anonymous prover platform is a trusted member device of the trusted membership group. Verified- 을 포함하고,Including, 상기 입증자 플랫폼은, 타원 곡선 연산들을 이용하여, 신뢰받는 멤버 디바이스가 상기 입증자에게 대해 익명일 수 있도록 상기 증명자 플랫폼의 임의의 고유한 디바이스 신분증명 정보 또는 상기 개인 멤버 키를 결정하지 않고, 상기 증명자 플랫폼의 상기 개인 서명 키의 개인 멤버 키 컴포넌트 및 손상된 멤버 키들의 로그 리스트에 따라, 상기 신뢰받는 멤버쉽 그룹의 신뢰받는 멤버 디바이스라는 것을 입증하는 시스템.The prover platform does not use elliptic curve operations to determine any unique device identification information or the private member key of the prover platform such that a trusted member device can be anonymous to the prover, And verify, according to the log list of private member key components and corrupted member keys of the private signing key of the prover platform, a trusted member device of the trusted membership group. 제20항에 있어서,The method of claim 20, 상기 입증자 플랫폼은,The prover platform, 상기 증명자 플랫폼의 상기 그룹 디지털 서명이 폐기된 멤버 키를 이용하여 생성되었는지 결정하고, 상기 그룹 디지털 서명이 상기 폐기된 멤버 키를 이용하여 생성되었다면 신뢰받지 않는 하드웨어 디바이스로서 상기 하드웨어 디바이스를 식별하는 인증 로직을 포함하는 시스템.An authentication that determines if the group digital signature of the prover platform was generated using a revoked member key and identifies the hardware device as an untrusted hardware device if the group digital signature was generated using the revoked member key System containing logic. 제20항에 있어서,The method of claim 20, 상기 증명자 플랫폼은, 신뢰받는 멤버 디바이스가 상기 입증자에 대해 익명이 될 수 있도록, 상기 익명의 증명자 플랫폼의 임의의 고유한 디바이스 신분증명 정보 또는 상기 개인 멤버 키를 공개하지 않고, 상기 익명의 하드웨어 디바이스의 상기 개인 멤버 키가 손상된 멤버 키들의 로그 리스트로부터의 임의의 폐기된 개인 멤버 키들과 매칭되지 않는다면, 상기 입증자로부터 폐기의 거부를 수신하는 시스템.The prover platform does not disclose any unique device identification information or the private member key of the anonymous prover platform so that a trusted member device can be anonymous to the prover, If the private member key of the hardware device does not match any discarded private member keys from the log list of corrupted member keys, receive a denial of revocation from the attestor. 제20항에 있어서,The method of claim 20, 상기 증명자 플랫폼은,The prover platform, 사전결정된(predetermined) 시드 값(seed value)에 따라, 비밀 멤버 키, f를 생성하는 키 로직; 및Key logic for generating a secret member key, f, in accordance with a predetermined seed value; And 상기 증명자 플랫폼의 그룹 멤버쉽 증명서 (a, b, c)를 수신하기 위해, 암호 파라미터들을 연산하는 로직(join logic)Join logic to compute cryptographic parameters to receive the group membership certificate (a, b, c) of the prover platform 을 포함하고,Including, 상기 증명자 플랫폼의 개인 서명 키(f, a, b, c)는 상기 증명자 플랫폼의 상기 그룹 멤버쉽 증명서의 비밀 멤버 키 f 및 암호 파라미터(a, b, c)를 포함하는 시스템.The private signing key (f, a, b, c) of the prover platform comprises a secret member key f and a cryptographic parameter (a, b, c) of the group membership certificate of the prover platform. 제20항에 있어서,The method of claim 20, 상기 칩셋은 그래픽 제어기를 포함하는 시스템.The chipset includes a graphics controller. 제20항에 있어서,The method of claim 20, 상기 네트워크는 광대역 네트워크를 포함하는 시스템.The network includes a broadband network.
KR1020080069771A 2007-07-17 2008-07-17 An apparatus and method for direct anonymous attestation from bilinear maps KR101004829B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/778,804 US8078876B2 (en) 2007-04-30 2007-07-17 Apparatus and method for direct anonymous attestation from bilinear maps
US11/778,804 2007-07-17

Publications (2)

Publication Number Publication Date
KR20090008162A true KR20090008162A (en) 2009-01-21
KR101004829B1 KR101004829B1 (en) 2010-12-28

Family

ID=40403935

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080069771A KR101004829B1 (en) 2007-07-17 2008-07-17 An apparatus and method for direct anonymous attestation from bilinear maps

Country Status (2)

Country Link
JP (1) JP4851497B2 (en)
KR (1) KR101004829B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8605898B2 (en) 2010-10-15 2013-12-10 Samsung Electronics Co., Ltd. Apparatus and method that generates originality verification and verifies originality verification

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4971917B2 (en) * 2007-09-11 2012-07-11 日本放送協会 Signature generation device, signature verification device, group management device, and program thereof
JP2011114504A (en) * 2009-11-26 2011-06-09 Okayama Univ Anonymous authentication system
KR101136119B1 (en) 2010-11-23 2012-04-17 순천향대학교 산학협력단 A group key management method using admissible bilinear map
CN103312499B (en) * 2012-03-12 2018-07-03 西安西电捷通无线网络通信股份有限公司 A kind of identity identifying method and system
CN103312670A (en) * 2012-03-12 2013-09-18 西安西电捷通无线网络通信股份有限公司 Authentication method and system
JP2020068437A (en) * 2018-10-23 2020-04-30 株式会社アメニディ Access management device and program
IL275954A (en) * 2020-07-09 2022-02-01 Google Llc Anonymous event attestation with group signatures
IL275947A (en) 2020-07-09 2022-02-01 Google Llc Anonymous event attestation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8605898B2 (en) 2010-10-15 2013-12-10 Samsung Electronics Co., Ltd. Apparatus and method that generates originality verification and verifies originality verification

Also Published As

Publication number Publication date
JP2009027708A (en) 2009-02-05
JP4851497B2 (en) 2012-01-11
KR101004829B1 (en) 2010-12-28

Similar Documents

Publication Publication Date Title
US8078876B2 (en) Apparatus and method for direct anonymous attestation from bilinear maps
US8356181B2 (en) Apparatus and method for a direct anonymous attestation scheme from short-group signatures
AU2022224799B2 (en) Methods for secure cryptogram generation
US7844614B2 (en) Apparatus and method for enhanced revocation of direct proof and direct anonymous attestation
US7490070B2 (en) Apparatus and method for proving the denial of a direct proof signature
US8924728B2 (en) Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
KR101004829B1 (en) An apparatus and method for direct anonymous attestation from bilinear maps
US11070542B2 (en) Systems and methods for certificate chain validation of secure elements
US20080307223A1 (en) Apparatus and method for issuer based revocation of direct proof and direct anonymous attestation
US20100169650A1 (en) Storage minimization technique for direct anonymous attestation keys
US8595505B2 (en) Apparatus and method for direct anonymous attestation from bilinear maps
US7313697B2 (en) Method for authentication
CN101359986B (en) Apparatus and method for direct anonymous attestation from bilinear maps
KR101371054B1 (en) Method for digital signature and authenticating the same based on asymmetric-key generated by one-time_password and signature password

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131202

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151201

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161129

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181129

Year of fee payment: 9