KR100715738B1 - 식별 정보를 노출하지 않고 신용을 수립하기 위한 시스템및 방법 - Google Patents

식별 정보를 노출하지 않고 신용을 수립하기 위한 시스템및 방법 Download PDF

Info

Publication number
KR100715738B1
KR100715738B1 KR1020057009543A KR20057009543A KR100715738B1 KR 100715738 B1 KR100715738 B1 KR 100715738B1 KR 1020057009543 A KR1020057009543 A KR 1020057009543A KR 20057009543 A KR20057009543 A KR 20057009543A KR 100715738 B1 KR100715738 B1 KR 100715738B1
Authority
KR
South Korea
Prior art keywords
challenger
prober
value
proof
delete delete
Prior art date
Application number
KR1020057009543A
Other languages
English (en)
Other versions
KR20050088085A (ko
Inventor
어니 브릭켈
Original Assignee
인텔 코오퍼레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인텔 코오퍼레이션 filed Critical 인텔 코오퍼레이션
Publication of KR20050088085A publication Critical patent/KR20050088085A/ko
Application granted granted Critical
Publication of KR100715738B1 publication Critical patent/KR100715738B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic 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
    • H04L9/3221Cryptographic 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 interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic 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 challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]

Abstract

본 발명의 실시예의 일 양상은 챌린저에게 서명을 노출하지 않고, 프루버 디바이스가 디바이스 제작자로부터의 서명을 구비한다는 것을 챌린저에게 입증하기 위한 방법, 시스템, 및 디바이스를 제공한다. 일 구현에 따르면, 챌린저에게는 프루버 디바이스에 의해 보유된 기밀(secret)의 단방향 함수의 결과가 제공된다. 프루버 디바이스와 챌린저 사이에서 양방향성 증명이 사용되어, 단방향 함수에서 사용된 기밀은 기밀 또는 디바이스 서명이나 프루버 디바이스의 식별 정보를 챌린저에게 노출하지 않고, 단방향 함수에서 사용된 기밀이 디바이스 서명에 의해 서명되었음을 챌린저에게 입증하는 것이다.
챌린저, 서명, 프루버 디바이스, 기밀(secret), 단방향 함수, 양방향성 증명

Description

식별 정보를 노출하지 않고 신용을 수립하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR ESTABLISHING TRUST WITHOUT REVEALING IDENTITY}
본 발명의 다양한 실시예는 일반적으로 통신을 안전하게 하는 것과 관련되어 있다. 특히, 본 발명의 적어도 하나의 실시예는, 제1 디바이스가, 유효 서명(valid signature)을 노출하지 않고, 그 유효 서명을 가지고 있다는 것을 제2 디바이스에게 입증하게 하는 것과 관련되어 있다.
컴퓨터 네트워크를 포함하는 현대의 많은 통신 시스템에 있어서, 교환 중인 정보의 신뢰도 및 보안이 상당히 염려되고 있다.
예를 들어, TCPA(Trusted Computing Platform Alliance) 모델에 있어서, 각 컴퓨터(PC)는 TPM(Trusted Platform Module)이라 불리는 믿을만한 하드웨어 디바이스를 구비한다. 일 구현으로서, TPM은 PC의 소프트웨어 및 하드웨어에 관한 정보를 기록할 수 있다. 각 TPM은 고유의 EK(unique endorsement key)를 구비한다. EK에는, TPM 및 플랫폼에 관한 정보를 포함하는 발행된 인증서가 존재한다. 이후, 챌린저(challenger)라 불리는 외측 파티(outside party)가 PC의 소프트웨어 및/또는 하드웨어 환경을 알고 싶어하는 경우에, 챌린저는 TPM에게 리포트를 줄 것을 요구할 수 있다. 챌린저는 리포트가 실제로 유효 TPM으로부터 온 것인지를 확인하고 싶어한다. PC의 소유자는 가능한 한 충분히 프라이버시를 유지하기를 원한다. 특히, PC의 소유자는, 리포트가 동일한 TPM으로부터 오고 있다는 것을 판정할 수 있는 챌린저들이 없는 상태로, 둘의 서로 다른 챌린저에게 리포트를 줄 수 있기를 원한다.
TCPA에 의해 제안된 하나의 해결책은 TTP(Trusted Third Parties)를 설치하는 것이다. TPM은 AIK(Attestation Identify Key)를 작성하고, EK에 의해 서명된 인증서 요구 중 키의 공개 부분을 TTP에게 전송한다. TTP는 EK가 유효하고, 서명이 맞는지(okay)를 체크하고, AIK를 위해 인증서를 발행한다. 그 다음, TPM이 챌린저로부터 요구를 수신했을 때, TPM은 AIK 및 TTP의 인증서를 사용한다. 이들은 EK에 관련되지 않으므로, 챌린저는 AIK에 대한 어떠한 정보도 얻지 못한다. 이러한 접근법이 갖는 문제점은 TTP의 설치를 필요로 한다는 것이다. 사실, TTP 및 이러한 접근법을 위한 실행 가능한 업무 모델(feasible business model)로서 역할을 할 수 있는 식별 파티(identifying parties)는 상당한 장애물임이 입증되었다.
따라서, TCPA 아키텍처에 있어서 TTP에 대한 필요성은 문제가 되었다. 그러나 TTP를 사용하지 않고 익명 및 보안 요구 조건들을 달성하는 암호 프로토콜을 제안하는 사람은 아무도 없었다.
본 발명의 다양한 실시예에 대한 다음의 상세한 설명에 있어서, 여러 특정한 상세는 본 발명의 하나 이상의 실시예의 다양한 양상에 대한 완전한 이해를 제공하기 위해 설명되는 것이다. 그러나 본 발명의 하나 이상의 실시예는 이러한 특정 상세없이 실행될 수 있다. 그 외의 예에서, 공지된 방법, 절차, 및/또는 컴포넌트는 본 발명의 실시예의 양상들을 불필요하게 모호하게 만들지 않기 위해 상세히 설명되지는 않는다.
다음 설명에서, 본 발명의 하나 이상의 실시예에 대한 임의의 특징을 설명하기 위해 임의의 용어가 사용된다. 예컨대, "플랫폼(platform)"은 임의의 유형의 디바이스, 컴퓨터, 처리장치 등을 포함한다. "챌린저(challenger)"라는 용어는 요구된 정보를 요구자에게 노출하거나 제공하기 전에, 요구자로부터 신빙성 혹은 권한에 대한 소정의 검증을 요구하는 임의의 사람, 플랫폼, 시스템, 소프트웨어, 및/또는 디바이스를 칭한다. "프루버(prover)"(예컨대, 프루버 디바이스)라는 용어는 권한(authority), 유효성(validity), 및/또는 식별 정보(identity)에 대한 소정의 증명을 제공하도록 요구받은 임의의 사람, 플랫폼, 시스템, 소프트웨어, 및/또는 디바이스를 칭한다. "디바이스 제작자(device manufacturer)"라는 용어는 디바이스 혹은 플랫폼을 제조 혹은 구성하는 임의의 사람, 플랫폼, 시스템, 엔티티, 소프트웨어 및/또는 디바이스(예컨대, TPM(Trusted Platform Module))를 칭한다. "디바이스 제작자"라는 용어는 "인증 제작자(certifying manufacturer)"라는 용어와 교환하여 사용될 수 있다. "해시(HASH)"라는 용어는 임의의 해싱 함수(hashing function) 혹은 알고리즘이나 그것의 등가물을 칭한다.
여기서 논의된 본 발명의 여러 실시예에 대한 설명 및 기재 전체에 걸쳐, 계수(coefficients), 변수(variables), 및 그 외의 심벌들(symbols)은 동일한 라벨 혹은 명칭으로 표기된다. 따라서, 설명의 서로 다른 부분에서 심벌(예컨대, h)이 등장하는 경우에도, 동일한 심벌이 전체에 걸쳐 표기되는 것이다.
본 발명의 실시예의 일 양상은, TTP(Trusted Third Party)를 사용하지 않고 디바이스에 대해 익명으로 인증 시스템을 제공하는 방법을 제시한다.
본 발명의 실시예의 일 양상은, 챌린저에게 서명을 노출하지 않고, 프루버 플랫폼 혹은 디바이스가 디바이스 제작자로부터의 서명을 가지고 있다는 것을 챌린저에게 입증하는 방법, 시스템, 및 디바이스를 제공한다.
본 발명의 실시예의 또 다른 양상은, 프루버 디바이스(예컨대, 요구 디바이스(requesting device))에 의해 유지된 기밀(secret)의 단방향 함수의 결과를 챌린저에게 제공하고, 챌린저에게 기밀 혹은 서명을 노출하지 않고, 단방향 함수에 사용된 기밀이 디바이스 서명에 의해 서명되었음을 챌린저에게 입증하는 방법, 시스템, 및 디바이스를 제공한다.
여기서 사용된 바와 같이, 챌린저에게 공개된 정보 및 증명에 기초하여, 프루버가 서명 혹은 기밀 수단들을 구비하거나 알고 있다는 것을 챌린저에게 "입증(prove)"하거나 "납득(convince)"시킨다면, 개연적으로 프루버가 서명 혹은 기밀을 가지고 있음직하다. 챌린저 수단에 서명이나 기밀을 "노출(revealing)" 혹은 "공개(disclosing)"하지 않고 챌린저에게 노출된 정보에 기초하여, 챌린저에게 이를 입증한다면, 서명이나 기밀을 판정하는 것은 계산적으로 실행 불가능할 것이다.
그러한 증명은 이후에 직접 증명으로 불린다. "직접 증명(direct proof)"이라는 용어는 양방향성 증명(interactive proofs) 및/또는 영-지식 증명(zero-knowledge proofs)으로 칭하고, 이러한 증명의 유형은 본 분야에서 일반적으로 알려져 있다.
도 1은 본 발명의 실시예에 따라 직접 증명 방식(direct proof scheme)이 구현될 수 있는 시스템을 도시한다.
도 2는 본 발명의 일 실시예에 따라 TPM(Trusted Platform Module)을 포함하는 플랫폼의 일 실시예를 도시하는 블록도이다.
도 3은 본 발명의 일 실시예에 따라 제조하는 동안 TPM을 셋업하는 절차를 도시한다.
도 4는 본 발명의 일 실시예에 따라 제작된 각 플랫폼에 대해 수행된 셋업을 도시한다.
도 5는 본 발명의 일 실시예에 따라 정보를 노출하지 않고 플랫폼(프루버(prover))이 인증 정보를 알고 있다는 것을 챌린저에게 입증하기 위한 양방향성 증명 방법을 도시한다.
도 6은 도 5에 있어 챌린저와 플랫폼 간의 양방향성 증명(interactive proof; IP1)을 구현하기 위한 방법을 도시하는 순서도이다.
도 7은 도 5에 있어 챌린저와 플랫폼 간의 양방향성 증명(IP2)을 구현하기 위한 방법을 도시하는 순서도.
도 8은 제한된 수의 라운드 내에 본 발명의 일 실시예에 따라 인증 프로세스를 진척시키기 위해 직접 증명이 어떻게 구현될 수 있는지를 도시한다.
도 1은 본 발명의 실시예에 따른 직접 증명 방식이 구현될 수 있는 시스템을 도시한다. 플랫폼 A(102)(챌린저)는 플랫폼 B(104)(프루버)에게 그에 관한 소정의 정보를 제공할 것으로 요구하고, 플랫폼 B(104)는 상기 요구된 정보를 제공한다. 그러나 플랫폼 A(102)는 요구된 정보가 디바이스 제작자 C에 의해 제조된 디바이스로부터 온 것임을 확인하기를 원한다. 따라서, 플랫폼 A(102)는 플랫폼 B(104)가 디바이스 제작자 C에 의해 생성된 서명을 가지고 있다는 것을 확인하기 위해 대답을 요구한다(challenge). 플랫폼 B(104)는, 서명을 노출하지 않고, 플랫폼 B(104)가 디바이스 제작자 C에 의해 생성된 서명을 가지고 있다는 것에 대해 플랫폼 A(102)를 납득시키는 정보를 제공함으로써 그러한 요구에 응한다.
본 발명의 일 실시예에 있어서, 플랫폼 B(104)는 TPM(Trusted Platform Module; 106)를 포함할 수 있다. 이는 디바이스 제작자에 의해 제조되어, 본 발명을 위해 필요한 함수들을 수행하고, 여기 설명된 프로토콜의 연산들을 따른다. 일반적으로, TPM은 여기 설명된 보안 특성을 유지하도록 제조되어야 한다. 예를 들어, 아래 설명되고, 도 6에 도시된 프로토콜 IP1에서, TPM은 지정된 값을 사용하여 지정된 기능을 수행한다. TPM은 프로토콜 내에 보안 결함(security flaw)을 생성하지 않는 (예컨대, 디바이스의 식별 정보가 결정될 수 있게 할 만한) 값들(예컨대, 아래 지정된 값들)을 사용하도록 제조되거나 구성되어야 한다.
도 2는 본 발명의 일 실시예에 따른 TPM(Trusted Platform Module; 204)을 갖는 디바이스 혹은 플랫폼(200)(예컨대, 플랫폼 B(104))의 일 실시예를 도시하는 블록도이다. 디바이스(200)는 TPM(204)에 결합된 처리장치(202)를 포함할 수 있 다. 일 구현에 있어서, 기억장치(206)는 디바이스(200)에 대한 정보의 기억을 허용하도록 디바이스(200)에 포함될 수도 있다. 본 발명의 다양한 실시예에 있어서, 플랫폼 혹은 디바이스(200)는 컴퓨터, 이동 디바이스 등의 전자적 디바이스일 수 있다.
도 3은 본 발명의 일 실시예에 따라 각 플랫폼 클래스(platform class)에 대해 수행된 셋업을 도시한다. 플랫폼 클래스는 하나 이상의 유형의 플랫폼 혹은 디바이스를 포함하도록 디바이스 제작자에 의해 정의될 수 있다. 예로서, 플랫폼 클래스는 모든 플랫폼이 동일한 보안 관련 정보를 갖는 세트일 수 있다. 각 플랫폼은 플랫폼에 관한 보안 관련 정보 세트를 갖는다. 이러한 정보는 TCPA 모델에서 EK 혹은 AIK 인증서에 포함되는 정보 중 일부를 포함할 수 있다. 또한, 특정 플랫폼 혹은 디바이스의 제작자 및 모델 번호를 포함할 수 있다.
각 플랫폼 클래스에 대해, 디바이스 제작자는 그 플랫폼 클래스에 대해 제작자가 사용하는 암호 파라미터를 작성한다. 디바이스 제작자는 그가 제조하는 디바이스(예컨대, 디바이스(200))에 대한 기밀들을 서명하는데 사용하는 서명 키를 작성한다.
본 발명의 일 실시예에서, 디바이스 제작자는 RSA 알고리즘(로날드 리베스트, 아디 샤미르, 및 레오날드 아델만에 의해 정의된 공개-키 암호 체계)을 사용하여, 공개 모듈러스(public modulus) n, 공개 지수(public exponent) d, 및 비밀 지수(private exponent) e를 갖는 RSA 공개, 비밀 키 쌍(RSA public, private key pair)을 생성한다(320). 이는, 존 윌리 & 손스사의 브루스 슈네이어에 의해, Applied Cryptography(2판, 1995년 10월 18일); ISBN: 0471117099에 기술된 바와 같은, 공지된 방법을 사용하여 작성될 수 있다. 모듈러스 n은 너무 크게 선택되므로 n을 인수분해하는 것은 계산적으로 실행 불가능하다.
디바이스 제작자는 파라미터 Z를 지정하는데, 이는 제로(0)와 n 사이의 정수이다(304).
디바이스 제작자는 보안 파라미터 W를 지정하는데, 이는 제로(0)와 n 사이의 정수이다(306). 그러나 W를 너무 작거나 너무 크게 지정하면 보안 오류(security failure)를 야기할 수 있다. 일 구현에서, W는 2160 및 n/2160 사이에서 선택되도록 추천될 수 있다. 따라서, 대략
Figure 112005027844374-pct00001
이 되도록 W를 선택하는 것은 합리적인 선택일 수 있다.
본 발명의 일 실시예에서, 디바이스 제작자는 소수(prime number) P = u*n+1을 계산한다(308). u*n+1이 소수라는 것 이외에, u의 값에 관한 특별한 것은 아무것도 없다. 예를 들어, 가장 작은 값의 u가 사용될 수 있다. 일반적으로, P 값은 너무 크기 때문에 불연속 대수 mod P(discrete logarithms mod P)는 계산적으로 실행 불가능하다.
디바이스 제작자는 암호 파라미터 e, n, u, P, Z, W, 플랫폼 클래스의 보안 관련 정보, 및 디바이스 제작자의 명칭을 포함하는 플랫폼 클래스 인증서(Platform Class Certificate)를 생성한다(310). 일 실시예에서, 파라미터 u 및 P는 둘 다 포함되지는 않을 것이다. 왜냐하면, n과 이들 파라미터들 중 하나가 주어지면 나 머지 하나는 P = u*n+1에 의해 계산될 수 있기 때문이다.
본 발명의 일 실시예에서, 디바이스 제작자는 여러 개의 서로 다른 플랫폼 클래스에 대해 동일한 e, n, u, P, W를 사용하고, 서로 다른 플랫폼에 대해 Z 값만을 변경한다. 이러한 경우에, Z 값은 적어도 4W씩 다르도록 선택되어야 한다.
플랫폼 클래스 인증서가 생성되면, 디바이스 제작자는 특정 플랫폼 클래스에 속하는 그가 제조한 디바이스들에게 클래스 인증서를 제공한다(312).
프루버 디바이스 혹은 플랫폼(예컨대, 도 1에서의 플랫폼 A)으로부터 챌린저로의 플랫폼 클래스 인증서의 분배는 본 발명의 하나 이상의 실시예로부터 벗어나지 않는 한 많은 방식으로 달성될 수 있다. 이러한 암호 파라미터, 즉, 플랫폼 클래스 인증서는, 클래스 인증서가 디바이스 제작자에 의해 생성되었다는 것을 챌린저에게 납득시키는 방식으로 챌린저에게 분배되어야 한다. 이를 실시하기 위한 용인된 표준 방법, 즉, 챌린저에게 직접 파라미터를 분배하는 방법, 또는 인증 기관(certifying authority)에 의해 서명된 플랫폼 클래스 인증서를 갖는 방법이 있다. 후자 경우에, 인증 기관의 공개 키는 챌린저에게 분배될 것이고, 서명된 플랫폼 클래스 인증서는 플랫폼 클래스 내의 각 디바이스나 플랫폼(예컨대, 프루버 디바이스)에 주어질 수 있다. 그때, 디바이스는 서명된 플랫폼 클래스 인증서를 챌린저에게 줄 수 있다.
도 4는 본 발명의 일 실시예에 따라 제조된 프루버 플랫폼 혹은 디바이스에 대해 수행된 셋업을 도시한다. 프루버 디바이스는 0 < m-Z < W인 난수(random number) m을 선택한다(402). 프루버 디바이스는, 서명을 위해 인증 제작자에게 전달하기 전에 이 난수 m을 숨길 수 있다. 이러한 경우에, 프루버 디바이스는 1과 n-1 사이에서 난수 B를 선택하고(406), A = Be mod n을 계산한다(408). 프루버 디바이스는 m' = m*A mod n을 계산한다(410).
디바이스가 m을 가리지 못한다면, 디바이스는 m' = m 및 A = 1을 사용한다(412).
프루버 디바이스는 m'을 인증 제작자에게 전송한다(414). 인증 제작자는 c' = m'd mod n을 계산하고(416), c'를 디바이스에게 준다(418). 디바이스는 c = c'*B-1 mod n을 계산한다(420). 이는 c = md mod n임을 함축한다는 것에 주목한다. 수 c 및 m은 TPM에 기억된다(422). c와 m 쌍은 디바이스 제작자의 서명으로 불린다.
도 5는 본 발명의 일 실시예에 따라 서명을 노출하지 않고, 프루버 디바이스가 인증 제작자로부터의 서명을 가지고 있다는 것을 챌린저에게 입증하기 위한 방법을 도시한다. 챌린저(예컨대, 플랫폼 A(102))는 TPM를 갖는 프루버 디바이스(예컨대, 디바이스 B(104))로부터 유효성을 탐색하는 메시지(예컨대, 디바이스의 유효성을 조사함)를 전송할 수 있다(502). 이 메시지는 챌린저의 명칭을 포함할 수 있다. 프루버 디바이스는 수 n을 포함하는 챌린저에게 디바이스 인증서(예컨대, 플랫폼 클래스 인증서)를 전송한다(504). 프루버 디바이스 내의 TPM은 AIK 비밀-공개 키 쌍을 작성한다(506). 비밀-공개 키 쌍은 공개 키 및 비밀 키를 포함한다. 일 실시예에서, TPM은 더 일찍 AIK 비밀-공개 키 쌍을 작성할 수 있다. TPM은 값 h를 작성 혹은 생성한다(508). 값 h는, 다수의 방법, 즉, h 값을 랜덤하게 생성하는 방법 및 h 값을 결정론적 방식으로 생성하는 방법으로 결정될 수 있다. h 값은 hn = 1 mod P이고, TPM은 각 챌린저에 대해 서로 다른 h 값을 사용한다는 속성을 갖는다.
본 발명의 일 실시예에서, 값 h는 랜덤 혹의 의사-랜덤 방식으로 생성될 수 있다. 예를 들어, TPM은 1과 n-1 사이에서 난수 j를 선택하고, h = ju mod P를 계산할 수 있다.
TPM은 k 값, k = hm mod P를 계산한다(510). 프루버 디바이스는 챌린저에게 계산된 값 h 및 k와 AIK 공개 키를 보낸다(512).
본 발명의 또 다른 실시예에서, 값 h는 결정론적 방식으로 생성될 수 있다. 예를 들어, TPM은 챌린저의 명칭으로부터 결정론적 방식으로 h를 계산할 수 있다. 이를 실시하기 위한 하나의 방법으로서, 여러 값에 대해, Hi = HASH(i, 챌린저의 명칭)를 계산하는 것이 있는데, 예컨대, i = 1, 2, 3 ..., 10 중 i=10이라 가정하면, 그때, j = H1 || H2 || H3 ... || H10의 연속인 것으로 한다. 그때, 상술한 바와 같이, TPM은 h = ju mod P를 계산하는데, 여기서, 이전에 정의된 바와 같이, u = (P-1)/n이다. TPM은 k 값, k = hm mod P를 계산한다. 프루버 디바이스는 챌린저에게 계산된 값 k와 AIK 공개 키를 보낸다. TPM 사용자는 하나의 h가 다수의 파티에서 사용되지 않는다는 것을 확인하기를 원하는데, 이들 다수의 파티에서 사용되면 이 TPM의 익명이 깨지기 때문이다. 따라서, TPM 혹은 프루버 디바이스는 사용된 h 값의 전체 리스트를 유지하여, 반복적인 사용을 금하고, 또한 적어도 사용자에게 반복적으로 사용되었는지를 알릴 수 있다. 본 발명의 일 구현에 있어서, 프루버 디바이스는 챌린저의 명칭을 표시할 수도 있어, 프루버 디바이스는 명칭을 알고 있을 것이다. 이러한 실시예에서, 챌린저는 모든 TPM 키마다, 증명에 있어서 TPM이 가질 수 있는 k는 단지 k = hm mod P 하나라는 것을 확인한다. 챌린저가 AIK와 함께 k를 기억한다면, 그 챌린저는 하나의 TPM이 하나 이상의 AIK를 작성하지 않았다는 것을 확인할 수 있다. 이러한 방법은 챌린저 당 단일 h 방법으로 불릴 수 있다.
단일 서비스 제공자는 각각 그 자신의 명칭, 요컨대, 그 자신의 h를 갖는 다수의 챌린저를 구축할 수 있다. 서로 다른 챌린저는 단일 TPM으로부터 AIK를 상관시킬 수 없을 것이다. 그의 비즈니스 내에 다수의 챌린저를 허가할 것인지 여부에 대한 서비스 제공자의 결정을 이행한다.
그 다음, 프루버 디바이스는 m = ce mod n 및 k = hm mod P가 되는 c와 m 쌍의 값을 알고 있다는 챌린저와의 양방향성 증명(IP1)에 착수한다(514). 프루버 디바이스는 h를 밑으로 하는 k의 이산 로그가 Z와 Z+W 사이임을 나타내는 제2 양방향성 증명(IP2)으로 챌린저와의 양방향성 증명에 착수한다(516). 도 6 및 7은 2개의 양방향성 증명 IP1 및 IP2의 예시적인 실시예를 제공한다.
도 6은 본 발명의 일 실시예에 따라 챌린저와 프루버 디바이스 사이에서 도 5의 양방향성 증명 IP1을 구현하는 방법을 도시하는 순서도이다. c 혹은 m을 노출하는 TPM(프루버 디바이스의 일부)없이, TPM이 값 c 및 m, m = ce mod n 및 k = hm mod P임을 알고 있다는 것을 입증하기 위해 IP1을 사용할 수 있다. 챌린저는 AP(Assurance Parameter), 예컨대, 10과 40 사이의 값을 프루버 디바이스에 공급한다(602). TPM은 값 x mod n을 랜덤으로 선택한다(604). TPM은 y값, x*y = c mod n을 계산하고, v값,
Figure 112006078966242-pct00002
를 계산한다(608). TPM은 v 값을 챌린저에게 보낸다(610). TPM은 HASH(AIK 공개 키, x) 및 HASH(AIK 공개 키, y) 값을 계산한다(611). 챌린저는 x 혹은 y 중 수신할 것을 선출한다(612). 챌린저가 x를 수신하기 위해 선택한다면, TPM은 x를 챌린저에게 전송한다(614). 챌린저는
Figure 112006078966242-pct00003
인지와, HASH(AKI 공개 키, x)가 정확하게 전송되었는지를 검증한다. 한편, 챌린저가 y를 수신하기 위해 선출한다면(618), TPM은 y를 챌린저에게 전송하고, 챌린저는
Figure 112006078966242-pct00004
인지와, HASH(AIK 공개 키, y)가 정확하게 전송되었는지를 검증한다(620). 본 발명의 일 실시예에서, 이러한 검증 방식은 AP회(times) 수행된다(622).
도 7은 본 발명의 일 실시예에 따라 챌린저와 프루버 디바이스 사이에서 도 5의 양방향성 증명 IP2를 구현하는 방법을 도시하는 순서도이다. m을 노출하는 TPM없이 TPM이 m 값, Z-W < m < Z+2*W 및 k=hm mod P를 알고 있다는 것을 입증하기 위해 IP2가 사용될 수 있다.
챌린저는 AP(Assurance Parameter), 예컨대, 10과 40 사이의 값을 프루버 디바이스에 제공한다(701). TPM(프루버 디바이스의 일부)은 0 < t < W인 수(number) t를 랜덤으로 선택한다(702). TPM은 g0 = ht mod P(704)와 g1=g0*h(-W) mod P(706)를 계산한다. TPM은 2개의 랜덤 160-비트 값, R0, R1을 생성하고(708), H0=HASH(AIK 공개 키, g0, R0) 및 H1=HASH(AIK 공개 키, g1, R1)을 계산하며(710), H0와 H1을 랜덤한 순서로 챌린저에게 보낸다(712).
챌린저는 두 가지 초이스로부터, 예컨대, 초이스 0 혹은 1 중 하나를 선택한다.
챌린저가 초이스 0을 선택한다면, TPM은 t, R0, R1 및 H0과 H1의 순서화(ordering)를 챌린저에게 전송한다(716). 챌린저는 g0=ht mod P 및 g1=h(t-W) mod P를 계산한다(718). 챌린저는 0 < t < W인지 체크한다(720). 또한, 챌린저는 H0=HASH(AIK 공개 키, g0, R0) 및 H1=HASH(AIK 공개 키, g1, R1)인지를 체크한다(722). 이러한 체크들을 모두 통과하면 챌린저는 수락한다(724).
챌린저가 초이스 1을 선택한다면, m+t는 Z와 Z+W 사이 간격에 있고(726), TPM은 m'=m+t, g0 및 R0를 전송하고(728), H0를 사용한다는 것을 챌린저에게 알린다. 챌린저는 H0=HASH(AIK 공개 키, g0, R0)인지, m'이 Z와 Z+W 사이 간격에 있는 지, g0*k=hm' mod P인지를 체크한다(730). m+t>Z+W라면, TPM은 m'=m-W+t, g1 및 R1을 전송하고(732), H1을 사용한다는 것을 챌린저에게 알린다. 챌린저는 H1=HASH(AIK 공개 키, g1, R1), Z < m' < Z+W, 및 g1*k=hm' mod P인지를 체크한다(734). 상기 체크들을 통과하면 챌린저는 수락한다(724).
IP2의 일 실시예에서, 상기 절차는 AP회 반복된다(723). 도 6의 참조 번호 622에 도시된 바와 같이, IP1에 대해 절차를 반복하는 것 및/또는 도 7의 참조 번호 723에 도시된 바와 같이, IP2에 대해 절차를 반복하는 것은 인증받지 못한 프루버나 사기 프루버가 챌린저에게 적절한 증명을 성공적으로 제공할 가능성을 적게 만든다. 즉, 증명(예컨대, IP1 또는 IP2)을 AP회 반복할 경우, 프루버는 2AP 중 1의 찬스인 각 라운드에서 성공해야 한다.
TPM이 상술한 바와 같이 IP1과 IP2 프로세스를 성공적으로 완료한 이후에, 챌린저는, 프루버 디바이스/TPM이 값 m과 c, 결국, Z-W < m < Z+2*W와 c=md mod n을 알고 있다는 것을 납득한다. 다시 말해, c는 m의 서명이다. 간격 내에 주어진 값에 대해 m의 서명을 계산하는 것은 RSA를 분해하는 것과 등가이다. 모듈러스 n의 인수 분해를 모르고서 간격 내의 임의의 값의 서명을 계산하는 것은 난해한 계산 문제이다.
도 6 및 7에 도시된 프로토콜은 TPM(프루버 디바이스) 및 챌린저 사이에 다수의 통신 라운드를 요구하는 단점을 갖는다. 그러나, 본 발명의 다른 실시예에서, 이러한 프로토콜은 한정된 라운드 프로토콜로 전환될 수 있다.
도 8은 본 발명의 실시예에 따라 인증 프로세스를 촉진하기 위해, 한정된 수의 통신에서 직접 증명이 어떻게 구현될 수 있는지를 도시한다. TPM은 AIK 비밀-공개 키 쌍을 생성하고, 이는 AIK 공개 키 및 AIK 비밀 키를 포함하며, AIK 공개 키(혹은 AIK 공개 키의 HASH만)를 챌린저에게 전송한다(802). 챌린저는 AP(assurance parameter)를 선택하고(804), 랜덤 비트의 2*AP 세트(CHOICES)를 선택하고(806), 320 랜덤 비트의 추가 랜덤 필러(Random Filler)를 선택한다(808). 챌린저는 RAND = CHOICES || 랜덤 필러를 설정하고(810), 커미트먼트 = (공개 AIK 키 || RAND)를 계산하고, TPM이 기억하는 커미트먼트의 HASH를 TPM에 전송(812)한다.
TPM은 상술한 방법, 즉, 랜덤 방법을 사용하여 h를 생성하는 방법이나 챌린저당 단일 h 내의 챌린저 명칭으로부터 h를 생성하는 방법 중 하나를 사용하여 이 챌린저에서 사용한 h 값을 결정한다(818).
도 6 및 7에 도시된 바와 같이, 한 번에 1루프씩 값들을 연속적으로 계산하는 대신 TPM은 양방향성 증명(IP1 및 IP2) 양측에 대한 방법의 모든 라운드(루프들)에 대한 계산값들 전부를 생성하고, 모든 라운드에서 계산된 값들 전체를 챌린저에게 전송한다(820). 계산된 값들의 세트는 IP1, v, HASH(AIK 공개 키, x), 및 HASH(AKI 공개 키, y)의 각 라운드로부터; 그리고 IP2, H0 및 H1의 각 라운드로부터 k, h를 포함한다. 챌린저는 RAND의 값을 TPM으로 전송한다(822). TPM은 커미트먼트의 제1 비트가 공개 AIK 키의 해시임을 검증하고, 프로토콜동안 RAND의 제1 2*AD 비트를 챌린저를 위한 초이스로서 사용한다. TPM은 이러한 초이스들에 기초하여 모든 라운드에 대한 응답을 준비하고, 이들 응답 전체를 챌린저에게 되전송한다.
한정된 통신 버전의 일 실시예에 있어서, HASH(AIK 공개 키, x) 및 HASH(AIK 공개 키, y)는 챌린저에게 전송되지 않는다. 유사하게, H0의 값은 HASH(AIK 공개 키, g0, R0) 대신 HASH(g0, R0)이고, H1은 HASH(AIK 공개 키, g1, R1) 대신 HASH(g1, R1)이다.
임의의 구현에서, TPM 혹은 그것의 키(들)가 타협된(compromised) 것으로 판정되거나 짐작된다면 챌린저로 하여금 TPM를 철회하도록 허용하는 것이 바람직할 수도 있다.
프루버 디바이스의 TMP가 타협된 것으로 챌린저가 판정할 수 있는 일례로서, 타협된 TPM에 대한 키(c 및 m)가 웹 상에 게시되는 것과 같이, 널리 유포되어 있을 수 있다. 이러한 예에서, 챌린저는 그 TPM을 철회할 수 있다. 예를 들어, c0 및 m0는 게시되어 있는 타협된 TPM의 키들인 것으로 가정한다. 챌린저가 h 값을 볼 때마다, 챌린저는
Figure 112006078966242-pct00005
를 계산한다. 이것이 프루버에 의해 주어진 값 k와 매치한다면, 챌린저는 프루버에 의해 사용된 m이 타협된 TPM의 m0에 매치한다는 것을 알게 되고, 따라서 챌린저는 그것을 수락하지 않을 것이다.
철회의 또 다른 실시예로서, 챌린저가 항상 AIK 값과 함께 h 및 k 값을 기억하는 것으로 가정한다. 챌린저가 타협된 키 c0 및 m0를 수신하는 경우에, 챌린저는 수신된 h 및 k 중 임의의 값이 타협된 키 c0 및 m0를 사용하여 계산되었는지를 확인하기 위해 체크할 수 있다. 이는,
Figure 112005027844374-pct00006
를 계산하고, 그것이 TPM으로부터 수신된 k 값에 매치하는지를 확인하기 위해 체크함으로써 실시된다. 그렇다면, 대응 AIK 값을 철회한다. 챌린저 당 단일 h 방법이 사용되고 있다면, 챌린저는 k0를 계산하고 이것이 챌린저에 의해 수신된 k들 중 임의의 것과 매치하는지를 확인하기만 하면 되기 때문에, 챌린저에 의한 계산은 보다 쉬워진다.
키가 알려졌다는 것을 챌린저가 판정할 수 있는 또 다른 예로서, 챌린저는 알려졌다는 것을 나타내는 TPM에 대한 사용 패턴을 검출할 수 있다. 예를 들어, 서로 다른 프루버 디바이스로부터 챌린저에 대한 동시 두 개의 접속은 타협된 키를 나타낼 수 있다. 챌린저 당 단일 h 방법이 사용된다면, 동일한 k=hm mod P가 양 접속과 연관될 것이므로, 챌린저는 두 개의 접속이 동일한 m을 사용했다는 것을 알 것이다. 챌린저는 기밀 값(secret values)이 알려졌음을 판정할 수 있으므로, 챌린저는 그 k를 사용하는 직접 증명들을 더 이상 수락하지 않을 것이다. 그때, TPM로부터의 기밀 값들은 더이상 그 챌린저에서 사용되지 않을 수 있다. 그러나 이 챌린저는 m의 값을 모르기 때문에, 이 챌린저는 다른 챌린저에게 해당 TPM으로부터 오는 기밀 값을 사용하지 않도록 알려 줄 수 없다.
본 발명의 또 다른 실시예에서, 그룹 내의 챌린저 중 하나가 이들 기밀 값들이 알려져 있을 수 있음을 판정한다면, 챌린저 그룹은 TPM의 기밀 값을 그들이 모두 철회할 수 있길 원하는 것으로 판정할 수 있다. 이러한 특징을 가능하게 하면, 상술된 바와 같은 본 발명의 실시예로의 변경을 요구한다. 변경은 h 값이 판정되는 방법을 포함한다. TRA(Trusted Revocation Authority)이 형성된다. TRA는 표준 RSA 키 쌍과 같은, 공개 검증, 비밀 서명 키 쌍을 구비한다. TRA 공개 키는, 제조하는 동안 제작자가 TPM으로 키를 끼워 넣는 것과 같은, 임의의 안전한 분배 방법을 사용하여 TPM에게 주어진다.
TRA는 g 값, gn=1 mod P를 생성한다. TRA는 1과 P 사이의 랜덤 g' 값을 생성하고, g=g'u mod P를 계산함으로써 이를 실시할 수 있다. 그룹 내의 각 챌린저에 대해, TRA는 1과 n 사이에서 랜덤으로 EXP(exponent)를 선택하여, h=gEXP mod P를 계산한다. TRA는 챌린저의 명칭과 인증서 내에 h 값을 갖는 인증서에 서명한다. TRA는 각 챌린저에 대해 h를 작성하기 위해 사용된 EXP를 안전하게 기억한다.
TPM가 그룹 내의 챌린저와 함께 직접 증명을 공개하는 경우에, 챌린저는 h 값에 대한 이 인증서를 전송한다. TPM은 TRA의 서명을 체크함으로써 이 인증서를 검증한다. 유효하다면, TPM은 보다 앞선 실시예에서 설명된 바와 같이 h 값을 생성하는 대신, 이 h 값을 사용한다. 직접 증명의 그 외의 양상들도 동일하게 유지된다.
h 값으로서 h1을 갖는 챌린저1(Challenger1)가 k1=h1 m mod P를 생성한 TPM을 철회하기를 원한다고 알리는 경우에, TRA는 EXP1, 즉,
Figure 112005027844374-pct00007
을 계산하기 위해 사용된 EXP 값을 검색한다. 어떠한 챌린저1 및 TRA도 TPM에서 챌린저1이 철회하기를 원하는 m의 값을 알 수 없음을 주목해야 한다. 챌린저i에게 철회할 k 값을 얘기한다면, TRA는 b1=EXP1 (-1) mod n을 계산하고,
Figure 112005027844374-pct00008
를 계산한다. ki=hi m mod P임을 주목한다. TRA는 이러한 계산동안 m을 계산하지 않고, ki는 챌린저i에게 전송되며, 챌린저i는 만약 원한다면 ki를 철회할 수 있다.
본 발명의 임의의 예시적인 실시예가 설명되고 첨부 도면에 도시되었지만, 그러한 실시예들은 단지 예시적인 것으로서, 본 발명의 여러 실시예들의 폭넓은 양상에 대한 제한을 의미하는 것이 아니고, 이들 실시예들은 도시되고 상술된 특정 구조 및 배치에 한정되는 것이 아니며, 다양한 그 외의 변경이 가능하다. 본 발명의 실시예 혹은 그들의 소정의 특징은 하드웨어, 프로그램가능 디바이스, 팜웨어, 소프트웨어 혹은 그들의 조합으로 구현될 수 있다.

Claims (47)

  1. 프루버가 공지된 엔티티의 유효 서명을 알고 있다는 것을 챌린저에게 납득시키는 방법으로서,
    상기 프루버가 상기 유효 서명을 알고 있다는 것을 상기 챌린저에게 납득시키기 위해서 상기 프루버로부터 양방향성 증명(interactive proof) 내의 제1 값을 수신하는 단계 - 상기 양방향성 증명은 상기 챌린저에게 상기 유효 서명을 노출하지 않음 -;
    타협된 것으로 간주되는 하나 이상의 프루버에 대응하는 정보의 철회 리스트를 유지하는 단계;
    상기 철회 리스트로부터의 정보 및 상기 제1 값을 사용하여 제2 값을 계산하는 단계; 및
    상기 서명을 노출하지 않고 상기 프루버에 의해 공지된 서명이 타협된 서명들로 이루어진 철회 리스트 상에 있지 않음을 상기 챌린저에게 납득시키기 위해서 상기 프루버의 양방향성 증명으로부터의 상기 제1 값과 상기 제2 값을 비교하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 챌린저는 상기 프루버를 위한 디바이스 인증서를 더 수신하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 프루버로부터 공개 키 및 k 값을 수신하는 단계
    를 더 포함하며, 상기 k 값은 단방향 함수(one-way function)에 기초하여 상기 프루버 내에서 생성되고, 상기 공개 키는 상기 프루버 내에서 생성된 비밀-공개 키 쌍의 일부인 방법.
  4. 제3항에 있어서,
    상기 k 값은 k=hm mod P로 정의되고, h는 상기 프루버에 의해 생성된 고유의 수이고, m은 랜덤으로 생성된 수이며, P는 큰 소수(prime number)인 방법.
  5. 제1항 또는 제2항에 있어서,
    상기 양방향성 증명은 상기 프루버의 식별 정보(identity)를 상기 챌린저에게 노출하지 않는 방법.
  6. 제1항 또는 제2항에 있어서,
    상기 프루버가 상기 유효 서명을 알고 있다는 것을 상기 챌린저에게 납득시키기 위해서 상기 프루버로부터 제2 양방향성 증명 내의 제3 값을 수신하는 단계
    를 더 포함하며,
    상기 챌린저는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 방법.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 통신 포트; 및
    상기 통신 포트와 결합된 처리 유닛
    을 포함하며, 상기 처리 유닛은,
    상기 통신 포트에서 프루버 디바이스로부터 양방향성 증명 내의 제1 값을 수신하고 - 상기 제1 값은 상기 프루버 디바이스가 유효 서명을 알고 있다는 것을 챌린저 디바이스에게 납득시키며, 상기 양방향성 증명은 상기 챌린저 디바이스에게 상기 유효 서명을 노출하지 않음 -,
    타협된 것으로 간주되는 하나 이상의 프루버에 대응하는 정보의 철회 리스트를 유지하며,
    상기 철회 리스트로부터의 정보 및 상기 제1 값을 사용하여 제2 값을 계산하고, 그리고
    상기 서명을 노출하지 않고 상기 프루버에 의해 공지된 서명이 타협된 서명들로 이루어진 철회 리스트 상에 있지 않음을 상기 챌린저 디바이스에게 납득시키기 위해서 상기 프루버 디바이스의 양방향성 증명으로부터의 상기 제1 값과 상기 제2 값을 비교하도록 구성되는 챌린저 디바이스.
  29. 제28항에 있어서, 상기 처리 유닛은 상기 통신 포트에서 상기 프루버 디바이스를 위한 디바이스 인증서를 수신하도록 더 구성된 챌린저 디바이스.
  30. 제28항 또는 제29항에 있어서, 상기 처리 유닛은,
    상기 통신 포트에서 상기 프루버 디바이스로부터 공개 키 및 k 값을 수신하도록 더 구성되며,
    상기 k 값은 단방향 함수에 기초하여 상기 프루버 디바이스 내에서 생성되고, 상기 공개 키는 상기 프루버 내에서 생성된 비밀-공개 키 쌍의 일부인 챌린저 디바이스.
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 제30항에 있어서,
    상기 k 값은 k=hm mod P로 정의되고, h는 상기 프루버 디바이스에 의해 생성된 고유의 수이고, m은 랜덤으로 생성된 수이며, P는 큰 소수인 챌린저 디바이스.
  36. 제28항 또는 제29항에 있어서,
    상기 양방향성 증명은 상기 프루버 디바이스의 식별 정보를 상기 챌린저 디바이스에게 노출하지 않는 챌린저 디바이스.
  37. 제28항 또는 제29항에 있어서,
    상기 통신 포트에서 상기 프루버 디바이스로부터 제2 양방향성 증명 내의 제3 값을 수신하도록 더 구성되며,
    상기 제3 값은 상기 프루버 디바이스가 상기 유효 서명을 알고 있다는 것을 상기 챌린저 디바이스에게 납득시키며, 상기 챌린저 디바이스는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 챌린저 디바이스.
  38. 제3항에 있어서,
    상기 양방향성 증명은 상기 프루버의 식별 정보를 상기 챌린저에게 노출하지 않는 방법.
  39. 제4항에 있어서,
    상기 양방향성 증명은 상기 프루버의 식별 정보를 상기 챌린저에게 노출하지 않는 방법.
  40. 제3항에 있어서,
    상기 프루버가 상기 유효 서명을 알고 있다는 것을 상기 챌린저에게 납득시키기 위해서 상기 프루버로부터 제2 양방향성 증명 내의 제3 값을 수신하는 단계
    를 더 포함하며,
    상기 챌린저는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 방법.
  41. 제4항에 있어서,
    상기 프루버가 상기 유효 서명을 알고 있다는 것을 상기 챌린저에게 납득시키기 위해서 상기 프루버로부터 제2 양방향성 증명 내의 제3 값을 수신하는 단계
    를 더 포함하며,
    상기 챌린저는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 방법.
  42. 제5항에 있어서,
    상기 프루버가 상기 유효 서명을 알고 있다는 것을 상기 챌린저에게 납득시키기 위해서 상기 프루버로부터 제2 양방향성 증명 내의 제3 값을 수신하는 단계
    를 더 포함하며,
    상기 챌린저는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 방법.
  43. 제30항에 있어서,
    상기 양방향성 증명은 상기 프루버 디바이스의 식별 정보를 상기 챌린저 디바이스에게 노출하지 않는 챌린저 디바이스.
  44. 제35항에 있어서,
    상기 양방향성 증명은 상기 프루버 디바이스의 식별 정보를 상기 챌린저 디바이스에게 노출하지 않는 챌린저 디바이스.
  45. 제30항에 있어서,
    상기 통신 포트에서 상기 프루버 디바이스로부터 제2 양방향성 증명 내의 제3 값을 수신하도록 더 구성되며,
    상기 제3 값은 상기 프루버 디바이스가 상기 유효 서명을 알고 있다는 것을 상기 챌린저 디바이스에게 납득시키며, 상기 챌린저 디바이스는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 챌린저 디바이스.
  46. 제35항에 있어서,
    상기 통신 포트에서 상기 프루버 디바이스로부터 제2 양방향성 증명 내의 제3 값을 수신하도록 더 구성되며,
    상기 제3 값은 상기 프루버 디바이스가 상기 유효 서명을 알고 있다는 것을 상기 챌린저 디바이스에게 납득시키며, 상기 챌린저 디바이스는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 챌린저 디바이스.
  47. 제36항에 있어서,
    상기 통신 포트에서 상기 프루버 디바이스로부터 제2 양방향성 증명 내의 제3 값을 수신하도록 더 구성되며,
    상기 제3 값은 상기 프루버 디바이스가 상기 유효 서명을 알고 있다는 것을 상기 챌린저 디바이스에게 납득시키며, 상기 챌린저 디바이스는 상기 제1 및 제3 값을 생성하기 위해서 동일한 서명이 사용되었는지를 판정할 수 없는 챌린저 디바이스.
KR1020057009543A 2002-11-27 2003-11-06 식별 정보를 노출하지 않고 신용을 수립하기 위한 시스템및 방법 KR100715738B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/306,336 US7165181B2 (en) 2002-11-27 2002-11-27 System and method for establishing trust without revealing identity
US10/306,336 2002-11-27

Publications (2)

Publication Number Publication Date
KR20050088085A KR20050088085A (ko) 2005-09-01
KR100715738B1 true KR100715738B1 (ko) 2007-05-09

Family

ID=32325661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057009543A KR100715738B1 (ko) 2002-11-27 2003-11-06 식별 정보를 노출하지 않고 신용을 수립하기 위한 시스템및 방법

Country Status (7)

Country Link
US (2) US7165181B2 (ko)
EP (1) EP1566011A1 (ko)
JP (1) JP2006508608A (ko)
KR (1) KR100715738B1 (ko)
CN (1) CN1717895B (ko)
AU (1) AU2003287567A1 (ko)
WO (1) WO2004051923A1 (ko)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308576B2 (en) * 2001-12-31 2007-12-11 Intel Corporation Authenticated code module
US7631196B2 (en) * 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
FR2842052B1 (fr) * 2002-07-05 2004-09-24 France Telecom Procede et dispositifs cryptographiques permettant d'alleger les calculs au cours de transactions
US7840806B2 (en) * 2002-10-16 2010-11-23 Enterprise Information Management, Inc. System and method of non-centralized zero knowledge authentication for a computer network
US8239917B2 (en) * 2002-10-16 2012-08-07 Enterprise Information Management, Inc. Systems and methods for enterprise security with collaborative peer to peer architecture
GB0228760D0 (en) * 2002-12-10 2003-01-15 Koninkl Philips Electronics Nv Efficient implementation of zero knowledge protocols
US7318235B2 (en) * 2002-12-16 2008-01-08 Intel Corporation Attestation using both fixed token and portable token
US20050039016A1 (en) * 2003-08-12 2005-02-17 Selim Aissi Method for using trusted, hardware-based identity credentials in runtime package signature to secure mobile communications and high-value transaction execution
US20050044408A1 (en) * 2003-08-18 2005-02-24 Bajikar Sundeep M. Low pin count docking architecture for a trusted platform
US20050044292A1 (en) * 2003-08-19 2005-02-24 Mckeen Francis X. Method and apparatus to retain system control when a buffer overflow attack occurs
US7366305B2 (en) * 2003-09-30 2008-04-29 Intel Corporation Platform and method for establishing trust without revealing identity
US8464353B2 (en) * 2003-10-03 2013-06-11 Hewlett-Packard Development Company, L. P. Method and system for content downloads via an insecure communications channel to devices
US7555652B2 (en) * 2003-10-17 2009-06-30 International Business Machines Corporation Method for user attestation signatures with attributes
US9331990B2 (en) * 2003-12-22 2016-05-03 Assa Abloy Ab Trusted and unsupervised digital certificate generation using a security token
US7587607B2 (en) * 2003-12-22 2009-09-08 Intel Corporation Attesting to platform configuration
US8037314B2 (en) * 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US20050144477A1 (en) * 2003-12-30 2005-06-30 Ball Charles D. Apparatus, system, and method for shared access to secure computing resources
US7526649B2 (en) * 2003-12-30 2009-04-28 Intel Corporation Session key exchange
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US7581107B2 (en) * 2004-05-28 2009-08-25 International Business Machines Corporation Anonymity revocation
US7490070B2 (en) * 2004-06-10 2009-02-10 Intel Corporation Apparatus and method for proving the denial of a direct proof signature
EP1617587A1 (en) * 2004-07-12 2006-01-18 International Business Machines Corporation Method, system and computer program product for privacy-protecting integrity attestation of computing platform
KR100883442B1 (ko) * 2004-07-14 2009-02-11 인텔 코포레이션 온라인 서비스를 사용하여 직접 증명 비밀키를 디바이스에전달하는 방법
US7792303B2 (en) * 2004-07-14 2010-09-07 Intel Corporation Method of delivering direct proof private keys to devices using a distribution CD
KR100897075B1 (ko) 2004-07-14 2009-05-14 인텔 코오퍼레이션 배포 cd를 사용하는 장치에 서명 그룹의 다이렉트 증명개인 키들을 전달하는 방법
US7697691B2 (en) * 2004-07-14 2010-04-13 Intel Corporation Method of delivering Direct Proof private keys to devices using an on-line service
US7693286B2 (en) * 2004-07-14 2010-04-06 Intel Corporation Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US7770000B2 (en) * 2005-05-02 2010-08-03 International Business Machines Corporation Method and device for verifying the security of a computing platform
US7809957B2 (en) 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
ES2664413T3 (es) * 2006-04-21 2018-04-19 Interdigital Technology Corporation Aparato y métodos para realizar informes de mediciones de integridad informática de confianza
US20070269040A1 (en) * 2006-05-16 2007-11-22 Microsoft Corporation Cryptographic Protocol for Commonly Controlled Devices
WO2008026086A2 (en) * 2006-08-31 2008-03-06 International Business Machines Corporation Attestation of computing platforms
US8145897B2 (en) 2008-09-29 2012-03-27 Intel Corporation Direct anonymous attestation scheme with outsourcing capability
US20110016524A1 (en) * 2009-07-16 2011-01-20 Assa Abloy Ab Blind verification of computer firmware
US8418259B2 (en) * 2010-01-05 2013-04-09 Microsoft Corporation TPM-based license activation and validation
CN102096778B (zh) * 2010-12-07 2013-01-23 中国科学院软件研究所 基于椭圆曲线和双线性对密码体制的直接匿名证明方法
US9087196B2 (en) 2010-12-24 2015-07-21 Intel Corporation Secure application attestation using dynamic measurement kernels
US8595505B2 (en) 2011-09-28 2013-11-26 Intel Corporation Apparatus and method for direct anonymous attestation from bilinear maps
US9323950B2 (en) * 2012-07-19 2016-04-26 Atmel Corporation Generating signatures using a secure device
EP2930880A4 (en) * 2012-12-05 2016-08-03 Sony Corp INFORMATION PROCESSOR, VERIFICATION PROCESSOR, INFORMATION PROCESSING METHOD, VERIFICATION PROCESSING METHOD, AND PROGRAM
US9118467B2 (en) 2013-03-13 2015-08-25 Atmel Corporation Generating keys using secure hardware
KR101508521B1 (ko) * 2014-01-03 2015-04-07 고려대학교 산학협력단 Lpn 문제 기반의 경량 인증 및 거리 한정 프로토콜 제공 시스템 및 방법
US10482255B2 (en) 2016-02-16 2019-11-19 Atmel Corporation Controlled secure code authentication
US10474823B2 (en) 2016-02-16 2019-11-12 Atmel Corporation Controlled secure code authentication
US10616197B2 (en) 2016-04-18 2020-04-07 Atmel Corporation Message authentication with secure code verification
US11301590B2 (en) * 2018-09-05 2022-04-12 International Business Machines Corporation Unfalsifiable audit logs for a blockchain
US11323275B2 (en) 2019-03-25 2022-05-03 Micron Technology, Inc. Verification of identity using a secret key
US11233650B2 (en) 2019-03-25 2022-01-25 Micron Technology, Inc. Verifying identity of a vehicle entering a trust zone
US11218330B2 (en) * 2019-03-25 2022-01-04 Micron Technology, Inc. Generating an identity for a computing device using a physical unclonable function
US11361660B2 (en) 2019-03-25 2022-06-14 Micron Technology, Inc. Verifying identity of an emergency vehicle during operation
US20220224547A1 (en) * 2019-09-16 2022-07-14 Noodle Technology Inc. Provisioning and authenticating device certificates
CN110768791B (zh) * 2019-09-24 2022-11-04 北京八分量信息科技有限公司 一种零知识证明的数据交互方法、节点、设备
CN111031365B (zh) * 2020-01-13 2022-01-21 深圳市网安信科技有限公司 一种适用于云端广播电视网的用户认证系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633929A (en) * 1995-09-15 1997-05-27 Rsa Data Security, Inc Cryptographic key escrow system having reduced vulnerability to harvesting attacks

Family Cites Families (177)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3699532A (en) 1970-04-21 1972-10-17 Singer Co Multiprogramming control for a data handling system
US3996449A (en) 1975-08-25 1976-12-07 International Business Machines Corporation Operating system authenticator
US4162536A (en) 1976-01-02 1979-07-24 Gould Inc., Modicon Div. Digital input/output system and method
US4037214A (en) 1976-04-30 1977-07-19 International Business Machines Corporation Key register controlled accessing system
US4247905A (en) 1977-08-26 1981-01-27 Sharp Kabushiki Kaisha Memory clear system
US4278837A (en) 1977-10-31 1981-07-14 Best Robert M Crypto microprocessor for executing enciphered programs
US4276594A (en) 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4207609A (en) 1978-05-08 1980-06-10 International Business Machines Corporation Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system
JPS5823570B2 (ja) 1978-11-30 1983-05-16 国産電機株式会社 液面検出装置
JPS5576447A (en) 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation
US4307447A (en) 1979-06-19 1981-12-22 Gould Inc. Programmable controller
US4529870A (en) 1980-03-10 1985-07-16 David Chaum Cryptographic identification, financial transaction, and credential device
US4319323A (en) 1980-04-04 1982-03-09 Digital Equipment Corporation Communications device for data processing system
US4419724A (en) 1980-04-14 1983-12-06 Sperry Corporation Main bus interface package
US4366537A (en) 1980-05-23 1982-12-28 International Business Machines Corp. Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys
US4403283A (en) 1980-07-28 1983-09-06 Ncr Corporation Extended memory system and method
DE3034581A1 (de) 1980-09-13 1982-04-22 Robert Bosch Gmbh, 7000 Stuttgart Auslesesicherung bei einchip-mikroprozessoren
JPS58140862A (ja) 1982-02-16 1983-08-20 Toshiba Corp 相互排他方式
US4521852A (en) 1982-06-30 1985-06-04 Texas Instruments Incorporated Data processing device formed on a single semiconductor substrate having secure memory
JPS59111561A (ja) 1982-12-17 1984-06-27 Hitachi Ltd 複合プロセツサ・システムのアクセス制御方式
US4759064A (en) 1985-10-07 1988-07-19 Chaum David L Blind unanticipated signature systems
US4975836A (en) 1984-12-19 1990-12-04 Hitachi, Ltd. Virtual computer system
JPS61206057A (ja) 1985-03-11 1986-09-12 Hitachi Ltd アドレス変換装置
FR2592510B1 (fr) 1985-12-31 1988-02-12 Bull Cp8 Procede et appareil pour certifier des services obtenus a l'aide d'un support portatif tel qu'une carte a memoire
FR2601525B1 (fr) 1986-07-11 1988-10-21 Bull Cp8 Dispositif de securite interdisant le fonctionnement d'un ensemble electronique apres une premiere coupure de son alimentation electrique
FR2601476B1 (fr) 1986-07-11 1988-10-21 Bull Cp8 Procede pour authentifier une donnee d'habilitation externe par un objet portatif tel qu'une carte a memoire
FR2601535B1 (fr) 1986-07-11 1988-10-21 Bull Cp8 Procede pour certifier l'authenticite d'une donnee echangee entre deux dispositifs connectes en local ou a distance par une ligne de transmission
FR2618002B1 (fr) 1987-07-10 1991-07-05 Schlumberger Ind Sa Procede et systeme d'authentification de cartes a memoire electronique
US5007082A (en) 1988-08-03 1991-04-09 Kelly Services, Inc. Computer software encryption apparatus
US5079737A (en) 1988-10-25 1992-01-07 United Technologies Corporation Memory management unit for the MIL-STD 1750 bus
US5434999A (en) 1988-11-09 1995-07-18 Bull Cp8 Safeguarded remote loading of service programs by authorizing loading in protected memory zones in a terminal
FR2640798B1 (fr) 1988-12-20 1993-01-08 Bull Cp8 Dispositif de traitement de donnees comportant une memoire non volatile electriquement effacable et reprogrammable
JPH02171934A (ja) 1988-12-26 1990-07-03 Hitachi Ltd 仮想計算機システム
JPH02208740A (ja) 1989-02-09 1990-08-20 Fujitsu Ltd 仮想計算機制御方式
JPH0617217B2 (ja) * 1989-02-28 1994-03-09 水澤化学工業株式会社 非晶質シリカ・アルミナ系球状粒子及びその製法
US5442645A (en) 1989-06-06 1995-08-15 Bull Cp8 Method for checking the integrity of a program or data, and apparatus for implementing this method
JP2590267B2 (ja) 1989-06-30 1997-03-12 株式会社日立製作所 仮想計算機における表示制御方式
US5022077A (en) 1989-08-25 1991-06-04 International Business Machines Corp. Apparatus and method for preventing unauthorized access to BIOS in a personal computer system
JP2825550B2 (ja) 1989-09-21 1998-11-18 株式会社日立製作所 多重仮想空間アドレス制御方法および計算機システム
CA2010591C (en) 1989-10-20 1999-01-26 Phillip M. Adams Kernels, description tables and device drivers
CA2027799A1 (en) 1989-11-03 1991-05-04 David A. Miller Method and apparatus for independently resetting processors and cache controllers in multiple processor systems
US5075842A (en) 1989-12-22 1991-12-24 Intel Corporation Disabling tag bit recognition and allowing privileged operations to occur in an object-oriented memory protection mechanism
US5108590A (en) 1990-09-12 1992-04-28 Disanto Dennis Water dispenser
US5230069A (en) 1990-10-02 1993-07-20 International Business Machines Corporation Apparatus and method for providing private and shared access to host address and data spaces by guest programs in a virtual machine computer system
US5317705A (en) 1990-10-24 1994-05-31 International Business Machines Corporation Apparatus and method for TLB purge reduction in a multi-level machine system
US5287363A (en) 1991-07-01 1994-02-15 Disk Technician Corporation System for locating and anticipating data storage media failures
US5437033A (en) 1990-11-16 1995-07-25 Hitachi, Ltd. System for recovery from a virtual machine monitor failure with a continuous guest dispatched to a nonguest mode
US5255379A (en) 1990-12-28 1993-10-19 Sun Microsystems, Inc. Method for automatically transitioning from V86 mode to protected mode in a computer system using an Intel 80386 or 80486 processor
US5453003A (en) 1991-01-09 1995-09-26 Pfefferle; William C. Catalytic method
US5551033A (en) * 1991-05-17 1996-08-27 Zenith Data Systems Corporation Apparatus for maintaining one interrupt mask register in conformity with another in a manner invisible to an executing program
US5319760A (en) 1991-06-28 1994-06-07 Digital Equipment Corporation Translation buffer for virtual machines with address space match
US5522075A (en) 1991-06-28 1996-05-28 Digital Equipment Corporation Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces
US5455909A (en) 1991-07-05 1995-10-03 Chips And Technologies Inc. Microprocessor with operation capture facility
JPH06236284A (ja) 1991-10-21 1994-08-23 Intel Corp コンピュータシステム処理状態を保存及び復元する方法及びコンピュータシステム
US5627987A (en) 1991-11-29 1997-05-06 Kabushiki Kaisha Toshiba Memory management and protection system for virtual memory in computer system
US5574936A (en) 1992-01-02 1996-11-12 Amdahl Corporation Access control mechanism controlling access to and logical purging of access register translation lookaside buffer (ALB) in a computer system
US5486529A (en) 1992-04-16 1996-01-23 Zeneca Limited Certain pyridyl ketones for treating diseases involving leukocyte elastase
US5421006A (en) 1992-05-07 1995-05-30 Compaq Computer Corp. Method and apparatus for assessing integrity of computer system software
US5237616A (en) 1992-09-21 1993-08-17 International Business Machines Corporation Secure computer system having privileged and unprivileged memories
US5293424A (en) 1992-10-14 1994-03-08 Bull Hn Information Systems Inc. Secure memory card
US5796835A (en) 1992-10-27 1998-08-18 Bull Cp8 Method and system for writing information in a data carrier making it possible to later certify the originality of this information
JP2765411B2 (ja) 1992-11-30 1998-06-18 株式会社日立製作所 仮想計算機方式
US5668971A (en) 1992-12-01 1997-09-16 Compaq Computer Corporation Posted disk read operations performed by signalling a disk read complete to the system prior to completion of data transfer
JPH06187178A (ja) 1992-12-18 1994-07-08 Hitachi Ltd 仮想計算機システムの入出力割込み制御方法
US5483656A (en) 1993-01-14 1996-01-09 Apple Computer, Inc. System for managing power consumption of devices coupled to a common bus
US5469557A (en) 1993-03-05 1995-11-21 Microchip Technology Incorporated Code protection in microcontroller with EEPROM fuses
FR2703800B1 (fr) 1993-04-06 1995-05-24 Bull Cp8 Procédé de signature d'un fichier informatique, et dispositif pour la mise en Óoeuvre.
US5628023A (en) 1993-04-19 1997-05-06 International Business Machines Corporation Virtual storage computer system having methods and apparatus for providing token-controlled access to protected pages of memory via a token-accessible view
FR2704341B1 (fr) 1993-04-22 1995-06-02 Bull Cp8 Dispositif de protection des clés d'une carte à puce.
JPH06348867A (ja) 1993-06-04 1994-12-22 Hitachi Ltd マイクロコンピュータ
FR2706210B1 (fr) 1993-06-08 1995-07-21 Bull Cp8 Procédé d'authentification d'un objet portatif par un terminal hors ligne, objet portatif et terminal correspondants.
US5444850A (en) * 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
US5555385A (en) 1993-10-27 1996-09-10 International Business Machines Corporation Allocation of address spaces within virtual machine compute system
US5825880A (en) 1994-01-13 1998-10-20 Sudia; Frank W. Multi-step digital signature method and system
US5459869A (en) 1994-02-17 1995-10-17 Spilo; Michael L. Method for providing protected mode services for device drivers and other resident software
US5604805A (en) * 1994-02-28 1997-02-18 Brands; Stefanus A. Privacy-protected transfer of electronic information
FR2717286B1 (fr) 1994-03-09 1996-04-05 Bull Cp8 Procédé et dispositif pour authentifier un support de données destiné à permettre une transaction ou l'accès à un service ou à un lieu, et support correspondant.
US5684881A (en) 1994-05-23 1997-11-04 Matsushita Electric Industrial Co., Ltd. Sound field and sound image control apparatus and method
US5539828A (en) 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
US5473692A (en) 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
JPH0883211A (ja) 1994-09-12 1996-03-26 Mitsubishi Electric Corp データ処理装置
DE69534757T2 (de) * 1994-09-15 2006-08-31 International Business Machines Corp. System und Verfahren zur sicheren Speicherung und Verteilung von Daten unter Verwendung digitaler Unterschriften
US6058478A (en) * 1994-09-30 2000-05-02 Intel Corporation Apparatus and method for a vetted field upgrade
FR2725537B1 (fr) 1994-10-11 1996-11-22 Bull Cp8 Procede de chargement d'une zone memoire protegee d'un dispositif de traitement de l'information et dispositif associe
US5903752A (en) 1994-10-13 1999-05-11 Intel Corporation Method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system
US5606617A (en) 1994-10-14 1997-02-25 Brands; Stefanus A. Secret-key certificates
US5564040A (en) 1994-11-08 1996-10-08 International Business Machines Corporation Method and apparatus for providing a server function in a logically partitioned hardware machine
US5560013A (en) 1994-12-06 1996-09-24 International Business Machines Corporation Method of using a target processor to execute programs of a source architecture that uses multiple address spaces
US5555414A (en) 1994-12-14 1996-09-10 International Business Machines Corporation Multiprocessing system including gating of host I/O and external enablement to guest enablement at polling intervals
US5615263A (en) 1995-01-06 1997-03-25 Vlsi Technology, Inc. Dual purpose security architecture with protected internal operating system
US5764969A (en) 1995-02-10 1998-06-09 International Business Machines Corporation Method and system for enhanced management operation utilizing intermixed user level and supervisory level instructions with partial concept synchronization
FR2731536B1 (fr) 1995-03-10 1997-04-18 Schlumberger Ind Sa Procede d'inscription securisee d'informations dans un support portable
US5717903A (en) 1995-05-15 1998-02-10 Compaq Computer Corporation Method and appartus for emulating a peripheral device to allow device driver development before availability of the peripheral device
JP3451595B2 (ja) 1995-06-07 2003-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ
US5684948A (en) 1995-09-01 1997-11-04 National Semiconductor Corporation Memory management circuit which provides simulated privilege levels
US6093213A (en) * 1995-10-06 2000-07-25 Advanced Micro Devices, Inc. Flexible implementation of a system management mode (SMM) in a processor
US5737760A (en) 1995-10-06 1998-04-07 Motorola Inc. Microcontroller with security logic circuit which prevents reading of internal memory by external program
JP3693721B2 (ja) 1995-11-10 2005-09-07 Necエレクトロニクス株式会社 フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法
US5657445A (en) 1996-01-26 1997-08-12 Dell Usa, L.P. Apparatus and method for limiting access to mass storage devices in a computer system
US5835594A (en) * 1996-02-09 1998-11-10 Intel Corporation Methods and apparatus for preventing unauthorized write access to a protected non-volatile storage
US5815665A (en) * 1996-04-03 1998-09-29 Microsoft Corporation System and method for providing trusted brokering services over a distributed network
US5809546A (en) 1996-05-23 1998-09-15 International Business Machines Corporation Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers
US6205550B1 (en) * 1996-06-13 2001-03-20 Intel Corporation Tamper resistant methods and apparatus
US6175925B1 (en) * 1996-06-13 2001-01-16 Intel Corporation Tamper resistant player for scrambled contents
US6178509B1 (en) * 1996-06-13 2001-01-23 Intel Corporation Tamper resistant methods and apparatus
US5729760A (en) 1996-06-21 1998-03-17 Intel Corporation System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode
US6199152B1 (en) * 1996-08-22 2001-03-06 Transmeta Corporation Translated memory protection apparatus for an advanced microprocessor
US5740178A (en) 1996-08-29 1998-04-14 Lucent Technologies Inc. Software for controlling a reliable backup memory
US6055637A (en) * 1996-09-27 2000-04-25 Electronic Data Systems Corporation System and method for accessing enterprise-wide resources by presenting to the resource a temporary credential
US5844986A (en) 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
US5852717A (en) 1996-11-20 1998-12-22 Shiva Corporation Performance optimizations for computer networks utilizing HTTP
DE19649292A1 (de) * 1996-11-28 1998-06-04 Deutsche Telekom Ag Verfahren zum Sichern eines durch eine Schlüsselhierarchie geschützten Systems
US5901225A (en) 1996-12-05 1999-05-04 Advanced Micro Devices, Inc. System and method for performing software patches in embedded systems
US5757919A (en) 1996-12-12 1998-05-26 Intel Corporation Cryptographically protected paging subsystem
US6412035B1 (en) * 1997-02-03 2002-06-25 Real Time, Inc. Apparatus and method for decreasing the response times of interrupt service routines
JP4000654B2 (ja) * 1997-02-27 2007-10-31 セイコーエプソン株式会社 半導体装置及び電子機器
US6557104B2 (en) * 1997-05-02 2003-04-29 Phoenix Technologies Ltd. Method and apparatus for secure processing of cryptographic keys
US6044478A (en) * 1997-05-30 2000-03-28 National Semiconductor Corporation Cache with finely granular locked-down regions
US6075938A (en) * 1997-06-10 2000-06-13 The Board Of Trustees Of The Leland Stanford Junior University Virtual machine monitors for scalable multiprocessors
US6175924B1 (en) * 1997-06-20 2001-01-16 International Business Machines Corp. Method and apparatus for protecting application data in secure storage areas
US6035374A (en) * 1997-06-25 2000-03-07 Sun Microsystems, Inc. Method of executing coded instructions in a multiprocessor having shared execution resources including active, nap, and sleep states in accordance with cache miss latency
US6014745A (en) * 1997-07-17 2000-01-11 Silicon Systems Design Ltd. Protection for customer programs (EPROM)
US6212635B1 (en) * 1997-07-18 2001-04-03 David C. Reardon Network security system allowing access and modification to a security subsystem after initial installation when a master token is in place
US5978475A (en) * 1997-07-18 1999-11-02 Counterpane Internet Security, Inc. Event auditing system
US5919257A (en) 1997-08-08 1999-07-06 Novell, Inc. Networked workstation intrusion detection system
DE19735948C1 (de) * 1997-08-19 1998-10-01 Siemens Nixdorf Inf Syst Verfahren zur Verbesserung der Steuerungsmöglichkeit in Datenverarbeitungsanlagen mit Adreßübersetzung
US5935247A (en) * 1997-09-18 1999-08-10 Geneticware Co., Ltd. Computer system having a genetic code that cannot be directly accessed and a method of maintaining the same
US6182089B1 (en) * 1997-09-23 2001-01-30 Silicon Graphics, Inc. Method, system and computer program product for dynamically allocating large memory pages of different sizes
US6061794A (en) * 1997-09-30 2000-05-09 Compaq Computer Corp. System and method for performing secure device communications in a peer-to-peer bus architecture
US6357004B1 (en) * 1997-09-30 2002-03-12 Intel Corporation System and method for ensuring integrity throughout post-processing
US6378072B1 (en) * 1998-02-03 2002-04-23 Compaq Computer Corporation Cryptographic system
US6108644A (en) * 1998-02-19 2000-08-22 At&T Corp. System and method for electronic transactions
US6131166A (en) * 1998-03-13 2000-10-10 Sun Microsystems, Inc. System and method for cross-platform application level power management
US6192455B1 (en) * 1998-03-30 2001-02-20 Intel Corporation Apparatus and method for preventing access to SMRAM space through AGP addressing
US6374286B1 (en) * 1998-04-06 2002-04-16 Rockwell Collins, Inc. Real time processor capable of concurrently running multiple independent JAVA machines
US6173417B1 (en) * 1998-04-30 2001-01-09 Intel Corporation Initializing and restarting operating systems
US6397242B1 (en) * 1998-05-15 2002-05-28 Vmware, Inc. Virtualization system including a virtual machine monitor for a computer with a segmented architecture
US6473800B1 (en) * 1998-07-15 2002-10-29 Microsoft Corporation Declarative permission requests in a computer system
US6339815B1 (en) * 1998-08-14 2002-01-15 Silicon Storage Technology, Inc. Microcontroller system having allocation circuitry to selectively allocate and/or hide portions of a program memory address space
US6505279B1 (en) * 1998-08-14 2003-01-07 Silicon Storage Technology, Inc. Microcontroller system having security circuitry to selectively lock portions of a program memory address space
US6363485B1 (en) * 1998-09-09 2002-03-26 Entrust Technologies Limited Multi-factor biometric authenticating device and method
US6330670B1 (en) * 1998-10-26 2001-12-11 Microsoft Corporation Digital rights management operating system
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US6327652B1 (en) * 1998-10-26 2001-12-04 Microsoft Corporation Loading and identifying a digital rights management operating system
US6609199B1 (en) * 1998-10-26 2003-08-19 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
US6138239A (en) * 1998-11-13 2000-10-24 N★Able Technologies, Inc. Method and system for authenticating and utilizing secure resources in a computer system
US6282650B1 (en) * 1999-01-25 2001-08-28 Intel Corporation Secure public digital watermark
US7111290B1 (en) * 1999-01-28 2006-09-19 Ati International Srl Profiling program execution to identify frequently-executed portions and to assist binary translation
US6560627B1 (en) * 1999-01-28 2003-05-06 Cisco Technology, Inc. Mutual exclusion at the record level with priority inheritance for embedded systems using one semaphore
US6188257B1 (en) * 1999-02-01 2001-02-13 Vlsi Technology, Inc. Power-on-reset logic with secure power down capability
JP4812168B2 (ja) * 1999-02-15 2011-11-09 ヒューレット・パッカード・カンパニー 信用コンピューティング・プラットフォーム
US7225333B2 (en) * 1999-03-27 2007-05-29 Microsoft Corporation Secure processor architecture for use with a digital rights management (DRM) system on a computing device
US6615278B1 (en) * 1999-03-29 2003-09-02 International Business Machines Corporation Cross-platform program, system, and method having a global registry object for mapping registry equivalent functions in an OS/2 operating system environment
US6684326B1 (en) * 1999-03-31 2004-01-27 International Business Machines Corporation Method and system for authenticated boot operations in a computer system of a networked computing environment
US6651171B1 (en) * 1999-04-06 2003-11-18 Microsoft Corporation Secure execution of program code
US6389537B1 (en) * 1999-04-23 2002-05-14 Intel Corporation Platform and method for assuring integrity of trusted agent communications
US6275933B1 (en) * 1999-04-30 2001-08-14 3Com Corporation Security system for a computerized apparatus
US6529909B1 (en) * 1999-08-31 2003-03-04 Accenture Llp Method for translating an object attribute converter in an information services patterns environment
JP2001148344A (ja) * 1999-09-09 2001-05-29 Nikon Corp 露光装置、エネルギ源の出力制御方法、該方法を用いるレーザ装置、及びデバイス製造方法
US6535988B1 (en) * 1999-09-29 2003-03-18 Intel Corporation System for detecting over-clocking uses a reference signal thereafter preventing over-clocking by reducing clock rate
US6374317B1 (en) * 1999-10-07 2002-04-16 Intel Corporation Method and apparatus for initializing a computer interface
JP3710671B2 (ja) * 2000-03-14 2005-10-26 シャープ株式会社 1チップマイクロコンピュータ及びそれを用いたicカード、並びに1チップマイクロコンピュータのアクセス制御方法
US6678825B1 (en) * 2000-03-31 2004-01-13 Intel Corporation Controlling access to multiple isolated memories in an isolated execution environment
US6507904B1 (en) * 2000-03-31 2003-01-14 Intel Corporation Executing isolated mode instructions in a secure system running in privilege rings
US6976162B1 (en) * 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
GB0020416D0 (en) * 2000-08-18 2000-10-04 Hewlett Packard Co Trusted system
US6948065B2 (en) * 2000-12-27 2005-09-20 Intel Corporation Platform and method for securely transmitting an authorization secret
US7631160B2 (en) * 2001-04-04 2009-12-08 Advanced Micro Devices, Inc. Method and apparatus for securing portions of memory
US6976136B2 (en) * 2001-05-07 2005-12-13 National Semiconductor Corporation Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller
US7676430B2 (en) * 2001-05-09 2010-03-09 Lenovo (Singapore) Ptd. Ltd. System and method for installing a remote credit card authorization on a system with a TCPA complaint chipset
US20030018892A1 (en) * 2001-07-19 2003-01-23 Jose Tello Computer with a modified north bridge, security engine and smart card having a secure boot capability and method for secure booting a computer
US7191464B2 (en) * 2001-10-16 2007-03-13 Lenovo Pte. Ltd. Method and system for tracking a secure boot in a trusted computing environment
US7103771B2 (en) * 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US20030126453A1 (en) * 2001-12-31 2003-07-03 Glew Andrew F. Processor supporting execution of an authenticated code instruction
US7107460B2 (en) * 2002-02-15 2006-09-12 International Business Machines Corporation Method and system for securing enablement access to a data security device
US7343493B2 (en) * 2002-03-28 2008-03-11 Lenovo (Singapore) Pte. Ltd. Encrypted file system using TCPA
US7028149B2 (en) * 2002-03-29 2006-04-11 Intel Corporation System and method for resetting a platform configuration register

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633929A (en) * 1995-09-15 1997-05-27 Rsa Data Security, Inc Cryptographic key escrow system having reduced vulnerability to harvesting attacks

Also Published As

Publication number Publication date
US7165181B2 (en) 2007-01-16
CN1717895A (zh) 2006-01-04
JP2006508608A (ja) 2006-03-09
CN1717895B (zh) 2011-06-08
WO2004051923A1 (en) 2004-06-17
AU2003287567A1 (en) 2004-06-23
EP1566011A1 (en) 2005-08-24
US20070113077A1 (en) 2007-05-17
US20040103281A1 (en) 2004-05-27
KR20050088085A (ko) 2005-09-01
US7454611B2 (en) 2008-11-18

Similar Documents

Publication Publication Date Title
KR100715738B1 (ko) 식별 정보를 노출하지 않고 신용을 수립하기 위한 시스템및 방법
EP1616406B1 (en) Interactif zero-knowledge proof protocol
Brickell et al. Enhanced privacy ID: A direct anonymous attestation scheme with enhanced revocation capabilities
JP4635009B2 (ja) 通信における証明された秘密値の使用
JP5497677B2 (ja) 公開鍵を検証可能に生成する方法及び装置
US7490070B2 (en) Apparatus and method for proving the denial of a direct proof signature
US7844614B2 (en) Apparatus and method for enhanced revocation of direct proof and direct anonymous attestation
JP5205398B2 (ja) 鍵認証方式
US20080307223A1 (en) Apparatus and method for issuer based revocation of direct proof and direct anonymous attestation
Camenisch Better privacy for trusted computing platforms
US20120257758A1 (en) Strengthened public key protocol
KR101004829B1 (ko) 이선형 맵들로부터의 직접적인 익명의 증명을 위한 장치 및방법
US20050114662A1 (en) Method for authentication
CN114329610A (zh) 区块链隐私身份保护方法、装置、存储介质及系统
CN110445602B (zh) 密钥生成方法及电子设备
EP1480374B1 (en) Access authentication
Ge Flexible digital authentication techniques
Qiupu et al. One-Off Blind Public Key

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: 20130502

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140502

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150417

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170502

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180427

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 13