JPWO2008146667A1 - 匿名認証システムおよび匿名認証方法 - Google Patents

匿名認証システムおよび匿名認証方法 Download PDF

Info

Publication number
JPWO2008146667A1
JPWO2008146667A1 JP2009516261A JP2009516261A JPWO2008146667A1 JP WO2008146667 A1 JPWO2008146667 A1 JP WO2008146667A1 JP 2009516261 A JP2009516261 A JP 2009516261A JP 2009516261 A JP2009516261 A JP 2009516261A JP WO2008146667 A1 JPWO2008146667 A1 JP WO2008146667A1
Authority
JP
Japan
Prior art keywords
authentication
verification
user
authenticated
request
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.)
Granted
Application number
JP2009516261A
Other languages
English (en)
Other versions
JP5201136B2 (ja
Inventor
寿幸 一色
寿幸 一色
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP2009516261A priority Critical patent/JP5201136B2/ja
Publication of JPWO2008146667A1 publication Critical patent/JPWO2008146667A1/ja
Application granted granted Critical
Publication of JP5201136B2 publication Critical patent/JP5201136B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
    • 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/3257Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using blind signatures
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

グループ管理装置と被認証者装置と検証装置と被認証特定装置とを有する匿名認証システムが開示される。ユーザはあらかじめグループ管理装置に自らの署名を検証できる検証鍵を登録しておく。認証時、ユーザは被認証者装置で自らの署名を生成し、グループの暗号化鍵を用いて、署名を暗号化し、認証データとする。検証装置が、グループの復号鍵を持つ検証補助者の協力を得ながら、認証を行う。必要に応じて、グループの復号鍵を持つ被認証特定装置が、認証データを復号することによって、被認証者の特定を行う。

Description

本発明は、匿名認証システムおよび匿名認証方法に関する。
近年、ネットワークセキュリティの重要性が広く認識されている。セキュリティを実現するために、ネットワーク上の様々なサービスは、特定の人にだけサービスを提供するように構成されている。そのため,これらのサービスは、サービスの利用に際してサービス利用者の個人認証を行う。しかしながら、この認証における履歴を複数個集めてくることにより、同じサービス利用者がいつ・どこで・なにをしたかという個人の情報が明らかとなり、その個人のプライバシーが侵害されてしまう。したがって、プライバシーの観点からは、個人認証はなるべく行われないほうが望ましいといえる。
被認証者の匿名性を高めるための施策として、サービスの会員全員に同じIDとパスワードを発行する方法が考えられる。この方法では、会員全員が同じIDとパスワードを用いて認証を行うため、個人を特定せずに認証を行うことが可能である。しかし、会員のうちの誰かが、会員以外の人にパスワードを漏らしてしまった場合、会員にだけサービスを提供するためには、パスワードを再発行し、会員全員に新規のパスワードを伝えなくてはならない。また、被認証者の振る舞いが規約などによって個人を特定されるべき行為であったとしても、管理者は被認証者を特定することができない。
また、特許文献1には、匿名認証方式が記載されている。この匿名認証方式は、被認証者の匿名性を保ちつつ、管理者は必要に応じて被認証者を特定、除外することができる認証方式である。さらに、この認証方式は、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが可能である。このことによって、営利目的の会員制サービスなどでは、リピーターに関する情報を管理者が得られるというメリットが考えられるが、何らかの理由により被認証者の特定が行われた場合、その被認証者の過去の認証履歴がすべて明らかになってしまうという問題がある。その上、特許文献1の匿名認証方式では、管理者が会員全員のIDとパスワードを知っているため、管理者による会員のなりすまし行為が可能という問題がある。
さらに、非特許文献1では、グループ署名を用いた匿名認証方式が記載されている。これらの匿名認証方式は、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを識別することが不可能で、かつ管理者による会員のなりすまし行為が不可能である。しかしこれらの方式では、被認証者が認証に必要なデータ(以下、認証データ)を生成するための計算コストが大きいという問題がある。
特開2006−235661号公報 J. Camenisch and J. Groth. Group signatures: better efficiency and new theoretical aspects. Forth Int. Conf. on Security in Communication Networks -- SCN 2004, LNCS 3352, Springer, 2005.
本発明の目的は、被認証者の匿名性を確保しつつ、必要に応じ匿名性を剥奪でき、複数回の認証に対して、それが同一の被認証者の行為であるか別の被認証者の行為であるかを判別できず、グループを管理するグループ管理者による会員のなりすましを防ぎ、かつ被認証者の認証データ生成に必要な計算コストが小さい匿名認証システムおよび匿名認証方法を提供することにある。
本発明の一態様によれば、匿名認証システムは、ユーザのグループを管理するグループ管理装置と、該グループ管理装置が管理するグループに所属する被認証者が操作し、認証を要求する被認証者装置と、認証を試みているユーザがグループに所属していることを検証する検証装置と、前記検証行為の補助を行う検証補助装置と、被認証者の特定を行う被認証者特定装置を有する。被認証者装置は、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成するアンリンカブル認証データ生成部を有する。検証装置が、検証補助装置に対して、検証の補助行為を依頼する検証補助要求を出力する検証補助要求部と、検証補助要求に応答した検証補助装置から検証補助データを受信し、また前記被認証者装置からアンリンカブル認証データを入力し、検証結果を出力する検証部とを有する。被認証者特定装置は、アンリンカブル認証データとグループの秘密鍵を入力し、被認証者の特定を行う被認証者特定部を有する
本発明の他の態様によれば、匿名認証システムは、ユーザのグループを管理するグループ管理装置と、該グループ管理装置が管理するグループに所属する被認証者が操作し、認証を要求する被認証者装置と、前記認証行為の補助を行う認証補助装置と、認証を試みているユーザがグループに所属していることを検証する検証装置と、被認証者の特定を行う被認証者特定装置を有する。被認証者装置は、認証補助装置に対して、認証の補助行為を依頼する認証補助要求を出力する認証補助要求部と、認証補助要求に応答した前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成するアンリンカブル認証データ生成部とを有する。検証装置は、アンリンカブル認証データを入力とし、検証を行う検証部を有する。被認証者特定装置は、アンリンカブル認証データとグループの秘密鍵を入力とし、被認証者の特定を行う被認証者特定部を有する。
本発明のさらに他の態様によれば、匿名認証システムは、ユーザのグループを管理するグループ管理装置と、グループのメンバーが認証を要求するための被認証者装置と、認証を試みているユーザがグループに属していることを検証する検証装置と、前記認証を補助する認証補助装置と、前記検証を補助する検証補助装置と、被認証者の特定を行う被認証者特定装置を有する。被認証者装置は、認証補助装置に対して、認証の補助行為を依頼する認証補助要求を出力する認証補助要求部と、認証補助要求に応答した前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成するアンリンカブル認証データ生成部とを有する。検証装置は、検証補助装置に対して、検証の補助行為を依頼する検証補助要求を出力する検証補助要求部と、検証補助要求に応答した検証補助装置から検証補助データを受信し、またアンリンカブル認証データを入力し、検証結果を出力する検証部と、を有する。被認証者特定装置は、アンリンカブル認証データとグループの秘密鍵を入力とし、被認証者の特定を行う被認証者特定部を有する。
本発明は下記の効果がある。
第1に、被認証者の匿名性を確保しつつ、必要に応じ匿名性を剥奪でき、複数回の認証に対して、それが同一の被認証者の行為であるか別の被認証者の行為であるかを判別できないことにある。この結果、グループに所属するユーザのプライバシーを保護できる。
第2に、グループを管理するグループ管理者によるユーザのなりすましを防ぐことができることにある。この結果、例えば、従量課金制のサービスなどで、グループ管理者の不正によるユーザへの課金過多などを防ぐことが可能となる。また、あるユーザの認証データは、そのユーザのみが生成可能であるため、ユーザによる認証結果に対する否認行為を不可能とできる。
第3に、認証時のユーザへの負荷を減らすことが可能となる。この結果、ユーザが計算リソースの少ないデバイスしか持たない場合にも対応可能となる。
図1は本発明の第1の実施の形態による匿名認証システムのブロック図である。 図2はグループ管理装置10のブロック図である。 図3は被認証者装置20のブロック図である。 図4は検証装置30のブロック図である。 図5は検証補助装置40のブロック図である。 図6は被認証者特定装置50のブロック図である。 図7は第1の実施の形態における入会登録処理のフローチャートである。 図8は第1の実施の形態における認証処理のフローチャートである。 図9は第1の実施の形態における被認証者特定処理のフローチャートである。 図10は本発明の第2の実施の形態による匿名認証システムのブロック図である。 図11は被認証者装置21のブロック図である。 図12は認証補助装置61のブロック図である。 図13は検証装置31のブロック図である。 図14は第2の実施の形態における認証処理のシーケンスである。 図15は本発明の第3の実施の形態による匿名認証システムのブロック図である。 図16は認証補助装置62のブロック図である。 図17は検証補助装置42のブロック図である。 図18は第3の実施の形態における認証処理のフローチャートである。 図19は第3の実施の形態における認証処理のフローチャートである。
符号の説明
10 グループ管理装置
20、21 被認証者装置
30、31 検証装置
40、42 検証補助装置
50 被認証者特定装置
61、62 認証補助装置
10−1 登録処理部
10−2 メンバー登録情報記憶装置
20−1 登録要求部
20−2 ID・鍵ペア記憶装置
20−3 認証要求部
20−4 署名生成部
20−5 アンリンカブル認証データ生成部
30−1 チャレンジ生成部
30−2 検証補助要求部
30−3 検証部
30−4 アンリンカブル認証データ記憶装置
30−5 被認証者特定要求部
40−1 認証データ復号部
40−2 署名検証部
50−1 認証データ復号部
50−2 被認証者特定部
101−105、201−208 ステップ
301−305、401−409、501−511 ステップ
以下、本発明の実施の形態について図面を用いて詳細に説明する。
本発明は、匿名認証において、被認証者の匿名性を得るために、公開鍵暗号(Public Key Encryption)を用いることを特徴とする。公開鍵暗号では、ユーザは秘密鍵と、その秘密鍵に対応する公開鍵とを有している。ユーザAがユーザBに、公開鍵暗号を用いてメッセージを送信する場合、ユーザAはユーザBが公開している公開鍵を用いて、メッセージを暗号化し、ユーザBに暗号文を送信する。暗号文を受け取ったユーザBは、自らの秘密鍵を用いて復号を行い、メッセージを生成する。
さらに、本発明は、匿名認証において、グループ管理者による既存ユーザのなりすまし行為を防ぐために、電子署名技術(Digital Signature)を用いることを特徴とする。電子署名技術は、公開鍵暗号に基づいている。署名者は、署名鍵(秘密鍵)と、その署名鍵に対応する検証鍵(公開鍵)とを有している。署名者は、署名鍵を用いてメッセージに署名を施す。検証者は、署名者が公開している検証鍵を用いて、署名が署名者によって施されたものであることを確認できる。認証データとして暗号文を用いることにより、復号に用いる復号鍵を持たない検証者に被認証者のIDに関する情報を与えない。
以降の記述において、 a^{b}はaのb乗を意味し、a_b はaに下付き添字bが付いた状態を示す。また、ビットの連結を”‖”と表記する(例えば、a=10(バイナリ表記),b=01とした場合、a‖b=1001となる)。
[第1の実施形態]
図1に示すように、本発明の第1の実施形態による匿名認証システムはグループ管理装置10と被認証者装置20と検証装置30と検証補助装置40と被認証者特定装置50を有している。グループ管理装置10はユーザのグループを管理する。被認証者装置20は、グループ管理装置10が管理するグループに所属する被認証者が操作し、認証を要求する。検証装置30は、認証を試みているユーザがグループに所属していることを検証する。検証補助装置40は上記検証行為の補助を行う。被認証者特定装置50は、何らかの問題が起こった場合に被認証者の匿名性を剥奪する。
グループ管理装置10と被認証者装置20、グループ管理装置10と検証補助装置40、グループ管理装置10と被認証者特定装置50、被認証者装置20と検証装置30、検証装置30と検証補助装置40、検証装置40と被認証者特定装置50はそれぞれインターネットなどのネットワークを通じて互いに接続されている。
なお、グループごとにグループ管理装置10は存在し、各グループに複数の被認証者装置20、検証装置30が存在してもよい。また、グループに対応したグループの暗号化鍵 enc_g が被認証者装置20に入力される。グループの暗号化鍵 enc_g に対応したグループの復号鍵 dec_g が検証補助装置40および被認証者特定装置50に入力される。これらの暗号化鍵・復号鍵は、グループごとに存在する。
図2〜図6はそれぞれグループ管理装置10〜被認証者特定装置50のブロック図である。
図2に示すように、グループ管理装置10は、ユーザのグループへの参加登録処理を行う登録処理部10−1と、グループに在籍するメンバーの登録情報リスト(以下、メンバーリスト)を記憶するメンバー登録情報記憶装置10−2を有する。
図3に示すように、被認証者装置20は、グループ管理装置10に登録要求メッセージを送信する登録要求部20−1と、グループ管理装置10によって割り振られた、ユーザのIDとユーザの署名鍵・検証鍵ペアを記憶するID・鍵ペア記憶装置20−2を有する。被認証者装置20はさらに、検証装置30に認証を受ける要求メッセージを送信する認証要求部20−3と、認証データ生成の際にユーザの署名鍵を用いて署名生成を行う署名生成部20−4と、グループの暗号化鍵を受信し、アンリンカブルな認証データ(アンリンカブル認証データ)を生成するアンリンカブル認証データ生成部20−5を有する。ここで、「アンリンカブルな」は、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能な、と言う意味である。
図4に示すように、検証装置30は、認証要求を受信し、チャレンジを生成するチャレンジ生成部30−1と、アンリンカブル認証データを受信し、検証補助要求を検証補助装置40に送信する検証補助要求部30−2と、検証補助結果を受信し、検証を行う検証部30−3を有する。検証装置30はさらに、認証の履歴として、アンリンカブル認証データを記憶するアンリンカブル認証データ記憶装置30−4と、アンリンカブル認証データ記憶装置30−4に記憶されているアンリンカブル認証データに対して、匿名性剥奪要求を被認証者特定装置50に送信する被認証者特定要求部30−5を有する。
図5に示すように、検証補助装置40は、検証補助要求とグループの復号鍵を受信し、認証データの復号を行う認証データ復号部40−1と、メンバーリストを受信し、署名の検証を行う署名検証部40−2とを有する。
図6に示すように、被認証者特定装置50は、匿名性剥奪要求とグループの復号鍵を受信し、認証データの復号を行う認証データ復号部50−1と、メンバーリストを受信し、被認証者の特定を行う被認証者特定部50−2とを有する。
まず、認証の際の事前処理(入会登録処理)について図7を参照して説明する。
ここでは例として、署名鍵 sk_u,検証鍵 vk_u を持つユーザUが登録を行うこととして説明する。ユーザUは署名鍵・検証鍵ペア(sk_u, vk_u)を予めICカードやフラッシュメモリなどに格納しておき、被認証者装置20はICカードやフラッシュメモリにアクセスできるインターフェースを有している。
まず、ユーザUは署名鍵・検証鍵ペア(sk_u,vk_u)を被認証者装置20に入力する(ステップ101)。検証鍵 vk_u を受信した登録要求部20−1は、グループ管理装置10に登録要求 req_r を送信する(ステップ102)。このとき登録要求 req_r には、ユーザUの検証鍵 vk_u,および住所、氏名、年齢など、登録に必要な個人情報が含まれている。登録要求 req_r を受信した登録処理部10−1は、ユーザUに対する固有のID ID_u を発行し、被認証者装置20に ID_u を送信する(ステップ103)。ただし、登録に何らかの条件(性別制限、年齢制限、2重登録禁止など)がある場合、登録要求 req_r にしたがって登録処理部10−1が審査を行い、条件を満たさないユーザUからの登録要求であった場合、登録不可を被認証者装置20に送信してもよい。ユーザが登録不可であった場合、そのユーザに対する以降のやり取りは中止する。登録処理部10−1は、メンバー登録情報記憶装置10−2よりメンバーリスト List を読み出し、(ID_u, req_r)をメンバーリスト List に追記し、更新されたメンバーリスト List をメンバー登録情報記憶装置10−2に記憶する(ステップ104)。ID_u を受信した被認証者装置20は、(ID_u, (sk_u, vk_u))をID・鍵ペア記憶装置20−2に記憶する(ステップ105)。
次に、認証処理の流れについて図8を参照して説明する。
ここでは例として、署名鍵 sk_u,検証鍵 vk_u を持つユーザUが登録を済ませ、ID・鍵ペア記憶装置20−2には、(ID_u, (sk_u, vk_u)) が記憶されていることとして、説明する。
まず、被認証者装置20の認証要求部20−3は、検証装置30に認証要求 req_a を送信する(ステップ201)。認証要求 req_a を受信したチャレンジ生成部30−1は、ランダムなメッセージであるチャレンジ nonce を被認証者装置20に送信する(ステップ202)。チャレンジ nonce を受信した署名生成部20−4は、ID・鍵ペア記憶装置20−2に記憶されている sk_u を用いて、チャレンジ nonce に対するユーザUの署名σを生成する(ステップ203)。次に、グループの暗号化鍵 enc_g を受信したアンリンカブル認証データ生成部20−5は、ID_u||σを暗号化し、暗号文Cを生成する。さらに、暗号文Cを含むアンリンカブル認証データ response を検証装置30に送信する(ステップ204)。アンリンカブル認証データ response を受信した検証補助要求部30−2は、暗号文Cを含む検証補助要求データ req_v を検証補助装置40に送信する(ステップ205)。検証補助要求データ req_v とグループの復号鍵 dec_g を受信した認証データ復号部40−1は、検証補助要求データ req_v に含まれる暗号文Cを復号し、復号の結果得られた復号データを ID||σとパースする(ステップ206)。つまり、復号データを ID,σに分解する。次に、グループ管理装置10のメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した署名検証部40−2は、メンバーリスト List に ID が記載されているか確認する。記載されていない場合、不受理である旨を検証補助データ ans_v として検証装置30に送信する。記載されている場合、ID に対応する検証鍵 vk を用いて、σの検証を行う。その署名検証結果(受理または不受理)を検証補助データ ans_v として検証装置30に送信する(ステップ207)。検証補助データ ans_v を受信した検証部30−3は、認証結果 result を生成し、出力する。すなわち、検証補助データ ans_v が受理であったら、認証結果 result は認証成功を意味するデータとなる。また、検証補助データ ans_v が不受理であったら、認証結果 result は認証失敗を意味するデータとなる。さらに、認証が成功したアンリンカブル認証データ response をアンリンカブル認証データ記憶装置30−4に記憶する(ステップ208)。ただし、認証が失敗したアンリンカブル認証データもアンリンカブル認証データ記憶装置30−4に記憶しても構わない。
ここで、被認証者装置20のIDに関する情報はグループの暗号化鍵 enc_g によって暗号化されているため、グループの復号鍵 dec_g を入力として持たない検証装置30には、被認証者装置20のIDに関する情報は、2つのアンリンカブル認証データが同じ被認証者によるものか異なる被認証者によるものかという情報すら伝わらない。グループの復号鍵 dec_g を入力として受け取る検証補助装置40では検証装置30から受け取った検証補助要求データ req_v に含まれる暗号文Cを、グループの復号鍵 dec_g を用いて復号し、IDおよび署名データσを得る。検証補助装置40では、IDがメンバーリスト List に含まれ、かつ、IDに対応する検証鍵を用いて署名データσを検証すると受理されることを確認する。したがって、登録されていないユーザ、すなわちメンバーリスト List に登録されている検証鍵に対応した署名鍵を持たないユーザは、メンバーリスト List に含まれる検証鍵を用いて受理される署名データを生成することが不可能であるため、認証を成功させることが不可能である。さらに、グループを管理する管理者であってもメンバーリスト List に登録されている検証鍵に対応した署名鍵を知らないため、認証を成功させることが不可能である。
次に、アンリンカブル認証データから被認証者の特定を行う処理を、図9を参照して説明する。
ここでは例として、検証装置30の備えるアンリンカブル認証データ記憶装置30−4に記憶されている、アンリンカブル認証データ response_i を生成した被認証者のIDを特定する場合を説明する。
まず、アンリンカブル認証データ記憶装置30−4に記憶されているアンリンカブル認証データ response_i を受信した検証装置30の被認証者特定要求部30−5は、被認証者特定要求データ req_t を被認証者特定装置50に送信する(ステップ301)。ここで、被認証者特定要求データ req_t は、アンリンカブル認証データ response_i を含む。被認証者特定要求データ req_t およびグループの復号鍵 dec_g を受信した認証データ復号部50−1は、アンリンカブル認証データ response_i に含まれる暗号文 C_i を復号し、復号データを ID_i||σ_i とパースする(ステップ302)。次に、グループ管理装置10の具備するメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した被認証者特定部50−2は、ID_i がメンバーリスト List に記載されていることを確認し、ID_i がメンバーリスト List に記載されていたら、ID_i に対応する検証鍵 vk_i を用いて σ_i の検証を行う(ステップ303)。検証結果が受理であったら、アンリンカブル認証データ response_i は、ID ID_i を持つユーザの作成した認証データであると出力する(ステップ304)。ID_i がメンバーリスト List に記載されていない、あるいは、σ_i の検証結果が不受理であった場合、被認証者特定を要求されたアンリンカブル認証データ response_i は受理されない認証データであると出力する(ステップ305)。
なお、第1の実施形態の変形例として次の構成が可能である。被認証者装置20は、アンリンカブル認証データを生成するアンリンカブル認証データ生成部20−5を少なくとも有する。検証装置30は、検証補助装置40に対して、検証の補助行為を依頼する検証補助要求を出力する検証補助要求部30−2と、検証補助要求に応答した検証補助装置40から検証補助データを受信し、また被認証者装置20からアンリンカブル認証データを入力し、検証結果を出力する検証部30−3とを少なくとも有する。被認証者特定装置50は、アンリンカブル認証データとグループの秘密鍵を入力し、被認証者の特定を行う被認証者特定部50−2を少なくとも有する。
[第2の実施形態]
図10に示すように、本発明の第2の実施形態による匿名認証システムはグループ管理装置10と被認証者装置21と認証補助装置61と検証装置31と被認証者特定装置50とを有する。グループ管理装置10はグループを管理する。被認証者装置21は、グループ管理装置10が管理するグループに所属する被認証者が操作する。認証補助装置61は上記認証データ生成行為の補助を行う。検証装置31は、認証を試みているユーザがグループに所属していることを検証する。被認証者特定装置50は、何らかの問題が起こった場合に被認証者の匿名性を剥奪する。
グループ管理装置10と被認証者装置21、グループ管理装置10と認証補助装置41、グループ管理装置10と被認証者特定装置50、被認証者装置21と検証装置31、被認証者装置21と認証補助装置41、検証装置41と被認証者特定装置50はそれぞれインターネットなどのネットワークを通じて互いに接続されている。
なお、複数のグループが存在する場合、グループごとにグループ管理装置は存在し、各グループに複数の被認証者装置および検証装置が存在してもよい。また、グループに対応したグループの暗号化鍵 enc_g が被認証者装置21に入力される。グループの暗号化鍵 enc_g に対応したグループの復号鍵 dec_g が認証補助装置61および被認証者特定装置50に入力される。これらの暗号化鍵・復号鍵は、グループごとに存在する。
図11は被認証者装置21のブロック図、図12は認証補助装置61のブロック図、図13は検証装置31のブロック図である。グループ管理装置10と被認証者特定装置50は第1の実施の形態と同様のため、それらの図示は省略する。
図11に示すように、被認証者装置21は、グループ管理装置10に登録要求メッセージを送信する登録要求部21−1と、グループ管理装置10によって割り振られた、ユーザのIDとユーザの署名鍵・検証鍵ペアを記憶するID・鍵ペア記憶装置21−2と、検証装置31に認証を受ける要求メッセージを送信する認証要求部21−3を有する。被認証者装置21はさらに、認証データ生成の際にユーザの署名鍵を用いて署名生成を行う署名生成部21−4と、グループの暗号化鍵を受信し、暗号文を生成し、認証補助装置61に認証補助要求データを送信する認証補助要求部21−5と、認証補助データを受信し、アンリンカブル認証データを生成するアンリンカブル認証データ生成部21−6を有する。
図12に示すように、認証補助装置61は、認証補助要求とグループの復号鍵を受信し、暗号文の復号を行う復号部61−1と、メンバーリストを受信し、署名の検証を行う署名検証部61−2と、グループの署名鍵を受信し、暗号文にグループの署名を施すグループの署名生成部61−3とを有する。
図13に示すように、検証装置31は、認証要求を受信し、チャレンジを生成するチャレンジ生成部31−1と、アンリンカブル認証データとグループの検証鍵を受信し、検証を行う検証部31−2を有する。検証装置31はさらに、認証の履歴として、アンリンカブル認証データを記憶するアンリンカブル認証データ記憶装置31−3と、アンリンカブル認証データ記憶装置31−3に記憶されているアンリンカブル認証データに対して、匿名性剥奪要求を被認証者特定装置に送信する被認証者特定要求部31−4を有する。
本実施の形態における事前処理(入会登録処理)は、第1の実施の形態の事前処理(入会登録処理)と同様のため、その説明は省略する。
認証処理の流れについて図14を参照して説明する。
ここでは例として、署名鍵 sk_u,検証鍵 vk_u を持つユーザUが登録を済ませ、ID・鍵ペア記憶装置21−2には、(ID_u, (sk_u, vk_u)) が記憶されていることとして、説明する。
まず被認証者装置21の認証要求部21−3は、検証装置31に認証要求 req_a を送信する(ステップ401)。認証要求 req_a を受信したチャレンジ生成部31−1は、ランダムなメッセージであるチャレンジ nonce を生成し、被認証者装置21に送信する(ステップ402)。チャレンジ nonce を受信した署名生成部21−4は、ID・鍵ペア記憶装置21−2に記憶されている sk_u を用いて、チャレンジ nonce に対するユーザUの署名σを生成する(ステップ403)。次に、グループの暗号化鍵 enc_g を受信した認証補助要求部21−5は、ID_u||σを暗号化し、暗号文Cを生成する。さらに、暗号文Cを含む認証補助要求データ req_h を認証補助装置61に送信する(ステップ404)。認証補助要求データ req_h とグループの復号鍵 dec_g を受信した復号部61−1は、認証補助要求データ req_h に含まれる暗号文Cを復号し、復号データを ID||σとパースする(ステップ405)。次に、グループ管理装置10のメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した署名検証部61−2は、メンバーリスト List に ID が記載されているか確認する。ID がメンバーリスト List に記載されていたら、ID に対応する検証鍵 vk を用いて σ の検証を行う(ステップ406)。ID がメンバーリスト List に記載されていない、あるいは、σ の検証結果が不受理であった場合、以降の動作を停止する。ID がメンバーリスト List に記載されている、かつ、ID に対応する検証鍵 vk を用いて σ が受理された場合、グループの署名鍵 sk_g を受信したグループの署名生成部61−3は、暗号文Cにグループの署名鍵 sk_g を用いて署名を施し、署名σ_g を生成する。さらに、署名σ_g を含む認証補助データ ans_h を被認証者装置21に送信する(ステップ407)。認証補助データ ans_h を受信したアンリンカブル認証データ生成部21−6は、認証補助データ ans_h に含まれる署名σ_g を含むアンリンカブル認証データ response を検証装置31に送信する(ステップ408)。アンリンカブル認証データ response およびグループの検証鍵 vk_g を受信した検証部31−2は、アンリンカブル認証データ response に含まれる署名σ_g の検証を行う。検証結果が受理であったら、認証結果 result を認証成功として出力する。さらに、アンリンカブル認証データ response をアンリンカブル認証データ記憶装置31−3に保存する。また、検証結果が不受理であったら、認証結果 result を認証失敗として出力する(ステップ409)。ただし、認証が失敗したアンリンカブル認証データも、アンリンカブル認証データ記憶装置31−3に記憶しても構わない。アンリンカブル認証データから被認証者の特定を行う処理は第1の実施形態と同様のため、その説明は省略する。
なお、第2の実施形態の変形例として次の構成が可能である。被認証者装置21は、グループの暗号化鍵を受信し、暗号文を生成し、認証補助装置61に認証補助要求データを送信する認証補助要求部21−5と、認証補助装置61から認証補助データを受信し、アンリンカブル認証データを生成するアンリンカブル認証データ生成部21−6を少なくとも有する。検証装置31は、アンリンカブル認証データとグループの検証鍵を受信し、検証を行う検証部31−2を少なくとも有する。被認証者特定装置50は、アンリンカブル認証データとグループの秘密鍵を入力し、被認証者の特定を行う被認証者特定部50−2を少なくとも有する。
[第3の実施形態]
図15に示すように、本発明の第3の実施形態による匿名認証システムはグループ管理装置10と被認証者装置21と認証補助装置62と検証装置30と検証補助装置42と被認証者特定装置50とを有している。グループ管理装置10はグループを管理する。被認証者装置21は、グループ管理装置10が管理するグループに所属する被認証者が操作する。認証補助装置62は認証データ生成行為の補助を行う。検証装置30は、認証を試みているユーザがグループに所属していることを検証する。検証補助装置42は上記検証行為の補助を行う。被認証者特定装置50は、何らかの問題が起こった場合に被認証者の匿名性を剥奪する。
グループ管理装置10と被認証者装置21、グループ管理装置10と検証補助装置42、グループ管理装置10と被認証者特定装置50、被認証者装置21と検証装置30、被認証者装置21と認証補助装置62、検証装置30と検証補助装置42、検証装置42と被認証者特定装置50はそれぞれインターネットなどのネットワークを通じて接続されている。
なお、複数のグループが存在する場合、グループごとにグループ管理装置は存在し、各グループに複数の被認証者装置および検証装置が存在してもよい。また、グループに対応したグループの暗号化鍵 enc_g が被認証者装置22に入力される。グループの暗号化鍵 enc_g に対応したグループの復号鍵 dec_g が、認証補助装置62および被認証者特定装置52に入力される。これらの暗号化・復号鍵はグループごとに存在する。さらに、認証用共有鍵 ck_g が認証補助装置62および検証補助装置42に入力される。
図16は認証補助装置62のブロック図、図17は検証補助装置42のブロック図である。グループ管理装置10と検証装置30と被認証者特定装置50は第1の実施の形態と同様のため、図示を省略する。また、被認証者装置21は第2の実施の形態と同様のため、図示を省略する。
図16に示すように、認証補助装置62は、認証補助要求とグループの復号鍵を受信し、暗号文の復号を行う復号部62−1と、メンバーリストを受信し、署名の検証を行う署名検証部62−2と、認証用共有鍵を受信し、暗号文にメッセージ認証子をつけるメッセージ認証子生成部62−3とを有する。
図17に示すように、検証補助装置42は、検証補助要求を受信し、検証補助要求に含まれる暗号文につけられたメッセージ認証子の検証を行うメッセージ認証子検証部42−1を有する。
本実施の形態における事前処理(入会登録処理)は、第1の実施の形態の事前処理(入会登録処理)と同様のため、その説明を省略する。
認証処理の流れについて、図18、19を参照して説明する。ここでは例として、署名鍵 sk_u,検証鍵 vk_u を持つユーザUが登録を済ませ、ID・鍵ペア記憶装置21−2には、(ID_u, (sk_u, vk_u)) が記憶されていることとして、説明する。
まず、被認証者装置21の認証要求部21−3は、検証装置30に認証要求 req_a を送信する(ステップ501)。認証要求 req_a を受信したチャレンジ生成部30−1は、ランダムなメッセージであるチャレンジ nonce を被認証者装置21に送信する(ステップ502)。チャレンジ nonce を受信した署名生成部21−4は、ID・鍵ペア記憶装置21−2に記憶されている sk_u を用いて、チャレンジ nonce に対するユーザUの署名σを生成する(ステップ503)。次に、グループの暗号化鍵 enc_g を受信した認証補助要求部21−5はID_u||σを暗号化し、暗号文Cを生成する。さらに、暗号文Cを含む、認証補助要求データ req_h を認証補助装置62に送信する(ステップ504)。認証補助要求データ req_h とグループの復号鍵 dec_g を受信した復号部62−1は、認証補助要求データ req_h に含まれる暗号文Cを復号し、復号データを ID||σとパースする(ステップ505)。次に、グループ管理装置10のメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した署名検証部62−2は、メンバーリストList に ID が記載されているか確認する。ID がメンバーリスト List に記載されていたら、ID に対応する検証鍵 vk を用いて σ の検証を行う(ステップ506)。ID がメンバーリスト List に記載されていない、あるいは、σ の検証結果が不受理であった場合、以降の動作を停止する。ID がメンバーリスト List に記載されている、かつ、ID に対応する検証鍵 vk を用いて σ が受理された場合、認証用共有鍵 ck_g を受信したメッセージ認証子生成部62−3は、暗号文Cのメッセージ認証子 MAC_C を生成する。さらに、(C, MAC_C) を含む認証補助データ ans_h を被認証者装置21に送信する(ステップ507)。認証補助データ ans_h を受信したアンリンカブル認証データ生成部21−6は、認証補助データ ans_h に含まれる(C, MAC_C)を含むアンリンカブル認証データ response を検証装置30に送信する(ステップ508)。アンリンカブル認証データ response を受信した検証補助要求部30−2は、アンリンカブル認証データ response に含まれる (C, MAC_C) を含む検証補助要求データ req_v を検証補助装置42に送信する(ステップ509)。検証補助要求データ req_v と認証用共有鍵 ck_g を受信したメッセージ認証子検証部42−1は、検証補助要求データ req_v に含まれる (C, MAC_C) の検証を行う。検証結果(受理または不受理)を検証補助データ ans_v として、検証装置30に送信する(ステップ510)。検証補助データ ans_v を受信した検証部30−3は、認証結果 result を生成し、出力する。ただし、検証補助データ ans_v が受理であった場合、検証結果 result は認証成功、検証補助データ ans_v が不受理であった場合、検証結果 result は認証失敗、となる。さらに、認証に成功したアンリンカブル認証データ response を、アンリンカブル認証データ記憶装置30−4に記憶する(ステップ511)。ただし、認証が失敗したアンリンカブル認証データも、アンリンカブル認証データ記憶装置30−4に記憶しても構わない。アンリンカブル認証データから被認証者の特定を行う処理は第1の実施の形態と同様のため、その説明は省略する。
なお、第3の実施形態の変形例として次の構成が可能である。被認証者装置21は、グループの暗号化鍵を受信し、暗号文を生成し、認証補助装置61に認証補助要求データを送信する認証補助要求部21−5と、認証補助装置61から認証補助データを受信し、アンリンカブル認証データを生成するアンリンカブル認証データ生成部21−6を少なくとも有する。検証装置30は、検証補助装置40に対して、検証の補助行為を依頼する検証補助要求を出力する検証補助要求部30−2と、検証補助要求に応答した検証補助装置40から検証補助データを受信し、また被認証者装置20からアンリンカブル認証データを入力し、検証結果を出力する検証部30−3とを少なくとも有する。被認証者特定装置50は、アンリンカブル認証データとグループの秘密鍵を入力し、被認証者の特定を行う被認証者特定部50−2を少なくとも有する。
[具体例1]
本具体例は、第1の実施の形態による匿名認証システムを、公開鍵暗号方式および電子署名方式を用いて実現する場合の例である。
本発明が用いる公開鍵暗号方式として、例えば,文献:R. Cramer and V. Shoup.「 Design and Analysis of Practical Public-Key Encryption Schemes Secure against Adaptive Chosen Ciphertext Attack」In Advances in Cryptology-Crypto'98, pp. 13-25, 1998. (参考文献1)に記載されている公開鍵暗号方式(以下、Cramer-Shoup 暗号方式)を用いることができる。さらに本発明が用いる電子署名方式として、文献:R. Cramer and V. Shoup.「 Signature Schemes Based on the Strong RSA Assumption」. ACM Transactions on Information and System Security (ACM TISSEC), 3(3), pp. 161-185, 2000. (参考文献2)に記載されている電子署名方式(以下、Cramer-Shoup 署名方式)を用いることができる。また、本発明においては、参考文献1に記載の Cramer-Shoup 暗号方式だけでなく、例えば RSA-OAEP 暗号方式など、暗号文からメッセージに関する情報が全く漏れないという安全性が数学的に証明可能な公開鍵暗号方式であれば、他の公開鍵暗号方式であってもよい。RSA-OAEP 暗号方式 は、文献: R. Rivest, A. Shamir and L. Adleman. 「A Method for Obtaining Digital Signatures and Public-Key」 Cryptosystems. Communications of the ACM, 21(2), pp. 120-126, 1978.(参考文献3)に記載されている RSA 暗号方式と、文献:M. Bellare and P. Rogaway. 「Optimal Asymmetric Encryption - How to Encrypt with RSA」 In Advancesin Cryptology-Eurocrypt ’94, pp. 92-111, Springer-Verlag, 1994.(参考文献4)に記載されている Optimal Asymmetric Encryption Padding(OAEP)を組み合わせた素因数分解問題に基づく公開鍵暗号方式である。同様に、参考文献2に記載の Cramer-Shoup 署名方式だけでなく、例えば Fiat-Shamir 署名方式など、ある検証鍵で受理される署名データは、その検証鍵に対応した署名鍵を知らないと生成できないという安全性が数学的に証明可能な電子署名方式であれば、他の電子署名方式であってもよい。Fiat-Shamir 署名方式は、文献:Fiat, A., and A. Shamir, 「How to prove yourself: Practival solutions to identification and signature problems」” Proceedings of CRYPTO ’86, LNCS 263, pp. 186-197, Springer-Verlag, 1987.(参考文献5)に記載されている署名方式であって、ランダムオラクルと呼ばれる理想的なハッシュ関数の存在を仮定し、さらに素因数分解仮定という数学的な仮定をおくことにより安全性を証明できる電子署名方式である。
まず、Cramer-Shoup 暗号方式について説明する。Cramer-Shoup 暗号方式は、公開鍵暗号方式であって、DDH 仮定と呼ばれる数学的な仮定をおくことにより安全性を証明できる公開鍵暗号方式である。Cramer-Shoup 暗号は、鍵セットアップ、暗号化処理、復号処理の3つの構成要素からなる。
ここでは,ボブがアリスにメッセージを送信することを例として説明する。
まず、鍵セットアップについて説明する.アリスは位数 q の巡回群Gを生成し、2つの異なる生成元 g_1, g_2 をランダムに選ぶ。さらに、アリスは 素数 q を法とする剰余群(以降 Z_{q} と表記する)からランダムに6つの値 x_1, x_2, y_1, y_2, z_1, z_2 を選ぶ.次に、アリスは、c=g_1^{x_1}・g_2^{x_2}、d=g_1^{y_1}・g_2^{y_2}、h=g_1^{z_1}・g_2^{z_2} を計算する。また、アリスは衝突困難なハッシュ関数 H を選ぶ。ハッシュ関数 H は、3つのGの元から Z_{q} へのハッシュ関数である。このとき、アリスの暗号化鍵は (G, g_1, g_2, (c, d, h), H) となる。また、アリスの復号鍵は (x_1, x_2, y_1, y_2, z_1, z_2) となる。アリスは暗号化鍵を公開し、ボブはアリスの暗号化鍵を受信している。
次に、暗号化処理について説明する。ここではボブがアリスにメッセージとして、巡回群Gの元 m を暗号化して送信することとする。ボブはランダムな値 k を Z_{q} から選ぶ。さらに、u_1=g_1^{k}、u_2=g_2^{k}、e=h^{k}・m、α= H(u_1, u_2, e)、v=c^{k}d^{k・α} を計算する。ボブは (u_1, u_2, e, v) を暗号文として、アリスに送信する。
次に、復号処理について説明する。アリスは、α=H(u_1, u_2, e) を計算し、v=u_1^{x_1+α・y_1}・u_2^{x_2+α・y_2}が成立することを確認する。もしも等式が成立していなかったら、復号不可能な暗号文が送られてきたとして、以降の処理を中止する。等式が成立していたら、アリスは、m=e/(u_1^{z_1}・u_2^{z_2}) を計算し、メッセージ m を得る。
次に、Cramer-Shoup 署名について説明する。Cramer-Shoup 署名方式は、電子署名方式であって、強 RSA 仮定と呼ばれる数学的な仮定をおくことにより安全性を証明できる電子署名方式である。Cramer-Shoup 署名は、鍵セットアップ、署名生成処理、署名検証処理の3つの構成要素からなる。
まず、鍵セットアップについて説明する。2つの異なるセキュリティパラメータ k, k' を選び、k ビットの素数 p, q をランダムに選ぶ。このとき、素数 p,q は素数 p', q' に対して、p=2p'+1、q=2q'+1を満たすように選ぶ。次に、n=p・q を計算する。以降、法 n に対して、x^{2}≡a (mod n) を満たす a の集合を QR(n) と表記する。次に、QR(n) からランダムな2つの要素 h, x を選ぶ。さらに、(k'+1) ビットの素数 e' を選ぶ。また、衝突困難なハッシュ関数 H' を選ぶ。ハッシュ関数 H' は、任意の長さのバイナリ系列の集合から k'+1 ビット長のバイナリ系列の集合へのハッシュ関数である。このとき、検証鍵は ((n, h, x, e'), H') で、公開されている。検証鍵に対応する署名鍵は (p, q) である。
次に、署名生成処理について説明する。ここでは、メッセージ m に対して署名を施すこととする。署名者はまず、H'(m) を計算する。次に、e' とは異なる k'+1 ビットの素数 e と QR(n) の元 y' をランダムに選び、y'^{e'}=x'・h^{H'(m)} mod n を満たす x' を計算する。同様にして、y^{e}=x・h^{H'(x')} mod n を満たす y を計算する。署名データを (e, y, y') とする。
次に、署名検証処理について説明する。検証者はまず、e が e' とは異なる k'+1 ビットの素数であることを確認する。次に、x'=(y')^{e'}・h^{-H'(m)} を計算し、x=y^{e}・h^{-H'(x')} が成立することを確認する。等号が成立していたら受理を、等号が成立していなかったら不受理を出力する。
次に、具体的な例を用いて本発明を実施する動作を説明する。本具体例は、第1の実施の形態による匿名認証システムを、Cramer-Shoup 暗号方式および Cramer-Shoup 署名方式を用いて実施する場合の例である。ここでは例として、グループの暗号化鍵 enc_g として、Cramer-Shoup 暗号の暗号化鍵 enc_g=(G, g_1, g_2, (c_g, d_g, h_g), H_g) が公開されていることとする。また、対応する復号鍵 dec_g を dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) とする。さらに、グループに加入しようとするユーザ U は、Cramer-Shoup 署名の署名鍵 sk_u=(p_u, q_u) および対応する検証鍵 vk_u=((n_u, h_u, x_u, e'_u), H'_u) を持つこととして説明する。
まず、認証の際の事前処理(入会登録処理)について説明する。ユーザUは署名鍵・検証鍵ペア(sk_u,vk_u)を被認証者装置20に入力する。検証鍵 vk_u を受信した登録要求部20−1は、グループ管理装置10に登録要求 req_r を送信する。このとき登録要求 req_r には、ユーザUの検証鍵 vk_u,および住所、氏名、年齢など、登録に必要な個人情報が含まれている。登録要求 req_r を受信した登録処理部10−1は、ユーザUに対する固有のID ID_u を発行し、被認証者装置20に ID_u を送信する。ただし、登録に何らかの条件(性別制限、年齢制限、2重登録禁止など)がある場合、登録要求 req_r にしたがって登録処理部10−1が審査を行い、条件を満たさないユーザUからの登録要求であった場合、登録不可を被認証者装置20に送信してもよい。ユーザが登録不可であった場合、そのユーザに対する以降のやり取りは中止する。グループ管理装置10は、メンバー登録情報記憶装置10−2よりメンバーリスト List を受信し、(ID_u, req_r)をメンバーリスト List に追記し、更新されたメンバーリスト List をメンバー登録情報記憶装置10−2に記憶する。ID_u を受信した被認証者装置20は、(ID_u, (sk_u, vk_u))をID・鍵ペア記憶装置20−2に記憶する。
次に、認証処理の流れについて説明する。ここでは例として、署名鍵 sk_u,検証鍵 vk_u を持つユーザUが登録を済ませ、ID・鍵ペア記憶装置20−2には、(ID_u, (sk_u, vk_u)) が記憶されていることとして、説明する。
まず、被認証者装置20の認証要求部20−3は、検証装置30に認証要求 req_a を送信する。認証要求 req_a は、システムによって定められた定型文でよい。認証要求 req_a を受信したチャレンジ生成部30−1は、ランダムに nonce を選び、nonce を被認証者装置20に送信する。チャレンジ nonce を受信した署名生成部20−4は、ID・鍵ペア記憶装置20−2に記憶されている sk_u を用いて、H'_u(nonce) を計算する。次に、e'_u とは異なる k'+1 ビットの素数 e と QR(n_u) の元 y' をランダムに選び、y'^{e'_u}=x'・h_u^{H'_u(nonce)} mod n_u を満たす x'_u を計算する。同様にして、y_u^{e}=x_u・h_u^{H'_u(x')} mod n_u を満たす y を計算する。署名データを σ=(e, y, y') とする。次に、グループの暗号化鍵 enc_g=(G, g_1, g_2, (c_g, d_g, h_g), H_g) を受信したアンリンカブル認証データ生成部20−5は、ランダムな値 k を Z_{q} から選ぶ。さらに、u_1=g_1^{k}、u_2=g_2^{k}、e=h_g^{k}・(ID_u||σ)、α= H_g(u_1, u_2, e)、v=c_g^{k}d_g^{k・α} を計算する。暗号文 C=(u_1, u_2, e, v) とする。さらに、アンリンカブル認証データ response=(nonce, C) を検証装置30に送信する。
アンリンカブル認証データ response を受信した検証補助要求部30−2は、暗号文Cを含む検証補助要求データ req_v=response を、検証補助装置40に送信する。検証補助要求データ req_v とグループの復号鍵 dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) を受信した認証データ復号部40−1は、検証補助要求データ req_v に含まれる暗号文C=(u_1, u_2, e, v) から、α=H_g(u_1, u_2, e) を計算し、v=u_1^{x_{g,1}+α・y_{g,1}}・u_2^{x_{g,2}+α・y_{g,2}}が成立することを確認する。もしも等式が成立していなかったら、復号不可能な暗号文が送られてきたとして、以降の処理を中止する。等式が成立していたら、m=e/(u_1^{z_{g,1}}・u_2^{z_{g,2}}) を計算し、メッセージ m を得る。さらに、結果得られたメッセージ m を ID||σ とパースする。つまり、m を ID,σ=(e, y, y')に分解する。
次に、グループ管理装置10のメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した署名検証部40−2は、メンバーリスト List に ID が記載されているか確認する。記載されていない場合、不受理である旨を検証補助データ ans_v として検証装置30に送信する。記載されている場合、ID に対応する検証鍵 vk=((n, h, x, e'), H') を用いて、まず、e が e' とは異なる k'+1 ビットの素数であることを確認する。次に、x'=(y')^{e'}・h^{-H'(nonce)} を計算し、x=(y)^{e}・h^{-H'(x')} が成立することを確認する。等号が成立していたら受理を、等号が成立していなかったら不受理とする。その署名検証結果(受理または不受理)を検証補助データ ans_v として検証装置30に送信する。検証補助データ ans_v を受信した検証部30−3は、検証補助データ ans_v が受理であったら認証結果 result を認証成功として出力する。検証補助データ ans_v が不受理であったら、認証結果 result を認証失敗として出力する。さらに、認証が成功したアンリンカブル認証データ response をアンリンカブル認証データ記憶装置30−4に記憶する。ただし、認証が失敗したアンリンカブル認証データも、アンリンカブル認証データ記憶装置30−4に記憶しても構わない。
次に、アンリンカブル認証データから被認証者の特定を行う処理を説明する。ここでは例として、検証装置30の備えるアンリンカブル認証データ記憶装置30−4に記憶されている、アンリンカブル認証データ response_i を生成した被認証者のIDを特定することとして説明する。
まず、アンリンカブル認証データ記憶装置30−4に記憶されているアンリンカブル認証データ response_i=(nonce_i, C_i) を受信した検証装置30の被認証者特定要求部30−5は、被認証者特定要求データ req_t=response_i を被認証者装置50に送信する。被認証者特定要求データ req_t およびグループの復号鍵 dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) を受信した認証データ復号部50−1は、被認証者特定要求データ req_t に含まれる暗号文C_i=(u_{i,1}, u_{i,2}, e_i, v_i) から、α=H_g(u_{i,1}, u_{i,2}, e_i) を計算し、v=u_{i,1}^{x_{g,1}+α・y_{g,1}}・u_{i,2}^{x_{g,2}+α・y_{g,2}}が成立することを確認する。もしも等式が成立していなかったら、復号不可能な暗号文が送られてきたとして、以降の処理を中止する。等式が成立していたら、m_i=e_i/(u_{i,1}^{z_{g,1}}・u_{i,2}^{z_{g,2}}) を計算し、メッセージ m_i を得る。さらに、結果得られたメッセージ m_i を ID_i||σ_i とパースする。つまり、m_i を ID_i,σ_i=(e_i, y_i, y'_i)に分解する。次に、グループ管理装置10の具備するメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した被認証者特定部50−2は、ID_i がメンバーリスト List に記載されていることを確認する。ID_i がメンバーリスト List に記載されていたら、ID_i に対応する検証鍵 vk_i=((n_i, h_i, x_i, e'_i), H'_i) を用いて、まず、e_i が e'_i とは異なる k'+1 ビットの素数であることを確認する。次に、x'_i=(y'_i)^{e'_i}・h_i^{-H'_i(nonce_i)} を計算し、x_i=(y_i)^{e_i}・h_i^{-H'_i(x'_i)} が成立することを確認する。等号が成立していたら受理を、等号が成立していなかったら不受理とする。検証結果が受理であったら、アンリンカブル認証データ response_i は、ID ID_i を持つユーザの作成した認証データであると出力する。ID_i がメンバーリスト List に記載されていない、あるいは、σ_i の検証結果が不受理であった場合、被認証者特定を要求されたアンリンカブル認証データ response_i は受理されない認証データであると出力する。
[具体例2]
本具体例は、第2の実施の形態による匿名認証システムを、Cramer-Shoup 暗号方式および Cramer-Shoup 署名方式を用いて実施する場合の具体例である。
ここでは、グループの暗号化鍵 enc_g として、Cramer-Shoup 暗号の暗号化鍵 enc_g=(G, g_1, g_2, (c_g, d_g, h_g), H_g) が公開されていることとする。また、対応する復号鍵 dec_g を dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) とする。グループの署名鍵 sk_g として、Cramer-Shoup 署名の署名鍵 sk_g=(p_g, q_g) および対応する検証鍵 vk_g=((n_g, h_g, x_g, e'_g), H'_g) を持つこととする。さらに、グループに加入しようとするユーザ U は、Cramer-Shoup 署名の署名鍵 sk_u=(p_u, q_u) および対応する検証鍵 vk_u=((n_u, h_u, x_u, e'_u), H'_u) を持つこととして説明する。
本具体例における事前処理(入会登録処理)は、第1の具体例の事前処理(入会登録処理)と同様のため、その説明は省略する。
認証処理の流れについて説明する。
まず、被認証者装置21の認証要求部21−3は、検証装置31に認証要求 req_a を送信する。認証要求 req_a は、システムによって定められた定型文でよい。認証要求 req_a を受信したチャレンジ生成部31−1は、ランダムに nonce を選び、nonce を被認証者装置21に送信する。チャレンジ nonce を受信した署名生成部21−4は、ID・鍵ペア記憶装置21−2に記憶されている sk_u を用いて、まず、H'_u(nonce) を計算する。次に、e'_u とは異なる k'+1 ビットの素数 e と QR(n_u) の元 y' をランダムに選び、y'^{e'_u}=x'・h_u^{H'_u(nonce)} mod n_u を満たす x'_u を計算する。同様にして、y_u^{e}=x_u・h_u^{H'_u(x')} mod n_u を満たす y を計算する。署名データを σ=(e,y, y') とする。次に、グループの暗号化鍵 enc_g=(G, g_1, g_2, (c_g, d_g, h_g), H_g) を受信した認証補助要求部21−5は、ランダムな値 k を Z_{q} から選ぶ。さらに、u_1=g_1^{k}、u_2=g_2^{k}、e=h_g^{k}・(ID_u||σ)、α= H_g(u_1, u_2, e)、v=c_g^{k}d_g^{k・α} を計算する。暗号文 C=(u_1, u_2, e, v) とする。さらに、認証補助要求データ req_h=(nonce, C) を認証補助装置61に送信する。
認証補助要求データ req_h とグループの復号鍵 dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) を受信した復号部61−1は、認証補助要求データ req_h に含まれる暗号文Cから、α=H_g(u_1, u_2, e) を計算し、v=u_1^{x_{g,1}+α・y_{g,1}}・u_2^{x_{g,2}+α・y_{g,2}}が成立することを確認する。もしも等式が成立していなかったら、復号不可能な暗号文が送られてきたとして、以降の処理を中止する。等式が成立していたら、m=e/(u_1^{z_{g,1}}・u_2^{z_{g,2}}) を計算し、メッセージ m を得る。さらに、結果得られたメッセージ m を ID||σ とパースする。つまり、m を ID,σ=(e, y, y')に分解する。
次に、グループ管理装置10のメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した署名検証部61−2は、メンバーリスト List に ID が記載されているか確認する。ID がメンバーリスト List に記載されていたら、ID に対応する検証鍵 vk を用いて、まず、e が e' とは異なる k'+1 ビットの素数であることを確認する。次に、x'=(y')^{e'}・h^{-H'(nonce)} を計算し、x=(y)^{e}・h^{-H'(x')} が成立することを確認する。等号が成立していたら受理を、等号が成立していなかったら不受理とする。ID がメンバーリスト List に記載されていない、あるいは、σ の検証結果が不受理であった場合、以降の動作を停止する。ID がメンバーリスト List に記載されている、かつ、ID に対応する検証鍵 vk を用いて σ が受理された場合、グループの署名鍵 sk_g=(p_g, q_g) を受信したグループの署名生成部61−3は、グループの署名鍵 sk_g=(p_g, q_g) を用いて、まず、H'_g(nonce||C) を計算する。次に、e'_g とは異なる k'+1 ビットの素数 e_g と QR(n_g) の元 y'_g をランダムに選び、y'_g^{e'_g}=x'・h_g^{H'_g(nonce||C)} mod n_g を満たす x'_g を計算する。同様にして、y_g^{e_g}=x_g・h_g^{H'_g(x')} mod n_u を満たす y_g を計算する。署名データを σ_g=(e_g, y_g, y'_g) とする。さらに、認証補助データ ans_h=(nonce, C, σ_g) を被認証者装置21に送信する。認証補助データ ans_h を受信したアンリンカブル認証データ生成部21−6は、アンリンカブル認証データ response=ans_h を検証装置31に送信する。
アンリンカブル認証データ response およびグループの検証鍵 vk_g を受信した検証部31−2は、検証鍵 vk_g=((n_g, h_g, x_g, e'_g), H'_g) を用いて、まず、e_g が e'_g とは異なる k'+1 ビットの素数であることを確認する。次に、x'_g=(y'_g)^{e'_g}・h_g^{-H'_g(nonce||C)} を計算し、x_g=(y_g)^{e_g}・h_g^{-H'_g(x'_g)} が成立することを確認する。等号が成立していたら受理を、等号が成立していなかったら不受理とする。また、検証結果が不受理であったら、認証結果 result を認証失敗として出力する。ただし、認証が失敗したアンリンカブル認証データも、アンリンカブル認証データ記憶装置31−3に記憶しても構わない。
アンリンカブル認証データから被認証者の特定を行う処理は実施例1と同様のため、その説明は省略する。
[第3の具体例]
本具体例は、第3の実施の形態による匿名認証システムを、公開鍵暗号方式、電子署名方式およびメッセージ認証方式を用いて実現する場合の具体例である。
メッセージ認証方式とはメッセージの同一性の保証であり、コンピュータウイルス、不正侵入等を使った破壊行為によりメッセージが変更されていないことを保証する。なお、本具体例では、本発明が用いる公開鍵暗号方式として、Cramer-Shoup 暗号方式を、電子署名方式として、Cramer-Shoup 署名方式を、メッセージ認証方式として、例えば、文献:Mihir Bellare, Ran Canetti, Hugo Krawczyk,「Keying Hash Functions for Message Authentication」,In Advances in Cryptology - Crypto'96, LNCS 1109, 1996.(参考文献6)に記載されているメッセージ認証方式(以降、HMACと表記する)を用いることができる。HMACには、ハッシュ関数 H を用いる.ハッシュ関数としては、MD5、SHA-1、SHA-224、SHA-256 など任意のハッシュ関数を用いることができる。秘密鍵を K としたとき、メッセージ m に対する HMAC は次のように定義される:
HMAC_{K}(m) = h((K XOR opad)||h((K+ipad)||m)).
ここで、XOR はビットごとの排他的論理和を表す。すなわち、A=1001、B=1100 としたとき、(A XOR B)=0101 となる。また、opad、ipad は長さがハッシュ関数のブロック長サイズである定数で、それぞれ opad=0x5c5c5c...5c、ipad=0x363636...36 と定義される。例えば、256ビットのブロック長を持つハッシュ関数を利用した場合、opad、ipad はそれぞれ32個の 0x5c や 0x36 の連続した値となる。以降、HMAC_{K}(m) を m のMAC値と呼ぶ。
次に、具体例を用いて本発明を実施するための動作を説明する。
本具体例は、本発明の第3の実施の形態による匿名認証システムを、Cramer-Shoup 暗号方式、Cramer-Shoup 署名方式、および HMAC を用いて実施実現する場合の具体例である。ここでは例として、グループの暗号化鍵 enc_g として、Cramer-Shoup 暗号の暗号化鍵 enc_g=(G, g_1, g_2, (c_g, d_g, h_g), H_g) が公開されていることとする。また、対応する復号鍵 dec_g を dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) とする。さらに、グループに加入しようとするユーザ U は、Cramer-Shoup 署名の署名鍵 sk_u=(p_u, q_u) および対応する検証鍵 vk_u=((n_u, h_u, x_u, e'_u), H'_u) を持つこととして説明する。また、認証補助装置62と検証補助装置42は、認証用共有鍵 ck_g = K として、HMAC の秘密鍵を共有している。
本具体例における事前処理(入会登録処理)は、第1の具体例の事前処理(入会登録処理)と同様のため、その説明は省略する。
認証処理の流れについて説明する。
まず、被認証者装置21の認証要求部21−3は、検証装置31に認証要求 req_a を送信する。認証要求 req_a は、システムによって定められた定型文でよい。認証要求 req_a を受信したチャレンジ生成部30−1は、ランダムに nonce を選び、nonce を被認証者装置21に送信する。チャレンジ nonce を受信した署名生成部21−4は、ID・鍵ペア記憶装置21−2に記憶されている sk_u を用いて、H'_u(nonce) を計算する。次に、e'_u とは異なる k'+1 ビットの素数 e と QR(n_u) の元 y' をランダムに選び、y'^{e'_u}=x'・h_u^{H'_u(nonce)} mod n_u を満たす x'_u を計算する。同様にして、y_u^{e}=x_u・h_u^{H'_u(x')} mod n_u を満たす y を計算する。署名データを σ=(e, y, y') とする。次に、グループの暗号化鍵 enc_g=(G, g_1, g_2, (c_g, d_g, h_g), H_g) を受信したアンリンカブル認証データ生成部21−5は、ランダムな値 k を Z_{q} から選ぶ。さらに、u_1=g_1^{k}、u_2=g_2^{k}、e=h_g^{k}・(ID_u||σ)、α= H_g(u_1, u_2, e)、v=c_g^{k}d_g^{k・α} を計算する。暗号文 C=(u_1, u_2, e, v) とする。さらに、アンリンカブル認証データ response=(nonce, C) を認証補助装置62に送信する。
認証補助要求データ req_h とグループの復号鍵 dec_g=(x_{g,1}, x_{g,2}, y_{g,1}, y_{g,2}, z_{g,1}, z_{g,2}) を受信した復号部62−1は、認証補助要求データ req_h に含まれる暗号文Cから、α=H_g(u_1, u_2, e) を計算し、v=u_1^{x_{g,1}+α・y_{g,1}}・u_2^{x_{g,2}+α・y_{g,2}}が成立することを確認する。もしも等式が成立していなかったら、復号不可能な暗号文が送られてきたとして、以降の処理を中止する。等式が成立していたら、m=e/(u_1^{z_{g,1}}・u_2^{z_{g,2}}) を計算し、メッセージ m を得る。さらに、結果得られたメッセージ m を ID||σ とパースする。つまり、m を ID,σ=(e, y, y')に分解する。
次に、グループ管理装置10のメンバー登録情報記憶装置10−2に記憶されているメンバーリスト List を受信した署名検証部62−2は、メンバーリスト List に ID が記載されているか確認する。ID がメンバーリスト List に記載されていたら、ID に対応する検証鍵 vk を用いて、まず、e が e' とは異なる k'+1 ビットの素数であることを確認する。次に、x'=(y')^{e'}・h^{-H'(nonce)} を計算し、x=(y)^{e}・h^{-H'(x')} が成立することを確認する。等号が成立していたら受理を、等号が成立していなかったら不受理とする。ID がメンバーリスト List に記載されていない、あるいは、σ の検証結果が不受理であった場合、以降の動作を停止する。ID がメンバーリスト List に記載されている、かつ、ID に対応する検証鍵 vk を用いて σ が受理された場合、認証用共有鍵 ck_g=(K) を受信したメッセージ認証子生成部62−3は、認証用共有鍵 ck_g=(K) を用いて、nonce||C のMAC値 τ=HMAC_{K}(nonce||C) を計算する。さらに、認証補助データ ans_h=(nonce, C, τ) を被認証者装置21に送信する。認証補助データ ans_h を受信したアンリンカブル認証データ生成部21−6は、アンリンカブル認証データ response=ans_h を検証装置30に送信する。アンリンカブル認証データ response を受信した検証補助要求部30−2は、検証補助要求データ req_v=response を、検証補助装置42に送信する。検証補助要求データ req_v と認証用共有鍵 ck_g=(K) を受信したメッセージ認証子検証部42−1は、認証用共有鍵 ck_g=(K) を用いて、nonce||C のMAC値 τ'=HMAC_{K}(nonce||C) を計算する。τ'=τであることを確認する。すなわちτ'=τであったら、検証補助データ ans_v を受理、τ'≠τであったら、検証補助データ ans_v を不受理として、検証装置30に送信する。検証補助データ ans_v を受信した検証部30−3は、検証補助データ ans_v が受理であったら認証結果 result を認証成功、検証補助データ ans_v が不受理であったら認証結果 result を認証失敗として、出力する。さらに、認証に成功したアンリンカブル認証データ response をアンリンカブル認証データ記憶装置30−4に記憶する。ただし、認証が失敗したアンリンカブル認証データも、アンリンカブル認証データ記憶装置30−4に記憶しても構わない。アンリンカブル認証データから被認証者の特定を行う処理は第1の具体例と同様のため、その説明は省略する。
[第4の具体例]
第1の具体例において、ステップ201および202を省略し、チャレンジ nonce の代わりに被認証者装置が選んだ任意のメッセージ m を利用することも可能である。この場合、アンリンカブル認証データ response は、アンリンカブル署名データとなる。アンリンカブル署名データは、グループの復号鍵 dec_g を入力として持たない検証装置には、グループに所属するメンバーの署名であることしか伝わらないが、被認証者特定装置により署名したメンバーのIDを特定することが可能である。また、2つのアンリンカブル署名データから、それらが同一のメンバーによる署名か、異なるメンバーによる署名かの識別ができない、という性質を持つ。同様に、第2の具体例においてステップ401および402、第3の具体例においてステップ501および502を省略し、チャレンジ nonce の代わりに被認証者装置が選んだ任意のメッセージ m を利用することも可能である。
[第5の具体例]
本実施例は、本発明の匿名認証システムの事業形態を、第1の実施の形態を例にとって具体的に説明する。
図1に示す匿名認証システムにおいて、例えば、グループ管理装置10は、グループを管理する事業者(以下、グループ管理事業者と呼ぶ)によって運営される。グループ管理事業者は、例えば、インターネットサービスプロバイダーであってもよい。また、被認証者装置20は、例えば、ユーザによって運営される。ユーザは、例えば、インターネットサービスプロバイダーの会員であってもよい。検証装置30は、例えば、ユーザの登録確認を行い、サービスを提供する事業者(以下,サービスプロバイダーと呼ぶ)によって運営される。サービスプロバイダーは、例えば,公共の無線LANサービスにおけるアクセスポイントであってもよい。検証補助装置40は、例えば、検証装置30とインターネットなどで接続され,検証装置30からの検証補助要求に応える事業者(以下,検証補助事業者と呼ぶ)によって運営される。検証補助事業者は、例えば、インターネットサービスプロバイダーのオンライン検証部門であってもよい。被認証者特定装置50は、例えば、必要に応じて被認証者の匿名性を剥奪する事業者(以下、被認証者特定事業者と呼ぶ)によって運営される。被認証者特定事業者は、例えば、インターネットサービスプロバイダーの課金部門であってもよい。
このような事業形態においては、まず、グループ管理事業者が、グループの暗号化鍵 enc_g と、それに対応したグループの復号鍵 dec_g を決定し、グループに関する情報とともにグループの暗号化鍵 enc_g を、例えば新聞・ホームページなどによって公知する。さらに、グループの復号鍵 dec_g を検証補助事業者および被認証者特定事業者に送付する。次に、ユーザがグループ管理事業者の管理するグループへの入会を希望する。グループ管理事業者は、入会を希望してきたユーザがグループに加入する条件を満たしているか(年齢など)を確認し、条件を満たすユーザに対して入会手続きを行う(例えば、会員証を発行し、ユーザに送付する)。
次に、ユーザが、被認証者装置20にグループの暗号化鍵 enc_g を入力し、アンリンカブル認証データを検証装置30に送信させる(例えば、無線LANサービスを利用する際に、インターネットサービスプロバイダーの会員であることを証明する認証データを送付する)。アンリンカブル認証データを受信した検証装置30は、検証補助要求を検証補助装置40に送信し、検証補助データを得ることにより、検証を行い、認証結果を出力する(例えば、アクセスポイントは、ユーザがインターネットサービスプロバイダーの会員であることを確認し、無線LANサービスを提供する)。さらに、検証事業者は、被認証者特定装置50に対して、各ユーザのアンリンカブル認証データを含む被認証者特定要求を送信させる。被認証者特定事業者は、このようにして送信されたアンリンカブル認証データを受信して、被認証者の特定を行う。例えば、無線LANサービスを利用したユーザを特定することにより、その利用状況により課金を行う。
なお、グループ管理事業者、検証補助事業者、被認証者特定事業者は、異なる事業者であっても、同一事業者であってもよい。
なお、上記では第1の実施の形態による匿名認証システムの事業形態について、具体例を示したが、他の実施の形態においても同様の事業形態が可能である。なお、第2または第3の実施の形態による匿名認証システムの場合には、例えば、認証補助装置は認証補助を行う事業者(以下、認証補助事業者と呼ぶ)によって運営される。なお、グループ管理事業者と認証補助事業者は、同一事業者であってもよい。
なお、各装置の機能は、その機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行するものであってもよい。コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、CD−ROM等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータ読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間、動的にプログラムを保持するもの(伝送媒体もしくは伝送波)、その場合のサーバとなるコンピュータ内の揮発性メモリのように、一定時間プログラムを保持しているものを含む。
以上本発明の好ましい実施形態を特定の用語を用いて説明したが、そのような記載は例示のみを目的としており、種々の変形および修正が以下の特許請求の範囲から外れることなく可能であることが理解されるべきである。
この出願は、2007年5月24日に出願された日本出願特願2007−137852を基礎とする優先権を主張し、その開示の全てをここに取り込む。
[産業上の利用可能性]
本発明は、通信ネットワークを介して、ユーザのIDを秘匿にして認証を行う匿名認証に好適に適用できる。

Claims (12)

  1. ユーザのグループを管理するグループ管理装置と、該グループ管理装置が管理するグループに所属する被認証者が操作し、認証を要求する被認証者装置と、認証を試みているユーザがグループに所属していることを検証する検証装置と、前記検証行為の補助を行う検証補助装置と、被認証者の特定を行う被認証者特定装置を有し、
    前記被認証者装置が、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成するアンリンカブル認証データ生成部を有し、
    前記検証装置が、前記検証補助装置に対して、検証の補助行為を依頼する検証補助要求を出力する検証補助要求部と、前記検証補助要求に応答した前記検証補助装置から検証補助データを受信し、また前記被認証者装置からアンリンカブル認証データを入力し、検証結果を出力する検証部とを有し、
    前記被認証者特定装置が、前記アンリンカブル認証データとグループの秘密鍵を入力し、被認証者の特定を行う被認証者特定部を有する
    匿名認証システム。
  2. 前記グループ管理装置は、
    ユーザのグループへの登録時にユーザの署名鍵・検証鍵を受け取り、ユーザごとに固有のIDを発行する登録処理部と、
    登録されているメンバーのIDと対応する検証鍵のリストであるメンバーリストを記憶するメンバー登録情報記憶装置と
    を有し、
    前記被認証者装置は、
    ユーザがグループに加入する際にユーザの検証鍵を含む登録要求を前記グループ管理装置に送信する登録要求部と、
    ユーザが登録された結果前記グループ管理装置から送られてきたIDとユーザの署名鍵・検証鍵ペアを記憶するID・鍵ペア記憶装置と、
    ユーザが認証を受ける際に、認証要求を前記検証装置に送信する認証要求部と、
    前記認証要求の結果前記検証装置から送られてきたチャレンジおよび前記ID・鍵ペア記憶装置に記憶されているIDに対して、前記ID・鍵ペア記憶装置に記憶されている署名鍵を利用して前記チャレンジに対する、ユーザの署名を生成する署名生成部と、
    をさらに有し、
    前記アンリンカブル認証データ生成部は、ユーザのIDと署名を暗号化した暗号文を含むアンリンカブル認証データを前記検証装置に送信し、
    前記検証装置は、
    前記被認証者装置から認証要求を受信すると、ランダムなメッセージであるチャレンジを生成し、前記被認証者装置に送信するチャレンジ生成部と、
    前記被認証者装置から受信したアンリンカブル認証データを記憶しておくアンリンカブル認証データ記憶装置と、
    前記アンリンカブル認証データを生成したユーザを特定する、前記アンリンカブル認証データを含む被認証者特定要求を前記被認証者特定装置に送信する被認証者特定要求部と、
    をさらに有し、
    前記検証補助要求部は前記検証補助装置に、前記暗号文を含む検証補助要求を要求し、
    前記検証補助装置は、
    前記検証補助要求を受信すると、グループの復号鍵を用いて、前記検証補助要求に含まれる暗号文を復号し、ユーザのIDと署名を得る認証データ復号部と、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、ユーザの署名の検証を行い、その結果を前記検証補助データとして前記検証装置に送信する署名検証部と、
    を有し、
    前記被認証者特定装置は、
    前記被認証者特定要求を受信すると、グループの復号鍵を用いて、前記アンリンカブル認証データに含まれる暗号文を復号し、ユーザのIDと署名を得る認証データ復号部、
    をさらに有し、
    前記被認証者特定部は前記メンバー登録情報記憶装置からメンバーリストを受信し、前記アンリンカブル認証データを生成したユーザの特定を行う、
    請求項1に記載の匿名認証システム。
  3. ユーザのグループを管理するグループ管理装置と、該グループ管理装置が管理するグループに所属する被認証者が操作し、認証を要求する被認証者装置と、前記認証行為の補助を行う認証補助装置と、認証を試みているユーザがグループに所属していることを検証する検証装置と、被認証者の特定を行う被認証者特定装置を有し、
    前記被認証者装置が、
    前記認証補助装置に対して、認証の補助行為を依頼する認証補助要求を出力する認証補助要求部と、
    前記認証補助要求に応答した前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成するアンリンカブル認証データ生成部と、
    を有し、
    前記検証装置が、前記アンリンカブル認証データを入力とし、検証を行う検証部を有し、
    前記被認証者特定装置が、前記アンリンカブル認証データとグループの秘密鍵を入力とし、被認証者の特定を行う被認証者特定部を有する
    匿名認証システム。
  4. 前記グループ管理装置は、
    ユーザのグループへの登録時にユーザの署名鍵・検証鍵を受け取り、ユーザごとに固有のIDを発行する登録処理部と、
    登録されているメンバーのIDと対応する検証鍵のリストであるメンバーリストを記憶するメンバー登録情報記憶装置と、
    を有し、
    前記被認証者装置は、
    ユーザがグループに加入する際にユーザの検証鍵を含む登録要求を前記グループ管理装置に送信する登録要求部と、
    ユーザが登録された結果前記グループ管理装置から送られてきたIDとユーザの署名鍵・検証鍵ペアを記憶するID・鍵ペア記憶装置と、
    ユーザが認証を受ける際に、認証要求を前記検証装置に送信する認証要求部と、
    前記認証要求の結果前記検証装置から送られてきたチャレンジおよび前記ID・鍵ペア記憶装置に記憶されているIDに対して、前記ID・鍵ペア記憶装置に記憶されている署名鍵を利用して前記チャレンジに対する、ユーザの署名を生成する署名生成部と、
    をさらに有し、
    前記認証補助要求部は前記認証補助装置に対して、ユーザのIDと署名をグループの暗号化鍵を用いて暗号化した暗号文を含む、認証データ生成の補助行為を依頼する認証補助要求を送信し、
    前記アンリンカブル認証データ生成部は、前記認証補助データに含まれる署名を含むアンリンカブル認証データを前記検証装置に送信し、
    前記認証補助装置は、
    前記認証補助要求を受信すると、グループの復号鍵を用いて、前記認証補助要求に含まれる暗号文を復号し、ユーザのIDと署名を得る復号部と、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、ユーザの署名の検証を行い、その結果を前記認証補助データとして前記被認証者装置に送信する署名検証部と、
    グループの署名鍵を入力として、前記被認証者装置から受信した認証補助要求に含まれる暗号文に前記グループの署名鍵を用いて署名を施し、グループの署名を生成する、グループの署名生成部と、
    を有し、
    前記検証装置は、
    前記被認証者装置から認証要求を受信すると、ランダムなメッセージであるチャレンジを生成するチャレンジ生成部と、
    前記被認証者装置から受信したアンリンカブル認証データを記憶しておくアンリンカブル認証データ記憶装置と、
    前記アンリンカブル認証データを生成したユーザを特定する、前記アンリンカブル認証データを含む被認証者特定要求を前記被認証者特定装置に送信する被認証者特定要求部と、
    をさらに有し、
    前記検証部は前記アンリンカブル認証データとグループの検証鍵を受信し、前記アンリンカブル認証データに含まれる署名の検証を行い、認証結果を出力する、
    前記被認証者特定装置は、
    前記被認証者特定要求を受信すると、グループの復号鍵を用いて前記アンリンカブル認証データに含まれる暗号文を復号し、ユーザのIDと署名を得る認証データ復号部、
    をさらに有し、
    前記被認証者特定部は前記メンバー登録情報記憶装置からメンバーリストを受信し、アンリンカブル認証データを生成したユーザの特定を行う、
    請求項3に記載の匿名認証システム。
  5. ユーザのグループを管理するグループ管理装置と、グループのメンバーが認証を要求するための被認証者装置と、認証を試みているユーザがグループに属していることを検証する検証装置と、前記認証を補助する認証補助装置と、前記検証を補助する検証補助装置と、被認証者の特定を行う被認証者特定装置を有し、
    前記被認証者装置が、
    前記認証補助装置に対して、認証の補助行為を依頼する認証補助要求を出力する認証補助要求部と、
    前記認証補助要求に応答した前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成するアンリンカブル認証データ生成部と、
    を有し、
    前記検証装置が、
    前記検証補助装置に対して、検証の補助行為を依頼する検証補助要求を出力する検証補助要求部と、
    前記検証補助要求に応答した前記検証補助装置から検証補助データを受信し、また前記アンリンカブル認証データを入力し、検証結果を出力する検証部と、
    を有し、
    前記被認証者特定装置が、前記アンリンカブル認証データとグループの秘密鍵を入力とし、被認証者の特定を行う被認証者特定部を有する
    匿名認証システム。
  6. 前記グループ管理装置は、
    ユーザのグループへの登録時にユーザの署名検証鍵を受け取り、ユーザごとに固有のIDを発行する登録処理部と、
    登録されているメンバーのIDと対応する検証鍵のリストであるメンバーリストを記憶するメンバー登録情報記憶装置と
    を有し、
    前記被認証者装置は、
    ユーザがグループに加入する際にユーザの検証鍵を含む登録要求を前記グループ管理装置に送信する登録要求部と、
    ユーザが登録された結果前記グループ管理装置から送られてきたIDとユーザの署名鍵・検証鍵ペアを記憶するID・鍵ペア記憶装置と、
    ユーザが認証を受ける際に、認証要求を前記検証装置に送信する認証要求部と、
    前記認証要求の結果前記検証装置から送られてきたチャレンジおよび前記ID・鍵ペア記憶装置に記憶されているIDに対して、前記ID・鍵ペア記憶装置に記憶されている署名鍵を利用して前記チャレンジに対する、ユーザの署名を生成する署名生成部と、
    をさらに有し、
    前記認証補助要求部は前記認証補助装置に対して、ユーザのIDと署名をグループの暗号化鍵を用いて暗号化した暗号文を含む、認証データ生成の補助行為を依頼する認証補助要求を送信し、
    前記アンリンカブル認証データ生成部は、前記認証補助データに含まれる署名を含むアンリンカブル認証データを前記検証装置に送信し、
    前記認証補助装置は、
    前記認証補助要求を受信すると、グループの復号鍵を用いて、前記認証補助要求に含まれる暗号文を復号し、ユーザのIDと署名を得る復号部と、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、ユーザの署名の検証を行い、その結果を前記認証補助データとして前記被認証者装置に送信する署名検証部と、
    認証用共有鍵を入力して、前記被認証者装置から受信した認証補助要求に含まれる暗号文に対してメッセージ認証子を生成するメッセージ認証子生成部と、
    を有し、
    前記検証装置は、
    前記被認証者装置から認証要求を受信すると、ランダムなメッセージであるチャレンジを生成し、前記被認証者装置に送信するチャレンジ生成部と、
    前記被認証者装置から受信したアンリンカブル認証データを記憶しておくアンリンカブル認証データ記憶装置と、
    前記アンリンカブル認証データを生成したユーザを特定する、前記アンリンカブル認証データを含む被認証者特定要求を前記被認証者特定装置に送信する被認証者特定要求部と
    をさらに有し、
    前記検証補助要求部は前記検証補助装置に、前記暗号文を含む検証補助要求を出力し、
    前記検証補助装置は、前記検証補助要求と認証用共有鍵を受信すると、該検証補助要求に含まれる前記暗号文にメッセージ認証子をつけるメッセージ認証子生成部を有し、
    前記被認証者特定装置は、
    前記被認証者特定要求を受信すると、グループの復号鍵を用いて、前記アンリンカブル認証データに含まれる暗号文を復号し、ユーザのIDと署名を得る認証データ復号部をさらに有し、
    前記被認証者特定部は前記メンバー登録情報記憶装置からメンバーリストを受信し、アンリンカブル認証データを生成したユーザの特定を行う、
    請求項5に記載の匿名認証システム。
  7. ユーザのグループを管理するグループ管理装置と、グループのメンバーが認証を要求するための被認証者装置と、認証を試みているユーザがグループに属していることを検証する検証装置と、前記認証を補助する認証補助装置と、前記検証を補助する検証補助装置と、被認証者の特定を行う被認証者特定装置を有する匿名認証システムで行われる匿名認証方法であって
    前記被認証者装置が、被認証者の秘密鍵を用いて、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成し、
    前記検証装置が、前記被認証者装置からアンリンカブル認証データを入力し、前記検証補助装置に対して、検証の補助行為を依頼する検証補助要求を出力し、前記検証補助要求に応答した前記検証補助装置から検証補助データを受け取り、検証結果を計算し、
    前記被認証者特定装置が、前記アンリンカブル認証データとグループの秘密鍵を用いて、被認証者の特定を行う
    匿名認証方法。
  8. 前記グループ管理装置が、
    ユーザのグループへの登録時にユーザの署名鍵・検証鍵を受け取り、ユーザごとに固有のIDを発行するステップと、
    登録されているメンバーのIDと対応する検証鍵のリストであるメンバーリストをメンバー登録情報記憶装置に記憶するステップと
    を有し、
    前記被認証者装置が、
    ユーザがグループに加入する際にユーザの検証鍵を含む登録要求を前記グループ管理装置に送信するステップと、
    ユーザが登録された結果前記グループ管理装置から送られてきたIDとユーザの署名鍵・検証鍵ペアをID・鍵ペア記憶装置に記憶するステップと、
    ユーザが認証を受ける際に、認証要求を前記検証装置に送信するステップと、
    前記認証要求の結果前記検証装置から送られてきたチャレンジおよび前記ID・鍵ペア記憶装置に記憶されているIDに対して、前記ID・鍵ペア記憶装置に記憶されている署名鍵を利用して前記チャレンジに対する、ユーザの署名を生成するステップと、
    複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成し、ユーザのIDと署名を暗号化した暗号文を含むアンリンカブル認証データを前記検証装置に送信するステップと、
    を有し、
    前記検証装置が、
    前記被認証者装置から認証要求を受信すると、ランダムなメッセージであるチャレンジを生成し、前記被認証者装置に送信するステップと、
    前記検証補助装置に、前記暗号文を含む検証補助要求を要求するステップと、
    前記検証補助装置から検証補助データを受信し、検証を行い、認証結果を出力するステップと、
    前記被認証者装置から受信したアンリンカブル認証データをアンリンカブル認証データ記憶装置に記憶するステップと、
    前記アンリンカブル認証データを生成したユーザを特定する、前記アンリンカブル認証データを含む被認証者特定要求を前記被認証者特定装置に送信するステップと、
    を有し、
    前記検証補助装置が、
    前記検証補助要求を受信すると、グループの復号鍵を用いて、前記検証補助要求に含まれる暗号文を復号し、ユーザのIDと署名を得るステップと、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、ユーザの署名の検証を行い、その結果を前記検証補助データとして前記検証装置に送信するステップと、
    を有し、
    前記被認証者特定装置が、
    前記被認証者特定要求を受信すると、グループの復号鍵を用いて、前記アンリンカブル認証データに含まれる暗号文を復号し、ユーザのIDと署名を得るステップと、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、前記アンリンカブル認証データを生成したユーザの特定を行うステップと
    を有する
    請求項8に記載の匿名認証方法。
  9. ユーザのグループを管理するグループ管理装置と、該グループ管理装置が管理するグループに所属する被認証者が操作し、認証を要求する被認証者装置と、前記認証行為の補助を行う認証補助装置と、認証を試みているユーザがグループに所属していることを検証する検証装置と、被認証者の特定を行う被認証者特定装置を有する匿名認証システムで行われる匿名認証方法であって、
    前記被認証者装置が、被認証者の秘密鍵を用いて、前記認証補助装置に対して、認証の補助行為を依頼する認証補助要求を出力し、前記認証補助要求に応答した前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成し、
    前記検証装置が、前記アンリンカブル認証データを入力とし、検証を行い、
    前記被認証者特定者装置が、前記アンリンカブル認証データとグループの秘密鍵を入力とし、被認証者の特定を行う
    匿名認証方法。
  10. 前記グループ管理装置が、
    ユーザのグループへの登録時にユーザの署名鍵・検証鍵を受け取り、ユーザごとに固有のIDを発行するステップと、
    登録されているメンバーのIDと対応する検証鍵のリストであるメンバーリストをメンバー登録情報記憶装置に記憶するステップと、
    を有し、
    前記被認証者装置が、
    ユーザがグループに加入する際にユーザの検証鍵を含む登録要求を前記グループ管理装置に送信するステップと、
    ユーザが登録された結果前記グループ管理装置から送られてきたIDとユーザの署名鍵・検証鍵ペアをID・鍵ペア記憶装置に記憶するステップと、
    ユーザが認証を受ける際に、認証要求を前記検証装置に送信するステップと、
    前記認証要求の結果前記検証装置から送られてきたチャレンジおよび前記ID・鍵ペア記憶装置に記憶されているIDに対して、前記ID・鍵ペア記憶装置に記憶されている署名鍵を利用して前記チャレンジに対する、ユーザの署名を生成するステップと、
    前記認証補助装置に対して、ユーザのIDと署名をグループの暗号化鍵を用いて暗号化した暗号文を含む、認証データ生成の補助行為を依頼する認証補助要求を送信するステップと、
    前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを識別することが不可能なアンリンカブル認証データを生成し、前記認証補助データに含まれる署名を含むアンリンカブル認証データを前記検証装置に送信するステップと、
    を有し、
    前記認証補助装置が、
    前記認証補助要求を受信すると、グループの復号鍵を用いて、前記認証補助要求に含まれる暗号文を復号し、ユーザのIDと署名を得るステップと、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、ユーザの署名の検証を行い、その結果を前記認証補助データとして前記被認証者装置に送信するステップと、
    グループの署名鍵を入力として、前記被認証者装置から受信した認証補助要求に含まれる暗号文に前記グループの署名鍵を用いて署名を施し、グループの署名を生成するステップと、
    を有し、
    前記検証装置が、
    前記被認証者装置から認証要求を受信すると、ランダムなメッセージであるチャレンジを生成するステップと、
    前記アンリンカブル認証データとグループの検証鍵を受信し、前記アンリンカブル認証データに含まれる署名の検証を行い、認証結果を出力するステップと、
    前記被認証者装置から受信したアンリンカブル認証データをアンリンカブル認証データ記憶装置に記憶するステップと、
    前記アンリンカブル認証データを生成したユーザを特定する、前記アンリンカブル認証データを含む被認証者特定要求を前記被認証者特定装置に送信するステップと、
    を有し、
    前記被認証者特定装置が、
    前記被認証者特定要求を受信すると、グループの復号鍵を用いて前記アンリンカブル認証データに含まれる暗号文を復号し、ユーザのIDと署名を得るステップと、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、アンリンカブル認証データを生成したユーザの特定を行うステップと
    を有する
    請求項10に記載の匿名認証方法。
  11. ユーザのグループを管理するグループ管理装置と、該グループ管理装置が管理するグループに所属する被認証者が操作し、認証を要求する被認証者装置と、前記認証行為の補助を行う認証補助装置と、認証を試みているユーザがグループに所属していることを検証する検証装置と、前記検証行為の補助を行う検証補助装置と、被認証者の特定を行う被認証者特定装置とを有する匿名認証システムで行われる匿名認証方法であって、
    前記被認証者装置が、被認証者の秘密鍵を用いて、前記認証補助装置に対して、認証の補助行為を依頼する認証補助要求を出力し、前記認証補助要求に応答した前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを誰でも識別することが不可能なアンリンカブル認証データを生成し、
    前記検証装置が、前記アンリンカブル認証データを入力とし、前記検証補助装置に対して、検証の補助行為を依頼する検証補助要求を出力し、前記検証補助要求に応答した前記検証補助装置から検証補助データを受信し、検証補助データを前記検証補助装置から受け取り、検証を行い、
    前記被認証者特定装置が、前記アンリンカブル認証データとグループの秘密鍵を入力とし、被認証者の特定を行う
    匿名認証方法。
  12. 前記グループ管理装置が、
    ユーザのグループへの登録時にユーザの署名検証鍵を受け取り、ユーザごとに固有のIDを発行するステップと、
    登録されているメンバーのIDと対応する検証鍵のリストであるメンバーリストをメンバー登録情報記憶装置に記憶するステップと
    を有し、
    前記被認証者装置が、
    ユーザがグループに加入する際にユーザの検証鍵を含む登録要求を前記グループ管理装置に送信するステップと、
    ユーザが登録された結果前記グループ管理装置から送られてきたIDとユーザの署名鍵・検証鍵ペアをID・鍵ペア記憶装置に記憶するステップと、
    ユーザが認証を受ける際に、認証要求を前記検証装置に送信するステップと、
    前記認証要求の結果前記検証装置から送られてきたチャレンジおよび前記ID・鍵ペア記憶装置に記憶されているIDに対して、前記ID・鍵ペア記憶装置に記憶されている署名鍵を利用して前記チャレンジに対する、ユーザの署名を生成するステップと、
    前記認証補助装置に対して、ユーザのIDと署名をグループの暗号化鍵を用いて暗号化した暗号文を含む、認証データ生成の補助行為を依頼する認証補助要求を送信するステップと、
    前記認証補助装置から認証補助データを受信し、複数回の認証に対して、それが同一の被認証者の行為であるか異なる被認証者の行為であるかを識別することが不可能なアンリンカブル認証データを生成し、前記認証補助データに含まれる署名を含むアンリンカブル認証データを前記検証装置に送信するステップと、
    を有し、
    前記認証補助装置が、
    前記認証補助要求を受信すると、グループの復号鍵を用いて、前記認証補助要求に含まれる暗号文を復号し、ユーザのIDと署名を得るステップと、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、ユーザの署名の検証を行い、その結果を前記認証補助データとして前記被認証者装置に送信するステップと、
    認証用共有鍵を入力して、前記被認証者装置から受信した認証補助要求に含まれる暗号文に対してメッセージ認証子を生成するステップと、
    を有し、
    前記検証装置が、
    前記被認証者装置から認証要求を受信すると、ランダムなメッセージであるチャレンジを生成するステップと、
    前記検証補助装置に、前記暗号文を含む検証補助要求を出力するステップと、
    前記検証補助装置から検証補助データを受信し、検証を行い、認証結果を出力するステップと、
    前記被認証者装置から受信したアンリンカブル認証データをアンリンカブル認証データ記憶装置に記憶するステップと、
    前記アンリンカブル認証データを生成したユーザを特定する、前記アンリンカブル認証データを含む被認証者特定要求を前記被認証者特定装置に送信するステップと
    を有し、
    前記検証補助装置が、前記検証補助要求と認証用共有鍵を受信すると、該検証補助要求に含まれる前記暗号文にメッセージ認証子をつけるステップを有し、
    前記被認証者特定装置が、
    前記被認証者特定要求を受信すると、グループの復号鍵を用いて、前記アンリンカブル認証データに含まれる暗号文を復号し、ユーザのIDと署名を得るステップと、
    前記メンバー登録情報記憶装置からメンバーリストを受信し、アンリンカブル認証データを生成したユーザの特定を行うステップと
    を有する
    請求項11に記載の匿名認証方法。
JP2009516261A 2007-05-24 2008-05-21 匿名認証システムおよび匿名認証方法 Expired - Fee Related JP5201136B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009516261A JP5201136B2 (ja) 2007-05-24 2008-05-21 匿名認証システムおよび匿名認証方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007137852 2007-05-24
JP2007137852 2007-05-24
JP2009516261A JP5201136B2 (ja) 2007-05-24 2008-05-21 匿名認証システムおよび匿名認証方法
PCT/JP2008/059307 WO2008146667A1 (ja) 2007-05-24 2008-05-21 匿名認証システムおよび匿名認証方法

Publications (2)

Publication Number Publication Date
JPWO2008146667A1 true JPWO2008146667A1 (ja) 2010-08-19
JP5201136B2 JP5201136B2 (ja) 2013-06-05

Family

ID=40074926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009516261A Expired - Fee Related JP5201136B2 (ja) 2007-05-24 2008-05-21 匿名認証システムおよび匿名認証方法

Country Status (3)

Country Link
US (1) US8914643B2 (ja)
JP (1) JP5201136B2 (ja)
WO (1) WO2008146667A1 (ja)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9020854B2 (en) 2004-03-08 2015-04-28 Proxense, Llc Linked account system using personal digital key (PDK-LAS)
EP1829283A2 (en) 2004-12-20 2007-09-05 Proxense, LLC Biometric personal data key (pdk) authentication
US8219129B2 (en) 2006-01-06 2012-07-10 Proxense, Llc Dynamic real-time tiered client access
US11206664B2 (en) 2006-01-06 2021-12-21 Proxense, Llc Wireless network synchronization of cells and client devices on a network
US8412949B2 (en) 2006-05-05 2013-04-02 Proxense, Llc Personal digital key initialization and registration for secure transactions
US9269221B2 (en) 2006-11-13 2016-02-23 John J. Gobbi Configuration of interfaces for a location detection system and application
JP5039146B2 (ja) * 2007-11-07 2012-10-03 日本電信電話株式会社 共通鍵設定方法、中継装置、及びプログラム
WO2009062194A1 (en) 2007-11-09 2009-05-14 Proxense, Llc Proximity-sensor supporting multiple application services
US8171528B1 (en) 2007-12-06 2012-05-01 Proxense, Llc Hybrid device having a personal digital key and receiver-decoder circuit and methods of use
WO2009079666A1 (en) 2007-12-19 2009-06-25 Proxense, Llc Security system and method for controlling access to computing resources
WO2009102979A2 (en) 2008-02-14 2009-08-20 Proxense, Llc Proximity-based healthcare management system with automatic access to private information
WO2009126732A2 (en) 2008-04-08 2009-10-15 Proxense, Llc Automated service-based order processing
US9659188B2 (en) * 2008-08-14 2017-05-23 Invention Science Fund I, Llc Obfuscating identity of a source entity affiliated with a communiqué directed to a receiving user and in accordance with conditional directive provided by the receiving use
US9641537B2 (en) 2008-08-14 2017-05-02 Invention Science Fund I, Llc Conditionally releasing a communiqué determined to be affiliated with a particular source entity in response to detecting occurrence of one or more environmental aspects
WO2010142923A1 (fr) * 2009-06-12 2010-12-16 France Telecom Procede cryptographique d'authentification anonyme et d'identification separee d'un utilisateur
KR101407945B1 (ko) 2009-12-18 2014-06-17 한국전자통신연구원 부분 연결성을 제공하는 익명 인증 서비스 방법
US8499158B2 (en) * 2009-12-18 2013-07-30 Electronics And Telecommunications Research Institute Anonymous authentication service method for providing local linkability
US9418205B2 (en) 2010-03-15 2016-08-16 Proxense, Llc Proximity-based system for automatic application or data access and item tracking
US9322974B1 (en) 2010-07-15 2016-04-26 Proxense, Llc. Proximity-based system for object tracking
EP2461534A1 (en) * 2010-12-01 2012-06-06 Irdeto B.V. Control word protection
US20120140993A1 (en) * 2010-12-05 2012-06-07 Unisys Corp. Secure biometric authentication from an insecure device
US8857716B1 (en) 2011-02-21 2014-10-14 Proxense, Llc Implementation of a proximity-based system for object tracking and automatic application initialization
CN103875007A (zh) * 2011-08-10 2014-06-18 格雷戈里·罗伯特·塞勒斯 针对基于操控关联组别、职责以及测量绩效相关之商业网络的系统与方法
KR101543711B1 (ko) * 2011-10-11 2015-08-12 한국전자통신연구원 짧은 서명을 제공하는 경량 그룹서명 방법 및 장치
US9330245B2 (en) * 2011-12-01 2016-05-03 Dashlane SAS Cloud-based data backup and sync with secure local storage of access keys
US9251315B2 (en) * 2011-12-09 2016-02-02 Verizon Patent And Licensing Inc. Security key management based on service packaging
US9160535B2 (en) * 2012-03-19 2015-10-13 Dell Inc Truly anonymous cloud key broker
US9285981B1 (en) 2012-07-16 2016-03-15 Wickr Inc. Discouraging screen capture
US10204507B2 (en) * 2012-08-24 2019-02-12 La Crosse Technology, Ltd. User-configurable weather warning apparatus
US9405898B2 (en) 2013-05-10 2016-08-02 Proxense, Llc Secure element as a digital pocket
GB2517127A (en) 2013-05-29 2015-02-18 Ibm Method for deriving a verification token from a credential
US10129260B1 (en) 2013-06-25 2018-11-13 Wickr Inc. Mutual privacy management
US9830089B1 (en) 2013-06-25 2017-11-28 Wickr Inc. Digital data sanitization
US10567349B2 (en) 2013-06-25 2020-02-18 Wickr Inc. Secure time-to-live
US9866591B1 (en) 2013-06-25 2018-01-09 Wickr Inc. Enterprise messaging platform
US9698976B1 (en) 2014-02-24 2017-07-04 Wickr Inc. Key management and dynamic perfect forward secrecy
JP6167990B2 (ja) * 2014-05-27 2017-07-26 パナソニックIpマネジメント株式会社 署名検証システム、検証装置、及び署名検証方法
US9584530B1 (en) 2014-06-27 2017-02-28 Wickr Inc. In-band identity verification and man-in-the-middle defense
US9654288B1 (en) 2014-12-11 2017-05-16 Wickr Inc. Securing group communications
US10075301B2 (en) * 2015-07-13 2018-09-11 Fujitsu Limited Relational encryption for password verification
US10129028B2 (en) 2015-07-13 2018-11-13 Fujitsu Limited Relational encryption for password verification
DE102015213180A1 (de) * 2015-07-14 2017-01-19 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Authentifizierung eines Dienstnutzers für eine zu erbringende Dienstleistung
EP3179670A1 (en) * 2015-12-11 2017-06-14 Gemalto Sa Secure electronic device with mechanism to provide unlinkable attribute assertion verifiable by a service provider
US9590956B1 (en) 2015-12-18 2017-03-07 Wickr Inc. Decentralized authoritative messaging
CN105554008B (zh) * 2015-12-28 2018-12-14 联想(北京)有限公司 用户终端、认证服务器、中间服务器、系统和传送方法
US10291607B1 (en) 2016-02-02 2019-05-14 Wickr Inc. Providing real-time events to applications
US9590958B1 (en) 2016-04-14 2017-03-07 Wickr Inc. Secure file transfer
US9591479B1 (en) 2016-04-14 2017-03-07 Wickr Inc. Secure telecommunications
US10574648B2 (en) 2016-12-22 2020-02-25 Dashlane SAS Methods and systems for user authentication
US10783269B1 (en) 2017-03-02 2020-09-22 Apple Inc. Cloud messaging system
US10432397B2 (en) 2017-05-03 2019-10-01 Dashlane SAS Master password reset in a zero-knowledge architecture
US10848312B2 (en) 2017-11-14 2020-11-24 Dashlane SAS Zero-knowledge architecture between multiple systems
US10904004B2 (en) 2018-02-27 2021-01-26 Dashlane SAS User-session management in a zero-knowledge environment
US10904754B2 (en) * 2018-11-28 2021-01-26 International Business Machines Corporation Cellular network authentication utilizing unlinkable anonymous credentials
US11374771B2 (en) * 2019-03-08 2022-06-28 Ares Technologies, Inc. Methods and systems for implementing mixed protocol certificates
US11151576B2 (en) 2019-04-05 2021-10-19 At&T Intellectual Property I, L.P. Authorizing transactions using negative pin messages
RU2748966C1 (ru) * 2020-02-26 2021-06-02 Акционерное общество "Лаборатория Касперского" Способ синхронизации анонимных идентификаторов
CN111885055B (zh) * 2020-07-22 2023-01-31 中国联合网络通信集团有限公司 一种通信方法及装置
CN112153072B (zh) * 2020-09-30 2023-05-26 重庆电子工程职业学院 计算机网络信息安全控制装置
US11962573B2 (en) 2021-10-26 2024-04-16 Genetec Inc System and method for providing access to secured content field
US20230199498A1 (en) * 2021-12-22 2023-06-22 T-Mobile Innovations Llc Cryptographic identification of false base stations
JP2023132934A (ja) * 2022-03-11 2023-09-22 三菱電機インフォメーションシステムズ株式会社 認証情報署名システム、認証装置、認証情報署名プログラム及び認証情報署名方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040083184A1 (en) * 1999-04-19 2004-04-29 First Data Corporation Anonymous card transactions
US7234059B1 (en) * 2001-08-09 2007-06-19 Sandia Corporation Anonymous authenticated communications
FR2834841B1 (fr) * 2002-01-17 2004-05-28 France Telecom Procede cryptographique de revocation a l'aide d'une carte a puce
JP3895244B2 (ja) 2002-09-19 2007-03-22 株式会社エヌ・ティ・ティ・ドコモ 鍵の更新が可能な利用者の識別情報に基づく電子署名方法及び電子署名システム
FR2847401A1 (fr) * 2002-11-14 2004-05-21 France Telecom Procede d'acces a un service avec authentification rapide et anonymat revocable et systeme d'ouverture et de maintien de session
US7472277B2 (en) * 2004-06-17 2008-12-30 International Business Machines Corporation User controlled anonymity when evaluating into a role
JP4162237B2 (ja) 2004-06-24 2008-10-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム
US7516326B2 (en) * 2004-10-15 2009-04-07 Hewlett-Packard Development Company, L.P. Authentication system and method
JP4559868B2 (ja) 2005-01-24 2010-10-13 日本放送協会 セキュリティモジュール、コンテンツ受信装置、契約情報生成装置及び契約情報検証装置、並びに、契約情報検証方法
JP2006235661A (ja) 2005-02-21 2006-09-07 Nippon Telegr & Teleph Corp <Ntt> 匿名認証方法
JP4548223B2 (ja) * 2005-05-27 2010-09-22 日本電気株式会社 擬似ランダム関数計算装置及び方法、並びに回数制限匿名認証システム及び方法
JP4218760B2 (ja) * 2005-07-01 2009-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーション トレーサビリティ検証システム、方法、プログラム
US8078876B2 (en) * 2007-04-30 2011-12-13 Intel Corporation Apparatus and method for direct anonymous attestation from bilinear maps
US20080307223A1 (en) * 2007-06-08 2008-12-11 Brickell Ernest F Apparatus and method for issuer based revocation of direct proof and direct anonymous attestation
US8356181B2 (en) * 2007-11-15 2013-01-15 Intel Corporation Apparatus and method for a direct anonymous attestation scheme from short-group signatures
JP5488596B2 (ja) * 2009-05-29 2014-05-14 日本電気株式会社 署名装置、署名検証装置、匿名認証システム、署名方法、署名認証方法およびそれらのプログラム
US8499158B2 (en) * 2009-12-18 2013-07-30 Electronics And Telecommunications Research Institute Anonymous authentication service method for providing local linkability
KR101475282B1 (ko) * 2010-12-20 2014-12-22 한국전자통신연구원 키 유효성 검증 방법 및 이를 수행하기 위한 서버

Also Published As

Publication number Publication date
US20100174911A1 (en) 2010-07-08
JP5201136B2 (ja) 2013-06-05
US8914643B2 (en) 2014-12-16
WO2008146667A1 (ja) 2008-12-04

Similar Documents

Publication Publication Date Title
JP5201136B2 (ja) 匿名認証システムおよび匿名認証方法
US8589693B2 (en) Method for two step digital signature
JP4692284B2 (ja) グループ署名システム、方法、装置、およびプログラム
CN110545279A (zh) 兼具隐私和监管功能的区块链交易方法、装置及系统
US20090217042A1 (en) Provisional signature schemes
KR20070104939A (ko) 인증을 위한 작은 공개-키 기반 디지털 서명
CN104641592A (zh) 用于无证书认证加密(clae)的方法和系统
JP2009503934A (ja) 展性攻撃に対して改良された安全性を有する技術(これに限定されない)を含む非ワンタイムパッド暗号で暗号化した署名鍵を用いた、暗号認証、及び/又は共有暗号鍵の設定
EP2792098B1 (en) Group encryption methods and devices
Shim Design principles of secure certificateless signature and aggregate signature schemes for IoT environments
WO2022050833A1 (en) Method for electronic signing and authenticaton strongly linked to the authenticator factors possession and knowledge
CN116346336B (zh) 一种基于多层密钥生成中心的密钥分发方法及相关系统
Saadatmandan et al. Digital Certificate of Public Key for User Authentication and Session Key Establishment for Secure Network Communications
JP5004086B2 (ja) 短い系列を用いた認証システム
De Lacerda Filho et al. Improving Data Security, Privacy, and Interoperability for the IEEE Biometric Open Protocol Standard
Wu et al. A publicly verifiable PCAE scheme for confidential applications with proxy delegation
Surya et al. Single sign on mechanism using attribute based encryption in distributed computer networks
JP2012032952A (ja) 匿名認証システム、匿名認証方法、匿名認証プログラム
JP5392741B2 (ja) Rsaをベースとしたパスワード認証方式及びその応用
Kale et al. Undeniable signature scheme: A survey
JP3862397B2 (ja) 情報通信システム
Suriadi et al. Conditional privacy using re-encryption
Sumanth et al. Confidence Analysis of a Solo Sign-On Device for Distributed Computer Networks: A Modeling Approach
JPH11202767A (ja) ディジタル署名方式、それを用いた通信装置及び情報通信システム
Kiyomoto et al. Design of anonymous attribute authentication mechanism

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110414

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130128

R150 Certificate of patent or registration of utility model

Ref document number: 5201136

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160222

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees