JP3954692B2 - 認証装置および方法 - Google Patents

認証装置および方法 Download PDF

Info

Publication number
JP3954692B2
JP3954692B2 JP17984297A JP17984297A JP3954692B2 JP 3954692 B2 JP3954692 B2 JP 3954692B2 JP 17984297 A JP17984297 A JP 17984297A JP 17984297 A JP17984297 A JP 17984297A JP 3954692 B2 JP3954692 B2 JP 3954692B2
Authority
JP
Japan
Prior art keywords
authentication
data
information
proof
storage means
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
JP17984297A
Other languages
English (en)
Other versions
JPH1093550A (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 JP17984297A priority Critical patent/JP3954692B2/ja
Publication of JPH1093550A publication Critical patent/JPH1093550A/ja
Application granted granted Critical
Publication of JP3954692B2 publication Critical patent/JP3954692B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は利用期限等の制約に関連してサービス対象を利用する権限をユーザが有しているかどうかを認証する技術に関し、制約に関する情報が改竄されている場合には認証が失敗するようにしたものである。またこの発明は、暗号化されたメッセージを復号する復号技術に関し、特に利用期限情報や制御情報などの復号に関する権利に付随する情報が、改竄されていないことを検証し、改竄されていない時にのみ正しくメッセージが復号されるようにしたものである。
【0002】
【従来の技術】
従来、サービス対象を利用する権限をユーザが有しているかどうかを認証する方法として、一般的には予め物理的なチケットやメンバーズカードを発行してもらい、サービスを享受する時点でチケットやメンバーズガードを提示する方法が取られてきた。この方法の場合、チケット等に記載された有効期限やサービスの種類等の情報をサービス提供者がその場で確認することで、条件の確認と認証を行ってきた。しかし、チケットそのものが物理的存在であるためにチケットの配送にコストがかかったり、チケットの偽造を困難にするためにチケットの製造自体にコストがかかってしまう欠点があった。この点についてはチケットを電子化することで配送や製造にかかわるコストを低減させることが可能である。このための技術として、特開昭62−171071号公報の「予約取引用ICカード」、特公平6−22032号公報の「電子カードによる公共サービスの支払システム」がある。しかし、これらの技術ではサービスを享受した時点でチケットに相当する電子情報が無効化されるだけで、回数券型のチケットや利用期日制限と利用量制限の組み合わせといったより柔軟なチケットの実現に寄与するものではなかった。また、これらの技術はチケットを電子的に取り寄せる場合にカードとホストの間の通信の盗聴とリプレイ攻撃によるチケットの不正利用に対する防御策を持ち合わせていなかった。
【0003】
また従来、暗号化されたデジタル情報について利用制限の機能を付加したものとして、特開平7−131452号公報の「デジタル情報保護方法及びその処理装置」に記載されている技術がある。特開平7−131452号公報の発明では、デジタル情報を情報識別番号と、情報本体と、利用条件情報及び認証子の組で表し、更に計算機内にデジタル情報を取り込んだ時に、情報識別番号および利用条件情報に関する第2の識別子を生成し、デジタル情報を利用する際は、2つの識別子による検証を行い、利用条件情報に記載されている利用条件を満たすかどうかの検証を行い、すべての検証が正常に終了した時のみデジタル情報を復号化して、利用できる形へ変換することを行っている。しかし、特開平7−131452号公報に記載されている方法では情報本体と利用条件の正当な組合せを保証するために両者を同一の暗号化鍵で暗号化するため、例えば利用者ごとに利用条件を変えようとすると、通信の度に暗号化を行うあるいは通信ごとに暗号化されたものを予め用意する必要があり、CD−ROM等によるデジタル情報の多量の配布や、衛星放送などを利用したブロードキャストなどには向いていなかった。
【0004】
【発明が解決しようとする課題】
本発明では上記の問題点を鑑み、サービス対象を利用する権限をユーザが有しているかどうかを認証する場合に於いて、従来のチケットに相当するものを電子化して、その電子情報の正当性を判断する際に、安全性を確保したままで、有効期限や利用回数制限やそれらの組み合わせといったように柔軟な条件を設定でき、しかもそれらの条件が改竄された場合には正しく認証が行われないようにすることを目的とする。
【0005】
また更に暗号化されたデジタル情報を条件付きで復号する場合に於いては、デジタル情報を復号して利用する際に復号を行うための条件等を設定でき、しかも復号を行うための条件等は暗号化されたデジタル情報自身とは独立であり、したがってユーザ毎に異なる条件等を割り当てることが容易で、しかも復号を行うための条件等が改竄された場合には正しくデジタル情報の復号が行われないようにすることを目的とする。
【0006】
【課題を解決するための手段】
以下、本発明を詳細に説明する。
【0007】
[第1の側面]本発明の第1の側面によれば、上述の目的を達成するために、ユーザの権限を証明するために生成された証明用データ(R)の正当性を検証することにより、上記ユーザの権限を認証する認証装置に:認証用データ(C)を記憶する第1の記憶手段と、上記証明用データの生成を行うための制御情報(L)を記憶する第2の記憶手段と;第2の記憶手段に記憶されている上記制御情報(L)および認証の特徴情報(D)に所定の演算を施して生成される認証用補助情報(t)を保持する第3の記憶手段と;上記制御情報(L)に従い所定の処理あるいは条件判断を行う証明用データ生成装置制御手段および上記証明用データ生成装置制御手段に従い少なくとも上記認証用データ(C)、上記制御情報(L)および上記認証用補助情報(t)を用いて上記証明用データ(R)を生成する第1の演算手段を具備する証明用データ生成手段と;上記証明用データ生成手段により生成された上記証明用データが上記認証の特徴情報(D)に基づき生成されたものであるかどうかに依存する処理を行う検証手段とを設け、上記証明用データ生成手段は、それぞれ正当な認証用データ(C)、制御情報(L)および認証用補助情報(t)が与えられた時のみ正当な証明用データ(R)を生成するようにしている。
【0008】
この構成においては、制御情報と認証の特徴情報とから認証用補助情報を生成し、これを利用することにより、安全性を確保したままで、有効期限や利用回数制限、その他の条件を設定でき、しかもそれらの条件が改竄された場合には正しく認証が行われないようにすることができる。
【0009】
[第2の側面]また、上述の第1の側面において、さらに各ユーザ固有の情報(du)を記憶する第4の記憶手段を設け、上記第3の記憶手段に記憶される上記証明用補助情報(t)は、上記制御情報(L)および上記認証の特徴情報(D)、上記ユーザ固有情報(du)に所定の演算を施して生成されるようにし、上記証明用データ生成手段は、少なくとも上記ユーザ固有情報(du)および上記制御情報(L)、上記認証用補助情報(t)、上記認証用データ(C)を用いて上記証明用データ(R)を生成するようにしてもよい。
【0010】
[第3の側面]また、第1または第2の側面において、上記第1の演算手段は、第2の演算手段と、第3の演算手段とから構成され、上記第2の演算手段は、上記第2の記憶手段に記憶されている上記制御情報(L)および上記第3の記憶手段に記憶されている上記認証用補助情報(t)、または上記制御情報(L)、上記認証用補助情報(t)および上記第4の記憶手段に記憶されている上記ユーザ固有情報(du)に対し、所定の演算を施して上記認証の特徴情報(D)を算出し、上記第3の演算手段は、上記第1の記憶手段に記憶されている上記認証用データ(C)および上記第2の演算手段によって算出された上記認証の特徴情報に対し、所定の演算を施して上記証明用データ(R)を生成するようにしてもよい。
【0011】
[第4の側面]また第1の側面または第2の側面において、上記第1の演算手段は、第4の演算手段、第5の演算手段、および第6の演算手段とから構成され、上記第4の演算手段は、上記第1の記憶手段に記憶されている上記認証用データ(C)および上記第3の記憶手段に記憶されている上記認証用補助情報(t)に対して所定の演算を施し、上記第5の演算手段は、上記認証用データ(C)および上記第2の記憶手段に記憶されている上記制御情報(L)、または上記認証用データ(C)、上記制御情報(L)、および上記第4の記憶手段に記憶されている上記ユーザ固有情報(du)に対し、所定の演算を施し、上記第6の演算手段は、上記第4の演算手段および上記第5の演算手段の計算結果に対し、所定の演算を施して上記証明用データ(R)を生成するようにしてもよい。
【0012】
[第5の側面]第1〜第4の側面において、上記認証の特徴情報(D)は、上記認証用データ(C)の暗号化を行う暗号化鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)および該認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記第1の記憶手段に記憶されている上記証用データ(C)を暗号化することにより上記証明用データ(R)を生成し、上記検証手段は上記認証用データが正しく暗号化されているかどうかを確認することにより検証を行うようにしてもよい。
【0013】
[第6の側面]第5の側面において、第1の乱数生成手段を備え、上記認証用データ(C)は上記第1の乱数生成手段により生成された乱数としてもよい。
【0014】
[第7の側面]第5の側面において、第2の乱数生成手段と、認証用素データ(B)を記憶する第5の記憶手段と、上記認証用素データ(B)に対し、上記第2の乱数生成手段にて生成された乱数にて乱数効果を付与する第7の演算手段とを設け、上記認証用データ(C)は上記認証用素データ(B)に対し、上記第2の乱数生成手段により生成された乱数で乱数効果を施したものであるようにしてもよい。
【0015】
[第8の側面]第1〜第4の側面において、上記第1の記憶手段に記憶されている上記認証用データ(C)は、特定データ(K)を暗号化鍵(E)で暗号化したものであり、上記認証の特徴情報(D)は、上記特定データ(K)を暗号化した暗号化鍵(E)に対応する復号鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、上記検証手段は上記認証用データ(C)が正しく復号されているかどうかを確認することにより検証を行うようにしてもよい。
【0016】
[第9の側面]第8の側面において、上記特定データ(K)を記憶する第6の記憶手段を設け、さらに上記検証手段内に2つのデータを比較し同じかどうかを判定する比較手段を設け、上記検証手段は上記特定データ(K)と、上記証明用データ生成手段により生成された上記証明用データ(R)とを上記比較手段により比較することにより、検証を行うようにしてもよい。
【0017】
[第10の側面]第9の側面において、上記第6の記憶手段に代わり上記特定データ(K)に対し非衝突一方向性関数を施した値(HK)を記憶する第7の記憶手段を設け、さらに上記検証手段内にデータに対して非衝突一方向性関数を施した値を算出する第8の演算手段を設け、上記検証手段は上記特定データ(K)と、上記証明用データ生成手段により生成された上記証明用データ(R)とに、それぞれに非衝突一方向性関数を施した値を比較することにより、検証を行うようにしてもよい。
【0018】
[第11の側面]第8の側面において、上記特定データ(K)が、特定の桁の値が一定である、あるいは所定回数同じデータが繰り返されているなどの特徴を持ち、該検証手段内に上記特徴を持つかどうかを判定する判定手段を設け、上記検証手段は該証明用データ生成手段により生成された証明用データ(R)が上記特定データ(K)と同様の特徴を持つかどうかを判断することにより検証を行うようにしてもよい。
【0019】
[第12の側面]第8の側面において、入力を必要とする情報処理手段を設け、上記特定データ(K)は上記情報処理手段の正しい入力であることを特徴とし、上記検証手段は上記証明用データ生成手段により生成された上記証明用データ(R)を上記情報処理手段の入力として与え、上記情報処理手段が正常に動作することを確認することにより検証を行うようにしてもよい。
【0020】
[第13の側面]第8〜10の側面において、第1の乱数生成手段を設け、上記特定データ(K)を上記第1の乱数生成手段により生成された乱数としてもよい。
【0021】
[第14の側面]第8〜12の側面において、第2の乱数生成手段と、上記特定データ(K)を暗号化したものである認証用素データ(B)を記憶する第5の記憶手段と、上記認証用素データ(B)に対し、上記第2の乱数生成手段にて生成された乱数にて乱数効果を付与する第7の演算手段と、上記証明用データ(R)に対し、乱数効果を除去する第9の演算手段とを設け、上記認証用データ(C)は、上記認証用素データ(B)に対し、上記第2の乱数生成手段により生成された乱数で乱数効果をかけたものであり、上記第9の演算装置にて上記証明用データ(R)の乱数効果を除去した結果に対し検証を行うようにしてもよい。
【0022】
[第15の側面]第5〜14の側面において、上記認証用データ(C)または上記特定データ(K)を暗号化する暗号化方式が非対称鍵暗号方式としてもよい。
【0023】
[第16の側面]第15の側面において、上記非対称鍵暗号方式を公開鍵暗号方式としてもよい。
【0024】
[第17の側面]第5〜14の側面において、上記該認証用データ(C)または上記特定データ(K)を暗号化する暗号化方式を対称鍵暗号方式としてもよい。
【0025】
[第18の側面]第1〜4の側面において、上記該認証の特徴情報(D)は、デジタル署名関数における署名鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)を用いて、上記第1の記憶装置に記憶されている上記認証用データ(C)に対して署名を行うことにより上記証明用データ(R)を生成し、上記検証手段は上記証明用データ(R)が認証用データ(C)に対する正しい署名かどうかを確認することにより検証を行うようにしてもよい。
【0026】
[第19の側面]第18の側面において、第1の乱数生成手段を設け、上記認証用データ(C)を上記第1の乱数生成手段により生成された乱数としてもよい。
【0027】
[第20の側面]第18の側面において、第2の乱数生成手段と、認証用素データ(B)を記憶する第5の記憶手段と、上記認証用素データ(B)に対し、上記第2の乱数生成手段にて生成された乱数にて乱数効果を付与する第7の演算手段とを設け、上記認証用データ(C)は上記認証用素データ(B)に対し、上記第2の乱数生成手段により生成された乱数で乱数効果をかけたものとしてもよい。
【0028】
[第21の側面]第16の側面において、上記暗号化方式が法n(nは十分大きな素数p,qの積)のもとでのRSA(Rivest−Shamir−Adelman)公開鍵暗号方式であり、上記法数nを記憶する第8の記憶手段と、公開鍵Eを記憶する第9の記憶手段とを設け、認証の特徴情報(D)はRSA公開鍵暗号方式における上記公開鍵Eに対応する秘密鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)、上記認証用補助情報(t)、および法数n、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、法数n、および該ユーザ固有情報(du)を用いて、上記第1の記憶手段に記憶されている認証用データ(C)を暗号化した証明用データ(R)を生成し、上記検証手段は、上記公開鍵Eの値だけべき乗し、その結果と上記認証用データ(C)とが上記法nのもとで合同であるかどうかを確認することにより検証を行うようにしてもよい。
【0029】
[第22の側面]第16の側面において、上記暗号化方式が法n(nは十分大きな素数p,qの積)のもとでのRSA公開鍵暗号方式であり、上記法数nを記憶する第8の記憶手段と、公開鍵Eを記憶する第9の記憶手段を設け、上記認証の特徴情報(D)はRSA公開鍵暗号方式における上記公開鍵Eに対応する秘密鍵であり、上記第1の記憶手段に記憶されている認証用データ(C)は特定のデータ(K)を上記法nのもとで上記公開鍵Eの値だけべき乗したものであり、上記第1の演算手段は、少なくとも上記制御情報(L)、上記認証用補助情報(t)、および法数n、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、法数n、および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号した証明用データ(R)を生成し、上記検証手段は、上記証明用データ(R)が正しく復号されたものであるかどうかを確認することにより検証を行うようにしてもよい。
【0030】
[第23の側面]第18の側面において、上記暗号化方式が法n(nは十分大きな素数p,qの積)のもとでのRSA公開鍵暗号方式であり、上記法数nを記憶する第8の記憶手段と、検証鍵Eを記憶する第9の記憶手段を備え、上記認証の特徴情報(D)はRSA公開鍵暗号方式における検証鍵Eに対応する署名鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)、上記認証用補助情報(t)、および法数n、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、上記ユーザ固有情報(du)、および法数nを用いて、上記第1の記憶手段に記憶されている認証用データ(C)に対して署名をした証明用データ(R)を生成し、上記検証手段は、上記証明用データ(R)を上記検証鍵Eの値だけべき乗し、署名が正規のものであるかどうかを確認することにより検証を行うようにしてもよい。
【0031】
[第24の側面]第21〜23の側面において、上記第3の記憶手段に記憶されている認証用補助情報(t)は、上記認証の特徴情報(D)から少なくとも上記制御情報(L)を引数に取る所定の関数fの値を加えるかまたは減じ、さらに上記法nおよび上記制御情報(L)に依存する非衝突性関数値ω(=G(n,L))と法nのオイラー数Φ(n)(ただしΦ(n)=(p−1)(q−1))の積を加えて得られるデータ(t=D+f(L)+ωΦ(n)またはt=D−f(L)+ωΦ(n))であり、上記第1の演算手段は、上記制御情報(L)、上記法nの値および認証用データ(C)から、上記認証用データを上記法nのもとで上記認証の特徴情報(D)の値だけべき乗した値(R=CD mod n)を計算するようにしてもよい。
【0032】
[第25の側面]第21〜23の側面において、上記第3の記憶手段に記憶されている認証用補助情報(t)は、上記認証の特徴情報(D)から少なくとも上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を加えるかまたは減じ、さらに上記法n、上記制御情報(L)、および上記ユーザ固有情報(du)に依存する非衝突性関数値ω(=G(n,L,du))と法nのオイラー数Φ(n)との積を加えて得られるデータ(t=D+f(L,du)+ωΦ(n)またはt=D−f(L,du)+ωΦ(n))であり、上記第1の演算手段は、上記制御情報(L)、上記法nの値、上記ユーザ固有情報(du)および上記認証用データ(C)から、上記認証用データを上記法nのもとで上記認証の特徴情報(D)の値だけべき乗した値(R=CD mod n)を計算するようにしてもよい。
【0033】
[第26の側面]第21〜23の側面において、上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、上記認証の特徴情報(D)から少なくとも上記制御情報(L)および上記法nを引数に取る所定の関数fの値を加えるかまたは減じて得られるデータ(t=D+f(L,n)またはt=D−f(L,n))であり、上記第1の演算手段は、上記証明用データの生成を行うための制御情報(L)、上記法nの値、および上記認証用データ(C)から、上記認証用データを上記法nのもとで上記認証の特徴情報(D)の値だけべき乗した値(R=CD mod n)を計算するようにしてもよい。
【0034】
[第27の側面]第21〜23の側面において、上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、上記認証の特徴情報(D)から少なくとも上記制御情報(L)、上記法n、および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を加えるかまたは減じて得られるデータ(t=D+f(L,n,du)またはt=D−f(L,n,du))であり、上記第1の演算手段は、上記制御情報(L)、上記法nの値、上記ユーザ固有情報(du)および上記認証用データ(C)から、上記認証用データを上記法nのもとで上記認証の特徴情報(D)の値だけべき乗した値(R=CD mod n)を計算するようにしてもよい。
【0035】
[第28の側面]第21〜27の側面において、上記第4の演算手段は、上記法nのもとで上記第1の記憶手段に記憶されている上記認証用データ(C)を上記第3の記憶手段に記憶されている認証用補助情報(t)の値だけべき乗し、上記第5の演算手段は、上記制御情報(L)および上記法n、または上記制御情報(L)、上記法nおよび上記ユーザ固有情報(du)を引数に取る所定の関数fの値を計算し、上記法nのもとで上記認証用データ(C)を上記所定の関数fの値だけべき乗し、上記第6の演算手段は、上記認証用補助情報(t)がΦ(n)を法として上記認証の特徴情報(D)と所定の関数fの値との差に等しい場合には、上記第3の演算手段の演算結果および上記第4の演算手段の演算結果の積を計算し、上記認証用補助情報(t)がΦ(n)を法として上記認証の特徴情報(D)と所定の関数fの値との和に等しい場合には、上記第5の演算手段の演算結果の逆数および上記第4の演算手段の演算結果の積を計算することで、上記証明用データを生成するようにしてもよい。
【0036】
[第29の側面]第21〜28の側面において、上記第1の記憶手段に記憶されている上記認証用データ(C)は、上記第7の演算手段にて、上記第5の記憶手段に記憶されている認証用素データ(B)と上記第2の乱数生成手段により生成された乱数(r)を上記第9の記憶手段に記憶されている公開鍵Eの値だけべき乗した値(rE)とを法nのもとで掛けた値(rEB mod n)であり、上記第9の演算手段は、上記証明用データ生成手段により生成された上記証明用データ(R)に対し、上記乱数(r)の逆数を掛けることにより乱数効果を除去し、
上記検証手段は、上記乱数効果を除去したデータに対し検証を行うようにしてもよい。
【0037】
[第30の側面]第15の側面において、上記暗号化方式が法p(pは十分大きな素数)のもとでのPohlig−Hellman非対称暗号方式であり、上記法数pを記憶する第8の記憶手段と、一方の鍵Eを記憶する第9の記憶手段を備え、上記認証の特徴情報(D)はPohlig−Hellman非対称暗号方式における一方の鍵Eに対応するもう一方の鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)および該認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、および上記ユーザ固有情報(du)を用いて、上記第1の記憶手段に記憶されている上記認証用データ(C)を暗号化した証明用データ(R)を生成し、上記検証手段は、上記証明用データ(R)を上記一方の鍵(E)の値だけべき乗し、その結果と上記認証用データ(C)とが上記法pのもとで合同であるかどうかを確認することにより検証を行うようにしてもよい。
【0038】
[第31の側面]第15の側面において、上記暗号化方式が法p(pは十分大きな素数)のもとでのPohlig−Hellman非対称暗号方式であり、上記法数pを記憶する第8の記憶手段と、一方の鍵Eを記憶する第9の記憶手段を備え、上記認証の特徴情報(D)はPohlig−Hellman非対称暗号方式における上記一方の鍵Eに対応するもう一方の鍵であり、上記該第1の記憶手段に記憶されている認証用データ(C)は特定のデータを上記法pのもとで上記一方の鍵(E)の値だけべき乗したものであり、上記第1の演算手段は、少なくとも上記制御情報(L)、上記認証用補助情報(t)、および上記法数(p)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、上記ユーザ固有情報(du)、および上記法数(p)を用いて、上記認証用データ(C)を復号した証明用データ(R)を生成し、上記検証手段は、上記証明用データ(R)が正しく復号されたものであるかどうかを確認することにより検証を行うようにしてもよい。
【0039】
[第32の側面]第30〜31の側面において、上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、上記認証の特徴情報(D)から少なくとも上記制御情報(L)および上記法pを引数に取る所定の関数fの値を加えるかまたは減じて得られるデータ(t=D+f(L,p)またはt=D−f(L,p))であり、上記第1の演算手段は、上記証明用データの生成を行うための制御情報(L)、上記法pの値、および上記認証用データ(C)から、認証用データを上記法pのもとで上記認証の特徴情報(D)の値だけべき乗した値(R=CDmod p)を計算するようにしてもよい。
【0040】
[第33の側面]第30〜31の側面において、上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、上記認証の特徴情報(D)から少なくとも上記制御情報(L)、上記法p、および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を加えるかまたは減じて得られるデータ(t=D+f(L,p,du)またはt=D−f(L,p,du))であり、上記第1の演算手段は、上記証明用データの生成を行うための制御情報(L)、上記法pの値、上記ユーザ固有情報(du)および上記認証用データ(C)から、上記認証用データを上記法pのもとで上記認証の特徴情報(D)の値だけべき乗した値(R=CDmod p)を計算するようにしてもよい。
【0041】
[第34の側面]第30〜33の側面において、上記第4の演算手段は、上記法pのもとで上記第1の記憶手段に記憶されている認証用データ(C)を上記第3の記憶手段に記憶されている認証用補助情報(t)の値だけべき乗し、上記第5の演算手段は、上記制御情報(L)および上記法p、または上記制御情報(L)、上記法pおよび上記ユーザ固有情報(du)を引数に取る所定の関数fの値を計算し、上記法pのもとで上記認証用データ(C)を上記所定の関数fの値だけべき乗し、上記第6の演算手段は、上記認証用補助情報(t)が上記認証の特徴情報(D)と上記所定の関数fの値との差に等しい場合には、上記第4の演算手段の演算結果および上記第5の演算手段の演算結果の積を計算し、上記認証用補助情報(t)が上記認証の特徴情報(D)と上記所定の関数fの値との和に等しい場合には、上記第5の演算手段の演算結果の逆数および上記第4の演算手段の演算結果の積を計算することで、上記証明用データを生成するようにしてもよい。
【0042】
[第35の側面]第30〜34の側面において、上記第1の記憶手段に記憶されている上記認証用データ(C)は、上記第7の演算手段にて、上記第5の記憶手段に記憶されている上記認証用素データ(B)と上記第2の乱数生成手段により生成された上記乱数(r)を上記第9の記憶手段に記憶されている一方の鍵Eの値だけべき乗した値(rE)とを法pのもとで掛けた値(rEB mod p)であり、上記第9の演算手段は、上記証明用データ生成手段により生成された証明用データ(R)に対し、上記乱数(r)の逆数を掛けることにより乱数効果を除去し、上記検証手段は、上記乱数効果を除去したデータに対し検証を行うようにしてもよい。
【0043】
[第36の側面]第17の側面において、上記暗号化方式がDES(DataEncryption Standard)のような対称鍵暗号方式であり、上記認証の特徴情報(D)は対称暗号方式の共通鍵であり、上記第1の演算手段は、少なくとも上記制御情報(L)、および該認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、および上記ユーザ固有情報(du)を用いて、上記第1の記憶手段に記憶されている認証用データ(C)を共通鍵Dで暗号化した証明用データ(R)を生成し、上記検証手段は、証明用データ(R)を共通鍵Dで復号し、その結果が認証用データと同一であるかどうかを確認することにより検証を行うようにしてもよい。
【0044】
[第37の側面]第17の側面において、上記暗号化方式がDESのような対称鍵暗号方式であり、上記認証の特徴情報(D)は対称暗号方式の共通鍵であり、上記第1の記憶手段に記憶されている認証用データ(C)は特定のデータ(K)を上記対称鍵暗号方式にて暗号化したものであり、上記第1の演算手段は、少なくとも上記制御情報(L)、および該認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)、および上記ユーザ固有情報(du)を用いて、上記第1の記憶手段に記憶されている上記認証用データ(C)を共通鍵Dで復号した証明用データ(R)を生成し、上記検証手段は、上記証明用データ(R)が上記認証用データ(C)を正しく復号したものであるかどうかを確認することにより検証を行うようにしてもよい。
【0045】
[第38の側面]第5〜20の側面において、上記第3の記憶手段に記憶されている認証用補助情報(t)は、少なくとも上記制御情報(L)、または上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を鍵として復号されるように上記認証の特徴情報(D)を第2の暗号化方法にて暗号化したものであり、上記第1の演算手段は、上記所定関数fの値を計算した後、上記認証用補助情報(t)を復号することにより上記認証の特徴情報(D)を得て、それをもとに上記証明用データを生成するようにしてもよい。
【0046】
[第39の側面]第5〜20の側面において、上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、少なくとも上記制御情報(L)、または上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を鍵として復号されるように上記認証の特徴情報(D)および上記制御情報(L)を第2の暗号化方法にて暗号化したものであり、上記第1の演算手段は、上記所定関数fの値を計算した後、上記認証用補助情報(t)を復号することにより上記認証の特徴情報(D)および上記制御情報(L)を得て、上記制御情報(L)と上記所定関数fの値の計算に用いた上記制御情報(L)とが同一であった場合のみ、上記認証の特徴情報(D)をもとに上記証明用データを生成するようにしてもよい。
【0047】
[第40の側面]第5〜20の側面において、上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、少なくとも上記制御情報(L)、または上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を鍵として復号されるように上記認証の特徴情報(D)を第2の暗号化方法にて暗号化したもの(t1)と、上記認証の特徴情報(D)および上記制御情報(L)を引数に取る非衝突性一方向性関数の値(t2=g(D,L))とからなり、上記第1の演算手段は、上記所定関数fの値を計算した後、上記認証用補助情報(t)を復号することにより上記認証の特徴情報(D)を得て、上記認証の特徴情報(D)および上記所定の関数fの値の計算に用いた上記制御情報(L)とから非衝突性一方向性関数の値を算出した結果が、先に算出した非衝突性一方向関数の値(t2)と同一であった場合のみ、上記認証の特徴情報(D)をもとに上記証明用データを生成するようにしてもよい。
【0048】
[第41の側面]第38〜40の側面において、上記第2の暗号化方法を非対称鍵暗号としてもよい。
【0049】
[第42の側面]第41側面において、上記第2の暗号化方法を公開鍵暗号としてもよい
[第43の側面]第38〜40の側面において、上記第2の暗号化方法を対称鍵暗号としてもよい。
【0050】
[第44の側面]第24〜29の側面または第32〜35の側面において、上記所定の関数fが一方向性非衝突性関数であるようにしてもよい。
【0051】
[第45の側面]第12の側面において、上記特定データ(K)は保護を必要とするデジタルデータであり、上記特定データ(K)を暗号化したものを上記認証用データ(C)とし、上記証明用データ生成手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、正しく認証された場合に結果として復号された保護を必要とするデジタルデータ(K)を得ることができるようにしてもよい。
【0052】
[第46の側面]第12の側面において、上記特定データ(K)を鍵として復号されるように暗号化されたデータ(X)を保持する第10の記憶手段を設け、上記情報処理手段は、上記証明用データ(R)を鍵として上記第10の記憶手段に格納されたデータ(X)を復号する第10の演算手段であり、上記特定データ(K)を暗号化したものを上記認証用データ(C)または上記認証用素データ(B)とし、上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、上記検証手段は、上記情報処理手段により上記証明用データ(R)または上記証明用データ(R)から乱数効果を除去したものを鍵として上記第10の記憶手段に記憶されている上記データ(X)を上記第10の演算手段にて正常に復号できるかどうかを検証するようにしてもよい。
【0053】
[第47の側面]第45の側面において、上記情報処理手段は、ソフトウエアプログラムを実行する第1のプログラム実行手段であり、上記保護を必要とするデジタルデータがソフトウエアプログラムであり、上記証明用データを生成することにより上記ソフトウエアプログラムを復号して、上記第1のプログラム実行手段により上記ソフトウエアプログラムを実行するようにしてもよい。
【0054】
[第48の側面]第46の側面において、上記特定データ(K)を鍵として復号されるように一部または全部を暗号化されたプログラム(X)を保持する第10の記憶手段を設け、上記情報処理手段は、上記証明用データ(R)を鍵として上記第10の記憶手段に格納された上記プログラム(X)を復号する上記第10の演算手段と、復号されたプログラムを実行する上記第1のプログラム実行手段とを含み、上記特定データ(K)を暗号化したものを上記認証用データ(C)または上記認証用素データ(B)とし、上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、上記検証手段は、上記情報処理手段により上記証明用データ(R)または上記証明用データ(R)から乱数効果を除去したものを鍵として上記第10の記憶手段に記憶されている上記プログラム(X)を復号して実行し、正常に動作するかどうかを検証するようにしてもよい。
【0055】
[第49の側面]第5〜20の側面において、予め用意された、またはその場で生成された認証用データ(C)を記憶する第11の記憶手段と、上記証明用データ生成手段にて生成された証明用データ(R)を記憶する第12の記憶手段と、第12の記憶手段に記憶された証明用データの正当性(R)を確認する検証手段とを具備した検証装置と、上記認証用データ(C)を記憶する上記第1の記憶手段、上記制御情報(L)を記憶する上記第2の記憶手段、上記認証用補助情報(t)を記憶する上記第3の記憶手段、および上記証明用データ生成手段を具備した証明装置とから構成され、上記検証装置は上記第9の記憶手段に記憶されている認証用データ(C)を上記第1の記憶手段に書き出し、上記証明装置は上記第1の記憶手段に書き込まれた認証用データ(C)をもとに証明用データ(R)を生成し、上記第9の記憶手段に書き込み、上記検証装置は、上記第9の記憶手段に書き込まれた証明用データ(R)を用いて認証を行うようにしてもよい。
【0056】
[第50の側面]第5〜49の側面おいて、上記第4の記憶手段が、内部のデータを不正に外部から観測することを困難ならしめる防御手段中に保持されているようにしてもよい。
【0057】
[第51の側面]第5〜50の側面において、上記証明用データ生成手段が、内部の処理手続きを外部から観測することを困難ならしめる防御手段中に保持されているようにしてもよい。
【0058】
[第52の側面]第5〜50の側面において、上記第5の演算手段および上記証明用データ生成装置制御手段が、内部の処理手続きを外部から観測することを困難ならしめる防御手段中に保持されているようにしてもよい。
【0059】
[第53の側面]第5〜52の側面において、上記第4の記憶手段がICカードなどの携帯可能な記憶装置として構成されているようにしてもよい。
【0060】
[第54の側面]第5〜52の側面において、上記第4の記憶手段および上記証明データ生成手段がICカードなどの携帯可能な記憶演算装置として構成されているようにしてもよい。
【0061】
[第55の側面]第5〜52の側面において、上記第4の記憶手段、上記第5の演算手段および上記証明用データ生成装置制御手段がICカードなどの携帯可能な記憶演算装置として構成されているようにしてもよい。
【0062】
[第56の側面]第49の側面において、上記証明装置および上記検証装置が、同一の筐体に含まれるようにしてもよい。
【0063】
[第57の側面]第5〜56の側面において、時刻を示す時計を設け、上記制御情報(L)は、認証を行うことができる有効期間であり、認証を行う時の時刻が上記有効期間内にある時のみ上記証明用データ(R)を生成するようにしてもよい。
【0064】
[第58の側面]第5〜56の側面において、今までに認証を行った回数を記録する第13の記憶手段を設け、上記制御情報(L)は、認証を行う回数有効範囲であり、上記第13の記憶手段の値が上記有効範囲内にある時のみ上記証明用データ(R)を生成するようにしてもよい。
【0065】
[第59の側面]第5〜56の側面において、時刻を示す時計と、認証を行った結果に従いサービスを開始した時間およびサービスを終了した時間からユーザがサービスを享受した時間を計算する第11の演算手段と、今までにユーザがサービスを享受した時間の合計値を記録する第14の記憶手段を設け、上記制御情報(L)は、総利用時間の値の有効範囲であり、上記第14の記憶手段の値が上記有効範囲内にある時のみ上記認証明用データ(R)を生成するようにしてもよい。
【0066】
[第60の側面]第5〜56の側面において、認証を行うのに必要なポイント残数または残高情報を記憶する第15の記憶手段を設け、上記制御情報(L)は、一回の認証に必要なポイント数または金額情報であり、上記第15の記憶手段の値が上記一回の認証に必要なポイント数または金額情報以上の場合のみ上記証明用データ(R)を生成し、上記第15の記憶手段に記憶されている値を上記制御情報(L)に対応する値だけ減ずるようにしてもよい。
【0067】
[第61の側面]第5〜56の側面において、外部に認証を行った結果または認証を行った結果享受されるサービスに関する履歴を出力する機能を設け、上記制御情報(L)は、履歴を出力するかどうかのフラグであり、履歴を出力することが指定されている場合には認証の履歴を出力し、上記証明用データ(R)を生成するようにしてもよい。
【0068】
[第62の側面]第5〜56の側面において、指紋、声紋、アイリスパターン、網膜パターンなどの個人を識別する特徴情報を抽出するための個体識別情報抽出手段を設け、上記制御情報(L)は、個人を識別するための特徴情報または上記特徴情報が取り得る範囲であり、上記個体識別情報抽出手段により抽出された特徴情報と上記証明用データの生成を行うための制御情報(L)の間に一定の関係がある場合にのみ上記証明用データ(R)を生成するようにしてもよい。
【0069】
[第63の側面]第5〜56の側面において、パスワードを入力するための入力手段を設け、上記制御情報(L)は上記入力手段からの入力であり、上記パスワードが入力された場合に上記証明用データ(R)を生成するようにしてもよい。
【0070】
[第64の側面]第5〜56の側面において、プログラムを実行するための第2のプログラム実行手段手段を設け、上記制御情報(L)は上記第2のプログラム実行手段にて実行されるプログラムであり、上記プログラムが実行された結果、特定の状態にあるまたは特定の状態で終了した場合に上記証明用データ(R)を生成するようにしてもよい。
【0071】
[第65の側面]本発明の第65の側面によれば、認証用データに対してユーザが生成した証明用データの正当性を検証することで所定の情報処理資源へのユーザのアクセス権限を認証するアクセス制御装置に、上記認証用データ(C)を記憶する第1の記憶手段と、証明用データの生成を行うための制御情報(L)を記憶する第2の記憶手段と、少なくとも上記制御情報(L)および認証の特徴情報(D)に対して所定の演算を行うことにより得られる認証用補助情報(t)を記憶する第3の記憶手段と、上記制御情報(L)が特定の条件を満たす場合にのみ、少なくとも上記制御情報(L)および上記認証の特徴情報(D)から上記証明用データを生成する証明用データ生成手段と、上記証明用データを検証する検証手段と、上記検証結果が正しい場合にユーザに上記情報処理資源へのアクセスを認めるアクセス制御手段とを設けるようにしている。
【0072】
この構成においては、アクセス制御に際して、安全性を確保したままで、有効期限や利用回数制限やその他の条件を設定でき、しかもそれらの条件が改竄された場合にはアクセスが行われないようにすることができる。
【0073】
[第66の側面]本発明の第66の側面によれば、認証用データに対してユーザが生成した証明用データの正当性を検証することでプログラムの実行権限を認証するプログラム実行制御装置に、上記認証用データ(C)を記憶する第1の記憶手段と、上記証明用データの生成を行うための制御情報(L)を記憶する第2の記憶手段と、少なくとも上記制御情報(L)および認証の特徴情報(D)に対して所定の演算を行うことにより得られる認証用補助情報(t)を記憶する第3の記憶手段と、上記制御情報(L)が特定の条件を満たす場合にのみ、少なくとも上記制御情報(L)および上記認証の特徴情報(D)から上記証明用データを生成する証明用データ生成手段と、上記証明用データを検証する検証手段と、上記検証結果が正しい場合に上記プログラムの実行を行う制御手段とを設けるようにしている。
【0074】
この構成においては、プルグラム実行制御に際して、安全性を確保したままで、有効期限や利用回数制限やその他の条件を設定でき、しかもそれらの条件が改竄された場合にはプログラムが実行されないようにすることができる。
【0075】
[第67の側面]本発明の第67の側面によれば、特定の条件が満たされた場合にのみ、あるメッセージに対するデジタル署名を生成する条件付きデジタル署名装置に、上記メッセージ(C)を記憶する第1の記憶手段と、署名の生成を行うための条件(L)を記憶する第2の記憶手段と、少なくとも上記条件(L)および署名鍵情報(D)に対して所定の演算を行うことにより得られる署名用補助情報(t)を記憶する第3の記憶手段と、上記条件(L)が特定の条件を満たす場合にのみ、少なくとも上記条件および上記署名用補助情報(t)から署名を生成する署名生成手段とを設けるようにしている。
【0076】
この構成においては、期間などの条件が満たされている場合のみ電子署名が生成されるようにすることができる。
【0077】
[第68の側面]本発明の第68の側面によれば、証明用データ(R)または署名(R)を生成するために用いられる認証用補助情報(t)または署名用補助情報(t)を生成する証明用補助情報生成装置に、認証の特徴情報または署名鍵情報を受け取る手段と、上記証明用データの生成を行うための制御情報(L)または上記署名の生成を行うための条件(L)を受け取る手段と、上記認証の特徴情報または署名鍵情報、および上記証明用データの生成を行うための制御情報(L)または署名の生成を行うための条件(L)から証明用補助情報(t)または署名用補助情報(t)を算出する手段とを設けるようにしている。
【0078】
この構成においては、安全性を確保したままで、認証や署名に関して、有効期限、利用回数制限、その他の条件の設定を可能にする、証明用または署名用の補助情報を生成できる。
【0079】
[第69の側面]本発明の第69の側面によれば、証明用データ(R)または署名(R)を生成するために用いられる認証用補助情報(t)または署名用補助情報(t)を生成する証明用補助情報生成装置に、認証の特徴情報または署名鍵情報を受け取る手段と、上記証明用データの生成を行うための制御情報(L)または上記署名の生成を行うための条件(L)を受け取る手段と、ユーザ固有情報(du)を受け取る手段と、上記ユーザ固有情報(du)、上記認証の特徴情報または署名鍵情報、および上記証明用データの生成を行うための制御情報(L)または署名の生成を行うための条件(L)から証明用補助情報(t)または署名用補助情報(t)を算出する手段とを設けるようにしている。
【0080】
この構成においても、安全性を確保したままで、認証や署名に関して、有効期限、利用回数制限、その他の条件の設定を可能にする、証明用または署名用の補助情報を生成できる。また、ユーザ固有情報により一層プロテクトを確実なものにできる。
【0081】
なお、本発明は、方法として実現することも可能であるし、少なくとも一部をプログラム製品の態様で実現することもできる。
【0082】
【発明の実施の形態】
個々の実施例の説明に入る前に、本発明の利用形態について簡単に説明する。本発明は広くサービスを享受する権利の認証に関するものであり、特に認証を行うための条件や手続きを指定する技術に関するものである。そして発明を構成する要素は大きく、権利を証明するための証明装置と、証明装置により生成されたデータをもとに正当な権利を保持しているかどうかを判断する検証装置からなる。証明装置は利用者が保持しており、検証装置はサービスを提供する場所に有り、利用者がサービスを享受しようとした場合サービスを享受する権利を検証装置に対し証明することで、サービスを享受できるようになる。
【0083】
図35は本発明の利用形態の一例である。例えばコンサート会場の入り口に検証装置が設置して有り、利用者は予め証明装置、コンサートのチケットに相当する認証用補助情報(t)およびチケットの日付、席番等が記述された証明用データの生成を行うための制御情報(L)を用意し、検証装置に対し証明装置、認証用補助情報(t)および証明用データの生成を行うための制御情報(L)が正当なものであることを証明することによりゲートが開き入場できるようになっている。このような利用形態はなにもゲートの開閉を伴うものにとどまらず、例えばさまざまな交通機関において、乗務員に対し正当な有効期限付き切符を保持していること示すためのものであってもよい。
【0084】
図36は本発明のまた別の利用形態の例である。この例では検証装置は汎用コンピュータであり、証明装置は上記コンピュータのスロットに挿入して利用する、あるいは上記コンピュータと赤外線などを用いて通信をおこなうものである。利用者が例えばあるアプリケーションソフトウエアを利用しようとする時、上記コンピュータは利用者の証明装置に対し上記アプリケーションソフトウエアを利用する権利を証明するように求め、利用者は証明装置、認証用補助情報(t)および証明用データの生成を行うための制御情報(L)を用いて証明を行い、正当な証明が行われた場合のみアプリケーションが利用できるというものである。
【0085】
以下この発明の個々の実施例について説明する。
【0086】
[実施例1]
実施例1は認証用データ(C)として乱数を用いて、証明用データ(R)は法nにおけるRSA暗号方式による暗号化に基づいて生成され、証明用データが認証の特徴情報(D)に基づいて暗号化されているかを検証することにより、認証を行う場合の例である。このとき認証の特徴情報(D)はRSA公開鍵暗号方式の秘密鍵に相当し、φ(n)と認証の特徴情報(D)は互いに素の関係に有り、後述の公開鍵EとはDE=1 mod φ(n)の関係にある(φ(n)はオイラー数で、この例ではφ(n)=(p−1)(q−1)となる)。なお、証明用データの生成を行うための制御情報(L)の具体例としては利用期限制限の場合について説明する。このようにすることにより例えば一定の期間のみ特定のサービスを受けることができるような定期券を実現することができる。
【0087】
図1は実施例1における原理構成図である。実施例1においては本発明に係る認証装置1000は検証装置100と証明装置200からなる。
【0088】
図1に示す制御装置300は認証を行った結果に基づいて行う動作を制御するための装置であり、例えば入室管理に本発明を適用させる場合には、認証が成功したときにドアの施錠をはずしたり、逆に認証が失敗した時にドアを閉めたり、また単に認証の結果をランプやディスプレイを通して提示したりするためのものである。
【0089】
検証装置100は認証用データ(C)として乱数を生成するための第1の乱数生成装置61と、第1の乱数生成装置61で生成された乱数を証明装置200へ送るために一時的に記憶する第11の記憶手段11と、証明装置200により生成された証明用データ(R)を記憶する第12の記憶手段12と、RSA暗号方式の法n(nは十分に大きな素数p,qの積)を記憶する第8の記憶手段8と、RSAの公開鍵E(上記認証の特徴情報(D)の逆数:ED=1 modφ(n))を記憶する第9の記憶手段9と、証明用データ(R)は認証用データ(C)を正しく暗号化したものであるかを検証する検証手段51を備える。
【0090】
証明装置200は、検証装置100が生成した認証用データ(C)を受け取る第1の記憶手段1と、証明用データの生成を行うための制御情報(L)を記憶する第2の記憶手段2と、認証の特徴情報(D)および証明用データの生成を行うための制御情報(L)から算出される証明用補助情報(t)を記憶する第3の記憶手段3と、時刻を得るために用いる時計81と、証明用データの生成を行うための制御情報(L)に記載されている有効期間内に時計81から得られる時刻が含まれている場合にのみ、認証用データ(C)、証明用データの生成を行うための制御情報(L)および証明用補助情報(t)から証明用データ(C)を認証の特徴データ(D)で暗号化した証明用データ(R=CD mod n)を計算する証明用データ生成手段52を備える。
【0091】
図2および図3はそれぞれ証明用データ生成手段52の内部構成の一例であり、ともに大きく分けて証明用データ生成手段制御手段91および第1の演算装置31から構成される。図2に示すものは、一旦認証の特徴情報(D)を算出した後、証明用データ(C)を認証の特徴データ(D)で暗号化するためものである。図2の証明用データ生成装置制御手段91は、利用期限制限情報である証明用データの生成を行うための制御情報(L)が特定の条件を満たすかどうかを判定し、満たされている場合には第1の演算手段を用いて証明用データ(C)を認証の特徴データ(D)で暗号化してその値を、満たされていない場合には何らかのエラーコードを返す。図2における第1の演算手段31は、証明用データの生成を行うための制御情報(L)を引数にして所定の関数の値f(L)を計算し、その結果と認証用補助情報(t)の値から認証の特徴データ(D)の値を計算する第2の演算装置32と、認証用データ(C)を法nのもとで認証の特徴データ(D)の値だけべき乗する第3の演算装置33とを備える。
【0092】
なお、所定の関数fは一方向性と非衝突性の性格を持つ関数であることが望ましい。
【0093】
また、図3に示す証明用データ生成手段52は第1の演算手段を第4、5、6の3つの演算手段(34、35、36)にて構成している。第4の演算装置34は証明用データの生成を行うための制御情報(L)を引数にして所定の関数の値を算出し、証明用データ(C)の値を上記算出結果の値だけべき乗して、第5の演算装置35は証明用データ(C)の値を証明用補助情報(t)の値だけべき乗して、第6の演算装置36は第4の演算装置34および54の演算装置35の演算結果から認証用データ(C)を法nのもとで認証の特徴データ(D)の値だけべき乗した値を算出する。具体的には認証用補助情報(t)が認証の特徴情報(D)、証明用データの生成を行うための制御情報(L)を引数に取る所定の関数の値およびφ(n)の値の倍数の和として算出される場合(t=D+f(L)+ωφ(n))には法nのもとでCtにCf(L)の逆数を掛けることによりCDを求めることができる。また認証用補助情報(t)が認証の特徴情報(D)から証明用データの生成を行うための制御情報(L)を引数に取る所定の関数の値を引いた後におφ(n)の値の倍数を加えて算出される場合(t=D−f(L)+ωφ(n))には法nのもとでCtにCf(L)を掛けることによりCDを求めることができる。この例では所定の関数fの引数として証明用データの生成を行うための制御情報(L)のみを想定したが、証明用データの生成を行うための制御情報(L)および法数nを引数として取るようにすると同様に認証用補助情報(t)がt=D±f(L,n)の場合にも対応できる(図4、5)。
【0094】
なお、証明装置200にて証明用データを算出するのに法数nが必要となるが本実施例では法数nは認証用データ(C)と共に証明装置200に渡されるものとする。
【0095】
次に図6のフローチャートを用いて認証装置1000の動作を説明する。
【0096】
まず認証を行うための準備としてユーザは予め認証用補助情報(t)および認証用補助情報の有効期限を示している証明用データの生成を行うための制御情報(L)を入手する(Step101)。認証を行うにあたり検証装置100は第1の乱数生成装置61により乱数を生成し(Step102)、それを認証用データとして第11の記憶手段11に記憶し、証明装置200に渡す(Step103)。証明装置200ではまず、時計81により示されている時刻が証明用データの生成を行うための制御情報(L)に記載されている有効期限内に含まれているかどうかを判定し(Step104)、有効期限内に含まれていれば認証用データ(C)を認証の特徴情報(D)で暗号化した値を計算し(Step105)、その値を証明用情報(R)として検証装置に渡す(Step106)。検証装置100は証明用データを認証の特徴情報(D)に対応する公開鍵Eにて復号し(Step107)、その結果が元の認証用データ(C)と等しいかどうかを判定する(Step108)。もし、認証用補助情報(t)および認証用補助情報の有効期限を示している証明用データの生成を行うための制御情報(L)が正当なものであれば、証明用情報(R)は、
【0097】
【数1】
R=CD mod n
となり、これをE乗することで、
【0098】
【数2】
E≡CDE mod n
≡CS φ (n)+1 mod n (∵ED≡1 modφ(n),SはEDをφ(n)で割った時の商)
≡C mod n (∵オイラーの定理より)
法nのもとで認証用データ(C)と合同になる。
【0099】
判定した結果、認証用データ(C)と証明用データ(R)を復号したものが等しいときには、認証が成功した場合の処理(Step109)を行う。Step104にて時計81により示されている時刻が証明用データの生成を行うための制御情報(L)に記載されている有効期限内に含まれていない場合には検証装置100にエラーを返し(Step110)、検証装置側でエラー処理を行う(Step111)。また、Step107で認証用データ(C)と証明用データ(R)を復号したものが等しくない場合には、同様にStep111にてエラー処理を行う。
【0100】
図7、図8はSpep105にて証明用データを計算する方法の詳細を示したものである。図7は図2および図4にて示した構成に基づく動作について説明しており、図8は図3および図5で示した構成に基づく動作について説明している。
【0101】
図7ではまず第2の演算手段32により認証の特徴情報(D)を算出し(Step112)、認証用データを認証の特徴情報(D)を鍵としてRSA暗号方式で暗号化している(Step113)。Step112において認証の特徴情報(D)を算出する方法は認証用補助情報(t)がどのようにして算出されているかにより異なる。t=D+f(L)+ωφ(n)の場合にはD=t−f(L)、t=D−f(L)+ωφ(n)の場合にはD=t+f(L)、t=D+f(L,n)の場合にはD=t−f(L,n)、t=D−f(L,n)の場合にはD=t+f(L,n)として算出できる。なお、Dを算出する際にωφ(n)の項が残るものがあるが、次のStep113にて法nのもとでべき乗されるのでωφ(n)の項は無視することができる。
【0102】
図8では直接に認証の特徴情報(D)を算出することなしに認証用データ(C)を暗号化する方法について説明している。まず、法nのもとで認証用データ(C)を所定の関数f(L)またはf(L,n)の値だけべき乗した値と、認証用補助情報の値だけべき乗した値を計算する(Step114,115)。Step114および115での演算結果をもとにCD mod nを計算する(Step116)。Step116でCD mod nを計算する方法はStep112と同様に認証用補助情報(t)がどのようにして算出されているかにより異なる。t=D+f(L)+ωφ(n)およびt=D+f(L,n)の場合には法nのものでStep114の結果の逆数とStep115の結果を掛け合わすことで、t=D−f(L)+ωφ(n)およびt=D−f(L,n)の場合にはStep114の結果とStep115の結果を掛け合わすことで算出できる。
【0103】
上記の動作により、電子的なチケットに相当する認証用補助情報(t)を保持していない場合には認証は行われないし、証明用データの生成を行うための制御情報(L)に示されている認証用補助情報(t)の有効期限内でなければ認証は行われない。また、証明用データの生成を行うための制御情報(L)を改竄した場合には算出される認証の特徴情報(D)が本来のもとの異なり、正しく暗号化できないために検証装置で復号した際に改竄が行われたことが発覚する仕組みになっている。
【0104】
本実施例では証明用データの生成を行うための制御情報(L)に記載されている情報を認証用補助情報(t)の有効期限としたが、当然、認証用補助情報(t)を無効とする期間の情報としても構わない。
【0105】
本実施例ではリプレイアタックを防ぐために、認証用データ(C)として乱数を用いたが、検証装置100と証明装置200間の通信の安全性が保証されている場合には認証用データ(C)として一定の値を用いても構わない。認証用データ(C)として乱数を用いるのと同等の効果を持つ方法として、一定の値に乱数効果を施したものを認証用データ(C)として用いる方法も考えられるが、認証用データ(C)として乱数を用いる場合に比べ、装置の構成が複雑になるという欠点を持つ。
【0106】
本実施例にて述べた認証方式を安全に保つために、証明用データ生成手段52、あるいは第5の演算手段35および証明用データ生成手段制御手段91を外部から内部状態を観察することが困難にするためのタンパープルーフ容器内に封じ込めることが望ましい。
【0107】
また、利用者の利便性を保つために証明用データ生成手段52、あるいは第5の演算手段35および証明用データ生成手段制御手段91を携帯可能な例えばICカードの様なものとして実現してもよい。
【0108】
[実施例2]
2つ目の実施例として一部あるいは全部が暗号化されたプログラム(X)を条件付きで復号し実行する例について説明する。プログラム(M)は鍵Kにて暗号および復号をおこなう対称鍵暗号方式にて暗号化されているとする(X=EK(M))。認証用素データ(B)として上記鍵KをRSA公開鍵暗号方式の公開鍵Eにて暗号化したもの(B=KE mod n)、認証用データ(C)として第2の乱数生成手段62で生成された乱数rを法nのもとで上記公開鍵Eだけべき乗したものと認証用素データ(B)を掛け合わせたものを用いる(C=rEB mod n)。本実施例に於いても、認証の特徴情報(D)はRSA公開鍵暗号方式の秘密鍵に相当し、φ(n)と認証の特徴情報(D)は互いに素の関係に有り、公開鍵EとはDE=1 modφ(n)の関係にある(φ(n)はオイラー数で、この例ではφ(n)=(p−1)(q−1)となる)。また、証明用データの生成を行うための制御情報(L)も実施例1と同様に利用制限の場合について説明する。
【0109】
本実施例ではチケットにあたる認証用補助情報(t)をユーザ毎に異なるものにするためユーザ固有情報(du)を導入する。
【0110】
図9は実施例2における原理構成図を示している。以下、実施例1の構成と対比しつつ実施例2の構成について説明する。1つ目の実施例1との違いは、検証装置100において第1の乱数生成手段61の代わりに認証用素データ(B)を記憶する第5の記憶手段5、第2の乱数生成手段62および上記認証用素データ(B)に乱数効果を施して認証用データ(C)を生成する第7の演算手段37を備えていることである。実施例1ではデータを証明装置に暗号化させ、正しく暗号化されているか検証装置で確かめることで認証を行っていたので、暗号化させるデータには特に制限がなく、リプレイアタックを防ぐ目的で乱数を証明用データ(C)として用いていた。本実施例では暗号化された意味のあるデータを証明装置により復号させることにより認証を行うので、上記の構成が必要となる。暗号化された意味のあるデータとは本実施例の場合認証用素データ(B)を指し、これに乱数効果を付与するために第2の乱数生成手段62および第7の演算手段37を用いる。具体的には第2の乱数生成手段62にて乱数rを生成し、乱数rを法nのもとで上記公開鍵Eだけべき乗したものと認証用素データ(B)を掛け合わせる。証明装置と検証装置の間の通信の安全性が保証されている場合には乱数効果を付与することなく、直接、認証用素データ(B)を認証用データ(C)としてもよい。認証用素データ(B)は暗号化されたプログラムデータ(X)を復号する鍵KをRSA公開鍵暗号方式の公開鍵Eで暗号化したもので、これを証明装置200で復号することによりプログラムデータ(X)を復号する鍵Kを得ることができる。
【0111】
2つ目の違いは、検証装置100において検証手段51の代わりに乱数効果を除去する第9の演算手段39、暗号化されたプログラムデータ(X)を記憶する第10の記憶手段、暗号化されたプログラムデータ(X)の復号を行う第10の演算手段40および復号されたプログラムデータ(M)を実行する第1のプログラム実行手段71を備えることである。第9の演算手段39の追加は上記1つ目の違いに対応するものであり、それ以外は本実施例が暗号化されたプログラムを条件付きで復号して実行するためのものであることに由来する。もし、実施例1と同様に証明装置200にて生成されたデータと元のデータとの比較を行うことにより認証を行うことを目的とするならば、代わりに暗号化される前のデータを記憶する記憶手段とデータの比較を行う比較手段を検証装置100内に設ければよい。
【0112】
正常に証明用データ(R)が証明装置200により生成された場合、証明用データ(R)は上記乱数rと鍵Kの積になる。第9の演算手段39では証明用データ(R)に上記乱数rの逆数を掛けることにより鍵Kを取り出し、上記鍵Kをもとに第10の記憶手段に記憶されている暗号化されたプログラムデータ(X)を第10の演算手段40により復号し、復号されたプログラムデータ(M)を第1のプログラム実行手段71にて実行する。なお、復号が正しく行われていない場合に、復号されたプログラムデータ(M)を直接実行すると、動作が保証できない。そこで、予め鍵Kやプログラム(M)に冗長性を持たせておき、復号された鍵Kやプログラム(M)が必要な冗長性を持っているかどうかを確認した後、プログラムを実行してもよい。また、プログラムデータ(M)の暗号化方式についてはここでは特に限定しない。
【0113】
3つ目の違いは、証明装置200においてユーザ固有の情報(du)を記憶する第4の記憶手段4を設け、証明用データ(C)の生成にユーザ固有の情報(du)を用いる点である。この違いは前記2つの違いとは独立である。ユーザ固有の情報(du)を用いることにより、認証用補助情報(t)がユーザ毎に異なる値になり、他人の認証用補助情報(t)を盗用することでサービスを不正に受けることを防ぐことができる。図10および図11は証明用データ生成手段52の構成の一例である。実施例1のものに所定の関数fの引数としてduが加わっている。実施例1と同様に第1の演算装置31および第5の演算装置35の動作は認証用補助情報(t)がどのように生成されたかにより異なる。
【0114】
次に実施例2の動作について図12のフローチャートを用いて説明する。なお実施例1と同じ部分については説明を割愛する。まず、準備として証明装置200は認証用補助情報(t)および認証用補情報(t)に対応した証明用データの生成を行うための制御情報(L)を用意する(Step201)。暗号化されたデジタル情報(EK(M))の復号を行う場合には第2の乱数生成手段62により乱数rを生成し(Step202)、乱数r、RSA公開鍵Eおよび法数nから認証用素データ(B)に対して乱数効果を掛け(Step203)、それを認証用データ(C)として証明装置200へ送る(Step204)。証明装置200では証明用データの生成を行うための制御情報(L)が特定の条件を満たすかどうか、この場合には時計81により得られる時刻が証明用データの生成を行うための制御情報(L)に記述されている有効期限内にあるかどうかを判定し、有効期限内にある場合には認証用データ(C)を法nのもとで認証の特徴情報(D)の値だけべき乗することにより、認証用データ(C)を復号して、その値を検証装置100へ返す。(Step205−207)。もし、時計81により得られる時刻が有効期限内にない場合には、エラーを返して(Step211)、検証装置でエラーに応じたエラー処理を行う(Step212)。正しく証明用データ(R)が得られた場合には、第11の演算手段41により、証明用データ(R)と上記乱数rの逆数を掛けることでデジタル情報を復号するための鍵Kを算出し(Step208)、その鍵Kを用いて第10の記憶手段10に記憶されている暗号化されたプログラムデータ(X)を復号し(Step209)、プログラムデータ(M)を得る。第1のプログラム実行手段は復号されたプログラムデータ(M)を得、プログラムを実行する(Step210)。
【0115】
上記のような動作を行うことで、ユーザ毎に特化された認証用補助情報(t)、あるユーザであることを証明するユーザ固有情報(du)および認証用補助情報(t)に対応し、証明データの生成を行うための条件が記載された証明用データの生成を行うための制御情報(L)をそろえた場合のみ暗号化されたプログラムを実行できるようになる。
【0116】
なお、本実施例にて述べた認証方式を安全に保つために、第4の記憶手段4および証明用データ生成手段52、あるいは第4の記憶手段4、第5の演算手段35および証明用データ生成手段制御手段91を外部から内部状態を観察することが困難にするためのタンパープルーフ容器内に封じ込めることが望ましい。
【0117】
また、利用者の利便性を保つために第4の記憶手段4および証明用データ生成手段52、あるいは第4の記憶手段4、第5の演算手段35および証明用データ生成手段制御手段91を携帯可能な例えばICカードの様なものとして実現してもよい。
【0118】
[実施例3]
次に第3の実施例として署名を検証することで、認証を行う場合についての実施例について説明する。暗号方式としてRSA公開鍵暗号を用いた場合、実施例1は認証の特徴情報(D)を署名鍵、公開鍵Eを検証鍵と見るとそのまま署名を検証することで、認証を行う場合についての実施例になっているが、本実施例では認証用データに対して直接署名を行うのではなく、認証用データにハッシュを施したものに対して署名を行う例について説明する。認証用データにハッシュを施して署名を行い、証明用データ(R)を生成する部分と証明用データ(R)を検証する部分以外は実施例1と同等なので、ここでの説明は割愛する。
【0119】
図13は本実施例における証明用データ生成手段52の構成例の一つを示している。証明用データ生成手段52は実施例1での構成の他にハッシュ値を算出する第12の演算手段42を備えている。まず、検証装置100より認証用データ(C)が入力され、この認証用データ(C)に基づいて第12の演算手段42がそのハッシュ値(HC)を算出し、以後このハッシュ値を法nのもとで認証の特徴情報(D)の値だけべき乗し、それを証明用データ(R)として検証装置100に返す。
【0120】
図14は検証手段51の本実施例における構成例の一例である。検証手段51は第12の演算手段42と同様にハッシュ値を算出する第13の演算手段43、入力に対し法nのもとで検証鍵Eの値だけべき乗を行う第14の演算手段44および第13の演算手段43、第14の演算手段44の出力を比較して同等であれば認証成功の出力を、同等でなければ認証失敗の出力を行う比較手段44aからなり、証明用データ(R)が認証用データ(C)に対する正しい署名かどうかを判断することにより、認証の成功/失敗を判断するよう構成されている。
【0121】
[実施例4]
第4の実施例としてPohlig−Hellman暗号を用いた場合について説明する。Pohlig−Hellman暗号は法数として素数の積nではなく、素数pそのものを取る点が異なっている。また、認証の特徴情報(D)とそれに対応する鍵(E)の関係は
【0122】
【数3】
ED≡1 mod p−1
となる。RSA公開鍵暗号方式を採用した場合には公開情報n,Eから秘密情報Dを計算するのが困難であったため、一方の鍵Eを秘密にする必要はなかったが、Pohlig−Hellman暗号の場合はEとpから容易にDが算出されるので、一方の鍵Eも秘密にしておく必要がある。
【0123】
発明の構成や構成要素の動作はRSA公開鍵暗号方式の場合のnをpに置き換えた場合と同等で(ただしφ(p)=p−1)、検証装置100が認証用データ(C)を生成し、証明装置200は、認証用補助情報(t)、ユーザ固有情報(du)などから認証用データ(C)を法pのもとで認証の特徴情報(D)の値だけべき乗した値を算出し、その結果を証明用データ(R)として検証装置100に渡し、検証装置100は証明用データ(R)が正しく認証用データ(C)を法pのもとで認証の特徴情報(D)の値だけべき乗した値であるかどうかを検証することで、認証を行う。
【0124】
実施例の詳細は実施例1および2のnをpに置き換えたものと同等であるため割愛する。
【0125】
[実施例5]
第5の実施例として対称鍵暗号を用いた場合について説明する。本実施例では秘匿を要するデータ(M)を暗号化したもの(X)を、認証用補助情報(t)を持ったものが特定の状況下で復号する場合について説明するが、この場合でも実施例2のように秘匿を要するデータ(M)をプログラムとしてプログラムの実行制御を行ったり、実施例1のように乱数を正しく暗号化できるかあるいは暗号化された乱数を正しく復号化できるかを検証することにより権利の認証を行うこともできる。
【0126】
図15は本実施例の原理構成図を示している。図中の第10の記憶手段10には秘匿を要する情報(M)が鍵Kにて復号されるように暗号化されている。秘匿を要する情報(M)の暗号化方式については特に限定をしない。第11の記憶手段11には認証用データとして、上記鍵Kを後述の値Dを鍵として対称鍵暗号方式にて暗号化した値(C=ED(K))が記憶されている。値Dは認証用補助情報(t)、証明用データの生成を行うための制御情報(L)およびユーザ固有の情報(du)を引数に取る非衝突性、一方向性の性質を持った関数の値であり、証明データ生成手段52の内部で算出可能なものである。証明装置200内には第11の記憶手段11から認証用データ(C)を受け取る第1の記憶手段1を有し、さらに証明用データの生成を行うための制御情報(L)、認証用補助情報(t)およびユーザ固有の情報(du)を保持する第2、3、4の記憶手段2、3、4を有し、時刻を得るための時計81および証明用データ生成手段52を有する。証明用データ生成手段52は時計81により得られる時刻が証明用データの生成を行うための制御情報(L)に記述されている範囲内であれば、第2、3、4の記憶手段2、3、4に記憶されているデータから関数値Dの値を算出し、そのDを鍵として認証用データ(C)を復号して、それを証明用データ(R)として検証装置100へ送る。検証装置100では証明用データ(R)を鍵として、第10の記憶手段10に記憶されている暗号化された秘匿を要するデータを復号して出力する。このとき、実施例2と同様に鍵Kあるいは秘匿を必要とするデータ(M)に予め冗長性を持たせておき、復号した結果が正しい冗長性を持つかどうか確認してもよい。
【0127】
本実施例ではこれまでの実施例に示したように認証用データ(C)や証明用データ(R)に乱数効果を施すことができない。そのため、検証装置100と証明装置200の間の通信の安全性が保証されていない場合には予めDiffie−Hellman鍵交換などの方式を用いて、鍵を交換しておいて、その鍵に基づいて通信の暗号化を行うことで通信路の安全性を確保しておく必要がある。
【0128】
図16は証明用データ生成手段52の内部構成の一例を示したものである。証明用データ生成手段52は証明用データ生成手段制御手段91および第1の演算手段31から構成され、さらに第1の演算手段31は第2の演算手段32および第3の演算手段33から構成される。証明用データ生成手段制御手段91の動作は今までの実施例と同様で、証明用データの生成を行うための制御情報(L)と時刻を比較し、制限期間以内であれば証明用データ(R)を計算して検証装置100に返し、そうでなければエラーメッセージを返すことを行う。第2の演算手段32は証明用データの生成を行うための制御情報(L)、証明用補助情報(t)およびユーザ固有情報(du)から鍵Kを暗号化している鍵の値Dを算出し、第3の演算手段33は上記鍵の値Dをもとに、認証用データ(C)を復号して鍵Kを得る。
【0129】
Dの値の算出方法にはさまざまなものを考えることができる。例えば証明用データの生成を行うための制御情報(L)、証明用補助情報(t)およびユーザ固有情報(du)を連結したデータを引数に取る一方向性でかつ非衝突性の性質を持つ関数の値としてもよい。この場合には、一旦証明用データの生成を行うための制御情報(L)、証明用補助情報(t)およびユーザ固有情報(du)からDを作ったら、同じDを生成する別の証明用データの生成を行うための制御情報(L)、証明用補助情報(t)およびユーザ固有情報(du)の組み合わせを生成することが困難であるという欠点がある。
【0130】
この欠点を解決する一つの方法として、鍵Kを暗号化する鍵Dを適当に定め、鍵Dを更に証明用データの生成を行うための制御情報(L)およびユーザ固有情報(du)を引数に取る関数の値を鍵として復号できるように暗号化したものを認証用補助情報(t)とする方法がある(D=Df(L,du)(t))。この方法によると任意の証明用データの生成を行うための制御情報(L)およびユーザ固有情報(du)に対して、予め定められたDを算出する認証用補助情報(t)を生成することができるので上記の問題は解決する。この場合の鍵Dの暗号化方法は特に限定しない。図17はこの場合の証明用データ生成手段52の構成例を示している。証明用データ生成手段制御手段91の動作は前述のものと同じである。この場合は鍵Dは証明用補助情報(t)を復号することにより得られるので、まず復号のための鍵であるf(L,du)の値を第15の演算手段45にて算出し、次に第16の演算手段46により認証用補助情報(t)をf(L,du)を用いて復号することにより鍵Dを得、さらに第3の演算手段33において認証用データ(C)を鍵Dを用いて復号することにより秘匿を必要とするデータ(M)を復号するための鍵Kを得ることができる。この場合でも証明用データの生成を行うための制御情報(L)により、証明用データ(R)を生成するかどうかの制御を行うことができ、しかも認証用補助情報(t)や証明用データの生成を行うための制御情報(L)等を改竄した場合には正しいKを得ることができなくなる。
【0131】
更に鍵Dだけでなく証明用データの生成を行うための制御情報(L)も証明用データの生成を行うための制御情報(L)およびユーザ固有情報(du)を引数に取る関数の値を鍵として復号できるように暗号化したものを認証用補助情報(t)とし(D|L=Df(L,du)(t)(|は連結を表わす))、証明用データ生成手段52に入力として与えられた証明用データの生成を行うための制御情報(L)と、認証用補助情報(t)を復号して得られる証明用データの生成を行うための制御情報(L’)を比較して両者が一致する場合のみ証明用データ生成手段制御手段91が証明用データ(R)を返すようにすると、証明用データ(R)を生成することなく証明用データの生成を行うための制御情報(L)を確認することができる。図18はこの場合の認証データ生成手段52の構成例を示している。
【0132】
上記方式と同等の効果を持つ方法として、認証用補助情報(t)を前述の認証用補助情報に相当するt1ならびに鍵Dの値および証明用データの生成を行うための制御情報(L)を引数に取る非衝突性、一方向性の特徴を持つ関数の値t2の2つから構成されるようにして、t1から算出される鍵Dの値および入力された証明用データの生成を行うための制御情報(L)を引数に取る非衝突性、一方向性の特徴を持つ関数hの値を算出してその値とt2とを比較することにより入力された証明用データの生成を行うための制御情報(L)の正当性を確認する事もできる。この場合の証明用データ生成手段52の構成例を図19に示す。
【0133】
[実施例6]
次に証明用データの生成を行うための制御情報(L)のバリエーションとしていくつかの実施例を示す。本実施例では証明用データの生成を行うための制御情報(L)が利用回数制限情報であり、予め定められた回数だけ認証やデータの復号を行うことができる場合について説明する。図20は証明装置200の構成の一例である。図21は証明用データ生成手段52の動作を示すフローチャートである。検証装置100の構成は前述のようなさまざまな構成をとることができ、その構成については特に限定しない。図20および図21において、本実施例の証明装置では時計81の代わりに、今までに認証用補助情報(t)を用いて何回認証あるいは復号を行ったかを各認証用補助情報(t)毎に記憶する第13の記憶手段13を備える。証明用データの生成を行うための制御情報(L)は対応する認証用補助情報(t)を最大何回利用できるかという回数情報を示しており、証明用データ生成手段52内の証明用データ生成手段制御手段91は証明用データの生成を行うための制御情報(L)に記載されている回数情報と、第13の記憶手段13に記憶されている対応する認証用補助情報(t)の使用回数とを比較し(Step601)、認証用補助情報(t)の使用回数が証明用データの生成を行うための制御情報(L)に記載されている回数情報以下である場合のみ、証明用データ(R)を生成し、検証装置100に送出する(Step601、602)、その後第13の記憶手段13に記憶されている対応する認証用補助情報(t)の使用回数の値をインクリメントする(Step604)。認証用補助情報(t)の使用回数が証明用データの生成を行うための制御情報(L)に記載されている回数情報を上回っている場合にはエラーコードを検証装置100に返して、処理を終了する(Step605)。
【0134】
このようにすることで回数券型の電子チケットを実現することができる。
【0135】
[実施例7]
本実施例では証明用データの生成を行うための制御情報(L)が利用可能総時間情報であり、予め定められた時間だけ認証やデータの復号を行うことができる場合について説明する。図22は証明装置200の構成の一例である。また図23は証明用データ生成手段52の動作を示すフローチャートである。本実施例においても検証装置100の構成は前述のようなさまざまな構成をとることができ、その構成については特に限定しない。図22および図23において、本実施例では証明装置200内に今までに認証用補助情報(t)を用いて認証あるいは復号を行うことにより何時間サービスを享受したかを示す総利用時間を各認証用補助情報(t)毎に記憶する第14の記憶手段14および各回ごとのサービスを享受した時間を計測するサービス時間計測手段82を備える。サービス時間計測手段82は例えばサービスの開始時と終了時に必ず認証を行うようにしておけば証明用データ(R)を作成した時間の差を計算することによりサービス時間を計測するというように実現できるし、別の通信手段でサービスの開始時と終了時に信号を受取りそこからサービス時間を計測するというように実現してもよい。またさらにはサービス時間計測手段82は証明装置200内に存在する必然性はなく、サービス時間計測手段82から証明装置200内に安全にサービス時間を知らせる方法があれば証明装置200の外部にあってもよい。
【0136】
証明用データの生成を行うための制御情報(L)は対応する認証用補助情報(t)を最大何時間利用できるかという利用可能総時間情報を示しており、証明用データ生成手段52内の証明用データ生成手段制御手段91は証明用データの生成を行うための制御情報(L)に記載されている利用可能総時間情報と、第14の記憶手段14に記憶されている対応する認証用補助情報(t)の現時点での総利用時間とを比較し(Step701)、認証用補助情報(t)の総利用時間が証明用データの生成を行うための制御情報(L)に記載されている利用可能総時間以下である場合のみ、証明用データ(R)を生成して検証装置100に渡す(Step702、703)。その後サービスが終了した段階で第14の記憶手段14に記憶されている対応する認証用補助情報(t)の利用可能総時間の値をサービス時間計測手段82により計測された時間だけ足す(Step704)。またさらにサービスを享受している間に、認証用補助情報(t)の総利用時間とサービス時間計測手段82により計測された今回の利用時間との合計が第14の記憶手段14に記憶されている利用可能総時間を超えた場合サービスを停止するよう促してもよい。当初から、認証用補助情報(t)の総利用時間が証明用データの生成を行うための制御情報(L)に記載されている利用可能総時間を超えている場合にはエラーコードを検証装置100に返して処理を終了する(S705)。
【0137】
このようにすることで時間制限型の電子チケットを実現することができる。
【0138】
[実施例8]
本実施例では証明用データの生成を行うための制御情報(L)が一回の利用に必要なポイントまたは料金情報であり、予め定められたポイントあるいは金額だけ認証やデータの復号を行うことができる場合について説明する。図24は証明装置200の構成の一例である。また、図25は証明用データ生成手段52の動作を示すフローチャートである。本実施例においても検証装置100の構成は前述のようなさまざまな構成をとることができ、その構成については特に限定しない。図24および図25において、本実施例では証明装置200内に認証または復号を行うに必要なポイント残数または残高情報を記憶する第15の記憶手段15を備える。証明用データの生成を行うための制御情報(L)は対応する認証用補助情報(t)を用いた一回の認証または復号に必要なポイント数または金額情報を示しており、証明用データ生成手段52内の証明用データ生成手段制御手段91は証明用データの生成を行うための制御情報(L)に記載されている一回の認証または復号に必要なポイント数または金額情報と、第15の記憶手段15に記憶されているポイント残数または残高情報とを比較し(Step801)、ポイント残数または残高情報が一回の認証または復号に必要なポイント数または金額情報以上の場合にのみ、証明用データ(R)を生成して検証装置100に渡す(Step802、803)。その後、上記一回の認証または復号に必要なポイント数または金額分だけ第15の記憶手段15に記憶されている値を減じる(Step804)。なお、第15の記憶手段15に記憶されている値は別手段により、書き換えることができる(ポイント数または金額の再充填)ようにしてもよい。ポイント残数または残高情報が一回の認証または復号に必要なポイント数または金額情報を下回る場合にはエラーコードを検証装置100に返して処理を終了する(Step805)。
【0139】
このようにすることでプリペイド型の電子チケットを実現することができる。
【0140】
[実施例9]
本実施例では証明用データの生成を行うための制御情報(L)が処理記録(以下ログ)を出力するかしないかを定めた情報であり、認証または復号を行う際にログを記録する必要がある場合には必ずログを記録するようにする方法について説明する。
【0141】
現在、サービスを受けた時点でサービスに関するログを記録しておき、後でログに記載されているサービスに対して対価を払うポストペイド方式の支払い方式が存在する。この方式を実現するためにはサービスを提供する時に必ずログを残す必要があるが、さまざまな支払い方式が混在する場面ですべての方式においてログを残すようにしておくと、プライバシーの侵害を招く恐れがある。そのためポストペイドサービスのようにログを残す必要がある場合にのみログを残すというように、ログを残すかどうかを制御する方法が必要である。
【0142】
図26は証明装置200の構成の一例である。図27は証明用データ生成手段52の動作を示すフローチャートである。本実施例においても検証装置100の構成は前述のようなさまざまな構成をとることができ、その構成については特に限定しない。図26および図27において、本実施例ではログ記録手段83を備える。証明用データの生成を行うための制御情報(L)は認証あるいは復号の際にログを記録するかどうかを表わす情報を含んでいる。まず、証明用データ(R)を計算する(Step901)。この後、制御情報(L)にログを記録するように記載されている場合には認証あるいは復号の際に証明用データ生成手段52内の証明用データ生成手段制御手段91がログ記録手段83に対し必要な情報を受け渡し、ログ記録手段83はその情報を記録する(Step902、903)。こののち、先に計算した証明用データ(R)を検証装置に渡す(Step904)。制御情報(L)に、ログを記録するように指示されたいない場合には、ログをとることなく、そのまま証明用データ(R)を検証装置100に渡す(Step902、904)。
【0143】
このようにすることで必要な場合にのみログを記録する方式を実現することができる。
【0144】
[実施例10]
本実施例では証明用データの生成を行うための制御情報(L)がパスワードのように特定の個人しか知らない情報に関連するデータ、または声紋情報、指紋情報、アイリスパターン情報、網膜パターン情報などの個体識別情報に関するデータなどの個人認証情報に関する情報であり、これらのデータの照合が正しく行われた場合のみ認証やデータの復号を行うことができる方法について説明する。図28は証明装置200の構成の一例である。また、図25は証明用データ生成手段52の動作を示すフローチャートである。本実施例においても検証装置100の構成は前述のようなさまざまな構成をとることができ、その構成については特に限定しない。図28および図29において、本実施例では個人認証情報抽出手段84を備える。個人認証情報抽出手段84は証明装置200内にあってもよいし外部にあってもよい。証明用データの生成を行うための制御情報(L)は対応する認証用補助情報(t)を用いて認証または復号を行うことができる個人の個人認証情報または個人認証情報が取りうる範囲の情報を示しており、証明用データ生成手段52内の証明用データ生成手段制御手段91は証明用データの生成を行うための制御情報(L)に記載されている個人認証情報または個人認証情報が取りうる範囲の情報と、個人認証情報抽出手段84により与えられた情報とを比較して、同一あるいは有効範囲内であれば証明用データ(R)を生成して検証装置100に渡す(Step1001、1002、1003)。制御情報(L)に記載されている個人認証情報または個人認証情報が取りうる範囲に、個人認証情報抽出手段84からの情報が含まれない場合には、エラーコードを検証装置100に渡して処理を終了する(Step1004)。
【0145】
このようにすることで予め個人認証のためのデータベースを持たない状況でも認証や復号を行う際に個人認証を行うことができる。
【0146】
[実施例11]
本実施例では証明用データの生成を行うための制御情報(L)がさまざまな処理を行うためのプログラムであり、そのプログラムの処理結果に基づいて認証または復号を行うかどうかを制御する場合について説明する。ここでの処理は上記の利用期間、利用回数、個人認証、ログの記録などさまざまな制御情報の組み合わせによる判断であったり、更には外部の構成要素と通信を行うことにより例えばサービスの提供者またはソフトウエアプログラムやデータの著者のエージェントと通信を行い、サービスの享受の許可を得、所定の金額をサービスの提供者またはソフトウエアプログラムやデータの著者の口座に振り込んだことを確認するというものでもよい。図30は証明装置200の構成の一例である。また、図31は証明用データ生成手段52の動作を示すフローチャートである。本実施例においても検証装置100の構成は前述のようなさまざまな構成をとることができ、その構成については特に限定しない。図30および図31において、本実施例では証明用データの生成を行うための制御情報(L)に記載されたプログラムを実行する第2のプログラム実行手段72を備える。まず、証明用データ生成手段52内の証明用データ生成手段制御手段91は証明用データの生成を行うための制御情報(L)に記載されているプログラムを第2のプログラム実行手段72において実行し(Step1101)、プログラムが特定の状態にて終了するかまたは特定の状態にある場合にのみ、証明用データ(R)を生成して検証装置100に渡す(Step1102、1103、1104)。そうでない場合には、エラーコードを検証装置100に渡して処理を終了する(Step1105)。
【0147】
このようにすることで上記のさまざまな制御方法を復号した制御を実現することができ、また他の構成要素と通信を行うことによりより高度な条件や動作制御を前提とした認証や復号を実現することができる。
【0148】
[実施例12]
以上、条件付き認証の方法、または復号の方法について述べてきたが、実施例3で述べたように本発明の構成を用いて条件付きで電子署名の生成を行うことができる。これを利用すると条件付き電子署名装置を実現することができる。
【0149】
例えば従来は一定期間だけ代理人に自分の署名付きのメッセージを作成してもらいたい時にも、代理人に自分の秘密情報である署名鍵を開示する必要があり、しかも一旦署名鍵を開示してしまえば、以降代理人にも自分の電子署名が生成されてしまう恐れがあった。また、一般に署名鍵のような秘密情報は汎用コンピュータの記憶手段上に記憶しておくのではなく、例えばICカードのような汎用コンピュータとは独立のタンパープルーフな媒体上に記憶しておくのが望ましい。さらにICカードのような可搬の媒体は盗難の恐れもあり、持ち主を確認する上でも一定期間で利用できないようにして更新を促せるようなことも必要である。
【0150】
上記のような状況下では、秘密情報を洩らすことなく一定の条件下で署名の生成を可能にする条件付き署名装置が有効である。図32は条件付き署名装置400の構成の一例を示している。また、図33は署名生成装置の動作を説明するフローチャートである。この装置の構成は実施例3における証明装置200とほぼ同等である。本実施例では実際の目的に合わせるため、上記認証用補助情報(t)を署名生成用補助情報(t)、証明用データの生成を行うための制御情報(L)を署名を生成するための制御情報(L)、証明用データ生成手段52を署名生成手段と呼ぶこととする(図では符号52‘を用いる)。予め署名を行うに必要な署名生成用補助情報(t)およびな署名生成用補助情報(t)に対応した署名を生成するための制御情報(L)を得て、それぞれ第3、第2の記憶手段に記憶しておく。第4の記憶手段に記憶されているユーザ固有情報(du)は署名装置400が作られた段階で埋め込まれているものとする。メッセージMを入力として受け取ると(Step1201)、証明用データ生成手段52は署名を生成するための制御情報(L)に記述されている条件等を比較検討し(Step1202)、署名を生成するための条件が満たされている場合のみ、ユーザ固有情報(du)、署名生成用補助情報(t)および署名を生成するための制御情報(L)からメッセージMに対する署名(R)を生成し、出力する(Step1203、1204)。署名を生成するための条件が満たされない場合には、エラーコードを出力して処理を終了する(Step1205)。
【0151】
なお、この場合のメッセージMは通常のメッセージそのものでもよいし、メッセージのダイジェストでもよい。このような構成および動作により条件付き署名装置を実現することができる。
【0152】
[実施例13]
本実施例では前述の認証用補助情報(t)あるは署名生成用補助情報(t)を生成する認証用補助情報生成装置2000について説明する。前述の実施例では認証や復号に用いる暗号の方式の違いにより、さまざまな形の認証用補助情報(t)を示してきたが、本実施例ではその中のRSA公開鍵暗号方式を用いた場合、しかもユーザ固有情報(du)を用いる場合の認証用補助情報(t)の生成手段について説明する。図34は認証用補助情報生成装置2000の原理構成図を示している。本実施例における認証用補助情報生成装置2000は、ユーザ情報DB(データベース)101、制御情報DB102、認証の特徴情報DB103の3つのデータベースを備え、それぞれユーザの個人情報およびユーザ固有情報du、証明用データの生成を行うための制御情報(L)を生成するためのテンプレート、各サービスの認証の特徴情報または秘匿を必要とするデータの復号鍵およびその情報に対応する法数nを管理保有している。利用者は入力手段107及び表示手段106を利用して、どのユーザ固有情報の、どのサービスに対する、そのような条件を持った認証用補助情報(t)を得たいかを認証補助情報生成手段制御手段104へ伝達し、認証補助情報生成手段制御手段104は各データベースから対応する情報を取り出し、ユーザ固有情報(du)、証明用データの生成を行うための制御情報(L)、認証の特徴情報(D)および法数nをそれぞれ第16から第18の記憶手段16、17、18へ記憶させる。各情報が選び出された後はそれらの情報を用いて認証用補助情報計算手段105にて認証用補助情報(t)の値が計算される。認証用補助情報(t)は例えば次の式のように計算される。
【0153】
【数4】
t=D−f(du,L,n)
このときの関数fは一方向性、非衝突性の性質を持つことが望ましい。このようにして計算された認証用補助情報(t)は認証用補助情報出力手段108にて利用者へ渡される。
【0154】
【発明の効果】
以上説明したように、本発明によれば、第1に、電子化されたチケットの正当性を判断する際に、安全性を確保したままで、有効期限や利用回数制限やそれらの組み合わせといったように柔軟な条件を設定でき、しかもそれらの条件が改竄された場合には正しく認証が行われないようにすることができる。第2に暗号化されたデジタル情報を条件付きで復号する場合に於いては、デジタル情報を復号して利用する際に復号を行うための条件等を設定でき、しかも復号を行うための条件等は暗号化されたデジタル情報自身とは独立であり、したがってユーザ毎に異なる条件等を割り当てることが容易で、しかも復号を行うための条件等が改竄された場合には正しくデジタル情報の復号が行われないようにすることができる。また本発明の構成を用いることにより期間などの条件が満たされている場合のみ電子署名を生成することが可能な条件付き電子署名生成装置を実現することができる。
【図面の簡単な説明】
【図1】 実施例1の原理構成図である。
【図2】 証明用データ生成手段の構成例を示す図である。
【図3】 証明用データ生成手段の構成例を示す図である。
【図4】 証明用データ生成手段の構成例を示す図である。
【図5】 証明用データ生成手段の構成例を示す図である。
【図6】 実施例1のフローチャートである。
【図7】 第1の演算手段の動作の一例を示す図である。
【図8】 第1の演算手段の動作の一例を示す図である。
【図9】 実施例2の原理構成図である。
【図10】 証明用データ生成手段の構成例を示す図である。
【図11】 証明用データ生成手段の構成例を示す図である。
【図12】 実施例2のフローチャートを示す図である。
【図13】 証明用データ生成手段の構成例を示す図である。
【図14】 証明用データ生成手段の構成例を示す図である。
【図15】 実施例5の原理構成図である。
【図16】 証明用データ生成手段の構成例を示す図である。
【図17】 証明用データ生成手段の構成例を示す図である。
【図18】 証明用データ生成手段の構成例を示す図である。
【図19】 証明用データ生成手段の構成例を示す図である。
【図20】 証明装置の構成例を示す図である。
【図21】 証明装置の動作を示すフローチャートを示す図である。
【図22】 証明装置の構成例を示す図である。
【図23】 証明装置の動作を示すフローチャートを示す図である。
【図24】 証明装置の構成例を示す図である。
【図25】 証明装置の動作を示すフローチャートを示す図である。
【図26】 証明装置の構成例を示す図である。
【図27】 証明装置の動作を示すフローチャートを示す図である。
【図28】 証明装置の構成例を示す図である。
【図29】 証明装置の動作を示すフローチャートを示す図である。
【図30】 証明装置の構成例を示す図である。
【図31】 証明装置の動作を示すフローチャートを示す図である。
【図32】 署名装置の構成例を示す図である。
【図33】 署名装置の動作を示すフローチャートを示す図である。
【図34】 認証用補助情報生成装置の原理構成図である。
【図35】 利用形態の例を示す図である。
【図36】 利用形態の例を示す図である。
【符号の説明】
1000…認証装置
2000…認証用補助情報生成装置
100…検証装置
200…証明装置
300…制御装置
400…署名装置
1…認証用データ(C)を記憶する第1の記憶手段
2…証明用データの生成を行うための制御情報(L)を記憶する第2の記憶手段
3…認証用補助情報(t)を記憶する第3の記憶手段
4…ユーザ固有情報(du)を記憶する第4の記憶手段
5…認証用素データ(B)を記憶する第5の記憶手段
6…特定データ(K)を記憶する第6の記憶手段
7…特定データのハッシュ値(HK)を記憶する第7の記憶手段
8…法数(n)を記憶する第8の記憶手段
9…公開鍵(E)を記憶する第9の記憶手段
10…暗号化されたデータ(X)を記憶する第10の記憶手段
11…認証用データ(C)を記憶する第11の記憶手段
12…証明用データ(R)を記憶する第12の記憶手段
13…利用回数(i)を記憶する第13の記憶手段
14…利用総時間(T)を記憶する第14の記憶手段
15…利用金額またはスコア(P)を記憶する第15の記憶手段
16…ユーザ固有情報(du)(補助情報生成装置)を記憶する第16の記憶手段
17…証明用データの生成を行うための制御情報(L)(補助情報生成装置)を記憶する第17の記憶手段
18…認証の特徴情報(D)(補助情報生成装置)を記憶する第18の記憶手段
31…証明用データ(R)を計算する第1の演算手段
32…D=t−f(n,L,du)を計算する第2の演算手段
33…CDを計算する第3の演算手段
34…Ctを計算する第4の演算手段
35…Cfを計算する第5の演算手段
36…CDを計算する第6の演算手段
37…乱数効果を付与する第7の演算手段
38…ハッシュ値を計算する第8の演算手段
39…乱数効果を除去する第9の演算手段
40…データを復号する第10の演算手段
41…サービス時間を計算する第11の演算手段
42…署名用ハッシュを計算する第12の演算手段
43…署名用ハッシュを計算する(検証装置側)第13の演算手段
44…署名を検証する(検証装置側)第14の演算手段
45…fを計算する第15の演算手段
46…tを復号する第16の演算手段
47…hを計算する第17の演算手段
51…証明用データの正当性を検証する検証手段
52…証明用データ生成手段
61…C用の乱数を生成する第1の乱数生成手段
62…乱数効果用の乱数を生成する第2の乱数生成手段
71…暗号化されたプログラムを実行する第1のプログラム実行手段
72…Lを実行する第2のプログラム実行手段
81…時刻を得る時計
82…サービスを享受している時間を計測するサービス時間計測手段
83…利用履歴を記録ログ記録手段
91…証明用データを生成するかどうかを判断する証明用データ生成手段制御手段
101…ユーザとユーザ固有情報を管理保持するユーザ情報DB
102…証明用データの生成を行うための制御情報(L)のテンプレートを管理保持する制御情報DB
103…認証の特徴情報を管理保持する認証の特徴情報情報DB
104…認証用補助情報を生成するための管理を行う認証用補助情報生成手段制御手段
105…認証用補助情報を算出する認証用補助情報計算手段
106…認証用補助情報のおいて必要な情報を入力するよう促す表示手段
107…認証用補助情報において必要な情報を入力する入力手段
108…認証用補助情報を出力する認証用補助情報出力手段

Claims (38)

  1. ユーザの権限を証明するために証明部において生成された証明用データ(R)の正当性を検証部において検証することにより、上記ユーザの権限を認証する認証装置において、
    上記証明部は、
    認証用データ(C)を記憶する第1の記憶手段と、
    上記証明用データの生成を行うための条件に関する制御情報(L)または上記証明用データの生成に際して処理記録を行うかどうかの指示に関する制御情報(L)を記憶する第2の記憶手段と、
    第2の記憶手段に記憶されている上記制御情報(L)および認証の特徴情報(D)に所定の認証用補助情報生成用の演算を施して生成される認証用補助情報(t)を保持する第3の記憶手段と、
    証明用データ(R)を生成する証明用データ生成手段とを有し
    上記検証部は、
    記証明用データ生成手段により生成された上記証明用データが上記認証の特徴情報(D)に基づき生成されたものであるかどうかに依存する処理を行う検証手段を有し
    上記証明部の上記証明用データ生成手段は、
    上記条件に関する制御情報(L)の条件判断を行ない、または上記指示に関する制御情報(L)に従い処理記録を行う証明用データ生成装置制御手段と、
    上記制御情報(L)が上記証明用データの生成を行うための条件に関するものである場合には、上記証明用データ生成装置制御手段の上記条件判断に従い当該条件が満たされるときに少なくとも上記認証用データ(C)、上記制御情報(L)および上記認証用補助情報(t)に対して証明用データ生成用の演算を実行して上記証明用データ(R)を生成し、当該条件が満たされないときには上記証明用データ(R)を生成せず、また、上記制御情報(L)が上記記録処理の指示に関するものである場合に、少なくとも上記認証用データ(C)、上記制御情報(L)および上記認証用補助情報(t)に対して上記証明用データ生成用の演算を実行して上記証明用データ(R)を生成する第1の演算手段とを具備し、
    上記第1の演算手段が、正当な認証用データ(C)、制御情報(L)および認証用補助情報(t)が与えられた時のみ正当な証明用データ(R)を生成するように、上記認証用補助情報生成用の演算および上記証明用データ生成用の演算が選定されていることを特徴とする認証装置。
  2. 請求項1記載の認証装置において、
    さらに各ユーザ固有の情報(du)を記憶する第4の記憶手段を具備し、
    上記第3の記憶手段に記憶される上記証明用補助情報(t)は、上記制御情報(L)および上記認証の特徴情報(D)、上記ユーザ固有情報(du)に所定の演算を施して生成され、
    上記証明用データ生成手段は、少なくとも上記ユーザ固有情報(du)および上記制御情報(L)、上記認証用補助情報(t)、上記認証用データ(C)を用いて上記証明用データ(R)を生成することを特徴とする認証装置。
  3. 請求項1または2記載の認証装置において、
    上記第1の演算手段は、第2の演算手段と、第3の演算手段とから構成され、
    上記第2の演算手段は、上記第2の記憶手段に記憶されている上記制御情報(L)および上記第3の記憶手段に記憶されている上記認証用補助情報(t)、または上記制御情報(L)、上記認証用補助情報(t)および上記第4の記憶手段に記憶されている上記ユーザ固有情報(du)に対し、所定の演算を施して上記認証の特徴情報(D)を算出し、
    上記第3の演算手段は、上記第1の記憶手段に記憶されている上記認証用データ(C)および上記第2の演算手段によって算出された上記認証の特徴情報に対し、所定の演算を施して上記証明用データ(R)を生成することを特徴とする認証装置。
  4. 請求項1または2記載の認証装置において、
    上記第1の演算手段は、第4の演算手段、第5の演算手段、および第6の演算手段とから構成され、
    上記第4の演算手段は、上記第1の記憶手段に記憶されている上記認証用データ(C)および上記第3の記憶手段に記憶されている上記認証用補助情報(t)に対して所定の演算を施し、
    上記第5の演算手段は、上記認証用データ(C)および上記第2の記憶手段に記憶されている上記制御情報(L)、または上記認証用データ(C)、上記制御情報(L)、および上記第4の記憶手段に記憶されている上記ユーザ固有情報(du)に対し、所定の演算を施し、
    上記第6の演算手段は、上記第4の演算手段および上記第5の演算手段の計算結果に対し、所定の演算を施して上記証明用データ(R)を生成することを特徴とする認証装置。
  5. 請求項1〜4のいずれかに記載の認証装置において、
    上記認証の特徴情報(D)は、上記認証用データ(C)の暗号化を行う暗号化鍵であり、
    上記第1の演算手段は、少なくとも上記制御情報(L)および該認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記第1の記憶手段に記憶されている上記証用データ(C)を暗号化することにより上記証明用データ(R)を生成し、
    上記検証手段は上記認証用データが正しく暗号化されているかどうかを確認することにより検証を行うことを特徴とする認証装置。
  6. 請求項5記載の認証装置において、
    第1の乱数生成手段を備え、上記認証用データ(C)は上記第1の乱数生成手段により生成された乱数であることを特徴とする認証装置。
  7. 請求項5記載の認証装置において、
    第2の乱数生成手段と、
    認証用素データ(B)を記憶する第5の記憶手段と、
    上記認証用素データ(B)に対し、上記第2の乱数生成手段にて生成された乱数にて乱数効果を付与する第7の演算手段とを備え、
    上記認証用データ(C)は上記認証用素データ(B)に対し、上記第2の乱数生成手段により生成された乱数で乱数効果を施したものであることを特徴とする認証装置。
  8. 請求項1〜4のいずれかに記載の認証装置において、
    上記第1の記憶手段に記憶されている上記認証用データ(C)は、特定データ(K)を暗号化鍵(E)で暗号化したものであり、
    上記認証の特徴情報(D)は、上記特定データ(K)を暗号化した暗号化鍵(E)に対応する復号鍵であり、
    上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、
    上記検証手段は上記認証用データ(C)が正しく復号されているかどうかを確認することにより検証を行うことを特徴とする認証装置。
  9. 請求項8記載の認証装置において、
    上記特定データ(K)を記憶する第6の記憶手段を備え、
    さらに上記検証手段内に2つのデータを比較し同じかどうかを判定する比較手段を備え、
    上記検証手段は上記特定データ(K)と、上記証明用データ生成手段により生成された上記証明用データ(R)とを上記比較手段により比較することにより、検証を行うことを特徴とする認証装置。
  10. 請求項9記載の認証装置において、
    上記第6の記憶手段に代わり上記特定データ(K)に対し非衝突一方向性関数を施した値(HK)を記憶する第7の記憶手段を備え、
    さらに上記検証手段内にデータに対して非衝突一方向性関数を施した値を算出する第8の演算手段を備え、
    上記検証手段は上記特定データ(K)と、上記証明用データ生成手段により生成された上記証明用データ(R)とに、それぞれに非衝突一方向性関数を施した値を比較することにより、検証を行うことを特徴とする認証装置。
  11. 請求項8記載の認証装置において、
    上記特定データ(K)が、特定の桁の値が一定である、あるいは所定回数同じデータが繰り返されているなどの特徴を持ち、
    該検証手段内に上記特徴を持つかどうかを判定する判定手段を具備し、
    上記検証手段は該証明用データ生成手段により生成された証明用データ(R)が上記特定データ(K)と同様の特徴を持つかどうかを判断することにより検証を行うことを特徴とする認証装置。
  12. 請求項8記載の認証装置において、
    入力を必要とする情報処理手段を備え、
    上記特定データ(K)は上記情報処理手段の正しい入力であることを特徴とし、
    上記検証手段は上記証明用データ生成手段により生成された上記証明用データ(R)を上記情報処理手段の入力として与え、上記情報処理手段が正常に動作することを確認することにより検証を行うことを特徴とする認証装置。
  13. 請求項8〜10のいずれかに記載の認証装置において、
    第1の乱数生成手段を備え、
    上記特定データ(K)は上記第1の乱数生成手段により生成された乱数であることを特徴とする認証装置。
  14. 請求項8〜12のいずれかに記載の認証装置において、
    第2の乱数生成手段と、
    上記特定データ(K)を暗号化したものである認証用素データ(B)を記憶する第5の記憶手段と、
    上記認証用素データ(B)に対し、上記第2の乱数生成手段にて生成された乱数にて乱数効果を付与する第7の演算手段と、
    上記証明用データ(R)に対し、乱数効果を除去する第9の演算手段とを備え、上記認証用データ(C)は、上記認証用素データ(B)に対し、上記第2の乱数生成手段により生成された乱数で乱数効果をかけたものであり、
    上記第9の演算装置にて上記証明用データ(R)の乱数効果を除去した結果に対し検証を行うことを特徴とする認証装置。
  15. 請求項1〜4のいずれかに記載の認証装置において、
    上記該認証の特徴情報(D)は、デジタル署名関数における署名鍵であり、
    上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)を用いて、上記第1の記憶装置に記憶されている上記認証用データ(C)に対して署名を行うことにより上記証明用データ(R)を生成し、
    上記検証手段は上記証明用データ(R)が認証用データ(C)に対する正しい署名かどうかを確認することにより検証を行うことを特徴とする認証装置。
  16. 請求項15記載の認証装置において、
    第1の乱数生成手段を備え、
    上記認証用データ(C)は上記第1の乱数生成手段により生成された乱数であることを特徴とする認証装置。
  17. 請求項15記載の認証装置において、
    第2の乱数生成手段と、
    認証用素データ(B)を記憶する第5の記憶手段と、
    上記認証用素データ(B)に対し、上記第2の乱数生成手段にて生成された乱数にて乱数効果を付与する第7の演算手段とを備え、
    上記認証用データ(C)は上記認証用素データ(B)に対し、上記第2の乱数生成手段により生成された乱数で乱数効果をかけたものであることを特徴とする認証装置。
  18. 請求項5〜17のいずれかに記載の認証装置において、
    上記第3の記憶手段に記憶されている認証用補助情報(t)は、少なくとも上記制御情報(L)、または上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を鍵として復号されるように上記認証の特徴情報(D)を第2の暗号化方法にて暗号化したものであり、
    上記第1の演算手段は、上記所定関数fの値を計算した後、上記認証用補助情報(t)を復号することにより上記認証の特徴情報(D)を得て、それをもとに上記証明用データを生成することを特徴とする認証装置。
  19. 請求項5〜17のいずれかに記載の認証装置において、
    上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、少なくとも上記制御情報(L)、または上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を鍵として復号されるように上記認証の特徴情報(D)および上記制御情報(L)を第2の暗号化方法にて暗号化したものであり、
    上記第1の演算手段は、上記所定関数fの値を計算した後、上記認証用補助情報(t)を復号することにより上記認証の特徴情報(D)および上記制御情報(L)を得て、上記制御情報(L)と上記所定関数fの値の計算に用いた上記制御情報(L)とが同一であった場合のみ、上記認証の特徴情報(D)をもとに上記証明用データを生成することを特徴とする認証装置。
  20. 請求項5〜17のいずれかに記載の認証装置において、
    上記第3の記憶手段に記憶されている上記認証用補助情報(t)は、少なくとも上記制御情報(L)、または上記制御情報(L)および上記ユーザ固有情報(du)を引数に取る所定の関数fの値を鍵として復号されるように上記認証の特徴情報(D)を第2の暗号化方法にて暗号化したもの(t1)と、
    上記認証の特徴情報(D)および上記制御情報(L)を引数に取る非衝突性一方向性関数の値(t2=g(D,L))とからなり、
    上記第1の演算手段は、上記所定関数fの値を計算した後、上記認証用補助情報(t)を復号することにより上記認証の特徴情報(D)を得て、上記認証の特徴情報(D)および上記所定の関数fの値の計算に用いた上記制御情報(L)とから非衝突性一方向性関数の値を算出した結果が、先に算出した非衝突性一方向関数の値(t2)と同一であった場合のみ、上記認証の特徴情報(D)をもとに上記証明用データを生成することを特徴とする認証装置。
  21. 請求項12記載の認証装置において、
    上記特定データ(K)は保護を必要とするデジタルデータであり、
    上記特定データ(K)を暗号化したものを上記認証用データ(C)とし、
    上記証明用データ生成手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、
    正しく認証された場合に結果として復号された保護を必要とするデジタルデータ(K)を得ることができることを特徴とする認証装置。
  22. 請求項12記載の認証装置において、
    上記特定データ(K)を鍵として復号されるように暗号化されたデータ(X)を保持する第10の記憶手段を備え、
    上記情報処理手段は、上記証明用データ(R)を鍵として上記第10の記憶手段に格納されたデータ(X)を復号する第10の演算手段であり、
    上記特定データ(K)を暗号化したものを上記認証用データ(C)または上記認証用素データ(B)とし、
    上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、
    上記検証手段は、上記情報処理手段により上記証明用データ(R)または上記証明用データ(R)から乱数効果を除去したものを鍵として上記第8の記憶手段に記憶されている上記データ(X)を上記第10の演算手段にて正常に復号できるかどうかを検証することを特徴とする認証装置。
  23. 請求項21記載の認証装置において、
    上記情報処理手段は、ソフトウエアプログラムを実行する第1のプログラム実行手段であり、
    上記保護を必要とするデジタルデータがソフトウエアプログラムであり、上記証明用データを生成することにより上記ソフトウエアプログラムを復号して、上記第1のプログラム実行手段により上記ソフトウエアプログラムを実行することを特徴とする認証装置。
  24. 請求項22記載の認証装置において、
    上記特定データ(K)を鍵として復号されるように一部または全部を暗号化されたプログラム(X)を保持する第10の記憶手段を備え、
    上記情報処理手段は、上記証明用データ(R)を鍵として上記第10の記憶手段に格納された上記プログラム(X)を復号する上記第10の演算手段と、復号されたプログラムを実行する上記第1のプログラム実行手段とを含み、
    上記特定データ(K)を暗号化したものを上記認証用データ(C)または上記認証用素データ(B)とし、
    上記第1の演算手段は、少なくとも上記制御情報(L)および上記認証用補助情報(t)、または少なくとも上記制御情報(L)、上記認証用補助情報(t)および上記ユーザ固有情報(du)を用いて、上記認証用データ(C)を復号することにより上記証明用データ(R)を生成し、
    上記検証手段は、上記情報処理手段により上記証明用データ(R)または上記証明用データ(R)から乱数効果を除去したものを鍵として上記第10の記憶手段に記憶されている上記プログラム(X)を復号して実行し、正常に動作するかどうかを検証することを特徴とする認証装置。
  25. 請求項5〜17のいずれかに記載の認証装置において、
    予め用意された、またはその場で生成された認証用データ(C)を記憶する第11の記憶手段と、
    上記証明用データ生成手段にて生成された証明用データ(R)を記憶する第12の記憶手段と、
    第12の記憶手段に記憶された証明用データの正当性(R)を確認する検証手段とを具備した検証装置と、
    上記認証用データ(C)を記憶する上記第1の記憶手段、上記制御情報(L)を記憶する上記第2の記憶手段、上記認証用補助情報(t)を記憶する上記第3の記憶手段、および上記証明用データ生成手段を具備した証明装置とから構成され、
    上記検証装置は上記第9の記憶手段に記憶されている認証用データ(C)を上記第1の記憶手段に書き出し、
    上記証明装置は上記第1の記憶手段に書き込まれた認証用データ(C)をもとに証明用データ(R)を生成し、上記第9の記憶手段に書き込み、
    上記検証装置は、上記第9の記憶手段に書き込まれた証明用データ(R)を用いて認証を行うことを特徴とする認証装置。
  26. 請求項5〜25のいずれかに記載の認証装置において、
    少なくとも上記第4の記憶手段または上記証明用データ生成手段の一部が、内部のデータを不正に外部から観測することを困難ならしめる防御手段中に保持されていることを特徴とする認証装置。
  27. 請求項5〜26のいずれかに記載の認証装置において、
    少なくとも上記第4の記憶手段または上記証明用データ生成手段の一部が、ICカードを含む携帯可能な装置により実現されていることを特徴とする認証装置。
  28. 請求項5〜27のいずれかに記載の認証装置において、
    時刻を示す時計を備え、
    上記制御情報(L)は、認証を行うことができる有効期間であり、
    認証を行う時の時刻が上記有効期間内にある時のみ上記証明用データ(R)を生成することを特徴とする認証装置。
  29. 請求項5〜27のいずれかに記載の認証装置において、
    今までに認証を行った回数を記録する第13の記憶手段を備え、
    上記制御情報(L)は、認証を行う回数有効範囲であり、
    上記第13の記憶手段の値が上記有効範囲内にある時のみ上記証明用データ(R)を生成することを特徴とする認証装置。
  30. 請求項5〜27のいずれかに記載の認証装置において、
    時刻を示す時計と、
    認証を行った結果に従いサービスを開始した時間およびサービスを終了した時間からユーザがサービスを享受した時間を計算する第11の演算手段と、
    今までにユーザがサービスを享受した時間の合計値を記録する第14の記憶手段を備え、
    上記制御情報(L)は、総利用時間の値の有効範囲であり、
    上記第14の記憶手段の値が上記有効範囲内にある時のみ上記認証明用データ(R)を生成することを特徴とする認証装置。
  31. 請求項5〜27のいずれかに記載の認証装置において、
    認証を行うのに必要なポイント残数または残高情報を記憶する第15の記憶手段を備え、
    上記制御情報(L)は、一回の認証に必要なポイント数または金額情報であり、
    上記第15の記憶手段の値が上記一回の認証に必要なポイント数または金額情報以上の場合のみ上記証明用データ(R)を生成し、上記第15の記憶手段に記憶されている値を上記制御情報(L)に対応する値だけ減ずることを特徴とする認証装置。
  32. 請求項5〜27のいずれかに記載の認証装置において、
    外部に認証を行った結果または認証を行った結果享受されるサービスに関する履歴を出力する機能を備え、
    上記制御情報(L)は、履歴を出力するかどうかのフラグであり、
    履歴を出力することが指定されている場合には認証の履歴を出力し、上記証明用データ(R)を生成することを特徴とする認証装置。
  33. 請求項5〜27のいずれかに記載の認証装置において、
    指紋、声紋、アイリスパターン、網膜パターンなどの個人を識別する特徴情報を抽出するための個体識別情報抽出手段を備え、
    上記制御情報(L)は、個人を識別するための特徴情報または上記特徴情報が取り得る範囲であり、
    上記個体識別情報抽出手段により抽出された特徴情報と上記証明用データの生成を行うための制御情報(L)の間に一定の関係がある場合にのみ上記証明用データ(R)を生成することを特徴とする認証装置。
  34. 請求項5〜27のいずれかに記載の認証装置において、
    パスワードを入力するための入力手段を備え、
    上記制御情報(L)は上記入力手段からの入力であり、
    上記パスワードが入力された場合に上記証明用データ(R)を生成することを特徴とする認証装置。
  35. 請求項5〜27のいずれかに記載の認証装置において、
    プログラムを実行するための第2のプログラム実行手段を備え、
    上記制御情報(L)は上記第2のプログラム実行手段にて実行されるプログラムであり、
    上記プログラムが実行された結果、特定の状態にあるまたは特定の状態で終了した場合に上記証明用データ(R)を生成することを特徴とする認証装置。
  36. 認証用データ(C)を記憶する第1の記憶手段、上記証明用データを生成するための条件に関する制御情報(L)を記憶する第2の記憶手段、少なくとも上記制御情報(L)および認証の特徴情報(D)に予め所定の認証用補助情報生成用の演算を施して生成される認証用補助情報(t)を記憶する第3の記憶手段、証明用データ生成装置制御手段、および第1の演算手段を具備する証明部と、検証手段を具備する検証部とを用いて、ユーザの権限を証明するために上記証明部において生成された証明用データ(R)の正当性を上記検証部において検証することにより、上記ユーザの権限を認証する方法において、
    上記証明部において、上記第1の記憶手段に記憶されている認証用データ(C)を上記第1の演算手段に入力するステップと、
    上記証明部において、上記第2の記憶手段に記憶されている上記証明用データの生成を行うための上記条件に関する制御情報(L)を上記証明用データ生成装置制御手段および上記第1の演算手段に入力するステップと、
    上記証明部において、上記第3の記憶手段に記憶されている認証用補助情報(t)を上記第1の演算手段に入力するステップと、
    上記証明部において、入力された上記制御情報(L)が特定の条件を満たしているかどうかを上記証明用データ生成装置制御手段により判断するステップと、
    上記証明部において、入力された上記制御情報(L)が特定の条件を満たしていると上記証明用データ生成装置制御手段により判断された場合には、上記第1の演算手段を用いて少なくとも上記認証用データ(C)、上記制御情報(L)および上記認証用補助情報(t)に対して証明用データ生成用の演算を実行して証明用データ(R)を算出し、上記検証部側に送出するステップと、
    上記検証部において、上記検証手段により、上記証明部側から受け取った上記証明用データが認証の特徴情報(D)に基づいて生成されていることを検証するステップとを有し、
    上記第1の演算手段が、正当な認証用データ(C)、制御情報(L)および認証用補助情報(t)が与えられた時のみ正当な証明用データ(R)を生成するように、上記認証用補助情報生成用の演算および上記証明用データ生成用の演算が選定されていることを特徴とする認証方法。
  37. 認証用データ(C)を記憶する第1の記憶手段、上記証明用データを生成するための条件に関する制御情報(L)を記憶する第2の記憶手段、少なくとも上記制御情報(L)および認証の特徴情報(D)に予め所定の認証用補助情報生成用の演算を施して生成される認証用補助情報(t)を記憶する第3の記憶手段、証明用データ生成装置制御手段、および第1の演算手段を具備する証明部と、検証手段を具備する検証部とを用いて、ユーザの権限を証明するために上記証明部において生成された証明用データ(R)の正当性を上記検証部において検証することにより、上記ユーザの権限を認証する、コンピュータで用いられる認証用プログラムをコンピュータで読み出し可能に記録する記録媒体において、
    上記証明部において、上記第1の記憶手段に記憶されている認証用データ(C)を上記第1の演算手段に入力するステップと、
    上記証明部において、上記第2の記憶手段に記憶されている上記証明用データの生成を行うための上記条件に関する制御情報(L)を上記証明用データ生成装置制御手段および上記第1の演算手段に入力するステップと、
    上記証明部において、上記第3の記憶手段に記憶されている認証用補助情報(t)を上記第1の演算手段に入力するステップと、
    上記証明部において、入力された上記制御情報(L)が特定の条件を満たしているかどうかを上記証明用データ生成装置制御手段により判断するステップと、
    上記証明部において、入力された上記制御情報(L)が特定の条件を満たしていると上記証明用データ生成装置制御手段により判断された場合には、上記第1の演算手段を用いて少なくとも上記認証用データ(C)、上記制御情報(L)および上記認証用補助情報(t)に対して証明用データ生成用の演算を実行して上記証明用データ(R)を算出し、上記検証部側に送出するステップと、
    上記検証部において、上記検証手段により、上記証明部側から受け取った上記証明用データが上記認証の特徴情報(D)に基づいて生成されていることを検証するステップとを上記コンピュータに実行させるのに用いられ、
    上記第1の演算手段が、正当な認証用データ(C)、制御情報(L)および認証用補助情報(t)が与えられた時のみ正当な証明用データ(R)を生成するように、上記認証用補助情報生成用の演算および上記証明用データ生成用の演算が選定されていることを特徴とする上記記録媒体。
  38. 認証用データ(C)を記憶する第1の記憶手段、上記証明用データを生成するための条件に関する制御情報(L)を記憶する第2の記憶手段、少なくとも上記制御情報(L)および認証の特徴情報(D)に予め所定の認証用補助情報生成用の演算を施して生成される認証用補助情報(t)を記憶する第3の記憶手段、証明用データ生成装置制御手段および第1の演算手段を具備する証明部と、検証手段を具備する検証部とを用いて、ユーザの権限を証明するために上記証明部において生成された証明用データ(R)の正当性を上記検証部において検証することにより、上記ユーザの権限を認証する認証装置の上記証明部をなすコンピュータで用いられる証明用プログラムを当該コンピュータで読み出し可能に記録する記録媒体において、
    上記証明部において、上記第1の記憶手段に記憶されている認証用データ(C)を入力するステップと、
    上記証明部において、上記第2の記憶手段に記憶されている上記証明用データの生成を行うための上記条件に関する制御情報(L)を上記証明用データ生成装置制御手段および上記第1の演算手段に入力するステップと、
    上記証明部において、上記第3の記憶手段に記憶されている認証用補助情報(t)を上記第1の演算手段に入力するステップと、
    上記証明部において、入力された上記制御情報(L)が特定の条件を満たしているかどうかを上記証明用データ生成装置制御手段により判断するステップと、
    上記証明部において、入力された上記制御情報(L)が特定の条件を満たしていると上記証明用データ生成装置制御手段により判断された場合には、上記第1の演算手段を用いて少なくとも上記認証用データ(C)、上記制御情報(L)および上記認証用補助情報(t)に対して証明用データ生成用の演算を実行して証明用データ(R)を算出し、上記検証部側に送出するステップとを上記コンピュータに実行させるのに用いられ、
    上記第1の演算手段が、正当な認証用データ(C)、制御情報(L)および認証用補助情報(t)が与えられた時のみ正当な証明用データ(R)を生成するように、上記認証用補助情報生成用の演算および上記証明用データ生成用の演算が選定されていることを特徴とする上記記録媒体。
JP17984297A 1996-07-22 1997-07-04 認証装置および方法 Expired - Fee Related JP3954692B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17984297A JP3954692B2 (ja) 1996-07-22 1997-07-04 認証装置および方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-191756 1996-07-22
JP19175696 1996-07-22
JP17984297A JP3954692B2 (ja) 1996-07-22 1997-07-04 認証装置および方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003122688A Division JP3972858B2 (ja) 1996-07-22 2003-04-25 署名装置および方法

Publications (2)

Publication Number Publication Date
JPH1093550A JPH1093550A (ja) 1998-04-10
JP3954692B2 true JP3954692B2 (ja) 2007-08-08

Family

ID=26499574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17984297A Expired - Fee Related JP3954692B2 (ja) 1996-07-22 1997-07-04 認証装置および方法

Country Status (1)

Country Link
JP (1) JP3954692B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0838806A (ja) * 1994-07-27 1996-02-13 Fsk Corp 油水分離方法
JP2003271883A (ja) * 2002-03-18 2003-09-26 Matsushita Electric Ind Co Ltd 電子チケットを有する記録媒体、電子チケットを有する情報処理装置、電子チケット検証装置、電子チケット処理システム及び電子チケット処理方法
US7690044B2 (en) 2005-02-18 2010-03-30 Fuji Xerox Co., Ltd. Medium storing program selecting electronic ticket, electronic ticket processing apparatus and electronic ticket selection method
JP2007243703A (ja) * 2006-03-09 2007-09-20 Toshiba Corp 携帯端末
JP4631969B2 (ja) 2008-12-25 2011-02-16 富士ゼロックス株式会社 ライセンス管理装置及びライセンス管理プログラム
JP5531521B2 (ja) 2009-09-11 2014-06-25 富士ゼロックス株式会社 文書管理システム、文書操作装置及びプログラム
EP3826225B1 (en) * 2018-09-04 2023-06-07 Sony Group Corporation Ic card, processing method, and information processing system

Also Published As

Publication number Publication date
JPH1093550A (ja) 1998-04-10

Similar Documents

Publication Publication Date Title
JP3867388B2 (ja) 条件付き認証装置および方法
US9716698B2 (en) Methods for secure enrollment and backup of personal identity credentials into electronic devices
JP4490477B2 (ja) トークン提供
US6490367B1 (en) Arrangement and method for a system for administering certificates
JPH1131204A (ja) 電子チケットシステム
US20020176583A1 (en) Method and token for registering users of a public-key infrastructure and registration system
TW200427284A (en) Personal authentication device and system and method thereof
JPH1131130A (ja) サービス提供装置
JP3954692B2 (ja) 認証装置および方法
JP2000215280A (ja) 本人認証システム
JPH11205306A (ja) 認証装置および認証方法
JP3972858B2 (ja) 署名装置および方法
JP4080116B2 (ja) 認証システム
JP4270589B2 (ja) 電子度数による支払方法および装置
KR100649858B1 (ko) 공중전화 스마트 카드 발급/인증 시스템 및 그 방법
JPH1013402A (ja) 公開鍵暗号の秘密鍵管理方法および装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040204

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040324

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20050311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070427

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 6

S802 Written request for registration of partial abandonment of right

Free format text: JAPANESE INTERMEDIATE CODE: R311802

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140511

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees