JPWO2007055104A1 - 認証システム、署名生成装置、署名検証装置 - Google Patents

認証システム、署名生成装置、署名検証装置 Download PDF

Info

Publication number
JPWO2007055104A1
JPWO2007055104A1 JP2007544089A JP2007544089A JPWO2007055104A1 JP WO2007055104 A1 JPWO2007055104 A1 JP WO2007055104A1 JP 2007544089 A JP2007544089 A JP 2007544089A JP 2007544089 A JP2007544089 A JP 2007544089A JP WO2007055104 A1 JPWO2007055104 A1 JP WO2007055104A1
Authority
JP
Japan
Prior art keywords
information
public key
unit
signature
authentication
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
JP2007544089A
Other languages
English (en)
Other versions
JP4876075B2 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2007544089A priority Critical patent/JP4876075B2/ja
Publication of JPWO2007055104A1 publication Critical patent/JPWO2007055104A1/ja
Application granted granted Critical
Publication of JP4876075B2 publication Critical patent/JP4876075B2/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/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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • 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/16Obfuscation or hiding, e.g. involving white box

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本発明は、個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置であって、前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段とを備えることを特徴とする。

Description

本発明は、身分証明書など、第三者機関によって認証された証明書データに関して、証明書保持者のプライバシーを確保しつつ、正確な本人認証が行える認証システムに関する。
ネットワークを介したデジタルコンテンツの配信サービスにおいて、サービス提供者は、ユーザに年齢の提示を要求し、提供するコンテンツが、ユーザの年齢に適しているか否かを判定したり、ユーザが在住している住所の提示を要求し、顧客管理に用いたりする場合がある。
年齢や住所等、個人情報の提示を要求されたユーザは、必要最低限の個人情報のみを提示したいという要望がある。その要望を満たす技術が非特許文献1に開示されている。
この技術によると、各ユーザに割り当てられた公開鍵と共に、氏名、住所、年齢などの個人情報を管理している属性証明書発行サーバが、ユーザの依頼に応じて、必要な属性証明書を発行する。例えば、ユーザは、自身の年齢だけを証明したい場合には、前記サーバに、年齢証明書の発行を依頼する。年齢証明書の発行依頼を受け付けた前記サーバは、ユーザの公開鍵と年齢とを結合したデータに、デジタル署名を施した属性証明書データを発行する。この証明書は、証明書に含まれる公開鍵に対応する秘密鍵を持つユーザが、その証明書に含まれる年齢であることを保証する。このとき、属性証明書によって、ユーザの年齢は開示されるが、氏名や住所などのその他の個人情報は開示されない。即ち、ユーザは、必要な個人情報のみを開示することができる。
特開2004−289247号公報 ITU−T,"Information Technology−Open systems interconnection−The directory: Public−key and attribute certificate frameworks," Recommendation X.509, March 2000.
しかしながら、コンテンツ提供者が、ユーザが所定の条件を満たしているか否かを判定するために、ユーザに身分証明書の提示を要求し、ユーザは、コンテンツ提供者に提示する身分証明書として、上記従来技術の属性証明書を用いる場合、ユーザ自身の実際の年齢や、住所等、前記条件判定に必要な最低限の情報を越えて、必要以上の個人情報を開示しなければならないという問題がある。
本発明は、上記の問題点に鑑みなされたものであって、必要最低限の個人情報の開示のみを実現しつつ、前記個人情報の正当性を認証することができる認証システム、署名生成装置、署名検証装置を提供することを目的とする。
上記の目的を達成するために、本発明は、個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置であって、前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段とを備えることを特徴とする。
上記の構成によると、署名生成装置は、属性情報に選択したダミー情報を付加して、曖昧情報を生成することにより、前記属性情報をぼかすことができる。また、リング署名を用いてデジタル署名を生成することにより、検証側において、当該デジタル署名が、前記属性情報及び前記1以上のダミー情報の何れかの秘密鍵を用いて生成されたことを検証できるが、何れの秘密鍵を用いて生成されたのかを判明することが不可能なデジタル署名を生成することができる。
ここで、前記曖昧情報生成手段は、前記属性情報が示す属性と同一の属性を有する前記ダミー情報を選択するように構成してもよい。
この構成によると、同一の属性を有するダミー情報を用いて、属性情報をぼかすことができる。
ここで、前記属性は、年齢であって、前記属性情報は、前記個人の年齢を示しており、前記曖昧情報生成手段は、前記属性情報が示す前記年齢と異なる年齢である前記ダミー情報を選択するように構成してもよい。
この構成によると、年齢を提示する必要があるときに、ユーザは、年齢をぼかした曖昧情報を提示することができる。
ここで、前記属性は、住所であって、前記属性情報は、前記個人が居住している地区名を示しており、前記曖昧情報生成手段は、前記属性情報が示す前記地区名と異なる地区名である前記ダミー情報を選択するように構成してもよい。
この構成によると、都道府県名等の地区名等を提示する必要があるときに、ユーザは、地区名をぼかした曖昧情報を提示することができる。
ここで、前記属性は、国籍であって、前記属性情報は、前記個人が有する国籍の国名を示しており、前記曖昧情報生成手段は、前記属性情報が示す前記国名と異なる国名である前記ダミー情報を選択するように構成してもよい。
この構成によると、国籍を提示する必要があるときに、ユーザは、国籍をぼかした曖昧情報を提示することができる。
ここで、前記署名生成装置は、ダミー情報の選択条件を示すぼかし指示を受け付けるぼかし指示受付手段を備え、前記曖昧情報生成手段は、前記ぼかし指示が示す前記選択条件に従い、前記1以上のダミー情報を選択するように構成してもよい。
この構成によると、前記選択条件を受け付けることにより、前記個人の意図するぼかし処理を、行うことができる。
ここで、前記ぼかし指示受付手段は、選択するダミー情報の個数を示す前記選択条件を受け付け、前記曖昧情報生成手段は、前記選択条件が示す個数のダミー情報を選択するように構成してもよい。
この構成によると、属性情報に追加するダミー情報の個数を増やすことにより、より属性情報を曖昧にぼかすことができる。
ここで、前記署名生成装置は、サービス提供装置が提供するサービスを利用する装置であって、更に、前記曖昧情報及び前記デジタル署名データを含むサービス要求を生成する要求生成手段と、前記サービス要求を、前記サービス提供装置へ送信する要求送信手段と、前記サービス提供装置から、前記サービスを受信するサービス受信手段とを備えるように構成してもよい。
この構成によると、前記個人が前記サービス提供装置から認証を受けてサービスの提供を受ける場合に、前記属性情報のみを送信する場合と比較し、前記曖昧情報を送信するので、個人の情報をぼかして提示することができる。また前記デジタル署名を送信することより、前記曖昧情報に含まれる情報が正しい情報であることを、前記サービス提供装置に対して証明することが可能となる。
ここで、前記署名生成装置は、前記属性情報及び前記秘密鍵と、前記属性情報及び前記秘密鍵に対するデジタル署名データとを、外部の認証装置から取得する取得手段と、取得した前記デジタル署名データを検証する署名検証手段と、前記署名検証手段による検証に成功した場合に、前記属性情報及び前記秘密鍵を、前記記憶手段に書き込む書込手段とを備えるように構成してもよい。
この構成によると、署名生成装置は、前記認証装置から認証を受けた前記属性情報に基づき、前記曖昧情報を生成することができる。
また、本発明は、前記署名生成装置により生成されたデジタル署名データを検証する署名検証装置であって、前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段とを備えることを特徴とする。
この構成によると、リング署名の性質から、署名検証装置は、前記曖昧情報に含まれる何れの属性情報にあたるのかを判断することはできないが、前記曖昧情報に含まれる何れかの情報が、前記個人の正当な属性情報であることを検証することができる。
ここで、前記署名検証装置は、サービス利用装置に対してサービスを提供する装置であって、更に、前記サービス利用装置から、前記サービス利用装置のユーザに関する情報である前記曖昧情報及び前記デジタル署名データを含むサービス利用要求を受信する要求受信手段と、前記曖昧情報に基づき、前記ユーザに対し、前記サービスを提供することが可能であるか否かを判定する判定手段と、前記署名検証手段による前記検証に成功し、且つ、前記判定手段による前記判定が肯定的である場合に、前記サービス利用装置へ、前記サービスを提供するサービス提供手段とを備えるように構成してもよい。
この構成によると、サービスを提供する装置において、前記リング署名の検証、及びサービス提供の可否判定を行った上で、前記サービス利用装置に対し、サービス提供を行うことができる。これは、例えば、コンテンツ提供者が、ユーザが所定の年齢以上であることを確認する必要があるが、ユーザの実際の年齢を確認する必要が無い場合において、ユーザの実際の年齢が開示されなくとも、必要最低限の確認(例えば、ユーザが18歳以上であることの確認)を行うことができる。
なお、前記署名生成装置の記憶手段は、後述する実施形態におけるサービス利用装置20の身元認証情報保管部205に相当し、曖昧情報生成手段は、ぼかし身元認証情報生成部209の身元情報変換部222に相当し、公開鍵取得手段は、ぼかし用公開鍵取得部208に相当し、署名生成手段は、ぼかし身元認証情報生成部209のリング署名生成部223に相当する。
更に、前記署名生成装置のぼかし指示受付手段は、サービス利用装置20のぼかし指示受付部207に相当し、要求生成手段及び要求送信手段は、サービス利用要求送信部210に相当し、サービス受信手段は、コンテンツ受信部211に相当する。
更に、前記署名生成装置の取得手段は、サービス利用装置20の身元認証情報受信部203に相当し、署名検証手段及び書込手段は、署名検証部204に相当する。
また、前記署名検証装置の公開鍵取得手段は、後述する実施形態におけるサービス提供装置1(40)の認証用公開鍵取得部402に相当し、署名検証手段は、リング署名検証部403に相当する。
更に、署名検証装置の要求受信手段は、データ分割部401に相当し、判定手段は、ユーザ身元情報確認部404に相当し、サービス提供手段は、サービスデータ送信制御部406及びコンテンツ送信部408に相当する。
認証システム1のシステム構成を示す図である。 認証装置10の構成を機能的に示す機能ブロック図である。 (a)身元認証用秘密鍵保持部105に記憶されているデータベースを示す図である。(b)年齢認証用秘密鍵データベース110のデータ構成を示す図である。 国籍認証用秘密鍵データベース120のデータ構成を示す図である。 住所認証用秘密鍵データベース130のデータ構成を示す図である。 年齢ぼかし用公開鍵データベース300のデータ構成を示す図である。 ユーザ身元情報140のデータ構成を示す図である。 身元認証情報生成部106の構成を機能的に示す機能ブロック図である。 身元認証情報160のデータ構成を示す図である。 サービス利用装置20の構成を機能的に示す機能ブロック図である。 ぼかし身元認証情報生成部209の構成を機能的に示す機能ブロック図である。 (a)提示用身元認証情報250のデータ構成を示す図である。(b)提示用身元認証情報260のデータ構成を示す図である。 サービス提供装置1(40)の構成を機能的に示す機能ブロック図である。 認証システム1全体の動作を示すフローチャートである。 システムセットアップ処理の動作を示すフローチャートであり、図16に続く。 システムセットアップ処理の動作を示すフローチャートであり,図15から続く。 身元認証情報発行処理の動作を示すフローチャートであり、図18に続く。 身元認証情報発行処理の動作を示すフローチャートであり、図17から続く。 サービス利用処理の動作を示すフローチャートであり、図20へ続く。 サービス利用処理の動作を示すフローチャートであり,図19から続き、図21に続く。 サービス利用処理の動作を示すフローチャートであり、図20から続く。 リング署名生成処理の動作を示すフローチャートであり、図23に続く。 リング署名生成処理の動作を示すフローチャートであり、図22から続く。 リング署名検証処理の動作を示すフローチャートである。
符号の説明
1 認証システム
10 認証装置
20 サービス利用装置
30 ぼかし用公開鍵管理装置
40 サービス提供装置1
50 サービス提供装置2
60 ネットワーク
101 署名鍵生成部
102 ぼかし用公開鍵生成部
103 身元認証情報発行依頼データ受信部
104 ユーザ身元情報確認部
105 身元認証用秘密鍵保持部
106 身元認証情報生成部
107 身元認証情報送信部
151 データ分割部
152 身元認証用秘密鍵取得部
153 身元認証用秘密鍵付加部
154 署名生成部
201 ユーザ身元情報記憶部
202 身元認証情報発行依頼データ送信部
203 身元認証情報受信部
204 署名検証部
205 身元認証情報保管部
206 身元認証情報表示部
207 ぼかし指示受付部
208 ぼかし用公開鍵取得部
209 ぼかし身元認証情報生成部
210 サービス利用要求送信部
211 コンテンツ受信部
212 コンテンツ再生部
221 データ分割部
222 身元情報変換部
223 リング署名生成部
224 データ連結部
401 データ分割部
402 認証用公開鍵取得部
403 リング署名検証部
404 ユーザ身元情報確認部
405 ユーザ登録部
406 サービスデータ送信制御部
407 コンテンツ格納部
408 コンテンツ送信部
以下では、本発明に係る実施の形態として、認証システム1について、図面を参照して説明する。
<概要>
図1は、認証システム1の構成を示すシステム構成図である。
同図に示すように、認証システム1は、認証装置10、サービス利用装置20、ぼかし用公開鍵管理装置30、サービス提供装置1(40)、及び、サービス提供装置2(50)から構成され、各装置は、ネットワーク60を介して接続されている。
認証システム1は、サービスの利用者であるユーザが、サービス利用装置20を用いて、サービス提供装置1(40)及びサービス提供装置2(50)から、ネットワーク60を介して、コンテンツ配信のサービスを享受するシステムである。
サービス提供装置1(40)及びサービス提供装置2(50)は、サービス利用装置20から、コンテンツ要求を受け付ける際に、ユーザの身元情報の提示を要求する。サービス利用装置20は、認証システム1の立ち上げ時に、CA(Certificate Authority)が保有する認証装置10から、身元認証情報を取得し、各サービス提供装置からの身元情報提示要求に対して、この身元認証情報を提示する。なお、本実施形態においては、ユーザの身元情報として、「年齢」、「国籍」、及び「住所」の3項目を用いるものとし、「住所」は、ユーザが在住している都道府県名により示されるものとする。なお、「都道府県」とは、日本における最大の行政区画を示す。
本実施形態においては、具体例として、サービス提供装置1(40)は、ユーザに対し、「年齢」の提示を求め、サービス提供装置2(50)は、ユーザに対し、「年齢」、「国籍」、及び「住所」の提示を求めるものとする。
各サービス提供装置から要求された身元情報を提示する際、サービス利用装置20は、要求されている身元情報に対して、「ぼかし処理」を行い、ぼかし処理を行った後の身元情報を各サービス提供装置へ提示する。
ぼかし処理とは、例えば、「年齢=25歳」という身元情報を、「年齢=20歳〜25歳」の様に、幅を持たせた情報に変換する処理を示し、サービス利用装置20が、ぼかし用公開鍵管理装置30からぼかし用公開鍵を取得して、上記のようなぼかし処理を行う。
また、認証システム1を構成する各装置は、システム共通で用いるハッシュアルゴリズム、及び、秘密鍵暗号アルゴリズムを定め、システム内で公開する。秘密鍵暗号アルゴリズムの一例は、DES(Data Encryption Standard)である。
<構成>
ここでは、認証システム1に含まれる各装置の構成について説明する。
1.認証装置10
図2は、認証装置10の構成を機能的に示す機能ブロック図である。同図に示すように、認証装置10は、署名鍵生成部101、ぼかし用公開鍵生成部102、身元認証情報発行依頼データ受信部103、ユーザ身元情報確認部104、身元認証用秘密鍵保持部105、身元認証情報生成部106、及び身元認証情報送信部107から構成される。
認証装置10は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニット等から構成されるコンピュータシステムであって、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、認証装置10は、その機能を達成する。
(1)署名鍵生成部101
署名鍵生成部101は、認証システム1の立ち上げ時に、デジタル署名の署名生成鍵と署名検証鍵とを生成する。署名鍵生成部101は、生成した署名生成鍵を、身元認証情報生成部106へ出力し、生成した署名検証鍵を、サービス利用装置20へ通知する。署名鍵生成部101は生成した署名検証鍵を、ネットワーク60を介して送信してもよいし、その他の方法により通知してもよい。
(2)ぼかし用公開鍵生成部102
ぼかし用公開鍵生成部102は、認証システム1の立ち上げ時に、年齢認証用秘密鍵データベース110、国籍認証用秘密鍵データベース120、及び住所認証用秘密鍵データベース130、年齢ぼかし用公開鍵データベース300、国籍ぼかし用公開鍵データベース、及び住所ぼかし用公開鍵データベースを作成する。
ぼかし用公開鍵生成部102は、作成した各秘密鍵データベースを、身元認証用秘密鍵保持部105に出力する。また、作成した各ぼかし用公開鍵データベースを、ぼかし用公開鍵管理装置30へ配布する。ぼかし用公開鍵生成部102は、各ぼかし用公開鍵データベースを、ネットワーク60を介して送信してもよいし、その他の方法により配布してもよい。
図3(a)は、身元認証用秘密鍵保持部105に格納される各データベースを示す図である。
図3(b)は、年齢認証用秘密鍵データベース110のデータ構成を示す図である。同図に示すように、年齢認証用秘密鍵データベース110は、0歳から99歳までのそれぞれの年齢と、各年齢に対応付けたd_0からd_99までの年齢認証用秘密鍵とから構成される。
図4は、国籍認証用秘密鍵データベース120のデータ構成を示す図である。同図に示すように、国籍認証用秘密鍵データベース120は、番号―国名対応表120aと、番号―国籍認証用秘密鍵対応表120bとを含む。番号―国名対応表120aは、0番からの番号と各国名とを対応付けた表である。番号―国籍認証用秘密鍵対応表120bは、0番からの番号と、番号―国名対応表120aにおいて、各番号に対応付けられている国名を認証するための国籍認証用秘密鍵d_0、d_1、d_2、…とを対応付けた表である。具体例を用いて説明すると、国名「日本」を認証するための「日本」認証用秘密鍵はd_0であり、国名「韓国」を認証するための「韓国」認証用秘密鍵はd_1であり、国名「アメリカ」を認証するための「アメリカ」認証用秘密鍵はd_50である。
図5は、住所認証用秘密鍵データベース130のデータ構成を示す図である。同図に示すように、住所認証用秘密鍵データベース130は、番号―都道府県名対応表130aと、番号―住所認証用秘密鍵対応表130bとを含む。番号―都道府県名対応表130aは、0番からの番号と各都道府県名とを対応付けた表である。番号―住所認証用秘密鍵対応表130bは、0番からの番号と、番号―都道府県名対応表130aにおいて、各番号に対応付けられている都道府県名を認証するための住所認証用秘密鍵d_0、d_1、d_2、…とを対応付けた表である。具体例を用いて説明すると、都道府県名「北海道」を認証するための「北海道」認証用秘密鍵はd_0であり、都道府県名「大阪府」を認証するための「大阪府」認証用秘密鍵はd_23であり、都道府県名「兵庫県」を認証するための「兵庫県」認証用秘密鍵はd_24である。
図6は、年齢ぼかし用公開鍵データベース300のデータ構成を示す図である。同図に示すように、年齢ぼかし用公開鍵データベース300は、0歳から99歳までのそれぞれの年齢と、各年齢に対応付けた(e_0,n_0)から(e_99,n_99)までの年齢ぼかし用公開鍵とから構成される。
各認証用秘密鍵、各ぼかし用公開鍵の作成の手順については、後述する動作の説明で述べる。
(3)身元認証情報発行依頼データ受信部103
身元認証情報発行依頼データ受信部103は、ネットワーク接続ユニット等から構成される。
身元認証情報発行依頼データ受信部103は、ネットワーク60を介して、サービス利用装置20から身元認証情報発行依頼データを受信し、受信した身元認証情報発行依頼データをユーザ身元情報確認部104へ出力する。
(4)ユーザ身元情報確認部104
ユーザ身元情報確認部104は、身元認証情報発行依頼データ受信部103から、身元認証情報発行依頼データを受け取る。ユーザ身元情報確認部104は、受け取った身元認証情報発行依頼データからユーザ身元情報140を抽出する。
図7は、ユーザ身元情報140のデータ構成を示す図である。同図に示すように、ユーザ身元情報140は、年齢情報(年齢=24歳)141、国籍情報(国籍=アメリカ)142、及び住所情報(住所=大阪府)143を含む。なお、本実施形態においては、年齢情報、国籍情報、及び住所情報を総称して「身元情報」と呼称することがある。
ユーザ身元情報確認部104は、ユーザ身元情報140が、正しいものであるか否かを確認する。確認の方法としては、例えば、認証装置10は、市役所などの公的機関が保持する住民票データベースとネットワーク60を介して接続されており、ユーザ身元情報140を、住民票データベースに照会することにより、ユーザ身元情報140が、正しいものであるか否かを確認する。
ユーザ身元情報確認部104は、ユーザ身元情報140が正しいものであることが確認されると、ユーザ身元情報140を、身元認証情報生成部106に出力する。ユーザ身元情報140が不正なものであることが確認されると、認証装置10は、身元認証情報発行処理を終了する。
(5)身元認証用秘密鍵保持部105
身元認証用秘密鍵保持部105は、ぼかし用公開鍵生成部102により生成された年齢認証用秘密鍵データベース110、国籍認証用秘密鍵データベース120、及び住所認証用秘密鍵データベース130を保持する。各データベースの構成については、先に述べたとおりである。
(6)身元認証情報生成部106
図8は、身元認証情報生成部106の構成を機能的に示す機能ブロック図である。同図に示すように、身元認証情報生成部106は、データ分割部151、身元認証用秘密鍵取得部152、身元認証用秘密鍵付加部153、及び署名生成部154から構成される。
(a)データ分割部151
データ分割部151は、ユーザ身元情報確認部104から、ユーザ身元情報140を受け取る。データ分割部151は、ユーザ身元情報140を、身元認証用秘密鍵取得部152と身元認証用秘密鍵付加部153とへ出力する。
(b)身元認証用秘密鍵取得部152
身元認証用秘密鍵取得部152は、データ分割部151から、ユーザ身元情報140を受け取る。身元認証用秘密鍵取得部152は、ユーザ身元情報140に含まれる各身元情報に対応する身元認証用秘密鍵を、身元認証用秘密鍵保持部105から読み出す。
具体的には、身元認証用秘密鍵取得部152は、ユーザ身元情報140に含まれる年齢情報(年齢=24歳)141の内容を確認して、「24歳」に対応する「24歳」認証用秘密鍵d_24を、年齢認証用秘密鍵データベース110から取得する。同様に、身元認証用秘密鍵取得部152は、国籍情報(国籍=アメリカ)142の内容を確認して、「アメリカ」に対応する「アメリカ」認証用秘密鍵d_50を、国籍認証用秘密鍵データベース120から取得する。同様に、身元認証用秘密鍵取得部152は、住所情報(住所=大阪府)143の内容を確認して、「大阪府」に対応する「大阪府」認証用秘密鍵d_23を、住所認証用秘密鍵データベース130から取得する。
身元認証用秘密鍵取得部152は、取得した「24歳」認証用秘密鍵d_24、「アメリカ」認証用秘密鍵d_50、及び「大阪府」認証用秘密鍵d_23を、身元認証用秘密鍵付加部153へ出力する。
(c)身元認証用秘密鍵付加部153
身元認証用秘密鍵付加部153は、データ分割部151からユーザ身元情報140を受け取る。また、身元認証用秘密鍵付加部153は、身元認証用秘密鍵取得部152から、「24歳」認証用秘密鍵d_24、「アメリカ」認証用秘密鍵d_50、及び「大阪府」認証用秘密鍵d_23を受け取る。
身元認証用秘密鍵付加部153は、ユーザ身元情報140に含まれる年齢情報(年齢=24歳)と「24歳」認証用秘密鍵d_24とを組み合わせて、年齢認証情報161を生成する。同様に、身元認証用秘密鍵付加部153は、国籍情報(国籍=アメリカ)と「アメリカ」認証用秘密鍵d_50とを組み合わせて、国籍認証情報162を生成し、住所情報(住所=大阪府)と「大阪府」認証用秘密鍵d_23とを組み合わせて住所認証情報163を生成する。
身元認証用秘密鍵付加部153は、生成した年齢認証情報161、国籍認証情報162、及び住所認証情報163を、署名生成部154へ出力する。
(d)署名生成部154
署名生成部154は、身元認証用秘密鍵付加部153から、年齢認証情報161、国籍認証情報162、及び住所認証情報163を受け取る。また、署名生成部154は、署名鍵生成部101から、署名生成鍵を受け取る。
署名生成部154は、署名生成鍵を用いて、所定の署名生成アルゴリズムに従い、年齢認証情報161、国籍認証情報162、及び住所認証情報163に対するデジタル署名である認証装置署名データ164を生成する。
署名生成部154は、年齢認証情報161、国籍認証情報162、住所認証情報163、及び認証装置署名データ164から成る身元認証情報160を生成する。図9は、身元認証情報160のデータ構成を示す図である。
署名生成部154は、生成した身元認証情報160を、身元認証情報送信部107へ出力する。
(7)身元認証情報送信部107
身元認証情報送信部107は、署名生成部154から身元認証情報160を受け取り、受け取った身元認証情報160を、ネットワーク60を介して、サービス利用装置20へ送信する。
2.サービス利用装置20
図10は、サービス利用装置20の構成を機能的に示す機能ブロック図である。同図に示すように、サービス利用装置20は、ユーザ身元情報記憶部201、身元認証情報発行依頼データ送信部202、身元認証情報受信部203、署名検証部204、身元認証情報保管部205、身元認証情報表示部206、ぼかし指示受付部207、ぼかし用公開鍵取得部208、ぼかし身元認証情報生成部209、サービス利用要求送信部210、コンテンツ受信部211、及びコンテンツ再生部212から構成される。
サービス利用装置20は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムであり、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、サービス利用装置20は、その機能を達成する。
(1)ユーザ身元情報記憶部201
ユーザ身元情報記憶部201は、サービス利用装置20のユーザの個人情報であるユーザ身元情報140を記憶している。ユーザ身元情報140は、図7を用いて既に説明したように、年齢情報(年齢=24歳)141、国籍情報(国籍=アメリカ)142、及び住所情報(住所=大阪府)143から構成される。
(2)身元認証情報発行依頼データ送信部202
身元認証情報発行依頼データ送信部202は、キーボードやマウス等の入力デバイスを介して、ユーザから身元認証情報取得の指示を受け付ける。
身元認証情報取得の指示を受け付けると、身元認証情報発行依頼データ送信部202は、ユーザ身元情報記憶部201から、ユーザ身元情報140を読み出し、読み出したユーザ身元情報140を含む身元認証情報発行依頼データを生成する。
身元認証情報発行依頼データ送信部202は、生成した身元認証情報発行依頼データを、ネットワーク60を介して認証装置10へ送信する。
(3)身元認証情報受信部203
身元認証情報受信部203は、ネットワーク60を介して、認証装置10から身元認証情報160を受信する。
身元認証情報160のデータ構成は、図9に示したように、年齢認証情報161、国籍認証情報162、住所認証情報163、及び認証装置署名データ164から構成され、年齢認証情報161は、年齢情報(年齢=24歳)161a及び「24歳」認証用秘密鍵(d_24)161bから構成され、国籍認証情報162は、国籍情報(国籍=アメリカ)162a及び「アメリカ」認証用秘密鍵(d_50)162bから構成され、住所認証情報163は、住所情報(住所=大阪府)163a及び「大阪府」認証用秘密鍵(d_23)163bから構成される。
身元認証情報受信部203は、受信した身元認証情報160を、署名検証部204へ出力する。
(4)署名検証部204
署名検証部204は、認証システム1の立ち上げ時に、認証装置10により作成された署名検証鍵を受け取り、保持している。
署名検証部204は、身元認証情報受信部203から、身元認証情報160を受け取ると、署名検証鍵を用いて、所定の署名検証アルゴリズムに従い、認証装置署名データ164を検証する。認証装置署名データ164の検証に成功すると、署名検証部204は、身元認証情報160を、身元認証情報保管部205へ出力する。認証装置署名データ164の検証に失敗すると、署名検証部204は、身元認証情報160を破棄する。
(5)身元認証情報保管部205
身元認証情報保管部205は、署名検証部204から身元認証情報160を受け取ると、受け取った身元認証情報160を内部に保管する。
(6)身元認証情報表示部206
身元認証情報表示部206は、ディスプレイを備える。身元認証情報表示部206は、キーボードやマウス等の入力デバイスを介して、ユーザからサービス利用要求を受け付けると、身元認証情報保管部205から身元認証情報160を読み出す。身元認証情報表示部206は、読み出した身元認証情報160から、年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aを抽出する。
身元認証情報表示部206は、抽出した年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aに、「サービス提供装置に対し、提示する情報を選択してください。」というメッセージを付加して、提示情報選択画面を生成する。身元認証情報表示部206は、生成した提示情報選択画面を、ディスプレイに表示する。
また、身元認証情報表示部206は、ぼかし指示受付部207を介して、サービス提供装置に対して提示する情報が選択されると、選択された情報にどのようなぼかし処理を行うのかをユーザに問いかける、ぼかし指示受付画面を生成する。身元認証情報表示部206は、生成したぼかし指示受付画面を、ディスプレイに表示する。
(7)ぼかし指示受付部207
ぼかし指示受付部207は、予め内部に、番号―国名対応表120a(図4参照)と、番号―都道府県名対応表130a(図5参照)とを保持している。
ぼかし指示受付部207は、身元認証情報表示部206に、提示情報選択画面が表示されている状態において、キーボードやマウス等の入力デバイスを介して、ユーザから、年齢情報161a、国籍情報162a、及び住所情報163aの内、何れの身元情報に対してぼかし処理を行うかの選択を受け付ける。なお、本実施形態においては、ユーザは、サービス提供装置1(40)に対しては、「年齢」を提示する必要があり、サービス提供装置2(50)に対しては、「年齢」、「国籍」、及び「住所」を提示する必要がある事を既知であるものとする。
ぼかし指示受付部207は、サービス提供装置へ提示する情報の選択を受け付けると、受け付けた選択を身元認証情報表示部206へ出力する。
ぼかし指示受付部207は、身元認証情報表示部206にぼかし指示受付画面が表示されている状態において、入力デバイスを介して、ぼかし指示を受け付ける。ぼかし指示は、具体的には、(X,Y)の数値の入力として受け付ける。
以下、ぼかし指示(X,Y)について具体的に説明する。
例えば、サービス提供装置に対して提示する身元情報が、年齢情報(年齢=24歳)161aであり、ぼかし指示(X,Y)を受け付けた場合、「24歳」である年齢を、(24−X)歳から(24+Y)歳までの幅のある情報にぼかすこと示している。例えば、(X=0,Y=3)である場合には、24−0=24であり、24+3=27であるから、「24歳」である年齢を、「24歳、25歳、26歳、及び27歳の内の何れか」にぼかすことができる。
また、提示する身元情報が、国籍情報(国籍=アメリカ)162aと住所情報(住所=大阪府)163aとである場合に、「アメリカ」と「大阪府」とを、どのようにぼかすのかについて説明する。
国籍情報(国籍=アメリカ)162aをぼかす場合に、ぼかし指示(X=0,Y=3)を受け付けると、図4に示した番号―国名対応表120aの「アメリカ」と対応付けられている番号=50に対して、50−0=50、及び、50+3=53の演算を施し、演算の結果に基づき、50番から53番までの国名を用いて、「アメリカ」である国籍を、「アメリカ、カナダ、メキシコ、及びグアテマラの内の何れか」にぼかすことができる。
住所情報(住所=大阪府)163aをぼかす場合に、ぼかし指示(X=0,Y=3)を受け付けると、図5に示した番号―都道府県名対応表130aの「大阪府」に対応付けられている番号=23に対して、23−0=23、及び、23+3=26の演算を施し、演算の結果に基づき、23番から26番までの都道府県名を用いて、「大阪府」である住所を、「大阪府、兵庫県、京都府、及び滋賀県の内の何れか」にぼかすことができる。
ぼかし指示受付部207は、ぼかし処理を行う身元情報が年齢情報161aである場合には、年齢=24歳と受け付けたぼかし指示(X,Y)とを、ぼかし用公開鍵取得部208、及びぼかし身元認証情報生成部209へ出力する。ぼかし処理を行う身元情報が国籍情報(国籍=アメリカ)162aである場合には、国籍情報をぼかす旨を示す情報と、「アメリカ」に対応付けられている番号=50と、受け付けたぼかし指示(X,Y)とを、ぼかし用公開鍵取得部208、及びぼかし身元認証情報生成部209へ出力する。ぼかし処理を行う身元情報が住所情報(住所=大阪府)163aである場合には、住所情報をぼかす旨を示す情報と、「大阪府」に対応付けられている番号=23と、受け付けたぼかし指示(X,Y)とを、ぼかし用公開鍵取得部208、及びぼかし身元認証情報生成部209へ出力する。
(8)ぼかし用公開鍵取得部208
ぼかし用公開鍵取得部208は、ぼかし指示受付部207から、年齢=24歳とぼかし指示(X,Y)とを受け取った場合、24−0=24以上、24+3=27以下の全てのぼかし用公開鍵を要求する年齢ぼかし用公開鍵取得要求を生成する。ぼかし用公開鍵取得部208は、生成した年齢ぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。ぼかし用公開鍵取得部208は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、要求に対応する年齢ぼかし用公開鍵を受信する。例えば、ぼかし指示が(X=0,Y=3)の場合、ぼかし用公開鍵取得部208は、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受信する。
ぼかし用公開鍵取得部208は、ぼかし指示受付部207から、「アメリカ」に対応する番号=50と、ぼかし指示(X=0,Y=3)とを受け取った場合、50−0=50以上、50+3=53以下の全てのぼかし用公開鍵を要求する国籍ぼかし用公開鍵取得要求を生成する。ぼかし用公開鍵取得部208は、生成した国籍ぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。ぼかし用公開鍵取得部208は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、要求に対応する国籍ぼかし用公開鍵を受信する。
ぼかし用公開鍵取得部208は、ぼかし指示受付部207から、「大阪府」に対応する番号=23と、ぼかし指示(X=0,Y=3)とを受け取った場合、23−0=23以上、23+3=26以下の全てのぼかし用公開鍵を要求する住所ぼかし用公開鍵取得要求を生成する。ぼかし用公開鍵取得部208は、生成した住所ぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。ぼかし用公開鍵取得部208は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、要求に対応する住所ぼかし用公開鍵を受信する。
ぼかし用公開鍵取得部208は、取得したぼかし用公開鍵を、ぼかし身元認証情報生成部209へ出力する。
(9)ぼかし身元認証情報生成部209
図11は、ぼかし身元認証情報生成部209の機能的な構成を示す機能ブロック図である。同図に示すように、ぼかし身元認証情報生成部209は、データ分割部221、身元情報変換部222、リング署名生成部223、及びデータ連結部224から構成される。
(a)データ分割部221
データ分割部221は、身元認証情報保管部205から、身元認証情報160を読み出す。データ分割部221は、身元認証情報160に含まれる年齢認証情報161を、年齢情報(年齢=24歳)161aと「24歳」認証用秘密鍵161bとに分割し、国籍認証情報162を、国籍情報(国籍=アメリカ)162aと「アメリカ」認証用秘密鍵162bとに分割し、住所認証情報163を、住所情報(住所=大阪府)163aと「大阪府」認証用秘密鍵163bとに分割する。
データ分割部221は、年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aを、身元情報変換部222へ出力し、「24歳」認証用秘密鍵161b、「アメリカ」認証用秘密鍵162b、及び「大阪府」認証用秘密鍵163bを、リング署名生成部223へ出力する。
(b)身元情報変換部222
身元情報変換部222は、予め内部に、番号―国名対応表120a(図4参照)と、番号―都道府県名対応表130a(図5参照)とを保持している。
身元情報変換部222は、データ分割部221から、年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aを受け取る。
身元情報変換部222は、ぼかし指示受付部207から、年齢=24歳と、ぼかし指示(X,Y)とを受け取った場合、受け取ったぼかし指示に基づき、年齢=24歳をぼかして、ぼかし年齢情報を生成する。具体的には、X=0、Y=3の場合、身元情報変換部222は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」を生成する。
身元情報変換部222は、ぼかし指示受付部207から、国籍情報をぼかす旨を示す情報と、番号=50と、ぼかし指示(X,Y)とを受け取った場合、受け取ったぼかし指示に基づき、国籍=アメリカをぼかして、ぼかし国籍情報を生成する。具体的には、X=0、Y=3の場合、身元情報変換部222は、50番から53番までの番号に対応する国名を、番号―国名対応表120aから読み出して、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」を生成する。
身元情報変換部222は、ぼかし指示受付部207から、住所情報をぼかす旨を示す情報と、番号=23と、ぼかし指示(X,Y)とを受け取った場合、受け取ったぼかし指示に基づき、住所=大阪府をぼかして、ぼかし住所情報を生成する。具体的には、X=0、Y=3の場合、身元情報変換部222は、23番から26番までの番号に対応する都道府県名を、番号―都道府県名対応表130aから読み出して、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」を生成する。
身元情報変換部222は、生成したぼかし年齢情報、ぼかし国籍情報、及びぼかし住所情報から成るぼかし身元情報を生成し、生成したぼかし身元情報を、リング署名生成部223及びデータ連結部224へ出力する。ここで、例えば、ぼかし処理を行う身元情報が年齢情報のみである場合には、ぼかし身元情報は、ぼかし年齢情報のみを含む情報となる。
(c)リング署名生成部223
ここでは先ず、リング署名について説明する。リング署名とは、以下の(i)及び(ii)の機能を実現するデジタル署名方式のことである。
(i)リング署名生成時には、1個の秘密鍵と1個以上で任意数の任意の公開鍵とを用いて、メッセージMに対するリング署名Sを生成する。
(ii)リング署名検証時には、検証者には、リング署名Sを検証するためにどの公開鍵を用いれば良いかという情報だけが提示される。検証者は、それらの公開鍵を用いてリング署名Sを検証することで、「検証に用いた公開鍵のうちどれか1つの公開鍵に対応する秘密鍵によってそのリング署名Sが生成されたこと」だけを確認することが可能であるが、具体的にどの公開鍵に対応する秘密鍵で作成されたかを知ることはできない。
本発明におけるリング署名は、上記(i)及び(ii)の機能を実現するデジタル署名方式であれば何でも良いが、リング署名生成部223は、「Advances in Cryptorogy ASIACRYPT2001(Springer刊)」に所収のRonald L.Rivest、Adi Shamir、Yael Tauman「How to Leak a Secret」に記載のリング署名方式を用いるものとする。
次に、リング署名生成部223による処理について、ぼかし処理を行う身元情報毎に、具体例を用いて説明する。
(年齢情報にぼかし処理を行う場合)
リング署名生成部223は、データ分割部221から「24歳」認証用秘密鍵(d_24)を受け取る。また、リング署名生成部223は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」を受け取り、ぼかし用公開鍵取得部208から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受け取る。
リング署名生成部223は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」をメッセージMとして、「24歳」認証用秘密鍵(d_24)、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を用いて、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」を生成する。リング署名生成部223は、生成した年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」を、データ連結部224へ出力する。
なお、年齢認証用リング署名として、上記の5つのデータが生成されるが、生成の手順については、動作の説明で述べる。
(国籍情報にぼかし処理を行う場合)
リング署名生成部223は、データ分割部221から「アメリカ」認証用秘密鍵(d_50)を受け取る。また、リング署名生成部223は、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」を受け取り、ぼかし用公開鍵取得部208から、「アメリカ」ぼかし用公開鍵(e_50,n_50)、「カナダ」ぼかし用公開鍵(e_51,n_51)、「メキシコ」ぼかし用公開鍵(e_52,n_52)、及び「グアテマラ」ぼかし用公開鍵(e_53,n_53)を受け取る。
リング署名生成部223は、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」をメッセージMとして、「アメリカ」認証用秘密鍵(d_50)、「アメリカ」ぼかし用公開鍵(e_50,n_50)、「カナダ」ぼかし用公開鍵(e_51,n_51)、「メキシコ」ぼかし用公開鍵(e_52,n_52)、及び「グアテマラ」ぼかし用公開鍵(e_53,n_53)を用いて、国籍認証用リング署名「C_50,S_50,S_51,S_52,S_53」を生成する。リング署名生成部223は、生成した国籍認証用リング署名「C_50,S_50,S_51,S_52,S_53」を、データ連結部224へ出力する。
(住所情報にぼかし処理を行う場合)
リング署名生成部223は、データ分割部221から「大阪府」認証用秘密鍵(d_23)を受け取る。また、リング署名生成部223は、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」を受け取り、ぼかし用公開鍵取得部208から、「大阪府」ぼかし用公開鍵(e_23,n_23)、「兵庫県」ぼかし用公開鍵(e_24,n_24)、「京都府」ぼかし用公開鍵(e_25,n_25)、及び「滋賀県」ぼかし用公開鍵(e_26,n_26)を受け取る。
リング署名生成部223は、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」をメッセージMとして、「大阪府」認証用秘密鍵(d_23)、「大阪府」ぼかし用公開鍵(e_23,n_23)、「兵庫県」ぼかし用公開鍵(e_24,n_24)、「京都府」ぼかし用公開鍵(e_25,n_25)、及び「滋賀県」ぼかし用公開鍵(e_26,n_26)を用いて、住所認証用リング署名「C_23,S_23,S_24,S_25,S_26」を生成する。リング署名生成部223は、生成した住所認証用リング署名「C_23,S_23,S_24,S_25,S_26」を、データ連結部224へ出力する。
(d)データ連結部224
データ連結部224は、身元情報変換部222から、ぼかし年齢情報、ぼかし国籍情報、及びぼかし住所情報を受け取る。また、データ連結部224は、リング署名生成部223から、年齢認証用リング署名、国籍認証用リング署名、及び住所認証用リング署名を受け取る。
データ連結部224は、ぼかし年齢情報と年齢認証用リング署名とを連結し、ぼかし年齢認証データを生成し、ぼかし国籍情報と国籍認証用リング署名とを連結し、ぼかし国籍認証データを生成し、ぼかし住所情報と住所認証用リング署名とを連結し、ぼかし住所認証データを生成する。
データ連結部224は、年齢認証データ、ぼかし国籍認証データ、及びぼかし住所認証データを連結して、提示用身元認証情報を生成する。データ連結部224は、生成した提示用身元認証情報を、サービス利用要求送信部210へ出力する。
図12(a)は、サービス利用装置20が、サービス提供装置1(40)に提示する提示用身元認証情報の一例を示す図である。サービス提供装置1(40)が提示を要求する身元情報は、「年齢」のみであるから、提示用身元認証情報250は、ぼかし年齢認証データのみから構成されており、ぼかし年齢認証データは、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250a、及び年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを含む。
図12(b)は、サービス利用装置20が、サービス提供装置2(50)に提示する提示用身元認証情報の一例を示す図である。サービス提供装置2(50)が提示を要求する身元情報は、「年齢」、「国籍」、及び「住所」であるから、提示用身元認証情報260は、ぼかし年齢認証データ270、ぼかし国籍認証データ280、及びぼかし住所認証データ290から構成される。
ぼかし年齢認証データ270は、図12(a)と同一の内容である。ぼかし国籍認証データ280は、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」280a、及び国籍認証用リング署名「C_50,S_50,S_51,S_52,S_53」280bを含む。また、ぼかし住所認証データ290は、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」290a、及び住所認証用リング署名「C_23,S_23,S_24,S_25,S_26」290bを含む。
(10)サービス利用要求送信部210
サービス利用要求送信部210は、ぼかし身元認証情報生成部209から、提示用認証情報を受け取る。サービス利用要求送信部210は、提示用認証情報に、利用要求を示すメッセージや、利用したいコンテンツにID等を付加し、サービス利用要求を生成する。サービス利用要求送信部210は、生成したサービス利用要求を、ネットワーク60を介して、サービス提供装置1(40)又はサービス提供装置2(50)へ送信する。
(11)コンテンツ受信部211
コンテンツ受信部211は、ネットワーク60を介して、サービス提供装置1(40)及びサービス提供装置2(50)からコンテンツを受信する。コンテンツ受信部211は、受信したコンテンツを、コンテンツ再生部212へ出力する。
(12)コンテンツ再生部212
コンテンツ再生部212は、バッファ、デコーダ、ディスプレイ等から構成され、コンテンツ受信部211から、コンテンツを受け取ると、受け取ったコンテンツを、デコードし、ディスプレイに表示する。
3.ぼかし用公開鍵管理装置30
ぼかし用公開鍵管理装置30は、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニットなどから構成されるコンピュータシステムであり、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、ぼかし用公開鍵管理装置30は、その機能を達成する。なお、ぼかし用公開鍵管理装置30の機能的な構成については図示していない。
ぼかし用公開鍵管理装置30は、認証システム1の立ち上げ時に、認証装置10から、年齢ぼかし用公開鍵データベース300、国籍ぼかし用公開鍵データベース、及び住所ぼかし用公開鍵データベースを受け取り、内部で管理している。なお、年齢ぼかし用公開鍵データベース300のデータ構成は、図6に示したとおりである。
ぼかし用公開鍵管理装置30は、サービス利用装置20から、ネットワーク60を介して年齢ぼかし用公開鍵取得要求、国籍ぼかし用公開鍵取得要求、及び住所ぼかし用公開鍵取得要求を受信する。ぼかし用公開鍵管理装置30は、受信した各ぼかし用公開鍵取得要求に従い、各データベースからぼかし用公開鍵を読み出し、読み出したぼかし用公開鍵を、ネットワーク60を介して、サービス利用装置20へ送信する。
具体例として、ぼかし用公開鍵管理装置30は、サービス利用装置20から、24歳以上、27歳以下の全てのぼかし用公開鍵を要求する年齢ぼかし用公開鍵取得要求を受信した場合、年齢ぼかし用公開鍵データベース300から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を読み出す。ぼかし用公開鍵管理装置30は、読み出した各ぼかし用公開鍵を、サービス利用装置20へ送信する。
4.サービス提供装置1(40)
図13は、サービス提供装置1(40)の構成を機能的に示す機能ブロック図である。同図に示すように、サービス提供装置1(40)は、データ分割部401、認証用公開鍵取得部402、リング署名検証部403、ユーザ身元情報確認部404、ユーザ登録部405、サービスデータ送信制御部406、コンテンツ格納部407、及びコンテンツ送信部408から構成される。
サービス提供装置1(40)は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニット等から構成される、コンピュータシステムであり、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、サービス提供装置1(40)は、その機能を達成する。
以下では、サービス提供装置1(40)の各構成要素について説明する。
(1)データ分割部401
データ分割部401は、ネットワーク60を介して、サービス利用装置20からサービス利用要求を受け取る。データ分割部401は、受け取ったサービス利用要求から提示用身元認証情報を抽出する。
以下のサービス提供装置1(40)の説明においては、データ分割部401が、図12(a)に示した提示用身元認証情報250を抽出した場合を具体例として用い、説明する。
データ分割部401は、提示用身元認証情報250を、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aと、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bとに分離し、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aを、認証用公開鍵取得部402、及びユーザ身元情報確認部404へ出力し、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを、リング署名検証部403へ出力する。
(2)認証用公開鍵取得部402
認証用公開鍵取得部402は、データ分割部401から、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aを受け取る。認証用公開鍵取得部402は、24歳、25歳、26歳、及び27歳のそれぞれに対応するぼかし用公開鍵を要求するぼかし用公開鍵取得要求を生成し、生成したぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。
認証用公開鍵取得部402は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受信する。認証用公開鍵取得部402は、受信した各年齢ぼかし用公開鍵を、リング署名検証部403へ出力する。
(3)リング署名検証部403
リング署名検証部403は、データ分割部401から、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを受け取り、更に、認証用公開鍵取得部402から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受け取る。
リング署名検証部403は、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを、受け取った各年齢ぼかし用公開鍵を用いて検証する。検証の手順については、動作の説明において、詳細に述べる。
リング署名検証部403は、年齢認証用リング署名250bの検証に成功した場合は、検証成功を示す信号を、サービスデータ送信制御部406へ通知する。年齢認証用リング署名250bの検証に失敗した場合は、処理を終了する。
(4)ユーザ身元情報確認部404
ユーザ身元情報確認部404は、データ分割部401から、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aを受け取る。
ユーザ身元情報確認部404は、ぼかし年齢情報250aを確認し、サービス利用装置20から要求されたコンテンツが、ぼかし年齢情報250aが示す年齢のユーザ対し、提供可能であるか否かを判断する。
例えば、サービス利用装置20から要求されたコンテンツが、「20歳以上限定」という制限付のコンテンツである場合には、ユーザ身元情報確認部404は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aが、「20歳以上限定」の条件を満たしているか否かをチェックする。この場合、条件を満たしていることから、ユーザ身元情報確認部404は、コンテンツを提供可能であると判断する。ここで、サービス利用装置20へ提供するコンテンツは、サービス利用要求に含まれるコンテンツIDにより識別されるコンテンツであるとする。
ユーザ身元情報確認部404は、コンテンツを提供可能であると判断する場合には、サービス提供OKを示す信号をサービスデータ送信制御部406へ出力し、ぼかし年齢情報250aを、ユーザ登録部405へ出力する。一方、コンテンツの提供が不可能であると判断する場合には、ユーザ身元情報確認部404は、その旨をサービス利用装置20へ通知するような構成としてもよい。
(5)ユーザ登録部405
ユーザ登録部405は、サービスを利用しているユーザを登録するユーザリストを記憶している。ユーザ登録部405は、ユーザ身元情報確認部404から、ぼかし年齢情報250aを受け取ると、受け取ったぼかし年齢情報250aを、ユーザリストに登録する。
(6)サービスデータ送信制御部406
サービスデータ送信制御部406は、リング署名検証部403から、リング署名の検証が成功した旨を示す信号を受け取り、且つ、ユーザ身元情報確認部404から、サービス提供OKを示す信号を受け取った場合に、コンテンツ送信部408に対し、コンテンツの読み出しを指示する。
(7)コンテンツ格納部407
コンテンツ格納部407は、ハードディスクユニットから構成されており、内部にコンテンツを格納している。ここで、コンテンツの一例は、動画像データがMPEG−2(Moving Picture Experts Group Phase 2)規格に従い圧縮符号化されて生成されたデータであるとする。なお、コンテンツは動画像データに限定されないのは、もちろんであり、静止画像データ、音楽データ、コンピュータプログラム、ゲーム用プログラム、地図等であってもよい。
(8)コンテンツ送信部408
コンテンツ送信部408は、サービスデータ送信制御部406からコンテンツの読み出しを指示されると、コンテンツ格納部407からコンテンツを読み出す。コンテンツ送信部408は、読み出したコンテンツを、ネットワーク60を介して、サービス利用装置20へ送信する。
5.サービス提供装置2(50)
サービス提供装置2(50)は、サービス提供装置1(40)と同一の構成を有するため、サービス提供装置2(50)の機能ブロック図については、図示していない。
サービス提供装置2(50)は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニットなどから構成されるコンピュータシステムである。
サービス提供装置2(50)は、サービス提供装置1(40)と同様に、サービス利用装置20へのサービス提供に際して、サービス利用装置20のユーザに対し、身元認証情報の提示を要求する。このとき、サービス提供装置2(50)は、サービス利用装置のユーザに対し、年齢、国籍、及び住所の提示を求めるものとする。
<動作>
1.システム全体の動作
図14は、認証システム1全体の動作を示すフローチャートである。
認証システム1は、先ずシステムセットアップ処理を行う(ステップS1)。その後、認証システム1は、身元認証情報発行処理を行い(ステップS2)、その後、サービス利用処理を行う(ステップS3)。
2.システムセットアップ処理の動作
図15及び図16は、認証システム1のセットアップ処理の動作を示すフローチャートであり、図14に示したフローチャートのステップS1の詳細である。なお、システムセットアップ処理の動作は、認証装置10を主体として記述している。
認証装置10の署名鍵生成部101は、署名生成鍵を生成し(ステップS101)、生成した署名生成鍵を、身元認証情報生成部106へ出力し、身元認証情報生成部106は、署名生成鍵を格納する(ステップS102)。署名鍵生成部101は、ステップS101で生成した署名生成鍵に対応する署名検証鍵を生成し(ステップS103)、生成した署名検証鍵を、サービス利用装置20へ通知する(ステップS104)。
その後、ぼかし用公開鍵生成部102は、年齢、国籍、住所毎に、ステップS105からステップS117までを繰り返す。
先ず、ぼかし用公開鍵生成部102は、i=0とし(ステップS106)、素数p_i、q_iをランダムに生成する(ステップS107)。その後、RSA暗号のモジュラスn_i=p_i×q_iを計算する(ステップS108)。
次に、ぼかし用公開鍵生成部102は、2≦d_i≦n_i−1となる、RSA暗号の秘密鍵d_iをランダムに生成し(ステップS109)、e_i×d_i=1 mod λ(n_i) を満たすRSA暗号の公開鍵を計算する(ステップS110)。
ここで、λ(n_i)は、カーマイル関数であり、上記n−1に対するカーマイル関数λ(n_i)の値は、p_iとq_iとの最小公倍数になる。
ぼかし用公開鍵生成部102は、ステップS109で生成したRSA暗号の秘密鍵d_iを、i番目を認証するための認証用秘密鍵とし(ステップS111)、ステップS110で計算した公開鍵組(e_i,n_i)を、i番目のぼかし用公開鍵とする(ステップS112)。次に、ぼかし用公開鍵生成部102は、i=i+1とする(ステップS113)。
全てのiについて、認証用秘密鍵とぼかし用公開鍵との生成が終了していない場合(ステップS114でNO)、ぼかし用公開鍵生成部102は、ステップS107に戻り、処理を続ける。すべてのiについて、認証用秘密鍵とぼかし用公開鍵との生成が終了した場合(ステップS114でYES)、ぼかし用公開鍵生成部102は、i個の認証用秘密鍵から成る認証用秘密鍵データベースを作成する(ステップS115)。なお、このとき、国籍については、番号―国名対応表120a(図4参照)を同時に生成し、住所については、番号―都道府県名対応表130a(図5参照)を同時に生成するものとする。
続いて、ぼかし用公開鍵生成部102は、i個のぼかし用公開鍵から成るぼかし用公開鍵データベースを作成する(ステップS116)。
年齢、国籍、及び住所について、認証用秘密鍵データベースとぼかし用公開鍵データベースとの作成が終了すると(ステップS117)、ぼかし用公開鍵生成部102は、年齢認証用秘密鍵データベース110、国籍認証用秘密鍵データベース120、及び住所認証用秘密鍵データベース130を、身元認証用秘密鍵保持部105へ出力し、身元認証用秘密鍵保持部105は、各データベースを格納する(ステップS118)。
次に、ぼかし用公開鍵生成部102は、年齢ぼかし用公開鍵データベース300、国籍ぼかし用公開鍵データベース、及び住所ぼかし用公開鍵データベースを、ぼかし用公開鍵管理装置30へ配布する(ステップS119)。
3.身元認証情報発行処理の動作
図17及び図18は、認証システム1の身元認証情報発行処理の動作を示すフローチャートであり、図14に示したフローチャートにおけるステップS2の詳細である。
先ず、サービス利用装置20は、ユーザの入力により、身元認証情報取得の指示を受け付けると(ステップS201)、ユーザ身元情報記憶部201に格納されているユーザ身元情報140を、身元認証情報発行依頼データ送信部202に転送する(ステップS202)。
身元認証情報発行依頼データ送信部202は、ユーザ身元情報140を含む身元認証情報発行依頼データを作成する(ステップS203)。身元認証情報発行依頼データ送信部202は、身元認証情報発行依頼データを、ネットワーク60を介して認証装置10へ送信し、認証装置10の身元認証情報発行依頼データ受信部103は、身元認証情報発行依頼データを受信する(ステップS204)。
身元認証情報発行依頼データ受信部103は、受信した身元認証情報発行依頼データから、ユーザ身元情報140を抽出し、抽出したユーザ身元情報140を、ユーザ身元情報確認部104へ転送する(ステップS205)。次に、ユーザ身元情報確認部104は、受け取ったユーザ身元情報140が正しいか否かを確認する(ステップS206)。
ユーザ身元情報140が正しくないと確認された場合(ステップS207でNO),認証装置10は、身元認証情報発行処理を終了する。ユーザ身元情報140が正しいと確認された場合(ステップS207でYES)、ユーザ身元情報確認部104は、ユーザ身元情報140を、身元認証情報生成部106のデータ分割部151へ転送する(ステップS208)。
データ分割部151は、受け取ったユーザ身元情報140を年齢情報141、国籍情報142、及び住所情報143に分離し、各情報を、身元認証用秘密鍵取得部152及び身元認証用秘密鍵付加部153へ出力する。
次に、身元認証用秘密鍵取得部152は、年齢情報141に対応する「24歳」認証用秘密鍵d_24を、身元認証用秘密鍵保持部105に格納されている年齢認証用秘密鍵データベース110から取得し(ステップS209)、国籍情報142に対応する「アメリカ」認証用秘密鍵d_50を、国籍認証用秘密鍵データベース120から取得し(ステップS210)、住所情報143に対応する「大阪」認証用秘密鍵d_23を、住所認証用秘密鍵データベース130から取得する(ステップS211)。身元認証用秘密鍵取得部152は、取得した3個の秘密鍵を、身元認証用秘密鍵付加部153へ出力する。
続いて、身元認証用秘密鍵付加部153は、年齢情報141と「24歳」認証用秘密鍵d_24とを結合し年齢認証情報161を生成し、国籍情報142と「アメリカ」認証用秘密鍵d_50とを結合し国籍認証情報162を生成し、住所情報143と「大阪」認証用秘密鍵d_23を結合し住所認証情報163を生成する(ステップS212)。身元認証用秘密鍵付加部153は、年齢認証情報161、国籍認証情報162、及び住所認証情報163を、署名生成部154へ出力する。
署名生成部154は、年齢認証情報161、国籍認証情報162、及び住所認証情報163対し、署名生成鍵を用いてデジタル署名を施して、認証装置署名データを生成する(ステップS250)。署名生成部154は、生成した認証装置署名データを、年齢認証情報161、国籍認証情報162、住所認証情報163に付加して、身元認証情報160を生成する(ステップS251)。署名生成部154は、生成した身元認証情報160を、身元認証情報送信部107へ出力する。
身元認証情報送信部107は、身元認証情報160を、ネットワーク60を介してサービス利用装置20へ送信し、サービス利用装置20の身元認証情報受信部203は、身元認証情報160を受信する(ステップS252)。
身元認証情報受信部203は、受信した身元認証情報160を、署名検証部204へ出力する。
署名検証部204は、受け取った身元認証情報160を、署名検証鍵を用いて検証する(ステップS253)。署名検証に失敗した場合(ステップS254でNO)、サービス利用装置20は、処理を終了する。署名検証に成功した場合(ステップS254でYES)、署名検証部204は、身元認証情報160を、身元認証情報保管部205へ出力し、身元認証情報保管部205は、身元認証情報160を格納する(ステップS255)。
4.サービス利用処理の動作
図19、図20、及び図21は、認証システム1のサービス利用処理の動作を示すフローチャートであり、図14に示したフローチャートにおけるステップS3の詳細である。
先ず、サービス利用装置20は、ユーザの入力により、サービス利用の指示を受け付ける(ステップS301)。なお、ここでは具体例として、サービス利用装置20は、ユーザから、サービス提供装置1(40)に対しコンテンツの利用を要求する指示を受け付けるものとするが、サービス提供装置2(50)に対しコンテンツの利用要求を行う動作についても同様である。
身元認証情報表示部206は、身元認証情報保管部205に格納されている身元認証情報160から、年齢情報161a、国籍情報162a、及び住所情報163aを抽出し、ディスプレイに表示する(ステップS302)。ぼかし指示受付部207は、ユーザの入力により、サービス提供装置1(40)に対して提示する身元情報の選択を受け付ける(ステップS303)。
以下のステップS305からステップS354までの処理を、サービス提供装置1(40)に対して提示する身元認証情報毎に繰り返す。
先ず、身元認証情報が年齢情報161aである場合(ステップS306でYES)、ぼかし身元認証情報生成部209の身元情報変換部222は、年齢=24歳=αとする(ステップS307)。
身元認証情報が、国籍情報162a及び住所情報163aの何れかである場合(ステップS306でNO)、身元情報変換部222は、身元情報に対応する番号を取得し(ステップS308)、取得した番号をαとする(ステップS309)。
具体的には、身元情報が国籍情報162aである場合、身元情報変換部222は、番号―国名対応表120aから、国籍=アメリカに対応する番号「50」を取得して、α=50とする。身元情報が住所情報163aである場合、身元情報変換部222は、番号―都道府県名対応表130aから、住所=大阪府に対応する番号「23」を取得して、α=23とする。
次に、ぼかし指示受付部207は、ぼかし指示(X,Y)の入力を受け付け(ステップS310)、受け付けた身元ぼかし指示(X,Y)を、身元情報変換部222へ出力する。
身元情報変換部222は、ぼかし指示(X,Y)を受け取ると、ぼかし身元情報を生成する(ステップS311)。具体的には、身元情報変換部222は、ステップS307又はステップS309で設定したαの値と、ぼかし指示(X,Y)とを用いて、α−X≦α≦α+Yを満たすαに対応する身元情報を取得し、取得したすべての身元情報を連結して、ぼかし身元情報を生成する。身元情報変換部222は、生成したぼかし身元情報を、リング署名生成部223及びデータ連結部224へ出力する。
ここで、身元情報が年齢情報161aであり、ぼかし指示が、X=0及びY=3であるとすると、身元情報変換部222は、ステップS311において、ぼかし年齢情報として、「年齢=24歳、25歳、26歳、27歳」を生成する。
リング署名生成部223は、ぼかし身元情報を受け取ると、ぼかし身元情報に含まれる各身元情報に対応するぼかし用公開鍵を要求するぼかし用公開鍵取得要求を生成し(ステップS312)、生成したぼかし用公開鍵取得要求を、ぼかし用公開鍵取得部208へ出力する。
ぼかし用公開鍵取得部208は、ネットワーク60を介してぼかし用公開鍵管理装置30へぼかし用公開鍵取得要求を送信し、ぼかし用公開鍵管理装置30は、ぼかし用公開鍵取得要求を受信する(ステップS313)。
ぼかし用公開鍵管理装置30は、要求されたぼかし用公開鍵をぼかし用公開鍵データベースから抽出する(ステップS350)。ぼかし用公開鍵管理装置30は、抽出したぼかし用公開鍵を、ネットワーク60を介して、サービス利用装置20へ送信し、サービス利用装置20のぼかし用公開鍵取得部208は、ぼかし用公開鍵を受信する(ステップS351)。
ぼかし用公開鍵取得部208は、取得したぼかし用公開鍵をリング署名生成部223へ出力する。
リング署名生成部223は、リング署名を生成し(ステップS352)、生成したリング署名を、データ連結部224へ出力する。データ連結部224は、ぼかし用身元情報と、リング署名とを連結する(ステップS353)。
すべての身元情報について処理が終了すると(ステップS354)、データ連結部224は、提示用身元認証情報を生成する(ステップS401)。データ連結部224は、生成した提示用身元認証情報を、サービス利用要求送信部210へ出力する。
サービス利用要求送信部210は、提示用身元認証情報を受け取ると、提示用身元認証情報、コンテンツID等を含むサービス利用要求を生成する(ステップS402)。サービス利用要求送信部210は、生成したサービス利用要求を、ネットワーク60を介して、サービス提供装置1(40)へ送信し、サービス提供装置1(40)のデータ分割部401は、サービス利用要求を受信する(ステップS403)。
データ分割部401は、受信したサービス利用要求に含まれる提示用身元認証情報から、ぼかし身元情報とリング署名とを抽出し(ステップS404)、ぼかし身元情報を、認証用公開鍵取得部402及びユーザ身元情報確認部404へ出力し、リング署名をリング署名検証部403へ出力する。
次に、ステップS405からステップS411までをぼかし身元情報毎に繰り返す。
先ず、認証用公開鍵取得部402は、ぼかし身元情報に対応するぼかし用公開鍵取得要求を生成する(ステップS406)。具体例として、受け取ったぼかし身元情報が、図12(a)に示したぼかし年齢情報250aである場合には、認証用公開鍵取得部402は、24歳、25歳、26歳、及び27歳のそれぞれに対応する4個のぼかし用公開鍵を要求するぼかし用公開鍵取得要求を生成する。
認証用公開鍵取得部402は、生成したぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信し、ぼかし用公開鍵管理装置30は、ぼかし用公開鍵取得要求を受信する(ステップS407)。
ぼかし用公開鍵管理装置30は、要求されたぼかし用公開鍵を、ぼかし用公開鍵データベースから抽出する(ステップS408)。ぼかし用公開鍵管理装置30は、抽出したぼかし用公開鍵を、ネットワーク60を介してサービス提供装置1(40)へ送信し、サービス提供装置1(40)の認証用公開鍵取得部402は、ぼかし用公開鍵を受信する(ステップS409)。認証用公開鍵取得部402は、受信したぼかし用公開鍵を、リング署名検証部403へ出力する。
次に、リング署名検証部403は、リング署名検証処理を行う(ステップS410)。すべてのぼかし身元情報についての処理が終了すると(ステップS411)、サービスデータ送信制御部406は、すべてのリング署名の検証に成功したか否かを判断し、何れかのリング署名の検証に失敗した場合は(ステップS412でNO)、処理を終了する。すべてのリング署名の検証に成功した場合(ステップS412でYES)、ユーザ身元情報確認部404は、データ分割部401から受け取ったぼかし身元情報を確認し(ステップS413)、ユーザに対し、サービス提供が可能であるか否かを判断する(ステップS414)。ぼかし身元情報の確認により、サービス提供が不可能である場合は(ステップS414でNO)、処理を終了する。サービス提供が可能である場合は(ステップS414で YES)、ユーザ登録部405は、ユーザ登録処理を行う(ステップS415)。
すべてのリング署名の検証に成功し、更にサービス提供が可能であると判断された場合には、コンテンツ送信部408は、コンテンツ格納部407からコンテンツを読み出す(ステップS416)。
コンテンツ送信部408は、読み出したコンテンツを、ネットワーク60を介して、サービス利用装置20へ送信し、サービス利用装置20のコンテンツ受信部211は、コンテンツを受信する(ステップS417)。コンテンツ受信部211は、受信したコンテンツをコンテンツ再生部212へ出力し、コンテンツ再生部212は、コンテンツを再生する(ステップS418)。
5.リング署名生成処理の動作
図22及び図23は、リング署名生成部223による、リング署名生成処理の動作を示すフローチャートである。なお、ここに示す動作は、図20に示したフローチャートの、ステップS352の詳細である。
なお、リング署名方式における公開鍵及び秘密鍵の各ペアには、0から順に番号付けがされているものとする。本実施形態では、年齢認証用秘密鍵、及び年齢ぼかし用公開鍵のペアには、0歳から99歳までの年齢に対応した番号付けに従うものとする。また、国籍認証用秘密鍵、及び国籍ぼかし用公開鍵のペアについては、番号―国名対応表120a、住所認証用秘密鍵、及び住所ぼかし用公開鍵のペアについては、番号―都道府県名対応表130aの番号付けに従うものとする。
リング署名生成部223は、α=L、α−X=A、α+Y=Bとし、ぼかし身元情報を、メッセージMとする(ステップS501)。
リング署名生成部223は、番号Aから番号BまでのL番目(A≦L≦B)については、秘密鍵d_Lを用い、L番目以外については、公開鍵(e_i,n_i)(A≦i≦Bかつi≠L)を用いてメッセージMに対するリング署名を、以下の手順で生成する。
先ず、K=Hash(M)を計算する(ステップS502)。ここで、Hash(M)は、メッセージMに対して、システムセットアップ時に定めたシステム共通のハッシュ計算を行った結果を示す。
次に、C_Aをランダムに生成し(ステップS503)、CC_B=Dec(K、C_A)を計算する(ステップS504)。ここで、Dec(K,C_A)は、システムセットアップ時に定めた秘密鍵暗号方式により、データC_Aに対して、Kを鍵とした復号処理を行った結果を示す。
続いて、j=Aとして(ステップS505)、j=A、A+1、…、L−1に対して、ステップS506から、ステップS508までを繰り返す。
リング署名生成部223は、S_jをランダムに生成し(ステップS506)、Y_j=S_j^(e_j) mod n_j を計算する(ステップS507)。ここで、X^α は、Xのα乗を示す。
次に、リング署名生成部223は、CC_j=C_j(+)Y_j、C_(j+1)=Enc(K,CC_j)を計算する(ステップS508)。ここで、(+)は、ビットごとの排他的論理和演算を示し、Enc(K,CC_j)は、システムセットアップ時に定めた秘密鍵暗号方式により、データCC_jに対して、Kを鍵とした暗号化を行った結果を示す。
j=L−1の場合(ステップS509でYES)、ステップS511へ進む。j≠L−1の場合(ステップS509でNO)、j=A+1として、ステップS506へ戻り、処理を続ける。
続いて、j=Bとして(ステップS511)、j=B、B−1、…、L+1に対して、ステップS512からステップS514までを繰り返す。
リング署名生成部223は、S_jをランダムに生成し(ステップS512)、Y_j=S_j^(e_j) mod n_j を計算する(ステップS513)。
次に、リング署名生成部223は、C_j=CC_j(+)Y_j、C_(j−1)=Dec(K,C_j)を計算する(ステップS514)。
j=L+1の場合(ステップS515でYES)、ステップS517へ進む。j≠L+1の場合(ステップS515でNO)、j=B−1として、ステップS512へ戻り、処理を続ける。
続いて、リング署名生成部223は、Y_L=C_L(+)CC_L、S_L=Y_L^(d_L) mod n_Lを計算する(ステップS517)。
リング署名生成部223は、以上の計算により得られたデータ組(C_A,S_A,S_(A+1),…,S_B)をリング署名とする(ステップS518)。
《リング署名生成の具体例》
ここでは、リング署名生成処理の具体例として、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」に対してリング署名を生成し、年齢認証用リング署名を作成する手順を説明する。
このとき、メッセージMは「24歳、25歳、26歳、27歳」を数値化したデータであり、用いる公開鍵は、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)、であり、用いる秘密鍵は、「24歳」認証用秘密鍵d_24である。また、このとき、ステップS501における各値は、L=24、A=24、B=27である。
リング署名生成部223は、
(1)K=Hash(M)を計算する。
(2)C_24をランダムに発生させ、CC_27=Dec(K,C_24)を計算する。
(3)A=24、L=24となるので、ステップS505からステップS510までの処理は行わない。
(4)j=27、26、25に対して、以下の(4−1)、(4−2)の計算を繰り返し行う。
(4−1)S_jをランダムに生成し、Y_j=S_j^(e_j) mod n_j を計算する。
(4−2)C_j=CC_j(+)Y_j、C_(j−1)=Dec(K,C_j)を計算する。
(5)Y_24=C_24(+)CC_24、S_24=Y_24^(d_24) mod n_24 を計算する。
以上の計算により得られたデータ組(C_24、S_24、S_25、S_26、S_27)をリング署名として、データ連結部224に転送する。
6.リング署名検証処理の動作
図24は、リング署名検証処理の動作を示すフローチャートである。なお、ここに示す動作は、図21に示したフローチャートの、ステップS410の詳細である。
リング署名検証部403は、α−X=A、α+Y=Bとし、ぼかし身元情報を、メッセージMとする(ステップS601)。
リング署名検証部403は、K=Hash(M)を計算する(ステップS602)。
次に、リング署名検証部403は、j=Aとし(ステップS603)、Y_j=S_j^(e_j) mod n_j、CC_j=C_j(+)Y_j、C_(j+1)=Enc(K,CC_j)を計算する(ステップS604)。
j=Bの場合(ステップS605でYES)、ステップS607へ進む。j≠Bの場合(ステップS605でNO)、j=A+1として、ステップS604へ戻り、処理を続ける。
リング署名検証部403は、C_B=C_Aが成り立つか否か判断し、C_B=C_Aの場合(ステップS607でYES)、リング署名は正当なものと判定し(ステップS608)、C_B≠C_Aの場合(ステップS607でNO)、リング署名は不正なものと判定する(ステップS609)。
《リング署名検証の具体例》
ここでは、リング署名検証処理の具体例として、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」に対するリング署名を検証する手順を説明する。
このとき、メッセージMは「24歳、25歳、26歳、27歳」を数値化したデータであり、ステップS601における各値は、A=24、B=27である。
リング署名検証部403は、
(1)K=Hash(M)を計算する。
(2)j=24、25、26、27について、Y_j=S_j^(e_j) mod n_j、CC_j=C_j(+)Y_j、C_(j+1)=Enc(K,CC_j)を計算する。
(3)C_24=C_27が成り立てば、リング署名は正当なものと判定し、成り立たない場合は、リング署名は不正なものと判定する。
《認証システム1の安全性》
ここでは、認証システム1における安全性(1)及び(2)について説明する。
(1)ぼかし身元認証情報から、ぼかしを行う前のユーザ身元情報が分からないこと
(2)身元認証情報から、不正にぼかしを行って作成したぼかし身元認証情報が作成できないこと。
まず、(1)について説明する。図12(a)に示すぼかし身元認証情報250において、年齢情報に対してぼかし処理が行われている。年齢認証用リング署名250bからは、リング署名の性質により、「24歳」、「25歳」、「26歳」、「27歳」のどれか一つの認証用秘密鍵により署名が生成されたことは確認できるが、どの秘密鍵によって署名が生成されたかは特定できない。故に、用いるリング署名が上記の機能を満たしている限り、安全性(1)については保証される。
次に、(2)の安全性について説明する。年齢認証用リング署名250bは、リング署名の性質から、「24歳」、「25歳」、「26歳」、「27歳」の何れか一つの認証用秘密鍵を有する者(即ち、24歳もしくは25歳もしくは26歳もしくは27歳の人)しか、作成することはできない。従って、24歳から27歳の人以外が、年齢認証用リング署名250bを偽造することは、用いるリング署名が安全である限り不可能である。即ち、安全性(2)についても保証される。
<まとめ>
以上説明したように、サービス利用装置20は、個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置であって、前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段とを備えることを特徴とする。
また、サービス提供装置1(40)は、前記署名生成装置により生成されたデジタル署名データを検証する署名検証装置であって、前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段とを備えることを特徴とする。
本実施形態におけるサービス利用装置20は、自機で提示用身元認証情報を生成することが可能である。
例えば、サービス利用装置20が、サービス提供装置30にサービス要求を送信する都度、認証装置10に対して、提示用身元認証情報の発行を依頼するシステムについて考えると、認証装置10に対する提示用身元認証情報発行依頼が集中した場合には、発行業務に遅延が生じたり、場合によっては処理負荷が膨大になり過ぎてシステムがダウンしたりするという恐れがある。また、悪意を持ったユーザが結託して、故意に膨大な数の発行依頼を認証装置10に対して行ってシステムダウンを引き起こさせるといった攻撃に晒されるという恐れもあり、認証装置10が常に安定したサービスを提供することができない可能性がある。
本実施形態における認証システム1は、上述したように、サービス利用装置20が自機において提示用身元認証情報を生成することが可能あり、認証装置10に対して、提示用身元認証情報の発行を依頼する必要が無い。したがって、認証装置10に処理負荷が集中せず、安定したシステムを実現している。
<その他の変形例>
なお、本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に限定されないのは勿論であり、以下のような場合も本発明に含まれる。
(1)上記実施形態では、サービス提供装置1(40)及びサービス提供装置2(50)が、サービス利用装置20に提供するサービスは、コンテンツ配信のサービスであるが、本発明におけるサービスは、コンテンツ配信に限定されない。
(2)また、本発明において用いるハッシュ方式、暗号方式、リング署名方式は、上記実施形態で開示している方式に限定されるものではない。
(3)上記実施形態では、ユーザ身元情報として、年齢情報、国籍情報、住所情報の3つとしているが、ユーザ身元情報の種類は、これらに限定されるものではない。
(4)上記実施形態では、サービス利用装置20が、サービス提供装置1(40)、及びサービス提供装置2(50)に身元情報を開示する場合には、開示すべき身元情報の全てにぼかし処理を行う構成を有するが、本発明は、この構成に限定されない。例えば、ぼかし処理を行った身元情報に、ぼかし処理を行わない身元情報を付加した提示用身元情報を生成し、各サービス提供装置に提示する構成も本発明に含まれる。以下では、その具体例について説明する。
身元認証情報表示部206は、抽出した年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aに、「ぼかし処理を行う情報を選択してください。」というメッセージを付加して、ぼかし処理選択画面を生成する。身元認証情報表示部206は、生成したぼかし処理選択画面を、ディスプレイに表示する。
また、身元認証情報表示部206は、ぼかし指示受付部207を介して、ぼかし処理を行う情報が選択されると、選択された情報にどのようなぼかし処理を行うのかをユーザに問いかける、ぼかし指示受付画面を生成する。身元認証情報表示部206は、生成したぼかし指示受付画面を、ディスプレイに表示する。
ぼかし指示受付部207は、予め内部に、番号―国名対応表120a(図4参照)と、番号―都道府県名対応表130a(図5参照)とを保持している。
ぼかし指示受付部207は、身元認証情報表示部206に、ぼかし処理選択画面が表示されている状態において、キーボードやマウス等の入力デバイスを介して、ユーザから、年齢情報161a、国籍情報162a、及び住所情報163aの内、何れの身元情報に対してぼかし処理を行うかの選択を受け付ける。ここで、ぼかし処理を行う身元情報は、1つだけでも良いし、複数を指定しても良い。
なお、いずれの身元情報に対してぼかし処理を行うかは、ユーザが自由に指定することが可能な場合もあるし、利用するサービス、視聴したいコンテンツの種類等によって予め決められた制約の下で、ユーザが指定する場合もある。例えば、ユーザの正確な年齢情報を必要とするサービス又はコンテンツの場合には、ユーザは、年齢情報161aについては、ぼかし処理を行う指示が出せないこととする。
(5)上記実施形態におけるサービス提供装置1(40)のユーザ身元情報確認部404は、予め、コンテンツと当該コンテンツを提供可能であるユーザの年齢とを対応付けたテーブルを保持していてもよい。そして、当該テーブルを参照することにより、サービス利用装置20に対し、要求されたコンテンツを提供することが可能か否かを判断するように構成してもよい。サービス提供装置2(50)についても同様に、コンテンツと当該コンテンツを提供可能であるユーザの条件(年齢や居住地等)を対応付けたテーブルを保持しており、当該テーブルを参照することにより、サービス利用装置20に対し、要求されたコンテンツを提供することが可能であるか否かを判断するように構成してもよい。
(6)上記実施形態の認証装置10を構成する機能ブロックの一部又は全部、サービス利用装置20を構成する機能ブロックの一部又は全部、サービス提供装置1(40)を構成する機能ブロックの一部又は全部を、集積回路であるLSIにて実現してもよい。
これらの機能ブロックは、個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。このような技術には、バイオ技術の適用等が可能性としてありえる
(7)また、本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであってもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。また、これらの記録媒体に記録されている前記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
(8)上記実施形態及び上記変形例をそれぞれ組み合わせる構成も、本発明に含まれる。
本発明は、ユーザにコンテンツを提供する産業において、ユーザ側は、必要最低限の個人情報を開示し、コンテンツ提供側においては、ユーザの正当性を確認することができる仕組みとして利用することが可能である。また、本発明は、コンテンツの提供を受けて、当該コンテンツを利用する機器を製造、販売する産業においても利用可能である。
本発明は、身分証明書など、第三者機関によって認証された証明書データに関して、証明書保持者のプライバシーを確保しつつ、正確な本人認証が行える認証システムに関する。
ネットワークを介したデジタルコンテンツの配信サービスにおいて、サービス提供者は、ユーザに年齢の提示を要求し、提供するコンテンツが、ユーザの年齢に適しているか否かを判定したり、ユーザが在住している住所の提示を要求し、顧客管理に用いたりする場合がある。
年齢や住所等、個人情報の提示を要求されたユーザは、必要最低限の個人情報のみを提示したいという要望がある。その要望を満たす技術が非特許文献1に開示されている。
この技術によると、各ユーザに割り当てられた公開鍵と共に、氏名、住所、年齢などの個人情報を管理している属性証明書発行サーバが、ユーザの依頼に応じて、必要な属性証明書を発行する。例えば、ユーザは、自身の年齢だけを証明したい場合には、前記サーバに、年齢証明書の発行を依頼する。年齢証明書の発行依頼を受け付けた前記サーバは、ユーザの公開鍵と年齢とを結合したデータに、デジタル署名を施した属性証明書データを発行する。この証明書は、証明書に含まれる公開鍵に対応する秘密鍵を持つユーザが、その証明書に含まれる年齢であることを保証する。このとき、属性証明書によって、ユーザの年齢は開示されるが、氏名や住所などのその他の個人情報は開示されない。即ち、ユーザは、必要な個人情報のみを開示することができる。
特開2004−289247号公報 ITU−T,"Information Technology−Open systems interconnection−The directory: Public−key and attribute certificate frameworks," Recommendation X.509, March 2000.
しかしながら、コンテンツ提供者が、ユーザが所定の条件を満たしているか否かを判定するために、ユーザに身分証明書の提示を要求し、ユーザは、コンテンツ提供者に提示する身分証明書として、上記従来技術の属性証明書を用いる場合、ユーザ自身の実際の年齢や、住所等、前記条件判定に必要な最低限の情報を越えて、必要以上の個人情報を開示しなければならないという問題がある。
本発明は、上記の問題点に鑑みなされたものであって、必要最低限の個人情報の開示のみを実現しつつ、前記個人情報の正当性を認証することができる認証システム、署名生成装置、署名検証装置を提供することを目的とする。
上記の目的を達成するために、本発明は、個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置であって、前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段とを備えることを特徴とする。
上記の構成によると、署名生成装置は、属性情報に選択したダミー情報を付加して、曖昧情報を生成することにより、前記属性情報をぼかすことができる。また、リング署名を用いてデジタル署名を生成することにより、検証側において、当該デジタル署名が、前記属性情報及び前記1以上のダミー情報の何れかの秘密鍵を用いて生成されたことを検証できるが、何れの秘密鍵を用いて生成されたのかを判明することが不可能なデジタル署名を生成することができる。
ここで、前記曖昧情報生成手段は、前記属性情報が示す属性と同一の属性を有する前記ダミー情報を選択するように構成してもよい。
この構成によると、同一の属性を有するダミー情報を用いて、属性情報をぼかすことができる。
ここで、前記属性は、年齢であって、前記属性情報は、前記個人の年齢を示しており、前記曖昧情報生成手段は、前記属性情報が示す前記年齢と異なる年齢である前記ダミー情報を選択するように構成してもよい。
この構成によると、年齢を提示する必要があるときに、ユーザは、年齢をぼかした曖昧情報を提示することができる。
ここで、前記属性は、住所であって、前記属性情報は、前記個人が居住している地区名を示しており、前記曖昧情報生成手段は、前記属性情報が示す前記地区名と異なる地区名である前記ダミー情報を選択するように構成してもよい。
この構成によると、都道府県名等の地区名等を提示する必要があるときに、ユーザは、地区名をぼかした曖昧情報を提示することができる。
ここで、前記属性は、国籍であって、前記属性情報は、前記個人が有する国籍の国名を示しており、前記曖昧情報生成手段は、前記属性情報が示す前記国名と異なる国名である前記ダミー情報を選択するように構成してもよい。
この構成によると、国籍を提示する必要があるときに、ユーザは、国籍をぼかした曖昧情報を提示することができる。
ここで、前記署名生成装置は、ダミー情報の選択条件を示すぼかし指示を受け付けるぼかし指示受付手段を備え、前記曖昧情報生成手段は、前記ぼかし指示が示す前記選択条件に従い、前記1以上のダミー情報を選択するように構成してもよい。
この構成によると、前記選択条件を受け付けることにより、前記個人の意図するぼかし処理を、行うことができる。
ここで、前記ぼかし指示受付手段は、選択するダミー情報の個数を示す前記選択条件を受け付け、前記曖昧情報生成手段は、前記選択条件が示す個数のダミー情報を選択するように構成してもよい。
この構成によると、属性情報に追加するダミー情報の個数を増やすことにより、より属性情報を曖昧にぼかすことができる。
ここで、前記署名生成装置は、サービス提供装置が提供するサービスを利用する装置であって、更に、前記曖昧情報及び前記デジタル署名データを含むサービス要求を生成する要求生成手段と、前記サービス要求を、前記サービス提供装置へ送信する要求送信手段と、前記サービス提供装置から、前記サービスを受信するサービス受信手段とを備えるように構成してもよい。
この構成によると、前記個人が前記サービス提供装置から認証を受けてサービスの提供を受ける場合に、前記属性情報のみを送信する場合と比較し、前記曖昧情報を送信するので、個人の情報をぼかして提示することができる。また前記デジタル署名を送信することより、前記曖昧情報に含まれる情報が正しい情報であることを、前記サービス提供装置に対して証明することが可能となる。
ここで、前記署名生成装置は、前記属性情報及び前記秘密鍵と、前記属性情報及び前記秘密鍵に対するデジタル署名データとを、外部の認証装置から取得する取得手段と、取得した前記デジタル署名データを検証する署名検証手段と、前記署名検証手段による検証に成功した場合に、前記属性情報及び前記秘密鍵を、前記記憶手段に書き込む書込手段とを備えるように構成してもよい。
この構成によると、署名生成装置は、前記認証装置から認証を受けた前記属性情報に基づき、前記曖昧情報を生成することができる。
また、本発明は、前記署名生成装置により生成されたデジタル署名データを検証する署名検証装置であって、前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段とを備えることを特徴とする。
この構成によると、リング署名の性質から、署名検証装置は、前記曖昧情報に含まれる何れの属性情報にあたるのかを判断することはできないが、前記曖昧情報に含まれる何れかの情報が、前記個人の正当な属性情報であることを検証することができる。
ここで、前記署名検証装置は、サービス利用装置に対してサービスを提供する装置であって、更に、前記サービス利用装置から、前記サービス利用装置のユーザに関する情報である前記曖昧情報及び前記デジタル署名データを含むサービス利用要求を受信する要求受信手段と、前記曖昧情報に基づき、前記ユーザに対し、前記サービスを提供することが可能であるか否かを判定する判定手段と、前記署名検証手段による前記検証に成功し、且つ、前記判定手段による前記判定が肯定的である場合に、前記サービス利用装置へ、前記サービスを提供するサービス提供手段とを備えるように構成してもよい。
この構成によると、サービスを提供する装置において、前記リング署名の検証、及びサービス提供の可否判定を行った上で、前記サービス利用装置に対し、サービス提供を行うことができる。これは、例えば、コンテンツ提供者が、ユーザが所定の年齢以上であることを確認する必要があるが、ユーザの実際の年齢を確認する必要が無い場合において、ユーザの実際の年齢が開示されなくとも、必要最低限の確認(例えば、ユーザが18歳以上であることの確認)を行うことができる。
なお、前記署名生成装置の記憶手段は、後述する実施形態におけるサービス利用装置20の身元認証情報保管部205に相当し、曖昧情報生成手段は、ぼかし身元認証情報生成部209の身元情報変換部222に相当し、公開鍵取得手段は、ぼかし用公開鍵取得部208に相当し、署名生成手段は、ぼかし身元認証情報生成部209のリング署名生成部223に相当する。
更に、前記署名生成装置のぼかし指示受付手段は、サービス利用装置20のぼかし指示受付部207に相当し、要求生成手段及び要求送信手段は、サービス利用要求送信部210に相当し、サービス受信手段は、コンテンツ受信部211に相当する。
更に、前記署名生成装置の取得手段は、サービス利用装置20の身元認証情報受信部203に相当し、署名検証手段及び書込手段は、署名検証部204に相当する。
また、前記署名検証装置の公開鍵取得手段は、後述する実施形態におけるサービス提供装置1(40)の認証用公開鍵取得部402に相当し、署名検証手段は、リング署名検証部403に相当する。
更に、署名検証装置の要求受信手段は、データ分割部401に相当し、判定手段は、ユーザ身元情報確認部404に相当し、サービス提供手段は、サービスデータ送信制御部406及びコンテンツ送信部408に相当する。
以下では、本発明に係る実施の形態として、認証システム1について、図面を参照して説明する。
<概要>
図1は、認証システム1の構成を示すシステム構成図である。
同図に示すように、認証システム1は、認証装置10、サービス利用装置20、ぼかし用公開鍵管理装置30、サービス提供装置1(40)、及び、サービス提供装置2(50)から構成され、各装置は、ネットワーク60を介して接続されている。
認証システム1は、サービスの利用者であるユーザが、サービス利用装置20を用いて、サービス提供装置1(40)及びサービス提供装置2(50)から、ネットワーク60を介して、コンテンツ配信のサービスを享受するシステムである。
サービス提供装置1(40)及びサービス提供装置2(50)は、サービス利用装置20から、コンテンツ要求を受け付ける際に、ユーザの身元情報の提示を要求する。サービス利用装置20は、認証システム1の立ち上げ時に、CA(Certificate Authority)が保有する認証装置10から、身元認証情報を取得し、各サービス提供装置からの身元情報提示要求に対して、この身元認証情報を提示する。なお、本実施形態においては、ユーザの身元情報として、「年齢」、「国籍」、及び「住所」の3項目を用いるものとし、「住所」は、ユーザが在住している都道府県名により示されるものとする。なお、「都道府県」とは、日本における最大の行政区画を示す。
本実施形態においては、具体例として、サービス提供装置1(40)は、ユーザに対し、「年齢」の提示を求め、サービス提供装置2(50)は、ユーザに対し、「年齢」、「国籍」、及び「住所」の提示を求めるものとする。
各サービス提供装置から要求された身元情報を提示する際、サービス利用装置20は、要求されている身元情報に対して、「ぼかし処理」を行い、ぼかし処理を行った後の身元情報を各サービス提供装置へ提示する。
ぼかし処理とは、例えば、「年齢=25歳」という身元情報を、「年齢=20歳〜25歳」の様に、幅を持たせた情報に変換する処理を示し、サービス利用装置20が、ぼかし用公開鍵管理装置30からぼかし用公開鍵を取得して、上記のようなぼかし処理を行う。
また、認証システム1を構成する各装置は、システム共通で用いるハッシュアルゴリズム、及び、秘密鍵暗号アルゴリズムを定め、システム内で公開する。秘密鍵暗号アルゴリズムの一例は、DES(Data Encryption Standard)である。
<構成>
ここでは、認証システム1に含まれる各装置の構成について説明する。
1.認証装置10
図2は、認証装置10の構成を機能的に示す機能ブロック図である。同図に示すように、認証装置10は、署名鍵生成部101、ぼかし用公開鍵生成部102、身元認証情報発行依頼データ受信部103、ユーザ身元情報確認部104、身元認証用秘密鍵保持部105、身元認証情報生成部106、及び身元認証情報送信部107から構成される。
認証装置10は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニット等から構成されるコンピュータシステムであって、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、認証装置10は、その機能を達成する。
(1)署名鍵生成部101
署名鍵生成部101は、認証システム1の立ち上げ時に、デジタル署名の署名生成鍵と署名検証鍵とを生成する。署名鍵生成部101は、生成した署名生成鍵を、身元認証情報生成部106へ出力し、生成した署名検証鍵を、サービス利用装置20へ通知する。署名鍵生成部101は生成した署名検証鍵を、ネットワーク60を介して送信してもよいし、その他の方法により通知してもよい。
(2)ぼかし用公開鍵生成部102
ぼかし用公開鍵生成部102は、認証システム1の立ち上げ時に、年齢認証用秘密鍵データベース110、国籍認証用秘密鍵データベース120、及び住所認証用秘密鍵データベース130、年齢ぼかし用公開鍵データベース300、国籍ぼかし用公開鍵データベース、及び住所ぼかし用公開鍵データベースを作成する。
ぼかし用公開鍵生成部102は、作成した各秘密鍵データベースを、身元認証用秘密鍵保持部105に出力する。また、作成した各ぼかし用公開鍵データベースを、ぼかし用公開鍵管理装置30へ配布する。ぼかし用公開鍵生成部102は、各ぼかし用公開鍵データベースを、ネットワーク60を介して送信してもよいし、その他の方法により配布してもよい。
図3(a)は、身元認証用秘密鍵保持部105に格納される各データベースを示す図である。
図3(b)は、年齢認証用秘密鍵データベース110のデータ構成を示す図である。同図に示すように、年齢認証用秘密鍵データベース110は、0歳から99歳までのそれぞれの年齢と、各年齢に対応付けたd_0からd_99までの年齢認証用秘密鍵とから構成される。
図4は、国籍認証用秘密鍵データベース120のデータ構成を示す図である。同図に示すように、国籍認証用秘密鍵データベース120は、番号―国名対応表120aと、番号―国籍認証用秘密鍵対応表120bとを含む。番号―国名対応表120aは、0番からの番号と各国名とを対応付けた表である。番号―国籍認証用秘密鍵対応表120bは、0番からの番号と、番号―国名対応表120aにおいて、各番号に対応付けられている国名を認証するための国籍認証用秘密鍵d_0、d_1、d_2、…とを対応付けた表である。具体例を用いて説明すると、国名「日本」を認証するための「日本」認証用秘密鍵はd_0であり、国名「韓国」を認証するための「韓国」認証用秘密鍵はd_1であり、国名「アメリカ」を認証するための「アメリカ」認証用秘密鍵はd_50である。
図5は、住所認証用秘密鍵データベース130のデータ構成を示す図である。同図に示すように、住所認証用秘密鍵データベース130は、番号―都道府県名対応表130aと、番号―住所認証用秘密鍵対応表130bとを含む。番号―都道府県名対応表130aは、0番からの番号と各都道府県名とを対応付けた表である。番号―住所認証用秘密鍵対応表130bは、0番からの番号と、番号―都道府県名対応表130aにおいて、各番号に対応付けられている都道府県名を認証するための住所認証用秘密鍵d_0、d_1、d_2、…とを対応付けた表である。具体例を用いて説明すると、都道府県名「北海道」を認証するための「北海道」認証用秘密鍵はd_0であり、都道府県名「大阪府」を認証するための「大阪府」認証用秘密鍵はd_23であり、都道府県名「兵庫県」を認証するための「兵庫県」認証用秘密鍵はd_24である。
図6は、年齢ぼかし用公開鍵データベース300のデータ構成を示す図である。同図に示すように、年齢ぼかし用公開鍵データベース300は、0歳から99歳までのそれぞれの年齢と、各年齢に対応付けた(e_0,n_0)から(e_99,n_99)までの年齢ぼかし用公開鍵とから構成される。
各認証用秘密鍵、各ぼかし用公開鍵の作成の手順については、後述する動作の説明で述べる。
(3)身元認証情報発行依頼データ受信部103
身元認証情報発行依頼データ受信部103は、ネットワーク接続ユニット等から構成される。
身元認証情報発行依頼データ受信部103は、ネットワーク60を介して、サービス利用装置20から身元認証情報発行依頼データを受信し、受信した身元認証情報発行依頼データをユーザ身元情報確認部104へ出力する。
(4)ユーザ身元情報確認部104
ユーザ身元情報確認部104は、身元認証情報発行依頼データ受信部103から、身元認証情報発行依頼データを受け取る。ユーザ身元情報確認部104は、受け取った身元認証情報発行依頼データからユーザ身元情報140を抽出する。
図7は、ユーザ身元情報140のデータ構成を示す図である。同図に示すように、ユーザ身元情報140は、年齢情報(年齢=24歳)141、国籍情報(国籍=アメリカ)142、及び住所情報(住所=大阪府)143を含む。なお、本実施形態においては、年齢情報、国籍情報、及び住所情報を総称して「身元情報」と呼称することがある。
ユーザ身元情報確認部104は、ユーザ身元情報140が、正しいものであるか否かを確認する。確認の方法としては、例えば、認証装置10は、市役所などの公的機関が保持する住民票データベースとネットワーク60を介して接続されており、ユーザ身元情報140を、住民票データベースに照会することにより、ユーザ身元情報140が、正しいものであるか否かを確認する。
ユーザ身元情報確認部104は、ユーザ身元情報140が正しいものであることが確認されると、ユーザ身元情報140を、身元認証情報生成部106に出力する。ユーザ身元情報140が不正なものであることが確認されると、認証装置10は、身元認証情報発行処理を終了する。
(5)身元認証用秘密鍵保持部105
身元認証用秘密鍵保持部105は、ぼかし用公開鍵生成部102により生成された年齢認証用秘密鍵データベース110、国籍認証用秘密鍵データベース120、及び住所認証用秘密鍵データベース130を保持する。各データベースの構成については、先に述べたとおりである。
(6)身元認証情報生成部106
図8は、身元認証情報生成部106の構成を機能的に示す機能ブロック図である。同図に示すように、身元認証情報生成部106は、データ分割部151、身元認証用秘密鍵取得部152、身元認証用秘密鍵付加部153、及び署名生成部154から構成される。
(a)データ分割部151
データ分割部151は、ユーザ身元情報確認部104から、ユーザ身元情報140を受け取る。データ分割部151は、ユーザ身元情報140を、身元認証用秘密鍵取得部152と身元認証用秘密鍵付加部153とへ出力する。
(b)身元認証用秘密鍵取得部152
身元認証用秘密鍵取得部152は、データ分割部151から、ユーザ身元情報140を受け取る。身元認証用秘密鍵取得部152は、ユーザ身元情報140に含まれる各身元情報に対応する身元認証用秘密鍵を、身元認証用秘密鍵保持部105から読み出す。
具体的には、身元認証用秘密鍵取得部152は、ユーザ身元情報140に含まれる年齢情報(年齢=24歳)141の内容を確認して、「24歳」に対応する「24歳」認証用秘密鍵d_24を、年齢認証用秘密鍵データベース110から取得する。同様に、身元認証用秘密鍵取得部152は、国籍情報(国籍=アメリカ)142の内容を確認して、「アメリカ」に対応する「アメリカ」認証用秘密鍵d_50を、国籍認証用秘密鍵データベース120から取得する。同様に、身元認証用秘密鍵取得部152は、住所情報(住所=大阪府)143の内容を確認して、「大阪府」に対応する「大阪府」認証用秘密鍵d_23を、住所認証用秘密鍵データベース130から取得する。
身元認証用秘密鍵取得部152は、取得した「24歳」認証用秘密鍵d_24、「アメリカ」認証用秘密鍵d_50、及び「大阪府」認証用秘密鍵d_23を、身元認証用秘密鍵付加部153へ出力する。
(c)身元認証用秘密鍵付加部153
身元認証用秘密鍵付加部153は、データ分割部151からユーザ身元情報140を受け取る。また、身元認証用秘密鍵付加部153は、身元認証用秘密鍵取得部152から、「24歳」認証用秘密鍵d_24、「アメリカ」認証用秘密鍵d_50、及び「大阪府」認証用秘密鍵d_23を受け取る。
身元認証用秘密鍵付加部153は、ユーザ身元情報140に含まれる年齢情報(年齢=24歳)と「24歳」認証用秘密鍵d_24とを組み合わせて、年齢認証情報161を生成する。同様に、身元認証用秘密鍵付加部153は、国籍情報(国籍=アメリカ)と「アメリカ」認証用秘密鍵d_50とを組み合わせて、国籍認証情報162を生成し、住所情報(住所=大阪府)と「大阪府」認証用秘密鍵d_23とを組み合わせて住所認証情報163を生成する。
身元認証用秘密鍵付加部153は、生成した年齢認証情報161、国籍認証情報162、及び住所認証情報163を、署名生成部154へ出力する。
(d)署名生成部154
署名生成部154は、身元認証用秘密鍵付加部153から、年齢認証情報161、国籍認証情報162、及び住所認証情報163を受け取る。また、署名生成部154は、署名鍵生成部101から、署名生成鍵を受け取る。
署名生成部154は、署名生成鍵を用いて、所定の署名生成アルゴリズムに従い、年齢認証情報161、国籍認証情報162、及び住所認証情報163に対するデジタル署名である認証装置署名データ164を生成する。
署名生成部154は、年齢認証情報161、国籍認証情報162、住所認証情報163、及び認証装置署名データ164から成る身元認証情報160を生成する。図9は、身元認証情報160のデータ構成を示す図である。
署名生成部154は、生成した身元認証情報160を、身元認証情報送信部107へ出力する。
(7)身元認証情報送信部107
身元認証情報送信部107は、署名生成部154から身元認証情報160を受け取り、受け取った身元認証情報160を、ネットワーク60を介して、サービス利用装置20へ送信する。
2.サービス利用装置20
図10は、サービス利用装置20の構成を機能的に示す機能ブロック図である。同図に示すように、サービス利用装置20は、ユーザ身元情報記憶部201、身元認証情報発行依頼データ送信部202、身元認証情報受信部203、署名検証部204、身元認証情報保管部205、身元認証情報表示部206、ぼかし指示受付部207、ぼかし用公開鍵取得部208、ぼかし身元認証情報生成部209、サービス利用要求送信部210、コンテンツ受信部211、及びコンテンツ再生部212から構成される。
サービス利用装置20は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムであり、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、サービス利用装置20は、その機能を達成する。
(1)ユーザ身元情報記憶部201
ユーザ身元情報記憶部201は、サービス利用装置20のユーザの個人情報であるユーザ身元情報140を記憶している。ユーザ身元情報140は、図7を用いて既に説明したように、年齢情報(年齢=24歳)141、国籍情報(国籍=アメリカ)142、及び住所情報(住所=大阪府)143から構成される。
(2)身元認証情報発行依頼データ送信部202
身元認証情報発行依頼データ送信部202は、キーボードやマウス等の入力デバイスを介して、ユーザから身元認証情報取得の指示を受け付ける。
身元認証情報取得の指示を受け付けると、身元認証情報発行依頼データ送信部202は、ユーザ身元情報記憶部201から、ユーザ身元情報140を読み出し、読み出したユーザ身元情報140を含む身元認証情報発行依頼データを生成する。
身元認証情報発行依頼データ送信部202は、生成した身元認証情報発行依頼データを、ネットワーク60を介して認証装置10へ送信する。
(3)身元認証情報受信部203
身元認証情報受信部203は、ネットワーク60を介して、認証装置10から身元認証情報160を受信する。
身元認証情報160のデータ構成は、図9に示したように、年齢認証情報161、国籍認証情報162、住所認証情報163、及び認証装置署名データ164から構成され、年齢認証情報161は、年齢情報(年齢=24歳)161a及び「24歳」認証用秘密鍵(d_24)161bから構成され、国籍認証情報162は、国籍情報(国籍=アメリカ)162a及び「アメリカ」認証用秘密鍵(d_50)162bから構成され、住所認証情報163は、住所情報(住所=大阪府)163a及び「大阪府」認証用秘密鍵(d_23)163bから構成される。
身元認証情報受信部203は、受信した身元認証情報160を、署名検証部204へ出力する。
(4)署名検証部204
署名検証部204は、認証システム1の立ち上げ時に、認証装置10により作成された署名検証鍵を受け取り、保持している。
署名検証部204は、身元認証情報受信部203から、身元認証情報160を受け取ると、署名検証鍵を用いて、所定の署名検証アルゴリズムに従い、認証装置署名データ164を検証する。認証装置署名データ164の検証に成功すると、署名検証部204は、身元認証情報160を、身元認証情報保管部205へ出力する。認証装置署名データ164の検証に失敗すると、署名検証部204は、身元認証情報160を破棄する。
(5)身元認証情報保管部205
身元認証情報保管部205は、署名検証部204から身元認証情報160を受け取ると、受け取った身元認証情報160を内部に保管する。
(6)身元認証情報表示部206
身元認証情報表示部206は、ディスプレイを備える。身元認証情報表示部206は、キーボードやマウス等の入力デバイスを介して、ユーザからサービス利用要求を受け付けると、身元認証情報保管部205から身元認証情報160を読み出す。身元認証情報表示部206は、読み出した身元認証情報160から、年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aを抽出する。
身元認証情報表示部206は、抽出した年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aに、「サービス提供装置に対し、提示する情報を選択してください。」というメッセージを付加して、提示情報選択画面を生成する。身元認証情報表示部206は、生成した提示情報選択画面を、ディスプレイに表示する。
また、身元認証情報表示部206は、ぼかし指示受付部207を介して、サービス提供装置に対して提示する情報が選択されると、選択された情報にどのようなぼかし処理を行うのかをユーザに問いかける、ぼかし指示受付画面を生成する。身元認証情報表示部206は、生成したぼかし指示受付画面を、ディスプレイに表示する。
(7)ぼかし指示受付部207
ぼかし指示受付部207は、予め内部に、番号―国名対応表120a(図4参照)と、番号―都道府県名対応表130a(図5参照)とを保持している。
ぼかし指示受付部207は、身元認証情報表示部206に、提示情報選択画面が表示されている状態において、キーボードやマウス等の入力デバイスを介して、ユーザから、年齢情報161a、国籍情報162a、及び住所情報163aの内、何れの身元情報に対してぼかし処理を行うかの選択を受け付ける。なお、本実施形態においては、ユーザは、サービス提供装置1(40)に対しては、「年齢」を提示する必要があり、サービス提供装置2(50)に対しては、「年齢」、「国籍」、及び「住所」を提示する必要がある事を既知であるものとする。
ぼかし指示受付部207は、サービス提供装置へ提示する情報の選択を受け付けると、受け付けた選択を身元認証情報表示部206へ出力する。
ぼかし指示受付部207は、身元認証情報表示部206にぼかし指示受付画面が表示されている状態において、入力デバイスを介して、ぼかし指示を受け付ける。ぼかし指示は、具体的には、(X,Y)の数値の入力として受け付ける。
以下、ぼかし指示(X,Y)について具体的に説明する。
例えば、サービス提供装置に対して提示する身元情報が、年齢情報(年齢=24歳)161aであり、ぼかし指示(X,Y)を受け付けた場合、「24歳」である年齢を、(24−X)歳から(24+Y)歳までの幅のある情報にぼかすこと示している。例えば、(X=0,Y=3)である場合には、24−0=24であり、24+3=27であるから、「24歳」である年齢を、「24歳、25歳、26歳、及び27歳の内の何れか」にぼかすことができる。
また、提示する身元情報が、国籍情報(国籍=アメリカ)162aと住所情報(住所=大阪府)163aとである場合に、「アメリカ」と「大阪府」とを、どのようにぼかすのかについて説明する。
国籍情報(国籍=アメリカ)162aをぼかす場合に、ぼかし指示(X=0,Y=3)を受け付けると、図4に示した番号―国名対応表120aの「アメリカ」と対応付けられている番号=50に対して、50−0=50、及び、50+3=53の演算を施し、演算の結果に基づき、50番から53番までの国名を用いて、「アメリカ」である国籍を、「アメリカ、カナダ、メキシコ、及びグアテマラの内の何れか」にぼかすことができる。
住所情報(住所=大阪府)163aをぼかす場合に、ぼかし指示(X=0,Y=3)を受け付けると、図5に示した番号―都道府県名対応表130aの「大阪府」に対応付けられている番号=23に対して、23−0=23、及び、23+3=26の演算を施し、演算の結果に基づき、23番から26番までの都道府県名を用いて、「大阪府」である住所を、「大阪府、兵庫県、京都府、及び滋賀県の内の何れか」にぼかすことができる。
ぼかし指示受付部207は、ぼかし処理を行う身元情報が年齢情報161aである場合には、年齢=24歳と受け付けたぼかし指示(X,Y)とを、ぼかし用公開鍵取得部208、及びぼかし身元認証情報生成部209へ出力する。ぼかし処理を行う身元情報が国籍情報(国籍=アメリカ)162aである場合には、国籍情報をぼかす旨を示す情報と、「アメリカ」に対応付けられている番号=50と、受け付けたぼかし指示(X,Y)とを、ぼかし用公開鍵取得部208、及びぼかし身元認証情報生成部209へ出力する。ぼかし処理を行う身元情報が住所情報(住所=大阪府)163aである場合には、住所情報をぼかす旨を示す情報と、「大阪府」に対応付けられている番号=23と、受け付けたぼかし指示(X,Y)とを、ぼかし用公開鍵取得部208、及びぼかし身元認証情報生成部209へ出力する。
(8)ぼかし用公開鍵取得部208
ぼかし用公開鍵取得部208は、ぼかし指示受付部207から、年齢=24歳とぼかし指示(X,Y)とを受け取った場合、24−0=24以上、24+3=27以下の全てのぼかし用公開鍵を要求する年齢ぼかし用公開鍵取得要求を生成する。ぼかし用公開鍵取得部208は、生成した年齢ぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。ぼかし用公開鍵取得部208は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、要求に対応する年齢ぼかし用公開鍵を受信する。例えば、ぼかし指示が(X=0,Y=3)の場合、ぼかし用公開鍵取得部208は、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受信する。
ぼかし用公開鍵取得部208は、ぼかし指示受付部207から、「アメリカ」に対応する番号=50と、ぼかし指示(X=0,Y=3)とを受け取った場合、50−0=50以上、50+3=53以下の全てのぼかし用公開鍵を要求する国籍ぼかし用公開鍵取得要求を生成する。ぼかし用公開鍵取得部208は、生成した国籍ぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。ぼかし用公開鍵取得部208は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、要求に対応する国籍ぼかし用公開鍵を受信する。
ぼかし用公開鍵取得部208は、ぼかし指示受付部207から、「大阪府」に対応する番号=23と、ぼかし指示(X=0,Y=3)とを受け取った場合、23−0=23以上、23+3=26以下の全てのぼかし用公開鍵を要求する住所ぼかし用公開鍵取得要求を生成する。ぼかし用公開鍵取得部208は、生成した住所ぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。ぼかし用公開鍵取得部208は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、要求に対応する住所ぼかし用公開鍵を受信する。
ぼかし用公開鍵取得部208は、取得したぼかし用公開鍵を、ぼかし身元認証情報生成部209へ出力する。
(9)ぼかし身元認証情報生成部209
図11は、ぼかし身元認証情報生成部209の機能的な構成を示す機能ブロック図である。同図に示すように、ぼかし身元認証情報生成部209は、データ分割部221、身元情報変換部222、リング署名生成部223、及びデータ連結部224から構成される。
(a)データ分割部221
データ分割部221は、身元認証情報保管部205から、身元認証情報160を読み出す。データ分割部221は、身元認証情報160に含まれる年齢認証情報161を、年齢情報(年齢=24歳)161aと「24歳」認証用秘密鍵161bとに分割し、国籍認証情報162を、国籍情報(国籍=アメリカ)162aと「アメリカ」認証用秘密鍵162bとに分割し、住所認証情報163を、住所情報(住所=大阪府)163aと「大阪府」認証用秘密鍵163bとに分割する。
データ分割部221は、年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aを、身元情報変換部222へ出力し、「24歳」認証用秘密鍵161b、「アメリカ」認証用秘密鍵162b、及び「大阪府」認証用秘密鍵163bを、リング署名生成部223へ出力する。
(b)身元情報変換部222
身元情報変換部222は、予め内部に、番号―国名対応表120a(図4参照)と、番号―都道府県名対応表130a(図5参照)とを保持している。
身元情報変換部222は、データ分割部221から、年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aを受け取る。
身元情報変換部222は、ぼかし指示受付部207から、年齢=24歳と、ぼかし指示(X,Y)とを受け取った場合、受け取ったぼかし指示に基づき、年齢=24歳をぼかして、ぼかし年齢情報を生成する。具体的には、X=0、Y=3の場合、身元情報変換部222は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」を生成する。
身元情報変換部222は、ぼかし指示受付部207から、国籍情報をぼかす旨を示す情報と、番号=50と、ぼかし指示(X,Y)とを受け取った場合、受け取ったぼかし指示に基づき、国籍=アメリカをぼかして、ぼかし国籍情報を生成する。具体的には、X=0、Y=3の場合、身元情報変換部222は、50番から53番までの番号に対応する国名を、番号―国名対応表120aから読み出して、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」を生成する。
身元情報変換部222は、ぼかし指示受付部207から、住所情報をぼかす旨を示す情報と、番号=23と、ぼかし指示(X,Y)とを受け取った場合、受け取ったぼかし指示に基づき、住所=大阪府をぼかして、ぼかし住所情報を生成する。具体的には、X=0、Y=3の場合、身元情報変換部222は、23番から26番までの番号に対応する都道府県名を、番号―都道府県名対応表130aから読み出して、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」を生成する。
身元情報変換部222は、生成したぼかし年齢情報、ぼかし国籍情報、及びぼかし住所情報から成るぼかし身元情報を生成し、生成したぼかし身元情報を、リング署名生成部223及びデータ連結部224へ出力する。ここで、例えば、ぼかし処理を行う身元情報が年齢情報のみである場合には、ぼかし身元情報は、ぼかし年齢情報のみを含む情報となる。
(c)リング署名生成部223
ここでは先ず、リング署名について説明する。リング署名とは、以下の(i)及び(ii)の機能を実現するデジタル署名方式のことである。
(i)リング署名生成時には、1個の秘密鍵と1個以上で任意数の任意の公開鍵とを用いて、メッセージMに対するリング署名Sを生成する。
(ii)リング署名検証時には、検証者には、リング署名Sを検証するためにどの公開鍵を用いれば良いかという情報だけが提示される。検証者は、それらの公開鍵を用いてリング署名Sを検証することで、「検証に用いた公開鍵のうちどれか1つの公開鍵に対応する秘密鍵によってそのリング署名Sが生成されたこと」だけを確認することが可能であるが、具体的にどの公開鍵に対応する秘密鍵で作成されたかを知ることはできない。
本発明におけるリング署名は、上記(i)及び(ii)の機能を実現するデジタル署名方式であれば何でも良いが、リング署名生成部223は、「Advances in Cryptorogy ASIACRYPT2001(Springer刊)」に所収のRonald L.Rivest、Adi Shamir、Yael Tauman「How to Leak a Secret」に記載のリング署名方式を用いるものとする。
次に、リング署名生成部223による処理について、ぼかし処理を行う身元情報毎に、具体例を用いて説明する。
(年齢情報にぼかし処理を行う場合)
リング署名生成部223は、データ分割部221から「24歳」認証用秘密鍵(d_24)を受け取る。また、リング署名生成部223は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」を受け取り、ぼかし用公開鍵取得部208から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受け取る。
リング署名生成部223は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」をメッセージMとして、「24歳」認証用秘密鍵(d_24)、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を用いて、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」を生成する。リング署名生成部223は、生成した年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」を、データ連結部224へ出力する。
なお、年齢認証用リング署名として、上記の5つのデータが生成されるが、生成の手順については、動作の説明で述べる。
(国籍情報にぼかし処理を行う場合)
リング署名生成部223は、データ分割部221から「アメリカ」認証用秘密鍵(d_50)を受け取る。また、リング署名生成部223は、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」を受け取り、ぼかし用公開鍵取得部208から、「アメリカ」ぼかし用公開鍵(e_50,n_50)、「カナダ」ぼかし用公開鍵(e_51,n_51)、「メキシコ」ぼかし用公開鍵(e_52,n_52)、及び「グアテマラ」ぼかし用公開鍵(e_53,n_53)を受け取る。
リング署名生成部223は、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」をメッセージMとして、「アメリカ」認証用秘密鍵(d_50)、「アメリカ」ぼかし用公開鍵(e_50,n_50)、「カナダ」ぼかし用公開鍵(e_51,n_51)、「メキシコ」ぼかし用公開鍵(e_52,n_52)、及び「グアテマラ」ぼかし用公開鍵(e_53,n_53)を用いて、国籍認証用リング署名「C_50,S_50,S_51,S_52,S_53」を生成する。リング署名生成部223は、生成した国籍認証用リング署名「C_50,S_50,S_51,S_52,S_53」を、データ連結部224へ出力する。
(住所情報にぼかし処理を行う場合)
リング署名生成部223は、データ分割部221から「大阪府」認証用秘密鍵(d_23)を受け取る。また、リング署名生成部223は、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」を受け取り、ぼかし用公開鍵取得部208から、「大阪府」ぼかし用公開鍵(e_23,n_23)、「兵庫県」ぼかし用公開鍵(e_24,n_24)、「京都府」ぼかし用公開鍵(e_25,n_25)、及び「滋賀県」ぼかし用公開鍵(e_26,n_26)を受け取る。
リング署名生成部223は、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」をメッセージMとして、「大阪府」認証用秘密鍵(d_23)、「大阪府」ぼかし用公開鍵(e_23,n_23)、「兵庫県」ぼかし用公開鍵(e_24,n_24)、「京都府」ぼかし用公開鍵(e_25,n_25)、及び「滋賀県」ぼかし用公開鍵(e_26,n_26)を用いて、住所認証用リング署名「C_23,S_23,S_24,S_25,S_26」を生成する。リング署名生成部223は、生成した住所認証用リング署名「C_23,S_23,S_24,S_25,S_26」を、データ連結部224へ出力する。
(d)データ連結部224
データ連結部224は、身元情報変換部222から、ぼかし年齢情報、ぼかし国籍情報、及びぼかし住所情報を受け取る。また、データ連結部224は、リング署名生成部223から、年齢認証用リング署名、国籍認証用リング署名、及び住所認証用リング署名を受け取る。
データ連結部224は、ぼかし年齢情報と年齢認証用リング署名とを連結し、ぼかし年齢認証データを生成し、ぼかし国籍情報と国籍認証用リング署名とを連結し、ぼかし国籍認証データを生成し、ぼかし住所情報と住所認証用リング署名とを連結し、ぼかし住所認証データを生成する。
データ連結部224は、年齢認証データ、ぼかし国籍認証データ、及びぼかし住所認証データを連結して、提示用身元認証情報を生成する。データ連結部224は、生成した提示用身元認証情報を、サービス利用要求送信部210へ出力する。
図12(a)は、サービス利用装置20が、サービス提供装置1(40)に提示する提示用身元認証情報の一例を示す図である。サービス提供装置1(40)が提示を要求する身元情報は、「年齢」のみであるから、提示用身元認証情報250は、ぼかし年齢認証データのみから構成されており、ぼかし年齢認証データは、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250a、及び年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを含む。
図12(b)は、サービス利用装置20が、サービス提供装置2(50)に提示する提示用身元認証情報の一例を示す図である。サービス提供装置2(50)が提示を要求する身元情報は、「年齢」、「国籍」、及び「住所」であるから、提示用身元認証情報260は、ぼかし年齢認証データ270、ぼかし国籍認証データ280、及びぼかし住所認証データ290から構成される。
ぼかし年齢認証データ270は、図12(a)と同一の内容である。ぼかし国籍認証データ280は、ぼかし国籍情報「国籍=アメリカ、カナダ、メキシコ、グアテマラ」280a、及び国籍認証用リング署名「C_50,S_50,S_51,S_52,S_53」280bを含む。また、ぼかし住所認証データ290は、ぼかし住所情報「住所=大阪府、兵庫県、京都府、滋賀県」290a、及び住所認証用リング署名「C_23,S_23,S_24,S_25,S_26」290bを含む。
(10)サービス利用要求送信部210
サービス利用要求送信部210は、ぼかし身元認証情報生成部209から、提示用認証情報を受け取る。サービス利用要求送信部210は、提示用認証情報に、利用要求を示すメッセージや、利用したいコンテンツにID等を付加し、サービス利用要求を生成する。サービス利用要求送信部210は、生成したサービス利用要求を、ネットワーク60を介して、サービス提供装置1(40)又はサービス提供装置2(50)へ送信する。
(11)コンテンツ受信部211
コンテンツ受信部211は、ネットワーク60を介して、サービス提供装置1(40)及びサービス提供装置2(50)からコンテンツを受信する。コンテンツ受信部211は、受信したコンテンツを、コンテンツ再生部212へ出力する。
(12)コンテンツ再生部212
コンテンツ再生部212は、バッファ、デコーダ、ディスプレイ等から構成され、コンテンツ受信部211から、コンテンツを受け取ると、受け取ったコンテンツを、デコードし、ディスプレイに表示する。
3.ぼかし用公開鍵管理装置30
ぼかし用公開鍵管理装置30は、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニットなどから構成されるコンピュータシステムであり、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、ぼかし用公開鍵管理装置30は、その機能を達成する。なお、ぼかし用公開鍵管理装置30の機能的な構成については図示していない。
ぼかし用公開鍵管理装置30は、認証システム1の立ち上げ時に、認証装置10から、年齢ぼかし用公開鍵データベース300、国籍ぼかし用公開鍵データベース、及び住所ぼかし用公開鍵データベースを受け取り、内部で管理している。なお、年齢ぼかし用公開鍵データベース300のデータ構成は、図6に示したとおりである。
ぼかし用公開鍵管理装置30は、サービス利用装置20から、ネットワーク60を介して年齢ぼかし用公開鍵取得要求、国籍ぼかし用公開鍵取得要求、及び住所ぼかし用公開鍵取得要求を受信する。ぼかし用公開鍵管理装置30は、受信した各ぼかし用公開鍵取得要求に従い、各データベースからぼかし用公開鍵を読み出し、読み出したぼかし用公開鍵を、ネットワーク60を介して、サービス利用装置20へ送信する。
具体例として、ぼかし用公開鍵管理装置30は、サービス利用装置20から、24歳以上、27歳以下の全てのぼかし用公開鍵を要求する年齢ぼかし用公開鍵取得要求を受信した場合、年齢ぼかし用公開鍵データベース300から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を読み出す。ぼかし用公開鍵管理装置30は、読み出した各ぼかし用公開鍵を、サービス利用装置20へ送信する。
4.サービス提供装置1(40)
図13は、サービス提供装置1(40)の構成を機能的に示す機能ブロック図である。同図に示すように、サービス提供装置1(40)は、データ分割部401、認証用公開鍵取得部402、リング署名検証部403、ユーザ身元情報確認部404、ユーザ登録部405、サービスデータ送信制御部406、コンテンツ格納部407、及びコンテンツ送信部408から構成される。
サービス提供装置1(40)は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ネットワーク接続ユニット等から構成される、コンピュータシステムであり、マイクロプロセッサが、RAM又はハードディスクユニットに記憶されているコンピュータプログラムに従い動作することにより、サービス提供装置1(40)は、その機能を達成する。
以下では、サービス提供装置1(40)の各構成要素について説明する。
(1)データ分割部401
データ分割部401は、ネットワーク60を介して、サービス利用装置20からサービス利用要求を受け取る。データ分割部401は、受け取ったサービス利用要求から提示用身元認証情報を抽出する。
以下のサービス提供装置1(40)の説明においては、データ分割部401が、図12(a)に示した提示用身元認証情報250を抽出した場合を具体例として用い、説明する。
データ分割部401は、提示用身元認証情報250を、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aと、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bとに分離し、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aを、認証用公開鍵取得部402、及びユーザ身元情報確認部404へ出力し、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを、リング署名検証部403へ出力する。
(2)認証用公開鍵取得部402
認証用公開鍵取得部402は、データ分割部401から、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aを受け取る。認証用公開鍵取得部402は、24歳、25歳、26歳、及び27歳のそれぞれに対応するぼかし用公開鍵を要求するぼかし用公開鍵取得要求を生成し、生成したぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信する。
認証用公開鍵取得部402は、ネットワーク60を介して、ぼかし用公開鍵管理装置30から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受信する。認証用公開鍵取得部402は、受信した各年齢ぼかし用公開鍵を、リング署名検証部403へ出力する。
(3)リング署名検証部403
リング署名検証部403は、データ分割部401から、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを受け取り、更に、認証用公開鍵取得部402から、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)を受け取る。
リング署名検証部403は、年齢認証用リング署名「C_24,S_24,S_25,S_26,S_27」250bを、受け取った各年齢ぼかし用公開鍵を用いて検証する。検証の手順については、動作の説明において、詳細に述べる。
リング署名検証部403は、年齢認証用リング署名250bの検証に成功した場合は、検証成功を示す信号を、サービスデータ送信制御部406へ通知する。年齢認証用リング署名250bの検証に失敗した場合は、処理を終了する。
(4)ユーザ身元情報確認部404
ユーザ身元情報確認部404は、データ分割部401から、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aを受け取る。
ユーザ身元情報確認部404は、ぼかし年齢情報250aを確認し、サービス利用装置20から要求されたコンテンツが、ぼかし年齢情報250aが示す年齢のユーザ対し、提供可能であるか否かを判断する。
例えば、サービス利用装置20から要求されたコンテンツが、「20歳以上限定」という制限付のコンテンツである場合には、ユーザ身元情報確認部404は、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」250aが、「20歳以上限定」の条件を満たしているか否かをチェックする。この場合、条件を満たしていることから、ユーザ身元情報確認部404は、コンテンツを提供可能であると判断する。ここで、サービス利用装置20へ提供するコンテンツは、サービス利用要求に含まれるコンテンツIDにより識別されるコンテンツであるとする。
ユーザ身元情報確認部404は、コンテンツを提供可能であると判断する場合には、サービス提供OKを示す信号をサービスデータ送信制御部406へ出力し、ぼかし年齢情報250aを、ユーザ登録部405へ出力する。一方、コンテンツの提供が不可能であると判断する場合には、ユーザ身元情報確認部404は、その旨をサービス利用装置20へ通知するような構成としてもよい。
(5)ユーザ登録部405
ユーザ登録部405は、サービスを利用しているユーザを登録するユーザリストを記憶している。ユーザ登録部405は、ユーザ身元情報確認部404から、ぼかし年齢情報250aを受け取ると、受け取ったぼかし年齢情報250aを、ユーザリストに登録する。
(6)サービスデータ送信制御部406
サービスデータ送信制御部406は、リング署名検証部403から、リング署名の検証が成功した旨を示す信号を受け取り、且つ、ユーザ身元情報確認部404から、サービス提供OKを示す信号を受け取った場合に、コンテンツ送信部408に対し、コンテンツの読み出しを指示する。
(7)コンテンツ格納部407
コンテンツ格納部407は、ハードディスクユニットから構成されており、内部にコンテンツを格納している。ここで、コンテンツの一例は、動画像データがMPEG−2(Moving Picture Experts Group Phase 2)規格に従い圧縮符号化されて生成されたデータであるとする。なお、コンテンツは動画像データに限定されないのは、もちろんであり、静止画像データ、音楽データ、コンピュータプログラム、ゲーム用プログラム、地図等であってもよい。
(8)コンテンツ送信部408
コンテンツ送信部408は、サービスデータ送信制御部406からコンテンツの読み出しを指示されると、コンテンツ格納部407からコンテンツを読み出す。コンテンツ送信部408は、読み出したコンテンツを、ネットワーク60を介して、サービス利用装置20へ送信する。
5.サービス提供装置2(50)
サービス提供装置2(50)は、サービス提供装置1(40)と同一の構成を有するため、サービス提供装置2(50)の機能ブロック図については、図示していない。
サービス提供装置2(50)は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニットなどから構成されるコンピュータシステムである。
サービス提供装置2(50)は、サービス提供装置1(40)と同様に、サービス利用装置20へのサービス提供に際して、サービス利用装置20のユーザに対し、身元認証情報の提示を要求する。このとき、サービス提供装置2(50)は、サービス利用装置のユーザに対し、年齢、国籍、及び住所の提示を求めるものとする。
<動作>
1.システム全体の動作
図14は、認証システム1全体の動作を示すフローチャートである。
認証システム1は、先ずシステムセットアップ処理を行う(ステップS1)。その後、認証システム1は、身元認証情報発行処理を行い(ステップS2)、その後、サービス利用処理を行う(ステップS3)。
2.システムセットアップ処理の動作
図15及び図16は、認証システム1のセットアップ処理の動作を示すフローチャートであり、図14に示したフローチャートのステップS1の詳細である。なお、システムセットアップ処理の動作は、認証装置10を主体として記述している。
認証装置10の署名鍵生成部101は、署名生成鍵を生成し(ステップS101)、生成した署名生成鍵を、身元認証情報生成部106へ出力し、身元認証情報生成部106は、署名生成鍵を格納する(ステップS102)。署名鍵生成部101は、ステップS101で生成した署名生成鍵に対応する署名検証鍵を生成し(ステップS103)、生成した署名検証鍵を、サービス利用装置20へ通知する(ステップS104)。
その後、ぼかし用公開鍵生成部102は、年齢、国籍、住所毎に、ステップS105からステップS117までを繰り返す。
先ず、ぼかし用公開鍵生成部102は、i=0とし(ステップS106)、素数p_i、q_iをランダムに生成する(ステップS107)。その後、RSA暗号のモジュラスn_i=p_i×q_iを計算する(ステップS108)。
次に、ぼかし用公開鍵生成部102は、2≦d_i≦n_i−1となる、RSA暗号の秘密鍵d_iをランダムに生成し(ステップS109)、e_i×d_i=1 mod λ(n_i) を満たすRSA暗号の公開鍵を計算する(ステップS110)。
ここで、λ(n_i)は、カーマイル関数であり、上記n−1に対するカーマイル関数λ(n_i)の値は、p_iとq_iとの最小公倍数になる。
ぼかし用公開鍵生成部102は、ステップS109で生成したRSA暗号の秘密鍵d_iを、i番目を認証するための認証用秘密鍵とし(ステップS111)、ステップS110で計算した公開鍵組(e_i,n_i)を、i番目のぼかし用公開鍵とする(ステップS112)。次に、ぼかし用公開鍵生成部102は、i=i+1とする(ステップS113)。
全てのiについて、認証用秘密鍵とぼかし用公開鍵との生成が終了していない場合(ステップS114でNO)、ぼかし用公開鍵生成部102は、ステップS107に戻り、処理を続ける。すべてのiについて、認証用秘密鍵とぼかし用公開鍵との生成が終了した場合(ステップS114でYES)、ぼかし用公開鍵生成部102は、i個の認証用秘密鍵から成る認証用秘密鍵データベースを作成する(ステップS115)。なお、このとき、国籍については、番号―国名対応表120a(図4参照)を同時に生成し、住所については、番号―都道府県名対応表130a(図5参照)を同時に生成するものとする。
続いて、ぼかし用公開鍵生成部102は、i個のぼかし用公開鍵から成るぼかし用公開鍵データベースを作成する(ステップS116)。
年齢、国籍、及び住所について、認証用秘密鍵データベースとぼかし用公開鍵データベースとの作成が終了すると(ステップS117)、ぼかし用公開鍵生成部102は、年齢認証用秘密鍵データベース110、国籍認証用秘密鍵データベース120、及び住所認証用秘密鍵データベース130を、身元認証用秘密鍵保持部105へ出力し、身元認証用秘密鍵保持部105は、各データベースを格納する(ステップS118)。
次に、ぼかし用公開鍵生成部102は、年齢ぼかし用公開鍵データベース300、国籍ぼかし用公開鍵データベース、及び住所ぼかし用公開鍵データベースを、ぼかし用公開鍵管理装置30へ配布する(ステップS119)。
3.身元認証情報発行処理の動作
図17及び図18は、認証システム1の身元認証情報発行処理の動作を示すフローチャートであり、図14に示したフローチャートにおけるステップS2の詳細である。
先ず、サービス利用装置20は、ユーザの入力により、身元認証情報取得の指示を受け付けると(ステップS201)、ユーザ身元情報記憶部201に格納されているユーザ身元情報140を、身元認証情報発行依頼データ送信部202に転送する(ステップS202)。
身元認証情報発行依頼データ送信部202は、ユーザ身元情報140を含む身元認証情報発行依頼データを作成する(ステップS203)。身元認証情報発行依頼データ送信部202は、身元認証情報発行依頼データを、ネットワーク60を介して認証装置10へ送信し、認証装置10の身元認証情報発行依頼データ受信部103は、身元認証情報発行依頼データを受信する(ステップS204)。
身元認証情報発行依頼データ受信部103は、受信した身元認証情報発行依頼データから、ユーザ身元情報140を抽出し、抽出したユーザ身元情報140を、ユーザ身元情報確認部104へ転送する(ステップS205)。次に、ユーザ身元情報確認部104は、受け取ったユーザ身元情報140が正しいか否かを確認する(ステップS206)。
ユーザ身元情報140が正しくないと確認された場合(ステップS207でNO),認証装置10は、身元認証情報発行処理を終了する。ユーザ身元情報140が正しいと確認された場合(ステップS207でYES)、ユーザ身元情報確認部104は、ユーザ身元情報140を、身元認証情報生成部106のデータ分割部151へ転送する(ステップS208)。
データ分割部151は、受け取ったユーザ身元情報140を年齢情報141、国籍情報142、及び住所情報143に分離し、各情報を、身元認証用秘密鍵取得部152及び身元認証用秘密鍵付加部153へ出力する。
次に、身元認証用秘密鍵取得部152は、年齢情報141に対応する「24歳」認証用秘密鍵d_24を、身元認証用秘密鍵保持部105に格納されている年齢認証用秘密鍵データベース110から取得し(ステップS209)、国籍情報142に対応する「アメリカ」認証用秘密鍵d_50を、国籍認証用秘密鍵データベース120から取得し(ステップS210)、住所情報143に対応する「大阪」認証用秘密鍵d_23を、住所認証用秘密鍵データベース130から取得する(ステップS211)。身元認証用秘密鍵取得部152は、取得した3個の秘密鍵を、身元認証用秘密鍵付加部153へ出力する。
続いて、身元認証用秘密鍵付加部153は、年齢情報141と「24歳」認証用秘密鍵d_24とを結合し年齢認証情報161を生成し、国籍情報142と「アメリカ」認証用秘密鍵d_50とを結合し国籍認証情報162を生成し、住所情報143と「大阪」認証用秘密鍵d_23を結合し住所認証情報163を生成する(ステップS212)。身元認証用秘密鍵付加部153は、年齢認証情報161、国籍認証情報162、及び住所認証情報163を、署名生成部154へ出力する。
署名生成部154は、年齢認証情報161、国籍認証情報162、及び住所認証情報163対し、署名生成鍵を用いてデジタル署名を施して、認証装置署名データを生成する(ステップS250)。署名生成部154は、生成した認証装置署名データを、年齢認証情報161、国籍認証情報162、住所認証情報163に付加して、身元認証情報160を生成する(ステップS251)。署名生成部154は、生成した身元認証情報160を、身元認証情報送信部107へ出力する。
身元認証情報送信部107は、身元認証情報160を、ネットワーク60を介してサービス利用装置20へ送信し、サービス利用装置20の身元認証情報受信部203は、身元認証情報160を受信する(ステップS252)。
身元認証情報受信部203は、受信した身元認証情報160を、署名検証部204へ出力する。
署名検証部204は、受け取った身元認証情報160を、署名検証鍵を用いて検証する(ステップS253)。署名検証に失敗した場合(ステップS254でNO)、サービス利用装置20は、処理を終了する。署名検証に成功した場合(ステップS254でYES)、署名検証部204は、身元認証情報160を、身元認証情報保管部205へ出力し、身元認証情報保管部205は、身元認証情報160を格納する(ステップS255)。
4.サービス利用処理の動作
図19、図20、及び図21は、認証システム1のサービス利用処理の動作を示すフローチャートであり、図14に示したフローチャートにおけるステップS3の詳細である。
先ず、サービス利用装置20は、ユーザの入力により、サービス利用の指示を受け付ける(ステップS301)。なお、ここでは具体例として、サービス利用装置20は、ユーザから、サービス提供装置1(40)に対しコンテンツの利用を要求する指示を受け付けるものとするが、サービス提供装置2(50)に対しコンテンツの利用要求を行う動作についても同様である。
身元認証情報表示部206は、身元認証情報保管部205に格納されている身元認証情報160から、年齢情報161a、国籍情報162a、及び住所情報163aを抽出し、ディスプレイに表示する(ステップS302)。ぼかし指示受付部207は、ユーザの入力により、サービス提供装置1(40)に対して提示する身元情報の選択を受け付ける(ステップS303)。
以下のステップS305からステップS354までの処理を、サービス提供装置1(40)に対して提示する身元認証情報毎に繰り返す。
先ず、身元認証情報が年齢情報161aである場合(ステップS306でYES)、ぼかし身元認証情報生成部209の身元情報変換部222は、年齢=24歳=αとする(ステップS307)。
身元認証情報が、国籍情報162a及び住所情報163aの何れかである場合(ステップS306でNO)、身元情報変換部222は、身元情報に対応する番号を取得し(ステップS308)、取得した番号をαとする(ステップS309)。
具体的には、身元情報が国籍情報162aである場合、身元情報変換部222は、番号―国名対応表120aから、国籍=アメリカに対応する番号「50」を取得して、α=50とする。身元情報が住所情報163aである場合、身元情報変換部222は、番号―都道府県名対応表130aから、住所=大阪府に対応する番号「23」を取得して、α=23とする。
次に、ぼかし指示受付部207は、ぼかし指示(X,Y)の入力を受け付け(ステップS310)、受け付けた身元ぼかし指示(X,Y)を、身元情報変換部222へ出力する。
身元情報変換部222は、ぼかし指示(X,Y)を受け取ると、ぼかし身元情報を生成する(ステップS311)。具体的には、身元情報変換部222は、ステップS307又はステップS309で設定したαの値と、ぼかし指示(X,Y)とを用いて、α−X≦α≦α+Yを満たすαに対応する身元情報を取得し、取得したすべての身元情報を連結して、ぼかし身元情報を生成する。身元情報変換部222は、生成したぼかし身元情報を、リング署名生成部223及びデータ連結部224へ出力する。
ここで、身元情報が年齢情報161aであり、ぼかし指示が、X=0及びY=3であるとすると、身元情報変換部222は、ステップS311において、ぼかし年齢情報として、「年齢=24歳、25歳、26歳、27歳」を生成する。
リング署名生成部223は、ぼかし身元情報を受け取ると、ぼかし身元情報に含まれる各身元情報に対応するぼかし用公開鍵を要求するぼかし用公開鍵取得要求を生成し(ステップS312)、生成したぼかし用公開鍵取得要求を、ぼかし用公開鍵取得部208へ出力する。
ぼかし用公開鍵取得部208は、ネットワーク60を介してぼかし用公開鍵管理装置30へぼかし用公開鍵取得要求を送信し、ぼかし用公開鍵管理装置30は、ぼかし用公開鍵取得要求を受信する(ステップS313)。
ぼかし用公開鍵管理装置30は、要求されたぼかし用公開鍵をぼかし用公開鍵データベースから抽出する(ステップS350)。ぼかし用公開鍵管理装置30は、抽出したぼかし用公開鍵を、ネットワーク60を介して、サービス利用装置20へ送信し、サービス利用装置20のぼかし用公開鍵取得部208は、ぼかし用公開鍵を受信する(ステップS351)。
ぼかし用公開鍵取得部208は、取得したぼかし用公開鍵をリング署名生成部223へ出力する。
リング署名生成部223は、リング署名を生成し(ステップS352)、生成したリング署名を、データ連結部224へ出力する。データ連結部224は、ぼかし用身元情報と、リング署名とを連結する(ステップS353)。
すべての身元情報について処理が終了すると(ステップS354)、データ連結部224は、提示用身元認証情報を生成する(ステップS401)。データ連結部224は、生成した提示用身元認証情報を、サービス利用要求送信部210へ出力する。
サービス利用要求送信部210は、提示用身元認証情報を受け取ると、提示用身元認証情報、コンテンツID等を含むサービス利用要求を生成する(ステップS402)。サービス利用要求送信部210は、生成したサービス利用要求を、ネットワーク60を介して、サービス提供装置1(40)へ送信し、サービス提供装置1(40)のデータ分割部401は、サービス利用要求を受信する(ステップS403)。
データ分割部401は、受信したサービス利用要求に含まれる提示用身元認証情報から、ぼかし身元情報とリング署名とを抽出し(ステップS404)、ぼかし身元情報を、認証用公開鍵取得部402及びユーザ身元情報確認部404へ出力し、リング署名をリング署名検証部403へ出力する。
次に、ステップS405からステップS411までをぼかし身元情報毎に繰り返す。
先ず、認証用公開鍵取得部402は、ぼかし身元情報に対応するぼかし用公開鍵取得要求を生成する(ステップS406)。具体例として、受け取ったぼかし身元情報が、図12(a)に示したぼかし年齢情報250aである場合には、認証用公開鍵取得部402は、24歳、25歳、26歳、及び27歳のそれぞれに対応する4個のぼかし用公開鍵を要求するぼかし用公開鍵取得要求を生成する。
認証用公開鍵取得部402は、生成したぼかし用公開鍵取得要求を、ネットワーク60を介して、ぼかし用公開鍵管理装置30へ送信し、ぼかし用公開鍵管理装置30は、ぼかし用公開鍵取得要求を受信する(ステップS407)。
ぼかし用公開鍵管理装置30は、要求されたぼかし用公開鍵を、ぼかし用公開鍵データベースから抽出する(ステップS408)。ぼかし用公開鍵管理装置30は、抽出したぼかし用公開鍵を、ネットワーク60を介してサービス提供装置1(40)へ送信し、サービス提供装置1(40)の認証用公開鍵取得部402は、ぼかし用公開鍵を受信する(ステップS409)。認証用公開鍵取得部402は、受信したぼかし用公開鍵を、リング署名検証部403へ出力する。
次に、リング署名検証部403は、リング署名検証処理を行う(ステップS410)。すべてのぼかし身元情報についての処理が終了すると(ステップS411)、サービスデータ送信制御部406は、すべてのリング署名の検証に成功したか否かを判断し、何れかのリング署名の検証に失敗した場合は(ステップS412でNO)、処理を終了する。すべてのリング署名の検証に成功した場合(ステップS412でYES)、ユーザ身元情報確認部404は、データ分割部401から受け取ったぼかし身元情報を確認し(ステップS413)、ユーザに対し、サービス提供が可能であるか否かを判断する(ステップS414)。ぼかし身元情報の確認により、サービス提供が不可能である場合は(ステップS414でNO)、処理を終了する。サービス提供が可能である場合は(ステップS414で YES)、ユーザ登録部405は、ユーザ登録処理を行う(ステップS415)。
すべてのリング署名の検証に成功し、更にサービス提供が可能であると判断された場合には、コンテンツ送信部408は、コンテンツ格納部407からコンテンツを読み出す(ステップS416)。
コンテンツ送信部408は、読み出したコンテンツを、ネットワーク60を介して、サービス利用装置20へ送信し、サービス利用装置20のコンテンツ受信部211は、コンテンツを受信する(ステップS417)。コンテンツ受信部211は、受信したコンテンツをコンテンツ再生部212へ出力し、コンテンツ再生部212は、コンテンツを再生する(ステップS418)。
5.リング署名生成処理の動作
図22及び図23は、リング署名生成部223による、リング署名生成処理の動作を示すフローチャートである。なお、ここに示す動作は、図20に示したフローチャートの、ステップS352の詳細である。
なお、リング署名方式における公開鍵及び秘密鍵の各ペアには、0から順に番号付けがされているものとする。本実施形態では、年齢認証用秘密鍵、及び年齢ぼかし用公開鍵のペアには、0歳から99歳までの年齢に対応した番号付けに従うものとする。また、国籍認証用秘密鍵、及び国籍ぼかし用公開鍵のペアについては、番号―国名対応表120a、住所認証用秘密鍵、及び住所ぼかし用公開鍵のペアについては、番号―都道府県名対応表130aの番号付けに従うものとする。
リング署名生成部223は、α=L、α−X=A、α+Y=Bとし、ぼかし身元情報を、メッセージMとする(ステップS501)。
リング署名生成部223は、番号Aから番号BまでのL番目(A≦L≦B)については、秘密鍵d_Lを用い、L番目以外については、公開鍵(e_i,n_i)(A≦i≦Bかつi≠L)を用いてメッセージMに対するリング署名を、以下の手順で生成する。
先ず、K=Hash(M)を計算する(ステップS502)。ここで、Hash(M)は、メッセージMに対して、システムセットアップ時に定めたシステム共通のハッシュ計算を行った結果を示す。
次に、C_Aをランダムに生成し(ステップS503)、CC_B=Dec(K、C_A)を計算する(ステップS504)。ここで、Dec(K,C_A)は、システムセットアップ時に定めた秘密鍵暗号方式により、データC_Aに対して、Kを鍵とした復号処理を行った結果を示す。
続いて、j=Aとして(ステップS505)、j=A、A+1、…、L−1に対して、ステップS506から、ステップS508までを繰り返す。
リング署名生成部223は、S_jをランダムに生成し(ステップS506)、Y_j=S_j^(e_j) mod n_j を計算する(ステップS507)。ここで、X^α は、Xのα乗を示す。
次に、リング署名生成部223は、CC_j=C_j(+)Y_j、C_(j+1)=Enc(K,CC_j)を計算する(ステップS508)。ここで、(+)は、ビットごとの排他的論理和演算を示し、Enc(K,CC_j)は、システムセットアップ時に定めた秘密鍵暗号方式により、データCC_jに対して、Kを鍵とした暗号化を行った結果を示す。
j=L−1の場合(ステップS509でYES)、ステップS511へ進む。j≠L−1の場合(ステップS509でNO)、j=A+1として、ステップS506へ戻り、処理を続ける。
続いて、j=Bとして(ステップS511)、j=B、B−1、…、L+1に対して、ステップS512からステップS514までを繰り返す。
リング署名生成部223は、S_jをランダムに生成し(ステップS512)、Y_j=S_j^(e_j) mod n_j を計算する(ステップS513)。
次に、リング署名生成部223は、C_j=CC_j(+)Y_j、C_(j−1)=Dec(K,C_j)を計算する(ステップS514)。
j=L+1の場合(ステップS515でYES)、ステップS517へ進む。j≠L+1の場合(ステップS515でNO)、j=B−1として、ステップS512へ戻り、処理を続ける。
続いて、リング署名生成部223は、Y_L=C_L(+)CC_L、S_L=Y_L^(d_L) mod n_Lを計算する(ステップS517)。
リング署名生成部223は、以上の計算により得られたデータ組(C_A,S_A,S_(A+1),…,S_B)をリング署名とする(ステップS518)。
《リング署名生成の具体例》
ここでは、リング署名生成処理の具体例として、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」に対してリング署名を生成し、年齢認証用リング署名を作成する手順を説明する。
このとき、メッセージMは「24歳、25歳、26歳、27歳」を数値化したデータであり、用いる公開鍵は、「24歳」ぼかし用公開鍵(e_24,n_24)、「25歳」ぼかし用公開鍵(e_25,n_25)、「26歳」ぼかし用公開鍵(e_26,n_26)、及び「27歳」ぼかし用公開鍵(e_27,n_27)、であり、用いる秘密鍵は、「24歳」認証用秘密鍵d_24である。また、このとき、ステップS501における各値は、L=24、A=24、B=27である。
リング署名生成部223は、
(1)K=Hash(M)を計算する。
(2)C_24をランダムに発生させ、CC_27=Dec(K,C_24)を計算する。
(3)A=24、L=24となるので、ステップS505からステップS510までの処理は行わない。
(4)j=27、26、25に対して、以下の(4−1)、(4−2)の計算を繰り返し行う。
(4−1)S_jをランダムに生成し、Y_j=S_j^(e_j) mod n_j を計算する。
(4−2)C_j=CC_j(+)Y_j、C_(j−1)=Dec(K,C_j)を計算する。
(5)Y_24=C_24(+)CC_24、S_24=Y_24^(d_24) mod n_24 を計算する。
以上の計算により得られたデータ組(C_24、S_24、S_25、S_26、S_27)をリング署名として、データ連結部224に転送する。
6.リング署名検証処理の動作
図24は、リング署名検証処理の動作を示すフローチャートである。なお、ここに示す動作は、図21に示したフローチャートの、ステップS410の詳細である。
リング署名検証部403は、α−X=A、α+Y=Bとし、ぼかし身元情報を、メッセージMとする(ステップS601)。
リング署名検証部403は、K=Hash(M)を計算する(ステップS602)。
次に、リング署名検証部403は、j=Aとし(ステップS603)、Y_j=S_j^(e_j) mod n_j、CC_j=C_j(+)Y_j、C_(j+1)=Enc(K,CC_j)を計算する(ステップS604)。
j=Bの場合(ステップS605でYES)、ステップS607へ進む。j≠Bの場合(ステップS605でNO)、j=A+1として、ステップS604へ戻り、処理を続ける。
リング署名検証部403は、C_B=C_Aが成り立つか否か判断し、C_B=C_Aの場合(ステップS607でYES)、リング署名は正当なものと判定し(ステップS608)、C_B≠C_Aの場合(ステップS607でNO)、リング署名は不正なものと判定する(ステップS609)。
《リング署名検証の具体例》
ここでは、リング署名検証処理の具体例として、ぼかし年齢情報「年齢=24歳、25歳、26歳、27歳」に対するリング署名を検証する手順を説明する。
このとき、メッセージMは「24歳、25歳、26歳、27歳」を数値化したデータであり、ステップS601における各値は、A=24、B=27である。
リング署名検証部403は、
(1)K=Hash(M)を計算する。
(2)j=24、25、26、27について、Y_j=S_j^(e_j) mod n_j、CC_j=C_j(+)Y_j、C_(j+1)=Enc(K,CC_j)を計算する。
(3)C_24=C_27が成り立てば、リング署名は正当なものと判定し、成り立たない場合は、リング署名は不正なものと判定する。
《認証システム1の安全性》
ここでは、認証システム1における安全性(1)及び(2)について説明する。
(1)ぼかし身元認証情報から、ぼかしを行う前のユーザ身元情報が分からないこと
(2)身元認証情報から、不正にぼかしを行って作成したぼかし身元認証情報が作成できないこと。
まず、(1)について説明する。図12(a)に示すぼかし身元認証情報250において、年齢情報に対してぼかし処理が行われている。年齢認証用リング署名250bからは、リング署名の性質により、「24歳」、「25歳」、「26歳」、「27歳」のどれか一つの認証用秘密鍵により署名が生成されたことは確認できるが、どの秘密鍵によって署名が生成されたかは特定できない。故に、用いるリング署名が上記の機能を満たしている限り、安全性(1)については保証される。
次に、(2)の安全性について説明する。年齢認証用リング署名250bは、リング署名の性質から、「24歳」、「25歳」、「26歳」、「27歳」の何れか一つの認証用秘密鍵を有する者(即ち、24歳もしくは25歳もしくは26歳もしくは27歳の人)しか、作成することはできない。従って、24歳から27歳の人以外が、年齢認証用リング署名250bを偽造することは、用いるリング署名が安全である限り不可能である。即ち、安全性(2)についても保証される。
<まとめ>
以上説明したように、サービス利用装置20は、個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置であって、前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段とを備えることを特徴とする。
また、サービス提供装置1(40)は、前記署名生成装置により生成されたデジタル署名データを検証する署名検証装置であって、前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段とを備えることを特徴とする。
本実施形態におけるサービス利用装置20は、自機で提示用身元認証情報を生成することが可能である。
例えば、サービス利用装置20が、サービス提供装置30にサービス要求を送信する都度、認証装置10に対して、提示用身元認証情報の発行を依頼するシステムについて考えると、認証装置10に対する提示用身元認証情報発行依頼が集中した場合には、発行業務に遅延が生じたり、場合によっては処理負荷が膨大になり過ぎてシステムがダウンしたりするという恐れがある。また、悪意を持ったユーザが結託して、故意に膨大な数の発行依頼を認証装置10に対して行ってシステムダウンを引き起こさせるといった攻撃に晒されるという恐れもあり、認証装置10が常に安定したサービスを提供することができない可能性がある。
本実施形態における認証システム1は、上述したように、サービス利用装置20が自機において提示用身元認証情報を生成することが可能あり、認証装置10に対して、提示用身元認証情報の発行を依頼する必要が無い。したがって、認証装置10に処理負荷が集中せず、安定したシステムを実現している。
<その他の変形例>
なお、本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に限定されないのは勿論であり、以下のような場合も本発明に含まれる。
(1)上記実施形態では、サービス提供装置1(40)及びサービス提供装置2(50)が、サービス利用装置20に提供するサービスは、コンテンツ配信のサービスであるが、本発明におけるサービスは、コンテンツ配信に限定されない。
(2)また、本発明において用いるハッシュ方式、暗号方式、リング署名方式は、上記実施形態で開示している方式に限定されるものではない。
(3)上記実施形態では、ユーザ身元情報として、年齢情報、国籍情報、住所情報の3つとしているが、ユーザ身元情報の種類は、これらに限定されるものではない。
(4)上記実施形態では、サービス利用装置20が、サービス提供装置1(40)、及びサービス提供装置2(50)に身元情報を開示する場合には、開示すべき身元情報の全てにぼかし処理を行う構成を有するが、本発明は、この構成に限定されない。例えば、ぼかし処理を行った身元情報に、ぼかし処理を行わない身元情報を付加した提示用身元情報を生成し、各サービス提供装置に提示する構成も本発明に含まれる。以下では、その具体例について説明する。
身元認証情報表示部206は、抽出した年齢情報(年齢=24歳)161a、国籍情報(国籍=アメリカ)162a、及び住所情報(住所=大阪府)163aに、「ぼかし処理を行う情報を選択してください。」というメッセージを付加して、ぼかし処理選択画面を生成する。身元認証情報表示部206は、生成したぼかし処理選択画面を、ディスプレイに表示する。
また、身元認証情報表示部206は、ぼかし指示受付部207を介して、ぼかし処理を行う情報が選択されると、選択された情報にどのようなぼかし処理を行うのかをユーザに問いかける、ぼかし指示受付画面を生成する。身元認証情報表示部206は、生成したぼかし指示受付画面を、ディスプレイに表示する。
ぼかし指示受付部207は、予め内部に、番号―国名対応表120a(図4参照)と、番号―都道府県名対応表130a(図5参照)とを保持している。
ぼかし指示受付部207は、身元認証情報表示部206に、ぼかし処理選択画面が表示されている状態において、キーボードやマウス等の入力デバイスを介して、ユーザから、年齢情報161a、国籍情報162a、及び住所情報163aの内、何れの身元情報に対してぼかし処理を行うかの選択を受け付ける。ここで、ぼかし処理を行う身元情報は、1つだけでも良いし、複数を指定しても良い。
なお、いずれの身元情報に対してぼかし処理を行うかは、ユーザが自由に指定することが可能な場合もあるし、利用するサービス、視聴したいコンテンツの種類等によって予め決められた制約の下で、ユーザが指定する場合もある。例えば、ユーザの正確な年齢情報を必要とするサービス又はコンテンツの場合には、ユーザは、年齢情報161aについては、ぼかし処理を行う指示が出せないこととする。
(5)上記実施形態におけるサービス提供装置1(40)のユーザ身元情報確認部404は、予め、コンテンツと当該コンテンツを提供可能であるユーザの年齢とを対応付けたテーブルを保持していてもよい。そして、当該テーブルを参照することにより、サービス利用装置20に対し、要求されたコンテンツを提供することが可能か否かを判断するように構成してもよい。サービス提供装置2(50)についても同様に、コンテンツと当該コンテンツを提供可能であるユーザの条件(年齢や居住地等)を対応付けたテーブルを保持しており、当該テーブルを参照することにより、サービス利用装置20に対し、要求されたコンテンツを提供することが可能であるか否かを判断するように構成してもよい。
(6)上記実施形態の認証装置10を構成する機能ブロックの一部又は全部、サービス利用装置20を構成する機能ブロックの一部又は全部、サービス提供装置1(40)を構成する機能ブロックの一部又は全部を、集積回路であるLSIにて実現してもよい。
これらの機能ブロックは、個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。このような技術には、バイオ技術の適用等が可能性としてありえる
(7)また、本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであってもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。また、これらの記録媒体に記録されている前記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
(8)上記実施形態及び上記変形例をそれぞれ組み合わせる構成も、本発明に含まれる。
本発明は、ユーザにコンテンツを提供する産業において、ユーザ側は、必要最低限の個人情報を開示し、コンテンツ提供側においては、ユーザの正当性を確認することができる仕組みとして利用することが可能である。また、本発明は、コンテンツの提供を受けて、当該コンテンツを利用する機器を製造、販売する産業においても利用可能である。
認証システム1のシステム構成を示す図である。 認証装置10の構成を機能的に示す機能ブロック図である。 (a)身元認証用秘密鍵保持部105に記憶されているデータベースを示す図である。(b)年齢認証用秘密鍵データベース110のデータ構成を示す図である。 国籍認証用秘密鍵データベース120のデータ構成を示す図である。 住所認証用秘密鍵データベース130のデータ構成を示す図である。 年齢ぼかし用公開鍵データベース300のデータ構成を示す図である。 ユーザ身元情報140のデータ構成を示す図である。 身元認証情報生成部106の構成を機能的に示す機能ブロック図である。 身元認証情報160のデータ構成を示す図である。 サービス利用装置20の構成を機能的に示す機能ブロック図である。 ぼかし身元認証情報生成部209の構成を機能的に示す機能ブロック図である。 (a)提示用身元認証情報250のデータ構成を示す図である。(b)提示用身元認証情報260のデータ構成を示す図である。 サービス提供装置1(40)の構成を機能的に示す機能ブロック図である。 認証システム1全体の動作を示すフローチャートである。 システムセットアップ処理の動作を示すフローチャートであり、図16に続く。 システムセットアップ処理の動作を示すフローチャートであり,図15から続く。 身元認証情報発行処理の動作を示すフローチャートであり、図18に続く。 身元認証情報発行処理の動作を示すフローチャートであり、図17から続く。 サービス利用処理の動作を示すフローチャートであり、図20へ続く。 サービス利用処理の動作を示すフローチャートであり,図19から続き、図21に続く。 サービス利用処理の動作を示すフローチャートであり、図20から続く。 リング署名生成処理の動作を示すフローチャートであり、図23に続く。 リング署名生成処理の動作を示すフローチャートであり、図22から続く。 リング署名検証処理の動作を示すフローチャートである。
符号の説明
1 認証システム
10 認証装置
20 サービス利用装置
30 ぼかし用公開鍵管理装置
40 サービス提供装置1
50 サービス提供装置2
60 ネットワーク
101 署名鍵生成部
102 ぼかし用公開鍵生成部
103 身元認証情報発行依頼データ受信部
104 ユーザ身元情報確認部
105 身元認証用秘密鍵保持部
106 身元認証情報生成部
107 身元認証情報送信部
151 データ分割部
152 身元認証用秘密鍵取得部
153 身元認証用秘密鍵付加部
154 署名生成部
201 ユーザ身元情報記憶部
202 身元認証情報発行依頼データ送信部
203 身元認証情報受信部
204 署名検証部
205 身元認証情報保管部
206 身元認証情報表示部
207 ぼかし指示受付部
208 ぼかし用公開鍵取得部
209 ぼかし身元認証情報生成部
210 サービス利用要求送信部
211 コンテンツ受信部
212 コンテンツ再生部
221 データ分割部
222 身元情報変換部
223 リング署名生成部
224 データ連結部
401 データ分割部
402 認証用公開鍵取得部
403 リング署名検証部
404 ユーザ身元情報確認部
405 ユーザ登録部
406 サービスデータ送信制御部
407 コンテンツ格納部
408 コンテンツ送信部

Claims (20)

  1. 個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置であって、
    前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、
    前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、
    前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、
    前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段と
    を備えることを特徴とする署名生成装置。
  2. 前記曖昧情報生成手段は、前記属性情報が示す属性と同一の属性を有する前記ダミー情報を選択する
    ことを特徴とする請求項1に記載の署名生成装置。
  3. 前記属性は、年齢であって、
    前記属性情報は、前記個人の年齢を示しており、
    前記曖昧情報生成手段は、前記属性情報が示す前記年齢と異なる年齢である前記ダミー情報を選択する
    ことを特徴とする請求項2に記載の署名生成装置。
  4. 前記属性は、住所であって、
    前記属性情報は、前記個人が居住している地区名を示しており、
    前記曖昧情報生成手段は、前記属性情報が示す前記地区名と異なる地区名である前記ダミー情報を選択する
    ことを特徴とする請求項2に記載の署名生成装置。
  5. 前記属性は、国籍であって、
    前記属性情報は、前記個人が有する国籍の国名を示しており、
    前記曖昧情報生成手段は、前記属性情報が示す前記国名と異なる国名である前記ダミー情報を選択する
    ことを特徴とする請求項2に記載の署名生成装置。
  6. 前記署名生成装置は、
    ダミー情報の選択条件を示すぼかし指示を受け付けるぼかし指示受付手段を備え、
    前記曖昧情報生成手段は、前記ぼかし指示が示す前記選択条件に従い、前記1以上のダミー情報を選択する
    ことを特徴とする請求項2に記載の署名生成装置。
  7. 前記ぼかし指示受付手段は、選択するダミー情報の個数を示す前記選択条件を受け付け、
    前記曖昧情報生成手段は、前記選択条件が示す個数のダミー情報を選択する
    ことを特徴とする請求項6に記載の署名生成装置。
  8. 前記署名生成装置は、サービス提供装置が提供するサービスを利用する装置であって、更に、
    前記曖昧情報及び前記デジタル署名データを含むサービス要求を生成する要求生成手段と、
    前記サービス要求を、前記サービス提供装置へ送信する要求送信手段と、
    前記サービス提供装置から、前記サービスを受信するサービス受信手段と
    を備えることを特徴とする請求項1に記載の署名生成装置。
  9. 前記署名生成装置は、
    前記属性情報及び前記秘密鍵と、前記属性情報及び前記秘密鍵に対するデジタル署名データとを、外部の認証装置から取得する取得手段と、
    取得した前記デジタル署名データを検証する署名検証手段と、
    前記署名検証手段による検証に成功した場合に、前記属性情報及び前記秘密鍵を、前記記憶手段に書き込む書込手段と
    を備えることを特徴とする請求項1に記載の署名生成装置。
  10. 請求項1に記載の署名生成装置により生成されたデジタル署名データを検証する署名検証装置であって、
    前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、
    前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段と
    を備えることを特徴とする署名検証装置。
  11. 前記署名検証装置は、サービス利用装置に対してサービスを提供する装置であって、更に、
    前記サービス利用装置から、前記サービス利用装置のユーザに関する情報である前記曖昧情報及び前記デジタル署名データを含むサービス利用要求を受信する要求受信手段と、
    前記曖昧情報に基づき、前記ユーザに対し、前記サービスを提供することが可能であるか否かを判定する判定手段と、
    前記署名検証手段による前記検証に成功し、且つ、前記判定手段による前記判定が肯定的である場合に、前記サービス利用装置へ、前記サービスを提供するサービス提供手段と
    を備えることを特徴とする請求項10に記載の署名検証装置。
  12. 個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置と、前記デジタル署名データを検証する署名検証装置とから構成される認証システムであって、
    前記署名生成装置は、
    前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、
    前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、
    前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、
    前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段とを備え、
    前記署名検証装置は、
    前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、
    前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段とを備える
    ことを特徴とする認証システム。
  13. 前記署名生成装置は、
    前記曖昧情報及び前記デジタル署名データを含むサービス要求を生成する要求生成手段と、
    前記サービス要求を、前記署名検証装置へ送信する要求送信手段と、
    前記署名検証装置から、前記サービスを受信するサービス受信手段とを備え、
    前記署名検証装置は、
    前記署名生成装置から、ユーザに関する情報である前記曖昧情報及び前記デジタル署名データを含むサービス利用要求を受信する要求受信手段と、
    前記曖昧情報に基づき、前記ユーザに対し、前記サービスを提供することが可能であるか否かを判定する判定手段と、
    前記署名検証手段による前記検証に成功し、且つ、前記判定手段による前記判定が肯定的である場合に、前記署名生成装置へ、前記サービスを提供するサービス提供手段とを備える
    ことを特徴とする請求項12に記載の認証システム。
  14. 前記認証システムは、更に、
    前記署名生成装置から属性情報を受信する属性情報受信手段と、
    前記属性情報及び前記属性情報に対応する秘密鍵に対するデジタル署名データである認証装置署名データを生成する署名生成手段と、
    前記属性情報、前記秘密鍵、及び前記認証装置署名データを前記署名生成装置へ送信する認証装置署名データ送信手段とを備える認証装置を含み、
    前記署名生成装置は、更に、
    前記認証装置へ、前記属性情報を送信する属性情報送信手段と、
    前記属性情報、前記秘密鍵、及び前記認証装置署名データを、前記認証装置から取得する認証装置署名データ取得手段と、
    取得した前記認証装置署名データを検証する署名検証手段と、
    前記署名検証手段による検証に成功した場合に、前記属性情報及び前記秘密鍵を、前記記憶手段に書き込む書込手段とを備える
    ことを特徴とする請求項12に記載の認証システム。
  15. 個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置で用いる署名生成方法であって、
    前記署名生成装置は、
    前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段を備え、
    前記署名生成方法は、
    前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成するステップと、
    前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得するステップと、
    前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成するステップと
    を含むことを特徴とする署名生成方法。
  16. 個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置で用いられるコンピュータプログラムあって、
    前記署名生成装置は、
    前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段を備え、
    前記コンピュータプログラムは、
    前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成するステップと、
    前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得するステップと、
    前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成するステップと
    を含むことを特徴とするコンピュータプログラム。
  17. 個人に関する情報を曖昧にしつつ、前記情報の正確さを証明するデジタル署名データを生成する署名生成装置で用いられる集積回路であって、
    前記個人に関する属性情報と当該属性情報に対応する秘密鍵とを記憶している記憶手段と、
    前記属性情報に関連する1以上のダミー情報を選択し、前記属性情報と前記1以上のダミー情報とから成る曖昧情報を生成する曖昧情報生成手段と、
    前記属性情報に対応する公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを取得する公開鍵取得手段と、
    前記属性情報に対応する秘密鍵及び公開鍵と、前記1以上のダミー情報のそれぞれに対応する公開鍵とを用いて、前記曖昧情報に対してリング署名を施し、デジタル署名データを生成する署名生成手段と
    を備えることを特徴とする集積回路。
  18. 請求項1に記載の署名生成装置により生成されたデジタル署名データを検証する署名検証装置で用いられる署名検証方法であって、
    前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得するステップと、
    前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施すステップと
    を含むことを特徴とする署名検証方法。
  19. 請求項1に記載の署名生成装置により生成されたデジタル署名データを検証する署名検証装置で用いられるコンピュータプログラムであって、
    前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得するステップと、
    前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施すステップと
    を含むことを特徴とするコンピュータプログラム。
  20. 請求項1に記載の署名生成装置により生成されたデジタル署名データを検証する署名検証装置で用いられる集積回路あって、
    前記属性情報に対応付けられている公開鍵と、前記1以上のダミー情報に対応付けられている公開鍵とを取得する公開鍵取得手段と、
    前記デジタル署名データに、取得した前記複数個の公開鍵を用いて、リング署名の検証処理を施す署名検証手段と
    を備えることを特徴とする集積回路。
JP2007544089A 2005-11-08 2006-10-26 認証システム、署名生成装置、署名検証装置 Expired - Fee Related JP4876075B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007544089A JP4876075B2 (ja) 2005-11-08 2006-10-26 認証システム、署名生成装置、署名検証装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005323206 2005-11-08
JP2005323206 2005-11-08
PCT/JP2006/321356 WO2007055104A1 (ja) 2005-11-08 2006-10-26 認証システム、署名生成装置、署名検証装置
JP2007544089A JP4876075B2 (ja) 2005-11-08 2006-10-26 認証システム、署名生成装置、署名検証装置

Publications (2)

Publication Number Publication Date
JPWO2007055104A1 true JPWO2007055104A1 (ja) 2009-04-30
JP4876075B2 JP4876075B2 (ja) 2012-02-15

Family

ID=38023110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007544089A Expired - Fee Related JP4876075B2 (ja) 2005-11-08 2006-10-26 認証システム、署名生成装置、署名検証装置

Country Status (4)

Country Link
US (1) US8332649B2 (ja)
JP (1) JP4876075B2 (ja)
CN (1) CN101305544A (ja)
WO (1) WO2007055104A1 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007010789A1 (de) * 2007-03-02 2008-09-04 Deutsche Thomson Ohg Verfahren zum Betreiben eines Netzwerkes sowie lokales Netzwerk und Netzwerkkomponente
US8935528B2 (en) * 2008-06-26 2015-01-13 Microsoft Corporation Techniques for ensuring authentication and integrity of communications
CN102725737B (zh) 2009-12-04 2016-04-20 密码研究公司 可验证防泄漏的加密和解密
EP2348449A3 (en) * 2009-12-18 2013-07-10 CompuGroup Medical AG A computer implemented method for performing cloud computing on data being stored pseudonymously in a database
EP2348452B1 (en) 2009-12-18 2014-07-02 CompuGroup Medical AG A computer implemented method for sending a message to a recipient user, receiving a message by a recipient user, a computer readable storage medium and a computer system
EP2348447B1 (en) 2009-12-18 2014-07-16 CompuGroup Medical AG A computer implemented method for generating a set of identifiers from a private key, computer implemented method and computing device
EP2365456B1 (en) * 2010-03-11 2016-07-20 CompuGroup Medical SE Data structure, method and system for predicting medical conditions
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
CN102006167B (zh) * 2010-11-11 2013-03-13 西安理工大学 基于代数的对消息匿名环签名的方法
CN102006166B (zh) * 2010-11-11 2013-01-02 西安理工大学 基于多变量多项式对消息匿名环签名的方法
JP5609631B2 (ja) * 2010-12-24 2014-10-22 富士通株式会社 情報処理装置、サービス仲介方法及びプログラム
DE102011082101B4 (de) * 2011-09-02 2018-02-22 Bundesdruckerei Gmbh Verfahren zur Erzeugung eines Soft-Tokens, Computerprogrammprodukt und Dienst-Computersystem
US9122873B2 (en) 2012-09-14 2015-09-01 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
DE102012219618B4 (de) * 2012-10-26 2016-02-18 Bundesdruckerei Gmbh Verfahren zur Erzeugung eines Soft-Tokens, Computerprogrammprodukt und Dienst-Computersystem
US9734340B1 (en) * 2013-04-03 2017-08-15 Ca, Inc. System and method for providing a high-value identity
US9219747B2 (en) 2013-10-28 2015-12-22 At&T Intellectual Property I, L.P. Filtering network traffic using protected filtering mechanisms
US10200191B2 (en) * 2014-11-27 2019-02-05 Koninklijke Philips N.V. Electronic calculating device for performing obfuscated arithmetic
RU2698763C2 (ru) * 2014-12-22 2019-08-29 Конинклейке Филипс Н.В. Электронное вычислительное устройство
US11062303B2 (en) 2015-06-08 2021-07-13 Blockstream Corporation Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction
US10079686B2 (en) 2015-07-29 2018-09-18 International Business Machines Corporation Privacy-preserving attribute-based credentials
US10089500B2 (en) * 2015-09-25 2018-10-02 Intel Corporation Secure modular exponentiation processors, methods, systems, and instructions
US10270598B2 (en) 2016-08-26 2019-04-23 Intel Corporation Secure elliptic curve cryptography instructions
CN107342990B (zh) * 2017-06-23 2020-03-13 西南交通大学 一种分布式授权的属性基网络环签名方法
EP3758279A1 (en) * 2019-06-27 2020-12-30 Koninklijke Philips N.V. Selective disclosure of attributes and data entries of a record
US11176264B2 (en) 2019-08-20 2021-11-16 Bank Of America Corporation Data access control using data block level decryption
US11741248B2 (en) 2019-08-20 2023-08-29 Bank Of America Corporation Data access control using data block level encryption
US11379092B2 (en) 2019-11-11 2022-07-05 Klarna Bank Ab Dynamic location and extraction of a user interface element state in a user interface that is dependent on an event occurrence in a different user interface
US11366645B2 (en) 2019-11-11 2022-06-21 Klarna Bank Ab Dynamic identification of user interface elements through unsupervised exploration
US11726752B2 (en) 2019-11-11 2023-08-15 Klarna Bank Ab Unsupervised location and extraction of option elements in a user interface
CN111193751B (zh) * 2020-01-13 2022-02-08 临沂大学 一种恢复出厂设置的方法及设备
US11409546B2 (en) 2020-01-15 2022-08-09 Klarna Bank Ab Interface classification system
US11386356B2 (en) 2020-01-15 2022-07-12 Klama Bank AB Method of training a learning system to classify interfaces
US10846106B1 (en) 2020-03-09 2020-11-24 Klarna Bank Ab Real-time interface classification in an application
US11496293B2 (en) * 2020-04-01 2022-11-08 Klarna Bank Ab Service-to-service strong authentication
CN116743396B (zh) * 2023-08-14 2023-11-03 深圳奥联信息安全技术有限公司 一种优化的环签名方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116610A1 (en) * 2001-02-22 2002-08-22 Holmes William S. Customizable digital certificates
JP3987710B2 (ja) * 2001-10-30 2007-10-10 株式会社日立製作所 認定システムおよび認証方法
CN1633776A (zh) * 2002-04-15 2005-06-29 美国多科摩通讯研究所股份有限公司 利用双线性映射的签名方案
JP2003345752A (ja) * 2002-05-24 2003-12-05 Ntt Data Corp 認証管理サーバ及びプログラム
US20030233542A1 (en) * 2002-06-18 2003-12-18 Benaloh Josh D. Selectively disclosable digital certificates
KR20030008183A (ko) * 2002-12-24 2003-01-24 학교법인 한국정보통신학원 겹선형쌍을 이용한 개인식별정보 기반의 원형서명 방법
JP4250429B2 (ja) * 2003-01-24 2009-04-08 キヤノン株式会社 連鎖型署名作成装置、及びその制御方法
JP2004289247A (ja) * 2003-03-19 2004-10-14 Nippon Telegr & Teleph Corp <Ntt> サービス利用方法、ユーザ装置、サービス利用処理プログラム、サービス提供者装置、サービス提供処理プログラム、証明書管理装置、証明書管理プログラム及び記録媒体
FR2855343B1 (fr) * 2003-05-20 2005-10-07 France Telecom Procede de signature electronique de groupe avec anonymat revocable, equipements et programmes pour la mise en oeuvre du procede
WO2005071880A1 (ja) * 2004-01-23 2005-08-04 Nec Corporation グループ署名システム、方法、装置、およびプログラム
US20080091941A1 (en) * 2004-09-03 2008-04-17 Nec Corporation Group Signature System, Member Status Judging Device, Group Signature Method And Member Status Judging Program
US8098823B2 (en) * 2005-05-03 2012-01-17 Ntt Docomo, Inc. Multi-key cryptographically generated address

Also Published As

Publication number Publication date
US8332649B2 (en) 2012-12-11
CN101305544A (zh) 2008-11-12
WO2007055104A1 (ja) 2007-05-18
JP4876075B2 (ja) 2012-02-15
US20090193250A1 (en) 2009-07-30

Similar Documents

Publication Publication Date Title
JP4876075B2 (ja) 認証システム、署名生成装置、署名検証装置
JP7203829B2 (ja) ブロックチェーンでエンティティにより提供されるデータの通信、保存、及び処理のためのシステム及び方法
US20200013026A1 (en) Systems and methods for blockchain addresses and owner verification
US7571324B2 (en) Method and device for anonymous signature with a shared private key
EP1505765A1 (en) Data processing system, data processing device, data processing method, and computer program
JP2001320356A (ja) 公開鍵系暗号を使用したデータ通信システムおよびデータ通信システム構築方法
JPWO2020053994A1 (ja) 情報処理装置、情報処理システム、メンバ特定方法、及びプログラム
JP2005513956A (ja) グループ署名のための暗号システム
JP4892478B2 (ja) 認証システム、認証装置、端末装置及び検証装置
JP4846464B2 (ja) 複数公開鍵の証明書を発行及び検証するシステム、並びに、複数公開鍵の証明書を発行及び検証する方法
EP1120726A1 (en) Information processing device and method, and providing medium
JP4452105B2 (ja) 復号情報生成装置及びそのプログラム、配信用コンテンツ生成装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム
JP4971917B2 (ja) 署名生成装置、署名検証装置、グループ管理装置、およびそれらのプログラム
JP7364238B2 (ja) 電子取引システム、取引サーバ、検証サーバ、電子取引方法及びプログラム
WO2021019783A1 (ja) 所有者同一性確認システム、端末および所有者同一性確認方法
JP2006018692A (ja) 電子権利譲渡処理方法、電子権利譲渡管理システム及びその装置、並びにプログラム
JP5397858B2 (ja) 電子投票媒体
JP2006195844A (ja) 最少トランザクションによる電子権利譲渡管理方法および権利譲渡処理装置、権利譲受装置権利譲渡管理装置、並びにそのプログラム
WO2017219880A1 (zh) 权益文件管理方法
WO2024157662A1 (ja) メッセージ提示システム及びメッセージ提示方法
JP4322768B2 (ja) 署名要求装置、署名システム、署名要求方法および署名要求プログラム
JP2011107841A (ja) 電子投票システム
KR20230080676A (ko) 고속 블록체인 네트워크를 이용한 did 관리 시스템 및 방법
JP2023125727A (ja) テンプレート管理システム及びテンプレート管理方法
JP2023033146A (ja) プログラム、投票管理方法、端末、及び投票管理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090529

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111128

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

Free format text: PAYMENT UNTIL: 20141202

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees