KR100745436B1 - 비밀 암호화 키와 공개 암호화 키의 제공 방법, 서명값 제공 방법, 서명값 검증 방법, 서명값 타당성 통신 방법, 컴퓨터 판독 가능 기록 매체 및 네트워크 디바이스 - Google Patents

비밀 암호화 키와 공개 암호화 키의 제공 방법, 서명값 제공 방법, 서명값 검증 방법, 서명값 타당성 통신 방법, 컴퓨터 판독 가능 기록 매체 및 네트워크 디바이스 Download PDF

Info

Publication number
KR100745436B1
KR100745436B1 KR1020057000156A KR20057000156A KR100745436B1 KR 100745436 B1 KR100745436 B1 KR 100745436B1 KR 1020057000156 A KR1020057000156 A KR 1020057000156A KR 20057000156 A KR20057000156 A KR 20057000156A KR 100745436 B1 KR100745436 B1 KR 100745436B1
Authority
KR
South Korea
Prior art keywords
signature
values
value
encryption key
exponent
Prior art date
Application number
KR1020057000156A
Other languages
English (en)
Other versions
KR20050032567A (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 KR20050032567A publication Critical patent/KR20050032567A/ko
Application granted granted Critical
Publication of KR100745436B1 publication Critical patent/KR100745436B1/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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • 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
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 안전한 것으로 입증될 수 있는 포워드 보안 서명 기법(forward-secure signature scheme)의 기초를 형성한다. 또한, 본 방법은 안전하고 효과적인 미세 단위 포워드 보안 서명 기법(fine-grained forward-secure signature scheme)의 기초를 형성한다. 이 기법은 해커의 침입 시 즉시 반응하여, 과거의 서명을 재발행하지 않고 계속 유효하게 유지하고, 노출된 키에 기초하는 향후의 서명값이 그에 따라 식별될 수 있게 한다. 일반적으로, 각각의 마련되어 있는 서명은 오름차순의 지수를 보유하여, 하나의 지수가 사용되면, 그보다 더 낮은 지수가 서명을 위해 사용될 수 없게 한다. 따라서, 침입자가 침입할 때마다, 예를 들면, 현재의 지수에 대하여 몇몇 특수한 메시지를 현재 시간 주기에 대한 철회 메시지(revocation message)의 부분으로서 서명하는 것에 의해서, 진정한 서명자는 현재의 지수를 곧바로 표시할 수 있다. 따라서, 표시된 지수까지의 철회 주기에 이루어진 모든 서명뿐만 아니라 이전의 시간 주기에 이루어진 모든 서명은 유효하고, 즉, 부인할 수 없게 된다.

Description

비밀 암호화 키와 공개 암호화 키의 제공 방법, 서명값 제공 방법, 서명값 검증 방법, 서명값 타당성 통신 방법, 컴퓨터 판독 가능 기록 매체 및 네트워크 디바이스{GROUPS SIGNATURE SCHEME}
USC 371 하에 출원된 이 출원은 2003년 7월 7일자로 국제 특허 출원 PCT/IB2003/03187으로 출원되어 PCT 제21조 제2항 하에 2004년 2월 12일에 공개 번호 WO2004/014020로 영어로 공개된 출원의 우선권을 주장하며, 이는 결국 2002년 7월 29일자로 출원된 EP02405658.2의 우선권을 주장한다.
본 발명은 서명 기법을 이용하여 접속된 컴퓨터 노드로 이루어진 네트워크에 적용될 수 있는 비밀 암호화 키(secret cryptographic key) 및 공개 암호화 키(public cryptographic key)를 제공하는 방법에 관한 것이다. 또한, 본 발명은 접속된 컴퓨터 노드로 이루어진 네트워크에서 메시지에 대한 서명값(signature value)을 제공하고 검증하는 방법에 관한 것이다. 침해가 검출된 경우에 생성된 서명값의 타당성(validity)을 통신하는 방법도 개시되어 있다.
전자 또는 디지털 서명은 정보를 인증하고, 즉, 전자 문서의 컨텐츠를 서명자, 보다 정확하게는 서명자의 공개 키에 대해 안전하게 연관시키기 위해 사용된다. 오로지 정확한 서명자만이 유효한 서명을 생성할 수 있어야 하고, 누구나 그것을 검증하여 서명자가 진실로 해당 문서에 서명했다는 것을 확신할 수 있어야 한다. 지금까지 여러 디지털 서명 기법이 제안되어 왔으나, 현재 그 중 소수만이 실제적으로 사용되고 있다.
통상적인 디지털 서명 기법은 그 기본적인 단점, 즉 예를 들면 해커가 서명자의 컴퓨터로 침입하는 등에 의해 비밀 키가 노출되고, 이 누출이 검출될 때, 공개 키는 철회(revoke)되고 서명자에 의해 생성된 모든 서명이 유효하게 되어, 즉 소정의 서명이 서명자에 의해 생성되었는지 해커에 의해 생성되었는지 여부를 더 이상 구별할 수 없게 된다는 단점에 의한 악영향을 받고 있다. 따라서, 통상적인 서명 기법은 본질적으로 부인 방지(non-repudiation)를 제공할 수 없다. 부인 방지를 달성하는 하나의 가능성은 소위 타임 스탬핑 서비스(time-stamping service)를 이용하는 것이다. 여기에서 각각의 서명은 서명 및 현재의 일자와 시간을 포함하는 메시지에 서명하는 신뢰성 있는 제 3 자에게 전달된다. 서명자가 자신의 공개 키를 철회하기 전에 타임 스탬핑(time-stamped)된다면 서명은 부인 방지 가능한 것으로 고려된다. 따라서, 신뢰성 있는 제 3 자의 키가 절대로 누출되지 않는다고 가정하면, 부인 방지가 보장된다. 그러나, 이러한 해결책은 신뢰성이 있는 제 3 자, 예를 들면, 타임 스탬핑 서비스와 자주 상호 작용 하는 것을 필요로 하는데, 이는 바람직하지 않다.
다른 가능성은 키를 자주 바꿔주는 것으로서, 즉 매일 상이한 키의 쌍을 이용하고, 전일의 모든 비밀 키를 삭제하는 것이다. 그렇다면, 사용자가 해당 일자의 키를 철회하지 않고 하루가 지나버리면 키에 관하여 이루어진 모든 서명은 부인할 수 없게 된다는 것을 이해할 것이다. 이는 또 다시 신뢰성 있는 제 3 자와의 빈번한 상호 작용을 필요로 하거나, 공개 키가 커다란, 즉, 여러 공개 키로 이루어진 리스트가 되도록 요구한다. R. Anderson에 의해 4th ACM CCS(1997)에 제출된 원고인 "Two remarks on public-key cryptography"(2000년 9월)에서 해당 저자에 의해 도입되고, Bellare 및 Miner에 의해 "A forward-secure digital signature scheme"(In Michael Wiener에 의해 편집된, Advances in Cryptology-CRYPTO '99 내에서, LNCS의 vol.1666, pp.431-448, Springer Verlag, 1999에 수록됨)에서 정형화된 포워드 보안 서명 기법(Forward secure signature schemes)은, 오로지 하나의 공개 키와 여러 비밀 키(각각의 시간 주기에 대해 하나씩 할당됨)를 보유함으로써 이러한 문제를 해결하였다. 사실상, 대부분의 포워드 보안 서명 기법은 일방적인 방식으로 이전 주기 중 하나로부터 현재의 시간 주기에 대한 비밀 키를 도출할 수 있게 한다.
원칙적으로, 포워드 보안 서명 기법은 임의의 통상적인 서명 기법으로부터 획득될 수 있고, 서명자는 각 시간 주기에 대한 새로운 비밀 및 공개 키를 선택한다. 포워드 보안 서명 기법의 공개 키는 그들이 유효하게 되는 시간 주기에 따라서 통상적인 공개 키의 세트에 대한 지수가 된다. 소정의 메시지에 서명하기 위하여, 서명자는 해당 주기의 비밀 키를 이용한다. 하나의 시간 주기가 경과되면, 서명자는 제각기의 비밀 키를 삭제한다. 이 기법이 포워드 보안이라는 것은 확실히 알 수 있다. 그러나, 이 기법은 (공개 및 비밀) 저장 장치에 관해서는 다소 비효율적이다.
그러나, 현재의 포워드 보안 서명 기법은 이하의 문제점에 의한 영향을 받고 있다. 해커가 침입하면 그 시간 주기에 이루어진 모든 서명을 철회해야 하고, (진정한) 서명자가 그것들을 재발행(re-issue)해야 한다. 이에 대한 하나의 해결책 은, 키 업데이트의 복잡도가 서명의 복잡도에 상응할 경우에만 작동되는 작은 시간 주기를 이용하는 것이다.
상술된 내용으로부터, 보다 안전하고 효율적인 개선된 포워드 보안 서명 기법에 대한 요청이 존재한다는 것을 확인하였다. 이 기법은 추가적으로 해커의 침입에 대해 과거의 서명을 재발행하지 않고 즉시 반응할 수 있게 해야 한다.
본 발명의 제 1 측면에 따르면, 서명 기법을 이용하여 접속된 컴퓨터 노드로 이루어진 네트워크에 적용 가능한 비밀 암호화 키(a secret cryptographic key)(sk) 및 공개 암호화 키(a public cryptographic key)(pk)를 제공하는 방법이 제공되어 있다. 이 방법은 제 1 컴퓨터 노드에 의해 실행될 수 있고, 2개의 랜덤 인자값(random factor values)(P, Q)을 선택하고, 2개의 선택된 랜덤 인자값(P, Q)을 곱하여 계수값(modulus value)(N)을 획득하며, 계수값(N)에 따라서 비밀 기본값(secret base value)(g', h', x')을 선택-비밀 기본값(g', h', x')은 비밀 암호화 키(g', h', x')의 일부를 형성함-하여 비밀 암호화 키(sk)를 생성하는 단계를 포함한다. 본 방법은 일정 수(I개)의 지수값(e1,...,eI) 를 선택하고, 지수값(e1,...,eI) 및 비밀 기본값(g', h', x')으로부터 공개 기본값(g, h, x)을 도출-공개 기본값(g, h, x) 및 계수값(N)은 공개 암호화 키(g, h, x, N)의 부분을 형성함-하여 공개 암호화 키(pk)를 생성하는 단계를 더 포함한다. 본 방법은 2개의 랜덤 인자값(P, Q)을 삭제하는 단계와, 네트워크 내에 공개 암호화 키(g, h, x, N)를 제공하는 단계를 더 포함하는데, 공개 암호화 키(g, h, x, N) 및 적어도 하나의 선택된 지수값(e1,...,eI)은 네트워크 내에서 검증을 위해 제 2 컴퓨터 노드로 전달되는 메시지(m)에 대한 서명값(i, y, a)을 검증하는 데 이용될 수 있다.
본 발명의 제 2 측면에서는, 접속된 컴퓨터 노드로 이루어진 네트워크에서 메시지(m)에 대한 서명값(i, y, a)을 제공하는 방법이 제공되는데, 이 방법은 제 1 컴퓨터 노드에 의해 실행될 수 있고, 제 1 서명 구성 요소(a)를 선택하는 단계와, 일정 수(I개)의 지수값(e1,...,eI) 로부터 서명 지수값(ei)을 선택하는 단계와, 제공된 비밀 암호화 키(g'i, h'i, x'i), 메시지(m) 및 일정 수(I개)의 지수값(e1,...,eI) 로부터 제 2 서명 구성 요소(y)를 도출하여 제 1 서명 구성 요소(a), 제 2 서명 구성 요소(y) 및 서명 지수값(ei)이 메시지(m) 및 제공된 공개 암호화 키(g, h, x, N)와의 알려진 관계를 만족시키게 하는 도출 단계-서명값(i, y, a)은 제 1 서명 구성 요소(a), 제 2 서명 구성 요소(y) 및 서명 지수값(ei)에 대한 서명 기준(i)을 포함함-를 포함하되, 서명값(i, y, a)은 검증을 위해 네트워크 내에서 제 2 컴퓨터 노드로 전달될 수 있다.
본 발명의 제 3 측면에서는 접속된 컴퓨터 노드로 이루어진 네트워크에서 메시지(m)에 대한 서명값(i, y, a)을 검증하는 방법이 제공되는데, 이 방법은 제 2 컴퓨터 노드에 의해 실행될 수 있고, 제 1 컴퓨터 노드로부터 서명값(i, y, a)을 수신하는 단계와, 서명값(i, y, a)으로부터 서명 지수값(ei)을 도출하는 단계와, 서명 지수값(ei) 및 서명값(i, y, a)의 부분이 메시지(m) 및 제공된 공개 암호화 키(g, h, x, N)에 대해 알려진 관계를 만족시키는지 여부를 검증하고, 만족시키지 않으면 서명값(i, y, a)을 거부하는 단계를 포함하되, 서명값(i, y, a)은 제 1 서명 구성 요소(a), 일정 수(I개)의 지수값(e1,...,eI) , 제공된 비밀 암호화 키(g'i, h'i, x'i) 및 메시지(m)로부터 생성된다.
본 발명의 제 4 측면에서는, 서명값(i, y, a)에 관련된 비밀 암호화 키(sk)가 노출된 경우에, 접속된 컴퓨터 노드로 이루어진 네트워크 내에서 서명값(i, y, a)의 타당성을 통신하는 방법이 제공되는데, 이 방법은 지수값(e1,...,eI)의 차수를 결정하는 단계와, 네트워크 내에서 지수값(e1,...,eI)의 설명과 지수값(e1,...,e I)의 차수를 발행하는 단계와, 네트워크 내에서 지수값(e1,...,eI) 중 하나에 대한 무효화 기준(revocation reference)(j)을 발행함으로써, 무효화 기준(j), 지수값(e1,...,eI)의 차수 및 제공된 공개 암호화 키(pk)를 이용하여 서명값(i, y, a)의 타당성을 결정하는 단계를 포함한다.
본 발명은 안전한 것으로 입증될 수 있는, 즉 그의 보안이 랜덤 오라클 모델(random oracle model) 등과 같은 비 학습 방식(no heuristic)에 의존하는 포워드 보안 서명 기법(forward-secure signature scheme)의 기초를 형성한다. 또한, 본 방법은 안전하고 효과적인 미세 단위 포워드 보안 서명 기법(fine-grained forward-secure signature scheme)의 기초를 형성한다. 후자의 기법은 해커의 침입 시 즉시 반응하여, 과거의 서명을 재발행하지 않고 계속 유효하게 유지하고, 노출된 키에 기초하는 향후의 서명값이 그에 따라 식별될 수 있게 한다. 다시 말해, 미세 단위 포워드 보안 서명 기법을 이용하면 비밀 암호화 키가 노출된 시기의 당시 시간 주기에 생성된 서명값을 재서명(re-sign)할 필요가 없다. 재서명은 당사자들이 다시 연락하는 작업 및 몇몇 재협상을 포함할 가능성이 있으므로 지루한 작업이다.
일반적으로, 본 방법은 포워드 보안 서명 기법의 기초를 형성하고, 여기에서 각각의 마련된 서명값(서명으로도 지칭됨)은 오름차순의 서명 기준(i)(또한, 오름차순 지수(i)로도 간주됨)을 보유한다. 이 지수(i)는 서명값(i, y, a)에 첨부되어, 일단 사용되면 해당 지수 미만의 지수가 다시 서명을 위해 사용되지 못하게 한다. 그러면, 침입자가 침입할 때마다, 진정한 서명자는 예를 들면, 현재 시간 주기에 대한 무효화 메시지의 일부로서 현재의 지수에 대하여 소정의 특별 메시지를 서명함으로써 현재의 지수를 곧바로 표시할 수 있다. 따라서, 공표된 지수까지의 철회 주기에 이루어진 모든 서명뿐만 아니라 이전의 시간 주기에 이루어진 모든 서명은 유효하고, 즉, 부인할 수 없게 된다는 것을 이해할 수 있을 것이다.
통상적인 포워드 보안 서명 기법에서와 같이 시간 주기를 이용하는 것 대신에, 미세 단위 포워드 보안 서명 기법은 새로운 메시지가 서명될 때마다 비밀 암호화 키를 업데이트한다. 서명자의 시스템 내부로 침입이 발생하였을 경우, 침입 검출 시스템으로 지칭되는 장치의 존재에 의해 그 상황을 즉시 인지하여, 공개 암호화 키(g, h, x, N)를 철회하고 최종 사용된 지수(i)를 발행할 수 있다. 이것으로써 다른 컴퓨터 노드는 이전에 발행된 서명의 타당성에 관한 정보를 수신할 수 있다. 이는 과거의 서명을 재발행하도록 요구하지 않으면서 다른 관계자가 노출된 제공되는 비밀 암호화 키(g'i, h'i, x'i)를 사용하는 것을 방지한다.
지수값(e1,...,eI)에 대한 설명은 네트워크 내에서 제공될 수 있다. 이는 모든 이해 관계자들이 서명의 타당성을 검증할 수 있게 한다.
침입이 검출된 경우에 서명값(i, y, a)의 타당성을 통신할 수 있는 선택된 지수값(e1,...,eI)의 차수를 정의할 수 있다. 이는 본 기법의 미세 단위 특성을 가능하게 한다.
각각의 지수값(e1,...,eI)을 많아야 하나의 서명값(i, y, a)에 적용할 수 있는데, 이는 안전한 서명 기법을 제공한다.
보다 효과적인 서명 생성은 서명 구성 요소(y)의 도출이 제공된 공개 암호화 키(g, h, x, N), 제공된 비밀 암호화 키(g'i, h'i, x'i) 및 지수값(e1 ,...,eI)을 이용하여 서명 기본값(gi, hi, xi)을 도출하는 단계를 더 포함할 때 이루어질 수 있다.
새로운 비밀 암호화 키(g'i+1, h'i+1, x'i+1)가 제공된 비밀 암호화 키(g' i, h'i, x'i)와 선택된 서명 지수값(ei)으로부터 도출되면, 포워드 보안이 달성된다는 이점을 얻을 수 있다.
본 발명의 바람직한 실시예는 이하의 개략적인 도면을 참조하여 오직 예로서 설명될 것이다.
도면은 오로지 예시를 위하여 제시된 것일 뿐이고 반드시 본 발명의 실제적인 예를 실제 축적대로 나타낸 것은 아니다.
도 1은 접속된 컴퓨터 노드로 이루어진 전형적인 네트워크를 도시하는 도면이다.
도 2는 접속된 컴퓨터 노드로 이루어진 네트워크에 적용 가능한 비밀 암호화 키 및 공개 암호화 키를 제공하는 것을 도시하는 개략적인 흐름도이다.
도 3은 접속된 컴퓨터 노드로 이루어진 네트워크 내에서 메시지에 대한 서명값을 제공하는 것을 도시하는 개략적인 흐름도이다.
도 4는 서명값을 검증하는 것을 도시하는 개략적인 흐름도이다.
도 5는 서명값에 관련된 비밀 암호화 키가 노출된 경우에, 접속된 컴퓨터 노드로 이루어진 네트워크 내에서 서명값의 타당성을 통신하는 것을 도시하는 개략적인 흐름도이다.
도면을 일반적으로 참조하여, 네트워크 내에서 미세 단위 포워드 보안 서명 기법의 특징을 보다 상세하게 설명한다.
도 1을 참조하면 통상적인 컴퓨터 시스템(2)의 예가 도시되어 있다. 이 컴퓨터 시스템(2)은 제 1, 제 2, 제 3, 및 제 4 컴퓨터 노드(p1, p2, p3, p4)를 포함하고, 이들은 통신 라인(5)을 경유하여 네트워크에 접속되어 있다. 각각의 컴퓨터 노드(p1, p2, p3, p4)는 임의의 타입의 컴퓨터 디바이스 또는 네트워크 디바이스로서, 본 기술 분야에서 알려진 컴퓨터 온 칩(computer on a chip) 또는 착용식 컴퓨터로부터 대형 컴퓨터 시스템일 수 있다. 통신 라인은 하나의 컴퓨터 노드로부터 다른 컴퓨터 노드로 데이터 또는 메시지를 전송할 수 있도록 통상적으로 알려진 임의의 통신 수단일 수 있다. 예를 들면, 통신 라인은 각각의 컴퓨터 노드(p1, p2, p3, p4)의 쌍 사이의 단방향 또는 양방향 통신 라인이거나, 각각의 컴퓨터 노드(p1 , p2, p3, p4)의 쌍 사이의 비방향성 통신 라인일 수 있다. 통상적인 컴퓨터 시스템(2)은 포워드 보안 서명 기법 및 미세 단위 포워드 보안 서명 기법을 형성하고 가능하게 하는 이하의 방법에 대한 설명을 용이하게 하기 위해 도시된 것이다.
키 생성
도 2는 접속된 컴퓨터 노드로 이루어진 네트워크에 적용 가능한 비밀 암호화 키 및 공개 암호화 키를 제공하는 것에 대한 개략적인 흐름도를 도시한다. 실행되는 단계는 블록으로 도시되고, 제각기 번호로 표시되어 있다. 동일한 참조 부호 또는 기호를 사용하여 동일하거나 유사한 부분을 표시하였다.
비밀 키로도 지칭되는 비밀 암호화 키(sk) 및 공개 키로도 지칭되는 공개 암호화 키(pk)의 생성은 본 명세서에서 제 1 컴퓨터 노드(p1)에 의해 수행된다.
먼저, 20, 21로 표시된 부분에서와 같이 2개의 랜덤 인자값(P, Q)을 선택함으로써 비밀 암호화 키(sk)를 생성한다. 다음에 22로 표시된 부분에서와 같이 이들 2개의 선택된 랜덤 인자값(P, Q)을 곱하여 계수값(N)을 획득한다. 다음에, 23으로 표시된 블록에서와 같이 계수값(N)에 따라서 비밀 기본값(g', h', x')을 선택하고, 여기에서 비밀 기본값(g', h', x')은 비밀 암호화 키(sk)의 부분을 형성하고, 여기에서는 또한 g', h', x'로 표시한다.
두 번째로, 24로 표시된 블록에서와 같이 일정 수(I개)의 지수값(e1,...,eI) 를 선택함으로써 공개 암호화 키(pk)를 생성한다. 25로 표시된 부분에서와 같이 공개 기본값(g, h, x)은 지수값(e1,...,eI) 및 비밀 기본값(g', h', x')으로부터 도출되고, 여기에서 공개 기본값(g, h, x) 및 계수값(N)은 g, h, x, N으로 표시되는 공개 암호화 키(pk)의 부분을 형성한다(26으로 표시된 부분 참조). 2개의 랜덤 인자값(P, Q)은 27로 표시된 부분에서와 같이 보안 상의 이유로 이후에 삭제되어야 한다. 28로 표시된 부분에서와 같이 공개 암호화 키(g, h, x, N)는 네트워크 내에 제공되어, 다른 컴퓨터 노드(p2, p3, p4)가 이 키에 대해 액세스할 수 있게 한다. 이후에, 공개 암호화 키(g, h, x, N) 및 적어도 하나의 선택된 지수값(e1,...,eI)은, 네트워크 내에서 예를 들면, 검증을 위해 제 2 컴퓨터 노드(p2)로 전달되는 메시지(m)에 대한 서명값(i, y, a)(서명으로도 지칭됨)을 검증하는 데 이용될 수 있다.
이하에서, 비밀 암호화 키(sk) 및 공개 암호화 키(pk)의 생성은 추가적인 몇몇 수학적 표현과 함께 일실시예로서 제시되어 있다. 먼저, k 비트의 크기를 갖는 랜덤 RSA 계수값(N)을 선택한다. 계수값(N)은 2개의 안정한 소수(safe primes)를 곱한 값인 것이 바람직하다. Z* N의 제곱에 대한 서브 그룹을 QRN으로 표시하는데, 모든 그룹 연산은 이 그룹 내에서 수행될 것이다. 랜덤 시드(random seed)(W)를 선택하고, 이는 소정의 유사 랜덤 생성기(pseudorandom generator)를 적용함으로써 일정수(I개)의 랜덤 고유값(l)+1-비트 소수 지수값(e1,...,eI)을 구성하는 데 이용된다. (공개 암호화 키(pk)의 부분으로서) 이러한 시드(W)를 발행하는 것은 임의의 컴퓨터 노드(p2, p3, p4)가 지수값(e1,...,eI)을 재생성하게 한다. 또한, 모든 지수값(e1,...,eI)을 공개 암호화 키(pk)의 부분으로서 발행할 수 있다. 또한, 서로 다른 서명자가 동일한 지수를 이용할 수 있으므로 동일한 신뢰성 있는 기관에 의해서 발행되어야 한다. 또한, 비밀 기본값(g', h', x')은 QRN으로부터 임으로 선택된다. 이는 다음과 같이 계산된다.
Figure 112007016117311-pct00012
공개 암호화 키(pk)는 여기에서 pk := N, g, h, x, W이다. 비밀 암호화 키 (sk)는 여기에서 sk :=g', h', x'이다. i:= 0으로 설정된다.
서명
도 3은 접속된 컴퓨터 노드로 이루어진 네트워크 내에서 메시지(m)에 대한 서명값을 제공하는 것에 대한 개략적인 흐름도이다. 공개 암호화 키(pk)가 아직 철회되지 않았다면, 제 1 컴퓨터 노드(p1)에 의해 메시지(m)에 대한 서명값(i, y, a)이 수행된다. 제 1 컴퓨터 노드(p1)는 또한 서명자 또는 서명 당사자로서 지칭된다. 먼저, 30으로 표시된 부분에서와 같이 제 1 서명 구성 요소(a)를 선택한다. 또한, 31에서 도시된 바와 같이 일정 수(I개)의 지수값(e1,...,eI) 로부터 서명 지수값(ei)을 선택한다. 32로 표시된 것과 같이, 제공된 비밀 암호화 키(g'i, h'i, x'i)(33으로 표시됨), 메시지(m)(34로 표시됨) 및 일정 수(I개)의 지수값(e1,...,eI) 로부터 제 2 서명 구성 요소(y)를 도출하여, 제 1 서명 구성 요소(a), 제 2 서명 구성 요소(y) 및 서명 지수값(ei)이 메시지(m) 및 제공된 공개 암호화 키(pk)(g, h, x, N을 포함함)와의 알려진 관계식(검증식을 의미할 수 있음)을 만족하게 한다. 서명값(i, y, a)(35로 표시됨)은 마지막으로 제 1 서명 구성 요소(a), 제 2 서명 구성 요소(y) 및 서명 지수값(ei)에 대한 서명 기준(i)을 포함한다. 다음에 서명값(i, y, a)은 네트워크 내에서 검증을 위해 예를 들면, 제 2 컴퓨터 노드(p2)로 전달된다.
이하에서, 서명값(i, y, a)의 생성은 몇몇 보다 수학적인 측면에 관련하여 설명될 수 있다. 이는 메시지(m)가 서명되어야 하는 것으로 가정한다. 공개 암호화 키(pk)가 철회되면, 예를 들어, 비밀 암호화 키(sk)가 누출되거나, i>I(즉, 생성 가능한 서명값의 최대값에 도달하면)이면, 서명은 중지된다. 비밀 암호화 키 ski=g'i, h'i, x'i가 주어지면,
Figure 112007016117311-pct00002

와 같이 하여, 구성 요소 gi, hi, xi를 계산할 수 있다.
다음에, 임의로 제 1 서명 구성 요소(a)를 a∈R{0,1}'로 선택하고, 계산하면 다음과 같다.
Figure 112005000359141-pct00003
여기에서 메시지(m)에 대한 서명은 i, y, a이다.
서명한 후에, 비밀 암호화 키(sk)는 다음을 계산함으로써 업데이트된다.
Figure 112005000359141-pct00004
또한, 비밀 암호화 키(sk)를 ski+1:=(g'i+1, h'i+1, x'i+1)로 설정하고 i :=i+1로 업데이트한다.
서명 검증
도 4는 서명값(i, y, a)을 검증하는 개략적인 흐름도를 도시한다. 여기에서 메시지(m)에 대한 서명값(i, y, a)의 검증은 제 2 컴퓨터 노드(p2)에 의해 수행된다. 블록(41)에서 표시된 바와 같이 서명값(i, y, a)은 제 2 컴퓨터 노드(p2)에 의해 제 1 컴퓨터 노드(p1)로부터 수신된다. 다음에, 블록(41)에서 표시된 바와 같이 제 2 컴퓨터 노드(p2)는 서명값(i, y, a)으로부터 서명 지수값(ei)을 도출한다. 블록(42)에서 표시된 바와 같이 서명 지수값(ei)이 일정 수(I개)의 지수값(e1,...,eI) 의 성분인지 여부를 검증할 수 있는데, 여기에서 지수값(e1,...,eI)의 설명은 블록(43)에서 표시된 바와 같이 네트워크 내에서 액세스될 수 있다. 서명 지수값(ei)이 일정 수(I개)의 지수값(e1,...,eI)의 성분이 아니라면 서명값(i, y, a)은 거부될 것이다. 블록(44)에 도시된 바와 같이, 메시지(m) 및 제공된 공개 암호화 키(g, h, x, N)(블록(43)에서 제공됨)에 대해서 서명 지수값(ei) 및 서명값(i, y, a)의 부분이 알려진 관계식, 즉 검증식을 만족시키는지 여부를 검증할 수 있다. 이 검증이 실패하면, 서명값(i, y, a)은 거부된다. 검증(42, 44)의 결과는 도면에 "T" 및 "F"로 표시된 바와 같이 "참(true)" 또는 "거짓(false)"이 되고, 여기에서 "거짓" 또는 "F"는 서명값(i, y, a)의 거부를 초래하고, "참" 또는 "T"는 서명값(i, y, a)을 수용한다. 제 1 서명 구성 요소(a), 일정 수(I개)의 지수값(e1,...,eI) , 제공된 비밀 암호화 키(g'i, h'i, x'i) 및 메시지(m)로부터 서명값(i, y, a)이 생성된다는 것을 확인할 수 있다.
다른 예에서, 검증기(verifier)로도 지칭되는 제 2 컴퓨터 노드(p2)는 i, y, a, W가 메시지(m)에 대한 서명, 즉 서명값인지 여부를 검사한다. 첫 번째로 0≤i≤I인지 여부를 검사한다. 두 번째로 제 2 컴퓨터 노드(p2)는 서명 기준(i) 및 시드(W)(이 값은 서명값(i, y, a, W)에 포함됨)로부터 서명 지수값(ei)을 생성한다. 마지막으로, 검증기, 즉 제 2 컴퓨터 노드(p2)는 다음의 공지된 관계식, 즉 검증식이 충족되면 서명을 허용한다.
Figure 112005000359141-pct00005

무효화(Revocation)
도 5는 54로 표시된 바와 같이, 서명값(i, y, a)에 관련된 비밀 암호화 키(sk)가 노출된 경우에 접속된 컴퓨터 노드로 이루어진 네트워크 내에서, 서명값(i, y, a)의 타당성을 통신하는 것에 대한 개략적인 흐름도를 도시한다. 서명값(i, y, a)의 타당성은 다음과 같이 네트워크 내에서 통신된다. 50에서 표시된 바와 같이, 지수값(e1,...,eI)의 차수가 정의되는데, 그 설명은 51에 표시된 바와 같이 네트워크 내에서 제공된다. 51에 표시된 바와 같이 지수값(e1,...,eI)의 차수는 또한 네트워크 내에서 발행된다. 또한, 52에 표시된 바와 같이 지수값(e1,...,eI) 중 하나에 대한 무효화 기준(j)이 네트워크 내에서 발행되어, 53에 표시된 바와 같이 무효화 기준(j), 지수값(e1,...,eI)의 차수 및 제공된 공개 암호화 키(pk)(55에 도시됨)를 이용하여 서명값(i, y, a)의 타당성을 결정할 수 있다.
이하의 내용은 본 서명 기법을, 랜덤 오라클(random oracles) 없이도 안전하다고 입증되는 포워드 보안 서명 기법 및 미세 단위 포워드 보안 서명 기법으로서 이용하는 방법에 대한 보다 간단한 몇몇 실시예를 제시한다.
포워드 보안 서명 기법
본 서명 기법은 시간 주기 마다 오직 하나의 메시지만을 서명할 수 있게 하는 특별한 특성을 갖는 포워드 보안 서명 기법으로서 사용될 수 있다. 즉, 하나의 시간 주기에 대해서 하나의 메시지가 아니라 각각의 지수(i)를 할당하게 된다.
시간 주기 마다 하나의 메시지만을 서명할 수 있게 하는 것은 물론 매우 실용적이지는 않다. 그러나, 본 서명 기법과 함께 임의의 통상적인 서명 기법(S)을 이용하면, 시간 주기 마다 여러 메시지를 서명하는 포워드 보안 서명 기법을 다음과 같이 획득할 수 있다.
새로운 사례, 즉 각각의 시간 주기(Ti)(1≤i≤I)에 대한 S의 공개 키 및 비밀 키의 쌍(Si로 지칭됨)을 생성하고, 본 서명 기법에서 1번째 메시지로서 공개 키(pki)를 서명할 수 있다.
시간 주기(Ti)로 메시지(m)를 서명하기 위해서, 서명 기법(Si)을 이용하여 메시지(m)를 서명함으로써 서명(sm)을 생성할 수 있다. 따라서, 메시지(m)에 대한 최종 서명은 서명(sm), 공개 키(pk), 본 서명 기법에서 지수(i)를 적용하여 수행된 공개 키에 대한 서명을 포함한다.
미세 단위 포워드 보안 서명 기법
본 서명 기법은 신뢰받지 않은 서명자가 침입이 발생되었다고 주장함으로써 이전에 만들어진 서명을 무효화하고 해당 서명을 사용한 서명자에게 그 지수보다 더 작은 지수를 발행하는 것을 방지할 수 없다. 서명자가 서명을 생성한 이후에 소정 시간(예를 들면, 1시간)이 허용되면, 그 동안에 침입이 발생된 것으로 주장함으로써 서명자가 계속 해당 서명을 철회하는 것을 회피할 수 없는 것으로 보인다. 이는 서명자가 침입이 발행했다는 사실을 확인하고 그에 대해 대응하기 위해 소정 시간동안 허용되어야 하기 때문이다. 다음의 3개의 예시인 Ⅰ, Ⅱ, Ⅲ은 이러한 문제점을 해결하기 위해 제시되어 있다.
Ⅰ. 2중 계층 기법
이는 본 서명 기법의 제 1 예시에서 사용되는 것으로, A-기법으로 지칭되며, 여기에서 각각의 지수는 시간 주기를 표시하고, 즉, 지수(i)는 t0+i*tΔ에서부터 t0+(i+1)tΔ까지의 시간 주기(Ti)(여기에서 t0은 개시 시간이고 tΔ는 시간 주기의 지속 기간임)를 표시한다. 이 기법의 공개 키는 사용자의 공개 키가 된다. 또한, 공개 키의 부분으로서 파라미터(jΔ)를 발행함으로써, 파라미터(jΔ)는 비밀 키가 절충되었다는 것을 인식할 수 있게 하는 시간을 제어한다.
다음에, 각각의 시간 주기에 있어서, 본 서명 기법의 제 2 예시가 사용되는데 이는 B-기법으로서 지칭되고, 해당 시간 주기의 지수(i)에 대하여 A-기법을 이용하여 공개 키를 서명한다. 그 이후에, A-기법의 비밀 키를 업데이트하고, 이 기법의 새로운 현재의 지수는 i+1이 된다.
현재의 시간 주기(Ti)의 j-메시지를 서명하기 위해, 지수(j)를 갖는 Bi-기법이 사용된다. 메시지에 대한 서명은 이 서명, Bi-기법의 공개 키 및 A-기법에서 형성된 이 공개 키에 대한 서명을 포함한다. 여기에서도, 그 이후에 Bi-기법의 비밀 키를 업데이트하고 새로운 현재의 지수는 j:=i+1이 된다.
서명자가 예를 들면, 시간 주기(Ti')로, 자신의 키를 철회하고자 할 때마다, 서명자는 신뢰성 있는 제 3 자(이하에서는 TTP로 축약함)에게, 그 사실을 나타내는 사전 결정된 메시지(현재의 지수(여기에서는 j임)를 이용하여 Bi-기법으로 서명됨)를 전달한다. 이러한 서명은 무효화 서명으로서 지칭된다. TTP는 서명을 검증하고, Ti'가 현재의 시간 주기인지 여부를 검사한다. 만약 그렇다면 TTP는 무효화를 허용하고 적절하게 서명을 발행한다. 서명자가 동일한 시간 주기 동안에 수 회 철회해야 한다는 것은 배제되지 않는다.
무효화가 발생되지 않는 경우이거나, 지수(i', j')를 갖는 무효화가 발생되면 i≤i'이고 j≤j'-jΔ가 유지되는 경우(여기에서 i' 및 j'는 TTP에 의해 발행된 임의의 무효화 서명 중에서 최소 지수임)에 지수(i, j)를 갖는 사용자의 서명은 유효하게 된다. 하나의 서명이 서명되는 시간 주기가 경과되지 전까지는, 서명이 유효한지 여부를 확인할 수 없을 것이다. 그러나 이는 임의의 포워드 보안 서명 기법에 있어서 참(true)이다.
서명자가 하나의 키를 여러 번 철회하도록 허용하는 이유는, 그렇게 하지 않으면 비밀 키를 인식하는 해커가 서명자의 현재 지수보다 더 높은 지수(j')를 갖는 무효화 메시지를 전달할 수 있기 때문이다. 이것이 미세 단위 포워드 보안 서명 기법을 제공한다는 것은 쉽게 알 수 있을 것이다. 본 서명 기법 대신에, A-기법으로서 임의의 포워드 보안 서명 기법을 이용할 수도 있을 것이다.
Ⅱ. 공개 아키브(Public Archive)의 사용
제 2 예는 제 1 예의 A-기법을 공개 아키브로 대체한다. 여기에서는, 아키브로부터 메시지를 삭제할 수 없고, 메시지는 아키브로부터 수신된 바로 그 시간과 함께 발행되는 것으로 가정한다.
이러한 아키브를 가정할 때, 미세 단위 포워드 보안 서명 기법은 본 서명 기법에 대한 오로지 하나의 예시를 이용하여 다음과 같이 달성된다. 메시지(m)에 대한 서명은 현재의 지수를 이용하여 본 서명 기법에 의해 수행된다. 서명을 수행한 이후에, 비밀 키는 업데이트된다.
각 시간 주기의 끝에서, 사용자는 본 서명 기법을 적용하고 현재의 지수(여기에서는 j임)를 이용하여 사전 결정된 메시지, 예를 들면, ≪last index used in time period Ti≫ 등을 서명한 다음, 비밀 키를 업데이트하고 이 지수 서명을 공개 아키브로 전달한다. 공개 아키브는 해당 서명을 수신한 시간과 함께 메시지를 전달한다.
예를 들면, 시간 주기(Ti')로 서명자가 자신의 키를 철회하고자 할 때마다, 서명자는 현재의 지수(j')를 이용하여 본 서명 기법에 의해 서명되고, 자신의 의향을 나타내는 (바람직하게는) 사전 결정된 메시지를 TTP에 전달한다. TTP는 해당 서명을 검증하고, Ti'가 현재의 시간 주기인지 여부 및 j'가 이전의 시간 주기 동안에 서명자가 공개 아키브에 제공한 지수 서명의 지수(j)보다 더 작지 않은지 여부를 검사한다. 만약 그렇다면 TTP는 무효화를 허용하고, 적절하게 서명을 발행한다. 여기에서도, 서명자는 동일 시간 주기 동안에 여러 번 철회하는 것을 배제할 수 없다.
이러한 제 2 예에서, 무효화가 발생되지 않는 경우이거나, 무효화가 발생되었다면 i<j'-jΔ이거나 i≤j인 경우(여기에서 j'는 TTP에 의해 발행된 임의의 무효화 서명 중에서 최소 지수이고, j는 키가 철회된 시간 주기 이전의 시간 주기 동안에 서명자가 공개 아키브에 제공한 지수 서명의 지수(j)임)에 지수(i)를 갖는 사용자의 서명은 유효하게 된다.
이 예시적인 기법에서, 시간 주기가 경과되고 서명자가 아키브 내에 더 높은 지수를 갖는 서명을 발행할 때까지는 소정 시간 주기 동안에 서명된 서명이 유효하다고 확신할 수 없을 것이다. 제 1 예시적인 해결책과 비교할 때, 제 2 해결책은 서명이 더 짧다는 이점을 갖는다.
실용적인 이유로, 서명자는 소정 시간 주기가 경과된 이후의 몇 시간 동안 아키브 내에 지수 서명을 발행하고 무효화를 수행할 수 있을 것이다. 이는 시간 주기의 종료점까지 침입을 처리할 수 있게 한다. 결과적으로, 서명자는 시간 주기 마다 공개 아키브 내에 수 개의 지수 서명을 입력할 수 있어야 하고, 최소의 지수를 가진 서명이 중요해진다. 무효화가 발생되지 않거나, 무효화가 발생되었다면 i<j'-jΔ인 경우(여기에서 j'는 무효화 서명의 지수임)에 지수(i)를 갖는 서명은 유효한 것으로 간주된다.
Ⅲ. 시간 주기 당 서명의 허용
제 3 예에서는 본 서명 기법에 대한 하나의 예시만을 이용하였다. 지수는 시간 주기 마다 정확히 s개의 서명을 가능하게 함으로써 시간 주기에 연관된다. 파라미터 s는 t0 및 tΔ와 함께 공개 키의 부분으로서 발행된다.
따라서, 시간 주기(Ti) 동안에 지수(i·s,...,(i+1)s-1)를 사용하여 서명할 수 있다. 키를 철회하기 위해서, 서명자는 현재의 지수(j')를 가지고 생성된 무효화 서명을 TTP에 전달한다. TTP는 서명을 검증하고, 서명의 지수가 현재의 시간 주기와 매칭된다면 해당 서명을 발행한다.
무효화가 발생되지 않는 경우이거나 지수(j')를 갖는 무효화 서명이 발행되었다면 j가 이전의 시간 주기의 j'에 속하거나 j<j'-jΔ인 경우에 지수(j)를 갖는 서명은 유효한 것으로 간주된다.
이러한 제 3 예에의 기반이 되는 원리는 본 서명 기법에서 메시지를 서명하는 작업이 비밀 키를 업데이트함으로써 제어된다는 것이다. 따라서, 주어진 계산 능력으로 소정 시간 주기 동안에 얼마나 많은 서명을 발행할 수 있는지 계산 가능하고, s를 그 개수로 설정할 수 있다. 다음에, 아무런 메시지가 서명되지 않는 경우에도 연속적으로 비밀 키 업데이트를 수행할 수 있다. 이 접근 방식은 시스템의 대응 방식을 크게 변경하지 않지만 공개 아키브를 이용하지 않고 서명은 제 1 예에서보다 더 작다.
임의의 개시된 실시예는 제시 및/또는 설명된 하나 이상의 다른 실시예와 조합될 수 있다. 이는 또한 실시예의 하나 이상의 특징을 가능하게 한다.
본 명세서의 컴퓨터 프로그램 수단 또는 컴퓨터 프로그램은 임의의 언어, 코드 또는 표기법으로 된 임의의 표현을 의미하는데, 이 임의의 표현은 정보 처리 능력을 갖는 시스템이 직접적으로, 또는 a) 다른 언어, 코드 또는 표기법으로의 변환 및/또는 b) 다른 자료 형태로의 재생 중 어느 하나 또는 모두를 수행한 후에, 특정한 기능을 수행하게 하도록 의도된 인스트럭션의 세트에 대한 표현일 수 있다.
용어 정리
다음의 용어는 명세서의 이해를 돕기 위한 비 공식적 정의이다. 또한 부호는 용어에 관련하여 명세서 내에 사용되었다.
P, Q : 랜덤 인자값(바람직하게는, 소수임)
N : 계수값
k : N의 비트수
e1,...,eI : 지수값
ei : 서명 지수값
W : 지수값의 묘사의 일부분인 시드(seed)
QRN : Z* N의 제곱에 대한 서브 그룹
l : 보안 파라미터
{0,1}l : 길이(l)인 비트 스트링(bit-strings)
g', h', x' : 비밀 암호화 키(sk)의 부분인 비밀 기본값
g'i, h'i, x'i : 제공된 비밀 암호화 키
g'i+1, h'i+1, x'i+1 : 신규 또는 업데이트된 비밀 암호화 키
g, h, x : 공개 기본값 형성 요소
g, h, x, N : 공개 암호화 키(pk) 또는 제공된 공개 암호화 키(pk)
a : 제 1 서명 구성 요소
y : 제 2 서명 구성 요소
i : 서명 지수값(ei)에 대한 서명 기준
j : 무효화 기준
j' : 서명 기준
I : 생성 가능한 서명값의 개수
i, y, a : 서명값의 형성 요소
m : 메시지
p1, p2, p3, P4 : 제 1, 제 2, 제 3, 제 4 컴퓨터 노드
t0 : 개시 시간
T : 시간 주기
tΔ : 시간 주기 지속 기간
s : 시간 주기 당 생성 가능한 서명값의 개수

Claims (12)

  1. 서명 기법을 이용하는 접속된 컴퓨터 노드로 이루어진 네트워크에 적용 가능한 비밀 암호화 키(a secret cryptographic key)(sk) 및 공개 암호화 키(a public cryptographic key)(pk)를 제공하는 단계를 포함하는 방법으로서,
    상기 방법은 제 1 컴퓨터 노드에 의해 실행될 수 있고,
    상기 제공 단계는,
    2개의 랜덤 인자값(random factor values)(P, Q)을 선택하고, 상기 2개의 선택된 랜덤 인자값(P, Q)을 곱하여 계수값(modulus value)(N)을 획득하며, 상기 계수값(N)에 따라서 비밀 기본값(secret base value)(g', h', x')을 선택-상기 비밀 기본값(g', h', x')은 상기 비밀 암호화 키(g', h', x')의 일부를 형성함-하여 상기 비밀 암호화 키(sk)를 생성하는 단계와,
    일정 수(I개)의 지수값(e1,...,eI) 를 선택하고, 상기 지수값(e1,...,eI) 및 상기 비밀 기본값(g', h', x')으로부터 공개 기본값(g, h, x)을 도출-상기 공개 기본값(g, h, x) 및 상기 계수값(N)은 상기 공개 암호화 키(g, h, x, N)의 부분을 형성함-하여 상기 공개 암호화 키(pk)를 생성하는 단계와,
    상기 2개의 랜덤 인자값(P, Q)을 삭제하는 단계와,
    상기 네트워크 내에 상기 공개 암호화 키(g, h, x, N)를 제공하는 단계
    를 포함하되,
    상기 공개 암호화 키(g, h, x, N) 및 적어도 하나의 상기 선택된 지수값(e1,...,eI)은 상기 네트워크 내에서 검증을 위해 제 2 컴퓨터 노드로 전달되는 메시지(m)에 대한 서명값(i, y, a)을 검증하는 데 이용될 수 있는
    비밀 암호화 키 및 공개 암호화 키의 제공 방법.
  2. 청구항 2은(는) 설정등록료 납부시 포기되었습니다.
    제 1 항에 있어서,
    상기 네트워크 내에 상기 지수값(e1,...,eI)에 대한 설명을 제공하는 단계를 더 포함하는 비밀 암호화 키 및 공개 암호화 키의 제공 방법.
  3. 제 1 항에 있어서,
    침입이 검출된 경우에 상기 서명값(i, y, a)의 타당성(validity)을 통신할 수 있도록 상기 선택된 지수값(e1,...,eI)의 차수를 정의하는 단계를 더 포함하는 비밀 암호화 키 및 공개 암호화 키의 제공 방법.
  4. 접속된 컴퓨터 노드로 이루어진 네트워크에서 메시지(m)에 대한 서명값(i, y, a)을 제공하는 단계를 포함하는 방법으로서,
    상기 방법은 제 1 컴퓨터 노드에 의해 실행될 수 있고,
    상기 제공 단계는,
    제 1 서명 구성 요소(a)를 선택하는 단계와,
    일정 수(I개)의 지수값(e1,...,eI) 로부터 서명 지수값(ei)을 선택하는 단계와,
    제공된 비밀 암호화 키(g'i, h'i, x'i), 상기 메시지(m) 및 상기 일정 수(I개)의 지수값(e1,...,eI) 로부터 제 2 서명 구성 요소(y)를 도출하여 상기 제 1 서명 구성 요소(a), 상기 제 2 서명 구성 요소(y) 및 상기 서명 지수값(ei)이 상기 메시지(m) 및 제공된 공개 암호화 키(g, h, x, N)와의 알려진 관계를 만족시키게 하는 도출 단계-상기 서명값(i, y, a)은 상기 제 1 서명 구성 요소(a), 상기 제 2 서명 구성 요소(y) 및 상기 서명 지수값(ei)에 대한 서명 기준(i)을 포함함-
    를 포함하되,
    상기 서명값(i, y, a)은 검증을 위해 상기 네트워크 내에서 제 2 컴퓨터 노드로 전달될 수 있는
    서명값 제공 방법.
  5. 제 4 항에 있어서,
    상기 제 2 서명 구성 요소(y)의 도출 단계는,
    제공된 공개 암호화 키(g, h, x, N), 상기 제공된 비밀 암호화 키(g'i, h'i, x'i) 및 상기 지수값(e1,...,eI)을 이용하여 서명 기본값(gi, hi, xi)을 도출하는 단계를 더 포함하는 서명값 제공 방법.
  6. 제 4 항에 있어서,
    상기 제공된 비밀 암호화 키(g'i, h'i, x'i) 및 상기 선택된 서명 지수값(ei)으로부터 새로운 비밀 암호화 키(g'i+1, h'i+1, x'i+1)를 도출하는 단계를 더 포함하는 서명값 제공 방법.
  7. 접속된 컴퓨터 노드로 이루어진 네트워크에서 메시지(m)에 대한 서명값(i, y, a)을 검증하는 단계를 포함하는 방법으로서,
    상기 방법은 제 2 컴퓨터 노드에 의해 실행될 수 있고,
    상기 검증 단계는,
    제 1 컴퓨터 노드로부터 상기 서명값(i, y, a)을 수신하는 단계와,
    상기 서명값(i, y, a)으로부터 서명 지수값(ei)을 도출하는 단계와,
    상기 서명 지수값(ei) 및 상기 서명값(i, y, a)의 부분이 상기 메시지(m) 및 제공된 공개 암호화 키(g, h, x, N)에 대해 알려진 관계를 만족시키는지 여부를 검증하고, 만족시키지 않으면 상기 서명값(i, y, a)을 거부하는 단계
    를 포함하되,
    상기 서명값(i, y, a)은 제 1 서명 구성 요소(a), 일정 수(I개)의 지수값(e1,...,eI) , 제공된 비밀 암호화 키(g'i, h'i, x'i) 및 상기 메시지(m)로부터 생성되는
    서명값 검증 방법.
  8. 상기 서명값(i, y, a)에 관련된 비밀 암호화 키(sk)가 노출된 경우에, 접속된 컴퓨터 노드로 이루어진 네트워크 내에서 서명값(i, y, a)의 타당성을 통신하는 단계를 포함하는 방법으로서,
    상기 통신 단계는,
    지수값(e1,...,eI)의 차수를 결정하는 단계와,
    상기 네트워크 내에서 상기 지수값(e1,...,eI)의 설명과 상기 지수값(e1,...,eI)의 차수를 발행하는 단계와,
    상기 네트워크 내에서 상기 지수값(e1,...,eI) 중 하나에 대한 무효화 기준(revocation reference)(j)을 발행함으로써, 상기 무효화 기준(j), 상기 지수값(e1,...,eI)의 차수 및 제공된 공개 암호화 키(pk)를 이용하여 상기 서명값(i, y, a)의 타당성을 결정하는 단계
    를 포함하는 서명값의 타당성 통신 방법.
  9. 제 1 항, 제 4 항, 제 7 항 또는 제 8 항 중 어느 한 항에 있어서,
    각각의 상기 지수값(e1,...,eI)을 많아야 하나의 서명값(i, y, a)에 적용하는 단계를 더 포함하는 서명값의 타당성 통신 방법.
  10. 삭제
  11. 컴퓨터 판독 가능 기록 매체로서,
    컴퓨터가 제 1 항, 제 4 항, 제 7 항 또는 제 8 항 중 어느 한 항에 기재된 방법의 각각의 단계를 수행하게 하는 컴퓨터 판독 가능 프로그램 수단을 포함하는 컴퓨터 판독 가능 기록 매체.
  12. 네트워크 디바이스(pi)로서,
    제 11 항에 기재된 컴퓨터 판독 가능 기록 매체와,
    상기 매체가 야기하는 방법의 각각의 단계를 실행하고, 상기 네트워크에서 교환되는 메시지를 액세스할 수 있는 프로세서
    를 포함하는 네트워크 디바이스.
KR1020057000156A 2002-07-29 2003-07-07 비밀 암호화 키와 공개 암호화 키의 제공 방법, 서명값 제공 방법, 서명값 검증 방법, 서명값 타당성 통신 방법, 컴퓨터 판독 가능 기록 매체 및 네트워크 디바이스 KR100745436B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02405658 2002-07-29
EP02405658.2 2002-07-29

Publications (2)

Publication Number Publication Date
KR20050032567A KR20050032567A (ko) 2005-04-07
KR100745436B1 true KR100745436B1 (ko) 2007-08-02

Family

ID=31198002

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057000156A KR100745436B1 (ko) 2002-07-29 2003-07-07 비밀 암호화 키와 공개 암호화 키의 제공 방법, 서명값 제공 방법, 서명값 검증 방법, 서명값 타당성 통신 방법, 컴퓨터 판독 가능 기록 매체 및 네트워크 디바이스

Country Status (9)

Country Link
US (2) US20060233364A1 (ko)
EP (1) EP1540882B1 (ko)
JP (1) JP4367938B2 (ko)
KR (1) KR100745436B1 (ko)
CN (1) CN1672358B (ko)
AU (1) AU2003247053A1 (ko)
CA (1) CA2494078C (ko)
DE (1) DE60318073T2 (ko)
WO (1) WO2004014020A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210001290A (ko) 2019-06-27 2021-01-06 한양대학교 산학협력단 아이디 기반 키 발급을 지원하는 포워드 시큐어 전자 서명 방법 및 그 장치

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7711965B2 (en) * 2004-10-20 2010-05-04 Intel Corporation Data security
US8848924B2 (en) * 2008-06-27 2014-09-30 University Of Washington Privacy-preserving location tracking for devices
CN102006167B (zh) * 2010-11-11 2013-03-13 西安理工大学 基于代数的对消息匿名环签名的方法
CN102006165B (zh) * 2010-11-11 2012-11-07 西安理工大学 基于多变量公钥密码对消息匿名环签名的方法
CN102006166B (zh) * 2010-11-11 2013-01-02 西安理工大学 基于多变量多项式对消息匿名环签名的方法
WO2012122217A2 (en) * 2011-03-07 2012-09-13 Adtran, Inc. Method and apparatus for network access control
US8699715B1 (en) * 2012-03-27 2014-04-15 Emc Corporation On-demand proactive epoch control for cryptographic devices
US9078144B2 (en) * 2012-05-02 2015-07-07 Nokia Solutions And Networks Oy Signature enabler for multi-vendor SON coordination
DE102014018867A1 (de) * 2014-12-16 2016-06-16 Giesecke & Devrient Gmbh Einbringen einer Identität in ein Secure Element
KR101750208B1 (ko) 2016-04-28 2017-07-03 한양대학교 산학협력단 빠른 서명 생성이 가능한 포워드 시큐어 전자 서명 방법 및 이를 사용하는 포워드 시큐어 전자 서명 생성 장치
US10326753B2 (en) 2016-06-23 2019-06-18 International Business Machines Corporation Authentication via revocable signatures
DE102018111081A1 (de) * 2018-05-08 2019-11-14 Uniscon Universal Identity Control Gmbh Verfahren zum Sichern eines Datenaustausches in einer verteilten Infrastruktur
KR102101557B1 (ko) * 2018-07-16 2020-04-16 한양대학교 산학협력단 객체 인식 기반 영상 인증 방법 및 그 장치
CN109743171B (zh) * 2018-12-06 2022-04-12 广州博士信息技术研究院有限公司 一种解决多方数字签名、时间戳及加密的密钥串联方法
USD1012808S1 (en) * 2021-10-27 2024-01-30 Citic Dicastal Co., Ltd. Vehicle wheel

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990053065A (ko) * 1997-12-23 1999-07-15 정선종 이산대수 문제에 근거한 디지탈 다중서명 방법
KR20020087896A (ko) * 2002-08-12 2002-11-23 학교법인 한국정보통신학원 결정적 디피-헬만군에서id에 기반한 디지털 서명 및 그인증 방법
KR20060043347A (ko) * 2004-03-02 2006-05-15 프랑스 텔레콤 신규의 공정한 은닉 서명을 위한 서명 방법, 컴퓨터 프로그램, 장치 및 서명 시스템

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4996711A (en) * 1989-06-21 1991-02-26 Chaum David L Selected-exponent signature systems
US20020013898A1 (en) * 1997-06-04 2002-01-31 Sudia Frank W. Method and apparatus for roaming use of cryptographic values
US5850450A (en) * 1995-07-20 1998-12-15 Dallas Semiconductor Corporation Method and apparatus for encryption key creation
US5675649A (en) * 1995-11-30 1997-10-07 Electronic Data Systems Corporation Process for cryptographic key generation and safekeeping
JP4615708B2 (ja) * 1997-10-14 2011-01-19 サーティコム コーポレーション 鍵認証方式
WO1999035782A1 (en) * 1998-01-02 1999-07-15 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
JP3659791B2 (ja) 1998-03-23 2005-06-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 小時間鍵生成の方法及びシステム
AU2001236458A1 (en) * 2000-01-13 2001-07-24 Beamhit, L.L.C. Firearm simulation and gaming system and method for operatively interconnecting a firearm peripheral to computer system
JP2001211155A (ja) * 2000-01-25 2001-08-03 Murata Mach Ltd 共通鍵生成方法,共通鍵生成装置及び暗号通信方法
US7093133B2 (en) * 2001-12-20 2006-08-15 Hewlett-Packard Development Company, L.P. Group signature generation system using multiple primes
US7400732B2 (en) * 2002-07-25 2008-07-15 Xerox Corporation Systems and methods for non-interactive session key distribution with revocation
JP3936721B2 (ja) * 2005-07-29 2007-06-27 株式会社日立コミュニケーションテクノロジー 光アクセスシステム、光加入者装置及び光集線装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990053065A (ko) * 1997-12-23 1999-07-15 정선종 이산대수 문제에 근거한 디지탈 다중서명 방법
KR20020087896A (ko) * 2002-08-12 2002-11-23 학교법인 한국정보통신학원 결정적 디피-헬만군에서id에 기반한 디지털 서명 및 그인증 방법
KR20060043347A (ko) * 2004-03-02 2006-05-15 프랑스 텔레콤 신규의 공정한 은닉 서명을 위한 서명 방법, 컴퓨터 프로그램, 장치 및 서명 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210001290A (ko) 2019-06-27 2021-01-06 한양대학교 산학협력단 아이디 기반 키 발급을 지원하는 포워드 시큐어 전자 서명 방법 및 그 장치

Also Published As

Publication number Publication date
CN1672358B (zh) 2010-07-14
WO2004014020A8 (en) 2004-04-22
DE60318073T2 (de) 2008-12-11
JP4367938B2 (ja) 2009-11-18
CA2494078C (en) 2010-11-23
KR20050032567A (ko) 2005-04-07
US8139767B2 (en) 2012-03-20
US20060233364A1 (en) 2006-10-19
WO2004014020A1 (en) 2004-02-12
US20090316886A1 (en) 2009-12-24
JP2005535206A (ja) 2005-11-17
EP1540882B1 (en) 2007-12-12
AU2003247053A1 (en) 2004-02-23
CA2494078A1 (en) 2004-02-12
DE60318073D1 (de) 2008-01-24
EP1540882A1 (en) 2005-06-15
CN1672358A (zh) 2005-09-21

Similar Documents

Publication Publication Date Title
US8139767B2 (en) Fine-grained forward-secure signature scheme
US10326753B2 (en) Authentication via revocable signatures
CN109672537B (zh) 基于公钥池的抗量子证书获取系统及获取方法
JP4741503B2 (ja) 公開鍵を検証可能に生成する方法及び装置
Brickell et al. Enhanced privacy ID: A direct anonymous attestation scheme with enhanced revocation capabilities
JP3522447B2 (ja) 認証交換方法および付加型公衆電子署名方法
US6381699B2 (en) Leak-resistant cryptographic method and apparatus
Camenisch Better privacy for trusted computing platforms
US8589693B2 (en) Method for two step digital signature
US8661251B2 (en) Method and device for creating a group signature and related method and device for verifying a group signature
EP1117206B1 (en) Public key infrastructure
Smyth et al. Direct Anonymous Attestation (DAA): Ensuring privacy with corrupt administrators
US7000110B1 (en) One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device
KR100635280B1 (ko) 전자 서명을 이용한 보안 방법
JP2002534701A (ja) 寄託されない署名専用キーを用いた自動回復可能な自動可能暗号システム
EP1838031A1 (en) Limited blind signature system
US20040153652A1 (en) Method, apparatus, system, and program for creating ring signature
CN111737766A (zh) 一种在区块链中判断数字证书签名数据合法性的方法
US7356845B2 (en) Method and apparatus for identification tagging documents in a computer system
Konashevych Data insertion in blockchain for legal purposes. How to sign contracts using blockchain
KR100654933B1 (ko) 사용자의 패스워드 입력에 따라서 동적 생성되는 인증서를인증하는 인증시스템 및 인증방법
JPH11215121A (ja) 認証装置および方法
CN113691376A (zh) 一种密钥管理方法及装置
Shin et al. Authenticated dictionary-based attribute sharing in federated identity management
CN117574408B (zh) 基于区块链的生产资料管理方法、装置及电子设备

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee