JP3815022B2 - 利用資格検証装置および方法、ならびに、利用資格検証システム - Google Patents

利用資格検証装置および方法、ならびに、利用資格検証システム Download PDF

Info

Publication number
JP3815022B2
JP3815022B2 JP02732698A JP2732698A JP3815022B2 JP 3815022 B2 JP3815022 B2 JP 3815022B2 JP 02732698 A JP02732698 A JP 02732698A JP 2732698 A JP2732698 A JP 2732698A JP 3815022 B2 JP3815022 B2 JP 3815022B2
Authority
JP
Japan
Prior art keywords
information
proof
verification
certification
response
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.)
Expired - Fee Related
Application number
JP02732698A
Other languages
English (en)
Other versions
JPH11234262A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP02732698A priority Critical patent/JP3815022B2/ja
Priority to US09/236,393 priority patent/US6389536B1/en
Publication of JPH11234262A publication Critical patent/JPH11234262A/ja
Application granted granted Critical
Publication of JP3815022B2 publication Critical patent/JP3815022B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/383Anonymous user system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Telephonic Communication Services (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、利用資格を検証する利用資格検証装置に関する。
【0002】
【従来の技術】
ネットワークの進展につれ、ソフトウェアやマルチメディアデータなどのデジタル情報で表現された知的財産が飛躍的に増大している。そして、デジタル情報は簡単に複製することがで、また不正にコピーしたとしても一切痕跡が残らない。このため、デジタル情報に関する著作権の保護が問題となっている。
【0003】
利用の権利を表すものとして日常的に用いているものにチケットがあり、チケットのデジタル化も試みられている。しかしながら、前述の著作権保護と同様の問題がある。
【0004】
ソフトウェアの利用資格を検証する従来の技術として、米国特許5,586,186号明細書で開示されている技術がある。(以下、従来技術と呼ぶ。)この技術はソフトウェアのアクセス制御を実現するものであるが、暗号化されたソフトウェアを復号する代わりに、暗号化された所与の情報が正しく復号されることで利用資格を確認することにより、チケットのデジタル化にも用いることができる。
【0005】
従来技術では、ソフトウェアを暗号化した状態で配布しておき、利用者が該ソフトウェアの利用を希望するときには、復号するための情報(利用者鍵)をソフトウェアベンダから購入する方法を採っている。暗号化にはRSA(Rivest−Shamir−Adleman)公開鍵暗号を用いており、利用者鍵としてRSA公開鍵対の秘密鍵と利用者識別情報に所定の演算を行なって得られる値を使用する。
【0006】
【従来技術の問題点】
従来技術は、RSAベースの認証方式であるため、計算量が多い。BruceSchneier,Applied Cryptography(Second Edition),Wiley,1996によれば、ワークステーション(SPARC2)で、法数1024ビット・公開鍵8ビットのRSA暗号系を使って1024ビットのデータを処理する時間は、署名が0.97秒、検証が0.08秒かかっている。このため、ICカードのような、ワークステーションと比較してはるかにCPUパワー・メモリが少ない装置では、認証のために時間が掛かるという問題がある。
【0007】
【発明が解決しようとする課題】
本発明は上記の問題に鑑みてなされたもので、ICカードのようにCPUパワー・メモリの少ない装置でも高速に認証が可能な利用資格検証装置の実現を課題とする。
【0008】
【課題を解決する手段】
前記課題を解決するため、請求項1の利用資格検証装置は、証明補助情報発行部、検証部および証明部を有する。そして、前記証明補助情報発行部は、利用資格の認証の際に用いる証明情報を管理する証明情報管理手段と、秘密の情報を管理する秘密情報管理手段と、証明補助情報の計算に用いる第1の一方向性関数計算手段と、証明補助情報を計算する証明補助情報計算手段と、第1の通信手段とを有する。また、前記検証部は、証明情報を保持する証明情報保持手段と、試験情報を計算する試験情報計算手段と、第2の一方向性関数計算手段と、応答情報を検証する応答情報検証手段と、第2の通信手段とを有する。さらに、前記証明部は、秘密情報を保持する秘密情報保持手段と、証明補助情報を管理する証明補助情報管理手段と、第3の一方向性関数計算手段と、応答情報を計算する応答情報計算手段と、第3の通信手段とを有する。
【0009】
また、請求項2の利用資格検証装置は、証明補助情報発行部、検証部および証明部を有する。そして、前記証明補助情報発行部は、証明情報を管理する証明情報管理手段と、秘密の情報を管理する秘密情報管理手段と、証明補助情報の計算に用いる第1の一方向性関数計算手段と、証明補助情報を計算する証明補助情報計算手段と、第1の通信手段とを有する。また、前記検証部は、秘密情報を保持する第1の秘密情報保持手段と、証明補助情報を管理する第1の証明補助情報管理手段と、試験情報を計算する試験情報計算手段と、第2の一方向性関数計算手段と、応答情報を検証する応答情報検証手段と、第2の通信手段とを有する。さらに、前記証明部は、秘密情報を保持する第2の秘密情報保持手段と、証明補助情報を管理する第2の証明補助情報管理手段と、第3の一方向性関数計算手段と、応答情報を計算する応答情報計算手段と、第3の通信手段とを有する。
【0010】
請求項3の利用資格検証装置は、請求項1ないし請求項2の利用資格検証装置であって、証明情報管理手段は、利用条件を示す情報である使用制限記述を証明情報と併せて管理し、証明補助情報管理手段は、使用制限記述を証明補助情報と併せて管理し、前記証明部で用いる証明補助情報および前記証明部で生成される応答情報の計算には使用制限記述を含む。
【0011】
請求項4の利用資格検証装置は、請求項1ないし請求項3の利用資格検証装置であって、復号手段を備え、利用資格があると判定した場合には、証明情報あるいは証明情報から得られる値を前記復号手段の復号鍵として用い、情報を復号する。
【0012】
請求項5の利用資格検証装置は、請求項1ないし請求項4の利用資格検証装置であって、利用資格検証時の履歴を管理する履歴管理手段を備え、第1の証明補助情報管理手段は、伝達情報を証明補助情報と併せて管理し、試験情報はさらに伝達情報を含み、利用資格検証時に前記伝達情報を履歴管理手段に格納する。
【0013】
請求項6の利用資格検証装置は、証明補助情報発行部、検証部および証明部を有する。そして、前記証明補助情報発行部は、利用資格の認証の際に用いる証明情報を管理する証明情報管理手段と、秘密の情報を管理する秘密情報管理手段と、少なくとも前記秘密情報管理手段が管理する秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算手段と、前記秘密情報管理手段が管理する秘密情報と、前記第1の一方向性関数計算手段の計算結果をもとに証明補助情報を計算する証明補助情報計算手段と、証明補助情報の計算の過程で情報を送受信する第1の通信手段とを有する。また、前記検証部は、証明情報を保持する証明情報保持手段と、第1の試験情報を計算する第1の試験情報計算手段と、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段と、受信した第2の試験情報に前記第2の一方向性関数計算手段を作用させ、第1の応答情報を計算する第1の応答情報計算手段と、前記証明情報保持手段が保持する証明情報と、第1の試験情報の一部もしくは全部をもとに得られる値に対し前記第2の一方向性計算手段を作用させた結果と第2の応答情報が等しいか検査する第1の応答情報検証手段と、利用資格の認証の過程で情報を送受信する第2の通信手段とを有する。さらに、前記証明部は、秘密の情報を保持する秘密情報保持手段と、応答情報の作成に用いる証明補助情報を管理する証明補助情報管理手段と、証明補助情報に対応する内部状態を管理する内部状態管理手段と、試験情報を計算する第2の試験情報計算手段と、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段と、受信した情報の一部もしくは全部と、前記秘密情報保持手段が保持する秘密情報と、前記証明補助情報管理手段が管理する証明補助情報をもとに得られる値に、前記第3の一方向性関数計算手段を作用させて第2の応答情報を計算する第2の応答情報計算手段と、第2の試験情報を計算する第2の試験情報計算手段と、第1の応答情報、および第2の試験情報の一部もしくは全部と、前記秘密情報保持手段が保持する秘密情報と、前記証明補助情報管理手段が管理する証明補助情報をもとに得られる値に、前記第3の一方向性関数計算手段を作用させた結果と応答情報が等しいか検査する第2の応答情報検証手段と、利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信手段とを有している。
【0014】
請求項7の利用資格検証装置は、証明補助情報発行部、検証部および証明部を有する。そして、前記証明情報発行部は、利用資格の認証の際に用いる証明情報を管理する証明情報管理手段と、秘密の情報を管理する秘密情報管理手段と、少なくとも前記秘密情報管理手段が管理する秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算手段と、前記秘密情報管理手段が管理する秘密情報と、前記第1の一方向性関数計算手段の計算結果をもとに証明補助情報を計算する証明補助情報計算手段と、証明補助情報の計算の過程で情報を送受信する第1の通信手段と、秘密の情報を保持する第1の秘密情報保持手段と、証明補助情報を管理する第1の証明補助情報管理手段と、第1の試験情報を計算する第1の試験情報計算手段と、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段と、受信した第2の試験情報に前記第2の一方向性関数計算手段を作用させ、第1の応答情報を計算する第1の応答情報計算手段と、前記証明情報保持手段が保持する証明情報と、第1の試験情報の一部もしくは全部をもとに得られる値に対し前記第2の一方向性計算手段を作用させた結果と第2の応答情報が等しいか検査する第1の応答情報検証手段と、利用資格の認証の過程で情報を送受信する第2の通信手段とを有する。さらに、前記証明部は、秘密の情報を保持する第2の秘密情報保持手段と、応答情報の作成に用いる証明補助情報を管理する第2の証明補助情報管理手段と、証明補助情報に対応する内部状態を管理する内部状態管理手段と、試験情報を計算する第2の試験情報計算手段と、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段と、受信した情報の一部もしくは全部と、前記秘密情報保持手段が保持する秘密情報と、前記証明補助情報管理手段が管理する証明補助情報をもとに得られる値に、前記第3の一方向性関数計算手段を作用させて第2の応答情報を計算する第2の応答情報計算手段と、第2の試験情報を計算する第2の試験情報計算手段と、第1の応答情報、および第2の試験情報の一部もしくは全部と、前記秘密情報保持手段が保持する秘密情報と、前記証明補助情報管理手段が管理する証明補助情報をもとに得られる値に、前記第3の一方向性関数計算手段を作用させた結果と応答情報が等しいか検査する第2の応答情報検証手段と、利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信手段とを有している。
【0015】
請求項8の利用資格検証装置は、請求項6ないし請求項7の利用資格検証装置であって、証明情報管理手段は、利用条件を示す情報である使用制限記述を証明情報と併せて管理し、証明補助情報管理手段は、使用制限記述を証明補助情報と併せて管理し、前記証明部で用いる証明補助情報および前記証明部で生成される応答情報の計算には使用制限記述を含む。
【0016】
請求項9の利用資格検証装置は、請求項6ないし請求項8の利用資格検証装置であって、復号手段を備え、利用資格があると判定した場合には、証明情報あるいは証明情報から得られる値を前記復号手段の復号鍵として用い、情報を復号する。
【0017】
請求項10の利用資格検証装置は、請求項6ないし請求項9の利用資格検証装置であって、利用資格検証時の履歴を管理する履歴管理手段を備え、第1の証明補助情報管理手段は、伝達情報を証明補助情報と併せて管理し、試験情報はさらに伝達情報を含み、利用資格検証時に前記伝達情報を履歴管理手段に格納する。
【0018】
【作用】
本発明の利用資格検証装置は、証明補助情報の発行と、利用資格の検証を行う。
【0019】
証明補助情報の発行では、各手段はいずれの請求項の利用資格検証装置も以下の作用をする。
【0020】
第1の通信手段で、秘密情報保持手段を有するどの機器に対して、どのような権利を発行するかを識別するための情報を受信する。該権利を期間などで制限する使用制限記述がある場合には、このとき使用制限記述が併せて指定される。
【0021】
秘密情報管理手段は、機器を識別する情報から、該機器の秘密情報保持手段が保持する秘密情報を検索する。
【0022】
証明情報管理手段は、権利を識別する情報から、該権利に対応する証明情報を検索する。第1の一方向性関数計算手段は、少なくとも該秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。使用制限記述が存在する場合には、使用制限記述も含めて一方向性関数を適用する。
【0023】
証明補助情報計算手段は、該証明情報と、一方向性関数を適用した結果得られる値をもとに、証明補助情報を計算する。
【0024】
該証明補助情報は、第1の通信手段から送信され、該機器の通信手段へと伝達されて、該機器の証明補助情報管理手段に格納される。
【0025】
請求項1の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0026】
試験情報計算手段は、乱数を生成し、該乱数と証明情報保持手段が保持する権利の識別情報を併せて試験情報とする。
【0027】
該試験情報は、第2の通信手段から第3の通信手段へと伝達される。
証明補助情報管理手段は、該試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0028】
第3の一方向性関数計算手段は、秘密情報保持手段が保持する秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0029】
応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。第3の一方向性関数計算手段は、該証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用し、応答情報とする。
【0030】
第3の通信手段は、応答情報を第2の通信手段へ伝達する。
【0031】
第2の一方向性関数計算手段は、該証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0032】
応答情報検証部は、前記一方向性関数の適用結果と、該応答情報とを比較し、一致する場合に限り利用資格があるものと判定する。
【0033】
請求項2の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0034】
利用資格の検証に先立ち、第2の通信手段から権利の識別情報を入力するか、事前に定められた規則にしたがって計算することにより、どの権利を検証するかを決定する。
【0035】
試験情報計算手段は、乱数を生成し、該乱数と該権利の識別情報を併せて試験情報とする。
【0036】
該試験情報は、第2の通信手段から第3の通信手段へと伝達される。
第2の証明補助情報管理手段は、該試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0037】
第3の一方向性関数計算手段は、秘密情報保持手段が保持する秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0038】
応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。
【0039】
第3の一方向性関数計算手段は、該証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用し、応答情報とする。
【0040】
第3の通信手段は、応答情報を第2の通信手段へ伝達する。
【0041】
第2の一方向性関数計算手段は、秘密情報保持手段が保持する秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0042】
応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。
【0043】
第2の一方向性関数計算手段は、該証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0044】
応答情報検証部は、前記一方向性関数の適用結果と、該応答情報とを比較し、一致する場合に限り利用資格があるものと判定する。
【0045】
請求項3の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0046】
この利用資格検証装置は、請求項1ないし請求項2の利用資格検証装置と同様の手段を備える。
【0047】
応答情報の計算に用いる証明補助情報を管理する証明補助情報管理手段は、使用限記述を証明補助情報と併せて管理し、権利の識別情報から証明補助情報を検索する際、使用制限記述も同時に検索する。
【0048】
第3の一方向性関数計算手段は、該権利識別情報、該使用制限記述、および秘密情報保持手段が保持する秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0049】
応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。第3の一方向性関数計算手段は、該証明情報、該試験情報の乱数、および該使用制限記述に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。該使用制限記述とここで得られた値とを併せて、応答情報とする。
【0050】
応答情報検証手段は、証明情報、該試験情報の乱数、該応答情報の使用制限記述に対して第1の一方向性関数計算手段を適用した値と、該応答情報の使用制限記述以外の情報が一致し、かつ使用制限記述が所定の条件を満たす場合に限り利用資格があるものと判定する。(応答情報計算手段で使用制限記述が所定の条件を満たすか判定する方法もある。)
請求項4の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0051】
この利用資格検証装置は、請求項1ないし請求項3の利用資格検証装置と同様の手段を備える。
【0052】
応答情報検証手段で、利用資格があるものと判定された場合には、復号手段により証明情報あるいは証明情報から得られる値を前記復号手段の復号鍵として用い、情報を復号する。
【0053】
請求項5の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0054】
この利用資格検証装置は、請求項1ないし請求項4の利用資格検証装置と同様の手段を備える。
【0055】
証明情報保持手段あるいは第1の証明補助情報管理手段は、伝達情報を証明情報あるいは証明補助情報と併せて管理する。
【0056】
試験情報は、さらに該伝達情報を含む。
【0057】
利用資格検証時に前記伝達情報を履歴管理手段に格納する。
【0058】
請求項6の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0059】
第1の試験情報計算手段は、第1の乱数を生成し、少なくとも該乱数と証明情報保持手段が保持する権利の識別情報を併せて試験情報とする。
【0060】
該試験情報は、第2の通信手段から第3の通信手段へと伝達される。
【0061】
第2の試験情報計算手段は、第2の乱数を生成して、これを第2の試験情報とする。
【0062】
第3の通信手段は、第2の試験情報を第2の通信手段に伝達する。
第1の応答情報計算手段は、少なくとも第2の試験情報を第2の一方向性関数計算手段に入力し、ここで得られた値を含む情報を第1の応答情報とする。
【0063】
第1の応答情報は、第2の通信手段から第3の通信手段へと伝達される。
第3の一方向性関数計算手段は、秘密情報保持手段が保持する秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0064】
証明補助情報管理手段は、該試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0065】
第2の応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。次いで、第1の応答情報が、第2の試験情報と該証明情報を含む情報に対し、第3の一方向性関数計算手段を適用して得られる値を比較する。
【0066】
値が所定の関係を満たさなければ意味のない値を生成して第2の応答情報とし、所定の関係を満たせば、後述の内部状態の変更と応答情報の計算を行う。
【0067】
内部状態管理手段は、該権利識別情報に対応する内部状態を検索し、第1の試験情報もしくは第1の応答情報で伝達された情報に応じて、該内部状態を変更する。
【0068】
第3の一方向性関数計算手段は、該証明情報と、第1の試験情報に含まれる第1の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0069】
第2の応答情報計算手段は、この値を第2の応答情報とする。
【0070】
第3の通信手段は、応答情報を第2の通信手段へ伝達する。
【0071】
第2の一方向性関数計算手段は、該証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0072】
応答情報検証部は、前記一方向性関数の適用結果と、該応答情報とを比較し、一致する場合に限り利用資格があるものと判定する。
【0073】
請求項7の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0074】
利用資格の検証に先立ち、第2の通信手段から権利の識別情報を入力するか、事前に定められた規則にしたがって計算することにより、どの権利を検証するかを決定する。
【0075】
試験情報計算手段は、乱数を生成し、該乱数と該権利の識別情報を併せて試験情報とする。
【0076】
該試験情報は、第2の通信手段から第3の通信手段へと伝達される。
第1の証明補助情報管理手段は、該試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0077】
第1の試験情報計算手段は、第1の乱数を生成し、少なくとも該乱数と証明情報保持手段が保持する権利の識別情報を併せて試験情報とする。
該試験情報は、第2の通信手段から第3の通信手段へと伝達される。
第2の試験情報計算手段は、第2の乱数を生成して、これを第2の試験情報とする。
【0078】
第3の通信手段は、第2の試験情報を第2の通信手段に伝達する。
第2の一方向性関数計算手段は、秘密情報保持手段が保持する秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0079】
第1の応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。
【0080】
第1の応答情報計算手段は、少なくとも該証明情報と第2の試験情報を第2の一方向性関数計算手段に入力し、ここで得られた値を含む情報を第1の応答情報とする。
【0081】
第1の応答情報は、第2の通信手段から第3の通信手段へと伝達される。
第3の一方向性関数計算手段は、秘密情報保持手段が保持する秘密情報と該権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0082】
証明補助情報管理手段は、該試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0083】
第2の応答情報計算手段は、前記の一方向性関数の計算結果と該証明補助情報とを演算し、証明情報を求める。次いで、第1の応答情報が、第2の試験情報と該証明情報を含む情報に対し、第3の一方向性関数計算手段を適用して得られる値を比較する。
【0084】
値が所定の関係を満たさなければ意味のない値を生成して第2の応答情報とし、所定の関係を満たせば、後述の内部状態の変更と応答情報の計算を行う。
【0085】
内部状態管理手段は、該権利識別情報に対応する内部状態を検索し、第1の試験情報もしくは第1の応答情報で伝達された情報に応じて、該内部状態を変更する。
【0086】
第3の一方向性関数計算手段は、該証明情報と、第1の試験情報に含まれる第1の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0087】
第2の応答情報計算手段は、この値を第2の応答情報とする。
【0088】
第3の通信手段は、応答情報を第2の通信手段へ伝達する。
【0089】
第2の一方向性関数計算手段は、該証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0090】
応答情報検証部は、前記一方向性関数の適用結果と、該応答情報とを比較し、一致する場合に限り利用資格があるものと判定する。
【0091】
請求項10の利用資格検証装置での利用資格の検証における作用は、以下の通りである。
【0092】
この利用資格検証装置は、請求項6ないし請求項9の利用資格検証装置と同様の手段を備える。
【0093】
証明情報保持手段あるいは第1の証明補助情報管理手段は、伝達情報を証明情報あるいは証明補助情報と併せて管理する。
【0094】
第1の試験情報もしくは第1の応答情報は、さらに該伝達情報を含む。
【0095】
利用資格検証時に前記伝達情報を履歴管理手段に格納する。
【0096】
【発明の実施の態様】
以下に述べる実施例の利用資格検証装置は、いずれも証明補助情報発行器、検証器、証明器の3つの要素からなる。
【0097】
証明補助情報発行器は、利用資格の検証の過程で用いる証明補助情報を発行する。
【0098】
検証器と証明器は対話証明を行って、利用資格の有無を検証する。対話証明の過程では、公開鍵暗号系と比べて計算量がはるかに少ない、MD5やSHAなどの一方向性関数を用いる。以下の実施例では、一方向性関数として複数の引数を取るものを用いるが、各引数のビット列を連結することにより、MD5やSHAを用いることができる。
【0099】
なお、以下説明する利用者資格検証装置の実施例と請求項との対応関係は以下のとおりであり、各実施例を対応する図を参照して説明する。なお、図1〜図8は各実施例の構成を示しており、図9および図10は動作を示している。
【0100】
【表1】
第1の実施例 請求項1 図1
第2の実施例 請求項2 図2
第3の実施例 請求項3 図2
第4の実施例 請求項4 図3
第5の実施例 請求項5 図4、図9
第6の実施例 請求項6 図5
第7の実施例 請求項7 図6
第8の実施例 請求項8 図6
第9の実施例 請求項9 図7
第10の実施例 請求項10 図8、図10
【0101】
[第1の実施例]
以下、第1の実施例について説明する。この実施例は、一方向性関数を用いて基本的な対話認証を行なうものである。
【0102】
図1は、第1の実施例の構成を示しており、この図において、利用資格検証装置は、証明補助情報発行器10、検証器20および証明器30を含んでいる。証明補助情報発行器10は証明器20に証明補助情報を発行する。証明器30は、この証明補助情報を利用して検証器20との間で対話認証を行い。認証が成功すると例えばプログラム実行部40がプログラムを実行するようになっている。
【0103】
証明補助情報発行器10は、第1の通信部101、秘密情報管理部102、証明情報管理部103、第1の一方向性計算部104、証明補助情報計算部105を含んで構成されている。
【0104】
証明補助情報発行器10の処理の流れは図11に示されている。
【0105】
この証明補助情報発行器10は、証明器30からの要求に基づいて証明補助情報の発行を行なう。第1の通信部101は、証明器30から、証明装置30の識別情報や、どのような権利を発行するかを識別するための情報を受信する(図11のS11、S12)。秘密情報管理部102は、証明装置30を識別する情報から、証明装置30が保持する秘密情報を検索する(S13)。証明情報管理部103は、権利を識別する情報から、該権利に対応する証明情報(K)を検索する。第1の一方向性関数計算部104は、少なくとも秘密情報と権利識別情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。証明補助情報計算部105は、証明情報と、一方向性関数を適用した結果得られる値をもとに、証明補助情報を計算する(S14)。この証明補助情報は、第1の通信部101から証明器30に送信される(S15)。
【0106】
検証器20は、証明情報保持部201、試験情報計算部202、第2の一方向性関数計算部203、応答情報検証器204および第2の通信部205を含んで構成されている。
【0107】
検証器20は、証明器30に試験情報を送り、証明器30から返される証明情報を検証して証明装置との間で対話認証を行なう。
【0108】
検証器20の処理の流れは図12に示されている。
【0109】
証明情報保持部201は、権利の識別情報を保持している。試験情報計算部202は、乱数を生成し、乱数と証明情報保持部201が保持する権利の識別情報とを併せて試験情報とする(図12のS21)。この試験情報は、第2の通信部205から証明器30の第3の通信部305へと伝達される(S22)。また第2の通信部205は証明器30から返される応答情報を受信する(S23)。第2の一方向性関数計算部203は、証明情報と該試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。応答情報検証器204は、一方向性関数の適用結果と、応答情報とを比較し、一致する場合に限り利用資格があるものと判定する(S24、S25)。
【0110】
証明器30は、秘密情報保持部301、証明補助情報管理部302、応答情報計算部303、第3の一方向性関数計算部304および第3の通信部305を含んで構成されている。
【0111】
証明器30は、検証器20から送られてくる試験情報に対して所定の計算を施して応答情報を生成し、検証器20に返す。
【0112】
証明器30の処理の流れは図13に示されている。
【0113】
試験情報は、第2の通信部205から第3の通信部305へと伝達される(S31)。
【0114】
秘密情報保持部301は、証明器30に固有の秘密情報を保持している。証明補助情報管理部302は、試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する(S32)。証明補助情報は予め証明補助情報発行器10から入手している。第3の一方向性関数計算部304は、秘密情報保持部301が保持する秘密情報と試験情報に含まれる権利識別情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する(S33)。応答情報計算部303は、一方向性関数の計算結果と証明補助情報とを演算し、証明情報を求める。さらに第3の一方向性関数計算部304は、証明情報と試験情報に含まれる乱数とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用し、応答情報とする。この応答情報は第3の通信部305を介して検証器20の第2の通信部205に送られる(S34、S35)。
【0115】
以下、第1の実施例の認証のプロトコルについて詳細に説明する。
【0116】
第1の実施例では、証明補助情報tを以下のように定める。
【0117】
【数1】
t=K−f(d,n)
ここで、Kは証明情報、fは一方向性関数、dは秘密情報、nは検証すべき権利を識別する情報である。 検証器20から証明器30に送る試験情報Cは、rを乱数として、
【0118】
【数2】
C=(n,r)である。
【0119】
証明器30は、以下の計算により応答情報Rを求める。
【0120】
【数3】
R=f(t+f(d,n),r)
証明器30が、正しい証明補助情報tを保持している場合には、
【0121】
【数4】
t+f(d,n)=K−f(d,n)+f(d,n)=K
となって、証明情報Kを復元でき、
【0122】
【数5】
R=f(K,r)
となる。
【0123】
検証器20はf(K,r)を求めて応答情報Rと比較し、両者が等しい場合に限り、証明器が利用資格を有するものと判定する。
【0124】
[第2の実施例]
つぎに第2の実施例について説明する。この実施例は、認証対象の権利が複数あり、どの権利について認証するかを予め決めるようになっている。どの権利を認証するかは、権利の識別情報を入力したり、予め定められた規則で計算を行なって決定する。一方向性関数を用いる認証手法の基本は第1の実施例と同様である。
【0125】
図2は第2の実施例の構成を示しており、この図において、図1と対応する箇所には対応する符号を付した。
【0126】
この実施例の証明補助情報発行器10は、検証器10および証明器20の要求にそれぞれ応答して対応する証明補助情報を発行する。
【0127】
検証器20は、第1の秘密情報保持部206および第1の証明補助情報管理部207を有している。証明器30は、第2の秘密情報保持部306および第2の証明補助情報管理部307を有している。
【0128】
まず、利用資格の検証に先立ち、第2の通信部205を介して権利の識別情報が入力され、どの権利を検証するかが決定される。この決定は、事前に定められた規則にしたがって計算することにより、行なってもよい。
【0129】
試験情報計算部202は、乱数を生成し、乱数と権利の識別情報を併せて試験情報とする。この試験情報は、第2の通信部205から証明器30の第3の通信部305へと伝達される。
【0130】
証明器30の第2の証明補助情報管理部307は、試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。そして第3の一方向性関数計算部304は、第2の秘密情報保持部306が保持する秘密情報と権利識別情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。さらに、応答情報計算部303は、一方向性関数の計算結果と証明補助情報とを演算し、証明情報を求める。第3の一方向性関数計算部304は、さらに、証明情報と該試験情報の乱数とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用し、応答情報とする。この応答情報は第3の通信部305および第2の通信部205を介して検証器20に送られる。
【0131】
検証器20の第2の一方向性関数計算部203は、第1の秘密情報保持部206が保持する秘密情報と権利識別情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。そして一方向性関数の計算結果と証明補助情報とに対して所定の演算が行なわれ、証明情報が求められる。第2の一方向性関数計算部203は、さらに証明情報と試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。応答情報検証器204は、一方向性関数の適用結果と、応答情報とを比較し、一致する場合に限り利用資格があるものと判定する。
【0132】
つぎに、第2の実施例の認証プロトコルについて詳細に説明する。
【0133】
第2の実施例では、検証器の証明補助情報tvと証明器の証明補助情報tpを以下のように定める。
【0134】
【数6】
tv=K−f(dv,n)
tp=K−f(dp,n)
ここで、Kは証明情報、fは一方向性関数、dvは検証器20の秘密情報、dpは証明器30の秘密情報、nは検証すべき権利を識別する情報である。
【0135】
検証器20から証明器30に送る試験情報Cは、rを乱数として、
【0136】
【数7】
C=(n,r)
である。
【0137】
証明器30は、以下の計算により応答情報Rを求める。
【0138】
【数8】
R=f(tp+f(dp,n),r)
証明器30が、正しい証明補助情報tpを保持している場合には、
【0139】
【数9】
tp+f(dp,n)=K−f(dp,n)+f(dp,n)=K
となって、証明情報Kを復元でき、
【0140】
【数10】
R=f(K,r)
となる。
【0141】
検証器20は、tv+f(dv,n)を計算しKを求める。次いでf(K,r)を求めてRと比較し、両者が等しい場合に限り、証明器が利用資格を有するものと判定する。
【0142】
[第3の実施例]
つぎに第3の実施例について説明する。この実施例は、第2の実施例においてさらに利用制限を導入するものである。
【0143】
第3の実施例の構成自体は第2の実施例と同様であり、図2に示すとおりである。
【0144】
以下、第3の実施例の認証プロトコルについて説明する。
【0145】
第3の実施例では、検証器20の証明補助情報tvと証明器30の証明補助情報tpを以下のように定める。
【0146】
【数11】
tv=K−f(dv,n)
tp=K−f(dp,n,L)
ここで、Kは証明情報、fは一方向性関数、dvは検証器20の秘密情報、dpは証明器30の秘密情報、nは検証すべき権利を識別する情報、Lは使用制限記述である。使用制限記述Lは、たとえば使用期限を表すビット列である。
【0147】
検証器20から証明器30に送る試験情報Cは、rを乱数として、
【0148】
【数12】
C=(n,r)
である。
【0149】
証明器30は、以下の計算により応答情報Rを求める。
【0150】
【数13】
R=(L,f(tp+f(dp,n,L),r,L))
証明器30が、正しい証明補助情報tpを保持している場合には、
【0151】
【数14】
tp+f(dp,n,L)=K−f(dp,n,L)+f(dp,n,L)=K
となって、証明情報Kを復元でき、
【0152】
【数15】
R=(L,f(K,r,L))
となる。
【0153】
検証器20は、tv+f(dv,n)を計算しKを求める。次いでf(K,r)を求めてRと比較し、両者が等く、かつ使用制限記述Lが使用条件を満たす場合に限り、証明器30が利用資格を有するものと判定する。
【0154】
ここでは使用制限記述Lが使用条件を満たすか否かの判定を検証器20で行うものとしたが、証明器30で行うようにしてもよい。このときには、使用制限記述Lを応答情報に含めなくともよい。
【0155】
[第4の実施例]
つぎに第4の実施例について説明する。この実施例は、証明情報Kまたは証明情報から導出した値を鍵として暗号化された情報を復号するものである。
【0156】
図3は、第4の実施例の構成を示しており、この図において図2と対応する箇所には対応する符号を付した。この実施例では、検証器20に復号部208が付加されている。
【0157】
第4の実施例で扱う情報および検証手順は第3の実施例と同じである。検証器20の復号部208が、証明器30が利用資格を有すると判定された場合に、証明情報KあるいはKを用いて計算可能な値を鍵として用い、暗号化された情報を復号する。
【0158】
[第5の実施例]
つぎに第5の実施例について説明する。この実施例は利用履歴を管理できるようにしたものである。
【0159】
図4は、第5の実施例の構成を示しており、この図において、図3と対応する箇所には対応する符号を付した。図4においては、証明器30に履歴管理部308を設けている。
【0160】
以下、第5の実施例の認証プロトコルについて説明する。
【0161】
この認証手順は図9にも示す。第1〜第4の実施例の各動作は第5の実施例に含まれているので第1〜第4の実施例の動作も図9から理解できる。
【0162】
以下、第5の実施例の認証プロトコルについて詳細に説明する。
【0163】
第5の実施例では、検証器20の証明補助情報tvと証明器30の証明補助情報tpを以下のように定める。
【0164】
【数16】
tv=K−f(dv,n)
tp=K−f(dp,n,L)
ここで、Kは証明情報、fは一方向性関数、dvは検証器20の秘密情報、dpは証明器30の秘密情報、nは検証すべき権利を識別する情報、Lは使用制限記述である。使用制限記述Lは、たとえば使用期限を表すビット列である。
【0165】
検証器20は、tv+f(dv,n)を計算しKを求める。
【0166】
検証器20から証明器30に送る試験情報Cは、rを乱数として、
【0167】
【数17】
C=(n,I,r,s)
である。ここで、Iは検証器20から証明器30に伝達する情報、sは
【0168】
【数18】
s=f(K,I,r)
なる値である。 証明器30は、以下の計算によりK’を求める。
【0169】
【数19】
K’=tp+f(dp,n,L)
次いでf(K’,I,r)を計算し、sと比較する。sが一致した場合に限り、Iを含む情報を履歴管理部308に格納する。
【0170】
証明器30は、さらに、応答情報Rを求める。
【0171】
【数20】
R=(L,f(tp+f(dp,n,L),r,L))
証明器30が、正しい証明補助情報tpを保持している場合には、
【0172】
【数21】
tp+f(dp,n,L)=K−f(dp,n,L)+f(dp,n,L)=K
となって、証明情報Kを復元でき、
【0173】
【数22】
R=(L,f(K,r,L))
となる。
【0174】
次いでf(K,r)を求めてRと比較し、両者が等く、かつLが使用条件を満たす場合に限り、証明器が利用資格を有するものと判定する。
【0175】
ここでは、使用制限記述Lが使用条件を満たすか否かの判定を検証器20で行うものとしたが、証明器30で行うようにしてもよい。
【0176】
[第6の実施例]
つぎに第6の実施例について説明する。第6の実施例は相互認証を行なって証明器30の内部状態を変更できるようにしたものである。
【0177】
図5は、第6の実施例の構成を示しており、この図において、図1と対応する箇所には対応する符号を付した。図5においては、検証器20に第1の試験情報計算部209、第1の応答情報計算部210および第1の応答情報検証器211を設け、証明器30に第2の試験情報計算部309、第2の応答情報計算部310、第2の応答情報検証器311および内部状態管理部312を設けている。
【0178】
この実施例では、対話認証の過程で、お互いが認証を行い、検証器20は復号等を行い、証明器30は、復号等に対応する内部状態の変更を行なう。
【0179】
この実施例の検証器20および証明器30の処理の流れはそれぞれ図14および図15に示されている。
【0180】
検証器20の第1の試験情報計算部209は、第1の乱数を生成し、少なくとも第1の乱数と証明情報保持部201が保持する権利の識別情報とを併せて試験情報とする(図14のS41)。この試験情報は、第2の通信部205から証明器30の第3の通信部305へと伝達される(S42、図15のS51)。
【0181】
他方、第2の試験情報計算部309は、第2の乱数を生成して、これを第2の試験情報とし、第3の通信部305を介して検証器20(第2の通信部205)へ送信する(S52、S43)。
【0182】
検証器20の第1の応答情報計算部210は、少なくとも第2の試験情報と、検証器20から証明器30に伝達した情報とを第2の一方向性関数計算部203に入力し、ここで得られた値と、伝達したい情報そのものとを含むように第1の応答情報を生成する。この第1の応答情報は、第2の通信部205から証明器30の第3の通信部305へと伝達される(S44、S53)。
【0183】
証明器30の第3の一方向性関数計算部304は、秘密情報保持部301が保持する秘密情報と権利識別情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0184】
証明補助情報管理部302は、試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する(S54)。
【0185】
第2の応答情報計算部310は、一方向性関数の計算結果と証明補助情報とを演算し、証明情報を求める。次いで、第2の試験情報と、証明情報を含む情報に対し、第3の一方向性関数計算部304を適用し、この結果得られた値と第1の応答情報(その一部)とを照合する(S55、S56)。値が所定の関係を満たさなければ意味のない値を生成して第2の応答情報とし、所定の関係を満たせば、後述の内部状態の変更と応答情報の計算を行う。
【0186】
内部状態管理部312は、権利識別情報に対応する内部状態を検索し、第1の試験情報もしくは第1の応答情報で伝達された情報に応じて、内部状態を変更する。
【0187】
第3の一方向性関数計算部304は、証明情報と、第1の試験情報に含まれる第1の乱数とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用し、第2の応答情報計算部311は、この値を第2の応答情報とする。第3の通信部305は、第2の応答情報を第2の検証器20の通信部205へ伝達する(S57、S58、S45))。
【0188】
検証器20の第2の一方向性関数計算部203は、証明情報と試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。第1の応答情報検証器211は、一方向性関数の適用結果と、第2の応答情報とを比較し、一致する場合に限り利用資格があるものと判定する(S46、S47)。
【0189】
以下、第6の実施例の認証のプロトコルについて説明する。
【0190】
第6の実施例では、証明補助情報tを以下のように定める。
【0191】
【数23】
t=K−f(d,n)
ここで、Kは証明情報、fは一方向性関数、dは秘密情報、nは検証すべき権利を識別する情報である。
【0192】
検証器20から証明器30に送る第1の試験情報C1は、r1を乱数として、
【0193】
【数24】
C1=(n,r1)
である。
【0194】
証明器30は、検証器20へ第2の試験情報C2を送る。
【0195】
【数25】
C2=r2
ここで、r2は乱数である。
【0196】
検証器20は、第1の応答情報R1を証明器30へ送る。
【0197】
【数26】
R1=(m,f(K,r2,m))
ここで、mは検証器20から証明器30へと伝達する情報である。mは、たとえば、利用の都度課金される額である。
【0198】
証明器30は、以下の計算によりK’を求める。
【0199】
【数27】
K’=t+f(d,n)
証明補助情報が正しい場合には、K’は証明情報Kと一致する。
【0200】
証明器30はf(K’,r2,m)を計算して、R1の第2項と比較する。両者が等しい場合には、検証器20から伝達された情報mにしたがい、検証すべき権利に対応する内部状態を変更する。たとえば、mが利用の都度課金される額であれば、プリペイドの額を相応分だけ減じる。
【0201】
次いで、証明器30は第2の応答情報R2を求める。
【0202】
【数28】
R2=f(K’,r1)
証明器が正しい証明補助情報を保持している場合には、K’は証明情報Kに一致し、
【0203】
【数29】
R2=f(K,r1)
となる。
【0204】
検証器20はf(K,r1)を求めてR2と比較し、両者が等しい場合に限り、証明器30が利用資格を有するものと判定する。
【0205】
[第7の実施例]
つぎに第7の実施例について説明する。この実施例は、認証対象の権利が複数あり、どの権利について認証するかを予め決めるようになっている。どの権利を認証するかは、権利の識別情報を入力したり、予め定められた規則で計算を行なって決定する。他の構成は第6の実施例と同様である。
【0206】
この実施例の検証器20は、第6の実施例(図5)の構成に加え、第1の秘密情報保持部206および第1の証明補助情報管理部207を設けている。また、証明器30は、第2の秘密情報保持部306(図5の秘密情報保持部301)および第2の証明補助情報管理部307(図5の秘密情報保持部302)を有している。図6において、図5と対応する箇所には対応する符号を付した。
【0207】
この実施例の証明補助情報発行器10は、検証器10および証明器20の要求にそれぞれ応答して対応する証明補助情報を発行する。
【0208】
利用資格の検証に先立ち、第2の通信部205から権利の識別情報を入力するか、事前に定められた規則にしたがって計算することにより、どの権利を検証するかを決定する。
【0209】
検証器20の第1の証明補助情報管理部207は、試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0210】
第1の試験情報計算部209は、第1の乱数を生成し、少なくとも乱数と権利の識別情報とを併せて試験情報とする。この試験情報は、第2の通信部205から証明器30の第3の通信部305へと伝達される。
【0211】
証明器30の第2の試験情報計算部309は、第2の乱数を生成して、これを第2の試験情報とする。第3の通信部305は、第2の試験情報を検証器20の第2の通信部205に伝達する。
【0212】
検証器20の第2の一方向性関数計算部203は、秘密情報保持部206が保持する秘密情報と権利識別情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0213】
第1の応答情報計算部210は、一方向性関数の計算結果と証明補助情報とを演算し、証明情報を求める。第1の応答情報計算部210は、少なくとも第2の試験情報と検証器20から証明器30に伝達した情報とを第2の一方向性関数計算部に入力し、ここで得られた値と、伝達した情報そのものとように第1の応答情報を生成する。この第1の応答情報は、第2の通信部205から第3の通信部305へと伝達される。
【0214】
証明器30の第3の一方向性関数計算部304は、第2の秘密情報保持部206が保持する秘密情報と権利識別情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0215】
第2の証明補助情報管理部307は、試験情報に含まれる権利の識別情報に対応する証明補助情報を検索する。
【0216】
第2の応答情報計算部310は、一方向性関数の計算結果と証明補助情報とを演算し、証明情報を求める。次いで、第1の応答情報が、第2の試験情報と証明情報とを含む情報に対し、第3の一方向性関数計算部を適用して得られる値と、第1の応答情報(その一部)とを照合する。値が所定の関係を満たさなければ意味のない値を生成して第2の応答情報とし、所定の関係を満たせば、後述の内部状態の変更と応答情報の計算を行う。
【0217】
内部状態管理部312は、権利識別情報に対応する内部状態を検索し、第1の試験情報もしくは第1の応答情報で伝達された情報に応じて、内部状態を変更する。
【0218】
第3の一方向性関数計算部304は、証明情報と、第1の試験情報に含まれる第1の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用し、第2の応答情報計算部310は、この値を第2の応答情報とする。第3の通信部305は、応答情報を第2の通信部205へ伝達する。
【0219】
検証器20の第2の一方向性関数計算部203は、証明情報と試験情報の乱数に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する。
【0220】
第1の応答情報検証器211は、一方向性関数の適用結果と、第2の応答情報とを比較し、一致する場合に限り利用資格があるものと判定する。
【0221】
以下、第7の実施例の認証プロトコルについて説明する。
【0222】
第7の実施例では、検証器の証明補助情報tvと証明器の証明補助情報tpを以下のように定める。
【0223】
【数30】
tv=K−f(dv,n)
tp=K−f(dp,n)
ここで、Kは証明情報、fは一方向性関数、dvは検証器の秘密情報、dpは証明器の秘密情報、nは検証すべき権利を識別する情報である。
【0224】
検証器20から証明器30に送る第1の試験情報C1は、r1を乱数として、
【0225】
【数31】
C1=(n,r1)
である。
【0226】
30証明器は、第2の試験情報C2を検証器20へ送る。
【0227】
【数32】
C2=r2
ここで、r2は乱数である。
【0228】
検証器20は、tv+f(dv,n)を計算しKを求める。次いで、以下の計算により第1の応答情報R1を求める。
【0229】
【数33】
R1=(m,f(K,r2,m))
ここで、mは検証器20から証明器30へと伝達する情報である。
【0230】
証明器30は、以下の計算によりK’を求める。
【0231】
【数34】
K’=tp+f(dp,n)
証明補助情報tpが正しい場合には、K’は証明情報Kと一致する。
【0232】
証明器30はf(K’,r2,m)を計算して、R1の第2項と比較する。両者が等しい場合には、検証器20から伝達された情報mにしたがい、検証すべき権利に対応する内部状態を変更する。たとえば、mが利用の都度課金される額であれば、プリペイドの額を相応分だけ減じる。
【0233】
次いで、証明器30は第2の応答情報R2を求める。
【0234】
【数35】
R2=f(K’,r1)
証明器が正しい証明補助情報tpを保持している場合には、K’は証明情報Kに一致し、
【0235】
【数36】
R2=f(K,r)
となる。
【0236】
検証器20はf(K,r)を求めてR2と比較し、両者が等しい場合に限り、証明器30が利用資格を有するものと判定する。
[第8の実施例]
つぎに第8の実施例について説明する。第8の実施例は、第7の実施例において利用制限情報を導入したものである。第8の実施例の構成は第7の実施例と同様に図6に示すように構成される。
【0237】
以下、第8の実施例の認証プロトコルについて説明する。
【0238】
第8の実施例では、検証器20の証明補助情報tvと証明器30の証明補助情報tpを以下のように定める。
【0239】
【数37】
tv=K−f(dv,n)
tp=K−f(dp,n,L)
ここで、Kは証明情報、fは一方向性関数、dvは検証器20の秘密情報、dpは証明器30の秘密情報、nは検証すべき権利を識別する情報、Lは使用制限記述である。
【0240】
検証器20から証明器30に送る第1の試験情報C1は、r1を乱数として、
【0241】
【数38】
C1=(n,r1)
である。
【0242】
証明器30から検証器20に送る第2の試験情報C2は、r2を乱数として、
【0243】
【数39】
C2=r2
である。
【0244】
検証器20は、tv+f(dv,n)を計算しKを求める。次いで、以下の計算により第1の応答情報R1を求める。
【0245】
【数40】
R1=(m,f(K,r2,m))
ここで、mは検証器20から証明器30へと伝達する情報である。
【0246】
証明器30は、以下の計算によりK’を求める。
【0247】
【数41】
K’=tp+f(dp,n)
証明補助情報tpが正しい場合には、K’は証明情報Kと一致する。
【0248】
証明器はf(K’,r2,m)を計算して、R1の第2項と比較する。両者が等しい場合には、検証器20から伝達された情報mにしたがい、検証すべき権利に対応する内部状態を変更する。 次いで、証明器30は第2の応答情報R2を求める。
【0249】
【数42】
R2=(L,f(tp+f(dp,n,L),r,L))
証明器30が正しい証明補助情報tpを保持している場合には、K’は証明情報Kに一致し、
【0250】
【数43】
R2=(L,f(K,r,L))
となる。
【0251】
検証器20は、tv+f(dv,n)を計算しKを求める。次いでf(K,r)を求めてR2の第2項と比較し、両者が等く、かつ使用制限記述Lが使用条件を満たす場合に限り、証明器30が利用資格を有するものと判定する。
【0252】
ここでは使用制限記述Lが使用条件を満たすか否かの判定を検証器20で行うものとしたが、証明器30で行うようにしてもよい。
【0253】
[第9の実施例]
第9の実施例は、第8の実施例において検証器20に復号部208を設けたものである。図7は第9の実施例の構成を示しており、この図において図6と対応する箇所には対応する符号を付した。
【0254】
第9の実施例では、扱う情報および検証手順は第8の実施例と同じである。証明器が利用資格を有すると判定した場合には、復号部208が、証明情報KあるいはKを用いて計算可能な値を鍵として用い、暗号化された情報を復号する。
【0255】
[第10の実施例]
つぎに第10の実施例について説明する。この実施例は利用履歴を管理できるようにしたものである。
【0256】
図8は、第10の実施例の構成を示しており、この図において、図7と対応する箇所には対応する符号を付した。図8においては、証明器30に履歴管理部308を設けている。
【0257】
以下、第10の実施例の認証プロトコルについて説明する。
【0258】
この認証手順は図10にも示す。第5〜第9の実施例の各動作は第10の実施例に含まれているので第5〜第9の実施例の動作も図10から理解できる。
【0259】
第10の実施例では、検証器の証明補助情報tvと証明器の証明補助情報tpを以下のように定める。
【0260】
【数44】
tv=K−f(dv,n)
tp=K−f(dp,n,L)
ここで、Kは証明情報、fは一方向性関数、dvは検証器20の秘密情報、dpは証明器30の秘密情報、nは検証すべき権利を識別する情報、Lは使用制限記述である。使用制限記述Lは、たとえば使用期限を表すビット列である。
【0261】
検証器20は、tv+f(dv,n)を計算しKを求める。
【0262】
検証器20から証明器30に送る第1の試験情報C1は、r1を乱数として、
【0263】
【数45】
C1=(n,I,r,s)
である。ここで、Iは検証器から証明器に伝達する情報、sは
【0264】
【数46】
s=f(K,I,r)
なる値である。
【0265】
証明器30は、以下の計算によりK’を求める。
【0266】
【数47】
K’=tp+f(dp,n,L)
次いで証明器30は、f(K’,I,r)を計算し、sと比較する。sが一致した場合に限り、Iを含む情報を履歴保持部308に格納する。
【0267】
証明器30は、第2の試験情報C2を検証器に送る。
【0268】
【数48】
C2=r2
ここで、r2は乱数である。
【0269】
検証器20は、tv+f(dv,n)を計算しKを求める。次いで、以下の計算により第1の応答情報R1を求める。
【数49】
R1=(m,f(K,r2,m))
ここで、mは検証器から証明器へと伝達する情報である。
証明器は、以下の計算によりK’を求める。
【0270】
【数50】
K’=tp+f(dp,n)
証明補助情報tpが正しい場合には、K’は証明情報Kと一致する。
【0271】
証明器30はf(K’,r2,m)を計算して、R1の第2項と比較する。両者が等しい場合には、検証器20から伝達された情報mにしたがい、検証すべき権利に対応する内部状態を変更する。
【0272】
次いで、証明器30は第2の応答情報R2を求める。
【0273】
【数51】
R2=(L,f(tp+f(dp,n,L),r,L))
証明器30が、正しい証明補助情報tpを保持している場合には、
【0274】
【数52】
tp+f(dp,n,L)=K−f(dp,n,L)+f(dp,n,L)=K
となって、証明情報Kを復元でき、
【0275】
【数53】
R2=(L,f(K,r,L))
となる。
【0276】
検証器20は、f(K,r)を求めてR2と比較する。両者が等く、かつLが使用条件を満たす場合に限り、証明器30が利用資格を有するものと判定する。
【0277】
ここでは、使用制限記述Lが使用条件を満たすか否かの判定を検証器20で行うものとしたが、証明器30で行うようにしてもよい。
【0278】
以上の実施例では、一方向性関数としてMD5やSHAを例として挙げたが、代わりにDESなどの慣用暗号系を用いてもよい。
【0279】
以上の本実施例では、検証器の認証と、証明器が権利を有することの証明に使う情報を同一の証明情報としたが、それぞれについて別個の証明情報を用いることとし、証明情報保持部、秘密情報保持部、証明補助情報管理部で適切な情報を扱うようにしてもよい。
【0280】
以上の実施例では、耐タンパー性のあるハードウェアを用いることはとくに前提にしていないが、証明情報保持部、秘密情報保持部、および一方向性関数計算部を耐タンパー性のあるハードウェアで保護することにより、不正の危険を低減することができる。
【0281】
以上の実施例では、ソフトウェアの実行の可否の制御のために本発明の利用資格検証装置を用いたが、証明補助情報を、実世界で提供されている種々のサービスで通常用いられているチケット(切符)として用いることが可能である。
【0282】
以上の実施例では、証明補助情報として、一方向性関数用いて得た値を証明情報から減じた結果を用いたが、ビット毎の排他的論理和など、逆算が可能な演算の組み合わせを証明情報に適用した結果であればよい。
【0283】
[適用例]
つぎに、実施例の具体的な適用例について説明する。なお、以下では、証明補助情報のことをチケットと呼ぶ。
【0284】
まず、ソフトウエアのアクセス制御に用いる場合について説明する。
【0285】
図16は、ソフトウェアのアクセス制御をネットワーク上で行う例を示している。なお、図16において図1と対応する箇所には対応する符号を付した。図16において、利用者計算機1000とチケット発行計算機2000とがネットワーク3000で接続されている。ネットワーク3000はWANでもLANでもよい。利用者計算機1000はハードウェア1001に所定のオペレーティングシステム1002がインストールされ、このオペレーティングシステム1002上でアプリケーションプログラム1003および証明プログラム30が動作する。アプリケーションプログラム1003には検証プログラム20が埋め込まれている。アプリケーションプログラム1003は記録媒体の形態で提供されてもよいし、オンラインで提供されていもよい。証明プログラム30の一部は利用者計算機1000に実装された耐タンパー装置上で実行されることが好ましい。
【0286】
チケット発行計算機2000もハードウェア2001およびオペレーティングシステム2002を有し、チケット発行サーバ30が動作するようになっている。
【0287】
ユーザは、アプリケーション1003を利用したい場合には、証明用補助情報(チケット)の発行をチケット発行サーバに要求する。この要求は、ユーザの識別番号とアプリケーションの識別番号とを伴う。チケット発行サーバ10は、ユーザの識別番号およびアプリケーションの識別番号に基づいてそれぞれユーザの秘密情報および公開鍵の法数および証明情報を取り出す。そして証明補助情報を計算して利用計算機1000の証明プログラム20に渡す。
【0288】
以降、証明プログラム30と検証プログラム20とが試験情報Cおよび応答情報Rをやり取りして認証を行い、認証が成功したならばアプリケーションプログラムが利用可能になる。
【0289】
ソフトウェア(アプリケーション1003)の保護の手法としてはソフトウェアの少なくとも一部を暗号鍵で暗号しておくことが考えられる。ソフトウェアの暗号鍵をKとし、乱数をrとする。安全のためには、鍵Kそのものがソフトウェアに含まれないことが望ましい。鍵Kそのものはソフトウェアに含まれない場合、暗号化されたソフトウェアの一部を復号し、所定の条件を満たすかどうか検査すればよい。
【0290】
つぎに実施例を改札装置の制御に用いる例を説明する。図17は本実施例が適用された改札システムを示しており、この図において、ICカード4000には証明器30を実現するプログラムがインストールされている。チケット発行端末5000はICカードが着脱可能なものであり、チケット発行サーバ30と通信してICカード4000に証明補助情報(チケット)を書き込む。ユーザは入場するときにICカード4000を入場ゲート6000に提示し(例えばスロットに挿入して)、この間、入場ゲート6000の検証装置10とICカード4000の証明装置20とが相互に通信して認証を行う。認証が成功すればユーザは入場ゲート6000を通過することが可能になる。
【0291】
【発明の効果】
一般に公開鍵暗号系と比較して、ハッシュは数千倍高速である。Bruce Schneier,Applied Cryptography(SecondEdition),Wiley,1996によれば、128ビットのダイジェストを計算するMD5アルゴリズムを米国インテル社製のプロセッサ(33MHzの486SX、商標)で実行したとき、毎秒174MB符号化できる。前述のように、同書によれば、法数1024ビット・公開鍵8ビットのRSA暗号系をSPARC2で実行する時間は、署名が0.97秒、検証が0.08秒かかっている。したがって、認証機構を公開鍵暗号系からハッシュに変更することにより、計算量を数千分の1に削減し、実行速度を向上させることが可能である。
【0292】
以上のように、本発明の利用資格検証装置によれば、ソフトウェアのアクセス制御を効率よく実行できる。さらに、検証器側に証明補助情報を使用することにより、アーケードゲームや各種サービスを実行できるハードウェアを制限でき、ハードに対するライセンス料の徴収やフランチャイズ制を実現可能である。
【図面の簡単な説明】
【図1】 この発明の第1の実施例の構成を示すブロック図である。
【図2】 この発明の第2の実施例および第3の実施例の構成を示すブロック図である。
【図3】 この発明の第4の実施例の構成を示すブロック図である。
【図4】 この発明の第5の実施例の構成を示すブロック図である。
【図5】 この発明の第6の実施例の構成を示すブロック図である。
【図6】 この発明の第7の実施例および第8の実施例の構成を示すブロック図である。
【図7】 この発明の第9の実施例の構成を示すブロック図である。
【図8】 この発明の第10の実施例の構成を示すブロック図である。
【図9】 この発明の第5の実施例の全体の動作を説明する図である。
【図10】 この発明の第10の実施例の全体の動作を説明する図である。
【図11】 この発明の第1の実施例の証明補助情報発行器の動作を説明するフローチャートである。
【図12】 この発明の第1の実施例の検証器の動作を説明するフローチャートである。
【図13】 この発明の第1の実施例の証明器の動作を説明するフローチャートである。
【図14】 この発明の第6の実施例の検証器の動作を説明するフローチャートである。
【図15】 この発明の第1の実施例の証明器の動作を説明するフローチャートである。
【図16】 この発明の実施例の第1の適用例を示すブロック図である。
【図17】 この発明の実施例の第2の適用例を示すブロック図である。
【符号の説明】
10 証明補助情報発行器
20 検証器
30 証明器
101 第1の通信部
102 秘密情報管理部
103 証明情報管理部
104 第1の一方向性計算部
105 証明補助情報計算部
201 証明情報保持部
202 試験情報計算部
203 第2の一方向性関数計算部
204 応答情報検証器
205 第2の通信部
206 第1の秘密情報保持部
207 第1の証明補助情報管理部
208 復号部
209 第1の試験情報計算部
210 第1の応答情報計算部
211 第1の応答情報検証部
301 秘密情報保持部
302 証明補助情報管理部
303 応答情報計算部
304 第3の一方向性関数計算部
305 第3の通信部
306 第2の秘密情報保持部
307 第2の証明補助情報管理部
308 履歴管理部
309 第2の試験情報計算部
310 第2の応答情報計算部
311 第2の応答情報検証部
312 内部状態管理部

Claims (15)

  1. 証明補助情報発行部(10)、検証部(20)および証明部(30)を含み、利用資格を検証する利用資格検証装置において、
    前記証明補助情報発行部(10)は、
    利用資格の認証の際に用いる証明情報(K)を管理する証明情報管理手段(103)と、
    秘密情報(d)を管理する秘密情報管理手段(102)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を少なくとも前記秘密情報管理手段(102)が管理する秘密情報に対し適用する第1の一方向性関数計算手段(104)と、
    前記証明情報管理手段(103)が管理する証明情報と、前記第1の一方向性関数計算手段の計算結果をもとに証明補助情報(t)を計算する証明補助情報計算手段(105)と、
    証明補助情報の計算の過程で情報を送受信する第1の通信手段(101)とを有し、
    前記検証部(20)は、
    証明情報(K)を保持する証明情報保持手段(201)と、
    試験情報(r)を計算する試験情報計算手段(202)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)と、
    (i)前記第2の一方向性計算手段(203)を、前記証明情報保持手段(201)が保持する証明情報と、試験情報とに対し作用させた結果と、(ii)前記証明部(30)から送られてきた応答情報とが等しいか検査する応答情報検証手段(204)と、
    利用資格の認証の過程で情報を送受信する第2の通信手段(205)とを有し、
    前記証明部(30)は、
    秘密情報(d)を保持する秘密情報保持手段(301)と、
    応答情報の計算に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報(t)を管理する証明補助情報管理手段(302)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段304)と、
    (i)前記第3の一方向性関数計算手段(304)を少なくとも前記秘密情報保持手段(301)が保持する秘密情報に作用させた結果と、前記証明補助情報管理手段(302)が管理する証明補助情報とをもとに得られる値と、(ii)試験情報とに、さらに前記第3の一方向性関数計算手段(304)を作用させて応答情報を計算する応答情報計算手段(303)と、
    利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信手段(305)とを有し、前記検証部(20)は、前記応答情報検証手段(204)の検証結果に基づいて利用資格を検証することを特徴とする利用資格検証装置。
  2. 証明補助情報発行部(10)、検証部(20)および証明部(30)を含み、利用資格を検証する利用資格検証装置において、
    前記証明補助情報発行部(10)は、
    利用資格の認証の際に用いる証明情報(K)を管理する証明情報管理手段(103)と、
    秘密情報(dp、dv)を管理する秘密情報管理手段(102)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を少なくとも前記秘密情報管理手段(102)が管理する秘密情報に対し適用する、第1の一方向性関数計算手段(104)と、
    前記証明情報管理手段(103)が管理する証明情報と、前記第1の一方向性関数計算手段(104)の計算結果をもとに証明補助情報(tp、tv)を計算する証明補助情報計算手段(105)と、
    証明補助情報の計算の過程で情報を送受信する第1の通信手段(101)とを有し、
    前記検証部(20)は、
    秘密情報(dv)を保持する第1の秘密情報保持手段(206)と、
    前記証明補助情報発行部(10)から送られてきた証明補助情報(tv)を管理する第1の証明補助情報管理手段(207)と、
    試験情報(r)を計算する試験情報計算手段(202)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)と、
    (i)(a)少なくとも前記第1の秘密情報保持手段(206)が保持する秘密情報(dv)に前記第2の一方向性関数計算手段(203)を作用させた結果と、前記第1の証明補助情報管理手段(207)が管理する証明補助情報(tv)とをもとに得られる値(K)と、(b)試験情報(r)とに対しさらに前記第2の一方向性計算手段を作用させた結果(f(K,r))と、(ii)前記証明部(30)から送られてきた応答情報(R)とが等しいか検査する応答情報検証手段(204)と、
    利用資格の認証の過程で情報を送受信する第2の通信手段(205)とを有し、
    前記証明部(30)は、
    秘密情報(dp)を保持する第2の秘密情報保持手段(306)と、
    応答情報の計算に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報(tp)を管理する第2の証明補助情報管理手段(307)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段(304)と、
    (i)少なくとも前記第2の秘密情報保持手段(306)が保持する秘密情報(dp)に前記第3の一方向性関数計算手段(304)を作用させた結果と、前記第2の証明補助情報管理手段(307)が管理する証明補助情報(tp)とをもとに得られる値(K’)と、(ii)試験情報(r)とに、さらに前記第3の一方向性関数計算手段(304)を作用させて応答情報(R)を計算する応答情報計算手段(303)と、
    利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信手段(305)とを有し、前記検証部(20)は、前記応答情報検証手段(204)の検証結果に基づいて利用資格を検証することを特徴とする利用資格検証装置。
  3. 請求項1ないし請求項2の利用資格検証装置であって、
    前記証明情報管理手段は、利用条件を示す情報である使用制限記述を証明情報と併せて管理し、
    前記証明補助情報管理手段は、使用制限記述を証明補助情報と併せて管理し、
    前記証明部で用いる証明補助情報および前記証明部で生成する応答情報の計算には使用制限記述を含むことを特徴とする利用資格検証装置。
  4. 請求項1ないし請求項3の利用資格検証装置であって、復号手段を備え、利用資格があると判定した場合には、証明情報あるいは証明情報から得られる値を前記復号手段の復号鍵として用い、情報を復号することを特徴とする利用資格検証装置。
  5. 請求項1ないし請求項4の利用資格検証装置であって、利用資格検証時の履歴を管理する履歴管理手段を備え、証明情報保持手段あるいは第1の証明補助情報管理手段は、伝達情報を証明情報あるいは証明補助情報と併せて管理し、試験情報はさらに伝達情報を含み、利用資格検証時に前記伝達情報を履歴管理手段に格納することを特徴とする利用資格検証装置。
  6. 証明補助情報発行部(10)、検証部(20)および証明部(30)を含み、利用資格を検証する利用資格検証装置において、
    前記証明補助情報発行部(10)は、
    利用資格の認証の際に用いる証明情報(K)を管理する証明情報管理手段(201)と、
    秘密情報(d)を管理する秘密情報管理手段(102)と、
    少なくとも前記秘密情報管理手段(102)が管理する秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算手段(104)と、
    前記証明情報管理手段(103)が管理する証明情報(K)と、前記第1の一方向性関数計算手段(104)の計算結果をもとに証明補助情報(t)を計算する証明補助情報計算手段(105)と、
    証明補助情報の計算の過程で情報を送受信する第1の通信手段(101)とを有し、
    前記検証部(20)は、
    証明情報(K)を保持する証明情報保持手段(201)と、
    第1の試験情報(r1)を計算する第1の試験情報計算手段(209)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)と、
    (i)前記証明部(30)から受信した第2の試験情報(r2)と、前記証明情報保持手段(201)に保持されている証明情報(K)と、内部状態変更情報(m)とに対して前記第2の一方向性関数計算手段(203)を作用させた結果からなる第1応答情報部分(f(K,r2,m))と、(ii)前記内部状態変更情報(m)からなる第2応答情報部分(m)とを含む第1の応答情報(R1)を計算する第1の応答情報計算手段(210)と、
    (i)前記第2の一方向性計算手段(203)を、前記証明情報保持手段(201)が保持する証明情報(K)と、第1の試験情報(r1)とに対し作用させた結果(f(K,r1))と、(ii)前記証明部(30)から送られてきた第2の応答情報(R2)が等しいか検査する第1の応答情報検証手段(211)と、
    利用資格の認証の過程で情報を送受信する第2の通信手段(205)とを有し、
    前記証明部(30)は、
    秘密情報(d)を保持する秘密情報保持手段(301)と、
    応答情報の計算に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報(t)を管理する証明補助情報管理手段(302)と、
    検証された利用資格に基づく利用に対応して変更される内部状態を管理する内部状態管理手段(312)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段(304)と、
    (i)少なくとも前記秘密情報保持手段(301)が保持する秘密情報(d)に前記第3の一方向性関数計算手段(304)を作用させた結果と、前記証明補助情報管理手段(302)が管理する証明補助情報(t)とをもとに得られる値(K’)と、(ii)第1の試験情報(r1)とにさらに前記第3の一方向性関数計算手段(304)を作用させて第2の応答情報(R2)を計算する第2の応答情報計算手段(310)と、
    第2の試験情報(r2)を計算する第2の試験情報計算手段(309)と、
    (i)(a)少なくとも前記秘密情報保持手段(301)が保持する秘密情報(d)に対して前記第3の一方向性関数計算手段(304)を作用させた結果と、前記証明補助情報管理手段(302)が管理する証明補助情報(t)とをもとに得られる値(K’)と、(b)第2の試験情報(r2)と、(c)前記第1の応答情報(R1)の第2応答情報部分(m)とに対して前記第3の一方向性関数計算手段(304)を作用させた結果(f(K’,r2、m))と、(ii)前記第1の応答情報(R1)の第1応答情報部分(f(K,r2,m))が等しいか検査する第2の応答情報検証手段(311)と、
    利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信手段(305)とを有し、前記検証部(20)は、前記第1の応答情報検証手段(211)の検証結果に基づいて利用資格を検証し、前記証明部(30)は第2応答情報検証手段(311)の検証結果に基づいて前記内部状態の変更を許容することを特徴とする利用資格検証装置。
  7. 証明補助情報発行部(10)、検証部(20)および証明部(30)を含み、利用資格を検証する利用資格検証装置において、
    前記証明補助情報発行部(10)は、
    利用資格の認証の際に用いる証明情報(K)を管理する証明情報管理手段(103)と、
    秘密情報(dp、dv)を管理する秘密情報管理手段(102)と、
    少なくとも前記秘密情報管理手段(102)が管理する秘密情報(dp、dv)に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算手段(104)と、
    前記証明情報管理手段(103)が管理する証明情報(K)と、前記第1の一方向性関数計算手段(104)の計算結果をもとに証明補助情報(tp、tv)を計算する証明補助情報計算手段(105)と、
    証明補助情報の計算の過程で情報を送受信する第1の通信手段(101)とを有し、
    前記検証部(20)は、
    秘密情報(dv)を保持する第1の秘密情報保持手段(206)と、
    証明補助情報(tv)を管理する第1の証明補助情報管理手段(207)と、
    第1の試験情報(r1)を計算する第1の試験情報計算手段(209)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)と、
    (i)(a)少なくとも前記第1の秘密情報保持手段(206)が保持する秘密情報(dv)に前記第2の一方向性関数計算手段(203)を作用させた結果と前記第1の証明補助情報管理手段(207)が管理する証明補助情報(tv)とをもとに得られる値(K)と、(b)受信した第2の試験情報(r2)と、(c)内部状態変更情報(m)とに対して前記第2の一方向性関数計算手段(203)を作用させた結果からなる第1応答情報部分(f(K,r2,m))と、(ii)前記内部状態変更情報(m)からなる第2応答情報部分(m)とを含む第1の応答情報(R1)を計算する第1の応答情報計算手段(210)と、
    (i)(a)少なくとも前記第1の秘密情報保持手段(206)が保持する秘密情報(dv)に前記第2の一方向性関数計算手段(203)を作用させた結果と前記第1の証明補助情報管理手段(207)が管理する証明補助情報(tv)とをもとに得られる値(K)と、(b)第1の試験情報(r1)とに対し前記第2の一方向性計算手段(203)を作用させた結果(f(K,r1))と、(ii)前記証明部(30)から送られてきた第2の応答情報(R2)が等しいか検査する第1の応答情報検証手段(211)と、
    利用資格の認証の過程で情報を送受信する第2の通信手段(205)とを有し、
    前記証明部(30)は、
    秘密情報(dp)を保持する第2の秘密情報保持手段(306)と、
    応答情報の作成に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報(tp)を管理する第2の証明補助情報管理手段(307)と、
    検証された利用資格に基づく利用に対応して変更される内部状態を管理する内部状態管理手段(312)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段(304)と、
    (i)(a)少なくとも前記第2の秘密情報保持手段(306)が保持する秘密情報(dp)に前記第3の一方向性関数計算手段(304)を作用させた結果と、(b)前記第2の証明補助情報管理手段(307)が管理する証明補助情報(tp)とをもとに得られる値(K’)と、(ii)第1の試験情報(r1)とにさらに前記第3の一方向性関数計算手段(304)を作用させて第2の応答情報(R2)を計算する第2の応答情報計算手段(310)と、
    第2の試験情報(r2)を計算する第2の試験情報計算手段(309)と、
    (i)(a)少なくとも前記第2の秘密情報保持手段(306)が保持する秘密情報(dp)に対して前記第3の一方向性関数計算手段(304)を作用させた結果と、前記第2の証明補助情報管理手段(307)が管理する証明補助情報(tp)とをもとに得られる値(K’)と、(b)第2の試験情報(r2)と、(c)前記第1の応答情報(R1)の第2応答情報部分(m)とに対して前記第3の一方向性関数計算手段(304)を作用させた結果(f(K’,r2,m))と、前記第1の応答情報の第1応答情報部分(f(K,r2,m))が等しいか検査する第2の応答情報検証手段(311)と、
    利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信手段(305)とを有し、前記検証部(20)は、前記第1の応答情報検証手段(211)の検証結果に基づいて利用資格を検証し、前記証明部(30)は第2の応答情報検証手段(311)の検証結果に基づいて前記内部状態の変更を許容する特徴とする利用資格検証装置。
  8. 請求項6ないし請求項7の利用資格検証装置であって、証明情報管理手段は、利用条件を示す情報である使用制限記述を証明情報と併せて管理し、証明補助情報管理手段、使用制限記述を証明補助情報と併せて管理し、証明部で用いる証明補助情報および証明部で生成される応答情報の計算には使用制限記述を含むことを特徴とする利用資格検証装置。
  9. 請求項6ないし請求項8の利用資格検証装置であって、復号手段を備え、利用資格があると判定した場合には、証明情報あるいは証明情報から得られる値を前記復号手段の復号鍵として用い、情報を復号することを特徴とする利用資格検証装置。
  10. 請求項6ないし請求項9の利用資格検証装置であって、利用資格検証時の履歴を管理する履歴管理手段を備え、証明情報保持手段あるいは第1の証明補助情報管理手段は、伝達情報を証明情報あるいは証明補助情報と併せて管理し、試験情報はさらに伝達情報を含み、利用資格検証時に前記伝達情報を履歴管理手段に格納することを特徴とする利用資格検証装置。
  11. 証明補助情報発行部(10)、検証部(20)および証明部(30)を用いて利用資格を検証する利用資格検証方法において、
    前記証明補助情報発行部(10)が実行する証明補助情報発行ステップは、
    証明情報管理手段(103)が、利用資格の認証の際に用いる証明情報を保持する証明情報保持サブステップと、
    秘密情報管理手段(102)が、秘密情報を保持する秘密情報保持サブステップと、
    一方向性関数計算手段(104)が、少なくとも前記秘密情報保持サブステップにより保持される秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算サブステップと、
    証明補助情報計算手段(105)が、前記証明情報保持サブステップにより保持される証明情報と、前記第1の一方向性関数計算サブステップの計算結果をもとに証明補助情報を計算する証明補助情報計算サブステップと、
    第1の通信手段(101)が、証明補助情報の計算の過程で情報を送受信する第1の通信サブステップとを有し、
    前記検証部(20)が実行する検証ステップは、
    証明情報保持手段(201)が、証明情報を保持する証明情報保持サブステップと、
    試験情報計算手段(202)が、試験情報を計算する試験情報計算サブステップと、
    前記証明情報保持サブステップにより保持される証明情報と、試験情報とに対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)を作用させた結果と、前記証明部(30)から送られてきた応答情報とが等しいか検査する応答情報検証サブステップと、
    第2の通信手段(205)が、利用資格の認証の過程で情報を送受信する第2の通信サブステップとを有し、
    前記証明部(30)が実行する証明ステップは、
    秘密情報保持手段(301)が、秘密の情報を保持する秘密情報保持サブステップと、
    証明補助情報保持手段(302)が、応答情報の計算に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報を保持する証明補助情報保持サブステップと、
    応答情報計算手段(303)が、(i)少なくとも前記秘密情報保持手段(301)が保持する秘密情報に、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段(304)を作用させた結果と、前記証明補助情報保持手段(302)が保持する証明補助情報とをもとに得られる値と、(ii)試験情報とに、さらに前記第3の一方向性関数計算手段(304)を作用させて応答情報を計算する応答情報計算サブステップと、
    第3の通信手段(305)が、利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信サブステップとを有し、前記検証部(20)は、前記応答情報検証手段(204)の検証結果に基づいて利用資格を検証することを特徴とする利用資格検証方法。
  12. 証明補助情報発行部(10)、検証部(20)および証明部(30)を用いて利用資格を検証する利用資格検証方法において、
    前記証明補助情報発行部(10)が実行する証明補助情報発行ステップは、
    証明情報管理手段(103)が、利用資格の認証の際に用いる証明情報を保持する証明情報保持サブステップと、
    秘密情報管理手段(102)が、秘密情報を保持する秘密情報保持サブステップと、
    第1の一方向性関数計算手段(104)が、少なくとも前記秘密情報保持サブステップにより保持される秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算サブステップと、
    証明補助情報計算手段(105)が、前記証明情報保持サブステップにより保持される証明情報と、前記第1の一方向性関数計算サブステップの計算結果をもとに証明補助情報を計算する証明補助情報計算サブステップと、
    第1の通信手段(101)が、証明補助情報の計算の過程で情報を送受信する第1の通信サブステップとを有し、
    前記検証部(20)が実行する検証ステップは、
    証明情報保持手段(201)が、証明情報を保持する証明情報保持サブステップと、
    第1の試験情報計算手段(209)が、第1の試験情報を計算する第1の試験情報計算サブステップと、
    第1の応答情報計算手段(210)が、(i)前記証明部(30)受信した第2の試験情報と、前記証明情報保持ステップで保持している証明情報と、内部状態に対して、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)を作用させた結果からなる第1応答情報部分と、(ii)前記内部状態変更情報からなる第2応答上方部分とを含む第1の応答情報を計算する第1の応答情報計算サブステップと、
    第1の応答情報検証手段(211)が、(i)前記証明情報保持サブステップにより保持される証明情報と、第1の試験情報とに対し前記第2の一方向性計算サブステップを作用させた結果と、(ii)前記証明部から送られてきた第2の応答情報が等しいか検査する第1の応答情報検証サブステップと、
    第2の通信手段(205)が、利用資格の認証の過程で情報を送受信する第2の通信サブステップとを有し、
    前記証明部(30)が実行する証明ステップは、
    秘密情報保持手段(301)が、秘密の情報を保持する秘密情報保持サブステップと、
    証明補助情報管理手段(302)が、応答情報の計算に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報を保持する証明補助情報保持サブステップと、
    内部状態管理手段(312)が、検証された利用に対応して変更される内部状態を保持する内部状態保持サブステップと、
    第2の応答情報計算手段(310)が、(i)少なくとも前記秘密情報保持サブステップにより保持された秘密情報に対して逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算を作用させた結果と、前記証明補助情報保持サブステップにより保持された証明補助情報とをもとに得られる値と、(ii)第1の試験情報とにさらに前記第3の一方向性関数計算手段(304)を作用させて第2の応答情報を計算する第2の応答情報計算サブステップと、
    第2の試験情報計算手段(309)が、第2の試験情報を計算する第2の試験情報計算サブステップと、
    第2の応答情報検証手段(311)が、(i)(a)少なくとも前記秘密情報保持サブステップにより保持された秘密情報に対して前記第3の一方向性関数計算手段を作用させた結果と、前記証明補助情報保持サブステップにより保持された証明補助情報とをもとに得られる値と、(b)前記第2の試験情報と、(c)前記第1の応答情報の第2応答情報部分に対して前記第3の一方向性関数計算手段(304)を作用させた結果と、(ii)前記第1応答情報の第1応答情報部分が等しいか検査する第2の応答情報検証サブステップと、
    第3の通信手段(305)が、利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信サブステップとを有し、前記検証部(20)は、前記第1の応答情報検証手段(211)の検証結果に基づいて利用資格を検証し、前記証明部(30)は第2応答情報検証手段(311)の検証結果に基づいて前記内部状態の変更を許容することを特徴とする利用資格検証方法。
  13. 証明補助情報発行部(10)、検証部(20)および証明部(30)を用いて利用資格を検証する利用資格検証方法において、
    前記証明情報補助情報発行部(10)が実行する証明補助情報発行ステップは、
    証明情報管理手段(103)が、利用資格の認証の際に用いる証明情報を保持する証明情報保持サブステップと、
    秘密情報管理手段(102)が、秘密情報を保持する秘密情報保持サブステップと、
    一方向性関数計算手段(104)が、少なくとも前記秘密情報保持サブステップにより保持される秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算サブステップと、
    証明補助情報計算手段(105)が、前記証明情報保持サブステップにより保持される証明情報と、前記第1の一方向性関数計算サブステップの計算結果をもとに証明補助情報を計算する証明補助情報計算サブステップと、
    第1の通信手段(101)が、証明補助情報の計算の過程で情報を送受信する第1の通信サブステップとを有し、
    前記検証部(20)が実行する検証ステップは、
    第1の秘密情報保持手段(206)が、秘密情報を保持する第1の秘密情報保持サブステップと、
    第1の証明補助情報保持手段(207)が、証明補助情報を保持する第1の証明補助情報保持サブステップと、
    第1の試験情報計算手段(209)が、第1の試験情報を計算する第1の試験情報計算サブステップと、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算サブステップと、
    前記第1の応答情報計算手段(210)が、(i)(a)少なくとも前記第1の秘密情報保持ステップにより保持された秘密情報に逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)を作用させた結果と前記第1の証明補助情報管理手段(207)が管理する証明補助情報とをもとに得られる値と、(b)受信した第2の試験情報と、(c)内部状態変更情報とに対して、前記第2の一方向性関数計算手段(203)を作用させた結果からなる第1応答情報部分と、(ii)前記内部状態変更情報からなる第2応答情報部分とを含む第1の応答情報を計算する第1の応答情報計算サブステップと、
    第1の応答情報検証手段(211)が、(i)(a)少なくとも前記第1の秘密情報保持手段(206)が保持する秘密情報に前記第2の一方向性関数計算手段(203)を作用させた結果と前記第1の証明補助情報管理手段(207)が管理する証明補助情報とをもとに得られる値と、(b)第1の試験情報とに対し前記第2の一方向性計算手段を作用させた結果と、(ii)前記証明部(30)から送られてきた第2の応答情報が等しいか検査する第1の応答情報検証サブステップと、
    第2の通信手段(205)が、利用資格の認証の過程で情報を送受信する第2の通信サブステップとを有し、
    前記証明部(30)が実行する証明ステップは、
    第2の秘密情報保持手段(306)が、秘密の情報を保持する第2の秘密情報保持サブステップと、
    第2の証明補助情報管理手段(307)が、応答情報の作成に用いるために前記証明補助情報発行部(10)から送られてきた証明補助情報を保持する第2の証明補助情報保持サブステップと、
    内部状態管理手段(312)が、検証された利用資格に基づく利用に対応して変更される内部状態を保持する内部状態保持サブステップと、
    第2の応答情報計算手段(310)が、(i)(a)少なくとも前記秘密情報保持サブステップにより保持される秘密情報に逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段(304)を作用させた結果と、(b)前記第2の証明補助情報保持サブステップにより保持される証明補助情報とをもとに得られる値と、(ii)前記第1の試験情報とにさらに前記第3の一方向性関数計算手段(304)を作用させて第2の応答情報を計算する第2の応答情報計算サブステップと、
    第2の試験情報計算手段(309)が、第2の試験情報を計算する第2の試験情報計算サブステップと、
    第2の応答情報検証手段(311)が、(i)(a)少なくとも前記秘密情報保持サブステップにより保持される秘密情報に対して前記第3の一方向性関数計算手段を作用させた結果と、前記第2の証明補助情報保持サブステップにより保持される証明補助情報とをもとに得られる値と、(b)第2の試験情報と、(c)前記第2の応答情報の第2応答情報部分とに対して前記第3の一方向性関数計算手段(304)を作用させた結果と、(ii)前記第1の応答情報の第1応答上方部分が等しいか検査する第2の応答情報検証サブステップと、
    第3の通信手段(305)が、利用資格の認証の過程および証明補助情報計算の過程で情報を送受信する第3の通信サブステップとを有し、前記検証部(20)は、前記第1の応答情報検証手段(211)の検証結果に基づいて利用資格を検証し、前記証明部(30)は前記第2の応答情報検証手段(311)の検証結果に基づいて前記内部状態の変更を許容することを特徴とする利用資格検証方法。
  14. 証明補助情報発行装置(10)、応答情報検証装置(20)および証明装置(30)を有し、利用資格を検証する利用資格検証システムにおいて、
    前記証明補助情報発行装置(10)は、
    利用資格の認証の際に用いる証明情報を管理する証明情報管理手段(103)と、
    秘密情報を管理する秘密情報管理手段(102)と、
    少なくとも前記秘密情報管理手段が管理する秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第1の一方向性関数計算手段(104)と、
    前記証明情報管理手段(103)が管理する証明情報と、前記第1の一方向性関数計算手段(104)の計算結果をもとに証明補助情報を計算する証明補助情報計算手段(105)と、
    証明補助情報の計算の過程で情報を送受信する第1の通信手段(101)とを有し、
    前記応答情報検証装置(20)は、
    証明情報を保持する証明情報保持手段(201)と、
    試験情報を計算する試験情報計算手段(202)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)と、
    (i)前記証明情報保持手段(201)が保持する証明情報と、試験情報とに対し前記第2の一方向性計算手段(203)を作用させた結果と、(ii)前記証明装置(30)から送られてきた応答情報とが等しいか検査する応答情報検証手段(204)と、
    利用資格の認証の過程で情報を送受信する第2の通信手段(205)とを有し、
    前記証明装置(30)は、
    秘密情報を保持する秘密情報保持手段(301)と、
    応答情報の計算に用いるために前記証明補助情報発行装置(10)から送られてきた証明補助情報を管理する証明補助情報管理手段(302)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する一方向性関数計算手段(304)と、
    (i)少なくとも前記秘密情報保持手段(301)が保持する秘密情報に前記一方向性関数計算手段(304)を作用させた結果と、前記証明補助情報管理手段(302)が管理する証明補助情報とをもとに得られる値と、(ii)前記応答情報検証装置(20)から受け取った試験情報とに、さらに前記一方向性関数計算手段(304)を作用させて応答情報を計算する応答情報計算手段(303)と、
    利用資格の認証の過程で情報を送受信する第3の通信手段(305)とを有し、
    前記応答情報検証装置(20)は、前記応答情報検証手段(204)の検証結果に基づいて利用資格を検証することを特徴とする利用資格検証システム。
  15. 証明補助情報発行装置(10)、応答情報検証装置(20)および証明装置(30)を有し、利用資格を検証する利用資格検証システムにおいて、
    前記証明補助情報発行装置(10)は、
    利用資格の認証の際に用いる証明情報を管理する証明情報管理手段(103)と、
    秘密情報を管理する秘密情報管理手段(102)と、
    少なくとも前記秘密情報管理手段が管理する秘密情報に対し、逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する、第1の一方向性関数計算手段(104)と、
    前記証明情報管理手段(103)が管理する証明情報と、前記第1の一方向性関数計算手段(104)の計算結果をもとに証明補助情報を計算する証明補助情報計算手段(105)と、
    証明補助情報の計算の過程で情報を送受信する第1の通信手段(101)とを有し、
    前記応答情報検証装置(20)は、
    秘密情報を保持する第1の秘密情報保持手段(206)と、
    前記証明補助情報発行装置から送られてきた証明補助情報を管理する第1の証明補助情報管理手段(207)と、
    試験情報を計算する試験情報計算手段(202)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第2の一方向性関数計算手段(203)と、
    (i)(a)少なくとも前記第1の秘密情報保持手段(206)が保持する秘密情報に前記第2の一方向性関数計算手段(203)を作用させた結果と、前記第1の証明補助情報管理手段(207)が管理する証明補助情報とをもとに得られる値と、(b)試験情報とに対しさらに前記第2の一方向性計算手段(203)を作用させた結果と、(ii)前記証明装置(30)から送られてきた応答情報とが等しいか検査する応答情報検証手段と、
    利用資格の認証の過程で情報を送受信する第2の通信手段(205)とを有し、
    前記証明装置(30)は、
    秘密情報を保持する第2の秘密情報保持手段(306)と、
    応答情報の計算に用いるために前記証明補助情報発行装置(10)から送られてきた証明補助情報を管理する第2の証明補助情報管理手段(307)と、
    逆関数を求めることが少なくとも計算量的に困難な一方向性関数を適用する第3の一方向性関数計算手段(304)と、
    (i)少なくとも前記第2の秘密情報保持手段(306)が保持する秘密情報に前記第3の一方向性関数計算手段(304)を作用させた結果と、前記第2の証明補助情報管理手段(307)が管理する証明補助情報とをもとに得られる値と、(ii)試験情報とに、さらに前記第3の一方向性関数計算手段(304)を作用させて応答情報を計算する応答情報計算手段(303)と、
    利用資格の認証の過程で情報を送受信する第3の通信手段(305)とを有し、
    前記応答情報検証装置(20)は、前記応答情報検証手段(204)の検証結果に基づいて利用資格を検証することを特徴とする利用資格検証システム。
JP02732698A 1998-02-09 1998-02-09 利用資格検証装置および方法、ならびに、利用資格検証システム Expired - Fee Related JP3815022B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP02732698A JP3815022B2 (ja) 1998-02-09 1998-02-09 利用資格検証装置および方法、ならびに、利用資格検証システム
US09/236,393 US6389536B1 (en) 1998-02-09 1999-01-25 Device for verifying use qualifications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02732698A JP3815022B2 (ja) 1998-02-09 1998-02-09 利用資格検証装置および方法、ならびに、利用資格検証システム

Publications (2)

Publication Number Publication Date
JPH11234262A JPH11234262A (ja) 1999-08-27
JP3815022B2 true JP3815022B2 (ja) 2006-08-30

Family

ID=12217961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02732698A Expired - Fee Related JP3815022B2 (ja) 1998-02-09 1998-02-09 利用資格検証装置および方法、ならびに、利用資格検証システム

Country Status (2)

Country Link
US (1) US6389536B1 (ja)
JP (1) JP3815022B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8732457B2 (en) * 1995-10-02 2014-05-20 Assa Abloy Ab Scalable certificate validation and simplified PKI management
FR2795838B1 (fr) * 1999-06-30 2001-08-31 Bull Cp8 Procede de securisation du traitement d'une information sensible dans un module de securite monolithique, et module de securite associe
JP2001066989A (ja) 1999-08-31 2001-03-16 Fuji Xerox Co Ltd 一方向性関数生成方法,一方向性関数値生成装置,証明装置,認証方法および認証装置
GB2372595A (en) * 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
US7194765B2 (en) 2002-06-12 2007-03-20 Telefonaktiebolaget Lm Ericsson (Publ) Challenge-response user authentication
US20040019791A1 (en) * 2002-07-24 2004-01-29 Congruence, Llc Code for object identification
US7840806B2 (en) * 2002-10-16 2010-11-23 Enterprise Information Management, Inc. System and method of non-centralized zero knowledge authentication for a computer network
US8239917B2 (en) * 2002-10-16 2012-08-07 Enterprise Information Management, Inc. Systems and methods for enterprise security with collaborative peer to peer architecture
JP4940592B2 (ja) * 2005-08-11 2012-05-30 日本電気株式会社 否認可能零知識対話証明に適用される証明装置及び検証装置
US8788829B2 (en) * 2006-08-17 2014-07-22 Aol Inc. System and method for interapplication communications
JP2009258683A (ja) * 2008-03-20 2009-11-05 Semiconductor Energy Lab Co Ltd 発番方法、発番装置及びレーザ直描装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4771461A (en) * 1986-06-27 1988-09-13 International Business Machines Corporation Initialization of cryptographic variables in an EFT/POS network with a large number of terminals
US4996711A (en) * 1989-06-21 1991-02-26 Chaum David L Selected-exponent signature systems
GB9211648D0 (en) * 1992-06-02 1992-07-15 Racal Datacom Ltd Data communication system
US5710834A (en) * 1995-05-08 1998-01-20 Digimarc Corporation Method and apparatus responsive to a code signal conveyed through a graphic image
US5825880A (en) * 1994-01-13 1998-10-20 Sudia; Frank W. Multi-step digital signature method and system
EP0757336B1 (en) * 1995-08-04 2000-11-22 Belle Gate Investment B.V. Data exchange systems comprising portable data processing units
US6011848A (en) * 1994-03-07 2000-01-04 Nippon Telegraph And Telephone Corporation Method and system for message delivery utilizing zero knowledge interactive proof protocol
US6088797A (en) * 1994-04-28 2000-07-11 Rosen; Sholom S. Tamper-proof electronic processing device
US5586186A (en) 1994-07-15 1996-12-17 Microsoft Corporation Method and system for controlling unauthorized access to information distributed to users
FR2727269B1 (fr) * 1994-11-21 1997-01-17 Allegre Francois Systeme de controle d'acces a des machines informatiques connectees en reseau prive
US6085320A (en) * 1996-05-15 2000-07-04 Rsa Security Inc. Client/server protocol for proving authenticity

Also Published As

Publication number Publication date
US6389536B1 (en) 2002-05-14
JPH11234262A (ja) 1999-08-27

Similar Documents

Publication Publication Date Title
EP1253744B1 (en) Method for generation and management of a secret key in a public key cryptosystem
JP3867388B2 (ja) 条件付き認証装置および方法
US20050157880A1 (en) Computer system having an autonomous process for centralized cryptographic key administration
JPH11122240A (ja) 復号装置および方法ならびにアクセス資格認証装置および方法
JPH10123950A (ja) データ検証方法、被検証データ生成装置およびデータ検証装置
JP2001230768A (ja) 情報取り引きシステムおよび情報取り引き方法、並びにプログラム提供媒体
US20020141593A1 (en) Multiple cryptographic key linking scheme on a computer system
JP2007505582A (ja) 通信における証明された秘密値の使用
US20020071565A1 (en) Software process pre-authorization scheme for applications on a computer system
JP4776906B2 (ja) 署名生成方法及び情報処理装置
US20060242409A1 (en) Linking Diffie Hellman with HFS authentication by using a seed
JP3815022B2 (ja) 利用資格検証装置および方法、ならびに、利用資格検証システム
JPH1131130A (ja) サービス提供装置
Dandash et al. Fraudulent Internet Banking Payments Prevention using Dynamic Key.
US20020071561A1 (en) Method and apparatus for enforcing the separation of computer operations and business management roles in a cryptographic system
CN100437422C (zh) 软件使用权加密保护的***和方法
JP3791169B2 (ja) 認証装置および方法
JP3954692B2 (ja) 認証装置および方法
JPH096236A (ja) 公開鍵暗号の鍵生成・証明書発行方法及びそのシステム
JPH1013402A (ja) 公開鍵暗号の秘密鍵管理方法および装置
JP3690035B2 (ja) 情報アクセス制御装置および方法
JP3617259B2 (ja) 利用資格検証装置
JP2002132145A (ja) 認証方法、認証システム、記録媒体及び情報処理装置
JP3941711B2 (ja) 電子機器および電子機器の制御方法
JP3972858B2 (ja) 署名装置および方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060413

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060529

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100616

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110616

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110616

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees