JP2007089171A - 順応性のある匿名証明書システム及びその方法 - Google Patents

順応性のある匿名証明書システム及びその方法 Download PDF

Info

Publication number
JP2007089171A
JP2007089171A JP2006254122A JP2006254122A JP2007089171A JP 2007089171 A JP2007089171 A JP 2007089171A JP 2006254122 A JP2006254122 A JP 2006254122A JP 2006254122 A JP2006254122 A JP 2006254122A JP 2007089171 A JP2007089171 A JP 2007089171A
Authority
JP
Japan
Prior art keywords
user
certificate
anonymous
public key
root
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2006254122A
Other languages
English (en)
Inventor
Ke Zeng
カ ゼン
Tomoyuki Fujita
トモユキ フジタ
Min-Yu Hsueh
シュエ ミンユ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC China Co Ltd
Original Assignee
NEC China Co Ltd
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 NEC China Co Ltd filed Critical NEC China Co Ltd
Publication of JP2007089171A publication Critical patent/JP2007089171A/ja
Pending legal-status Critical Current

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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • 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/42Anonymization, e.g. involving pseudonyms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】 順応性のある匿名証明書システム及び通信ネットワーク上の証明方法を提供する。
【解決手段】 匿名証明書システムにおいて、ユーザは、信用ある機関からのルート証明を得て、ルート証明に基づいて匿名証明書を生成し、検証者へ匿名証明書を有する匿名の公開鍵を送る。検証者は、匿名証明書の使用を通じて、ユーザの匿名の公開鍵が信用ある機関によって証明されていることを確認する。匿名証明書は、検証者にユーザの本当の身元を見抜くことを可能にする情報を含んでいない。匿名証明書システムにより、信用ある機関は、ユーザのルート公開鍵のために一度だけ保証する。匿名の公開鍵がそれぞれ別個の匿名証明書を含む場合、ユーザは自身によって多数の匿名の公開鍵を生成することが可能である。
【選択図】 図17

Description

本発明は、コンピュータ通信ネットワークセキュリティに関し、特に、プライバシーを保護する通信システム及びその通信方法に関する。
現在、公開鍵暗号方式は広く使用される。従来、多くの公開鍵の暗号化及び復号化の技術は、プライバシーの場合と同程度のセキュリティを容易に提供することが可能である。例えば、Rivestらによる米国特許4,405,829号、及びEI
Gamalらによる分離対数に基づいた公開鍵暗号方式および署名スキーム(Tahir EIGamal. A public-key cryptosystem and
a signature scheme based on discrete logarithms. Advances in Cryptology Proceedings of CRYPTO 84, pages
10-18, 1985)に開示された技術は、当該技術分野で広く知られた技術である。上記Rivestによる特許およびEI Gamalの技術を引用して説明する。
RSA方式やEI Gamalのような従来の公開鍵暗号方式によって安全に他者と通信するためには、ユーザは外部に自身の公開鍵を公開することが要求される。しかし、多くの場合、ユーザは、1つの公開鍵と秘密鍵のペア、すなわち、1つの公開鍵とそれに対応する唯一の秘密鍵とを所有するだけである。公開鍵暗号方式のこの従来の簡易な使用法は、ユーザの公開鍵をユーザの識別情報として適切に機能させるとという偶発的な結果を生じる。それは、たとえ十分に計画された他のプライバシー保護基準のみならずこの種の公開鍵暗号方式によってユーザに関するプライバシーが保護されるとしても、悪意ある者が、唯一の公開鍵についての使用パターンに基づいてユーザによって公表された情報を収集して観察することを通じて、保護されているユーザの活動を把握することが依然可能なことを意味する。
RSA方式及びEI Gamalによって示されているような従来の公開鍵暗号方式の範囲内で、ユーザが、自身の単一の公開鍵によって自身のプライバシーがあばかれるかもしれないと懸念する場合、1つの可能な解決策は、いくつかの異なる公開鍵を所有し、各公開鍵を異なる通信者に用心して公開することを関係者に要請することである。
多くの公開鍵ペアの所有に加えて、Watersらは、ユーザが単一の秘密鍵に対応する幾つかの公開鍵を同時に所有することができるようにする唯一無比の公開鍵スキーム(仕組み)を実現するために、Ei
Gamalによる暗号化方式を用いる方法を提案している。B.R.Waters、E.W.Felten、A.Sahai、「唯一無比の公開鍵を介した受信者の秘匿化(Receiver
Anonymity via Incomparable Public keys)」、CCS'03、Washigton DC、USA、pp.112〜121) (以下に、Waters)を参照。上記Watersに開示される技術を引用して説明する。
上述したように、ユーザは数個の公開鍵を所有してもよい。しかしながら、多くの場合、人物Aが公開鍵を得る場合、誰か他の者が公開鍵を証明しなければならない。例えば、公開鍵はよく知られている証明書機関(Certificate Authority)(CA)で証明することが可能であるし、或いはその人物の友人Cによって証明することが可能である。第3の人物Bが公開鍵とその証明書を見る場合、BがCAを信用し、或いはB友人Cを信用するいずれの場合でも、人物はその公開鍵を信用する。
ユーザが数個の公開鍵を所有する時に、それらの公開鍵を証明する1つの可能な方法は、図25に示されるように、それらの公開鍵を証明してくれるようにCAに依頼することである。CAは全ての証明書要求を全てオンラインで処理するので、CAに非常に高い能力が必要とされ、所有権とメンテナンスの点からコストが増大している。ネットワーク上のユーザがそれぞれ多数の公開鍵を所有する場合、そのようなコストがさらに増大する。
他の可能性は、図26に示されるように、公開鍵の各々を証明してくれるように何人かの友人に依頼することである。しかしながら、これはユーザのプライバシー保護と相容れない。それだけでなく、公開鍵を証明してくれるように友人に依頼することは非能率的でかつ効果がないだけでなく、多くのビジネスの場面において信用されない。
公開鍵の検証に加えて、CAを中心にした解決方法及び友人による証明方法からなる方法の上述した欠点は、数個の利用者データを証明する必要のある他の多くの状況にも存在する。
米国特許第4,405,829号 EI Gamalらによる分離対数に基づいた公開鍵暗号方式および署名スキーム(Tahir EIGamal. A public-keycryptosystem and a signature scheme based on discrete logarithms. Advances in Cryptology Proceedings ofCRYPTO 84, pages 10-18, 1985) B.R.Waters、E.W.Felten、A.Sahai、「唯一無比の公開鍵を介した受信者の秘匿化(ReceiverAnonymity via Incomparable Public keys)」、CCS'03、Washigton DC、USA、pp.112〜121) 応用暗号学のハンドブック(Handbook of Applied Cryptography)(http://www.cacr.math.uwaterloo.ca/hac/)
本発明は、順応性のある匿名証明書システム及び通信ネットワーク上の証明方法を提供する。
本発明によれば、通信ネットワーク上でデータを証明するユーザのコンピュータ装置であって、前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、前記コンピュータ装置が、前記ネットワークに接続された、前記信用ある機関の装置からルート証明を受け取るためのルート証明ユニット、前記ルート証明ユニットに接続された、前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するための匿名証明書生成ユニット、前記匿名証明書生成ユニットに接続された、前記通信ネットワークに前記匿名証明書と共に前記ユーザデータを送信するための送信ユニットを備えることを特徴とする。
他の本発明によれば、ユーザが通信ネットワーク上でデータを証明する方法であって、前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、前記信用ある機関からルート証明を受信するステップと、前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するステップと、前記立証者側に前記匿名証明書を含む前記ユーザのデータを送信するステップとを有することを特徴とする。
さらに他の本発明によれば、通信ネットワーク上で証明書を処理する処理装置であって、前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、前記処理装置が、システムパラメタを計算するためのシステムパラメータ計算ユニットと、前記システムパラメータ計算ユニットに接続された、前記ユーザ及び前記立証者側によって共有されるシステムパラメタを発行するためのパラメータ発行ユニットと、前記ネットワークに接続された、前記ユーザからルート証明要求を受け取るためのルート証明要求受信ユニットと、前記ルート証明要求受信ユニット及び前記システムパラメータ計算ユニットに接続された、前記ルート証明要求に応じて前記ユーザのためのルート証明を生成するためのルート証明生成ユニットとを備え、前記ルート証明は複数の匿名証明書を生成する前記ユーザのために使用されることを特徴とする。
さらに他の本発明によれば、通信ネットワーク上で証明書を処理する処理方法であって、前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、システムパラメタを計算するステップと、前記ユーザ及び前記立証者側によって共有されるシステムパラメタを発行するステップと、前記ユーザからルート証明要求を受け取るステップと、前記ルート証明要求に応じて前記ユーザのためのルート証明を生成するステプを有し、前記ルート証明は複数の匿名証明書を生成する前記ユーザのために使用されることを特徴とする。
さらに他の本発明によれば、通信ネットワーク上のユーザのための匿名証明書システムであって、前記ネットワークには信用ある機関の装置を含み、前記ネットワークに接続された、前記信用ある機関の装置からルート証明を受け取るためのルート証明ユニット、前記ルート証明ユニットに接続された、前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するための匿名証明書生成ユニット、前記匿名証明書生成ユニットに接続された、前記通信ネットワークに前記匿名証明書と共に前記ユーザデータを送信するための送信ユニット前記通信ネットワークに接続された、受信した匿名証明書によってユーザのデータを検査するための前記立証者側ユニットを備えることを特徴とする。
さらに他の本発明によれば、通信ネットワーク上で匿名証明書によってユーザのデータを証明する方法であって、前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、前記信用ある機関から前記ユーザにルート証明を発行するステップと、ユーザによる前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するステップと、前記立証者側に前記匿名証明書を含む前記ユーザのデータを送信するステップを有し、前記立証者側が、前記匿名証明書によって前記ユーザのデータを検査することを特徴とする。
さらに他の本発明によれば、ユーザが通信ネットワーク上でデータを証明するためにコンピュータ上で実行される証明プログラムであって、前記コンピュータに、前記信用ある機関からルート証明を受信する処理と、前記ルート証明に基づいて少なくとも1つの匿名証明書を生成する処理と、前記立証者側に前記匿名証明書を含む前記ユーザのデータを送信する処理を実行させることを特徴とする。
さらに他の本発明によれば、ユーザが通信ネットワーク上でデータを証明するためにコンピュータ上で実行される証明プログラムであって、前記コンピュータに、システムパラメタを計算する処理と、前記ユーザ及び前記立証者側によって共有されるシステムパラメタを発行する処理と、前記ユーザからルート証明要求を受け取る処理と、前記ルート証明要求に応じて前記ユーザのためのルート証明を生成する処理を実行させ、前記ルート証明は複数の匿名証明書を生成する前記ユーザのために使用されることを特徴とする。
本発明によれば、匿名の公開鍵が信用された主体によって証明される匿名証明書によって保証される場合、ユーザは信頼できる匿名の公開鍵を生成することが可能であることが、上述した説明から理解できる。ユーザ・プライバシ保護の機能は完全に施される。ユーザは、自身による別個の匿名の公開鍵だけでなく、自身による別個の匿名証明書を生成する。本発明による実施の形態において、CAの介在は最小限である。よって、信用された主体の負荷の軽減化を実現することが可能である。さらに、匿名証明書はCA或いはグループ管理者レベルで追跡可能であるので、ユーザが匿名性を乱用するのは不可能である。
(秘匿化した公開鍵)
この出願は、この出願は、Ke ZENG及びTomoyuki FUJITAによって発明された新たしい匿名の公開鍵(Anonymous Public Key)(APK)方式に関するものである。APK方式の詳細な内容は、出願中の中国特許出願No.
200410090903.X(出願日:2004年11月10日、出願人:NEC (China) Co., Ltd、発明の名称:「セキュリティ通信システムにおける秘匿化した公開鍵を生成する方法、装置及びシステム」)に記載されている。
まず、APKの技術的解決方法について以下に説明する。
上述したように、ユーザはいくつかの公開鍵を所有することを欲する可能性がある。別個の公開鍵がそれぞれ対応する別個の秘密鍵を有する複数の公開鍵ペアを使用することによって、従来の公開鍵暗号方式では、ある程度までプライバシー問題を軽減することが可能である。しかしながら、公開鍵の数が増加するに伴って、個人のための公開鍵ペアの管理コストが増大する。
さらに、秘密鍵の数の増加に伴って、秘密鍵の紛失或いは露見といったセキュリティ上の危険性が増加する。
EI Gamalの暗号方式による公開鍵を構成するための種々のジェネレータを用いることによって、新しい公開鍵を生成するけれども、それは計算における最適化を困難にする。例えば、(g, g)と(h, h)がWatersの唯一無比の唯一無比の公開鍵方式(Incomparable Public Keys Scheme)によって生成された異なる公開鍵であると仮定する。ここで、gとhは、異なるジェネレータである。従来、EI
Gamalによる暗号化方式は、単一のジェネレータだけを使用する。従って、複数のジェネレータをオフラインで計算させることができ、かつ複数のジェネレータについて1つのテーブルだけを維持すればよいという利点が得られる。Watersによるスキームは、複数の異なるジェネレータについての数種類のテーブルの維持、及びオンラインによる計算を要求するため、計算の最適化及び管理コストの何れの点においても好ましくない。
発明者等は、匿名の公開鍵(Anonymous Public Key)(APK)方式を見いだした。APK手法は、エンドユーザが一人で多数の公開鍵を生成することが可能であり、かつ1つの秘密鍵だけを保持することになっているという点で独特である。
APK方式について、図1〜図7を参照して説明する。
明細書全体にわたって、用語「グループ」は、他の定義が示されない限り以下のように定義される数学的な概念を指す。
グループ(G, ◇)は、次の3つの公理を満たすGにおけるブール演算◇を備えた集合Gから成る。
(1) グループ演算は結合である。すなわち、Gのすべての要素a,b,cについて、a◇(b◇c)=(a◇b)◇Cを満たす。
(2) Gのすべての要素aについてa◇e=e◇a=aを満たすGの単位元eがある。
(3) Gの各要素aについて、a◇a−1=a−1◇a=eを満たすaの逆関数と呼ばれるGの要素a−1が存在する。
例えば、追加の演算を備えた整数Zの集合は、あるグループを形成する。
単位元は“0”であり、整数aの逆関数は整数a−1である。
より詳細に関しては、オンラインで利用可能な応用暗号学のハンドブック(Handbook of Applied Cryptography)を参照(http://www.cacr.math.uwaterloo.ca/hac/)。
本発明による通信システムは、複数の端末装置及び複数の通信チャネルを備える。
図1は、本発明の一実施例を示すブロック図である。
図1において、端末装置Aは、複数のセッションによって端末装置aと通信する。端末装置Aには、端末装置aに情報を送るための少なくとも1つの通信チャネルが存在する。
そのセッションは、1つあるいは複数の通信チャネルを利用する。
端末装置aは、端末装置Aに情報を送るために同じ通信チャネルを使用してもよいし、使用しなくてもよい。
通信チャネルを通じて、端末装置のAは、異なる通信セッション毎に、端末装置aに各種の公開鍵Ea〜Ezを通知するが、その秘密鍵xについては秘匿する。
端末装置aは、必要に応じて端末装置Aに対していくつかの異なる公開鍵を通知する点で、端末装置Aと同様である。
図1に示されるように、異なるセッション毎に異なる公開鍵を生成することにより、端末装置aあるいは任意の第三者が、端末装置Aの活動パターンを推測することは事実上不可能である。
例えば、電子オークション環境では、異なる公開鍵が各セッション毎に生成されるため、端末装置Aからのユーザは、自身の入札パタ−ン及び戦略が他者によって推測及び分析されるのを防ぐことができる。
また、図2は、本発明の他の実施例を示すブロック図である。
図2において、端末装置Aは、端末装置aから端末装置zの複数の端末装置と通信する。
端末装置Aと各々の通信先との間で使用される通信チャネルは、同じでも、同じではなくてもよい。
図2の左側に示されるように、通信チャネルを通じて、端末装置Aは、異なる公開鍵E〜Eを他の端末装置、すなわち、端末装置a,端末装置b,・・・端末装置zにそれぞれ通知する。
この場合、端末装置Aと端末装置a〜端末装置zとの間に、「1対複数」の関係があるといえる。上記公開鍵の通知は様々な方法で実現することができる。
例えば、公開鍵と一緒に明らかにされる他の情報があってもよいし、あるいは、公開鍵が電子メールか証明書に組み込まれてもよい。
また、端末装置a〜端末装置zは、受信した公開鍵で暗号化される情報を端末装置Aに送るために、端末装置a〜端末装置zの各々が端末装置Aからの公開鍵を受け取る通信チャネルと同一の通信チャネルを使用してもよいし、使用しなくてもよい。
上述の場合と同様に、端末装置Aは、自身の秘密鍵xを秘密にする。
同様に、端末装置a〜端末装置zは、必要に応じて、端末装置Aに対していくつかの異なる公開鍵を通知する点で、端末装置Aと同じである。
図2の右側に示すように、端末装置a〜zは、それぞれ自身の公開鍵E〜Eを端末装置Aに通知する。
この場合、端末装置a〜zと端末装置のAとの間に、「複数対1」の関係があるといえる。
図3は、図1及び図2に示された通信システムに参加する送信側と受信側の間の好適な通信セッション例を示す。
図3において、送信側が受信側に公開鍵を公表しようとする度に、送信側は、既存の公開鍵のプールから1つの公開鍵を選択する(ステップS32)か、もしくは新しい公開鍵を生成する(ステップS33)かを決定する(ステップS31)。
その後、送信側は受信側に対して公開鍵を送信する(ステップS34)。
受信側は、送信すべきメッセージがある場合(ステップS35)には、送信側からの公開鍵を認識して(ステップS36)、メッセージを暗号化しその暗号化されたメッセージを送信側に送る(ステップS37)。
最後に、送信側は、受信した暗号化されたメッセージを解読し(ステップS38)、受信側から送信されたオリジナルのメッセージを復元する。
なお、受信側が暗号化されたメッセージを送信側に送信することを欲する以前に、受信側が送信側から公開鍵を予め受け取っていることも想定される。
既存の鍵と無関係に、送信側が常に異なる公開鍵を生成する(ステップS33)ように構成されていてもよい。
しかしながら、当業者であれば分かるように、既存の鍵の操作はゼロから公開鍵を計算するほど集中的な計算を必要とないので、既存の公開鍵のプールを使用することは、計算のオーバヘッドを著しく軽減する。
送信機が自身の公開鍵を受信機へ最初に送るため、図3の送信機及び受信機が便宜的にそのように示されていることに留意すべきである。
一旦受信機が送信機からの公開鍵を保持すれば、その受信機が暗号化されたメッセージを受信側である送信機に送る場合、その受信機は実際には送信機となる。
2つの端末装置間の典型的な相互の通信セッションにおいて、上記役割は、セッションの間頻繁に逆転する。
ここで、図4を参照すると、本発明による公開鍵−秘密鍵のペアに基づいた通信セッションにおける送信機と受信機の好適な機能ブロック図が示されている。
ここで、送信機41は、少なくとも、通信チャネルを処理する送信装置43及び受信装置45と、暗号文の解読を行う復号化装置47と、公開鍵を生成する公開鍵生成装置49とを備える。
受信機42は、少なくとも、送信装置44と、受信装置46と、プレーンテキストのような送信される情報の暗号化を行うための暗号化装置48とを備える。
送信機41は、複数の公開鍵を受信機42に公開してもよいし、送信機41と受信機42の間に複数のセッションがある場合、各セッションがそれぞれ送信機41の異なる公開鍵を公開してもよい。
また、送信機41は、受信機として動作する場合、さらに暗号化装置48を備える。
同様に、受信機42は、送信機として動作する場合、さらに復号化装置47及び公開鍵生成装置49を備える。
図4に示す暗号化装置48及び復号化装置47については、どちらもデータ通信と暗号化の分野においてよく知られているものである。
公開鍵生成装置49について、以下に示す図5においてさらに詳細に説明する。
図5を参照すると、制御装置55は、鍵を管理する処理だけでなく公開鍵を生成する処理を制御する。
記憶部54は、秘密鍵、生成された公開鍵、受信した公開鍵及び制御装置55によって要求される他のデータを格納する。
なお、公開鍵生成装置49で使用される記憶部54は、オンチップレジスタ、ROM及びRAMのような情報を格納することが可能な全ての装置によって実現することができる。
公開鍵生成装置49は、受信した暗号文及び解読における中間で出力されるデータを格納するために、記憶部54を復号化装置47と共有することも可能である。
公開鍵生成装置49の他の構成要素については後述する。
図5においては、「グループ」演算がグループ指数演算子57によって処理される。
「グループ」演算を別のグループ演算子によって処理する公開鍵生成装置49の他の実施例も可能である。
次に、本発明に従って秘匿化された公開鍵(“APK”)を生成する、図4及び図5に示す公開鍵生成装置49の処理について説明する。
図6は、APK−秘密鍵ペアを生成するための典型的な処理の流れを示す。
まず、グループGが、グループ選択手段51によって選択される(ステップS60)。
例えば、コンピュータには、様々の適切なグループを表す様々なデータを格納するメモリが備えらえている。
制御装置55による管理のもと、グループ選択手段51は、グループを示すデータの選択によって1つのグループを選択する。
実際の運用においては、コンピュータ上で動作可能で、そのようなサービスを提供するいくつかの関数ライブラリの製品が既に提供されている。
本発明を実施するアプリケーションプログラムは、いくつかの特定のパラメータと共に、上記のようなライブラリによって提供される特別の関数を呼び出すことも可能である。そして、呼び出された関数が、要求されたグループを返す。
本実施例において、グループGは有限の巡回グループであり、そのグループGの位数はnである。また、位数nは正整数である。
有限の巡回グループGの候補は以下のものを含むが、これらに限定されるものではない。
(1)有限体Fq1における楕円曲線上の点からなるグループ
(2)有限体Fq2の乗法グループFq2、ただし、q2=pm1であり、m1は正整数、Pは素数
(3)Zn1のグループ、ただし、n1は合成整数
(4)Zn2の乗法グループ、ただし、n2は素数。
上記の4つの典型的な種類のグループにおいて、最初のグループは、最良のセキュリティパフォーマンスを有しており、一方、後の3つのグループは、当該技術分野において一般的に用いられている。
グループGの「有限の巡回」性が、グループ指数演算の結果がグループGへマッピングされることを示している。しかし、そのマッピング方法はグループ毎に変わってもよい。さらに、それは、ジェネレータ(生成子)が存在することを示している。
その後、部分グループ選択手段52は、m≦nである位数mのグループGの部分グループを選択する(ステップS61)。
位数mとして素数が選択される場合、好ましいセキュリティパフォーマンスが得られる。
グループG自身が部分グループとして選択される場合があることに留意する必要がる。これは、m=nの場合である。
他の実施例として、グループGが後に決定されるか又は選択されるという前提の場合には、部分グループの選択を省略することが可能である。それは、グループGが数学的にグループG自身の部分グループであるため、グループG自身が部分グループとして暗黙に選択されていることを意味する。
すなわち、グループG自身が部分グループとして選択されている場合(m=nとなる場合)、そのような選択は見かけ上実施されない。
もちろん、部分グループの選択を省略する場合には、図5に示す部分グループ選択手段52も省くことが可能である。
次いで、整数選択手段56は、秘密鍵xとしてxが1<|x|<mを満たすような整数を選択する(ステップS62)。
簡潔のため、ここでは、1つの秘密鍵から複数の公開鍵を生成する方法について主に説明するが、1つの端末装置が複数の秘密鍵を備えていることも考えられる。
その後、ジェネレータ選択手段53は、グループGのジェネレータgを選択して決定する(ステップS63)。グループGが有限の巡回グループである場合、常に少なくとも一つのジェネレータを有している。
ジェネレータgと秘密鍵xの選択は、互いに独立して行われることに留意する。
すなわち、ステップS62はステップS63より前に説明されているが、それらの処理の順序は反対でもよいし、あるいは、それらの処理が並行して行われてもよい。
G,m,x及びgの選択の後、整数rが、制御装置55の管理のもとで新しい公開鍵を生成するための、0<|r|<mを満たす指標として選択される(ステップS64)。
G,m,x,g及びrの選択と共に、新しい公開鍵が、y=gの演算、次に、y=y の演算によって生成される(ステップS65)。
その後、公開鍵(y, y)は、暗号化のために受信機に公開される(ステップS66)。
もちろん、公開鍵と一緒に公開される他の情報があってもよい。
g,x及びrの選択は、それらの選択において連続性や依存関係が要求されない点に留意する。すなわち、そのような選択のステップS62,S63,S64は任意の順番で、連続してあるいは同時に実行することが可能である。
なお、g,x及びrの選択は、任意にあるいは要求されるいくつかの基準に従ってなされてもよい。
他方、前述の手順のうちのいくつかは制御装置55によって省略され、どこか他所で実行されるかもしれない。
例えば、グループG及び部分グループの選択手順を、信頼ある組織である第三者に割り当てることもできる。
従って、グループ及び部分グループが外部的に決定されるので、制御装置55はグループ及び部分グループを選択する手順をスキップする。
さらに、1つの秘匿化された公開鍵が以前に生成されている場合、グループ、部分グループ、ジェネレータ及び秘密鍵の全てが既に選択及び決定されていることは確かである。
それゆえ、新しい公開鍵を生成することになっている場合、制御装置55は、これらの4ステップをスキップし、次のステップに直接進む。
又はyが元々グループGの範囲外にある場合、それらをグループGへマッピングしなければならない。そのマッピング方法は、異なるグループ毎に変わってもよい。
しかし、巡回グループGは、そのようなマッピング方法があることを示している。
前述の手順は、システムの単一の装置/モジュール(統合されたコンポーネントあるいは個別のコンポーネントを備えた)において、あるいはいくつかの手順を実行するシステムのそれぞれの装置に分散する方法で、それぞれ実行可能であることに留意する。
(グループ、部分グループ及びジェネレータの選択の例)
グループ、部分グループ及びジェネレータの選択例を、以下に示す。
グループZ が、p=11、よって、Z11 ={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}の条件のもとで選択されたと想定する。
「11」が素数であるので、数学上、Z11 の位数は11−1=10となる。
要素2は、Z11 ={2
mod11 / i=0, 1, ・・・, 9}であることを容易に確認できることから、Z11 のジェネレータである。
さらに、グループが部分グループそれ自身であるので、部分グループがZ11 として選択される。
部分グループの別の選択例は、例えば、位数5のジェネレータ3を持つ{1,3,4,5,9}である。
さらに、3=1
mod 11であることは容易に確認できる。
さらに、当該技術分野における当業者であれば分かるように、この装置及び構成要素の全ては、多様な考察に基づきハードウェア、ソフトウェア、ファームウェアあるいはそれらの組み合わせで実現できることができる。
(キー生成の最適化)
主として図6に示した典型的な法の例は、本発明による秘匿化された公開鍵を生成するために利用可能な多くの方法のうちのほんの1例である。
同じ目的に使用することができるだけでなく処理の最適化を達成することができるより進んだ方法がある。
最適化方法を説明するために、当該技術分野においてよく知られている符号化及び復号化する手順について、図4、図5及び図7を参照して簡潔に要約する。
ここで、以下の記号1で示す演算子はグループGの可逆演算子である。
Figure 2007089171
以下の記号2で示す演算子は、記号1で示す可逆演算子の正確な逆演算子である。
Figure 2007089171
本発明を図7中の手順で適用する。
プレーンテキストMを暗号化するために、プレーンテキストMがグループGの要素として最初に表す(例えば、MはASCIIコードとして表わされる)(ステップS80)。
次いで、整数kが、1<|k|<mを満たす指定子として選択され(ステップS81)、そして、1ペアの値が以下のように計算される(ステップS82)。
Figure 2007089171
ここで、CとCはグループGの要素である。
これらの演算処理の全ては図4に示す暗号化装置48によって実行することができる。
記号1による演算は、グループGの乗算、除算、加算あるいは減算となる。
又はCが元々グループGの範囲外にある場合、グループGへそれらをマッピングしなければならない。そのマッピング方法は、各グループ毎に異なっていてもよい。
この時、メッセージMの暗号文がC=(C1, C2)として得られ(ステップS83)、その暗号分が送信装置44によって通信チャネル上に送信される(ステップS83)。
符号化されるグループGの範囲外にあるメッセージMについては、符号化前にいくつかのグループ要素に変換される。
後の復号化に続いて、復元されたグループ要素はオリジナルメッセージへ戻されてもよい。
その変換方法は、各グループ毎に異なっていてもよい。
1例としては、メッセージをいくつかのブロック(それらの各々はグループGの要素である)に分解し、Mを復元するために全てのブロックを連結する。
通信チャネルの反対側で、暗号文メッセージCが受信される(ステップS84)。
暗号文CからプレーンテキストMを検索するために、2つの方法として、直接のべき数法かそうでないかを最初に決定する(ステップS85)。
べき数法の場合、rb=C が最初に計算され(ステップS86)、次に、以下の式による計算からMが求められる(ステップS87)。
Figure 2007089171
そうでなければ、ra=C −xが最初に計算され(ステップS88)、次に、以下の式による計算からMが求められる(ステップS89)。
Figure 2007089171
暗号文(C,C)の復号化に成功した後、復号化の実行に伴って、本発明による公開鍵生成装置49は、(y=C −1, y=ra)の書式で新しい秘匿化された公開鍵を生成するために解読中に出力される中間出力raのみならず受信した暗号文を用いてもよい。
同様に、公開鍵生成装置49は、(y=C, y=rb)の書式で新しい秘匿化された公開鍵を生成するために復号化途中で出力された中間出力rbのみならず受信した暗号文を用いてもよい。
新しい秘匿化された公開鍵を生成する上記いずれかの方法によって、べき数演算が回避され、また計算効率が向上する。
さらに、単一の秘匿化された公開鍵(y, y)が提供される場合、公開鍵生成装置49は、(y,y )の形式で新しい秘匿化された公開鍵を生成してもよい。
この方法は、一連の公開鍵を生成するために複数回用いることが可能である。
この方法では、公開鍵yの第2の部分が、次に続く公開鍵の最初の部分と同一であるので、生成された公開鍵による記憶容量の消費が非常に減少する。
一連のw個の公開鍵について、記憶容量が(w−1)/2wパーセントにセーブされるということは、十分に大きなwについて約50パーセントの節約を意味する。
本発明においては、公開鍵が、ジェネレータのべき数の形式に基づいて同一のジェネレータで生成されるので、べき数法の代わりに乗法を含む一連の公開鍵を生成するためにジェネレータgのべき数を再使用することができる。このようにして、記憶容量を節約し、計算を加速できる。
また、復号化装置において、ジェネレータのべき数のただ1つのテーブルを維持する必要があるだけなので、新しい公開鍵の計算をオフラインで行うことが可能である。
例えば、実施例において、暗号文メッセージC=(C1, C2)が復号化装置で受信される場合、新しい公開鍵を生成するためにCを検索して用いることができる。
上述したC=y =grkの場合、積“rk”が単なる他の整数であるので、grkを新しい公開鍵を生成するために保存することができる。
新しい公開鍵を生成するためにgrkを保存することができるが、暗号化されたメッセージを送る時、もしも符号化装置がkを明らかにしなかったならば、rkの値は復号化装置には依然知られていない可能性がある点に留意すべきである。
単一の秘匿化された公開鍵(y, y)が提供される場合、公開鍵生成装置49は、(y×y,y×y)の式から新しい秘匿化された公開鍵を生成してもよい。ここで、×はグループ乗算である。
一般に、y11=gr1, y12=gr2, ・・・, y1j=grj
及び y21=y11 , y22=y12 , ・・・, y2j=y1j である、複数の格納されたgのべき数に基づいていくつかの秘匿化された公開鍵(y11, y21),(y12, y22),・・・,(y1j, y2j), j≧2が提供される場合、新しい公開鍵が(y1(j+1)=y1112・・・y1j, y2(j+1)=y2122・・・y2j)として計算される。
ここで、上記 y1112・・・y1jは、y11, y12, ・・・、 y1jの積であり、y2122・・・y2jは、y21, y22, ・・・、 y2jの積である。
明らかに、新しい秘匿化された公開鍵を生成するために、べき数演算は、乗算に置き換えられ、計算効率が向上する。
乗法演算をオンラインで実行することができるので、このように生成された新しい公開鍵をあらかじめ計算する必要がなく、このことは直ちに記憶容量の節約を意味する。
上記の最適化技術は、新しい秘匿化された公開鍵を生成するために一緒に用いてもよい。
例えば、受信した上で、一連の暗号文(C11, C21),(C12, C22),・・・,(C1j, C2j)(ただし、j≧2)の復号化に成功した後、公開鍵生成装置49は、(y=(C11
12・・・C1j), y=(rbrb・・・rb))の式によって新しい秘匿化された公開鍵を生成するために解読中に出力される中間出力rb, rb, ・・・, rbのみならず受信した暗号文も用いることができる。
ここで、C1112・・・C1jはC11, C12, ・・・, C1jの積、rbrb・・・rbは、rb, rb,・・・, rbの積である。
また、yの計算で、一連の公開鍵は、(y w1, y w2)として計算される。ここで,w1=x, w2=x(w+1)
, w≧0である。
また、この計算において求められた結果(特にgのべき数)は全て、公開鍵をさらに生成するために用いられる。
さらに、暗号文メッセージCから検索されたCに基づいて、復号化装置はさらに多くの新しい公開鍵を生成することが可能である。
この目的のために、C 及びC −xを計算して保存され、次いで、2つの一連の公開鍵が生成される。
一般に、多くの暗号化されたメッセージCC=(C11、C12), CC=(C21、C22), ・・・, CC=(Cj1、Cj2)が受信された時、C の場合、一連の新しい公開鍵が、((C1121・・・Cj1u1
, (C1121・・・Cj1u2)として生成される。ここで、C1121・・・Cj1は、C11, C21, ・・・, Cj1, (j≧1, u1=x, u2=x(u+1), u≧0)の積である。また、C −xの場合、別の一連の新しい公開鍵が、((C1121・・・Cj1v1
, (C1121・・・Cj1v2)として生成される。ここで、C1121・・・Cj1は、C11, C21, ・・・, Cj1, (j≧1, v1=−x, v2=−x(v+1), v≧0)の積である。
さらに、この計算において求められた結果(特にgのべき数)は全て、公開鍵をさらに生成するために用いられる。
(順応性のある匿名証明書)
以下の記述で、本発明の一般的な概念を説明する。
APK手法は、前述の出願中の関連出願において説明しているように、多数の秘匿化された公開キーを証明する方法に関して問題を含んでいる。そのため、多数の秘匿化された公開キーを証明することができる解決法の提案が望まれている。
1.安全性。誰も証明書を偽造することができない。また、誰も証明書の保持者であることを隠すことができない。
2.確実性。ユーザーのプライバシーは、いかなる証明書によっても明かされない。
3.取り消し可能。ユーザーが匿名性を悪用する場合、ユーザーの本当の身元を暴露することができる。
4.信頼性。証明書は、ビジネスにおいても有効である。
5.分配できる。APKの分配方法のように、証明書解決法が分散させられるべきである。
6.効率的。第3者機関の経済的負担がより少ない。
上述したように、従来の証明方法は多くの欠点を有している。さらに、APKは分散型のプライバシー保護解決法であるので、集中型の証明解決法はAPK解決法に適していない。
従って、ユーザのデータを証明するための分散型解決法は、従来より提案されている、すなわち、柔軟性のある匿名証明書(MPC)解決法である。
本発明による柔軟性のある匿名証明書(MPC)解決方法は、多数の秘匿化された公開キーを証明する新規の解決方法である。全ての証明書が信頼できる実体によって生成され発行される従来の解決法と異なり、MPC解決法は、他人によってデータを証明する必要のあるユーザーが、自分自身で信頼できる実体から取得したルート証明から匿名証明書を生成する分散型解決法である。
ルート証明は、ユーザーが匿名証明書を生成するために信頼できる実体によって発行された証明書でもよい。以下、そのような証明書をルート証明と称する。ルート証明は、またグループ秘密鍵でもよい。ユーザーはそのグループ秘密鍵によってグループ・メンバーの名のもとに匿名証明書を生成することが可能である。しかし、ルート証明は、それらに限定されない。ルート証明は、ユーザの信用を証明することができる任意のデータでも良いし、また、所定のアルゴリズムによって生成される匿名証明書でもよい。
図8Aは、本発明のMPC解決法の全体的な概念を示す概略ブロック図である。
ユーザUは、ネットワークを介して他のユーザと通信する、ネットワーク中のユーザである。通信セションの間、ユーザUのデータのうちのいくつかは他のユーザ或いは仲間によって証明されることを必要とされる。例えば、ユーザUのデータDATA1はユーザV1によって証明され、ユーザUのデータDATA2はユーザV2によって証明され、ユーザUのデータDATA3はユーザV3によって証明されることになっている。以下、信用を得るためにユーザUのデータを証明することを望むユーザ或いは仲間を立証者と称する。
DATA1、DATA2及びDATA3は、様々な通信セッションのためのユーザの種々の公開鍵である。1つの実例では、これらのデータは唯一の公開鍵或いはAPKである。しかし、データは公開鍵に限定されない。証明されるデータは、様々な目的のためのどんなデータでもよい。
データを認証するために、ユーザUは、立証者(V1、V2、V3等)へデータを送る。ここで、データは、PC1、PC2、PC3等の証明書を有している。MPC解決方法では、これらの全ての証明書は、信用された主体からユーザUに発行されたルート証明から生成される。これらの証明書(PC1、PC2、PC3等)が信用された主体の介在無しでユーザU自身によって計算されることが重要である。立証者は、そのような添付された証明書によってユーザUのデータを照合する。また、信用された主体によって照合された証明書はデータを保証することが可能である。立証者が信用された主体を信用するならば、立証者は、ユーザUのデータが真正なことを信じることができる。
信用ある主体は、Uの信用を証明することができるCA、信用あるグループ、Uの友人あるいは他の関係者などである。
本発明によるMPC解決方法において、立証者は、Uのデータが信用ある主体によって証明されているという証明書によって照合し確信を得ることができる。一方、その証明書は、立証者が決してユーザのデータの保持者であるユーザUの本当の身元を明かさないようユーザによって生成される。従って、ユーザによって生成された証明書を、以下匿名証明書と称する。
ユーザデータがAPKである場合、APKの各ペアと匿名の証明書が立証者(例えばV1)に示される。V1はAPKが信用された主体によって証明されていることを検査し確信を得ることができる一方、V1は決してAPKと匿名証明書のペアの保持者を明かさない。匿名の公開鍵と匿名証明書の別のペアを示す度に、ユーザがV1と何度も通信しても、V1は自分がユーザと話しているかどうかを知らせることはできない。
図8Bは、本発明によるMPC解決方の一般的な検証プロセスを概略的に示すフローチャートである。
ステップ81において、ユーザが信用ある主体からルート証明を取得する。例えば、ユーザは、自身の基本的なデータ(以下、ルート・データと称する)とそのデータに対するユーザの証明をCAに示す。CAは、ユーザのルート・データとルート・データのユーザ証明の識別検査を実行する。ユーザがCAの識別検査にパスした後、CAはユーザに対する証明書を発行する。
ステップ82において、ユーザは、ルート証明からの匿名証明書を生成する。同じルート証明から、ユーザは複数の別個の匿名証明書を生成することが可能である。
ステップ83において、ユーザは、1の匿名証明書を有するユーザのデータを立証者に送信する。
ステップ84において、立証者が匿名証明書によってユーザのデータを検査する。
データが、信用のある主体によって証明された匿名証明書によって証明されるので、立証者が信用のある主体を信じる場合、立証者は、ユーザのデータが信用できるという確信を抱くことができる。その後、立証者は前記データに基づいて安全にユーザと通信することができる。例えば、ユーザのデータが匿名の公開鍵である場合、ユーザは自身のメッセージにデジタル的に署名してもよいし、立証者はユーザ自身の匿名の公開鍵に基づいてユーザのためのメッセージを全て暗号化してもよい。しかしながら、ユーザのデータは、ユーザの匿名の公開鍵に制限されない。例えば、それはユーザの唯一無比の公開鍵でもよい。
図8Aと図8Bから分かるように、データが信用のある主体によって証明される匿名証明書によって保証される場合、ユーザは信頼できるデータを生成することが可能である。ユーザ・プライバシ保護の機能は完全に施される。
ユーザは、自身による別個の匿名証明書だけでなく別個の匿名の公開鍵も生成する。信用のある主体は、ユーザのルート・データのためのルート証明をただ発行するだけである。例えば、CAは、ユーザ自身のルート公開鍵のために、ユーザに対してルート証明書(RC)を発行する。証明書機関(CA)の介在は最小限である。よって、CAの負荷の軽減化を実現することが可能である。
さらに、本発明によるMPC方式では、信用ある主体は、匿名証明書が信用ある主体で追跡可能なように、ユーザのルート証明を格納することができる、
ユーザUが不適切に振る舞う場合(例えば、ユーザがメッセージにデジタル署名した後で、それを否認するような場合)、被害者は信用ある主体にユーザUの匿名証明書を送信することが可能である。それは、信用ある主体だけが、匿名証明書の真の保持者を解明する能力を持っているためである。
具体的な例について説明する。ユーザUは対の匿名の公開鍵および匿名証明書を生成するものとする。その後、ユーザは立証者V1と通信し、鍵と証明書を明示する。匿名証明書に基づいて、立証者V1は、匿名の公開鍵が信用ある主体によって本当に証明されていることを確認する。従って、ユーザUが立証者V1に50ドル支払うことに署名すると、立証者V1は、自身が著わした電子本(e-book)をユーザUに送る。立証者V1はただ匿名の公開鍵及び匿名証明書を確認するだけなので、立証者は、買い手の本当の身元を知らない。しかしながら、ユーザUが支払をせずに逃げるならば、立証者V1は、匿名証明書の本当の保持者を暴くことができる信用ある主体に匿名証明書を送ることが可能である。この場合、保持者Uは結果的にペナルティーを受けることになる。このように、ユーザはシステムの匿名性を乱用するのは不可能である。
(第1の実施の形態)
以下、本発明による第1の実施の形態について図9〜図18を参照して説明する。
図9は、本発明の第1の実施の形態によるシステム構成を概略的に示すブロック図である。
第1の実施の形態によれば、信用された主体は証明書機関CA(Certificate Authority CA)である。立証者によって証明されるユーザUのデータはユーザUの匿名の公開鍵である。
もし、Uが個人識別検査に合格すれば、CAはUに対してルート証明書(RC)を発行する。Uは、自身の匿名の公開鍵のためにルート証明書から匿名証明書を生成する。その後、Uは、立証者V(V1、V2(V3)...)に対して、匿名証明書(PC1、PC2(PC3)...)を持つ匿名の公開鍵(APK1、APK2(APK3)...)を送信する。Vは、Uから受信した匿名証明書を証明し、予め定義した条件が満たされる場合、その証明書を受け入れる。
第1の実施の形態では、Uは、CAの介在無しにRCからある匿名の公開鍵のための匿名証明書を引き出すことが可能である。一方、Vは、同様にCAを含むことを必要としない匿名証明書に基づいてUの真正なことを判断することが可能である。
さらに、Vは、Uから集められたデータを格納する。また、ある状況の下で(例えば、Uが不法に振舞う)、Vは、Uから集めたデータをCAに提出することができ、また、CAは、Uの実際の身元を明かすことができる。
以下の説明においては、暗号化技術はStrong RSA (SRSA) Assumptionに基づいている。SRSAの詳細に関しては、「N. Baric´, B. Pfitzmann, Collision-free
Accumulators and Fail-stop Signature Schemes without Trees, Advances in
Cryptology-EUROCRYPT’97, pp. 480~494, 1997; and R. Cramer, V. Shoup, Signature Schemes Based on The Strong RSA
Assumption, ACM Transactions on Information and System Security, vol. 3(3):
161~185, 2000」を参照することができる。
さらに、いくつかの証明方法が本発明の実施の形態において使用される。それらは、証明者が、ある値の知識に関して立証者を納得させることを可能にする。一方、値自体に関する有用な情報は漏らされない。
本発明による第1の実施の形態では、いわゆる知識証明技術が使用される(「S. Goldwasser, S. Micali, C. Rackoff, The Knowledge Complexity of Interactive Proof Systems, 17th
ACM Symposium on Theory of Computation, pp. 291~304, 1985」を参照)。ゼロ知識(zero-knowledge)中の離散対数について知識を証明するために多くの方法が提案されている(「A. Fiat, A. Shamir, How To
Prove Yourself: Practical Solutions to Identification and Signature Problems,
Advances in Cryptology - CRYPTO’86,
pp. 186~194, 1986; D. Chaum, Demonstrating
Possession of a Discrete Logarithm without Revealing It, Advances in
Cryptology - CRYPTO’86, pp. 200~212, 1987; D. Chaum, J. H. Evertse, J. van de
Graaf, An Improved Protocol for
Demonstrating Possession of Discrete Logarithms and Some Generalizations,
Advances in Cryptology - EUROCRYPTO’87, pp. 127~141, 1987; D. Chaum, T. P.
Pedersen, Wallet Databases with Observers,
Advances in Cryptology - CRYPTO’92, pp. 89~105, 1993; and K. Sako, J. Kilian, Receipt-Free Mix-Type Voting Scheme-A
Practical Solution to the Implementation of a Voting Booth, Advances in
Cryptology - CRYPTO’98, pp. 393~403, 1998」を参照)。
本発明による第1の実施の形態において、

Figure 2007089171


式(1)は、共通の入力(g,y)について、証明者と立証者の間の知識証明を示すために使用される。ここで、gが〈g〉,j=1,・・・,iを生成し、全てのj=1,・・・,iについて、

Figure 2007089171
=g

で、a<x<bが成り立つようにxについての知識を証明する。

<x<bを証明する手法が、「T. Okamoto, An Efficient Divisible Electronic Cash
Scheme, Advances in Cryptology - CRYPTO’95, pp. 438~451, 1995, and later on
developed in A. Chan, Y. Frankel, Y. Tsiounis, Easy Come - Easy Go Divisible Cash, Advances in Cryptology -
EUROCRYPT’98, pp. 561~575, 1998, in which it has been given the name the Range
Bounded Commitment (RBC)」に記載されている。
乗法表現のための証明の場合に上述の式(1)を一般化することが可能である。

Figure 2007089171


例えば、式(2)は、もし、a<x<bであれば、

Figure 2007089171




Figure 2007089171


が同時に成り立つような、xとxのゼロ知識証明を表す。

次に、本発明の第1の実施の形態による方法の詳細を、図10〜16を参照して説明する。
この第1の実施の形態による方法は、主として5つの工程からなる。すなわち、システムスタートアップ、RCリクエスト、MPC導出、秘匿の認証及び追跡(必要ならば)である。
図10は、本実施の形態によるシステムスタートアップ工程におけるCA初期化処理の例を示すフローチャートである。
ステップ101において、CAはSRSA係数nを生成する。係数nの因数分解は秘密に保たれる。
ステップ102において、CAは、p−1がちょうどqで割り切れるような素数p及びqを生成する。
ステップ103において、CAは、整数l=|q|(すなわち、qの大きさ)を計算する。
ステップ104において、CAは、Z からGF(q)(オーダーqの有限体)の1つのジェネレータgを選択する。
ステップ105において、CAはQR(n)から整数c、cおよびcを選択する。
ステップ106において、CAは整数l<lを選択する。
上述の数学的な概念は、参考文献としての、A. Menezes, P. van Oorschot, S. Vanstone, Handbook of Applied
Cryptography, CRC Press, 1996 に記述されている。最後に、ステップ107において、CAは、n,p,q,g,l,c,c,c及びlをネットワーク(例えばインターネット)上に発行する。
図11は、本実施の形態によるシステムスタートアップ工程におけるユーザ初期化処理の例を示すフローチャートである。
CAによって発行されたシステムパラメタに従って、ユーザUは、ステップ111においてそれ自身の秘密鍵
Figure 2007089171


をランダムに選択する。
ステップ112において、ユーザUは、自身のルート公開鍵

Figure 2007089171


を計算する。
RCを得るために、Uは、CAへ自身の身元を立証する必要があると共に、CAはyが公開鍵として他のいずれかのユーザによって使用されていないことを確かめなければならない。
図12は、本実施の形態によるRCリクエスト処理の例を示すフローチャートである。
ステップ121において、ユーザUが

Figure 2007089171

を計算する。
ステップ122において、ユーザUがCAにその人のルート公開鍵(g,y)およびaを実行依頼する。
ステップ123において、ユーザUおよびCAが以下の式により知識証明を実行する。


Figure 2007089171

知識証明が成功した場合、ステップ124において、CAは十分に大きい任意の素数

Figure 2007089171


を選択し、eが他のユーザに割り当てられていないことを確かめて、

Figure 2007089171

を計算する。
ステップ125においては、CAが、RCとして(g,y)に対する(e,s)をユーザUに発行する。
ステップ126において、CAは、可能な調査のために、ユーザUの名前の元でデータベースにデマスキングeを格納する。
ステップ127において、ユーザUが、合同式

Figure 2007089171


が成り立つことを証明する。
前記RCは2つの組(e,s)である。ここで、eは実際はRSA公開鍵で、sがc/aのデジタル署名である。
しかしながら、次の段階の中で実証されるように、単一の署名の準備に際して、Uは、自身の全ての匿名の公開鍵のための証明書を効果的に得ることが可能である。RCは、表現形式(g,y )に従って匿名の公開鍵全てに署名するデジタル署名である。
図13は、本実施の形態においてユーザUがどのように匿名の公開鍵を生成するかを示すフローチャートである。また、図14は、本実施の形態において匿名の公開鍵用のRCからユーザUがどのように匿名証明書を得るかかを示すフローチャートである。匿名の公開鍵および匿名証明書はともにプライバシ保護及び匿名の真正なことを保証する。
図13に示すように、ステップ131において、ユーザUは、{0,1,・・・,2−1}から整数rを選択し、ステップ132において、匿名の公開鍵(g,y )(mod p)を算出する。
図14に示すように、ステップ141において、ユーザUは、{0,1,・・・,q−1}から整数tを選択し、ステップ142において、

Figure 2007089171



Figure 2007089171


を算出する。
匿名証明書は実際に2つの組

Figure 2007089171

である。
いま、Uは、

Figure 2007089171


を有している。ここで、e,xおよび-tラeについての知識は次の段階において立証者に証明される。
匿名の公開鍵および匿名証明書の準備の後、Uは立証者へそれらを提示することが可能である。
図15は、本実施の形態による匿名認証処理の例を示すフローチャートである。
ステップ151において、ユーザUが立証者Vに匿名の公開鍵(y1r=g,y2r=y )および匿名証明書

Figure 2007089171


を送る。
ステップ152において、Vが

Figure 2007089171


を計算する。
ステップ153において、ユーザUおよび立証者Vが以下ように知識証明を実行する。
Figure 2007089171

ステップ154において、Vが、可能な追跡のために上記の知識証明の記録を格納する。
図12のステップ126においてCAがユーザUの名前でデータベースにデマスキングeを格納するので、CAは検査能力を有する。
Vが保証されたCA CMSとしてUの匿名の公開鍵を受け入れて、Uを含めた処理を行なった後、Uが不適切に振る舞う場合、VはCAにUの不適切行動を示す証拠を供給し、支援をCAに求めることが可能である。CAは、Vから受け取られた証拠を明確に検査する。CAの視点から、VがUの本当の身元を知る十分な理由があれば、CAはUの本当の身元を確認するたねにVに協力することが可能である。
図16は、本実施の形態による調査処理を示すフローチャートである。
ステップ161において、VがCAに匿名証明書

Figure 2007089171

を送る。
ステップ162においては、データベースに格納された全てのデマスキングeについて、CAが

Figure 2007089171


を計算し、その結果を


Figure 2007089171

と比較する。
Figure 2007089171

および

Figure 2007089171


の一致は、匿名証明書

Figure 2007089171

の所有者のデマスキング値を明らかにする。このように、CAは、Uの本当の身元を見いだして明らかにすることが可能である。
次に、ユーザ側およびCA側における代表的な装置について図17と図18を参照して説明する。
図17は、第1の実施の形態によるユーザの代表的な装置170を示すブロック図である。
図17に示すように、ユーザ装置170は、基本的に、CAからRCを受け取るためのルート証明ユニット171、RCに基づいて匿名証明書の生成のためにルート証明ユニット171に接続される匿名証明書生成ユニット172、匿名証明書を有するユーザのデータを送信するための匿名証明書生成ユニット172に接続された送信ユニット173を備えている。
ルート証明書がネットワークを介してディジタル・リクエストによって要求される場合、ユーザ装置170は、さらに、RCの要請を生成しCAに要求を送信するためのルート証明要求ユニット174を備えることができる。
立証者によって証明されるユーザのデータは、公開鍵、唯一の公開鍵、匿名の公開鍵等であってもよい。匿名の公開鍵である場合には、ユーザ装置170が、匿名の公開鍵の生成のための匿名公開鍵生成ユニット175をさらに備えることが可能である。匿名公開鍵生成ユニット175の詳細については、上述したAPK手法の記述から理解することができる。匿名証明書によって証明されるユーザのデータが匿名の公開鍵でない場合、匿名公開鍵生成ユニット175は対応するデータ生成ユニットと置き換えることが可能である。
RCの発行がユーザとCAの間の検証プロセスを要求するか、または立証者が認証プロセスにおける知識証明を要求する場合、ユーザ装置170は、さらに、立証者あるいはCAと共に検証動作を実行するための検証ユニット176を備えることも可能である。
上述した各ユニットは、それぞれのユニットによって使用されるデータを格納のためのメモリを備える。別の実施例では、ユーザ装置170は、装置の動作中に全てのユニットによって使用されるデータを格納のために記憶装置177を備えることも可能である。
多くの場合、ユーザはさらに他のユーザの受信データを証明する必要がある。従って、ユーザ装置170は、添附された匿名証明書によってもう一人のユーザから受信したデータを証明するための証明ユニット178を備えることも可能である。
ルート証明ユニット171、送信ユニット173、ルート証明要求ユニット174、検証ユニット176及び証明ユニット178は、ネットワークを介して他の装置と通信するために上記各ユニットと接続されるユーザ装置170内の通信ポート或いは通信ユニットを介してネットワークにデータを送信し、或いはネットワークからデータを受信する。
本発明の第1の実施の形態による処理を実行するため、上記各ユニットは互いに接続されている。ユニットがハードウェアモジュールとして実装される場合、それらはデータバスによって互いに接続される。
図18は、第1の実施の形態による代表的なCA装置180を示すブロック図である。
図18に示すように、CA装置180は、基本的に、システムパラメータを計算するためのシステムパラメータ計算ユニット181、ネットワークの全てのユーザによって共有されるパラメータを発行するためにシステムパラメータ計算ユニット181に接続されるパラメータ発行ユニット182、ユーザからRCリクエストを受信するためにネットワークに接続されるルート証明要求受信ユニット183、ルート証明リクエストに応じてユーザのためのRCを生成するために、ルート証明要求受信ユニット183及びシステムパラメータ計算ユニット181に接続されるルート証明生成ユニット184を備えている。
ルート証明書が発行される前に、ユーザのRCリクエストが検査される場合、CA装置180は、ユーザのRCリクエストに応じて識別検査を行なうために、ルート証明要求受信ユニット183に接続された検査ユニット185をさらに含む。識別検査は、上述した知識証明処理を含んでいる。
検査能力が要求される場合、CA装置は、ルート証明生成ユニット184によって生成されたルート証明書の格納されたデマスキング値を使用することにより、立証者から受信した匿名証明書の所有者の身元の調査のための、ネットワークに接続された検査ユニット186をさらに備えることができる。
上述した各ユニットは、それぞれのユニットによって使用されるデータを格納のためのメモリを備える。別の実施例では、CA装置180は、装置の動作中に全てのユニットによって使用されるデータを格納のために記憶装置187を備えることも可能である。例えば、ルート証明生成ユニット184によって生成されたRCは、ルート証明生成ユニット184内部のメモリに格納するか、あるいは記憶装置187に格納することが可能である。
本発明の第1の実施の形態による処理を実行するため、上記各ユニットは互いに接続されている。ユニットがハードウェアモジュールとして実装される場合、それらはデータバスによって互いに接続される。
パラメータ発行ユニット182及びルート証明要求受信ユニット183は、ネットワークを介して他の装置と通信するために、上記各ユニットと接続されるCA装置180内の通信ポート或いは通信ユニットを介してネットワークにデータを送信し、或いはネットワークからデータを受信する。
上記説明したユーザ装置及びCA装置は単なる一例である。しかしながら、装置に含まれた構成装置は、上述したユニットに限定されず、その詳細な構成は修正又は変更することが可能である。例えば、装置は、ネットワーク中の計算する装置に一般的に実装される他のユニットを含むことができる。例えば、データを入出力するためのI/Oインタフェース、ネットワークを介して他の装置に接続するための種々の通信インタフェース、各ユニットの動作を制御するためのコントローラなどである。そのようなユニットについては、この技術分野において一般的であるので図示は省略する。また、当業者によれば上述した装置にそれらのユニットを加えることは容易に考え付くことである。
上記のように本発明の第1の実施の形態について説明したが、本発明は、第1の実施の形態に記述された内容に限定されない。例えば、ユーザの公開鍵については他の方法によって生成することが可能である。唯一無比の公開鍵(「B. R. Waters, E. W. Felten, A. Sahai, Receiver Anonymity via Incomparable Public Keys, CCS’03,
Washington, DC, USA, pp.112~121, 2003」を参照)は、匿名証明書によって証明されるユーザのデータとして使用することが可能である。また、匿名証明書によって保証されるユーザのデータは、公開鍵に限定されず、ユーザによって送られた任意のデータあるいはメッセージでもよい。さらに、実施の形態は、CAの他の証明技術及び方法に適合させるために修正することが可能である。図14に示されたアルゴリズムに加えて、アルゴリズムが、匿名証明書がRCと同様に立証可能な証明性あるいは秘密性を維持し、同時に、立証者に前記データの所有者の身元に関する情報を分からなくすることを保証する限り、他のアルゴリズムをRCからの匿名証明書を計算するために使用することが可能である。第1の実施の形態は、ルート公開鍵が(g,y)である場合について説明した。しかし、ルート公開鍵は匿名の公開鍵(g,y )のうちの任意の1つでもよい。
(第2の実施の形態)
以下、本発明の第2の実施の形態を図19、図20を参照して説明する。
本発明の第2の実施の形態は、公開鍵用の匿名証明書を生成するためにグループ署名方式を採用する。ここで、公開鍵は、唯一の公開鍵、匿名の公開鍵或いはユーザの他の公開鍵等であってもよい。
グループ署名方式は、過去15年の間にかなり研究されている(「D. Chaum, E. van Heyst, Group
Signatures, Advances in Cryptology - EUROCRYPTO’91, pp. 257~265, 1991; J.
Camenisch, M. Michels, A Group Signature
Scheme Based on an RSA-Variant, Advances in Cryptology - ASIACRYPT’98, pp.
160~174, 1998; and G. Ateniese, J. Camenisch, M. Joye, G. Tsudik, A Practical and Provably Secure
Coalition-Resistant Group Signature Scheme, Advances in Cryptology - CRYPTO’2000,
pp. 255~270, 2000, which are incorporated as references」を参照)。簡単に説明すると、グループをセット・アップし、グループ・メンバーの承認および取消しを扱うグループ管理者が存在する。全てのグループ・メンバーは同一のグループ公開鍵PKgを共有するが、各メンバーUはそれぞれ異なる秘密鍵SKを有している。メッセージmが与えられると、グループ・メンバーUはs=SIG(m,PKg,SK)としてグループを代表してメッセージに署名することが可能である。ここで、SIG(ラ)は特有のグループ署名アルゴリズムである。メッセージmについての署名sは、グループ公開鍵PKgによって照合される。すなわち、与えられたPKg,s及びmについて、もしs=SIG(m,PKg,SK)である場合だけ有効であることを出力する署名照合アルゴリズムVERIF(ラ)(=VERIF(s,m,PKg))が存在する。しかしながら、立証者がsの署名者Uを決定するのは非常に困難である。立証者の観点からすると、いかなるグループ・メンバーも、sの署名者であることについて同じ確率を有している。この特徴が「グループ署名」の名称の始まりである。
いくつかのグループ署名方式は、グループ管理者がsの署名者Uを決定することができる権限を提供する。すなわち、与えられたPKg,s及びSKmについて、もしs=SIG(m,PKg,SK)である場合だけUを出力する署名照合アルゴリズムTRACE(ラ)(=VERIF(s,m,PKg))が存在する。ここで、SKmはグループ管理者の秘密鍵である。
図19は、本発明の第2の実施の形態のシステム構成の概略を示すブロック図である。
第2の実施の形態によれば、信用された主体はグループ管理者Mによって組み立てられたグループ190である。ユーザUはグループのメンバーであり、自身に割り当てられたグループ秘密鍵を所有する。従来のグループ署名機構では、メッセージがグループを代表して署名される。しかしながら、本発明の第2の実施の形態では、グループ署名は公開鍵の匿名証明書を生成するために使用される。
図20は、第2の実施の形態による、匿名証明方法を示すフローチャートである。
初期化段階201において、グループ管理者はグループを組み立てて、グループ公開鍵PKgを発行する。さらに、グループ管理者は、不適切な振る舞いのユーザを調査する際に利用される秘密鍵SKmを秘密に保持する。
ステップ202において、グループ・メンバーUがグループに加わり、このグループ用の自身のグループ秘密鍵SKを取得する。
ステップ203において、Uが匿名の公開鍵apk=(g,y )(mod p)を計算する。
ステップ204において、Uが1つのメッセージとしてapkを取得し、s=SIG(apk,PKg,SK)として匿名の公開鍵apkにデジタル署名する。
上記のように、sがapkについてのグループ署名であることは明らかである。
ステップ205において、Uが確認用に立証者にsとapkを送る。また、立証者は、ステップ206において、ユーザの匿名公開鍵を証明する。
VERIF(s,apk,PKg)が有効な応答を出力するので、apkは、匿名のグループ・メンバーによってデジタル署名されるよう立証者に受け入れられる。したがって、sは、匿名のグループ・メンバーが匿名の公開鍵apkを所有することを保証する。すなわち、sは匿名の公開鍵apkについての匿名証明書である。
本発明による第2の実施の形態において、ルート証明がユーザのグループ秘密鍵であることは言うまでも無い。
調査が必要な場合、sはグループ管理者Mに提示される。その結果、調査アルゴリズムTRACE(s,PKg,SKm)がUを出力するので、グループ管理者はUの身元を決定し明かすことが可能である。
上記の例において、ユーザのデータは匿名の公開鍵である。しかしながら、ユーザのデータは、唯一の公開鍵或いはユーザの他の公開鍵のような、ユーザの他のデータであってもよい。
本発明による第2の実施の形態のユーザ装置は、図17に示した装置170と共通である。
第2の実施の形態においては、ルート証明ユニットはグループ管理者からユーザのグループ秘密鍵を受け取る。匿名証明書生成ユニットはグループ署名によって匿名証明書を生成する。また、送信ユニットは、ネットワークに対して匿名証明書を備えるユーザのデータを送信する。第2の実施の形態のルート証明要求ユニットは、グループメンバーシップの要求を生成し、その要求をグループ管理者に送信するために使用される。
上述したように、グループ署名証明アルゴリズムを通して、立証者はユーザのデータがグループ・メンバーによって証明されると確認することが可能である。しかしながら、多くの場合、立証者は、グループ・メンバーの名のもとに署名されたデータを送るユーザがデータの真の所有者か、そのデータに署名する本当のメンバーかどうかを確認する必要がある。
図21は、ユーザが従来のグループ署名機構を有するグループに属していることを立証者へ証明する処理を示す図である。
図21に示すように、最初に、立証者は呼掛けメッセージを生成し(ステップ211)、証明者にそれを送る。
立証者から呼掛けメッセージを受け取ると、証明者は、自身のグループ秘密鍵を使用することにより呼掛けメッセージに署名し(ステップ212)、立証者へ生成されたグループ署名を送る。
その後、立証者は、グループ公開鍵と一緒に証明者から受け取られたデータについてグループ署名照合を行なう(ステップ213)。正確な照合は、証明者がグループ内に属することを立証者に確信させる。
従来のグループ署名機構では、証明者が立証者によって生成された呼掛けメッセージに応答し、オンライン上で呼掛けメッセージ用のグループ署名を計算することに注意する必要がある。グループ署名のそのようなオンライン計算は時間を要しかつコスト高である。さらに、証明者が立証者と数回連絡をとる場合、立証者は毎回新しい呼掛けメッセージを生成し、かつ証明者は数個のグループ署名を計算しなければならない。
本発明による第2の実施の形態の解決方法は、匿名証明書及びユーザのデータ(つまり、ユーザ自身の公開鍵)の妥当性を認証するのにより便利であり、かつ効率的である。
図22は、本発明による第2の実施の形態の解決法によって匿名証明書及び公開鍵の妥当化を検査する処理を示す図である。
図22に示すように、証明者は、グループ署名を前もって生成するために、自身のグループ秘密鍵を使用することにより公開鍵に署名する(ステップ221)。
証明者が立証者と連絡をとりたい場合、証明者は、生成された匿名証明書(つまりその公開鍵に対応するグループ署名)と共に公開鍵を立証者へ送る。
証明者から公開鍵および匿名証明書を受け取ると、立証者は、ユーザのデータについて匿名証明書及びグループ公開鍵によるグループ署名照合を行なう(ステップ222)。正確な照合は、公開鍵がグループ・メンバーによって署名されてることを立証者に確信させる。立証者が、ユーザがその公開鍵に署名する正当なグループ・メンバーであるかどうかを知りたい場合、立証者は公開鍵に関する知識を証明してくれるように証明者に依頼することができる。ステップ223および224において、知識証明が公開鍵に対して保持される。詳細な検証処理は、図15において示される処理と同様である。証明者が公開鍵に対応する秘密鍵についての知識を立証者に証明する場合、立証者は証明者を信頼するはずである。
本発明による上述した方法では、匿名証明書が、立証者の呼掛けに応じてオンライン上で計算されるのではなく、予め計算されることが明らかである。すなわち、証明者は、証明者側の計算装置が空いた時間にグループ署名を算出することが可能である。立証者と連絡をとる前に、公開鍵だけでなく複数の匿名証明書も既に利用可能である。立証者と連絡をとる場合、証明者は匿名証明書と一緒に公開鍵を立証者へ送る必要があるだけである。立証者は、匿名証明書の有効性をチェックする。その後、証明者は、立証者に公開鍵に対応する秘密鍵についての知識だけを証明する。この証明は、グループ署名の署名より非常に効率的である。
図23は、本発明による第2の実施の形態の解決法によって匿名証明書及び公開鍵の妥当性を証明する他の処理を示す図形である。
立証者が正確に検査された公開鍵を格納していると仮定する。立証者が証明者から匿名証明書と一緒に公開鍵を受け取ると(ステップ231)、立証者は受信した公開鍵を正確に検査され格納された公開鍵と比較する(ステップ232)。受信した公開鍵が格納された公開鍵のうちの1つと一致する場合、立証者は、公開鍵に関する知識証明に直接進むことが可能である(ステップ235)。一致した公開鍵がない場合、立証者は受信した公開鍵について公開鍵及びグループ公開鍵の匿名証明書によるグループ署名照合を行なう(ステップ233)。受信した匿名証明書がグループ署名照合をパスした場合、立証者は、正確に検査された公開鍵として受信した公開鍵を格納する(ステップ234)。次に、処理はステップ235に進む。グループ署名照合をパスしない場合、処理は終了する。
証明者が同じ匿名証明書で立証者に複数回連絡をとることを決定した場合、立証者は最初に匿名証明書の有効性をチェックする必要がある。次のセションにおいて、立証者は、証明者から受け取った公開鍵をローカルに貯えられた公開鍵と照合する。一致するものがあれば、立証者と証明者は公開鍵に関する知識証明に直接進むことが可能である。この種の利用法はとても効率的であり、かつ匿名及び信用が全て維持されている。
図24は、本発明による第2の実施の形態の証明ユニットの例を示すブロック図である。証明ユニット240は、立証者の計算装置に設置されるか、あるいは図17に示した証明ユニット178としてユーザ装置に設置される。
証明ユニット240は、グループ署名及び公開鍵についての照合を行なうために照合モジュール245を備える。照合モジュール245は、グループ署名照合部241及び公開鍵知識照合部242に分割されている。証明者からのグループ署名と対になった公開鍵を受け取った時、照合モジュール245は、受信した公開鍵及びグループ公開鍵を使用することにより、グループ署名照合部241でグループ署名を照合する。証明者から受け取った公開鍵がグループ署名照合部241によって正確に照合された後、公開鍵知識照合部242はグループ署名と共に受け取った公開鍵に関する証明者について知識証明を実行する。
証明ユニット240は、照合モジュール245に接続されたメモリ243と、照合モジュール245及びメモリ243に接続された比較モジュール244をさらに備える。メモリ243は、予め正確に検査された公開鍵を格納する。証明者から公開鍵及びグループ署名を受け取った場合、比較モジュール244は、受信した公開鍵をメモリ243に格納された公開鍵と比較し、比較の結果を照合モジュール245に通知する。受信した公開鍵が予め正確に検査された公開鍵のうちの1つと同じである場合、照合モジュール245は、グループ署名照合アルゴリズムの計算をスキップし、公開鍵知識照合部242によって、証明者についてグループ署名と共に受け取られた公開鍵に関する知識証明を実行する。受信した公開鍵が格納された公開鍵のうちの1つと一致しない場合、照合モジュール245は、グループ署名照合部241によって上述したようなグループ署名照合アルゴリズムの計算を実行する。
本発明によれば、信用された主体がCAである場合、証明書と公開鍵についての照合は同様の方法で実行することが可能である。図15を参照すると、匿名の公開鍵及び匿名証明書がユーザによって計算された後、匿名の公開鍵は、備えられた匿名証明書と共に立証者へ送られる(ステップ151)。その後、立証者は、匿名証明書及び匿名の公開鍵を検査するためにユーザについて知識証明を実行する(ステップ153)。ステップ153に示されるように、本発明では、匿名証明書及び匿名の公開鍵を一回の知識証明で一緒に検査することが可能である。1つの実施例では、ユーザはオフラインの方法で匿名の公開鍵、匿名証明書、及び知識証明に必要なデータを計算する。そのようなデータを受け取った後に、立証者はローカルの計算を通じて匿名証明書及び公開鍵を検査することが可能である。他の実施例では、立証者は、常時正確に検査される公開鍵を格納する。ユーザによって送信された証明書と公開鍵を検査する度に、立証者は、まずユーザの公開鍵を格納されたものと比較する。一致が得られる場合、それは公開鍵が正確に検査されるものであることを意味する。ユーザについての知識証明中に、立証者は、証明書に関する知識証明の計算をバイパスすると思われる。ユーザについての公開鍵に関する証明だけが必要である。従来の解決方法における証明書と公開鍵のオンライン照合と順次進行型の照合と比較して、本発明による上述した照合はより効率的である。
信用された主体がCAである場合、立証者の装置中の証明ユニットはさらに照合モジュールを含む。1つの実施例によれば、証明ユニットは、例えば、図15のステップ153に示されるような知識証明を実行する。他の実施例では、証明ユニットは、さらに、照合モジュールに接続されるメモリと、照合モジュール及びメモリに接続される比較モジュールを備えることが可能である。
そのメモリは、正確に検査された公開鍵を格納する。証明者から証明書と公開鍵を受け取ると、比較モジュールは、受信した公開鍵をメモリに格納された公開鍵と比較し、その比較の結果を照合モジュールに通知する。受信した公開鍵が予め正確に検査された公開鍵のうちの1つと同じである場合、照合モジュールは証明書に関する知識証明の計算をスキップし、単に証明者について公開鍵に関する知識証明を実行する。また、例えば、受信した公開鍵が格納された公開鍵のうちの1つと一致しない場合、図15のステップ153に示されるように、照合モジュールは証明書と公開鍵に関する知識証明の計算を実行する。
本発明による2つの場合について、証明書及びユーザのデータの照合のための方法及び装置を説明したが、本発明は上述した具体例に限定されない。当業者によれば、特定のアプリケーションやアルゴリズムに従って、照合のための方法と装置についての変形と変更を加えることが可能である。
本発明によれば、匿名の公開鍵が信用された主体によって証明される匿名証明書によって保証される場合、ユーザは信頼できる匿名の公開鍵を生成することが可能であることが、上述した説明から理解できる。ユーザ・プライバシ保護の機能は完全に施される。ユーザは、自身による別個の匿名の公開鍵だけでなく、自身による別個の匿名証明書を生成する。本発明による実施の形態において、CAの介在は最小限である。よって、信用された主体の負荷の軽減化を実現することが可能である。さらに、匿名証明書はCA或いはグループ管理者レベルで追跡可能であるので、ユーザが匿名性を乱用するのは不可能である。
本発明は、ハードウェア、ソフトウェア、ファームウェア或いはそれらの組合せによって実現することができ、システム、サブシステム、構成要素あるいはサブ構成要素において利用することができる。ソフトウェアで実現される場合、本発明の要素は本質的にプログラム、あるいは必要なタスクを実行するのに使用される命令セグメントである。プログラム又は命令セグメントは、コンピュータ読み取り可能な媒体に格納されるか、あるいは伝送ケーブル又は通信リンク上の搬送波であるたデータ信号によって送信される。「コンピュータ読み取り可能な媒体」は、情報を格納するか転送することができる任意の媒体を含む。コンピュータ読み取り可能な媒体の例としては、電子回路、半導体記憶装置、ROM、フラッシュ・メモリ、消去可能なROM(EROM)、フロッピーディスケット、CD−ROM、光ディスク、ハードディスク、光ファイバー媒体、無線(RF)リンクなどが含まれる。データ信号は、電子ネットワークチャネル、光ファイバ、空気、電磁気、RFリンク等の伝送媒体上で伝播することが可能な任意の信号を含む。命令セグメントは、インターネット、イントラネット等のようなコンピュータネットワークを介してダウンロードすることが可能である。
本発明は、その思想あるいは本質的特徴から外れない範囲で、他の特定の態様において具体化されることも可能である。例えば、システムアーキテクチャーが本発明の基本的な特徴を外れない限り、実施の形態において説明したアルゴリズムは変更することができる。また、本実施例は、全ての点において具体的な例として考慮され、限定的に考慮されるものではない。また、本発明の範囲は、実施例の記載ではなく請求の範囲によって示される。さらにクレームと同等の意味及び範囲内に含まれる全ての変形例は本発明に包含される。
本発明の前述の目的及び他の目的、本発明の本質及び本発明の各特徴は、以下に述べる説明を添付図面と共に読まれることにより十分に理解されるだろう。
APK方法によって秘匿化する公開鍵暗号方式を用いる2つの端末装置(端末装置のうちの一方が、他方の端末装置との新しい通信セッション用の種々の公開鍵を公開する)を備えた好適なシステムを示すブロック図である。 APK方法によって秘匿化する公開鍵暗号方式を用いるいくつかの端末装置(ある端末装置が、異なる通信用に異なる公開鍵を有する他の端末装置と通信する)を備えた好適なシステムの例を示す図である。 図1と図2で例をあげて説明した通信システムに参加する送信機と受信機の間の好適な通信セッション例を示す図である。 APK方法による公開鍵−秘密鍵のペアに基づいた通信セッションにおける送信機と受信機の好適な機能ブロック図である。 APK方法による図4に示すAPK生成装置の好適な機能ブロック図である。 秘匿化された公開鍵を生成するAPK方法による生成フローを示すフローチャートである。 APK方法によるメッセージの暗号化及び復号化の好適な手続き例を示す図である。 本発明の一般的概念を概略的に示すブロック図である。 本発明の一般的な検証プロセスを概略的に示すフローチャートである。 本発明の第1の実施の形態によるシステム構成の概要を示すブロック図である。 第1の実施の形態によるシステムスタートアップ段階におけるCA初期化プロセスの例を示すフローチャートである。 第1の実施の形態によるシステムスタートアップ段階中にユーザ初期化プロセスの例を示すフローチャートである。 第1の実施の形態によるRC要求プロセスの例を示すフローチャートである。 ユーザが第1の実施の形態に従ってどのように匿名の公開鍵を生成するかを示すフローチャートである。 第1の実施の形態による匿名の公開鍵のためのルート証明書からユーザがどのように匿名証明書を取得するかを示すフローチャートである。 第1の実施の形態による匿名の認証プロセスの例を示すフローチャートである。 第1の実施の形態による検査プロセスを示すフローチャートである。 第1の実施の形態によるユーザ装置の構成を示すブロック図である。 第1の実施の形態によるCA側装置の構成を示すブロック図である。 本発明の第2の実施の形態によるシステム構成の概要を示すブロック図である。 第2の実施の形態による匿名を証明する方法の例を示すフローチャートである。 ユーザが従来のグループ署名機構を有するグループに属していることを立証者へ証明する処理を示す図である。 本発明による第2の実施の形態の解決法によって匿名証明書及び公開鍵の妥当化を検査する処理を示す図である。 本発明による第2の実施の形態の解決法によって匿名証明書及び公開鍵の妥当化を検査する他の処理を示す図である。 本発明による第2の実施の形態の証明ユニットの例を示すブロック図である。 証明書が証明書機関(Certificate Authority)によって発行される従来の証明書システムを示すブロック図である。 証明書がユーザの友人によって発行される従来の他の証明書システムを示すブロック図である。
符号の説明
A、a,b,・・・,z10:端末装置
E,E,E,・・・,E:公開鍵
x,x,x,x,・・・,x:秘密鍵
41:送信機
42:受信機
43,44:送信装置
45,46:受信装置
47:復号化装置
48:暗号化装置
49:公開鍵生成装置
51:グループ選択手段
52:部分グループ選択手段
53:ジェネレータ選択手段
54:記憶部
55:制御装置
56:整数選択手段
57:グループ指数演算子

Claims (58)

  1. 通信ネットワーク上でデータを証明するユーザのコンピュータ装置であって、
    前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、
    前記コンピュータ装置が、
    前記ネットワークに接続された、前記信用ある機関の装置からルート証明を受け取るためのルート証明ユニット、
    前記ルート証明ユニットに接続された、前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するための匿名証明書生成ユニット、
    前記匿名証明書生成ユニットに接続された、前記通信ネットワークに前記匿名証明書と共に前記ユーザデータを送信するための送信ユニットを備えることを特徴とするコンピュータ装置。
  2. 前記匿名証明書は、立証者が前記ユーザの本当の身元を見抜くことを可能とする如何なる情報も含まないように生成されることを特徴とする請求項1に記載のコンピュータ装置。
  3. 前記ユーザのデータが、前記ユーザの公開鍵を含むことを特徴とする請求の1に記載のコンピュータ装置。
  4. 前記ユーザのデータに含まれる前記公開鍵が、唯一無比の公開鍵であることを特徴とする請求項3に記載のコンピュータ装置。
  5. 前記ユーザのデータを含まれる前記公開鍵が、匿名の公開鍵であり、
    前記コンピュータ装置が、前記送信ユニットに接続された、前記ユーザの複数の匿名の公開鍵を生成するための匿名公開鍵生成ユニットをさらに備え、
    前記複数の匿名の公開鍵が前記ユーザの秘密鍵に対応していることを特徴とする請求項3に記載のコンピュータ装置。
  6. 前記匿名公開鍵生成ユニットは、前記秘密鍵及びジェネレータから複数の匿名の公開鍵を生成し、前記秘密鍵と前記ジェネレータが予め定義されたグループに属することを特徴とする請求項5に記載のコンピュータ装置。
  7. 前記ルート証明が、前記信用ある機関によって前記ユーザに発行されたルート証明書であることを特徴とする請求項1に記載のコンピュータ装置。
  8. 前記ルート証明が、前記ユーザのグループ秘密鍵であり、前記匿名証明書が、前記ユーザのデータのグループ署名であることを特徴とする請求項1に記載のコンピュータ装置。
  9. 前記ネットワークに接続された、前記ルート証明のための要求を生成し、かつ前記信用ある機関に要求を送信するためのルート証明要求ユニットをさらに備えることを特徴とする請求項1に記載のコンピュータ装置。
  10. 前記ネットワークに接続された、前記信用ある機関あるいは前記立証者と共に知識証明を実行するための検証ユニットをさらに備えることを特徴とする請求項1に記載のコンピュータ装置。
  11. ユーザが通信ネットワーク上でデータを証明する方法であって、
    前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、
    前記信用ある機関からルート証明を受信するステップと、
    前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するステップと、
    前記立証者側に前記匿名証明書を含む前記ユーザのデータを送信するステップとを有することを特徴とする証明方法。
  12. 前記匿名証明書は、立証者が前記ユーザの本当の身元を見抜くことを可能とする如何なる情報も含まないように生成されることを特徴とする請求項11に記載の証明方法。
  13. 前記ユーザのデータが、前記ユーザの公開鍵を含むことを特徴とする請求の11に記載の証明方法。
  14. 前記ユーザのデータに含まれる前記公開鍵が、唯一無比の公開鍵であることを特徴とする請求項13に記載の証明方法。
  15. 前記ユーザのデータを含まれる前記公開鍵が、匿名の公開鍵であり、
    前記ユーザの複数の匿名の公開鍵を生成するステップをさらに有し、
    前記複数の匿名の公開鍵が前記ユーザの秘密鍵に対応していることを特徴とする請求項13に記載の証明方法。
  16. 複数の匿名の公開鍵が前記秘密鍵及びジェネレータから生成され、前記秘密鍵と前記ジェネレータが予め定義されたグループに属することを特徴とする請求項15に記載の証明方法。
  17. 前記ルート証明が、前記信用ある機関によって前記ユーザに発行されたルート証明書であることを特徴とする請求項11に記載の証明方法。
  18. 前記ルート証明が、前記ユーザのグループ秘密鍵であり、前記匿名証明書が、前記ユーザのデータのグループ署名であることを特徴とする請求項11に記載の証明方法。
  19. 前記ネットワークに接続された、前記ルート証明のための要求を生成し、かつ前記信用ある機関に要求を送信するためのルート証明要求ユニットをさらに備えることを特徴とする請求項11に記載の証明方法。
  20. 前記ネットワークに接続された、前記信用ある機関あるいは前記立証者と共に知識証明を実行するための検証ユニットをさらに備えることを特徴とする請求項11に記載の証明方法。
  21. 通信ネットワーク上で証明書を処理する処理装置であって、
    前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、
    前記処理装置が、
    システムパラメタを計算するためのシステムパラメータ計算ユニットと、
    前記システムパラメータ計算ユニットに接続された、前記ユーザ及び前記立証者側によって共有されるシステムパラメタを発行するためのパラメータ発行ユニットと、
    前記ネットワークに接続された、前記ユーザからルート証明要求を受け取るためのルート証明要求受信ユニットと、
    前記ルート証明要求受信ユニット及び前記システムパラメータ計算ユニットに接続された、前記ルート証明要求に応じて前記ユーザのためのルート証明を生成するためのルート証明生成ユニットとを備え、
    前記ルート証明は複数の匿名証明書を生成する前記ユーザのために使用されることを特徴とする処理装置。
  22. 前記ルート証明が、前記ユーザの公開鍵に対して発行されたルート証明書であることを特徴とする請求項21に記載の処理装置。
  23. 前記ルート証明が、前記ユーザの匿名の公開鍵に対して発行されたルート証明書であることを特徴とする請求項21に記載の処理装置。
  24. 前記ルート証明が、前記ユーザに対して発行されたグループ秘密鍵であることを特徴とする請求項21に記載の処理装置。
  25. 前記ルート証明生成ユニットに接続された、前記ルート証明要求について識別検査を行なうための検査ユニットをさらに備えることを特徴とする請求項21に記載の処理装置。
  26. 前記ネットワークに接続された、前記ルート証明に基づいて前記立証者側から受信した匿名証明書の所有者の身元を調査するための調査ユニットをさらに備えることを特徴とする請求項21に記載の処理装置。
  27. 通信ネットワーク上で証明書を処理する処理方法であって、
    前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、
    システムパラメタを計算するステップと、
    前記ユーザ及び前記立証者側によって共有されるシステムパラメタを発行するステップと、
    前記ユーザからルート証明要求を受け取るステップと、
    前記ルート証明要求に応じて前記ユーザのためのルート証明を生成するステプを有し、
    前記ルート証明は複数の匿名証明書を生成する前記ユーザのために使用されることを特徴とする処理方法。
  28. 前記ルート証明が、前記ユーザの公開鍵に対して発行されたルート証明書であることを特徴とする請求項27に記載の処理方法。
  29. 前記ルート証明が、前記ユーザの匿名の公開鍵に対して発行されたルート証明書であることを特徴とする請求項27に記載の処理方法。
  30. 前記ルート証明が、前記ユーザに対して発行されたグループ秘密鍵であることを特徴とする請求項27に記載の処理方法。
  31. 前記ルート証明要求を受信した後、前記ルート証明要求について識別検査を実行することを特徴とする請求項27に記載の処理方法。
  32. 前記ルート証明に基づいて前記立証者側から受信した匿名証明書の所有者の身元を調査するステプをさらに有することを特徴とする請求項27に記載の処理方法。
  33. 通信ネットワーク上のユーザのための匿名証明書システムであって、
    前記ネットワークには信用ある機関の装置を含み、
    前記ネットワークに接続された、前記信用ある機関の装置からルート証明を受け取るためのルート証明ユニット、
    前記ルート証明ユニットに接続された、前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するための匿名証明書生成ユニット、
    前記匿名証明書生成ユニットに接続された、前記通信ネットワークに前記匿名証明書と共に前記ユーザデータを送信するための送信ユニット
    前記通信ネットワークに接続された、受信した匿名証明書によってユーザのデータを検査するための前記立証者側ユニットを備えることを特徴とする匿名証明書システム。
  34. 前記匿名証明書は、立証者が前記ユーザの本当の身元を見抜くことを可能とする如何なる情報も含まないように生成されることを特徴とする請求項33に記載の匿名証明書システム。
  35. 前記ユーザのデータが、前記ユーザの公開鍵を含むことを特徴とする請求の33に記載の匿名証明書システム。
  36. 前記ユーザのデータに含まれる前記公開鍵が、唯一無比の公開鍵であることを特徴とする請求項35に記載の匿名証明書システム。
  37. 前記ユーザのデータを含まれる前記公開鍵が、匿名の公開鍵であり、
    前記システムが、前記送信ユニットに接続された、前記ユーザの複数の匿名の公開鍵を生成するための匿名公開鍵生成ユニットをさらに備え、
    前記複数の匿名の公開鍵が前記ユーザの秘密鍵に対応していることを特徴とする請求項35に記載の匿名証明書システム。
  38. 前記匿名公開鍵生成ユニットは、前記秘密鍵及びジェネレータから複数の匿名の公開鍵を生成し、前記秘密鍵と前記ジェネレータが予め定義されたグループに属することを特徴とする請求項37に記載の匿名証明書システム。
  39. 前記ルート証明が、前記信用ある機関によって前記ユーザに発行されたルート証明書であることを特徴とする請求項33に記載の匿名証明書システム。
  40. 前記ルート証明が、前記ユーザのグループ秘密鍵であり、前記匿名証明書が、前記ユーザのデータのグループ署名であることを特徴とする請求項33に記載の匿名証明書システム。
  41. 前記立証者側ユニットが、前記匿名証明書および前記ユーザのデータについて照合を行なうための照合モジュールをさらに備えることを特徴とする請求項33に記載の匿名証明書システム。
  42. 前記立証者側ユニットが、
    前記照合モジュールに接続された、正確に検査されたデータを格納するメモリと、
    前記メモリと前記照合モジュールに接続された、受信した前記ユーザのデータを前記格納したデータと比較する比較モジュールをさらに備えることを特徴とする請求項33に記載の匿名証明書システム。
  43. 前記立証者側ユニットに接続された、前記ルート証明に基づいて前記立証者側ユニットから受信した匿名証明書の所有者の身元を調査するための調査ユニットをさらに備えることを特徴とする請求項33に記載の匿名証明書システム。
  44. 通信ネットワーク上で匿名証明書によってユーザのデータを証明する方法であって、
    前記ネットワークには信用ある機関の装置と少なくとも1つの認証者側の装置を含み、
    前記信用ある機関から前記ユーザにルート証明を発行するステップと、
    ユーザによる前記ルート証明に基づいて少なくとも1つの匿名証明書を生成するステップと、
    前記立証者側に前記匿名証明書を含む前記ユーザのデータを送信するステップを有し、
    前記立証者側が、前記匿名証明書によって前記ユーザのデータを検査することを特徴とする証明方法。
  45. 前記匿名証明書は、立証者が前記ユーザの本当の身元を見抜くことを可能とする如何なる情報も含まないように生成されることを特徴とする請求項44に記載の証明方法。
  46. 前記ユーザのデータが、前記ユーザの公開鍵を含むことを特徴とする請求の44に記載の証明方法。
  47. 前記ユーザのデータに含まれる前記公開鍵が、唯一無比の公開鍵であることを特徴とする請求項46に記載の証明方法。
  48. 前記ユーザのデータを含まれる前記公開鍵が、匿名の公開鍵であり、
    前記ユーザの複数の匿名の公開鍵を生成するステップをさらに有し、
    前記複数の匿名の公開鍵が前記ユーザの秘密鍵に対応していることを特徴とする請求項46に記載の証明方法。
  49. 前記秘密鍵及びジェネレータから複数の匿名の公開鍵を生成し、前記秘密鍵と前記ジェネレータが予め定義されたグループに属することを特徴とする請求項48に記載の証明方法。
  50. 前記ルート証明の発行が、前記ユーザの公開鍵に対してルート証明書を発行するステップを含むことを特徴とする請求項44に記載の証明方法。
  51. 前記ルート証明の発行が、前記ユーザに対してグループ秘密鍵を発行するステップを含み、
    少なくとも1つの匿名証明書の生成が、前記ユーザのデータのグループ署名を生成するステップを含むことを特徴とする請求項44に記載の証明方法。
  52. 前記立証者側が、前記ユーザと知識証明を行なうことにより前記匿名証明書及び前記ユーザのデータを検査することを特徴とする請求項44に記載の証明方法。
  53. 前記立証者側による前記匿名証明書及び前記ユーザのデータの検査が、
    前記立証者側によって正確に検査されたデータを格納するステップ、
    前記格納データを前記ユーザから受信したユーザのデータと比較するステップ、
    前記ユーザのデータが前記記憶データのうちの1つと一致すれば、前記ユーザと前記ユーザのデータに関する知識証明を実行するステップ、
    前記ユーザのデータが前記記憶データのうちの1つと一致しない場合、前記匿名証明書及び前記ユーザのデータについて照合を実行するステップとを有することを特徴とする請求項44に記載の証明方法。
  54. 前記ルート証明に基づいて前記立証者側から受信した匿名証明書の所有者の身元を調査するステプをさらに有することを特徴とする請求項44に記載の処理方法。
  55. ユーザが通信ネットワーク上でデータを証明するためにコンピュータ上で実行される証明プログラムであって、
    前記コンピュータに、
    前記信用ある機関からルート証明を受信する処理と、
    前記ルート証明に基づいて少なくとも1つの匿名証明書を生成する処理と、
    前記立証者側に前記匿名証明書を含む前記ユーザのデータを送信する処理を実行させることを特徴とする証明プログラム。
  56. 前記データが匿名の公開鍵であることを特徴とする請求項55に記載の証明プログラム。
  57. ユーザが通信ネットワーク上でデータを証明するためにコンピュータ上で実行される証明プログラムであって、
    前記コンピュータに、
    システムパラメタを計算する処理と、
    前記ユーザ及び前記立証者側によって共有されるシステムパラメタを発行する処理と、
    前記ユーザからルート証明要求を受け取る処理と、
    前記ルート証明要求に応じて前記ユーザのためのルート証明を生成する処理を実行させ、
    前記ルート証明は複数の匿名証明書を生成する前記ユーザのために使用されることを特徴とする証明プログラム。
  58. 前記ルート証明が、前記ユーザの匿名の公開鍵についてのルート証明書であることを特徴とする請求項57に記載の証明プログラム。
JP2006254122A 2005-09-21 2006-09-20 順応性のある匿名証明書システム及びその方法 Pending JP2007089171A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA200510103562XA CN1937496A (zh) 2005-09-21 2005-09-21 可延展伪名证书系统和方法

Publications (1)

Publication Number Publication Date
JP2007089171A true JP2007089171A (ja) 2007-04-05

Family

ID=37596265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006254122A Pending JP2007089171A (ja) 2005-09-21 2006-09-20 順応性のある匿名証明書システム及びその方法

Country Status (6)

Country Link
US (1) US20070143608A1 (ja)
EP (1) EP1768304A1 (ja)
JP (1) JP2007089171A (ja)
KR (1) KR20070033289A (ja)
CN (1) CN1937496A (ja)
CA (1) CA2560038A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009033740A (ja) * 2007-06-27 2009-02-12 Nec (China) Co Ltd 匿名フレキシブル認証による分散型許可のための方法および装置
JP2009253530A (ja) * 2008-04-03 2009-10-29 Murata Mach Ltd サーバ装置
KR101373207B1 (ko) 2006-03-20 2014-03-12 오렌지 오디오 디코더에서 신호를 사후-프로세싱하는 방법
JP2018174526A (ja) * 2017-03-31 2018-11-08 コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド 生体認証セキュリティーを備えた、IOTデバイスを保護するためのIPv6リンクローカルセキュアネットワーク

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698565B1 (en) 2000-03-30 2010-04-13 Digitalpersona, Inc. Crypto-proxy server and method of using the same
US7409543B1 (en) * 2000-03-30 2008-08-05 Digitalpersona, Inc. Method and apparatus for using a third party authentication server
WO2008127446A2 (en) * 2006-12-01 2008-10-23 President And Fellows Of Harvard College A method and apparatus for time-lapse cryptography
EP2127195A2 (en) * 2007-01-22 2009-12-02 Global Crypto Systems Methods and systems for digital authentication using digitally signed images
US7958057B2 (en) * 2007-03-28 2011-06-07 King Fahd University Of Petroleum And Minerals Virtual account based new digital cash protocols with combined blind digital signature and pseudonym authentication
US20090327141A1 (en) * 2007-04-18 2009-12-31 Rabin Michael O Highly efficient secrecy-preserving proofs of correctness of computation
US7877331B2 (en) * 2007-09-06 2011-01-25 King Fahd University Of Petroleum & Minerals Token based new digital cash protocols with combined blind digital signature and pseudonym authentication
US20090177591A1 (en) * 2007-10-30 2009-07-09 Christopher Thorpe Zero-knowledge proofs in large trades
RU2512139C2 (ru) * 2008-10-14 2014-04-10 Конинклейке Филипс Электроникс Н.В. Способ и устройство для генерации и аутентификации псевдонима
KR101330245B1 (ko) * 2008-11-11 2013-11-15 한국전자통신연구원 권한 분산형 가명 인증서 처리 시스템
US20100122080A1 (en) * 2008-11-11 2010-05-13 Electronics And Telecommunications Research Institute Pseudonym certificate process system by splitting authority
US9621341B2 (en) * 2008-11-26 2017-04-11 Microsoft Technology Licensing, Llc Anonymous verifiable public key certificates
US8499154B2 (en) * 2009-01-27 2013-07-30 GM Global Technology Operations LLC System and method for establishing a secure connection with a mobile device
US20100199095A1 (en) * 2009-01-30 2010-08-05 Texas Instruments Inc. Password-Authenticated Association Based on Public Key Scrambling
US20100241852A1 (en) * 2009-03-20 2010-09-23 Rotem Sela Methods for Producing Products with Certificates and Keys
WO2013181841A1 (en) 2012-06-08 2013-12-12 Nokia Corporation Privacy protection for participatory sensing system
US9582671B2 (en) 2014-03-06 2017-02-28 Sensity Systems Inc. Security and data privacy for lighting sensory networks
CN103687200A (zh) 2012-09-12 2014-03-26 赛西蒂系统股份有限公司 用于传感应用的网络化照明基础设施
US20160156593A1 (en) * 2013-07-01 2016-06-02 Nokia Technologies Oy Method and Apparatus for Anonymous Authentication on Trust in Social Networking
US9288672B2 (en) * 2013-09-23 2016-03-15 Qualcomm Incorporated Method for configuring a remote station with a certificate from a local root certificate authority for securing a wireless network
US9473490B2 (en) * 2014-10-13 2016-10-18 Wells Fargo Bank, N.A. Bidirectional authentication
JP6293716B2 (ja) * 2015-11-10 2018-03-14 株式会社アメニディ 匿名通信システムおよび該通信システムに加入するための方法
US10938570B2 (en) * 2016-02-08 2021-03-02 Intel Corporation Technologies for remote attestation
CN105933121A (zh) * 2016-04-11 2016-09-07 南京邮电大学 一种具有隐私保护功能的服务发现机制实现方法和系统
JP6961960B2 (ja) * 2017-03-13 2021-11-05 ソニーグループ株式会社 情報処理装置および情報処理方法
KR102019546B1 (ko) * 2017-06-12 2019-09-09 이승진 보안카메라와 사용자 장치 간의 보안키 생성방법
US11082846B2 (en) * 2018-03-20 2021-08-03 Qualcomm Incorporated Method and system for onboard equipment misbehavior detection report routing
TWI772648B (zh) * 2019-06-03 2022-08-01 銓鴻資訊有限公司 基於集體驗證的部分資料驗證方法
CN111428279B (zh) * 2020-03-26 2023-12-08 国汽(北京)智能网联汽车研究院有限公司 一种显式证书生成方法、装置、设备及存储介质
US11777720B2 (en) 2020-06-12 2023-10-03 Nagravision Sàrl Distributed anonymized compliant encryption management system
IL275954A (en) * 2020-07-09 2022-02-01 Google Llc Anonymous event confirmation with group signatures
WO2022081025A1 (en) * 2020-10-12 2022-04-21 Goat Software Limited Data transmission system, communications adapter and method
CN113127910B (zh) * 2021-04-30 2022-04-12 复旦大学 基于区块链和去中心可追踪属性签名的可控匿名投票系统
CN116566623B (zh) * 2023-07-05 2023-09-22 北京天润基业科技发展股份有限公司 一种获取匿名数字证书的方法、系统及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11202766A (ja) * 1998-01-16 1999-07-30 Canon Inc ディジタル署名方式、それを用いた情報通信システム及び通信装置
JP2001209613A (ja) * 2000-01-25 2001-08-03 Nippon Telegr & Teleph Corp <Ntt> 匿名アプリケーション格納方法及びシステム及び匿名アプリケーション格納プログラムを格納した記憶媒体
JP2003258787A (ja) * 2002-02-26 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> 電子証明書、電子証明書の発行および検証方法、装置、プログラム、プログラムの記録媒体
WO2004047362A1 (fr) * 2002-11-14 2004-06-03 France Telecom Procede et systeme avec authentification, anonymat revocable et non repudiation
JP2004289347A (ja) * 2003-03-20 2004-10-14 Hitachi Kokusai Electric Inc 無線移動通信システム
JP2004348709A (ja) * 2003-05-20 2004-12-09 Samsung Electronics Co Ltd コンテンツ利用者認証システム及び方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
EP0804003A3 (en) * 1996-04-26 2000-11-15 Canon Kabushiki Kaisha Digital signature method and communication system
DE69836455T2 (de) * 1997-08-20 2007-03-29 Canon K.K. System für elektronische Wasserzeichen, elektronisches Informationsverteilungssystem und Gerät zur Abspeicherung von Bildern
EP1145479A3 (en) * 1998-06-30 2001-12-05 Privada, Inc. Bi-directional, anonymous electronic transactions
JP2001202013A (ja) 2000-01-21 2001-07-27 Nec Corp 匿名参加権限管理システム
US20020004900A1 (en) 1998-09-04 2002-01-10 Baiju V. Patel Method for secure anonymous communication
US20010020228A1 (en) * 1999-07-09 2001-09-06 International Business Machines Corporation Umethod, system and program for managing relationships among entities to exchange encryption keys for use in providing access and authorization to resources
WO2001043094A2 (en) * 1999-11-29 2001-06-14 Microsoft Corporation System and method for flexible micropayment of low value electronic assets
US20020049681A1 (en) * 2000-07-20 2002-04-25 International Business Machines Corporation Secure anonymous verification, generation and/or proof of ownership of electronic receipts
US7360080B2 (en) * 2000-11-03 2008-04-15 International Business Machines Corporation Non-transferable anonymous credential system with optional anonymity revocation
CA2365441C (en) * 2001-12-19 2010-02-16 Diversinet Corp. Method of establishing secure communications in a digital network using pseudonymic digital identifiers
US7543139B2 (en) * 2001-12-21 2009-06-02 International Business Machines Corporation Revocation of anonymous certificates, credentials, and access rights
US7461251B2 (en) * 2002-05-09 2008-12-02 Canon Kabushiki Kaisha Public key certification issuing apparatus
US7318155B2 (en) * 2002-12-06 2008-01-08 International Business Machines Corporation Method and system for configuring highly available online certificate status protocol responders
US7107447B2 (en) * 2003-04-17 2006-09-12 America Online, Inc. Use of pseudonyms vs. real names
EP1521390B1 (en) * 2003-10-01 2008-08-13 Hewlett-Packard Development Company, L.P. Digital signature method and apparatus
US7636848B2 (en) * 2003-11-27 2009-12-22 Telecom Italia S.P.A. Method, system, network and computer program product for securing administrative transactions over a network
AU2004201058B1 (en) * 2004-03-15 2004-09-09 Lockstep Consulting Pty Ltd Means and method of issuing Anonymous Public Key Certificates for indexing electronic record systems
US7490070B2 (en) * 2004-06-10 2009-02-10 Intel Corporation Apparatus and method for proving the denial of a direct proof signature
CN1773905B (zh) * 2004-11-10 2010-08-18 日电(中国)有限公司 在安全通信系统中生成匿名公钥的方法、设备和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11202766A (ja) * 1998-01-16 1999-07-30 Canon Inc ディジタル署名方式、それを用いた情報通信システム及び通信装置
JP2001209613A (ja) * 2000-01-25 2001-08-03 Nippon Telegr & Teleph Corp <Ntt> 匿名アプリケーション格納方法及びシステム及び匿名アプリケーション格納プログラムを格納した記憶媒体
JP2003258787A (ja) * 2002-02-26 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> 電子証明書、電子証明書の発行および検証方法、装置、プログラム、プログラムの記録媒体
WO2004047362A1 (fr) * 2002-11-14 2004-06-03 France Telecom Procede et systeme avec authentification, anonymat revocable et non repudiation
JP2004289347A (ja) * 2003-03-20 2004-10-14 Hitachi Kokusai Electric Inc 無線移動通信システム
JP2004348709A (ja) * 2003-05-20 2004-12-09 Samsung Electronics Co Ltd コンテンツ利用者認証システム及び方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101373207B1 (ko) 2006-03-20 2014-03-12 오렌지 오디오 디코더에서 신호를 사후-프로세싱하는 방법
JP2009033740A (ja) * 2007-06-27 2009-02-12 Nec (China) Co Ltd 匿名フレキシブル認証による分散型許可のための方法および装置
JP2009253530A (ja) * 2008-04-03 2009-10-29 Murata Mach Ltd サーバ装置
JP2018174526A (ja) * 2017-03-31 2018-11-08 コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド 生体認証セキュリティーを備えた、IOTデバイスを保護するためのIPv6リンクローカルセキュアネットワーク

Also Published As

Publication number Publication date
CA2560038A1 (en) 2007-03-21
US20070143608A1 (en) 2007-06-21
EP1768304A1 (en) 2007-03-28
KR20070033289A (ko) 2007-03-26
CN1937496A (zh) 2007-03-28

Similar Documents

Publication Publication Date Title
JP2007089171A (ja) 順応性のある匿名証明書システム及びその方法
Mandt et al. Certificateless authenticated two-party key agreement protocols
US7360080B2 (en) Non-transferable anonymous credential system with optional anonymity revocation
US6202150B1 (en) Auto-escrowable and auto-certifiable cryptosystems
US20090024852A1 (en) Group signature system, method, device, and program
JP2010093860A (ja) 鍵認証方式
EP2792098B1 (en) Group encryption methods and devices
WO2019110399A1 (en) Two-party signature device and method
EP2384562B1 (en) Management of cryptographic credentials in data processing systems
Battagliola et al. Threshold ecdsa with an offline recovery party
Shim Design principles of secure certificateless signature and aggregate signature schemes for IoT environments
KR20230002941A (ko) 비밀 공유를 갖는 (ec)dsa 임계값 서명
KR20010013155A (ko) 자동 복구가능하고 자동 증명가능한 암호체계들
CN110278073B (zh) 一种群组数字签名、验证方法及其设备和装置
JP2001308851A (ja) ユーザ認証方法、記憶媒体、装置及びシステム
EP2384563B1 (en) Verification of data items in data processing systems
Shin et al. AAnA: Anonymous authentication and authorization based on short traceable signatures
WO2023055371A1 (en) Replicated secret share generation for distributed symmetric cryptography
Wang et al. An efficient contract signing protocol using the aggregate signature scheme to protect signers' privacy and promote reliability
Bultel et al. Improving the efficiency of report and trace ring signatures
Wu et al. A publicly verifiable PCAE scheme for confidential applications with proxy delegation
WO2023048711A1 (en) Threshold secret share generation for distributed symmetric cryptography
Hajny et al. Anonymous credentials with practical revocation
Nagaty A public key cryptosystem and signature scheme based on numerical series
Rasslan et al. An IoT Privacy-Oriented selective disclosure credential system

Legal Events

Date Code Title Description
A524 Written submission of copy of amendment under section 19 (pct)

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20061129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090918

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120322

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120816