JPH10247905A - アクセス資格認証装置および方法 - Google Patents

アクセス資格認証装置および方法

Info

Publication number
JPH10247905A
JPH10247905A JP9038770A JP3877097A JPH10247905A JP H10247905 A JPH10247905 A JP H10247905A JP 9038770 A JP9038770 A JP 9038770A JP 3877097 A JP3877097 A JP 3877097A JP H10247905 A JPH10247905 A JP H10247905A
Authority
JP
Japan
Prior art keywords
data
authentication
proof data
proof
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9038770A
Other languages
English (en)
Other versions
JP3613921B2 (ja
Inventor
Yoshihiro Shin
吉浩 申
Kenichi Kobayashi
健一 小林
Toru Araya
徹 荒谷
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
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 filed Critical Fuji Xerox Co Ltd
Priority to JP03877097A priority Critical patent/JP3613921B2/ja
Publication of JPH10247905A publication Critical patent/JPH10247905A/ja
Application granted granted Critical
Publication of JP3613921B2 publication Critical patent/JP3613921B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2139Recurrent verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【課題】 多数の認証鍵等の固有情報を取り扱うことか
ら派生する負担を、ユーザ側およびアプリケーション作
成者等のプロテクト側の双方から解消する。 【解決手段】 アクセスチケット生成装置12がユーザ
固有情報およびアクセス資格認証の特徴情報からアクセ
スチケットを生成する。ユーザの証明データ生成装置1
1はアクセスチケットを受領し、証明データ検証装置1
0から受信した認証用データを、アクセスチケットおよ
びユーザ固有情報を用いて証明データに変換し、証明デ
ータ検証装置10に返信する。証明データ検証装置10
は証明データを自ら保持する期待値等を用いて検証す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はユーザのアクセス
資格を認証するアクセス資格認証装置および方法に関す
る。
【0002】
【従来の技術】
[関連技術]この発明と同分野に属する先行技術として
プログラムの実行制御技術が知られている。プログラム
実行制御技術は、 1.アプリケーションプログラム中に、ユーザのアクセ
ス資格認証のためのルーチンを埋め込み、 2.該ルーチンはアプリケーションの実行を試みている
ユーザが正規の認証用の鍵を保有していることを検査
し、 3.上記認証用の鍵の存在が確認された場合に限りプロ
グラムを続行し、それ以外の場合にはプログラムの実行
を停止する 技術である。当技術を利用することにより、認証鍵を保
有する正規のユーザにのみアプリケーションプログラム
の実行を可能ならしめることが出来る。当技術はソフト
ウェア頒布事業において実用化されており、製品とし
て、例えばRainbow Technologie
s,Inc.社のSentinel SuperPro
(商標)や、Aladdin Knowledge S
ystemssLtd.社のHASP(商標)等があ
る。
【0003】以下にプログラム実行制御技術についてよ
り詳細に説明する。 1.ソフトウェアの実行を行なうユーザはユーザ固有情
報として認証鍵を保有する。認証鍵は暗号化のための鍵
であり、ソフトウェアの利用を許可する者、例えばソフ
トウェアベンダがユーザに配布する。認証鍵は複製を防
ぐためにハードウェア中のメモリ等に厳重に封入され、
郵便等の物理的手段を用いてユーザに配送される。 2.ユーザは認証鍵を内蔵したハードウェアを指定され
た方法で所有のパソコン・ワークステーションに装着す
る。ハードウェアは、例えばプリンタポートに装着され
る。 3.ユーザがアプリケーションプログラムを起動し、プ
ログラムの実行が上記アクセス資格認証ルーチンに及ぶ
と、プログラムはユーザの認証鍵を内蔵したハードウェ
アと通信する。通信の結果に基づいてプログラムは認証
鍵を識別し、正しい認証鍵の存在が確認されると次のス
テップへ実行を移す。通信が失敗し認証鍵の存在が確認
できない場合は、プログラムは自らを停止し以降の実行
ができないようにする。
【0004】アクセス資格認証ルーチンによる認証鍵の
識別は、例えば、次のようなプロトコルに従って行なわ
れる。 1.アクセス資格認証ルーチンは適当な数を生成し鍵内
蔵ハードウェアに送信する。 2.鍵内蔵ハードウェアは内蔵する認証鍵を用いて送ら
れた数を暗号化し、上記アクセス資格認証ルーチンに返
信する。 3.認証ルーチンは、返信された数が予め予想された
数、即ちハードウェアに送信した数を正しい認証鍵で暗
号化して得られる数であるか否かを判定する。 4.返信された数が予想された数と一致する場合にはプ
ログラムの実行を続行し、一致しない場合には停止す
る。
【0005】この際、アプリケーションプログラムと認
証鍵内蔵ハードウェア間の通信は、たとえ同じアプリケ
ーションプログラム中の同じ箇所において同じハードウ
ェアとの間で交換されるものであろうとも、実行のたび
に異ならなければならない。さもなければ、正常な実行
過程における通信内容を一度記録し、以後プログラムを
実行する度に記録した通りにアプリケーションプログラ
ムへの返信を行なうことにより、正しい認証鍵を保有し
ないユーザでもプログラムを実行することが可能となっ
てしまう。このような通信内容の再現によるアプリケー
ションプログラムの不正実行をリプレイアタック(re
play attack)と呼ぶ。
【0006】リプレイアタックを防ぐために、通常、鍵
内蔵ハードウェアに送られる数は通信の度に新たに生成
される乱数を用いる。
【0007】[従来技術の問題点]従来技術の問題点
は、アプリケーションプログラムを作成する際に、プロ
グラム作成者がユーザが持つ認証鍵を予め想定した上
で、該認証鍵に基づいてプログラムの保護処理を行なわ
なければならないという性質に由来する。つまり、プロ
グラム作成者は、鍵内蔵ハードウェアからの正しい返信
をプログラム作成時に予測して、正しい返信を受けた場
合にのみプログラムが正常に実行されるようにプログラ
ムの作成を行なわなければならない。
【0008】上記特徴を有する従来技術の利用形態は基
本的に二通りとなるが、いずれの場合も以下に述べる問
題を有する。
【0009】1.第一の方法ではユーザの認証鍵をユー
ザ毎に異なるように用意する。即ち、ユーザ甲には認証
鍵甲、ユーザ乙には認証鍵乙というように、ユーザ毎に
異なる認証鍵を一つずつ用意する。
【0010】この場合、プログラム作成者は、プログラ
ム中の認証ルーチンをユーザ毎に適切に変えてプログラ
ムを作成する必要がある。つまり、ユーザ毎に認証鍵が
異なるので、プログラム中の認証ルーチンは該プログラ
ムを利用するユーザ固有の認証鍵を識別するように作成
されなければならず、プログラム作成者は利用ユーザの
数だけ異なるプログラムを作成する必要がある。
【0011】対象となるユーザが多数の場合、プログラ
ムをユーザ毎に個別化する作業はプログラム作成者にと
って耐えがたい労力を要求し、管理しなければならない
ユーザ認証鍵のリストも膨大なものとなる。
【0012】2.第二の方法では、プログラム作成者は
アプリケーション毎にそれぞれ異なる認証鍵を用意す
る。即ち、アプリケーション甲には認証鍵甲、アプリケ
ーション乙には認証鍵乙というように、アプリケーショ
ン毎に異なる認証鍵を一つずつ用意し、固有の認証鍵を
識別するように各アプリケーションプログラムを作成す
る。
【0013】この方法では、第一の方法の場合のように
ユーザ毎にプログラムを個別的に作成する必要は無くな
るが、逆に、ユーザは利用するアプリケーションの数だ
け認証鍵を保持しなければならないこととなる。
【0014】この制約はプログラム作成者およびユーザ
それぞれに以下のような問題を惹起する。
【0015】前述のように、認証鍵はハードウェアに厳
重に封入した状態でユーザに配布する必要がある。従っ
て、プログラム自身はネットワークを介して簡便に配布
することができるのに対し、認証鍵を内蔵するハードウ
ェアの配布は郵便等の物理手段に頼らざるを得ない。プ
ログラム作成者はユーザからアプリケーションの使用許
諾以来を受ける度に、このアプリケーションに対応する
認証鍵が封入されたハードウェアを郵送する必要があ
り、コスト、時間、梱包の手間いずれをとっても、プロ
グラム作成者とって大きな負担となる。
【0016】プログラム作成者は、ユーザの要求に応え
るべく、アプリケーション毎に異なるハードウェアを一
定個数ストックしておかなければならず、在庫管理のコ
ストを必要とする。
【0017】また、ユーザは利用するアプリケーション
を変更する度にハードウェアを交換しなければならない
という煩雑さに甘んじなければならない。
【0018】ユーザがあるアプリケーションを使いたい
としても、認証鍵が封入されたハードウェアが郵送され
るまで待たねばならず即座に利用できないという不便も
ある。
【0019】この負担を軽減するため、ハードウェア中
に複数の認証鍵を予め封入しておき、新しいアプリケー
ションの利用をユーザに許可する度に、ハードウェア中
の未使用の認証鍵を利用可能とするためのパスワードを
ユーザに教えるといった方法が用いられる。しかしなが
ら、この方法を用いたとしても、上記の問題点は原理的
に解決されないことは明らかである。実際、商品化に際
しては、ハードウェアは連接して複数結合することが可
能となるように設計され、上記問題点に起因する不便さ
を緩和するようにしてある。
【0020】このように、上記二つのいずれの方法をと
ったとしても、プログラム作成者およびユーザの利便に
問題が存在する。
【0021】なお、実行制御の外的な特質を考えると、
メールのプライバシー保護やファイルや計算機資源のア
クセス制御にも適用可能であると想像できる。しかしな
がら、従来技術をこれらの分野に適用しようとしても、
上記の問題点により不可能である。
【0022】
【発明が解決しようとする課題】この発明は、以上の事
情を考慮してなされたものであり、多数の認証鍵等の固
有情報を取り扱うことから派生する不具合から、ユーザ
側およびアプリケーション作成者等のプロテクト側の双
方を解消し、もってプログラムの実行制御、メールのプ
ライバシ保護、ファイルや計算機資源のアクセス制御等
を行う際にユーザのアクセス資格を簡易に認証すること
ができるようにしたアクセス資格認証技術を提供するこ
とを目的としている。
【0023】
【課題を解決する手段】この発明の第1の側面によれ
ば、上述の目的を達成するために、ユーザのアクセス資
格を証明するために生成された証明データの正当性を検
証することにより上記ユーザのアクセス資格を認証する
アクセス資格認証装置に、認証用データを記憶する第1
の記憶手段と、ユーザの固有情報を記憶する第2の記憶
手段と、上記ユーザの固有情報と、アクセス資格認証の
特徴情報とに対し、所定の計算を実行した実行結果であ
る証明用補助情報を記憶する第3の記憶手段と、上記第
1の記憶手段に保持されている認証用データと、上記第
2の記憶手段に記憶されている上記ユーザの固有情報
と、上記第3の記憶手段に記憶されている上記証明用補
助情報とに所定の計算を施して証明データを生成する証
明データ生成手段と、上記証明データ生成手段によって
生成された証明データが上記アクセス資格認証の特徴情
報に基づいて生成されていることを検証する証明データ
検証手段とを設けるようにしている。
【0024】この構成によれば、証明用補助データ(ア
クセスチケット)を導入することにより、プロテクト側
で付与されるアクセス資格認証用の特徴情報とユーザ側
に付与されるユーザ固有情報とを独立させることができ
る。ユーザはあらかじめユーザ固有情報を所持し、プロ
グラム作成者等のプロテクト者はユーザが所持するユー
ザ固有情報とは独立にアクセス資格認証の特徴情報を用
意し、アクセスチケットをユーザの固有情報とアプリケ
ーションプログラムの作成等に使用したアクセス資格認
証の特徴情報とに応じて作成し、配布することにより、
実行制御等のユーザのアクセス資格の認証を行なうこと
ができる。このようにして、ユーザもプロテクト側も同
一の情報を用いて認証を行う場合に生じる煩雑さを回避
できる。
【0025】また、この構成においては、少なくとも、
上記第2の記憶手段と、上記証明データ生成手段とが、
内部のデータ及び処理手続を外部から観測することを困
難ならしめる防御手段中に保持されるようにしてもよ
い。また、少なくとも、上記第2の記憶手段と、上記証
明データ生成手段とが、ICカードなどの携帯可能な小
型演算装置として構成されるようにしてもよい。
【0026】また、上記証明データ生成手段が、第1の
演算手段と、第2の演算手段とから構成され、第1の演
算手段は、上記第2の記憶手段に記憶されているユーザ
の固有情報と、上記第3の記憶手段に記憶されている証
明用補助情報とに所定の計算を施し、その結果として上
記アクセス資格認証の特徴情報を算出し、第2の演算手
段は、上記第1の記憶手段に記憶されている認証用デー
タと、第1の演算手段によって算出されたアクセス資格
認証の特徴情報とに所定の計算を施し、その結果として
上記証明データを生成するようにすることもできる。
【0027】また、上記証明データ生成手段が、第3の
演算手段と、第4の演算手段と、第5の演算手段とから
構成され、第3の演算手段は、上記第1の記憶手段に記
憶されている認証用データと、上記第3の記憶手段に記
憶されている証明用補助情報とに所定の計算を施し、第
4の演算手段は、上記第1の記憶手段に記憶されている
認証用データと、第2の記憶手段に記憶されているユー
ザの固有情報とに所定の計算を施し、第5の演算手段
が、上記第3の演算手段による計算結果と、上記第4の
演算手段による計算結果とに所定の計算を施し、その結
果として上記証明データを生成するようにすることもで
きる。この場合においても、少なくとも、上記第2の記
憶手段と、上記第4の演算手段とが、内部のデータ及び
処理手続を外部から観測することを困難ならしめる防御
手段中に保持されるようにしてもよい。また、少なくと
も、上記第2の記憶手段と、上記第4の演算手段とが、
ICカードなどの携帯可能な小型演算装置として構成さ
れるようにすることもできる。この構成では、防御手段
中に保持する手段を小規模にすることができ、特にIC
チップ等を用いた小型の構成が要求される実施態様にお
いて有効である。
【0028】また、上記アクセス資格認証の特徴情報が
暗号関数における復号鍵であり、上記認証用データが適
当なデータを前記復号鍵に対応する暗号化鍵を用いて暗
号化したものであり、上記証明データ検証手段は、上記
証明データ生成手段が生成する上記証明データが認証用
データを正しく復号したものであることを検証するよう
にしてもよい。
【0029】また、上記アクセス資格認証の特徴情報が
暗号関数における暗号化鍵であり、上記証明データ生成
手段が生成する上記証明データが上記認証用データを前
記暗号化鍵を用いて正しく暗号化したものであることを
検証するようにしてもよい。
【0030】また、上記アクセス資格認証の特徴情報が
デジタル署名関数における署名鍵であり、上記証明デー
タ生成手段が生成する上記証明データが、上記認証用デ
ータに対して、前記署名鍵を用いて正しく生成されたデ
ジタル署名であることを検証するようにしてもよい。
【0031】また、暗号化関数が非対称鍵暗号関数であ
り、アクセス資格認証の特徴情報が鍵の一方であっても
よい。
【0032】また、暗号化関数が公開鍵暗号関数であ
り、アクセス資格認証の特徴情報が秘密鍵であってもよ
い。
【0033】また、暗号化関数が対称鍵暗号関数であ
り、アクセス資格認証の特徴情報が共通秘密鍵であって
もよい。
【0034】また、上記第1の記憶手段と、上記第2の
記憶手段と、上記第3の記憶手段と、上記証明データ生
成手段とから構成される証明データ生成装置と、上記証
明データ検証手段に加え、認証用データを記憶する第4
の記憶手段と、証明データを記憶する第5の記憶手段を
備えた証明データ検証装置とが、互いに通信することに
よりユーザのアクセス資格を認証するアクセス資格認証
装置において、証明データ検証装置は、第4の記憶手段
に記憶されている認証用データを証明データ生成装置の
第1の記憶手段に書き出し、証明データ生成装置は、証
明データ生成手段によって第1の記憶手段に書き込まれ
た上記認証用データをもとに生成した証明データを、証
明データ検証装置中の第5の記憶手段に書き出し、証明
データ検証装置は第5の記憶手段に書き込まれた上記証
明データを用いてユーザのアクセス資格を認証するよう
にすることもできる。
【0035】また、上記アクセス資格認証の特徴情報が
暗号化関数の暗号化鍵であり、証明データ検証装置が乱
数生成手段を備え、乱数生成手段は生成した乱数を認証
用データとして第4の記憶手段に書き込み、証明データ
検証手段は、証明データ生成装置によって第5の記憶手
段に書き込まれた証明データが前記乱数である認証用デ
ータをアクセス資格認証の特徴情報である暗号化鍵で暗
号化したものであることを検証するようにしてもよい。
【0036】また、アクセス資格認証の特徴情報が暗号
化関数の復号鍵であり、証明データ検証装置が乱数生成
手段と、生成した乱数を記憶する第6の記憶手段と、認
証用素データを記憶する第7の記憶手段とを備え、乱数
生成手段は生成した乱数を第6の記憶手段に書き込むと
共に、第7の記憶手段に記憶されている認証用素データ
に前記乱数を用いた乱数効果を施した後、認証用データ
として第4の記憶手段に書き込み、証明データ検証手段
は、第6の記憶手段に記憶されている乱数による乱数効
果を、上記証明データ生成装置によって第5の記憶手段
に書き込まれた証明データから除去した結果が、アクセ
ス資格認証の特徴情報である復号鍵で第7の記憶手段に
記憶されている認証用素データを復号したものであるこ
とを検証するようにしてもよい。
【0037】また、上記アクセス資格認証の特徴情報が
デジタル署名関数の署名鍵であり、証明データ検証装置
が乱数生成手段を備え、乱数生成手段は生成した乱数を
認証用データとして第4の記憶手段に書き込み、証明デ
ータ検証手段は、証明データ生成装置によって第5の記
憶手段に書き込まれた証明データが、前記乱数である認
証用データに対する、アクセス資格認証の特徴情報であ
る署名鍵によるデジタル署名であることを検証するよう
にしてもよい。
【0038】また、暗号化関数が法nのもとでのRSA
公開鍵暗号であり、アクセス資格認証の特徴情報が秘密
鍵Dであり、秘密鍵Dに対応する公開鍵がEであり、証
明データ検証手段は、第5の記憶手段に書き込まれた証
明データRをE乗した結果と、第4の記憶手段に記憶さ
れている認証用データCとが、法nのもとで合同である
こと(RE mod n = C mod n)を検証
するようにしてもよい。
【0039】また、暗号化関数が法nのもとでのRSA
公開鍵暗号であり、アクセス資格認証の特徴情報が秘密
鍵Dであり、秘密鍵Dに対応する公開鍵がEであり、上
記第7の記憶手段に記憶される認証用素データがデータ
Kを法nのもとでE乗した数K’(=KE mod
n)であり、上記乱数生成手段は、生成した乱数rを法
nのもとでE乗した数と、前記K’とを法nのもとで乗
じた数C(=rEK’mod n)を認証用データとし
て前記第4の記憶手段に書き込み、証明データ検証手段
は、第6の記憶手段に記憶されている乱数rの法nのも
とでの逆数を、証明データ生成装置によって第5の記憶
手段に書き込まれた証明データRに乗じた数と、前記K
とが法nのもとで合同であること(K mod n=r
-1R mod n)を検証するようにしてもよい。
【0040】また、暗号化関数が法nのもとでのRSA
公開鍵暗号であり、アクセス資格認証の特徴情報が秘密
鍵Dであり、秘密鍵Dに対応する公開鍵がEであり、上
記第3の記憶手段に記憶される証明用補助情報tが、前
記Dから上記第2の記憶手段に記憶されるユーザの固有
情報eを減じ、さらに、前記nとeに依存する非衝突性
関数値ω(=G(n,e))とnのオイラー数φ(n)
との積を加えて得られるデータ(t=D−e+ωφ
(n))であり、上記証明データ生成手段は、前記t
と、前記eと、第1の記憶手段に書き込まれた認証用デ
ータCとから、法nのもとでCのD乗(CD mod
n)を計算することによって前記証明データを生成する
ようにしてもよい。
【0041】また、上記証明データ生成手段が、第3の
演算手段と、第4の演算手段と、第5の演算手段とから
なり、第3の演算手段は、前記法nのもとで前記Cの前
記t乗(Ct mod n)を計算し、第4の演算手段
は、前記法nのもとで前記Cの前記e乗(Ce mod
n)を計算し、第5の演算手段は、前記法nのもとで
第1および第2の演算手段の計算結果を乗じることによ
って、証明データR(=Cte mod n)を生成す
るようにしてもよい。この場合にも、前記第2の記憶手
段及び前記第4の演算手段が、内部の処理手続及びデー
タを外部の観測から防御する防御手段中に内蔵されるよ
うにしてもよい。
【0042】また、暗号化関数が法nのもとでのRSA
公開鍵暗号であり、アクセス資格認証の特徴情報が秘密
鍵Dであり、秘密鍵Dに対応する公開鍵がEであり、上
記第3の記憶手段に記憶される証明用補助情報tが、前
記Dに、上記第2の記憶手段に記憶されるユーザの固有
情報eと前記法nとに依存する非衝突性関数値F(n,
e)を加えて得られるデータ(t=D+F(n,e))
であり、上記証明データ生成手段は、前記tと、前記e
と、前記第1の記憶手段に書き込まれた認証用データC
とから、法nのもとでCのD乗(CD mod n)を
計算することによって前記証明データを生成するように
してもよい。
【0043】また、上記証明データ生成手段が、第3の
演算手段と、第4の演算手段と、第5の演算手段とから
なり、第3の演算手段は、前記法nのもとで前記Cの前
記t乗(Ct mod n)を計算し、第4の演算手段
は、前記法nのもとで前記Cの前記F(n,e)乗(C
F(n,e) mod n)を計算し、第5の演算手段は、前
記法nのもとで、第3の演算手段の計算結果と、第4の
演算手段の計算結果の逆数とを乗じることによって、証
明データR(=Ct-F(n,e) mod n)を生成する
ようにしてもよい。
【0044】また、前記第2の記憶手段及び前記第4の
演算手段が、内部の処理手続及びデータを外部の観測か
ら防御する防御手段中に内蔵されるようにしてもよい。
【0045】また、暗号化関数が法pのもとでのPoh
lig−Hellman非対称鍵暗号であり、アクセス
資格認証の特徴情報が一方の鍵Dであり、鍵Dに対応す
る他方の鍵がEであり(DE mod p−1 =
1)、証明データ検証手段は、第5の記憶手段に書き込
まれた証明データRをE乗した結果と、第4の記憶手段
に記憶されている認証用データCとが法pのもとで合同
であること(RE mod p = C mod p)
を検証するようにしてもよい。
【0046】また、暗号化関数が法pのもとでのPoh
lig−Hellman非対称鍵暗号であり、アクセス
資格認証の特徴情報が一方の鍵Dであり、鍵Dに対応す
る他方の鍵がEであり(DE mod p−1 =
1)、上記第7の記憶手段に記憶される認証用素データ
がデータKを法pのもとでE乗した数K’(=KE
od p)であり、上記乱数生成手段は、生成した乱数
rを法pのもとでE乗した数と、前記K’とを法pのも
とで乗じた数C(=rEK’ mod p)を認証用デ
ータとして前記第4の記憶手段に書き込み、証明データ
検証手段は、第6の記憶手段に記憶されている乱数rの
法pのもとでの逆数を、証明データ生成装置によって第
5の記憶手段に書き込まれた証明データRに乗じた数
と、前記Kとが法pのもとで合同であること(K mo
d p=r-1R mod p)を検証するようにしても
よい。
【0047】また、暗号化関数が法pのもとでのPoh
lig−Hellman非対称鍵暗号であり、アクセス
資格認証の特徴情報が一方の鍵Dであり、鍵Dに対応す
る他方の鍵がEであり(DE mod p−1 =
1)、上記第3の記憶手段に記憶される証明用補助情報
tが、前記Dに、上記第2の記憶手段に記憶されるユー
ザ固有情報eと前記pとに依存する非衝突性関数値F
(p,e)を加えて得られるデータ(t=D+F(p,
e))であり、上記証明データ生成手段は、前記tと、
前記eと、第1の記憶手段に書き込まれた認証用データ
Cとから、法pのもとでCのD乗(CD mod p)
を計算することによって前記証明データを生成するよう
にしてもよい。
【0048】また、上記証明データ生成手段が、第3の
演算手段と、第4の演算手段と、第5の演算手段とから
なり、第3の演算手段は、前記法pのもとで前記Cの前
記t乗(Ct mod p)を計算し、第4の演算手段
は、前記法pのもとで、前記F(p,e)を指数とし
て、前記Cのべき乗(CF(p,e) mod p)を計算
し、第5の演算手段は、前記法pのもとで、第3の演算
手段の計算結果と、第4の演算手段の計算結果の逆数と
を乗じることによって、証明データR(=Ct-F(p,e)
mod p)を生成するようにしてもよい。この場合
にも、前記第2の記憶手段及び前記第4の演算手段が、
内部の計算手順及びデータを外部の観測から防御する防
御手段中に内蔵されるようにしてもよい。
【0049】また、暗号化関数が法p、生成元aのもと
でのElGamal公開鍵暗号であり、アクセス資格認
証の特徴情報が一方の鍵Xであり、鍵Xに対応する公開
鍵がYであり(Y = aX mod p)、uが上記
aを法pのもとで適当な乱数zを指数としてべき乗した
数であり(u=az mod p)、K’が、上記Yを
法pのもとで上記乱数zを指数としてべき乗した数と、
データKとの積であるとき(K’=YzK mod
p)、上記第7の記憶手段に認証用素データとしてu及
びK’の組が記憶され、上記乱数生成手段は、上記u
と、生成した乱数rを前記K’に法pのもとで乗じた数
C(=rK’ mod p)とを認証用データとして前
記第4の記憶手段に書き込み、証明データ検証手段は、
第6の記憶手段に記憶されている乱数rの法pのもとで
の逆数を、証明データ生成装置によって第5の記憶手段
に書き込まれた証明データRに乗じた数と、前記Kとが
法pのもとで合同であること(K mod p=r-1
mod p)を検証するようにしてもよい。
【0050】また、暗号化関数が法p、生成元aのもと
でのElGamal公開鍵暗号であり、アクセス資格認
証の特徴情報が一方の鍵Xであり、鍵Xに対応する公開
鍵がYであり(Y = aX mod p)、上記第3
の記憶手段に記憶される証明用補助情報tが、前記X
に、上記第2の記憶手段に記憶されるユーザ固有情報e
と前記pとに依存する非衝突性関数値F(p,e)を加
えて得られるデータ(t=X+F(p,e))であり、
上記証明データ生成手段は、前記tと、前記eと、第1
の記憶手段に書き込まれた認証用データu及びCから、
法pのもとで、Cを上記uのX乗で割った数(Cu-X
mod p)を計算することによって上記証明データを
生成するようにしてもよい。
【0051】また、上記証明データ生成手段が、第3の
演算手段と、第4の演算手段と、第5の演算手段とから
なり、第3の演算手段は、前記法pのもとで前記uの前
記t乗(ut mod p)を計算し、第4の演算手段
は、前記法pのもとで前記uの前記F(p,e)乗(u
F(p,e) mod n)を計算し、第5の演算手段は、前
記法pのもとで、上記Cを第3の演算手段の計算結果で
割り、さらに、第4の演算手段の計算結果を乗じること
によって、証明データR(=Cu-tF(p,e)mod
p)を生成するようにしてもよい。この場合、前記第2
の記憶手段及び前記第4の演算手段が、内部の計算手順
及びデータを外部の観測から防御する防御手段中に内蔵
されるようにしてもよい。
【0052】また、署名関数が法p、生成元aのもとで
のElGamal署名であり、アクセス資格認証の特徴
情報が一方の鍵Xであり、鍵Xに対応する公開鍵がYで
あり(Y = aX mod p)、証明データ検証手
段は、第5の記憶手段に書き込まれた証明データR及び
Sに対して、法pのもとで、上記aを第4の記憶手段に
記憶されている認証用データCを指数としてべき乗した
値と、上記YをR乗した値とRをS乗した値との積とが
法pのもとで合同であること(aC modp = YR
S mod p)を検証するようにしてもよい。
【0053】また、署名関数が法p、生成元aのもとで
のElGamal署名であり、アクセス資格認証の特徴
情報が一方の鍵Xであり、鍵Xに対応する公開鍵がYで
あり(Y = aX mod p)、上記第3の記憶手
段に記憶される証明用補助情報tが、前記Xに、上記第
2の記憶手段に記憶されるユーザ固有情報eと前記pと
に依存する非衝突性関数値F(p,e)を加えて得られ
るデータ(t=X+F(p,e))であり、上記証明デ
ータ生成手段は、証明データR及びSを生成するに当た
り、適当な乱数kを生成し、法pのもとでの上記aのk
乗をR(=akmod p)とし、前記tと、前記e
と、第1の記憶手段に書き込まれた認証用データCか
ら、法p−1のもとで、CからXとrの積を引いた数に
kの逆数を乗じることによって、S(=(C−RX)k
-1 mod p−1)を計算するようにしてもよい。こ
の場合、第2の記憶手段及び証明データ生成手段が、内
部の計算手順及びデータを外部の観測から防御する防御
手段中に内蔵されるようにしてもよい。
【0054】また、上記ユーザの固有情報が暗号関数の
復号鍵であり、証明用補助情報がアクセス資格認証のた
めの特徴情報を前記復号鍵に対応する暗号化鍵によって
暗号化したものであり、第1の演算手段は上記ユーザの
固有情報である復号鍵を用いて、証明用補助情報を復号
することにより、アクセス資格認証のための特徴情報を
算出するようにしてもよい。この場合、上記暗号関数が
非対称鍵暗号関数であり、ユーザの固有情報が一方の鍵
であってもよい。また、上記暗号関数が公開鍵暗号関数
であり、ユーザの固有情報が秘密鍵であってもよい。ま
た、記暗号関数が対称鍵暗号関数であり、ユーザの固有
情報が共通秘密鍵であってもよい。
【0055】また、上記証明データ検証手段は、さら
に、暗号化されたデータである上記認証用データあるい
は上記認証用素データに対応する平文データを記憶する
第8の記憶手段と、比較手段とを有し、上記比較手段
は、上記証明データ生成手段が生成した上記証明データ
或は必要に応じて証明データから乱数効果を除去した結
果と、第8の記憶手段に記憶されている平文データを比
較し、両者が一致した場合に限り、上記証明データが正
当であると判断するようにしてもよい。
【0056】また、上記証明データ検証手段は、さら
に、暗号化されたデータである上記認証用データあるい
は上記認証用素データに対応する平文データに所定の一
方向関数を施した結果を記憶する第9の記憶手段と、上
記一方向関数を実行する第6の演算手段と、比較手段と
を有し、第6の演算手段は、上記証明データ生成手段が
生成した上記証明データに、必要ならば乱数効果を取り
除いたのち、一方向関数を施し、上記比較手段は、第6
の演算手段による計算結果と、第9の記憶手段に記憶さ
れているデータを比較し、両者が一致した場合に限り、
上記証明データが正当であると判断するようにしてもよ
い。
【0057】また、上記証明データ検証手段は、さら
に、プログラム実行手段を含み、上記認証用データある
いは上記認証用素データは、プログラムを暗号化して得
られるデータであり、上記証明データ検証手段が、証明
データ生成手段が生成した上記証明データを、必要なら
ば乱数効果を取り除いたのち、プログラムとしてプログ
ラム実行手段に引き渡すことにより、証明データ生成手
段が暗号化されたプログラムである上記認証用データあ
るいは認証用素データを正しく復号した場合、即ち、暗
号化されたプログラムが正しく復号された場合に限り、
プログラム実行手段が正しい動作を行うようにしてもよ
い。
【0058】また、上記証明データ検証手段は、さら
に、プログラム実行手段と、プログラム記憶手段と、プ
ログラム復号手段とを含み、プログラム記憶手段に記憶
されているプログラムは、その一部あるいは全部が暗号
化されたものであり、上記認証用データあるいは上記認
証用素データは、前記暗号化されたプログラムを復号す
るための復号鍵を別途暗号化して得られるデータであ
り、上記証明データ検証手段は、証明データ生成手段が
生成した上記証明データをプログラム復号手段に引き渡
し、プログラム復号手段は、必要ならば乱数効果を取り
除いたのち、前記証明データ生成手段が生成した証明デ
ータを復号鍵として用いることにより、プログラム記憶
手段に記憶されたプログラムの必要な部分を復号し、プ
ログラム実行手段が復号されたプログラムを実行するこ
とにより、証明データ生成手段が上記認証用データある
いは認証用素データを正しく復号された場合、即ち、暗
号化されたプログラムを復号するために復号鍵が正しく
復号された場合に限り、プログラム実行手段が正しい動
作を行うようにしてもよい。
【0059】また、上記証明データ生成装置および上記
証明データ認証装置が同一の筺体内に設けられ、上記証
明データ生成装置および上記証明データ認証装置が、当
該筺体の外部の通信媒体を解さずに通信を行うようにし
てもよい。
【0060】また、この発明の第2の側面によれば、ユ
ーザのアクセス資格を証明するために認証用データから
生成された証明データの正当性を検証することにより上
記ユーザのアクセス資格を認証するアクセス資格認証方
法において、上記認証用データを記憶するステップと、
ユーザの固有情報を記憶するステップと、上記ユーザの
固有情報と、アクセス資格認証の特徴情報とに対し、所
定の計算を実行した実行結果である証明用補助情報を記
憶するステップと、上記認証用データと、上記ユーザの
固有情報と、上記証明用補助情報とに所定の計算を施し
て証明データを生成するステップと、上記証明データ生
成手段によって生成された証明データが上記アクセス資
格認証の特徴情報に基づいて生成されていることを検証
するステップとを実行するようにしている。
【0061】また、この発明の第3の側面によれば、ユ
ーザのアクセス資格を証明するために認証用データから
生成された証明データの正当性を検証することにより上
記ユーザのアクセス資格を認証するために、コンピュー
タで用いられるアクセス資格認証用プログラム製品にお
いて、上記認証用データを記憶するステップと、ユーザ
の固有情報を記憶するステップと、上記ユーザの固有情
報と、アクセス資格認証の特徴情報とに対し、所定の計
算を実行した実行結果である証明用補助情報を記憶する
ステップと、上記認証用データと、上記ユーザの固有情
報と、上記証明用補助情報とに所定の計算を施して証明
データを生成するステップと、上記証明データ生成手段
によって生成された証明データが上記アクセス資格認証
の特徴情報に基づいて生成されていることを検証するス
テップとを上記コンピュータに実行させるのに用いるよ
うにしている。
【0062】また、この発明の第4の側面によれば、ユ
ーザのアクセス資格を認証するために正当性を検証され
る証明データを、認証用データから生成するために、コ
ンピュータで用いられる証明データ生成用プログラム製
品において、上記認証用データを記憶するステップと、
ユーザのの固有情報を記憶するステップと、上記ユーザ
の固有情報と、アクセス資格認証の特徴情報とに対し、
所定の計算を実行した実行結果である証明用補助情報を
記憶するステップと、上記認証用データと、上記ユーザ
の固有情報と、上記証明用補助情報とに所定の計算を施
して証明データを生成するステップとを上記コンピュー
タに実行させるのに用いるようにしている。
【0063】また、この発明の第5の側面によれば、ユ
ーザのアクセス資格を証明するために生成された証明デ
ータの正当性を検証することにより上記ユーザのアクセ
ス資格を認証し、上記資格の認証に基づいてプログラム
の実行を制御するプログラム実行制御装置に、認証用デ
ータを記憶する第1の記憶手段と、ユーザの固有情報を
記憶する第2の記憶手段と、上記ユーザの固有情報と、
アクセス資格認証の特徴情報とに対し、所定の計算を実
行した実行結果である証明用補助情報を記憶する第3の
記憶手段と、上記第2の記憶手段に記憶されている上記
ユーザの固有情報と、上記第3の記憶手段に記憶されて
いる上記証明用補助情報とを利用して、上記認証用デー
タから上記証明データを生成する証明データ生成手段
と、上記証明データ生成手段から生成された証明データ
の正当性を検証する手段と、上記証明データの正当性が
検証されたときにプログラムの実行を継続する手段とを
設けるようにしている。
【0064】また、この発明の第6の側面によれば、所
定の情報処理資源へのユーザのアクセス資格を証明する
ために生成された証明データの正当性を検証することに
より上記ユーザのアクセス資格を認証して上記所定の情
報処理資源へのアクセスを許容する情報処理装置に、認
証用データを記憶する第1の記憶手段と、ユーザの固有
情報を記憶する第2の記憶手段と、上記ユーザの固有情
報と、アクセス資格認証の特徴情報とに対し、所定の計
算を実行した実行結果である証明用補助情報を記憶する
第3の記憶手段と、上記第2の記憶手段に記憶されてい
る上記ユーザの固有情報と、上記第3の記憶手段に記憶
されている上記証明用補助情報とを利用して、上記認証
用データから上記証明データを生成する証明データ生成
手段と、上記証明データ生成手段から生成された証明デ
ータの正当性を検証する手段と、上記正当性の検証に基
づいて上記所定の情報処理資源へのアクセスを許可する
手段とを設けるようにしている。
【0065】
【発明の実施の態様】まず、この発明の原理的な構成例
について説明する。この構成例のユーザ認証システム
は、アプリケーションの実行制御のみでなくメールのプ
ライバシー保護やファイルや計算機資源等のアクセス制
御にも適用できる。
【0066】図1において、ユーザ認証システムは証明
データ検証装置10および証明データ生成装置11から
なっており、証明データ生成装置11はアクセスチケッ
ト生成装置12からアクセスチケット(証明用補助デー
タ)13を受領するようになっている。証明データ検証
装置10は検証ルーチン15を実行する。証明データ生
成装置11はユーザ固有情報16およびアクセスチケッ
ト13を保持し、証明データ生成プログラム17を実行
する。
【0067】アクセスチケット生成装置12はアプリケ
ーション作成者等のプロテクト側或は信頼できる第三者
に設けられている。アクセスチケット生成装置12はア
クセス資格認証の特徴情報14およびユーザ固有情報1
6に基づいてアクセスチケット13を生成し、このアク
セスチケット13が通信またはフロッピーディスケット
等の送付を介してユーザに送られ、ユーザの証明データ
生成装置11に保持される。この後、証明データ検証装
置10は認証用データ18を証明データ生成装置11に
送出する。証明データ生成装置11はアクセスチケット
13およびユーザ固有情報16を用いて証明データ19
を生成し、これを証明データ検証装置10に返信する。
証明データ検証装置10は認証用データに基づいて証明
データの正当性を検証する。すなわち、証明データが、
認証用データとアクセス資格認証の特徴情報とに基づい
て生成されたデータであることを検証する。
【0068】証明データの正当性が検証されれば、ユー
ザのアクセス資格が認証され、これに応じて、プログラ
ムの実行継続、ファイルへのアクセス等が許される。
【0069】以上の構成について、アプリケーションプ
ログラムの実行制御を例にとってさらに説明する。
【0070】このような構成において、まず、アプリケ
ーションプログラムのユーザはユーザ固有情報16をた
だ一つ保持する。ユーザ固有情報は、パスワード認証に
おけるパスワードに相当するものであり、ユーザの身許
を証明する唯一の重要な情報である。ユーザがユーザ固
有情報16をコピーして配布することができると、正当
な利用権をもたないユーザにもアプリケーションプログ
ラムの使用等を許すこととなるので、ユーザ固有情報1
6はその正当な保持者であるユーザもこれを窃取するこ
とができないように、防御手段によって保護される。こ
の防御手段は、プローブによる内部状態の窃取への防御
力を有するハードウェア(以下、耐タンパーハードウェ
アと呼ぶ)により構成することができる。耐タンパーハ
ードウェアの実現手法については後述する。
【0071】また、ユーザには、上記ユーザ固有情報1
6に加えて、所定の計算手続きを実行する証明データ生
成プログラム17が与えられる。このプログラム17
は、アプリケーション中のユーザ認証ルーチン(証明デ
ータ検証ルーチン15)と通信を行なうためのものであ
り、ユーザ固有情報16およびアクセスチケット13の
ふたつのパラメータが与えられると、任意の入力値に対
して計算を行ないユーザの身元を証明する証明データ1
9を生成する。この計算の過程でユーザ固有情報16が
用いられるが、前に述べた理由によりユーザ固有情報1
6が外部に漏洩すると問題があるため、上記プログラム
の少なくとも一部は上記防御手段によって保護される必
要がある。
【0072】以下、上記防御手段によって保護されてい
るユーザ固有情報記憶手段およびプログラムの一部と、
該プログラム部分を実行するための装置(例えばメモリ
とMPUにより構成される)と、上記防御手段とを併せ
てトークン(図1の符号20で示す)と呼ぶこととす
る。トークンはICカードのような可搬性を有する構成
とすることもできる。
【0073】一方、従来の実行制御技術と同様に、アプ
リケーションプログラム中には証明データ検証ルーチン
15が組み込まれる。証明データ検証ルーチン15は、
ユーザが保持する上記証明データ生成プログラム17と
通信し、返信結果(証明データ19)が正しい場合に限
りプログラムの実行を続行するように作成される点にお
いて、従来技術と同様である。従って、プログラム作成
者は、送信データ(認証用データ18)とそれに対する
正しい返信データ(証明データ19)の組合せを計算す
る方法を知っている必要がある。
【0074】証明データ検証ルーチン15の作用を以下
に数例述べる。 1.証明データ検証ルーチン15中には、送信するべき
データ(認証用データ18)と期待される返信データ
(期待値)が埋入されている。証明データ検証ルーチン
15は上記送信データを取り出してユーザに送信し、ユ
ーザから返信を受け取る。次いで、ユーザからの返信デ
ータと上記期待値とを比較し、両者が一致した場合はプ
ログラムの次のステップを実行し、一致しない場合はプ
ログラムの実行を停止する。
【0075】ここで、返信データが送信データの所定の
暗号化アルゴリズムに従う暗号化の結果であるとした場
合には、アクセス資格認証の特徴情報は暗号化鍵とな
る。
【0076】2.証明データ検証ルーチン15中には、
送信するべきデータと、期待される返信データに一方向
関数を施したデータ(期待値)が埋入されている。証明
データ検証ルーチン15は上記送信データを取り出して
ユーザに送信し、ユーザから返信を受け取る。次いで、
ユーザからの返信データに上記一方向関数を施した値
を、上記期待値と比較し、両者が一致した場合はプログ
ラムの次のステップを実行し、一致しない場合はプログ
ラムの実行を停止する。
【0077】ここで、返信データが送信データの所定の
暗号化アルゴリズムに従う暗号化の結果であるとした場
合には、アクセス資格認証の特徴情報は暗号化鍵とな
る。
【0078】3.アプリケーションプログラムのコード
の一部を予め定められた暗号化アルゴリズムに従って暗
号化しておくことにより、該プログラムの実行が不可能
となるようにするプロテクトを施す。証明データ検証ル
ーチン15は、上記暗号化されたコードをユーザに送信
し、その返信として受け取った値を暗号化以前のコード
と置き換える手続きを行なう。
【0079】以上の構成によると、返信データが暗号化
されたコードの正しい復号である場合に限り、該プログ
ラムの実行が可能となる。この場合のアクセス資格認証
の特徴情報は暗号化されたコードを復号するための復号
鍵となる。
【0080】4.アプリケーションプログラムのコード
の一部を予め定められた暗号化アルゴリズムに従って暗
号化しておくことにより、該プログラムの実行が不可能
となるようにするプロテクトを施す。更に、上記コード
の暗号化に用いた暗号化鍵と対をなす復号鍵を別途暗号
化したデータを送信データとして証明データ検証ルーチ
ン15中に埋入しておく。証明データ検証ルーチン15
は、上記暗号化された復号鍵をユーザに送信し、その返
信として受け取った値を復号鍵として、上記暗号化され
たコードを復号する。
【0081】以上の構成によると、返信データが正しく
復号された復号鍵である場合にかぎって、上記暗号化さ
れたコードは正しく復号され、該プログラムの実行が可
能となる。この場合のアクセス資格認証の特徴情報は暗
号化された復号鍵を復号するための復号鍵となる。
【0082】さて、従来の実行制御技術では、ユーザ固
有情報(ユーザの認証鍵)がアクセス資格認証の特徴情
報と同一である。従来の証明データ生成ルーチンはアク
セス資格認証の特徴情報と証明データ検証ルーチンから
送信されたデータとを入力として、返信データを計算す
る。
【0083】これに対し、この発明の特徴は、ユーザ固
有情報16とアクセス資格認証の特徴情報14とが互い
に独立である点にある。この構成例でも、証明データ生
成プログラム17は、ユーザ固有情報16と証明データ
検証ルーチン15から送信されたデータ(認証用データ
18)に加えて、アクセスチケット13を入力として、
返信データ(証明データ19)を計算する。この構成は
以下の性質をもつ。
【0084】1.アクセスチケット13は特定のユーザ
固有情報16とアクセス資格認証の特徴情報14とに基
づいて計算されるデータである。 2.ユーザ固有情報16を知らずにアクセスチケット1
3からアクセス資格認証の特徴情報14を計算すること
は少なくとも計算量的に不可能である。 3.証明データ生成プログラム17はユーザ固有情報1
6とアクセスチケット13との正しい組合せ、即ち、ユ
ーザ固有情報16と該ユーザ固有情報16に基づいて計
算されたアクセスチケット13の組合せが入力された場
合に限って、正しい返信データを計算する。
【0085】以上により、ユーザはあらかじめユーザ固
有情報16を所持し、プログラム作成者はユーザが所持
するユーザ固有情報16とは独立にアプリケーションプ
ログラムを作成し、アクセスチケット13をユーザ固有
情報16とアプリケーションプログラムの作成に使用し
たアクセス資格認証の特徴情報14とに応じて作成し、
配布することにより、実行制御を行なうことができる。
【0086】また、ユーザ固有情報16を二つの固有情
報からなるものとし、アクセスチケット13の作成に際
して用いる固有情報と、ユーザが通信プログラムにおい
て用いる固有情報とを区別して用いることもできる。最
も典型的な例は、ユーザ固有情報16を公開鍵ペアと
し、公開鍵を公開してアクセスチケット作成に用い、個
人鍵をユーザ個人の秘密情報としてトークン20中に封
入しておく方法である。この場合は、アクセスチケット
13をアクセス資格認証の特徴情報14と上記公開鍵ペ
アの公開鍵から計算できるようにすることにより、ユー
ザ固有情報16を秘密に保ったままアクセスチケット1
3を計算することが可能となる。
【0087】
【実施例】つぎにより具体的な構成について実施例に即
して説明する。 [全体構成]
【0088】具体的な個別の実施例を述べる前に、この
発明の実施形態の全体像を以下に述べる。
【0089】まず、この発明を、ユーザのPCあるいは
ワークステーション上で動作するアプリケーションプロ
グラムの実行制御に用いる場合について述べる。図2は
この実施形態における装置の全体構成を示す。なお、図
2において図1と対応する箇所には対応する符号を付し
て詳細な説明は繰り返さない。
【0090】この実施形態においては、証明データ生成
装置11はユーザが用いる計算機31上の証明用プログ
ラム32として実現することができる。この際、ユーザ
を識別するための固有情報(ユーザ固有情報)の安全性
を高めるために、該計算機31に装着され、耐タンパー
特性を有する証明用ハードウェア33(ICカード、ボ
ードなど)を併用することも可能である。この際、IC
カードのような携帯性のあるハードウェアを用いれば、
ユーザが複数のPCあるいはワークステーション上で作
業をする場合に便利である。
【0091】証明データ検証装置10は該ユーザが利用
するアプリケーションプログラム34の一部として構成
される。即ち、ユーザが該アプリケーションプログラム
34をPCあるいはワークステーション上で起動する
と、該アプリケーションプログラム34中にプログラム
として記述された証明データ検証装置10が起動され、
証明データ生成装置11と通信してユーザ認証を行な
い、通信が正しく終了した場合に限って該アプリケーシ
ョンプログラムの実行を可能とする。
【0092】ユーザが、証明データ検証装置10が埋め
こまれた前記アプリケーションプログラム34を利用す
るためには、ユーザ本人宛に発行され、前記アプリケー
ションプログラムに対応する証明用補助情報(アクセス
チケット)を取得する必要がある。ユーザは、前記PC
あるいはワークステーション上にインストールされた証
明用プログラム32に、取得したアクセスチケットを登
録するとともに、例えば、ユーザ固有情報がICカード
に封入されている場合には、ICカードを前記PCある
いはワークステーションに装着する。
【0093】証明データ生成装置11(PCあるいはワ
ークステーション上のプログラムとICカードによって
構成される)は、ユーザ固有情報とアクセスチケットに
基づいて計算を行い、その計算に基づいて証明データ検
証装置10と通信を行う。
【0094】通信の結果、証明データ検証装置10によ
る認証が成功するのは、ユーザ固有情報と、アクセスチ
ケットと、証明データ検証装置10が埋めこまれた前記
アプリケーションプログラム34の三つが正しく対応し
ている場合に限る。
【0095】ユーザ固有情報あるいはアクセスチケット
の一方が欠けていた場合には、認証は成功しない。
【0096】アクセスチケットは特定のユーザ宛に発行
される。即ち、アクセスチケットの生成に際して、特定
のユーザのユーザ固有情報が使用される。アクセスチケ
ット生成時に使用されるユーザ固有情報と、証明データ
生成装置11によって使用される前記ユーザ固有情報と
が一致していない場合、やはり、認証は成功しない。
【0097】また、アクセスチケットは、特定のアクセ
ス資格認証の特徴情報に基づいて生成され、証明データ
検証装置10はこのアクセス資格認証の特徴情報を認証
するように構成される。従って、アクセスチケットの生
成のもととなった特徴情報と、アプリケーションプログ
ラム34に埋めこまれている証明データ検証装置10が
認証しようとする特徴情報とが互いに対応していなかっ
た場合にも、認証は成功しない。
【0098】なお、図2において、35はオペレーティ
ング・システム等の制御プログラムであり、36はハー
ドウェア全般を示す。
【0099】また、アプリケーションプログラム34が
ネットワークによって結合された別の計算機上で実行さ
れ、実行結果がネットワークを介してユーザが用いる計
算機に通信されるものとしてもよい。この場合、いわゆ
るサーバ・クライアントモデルに基づく構成となる。先
に述べた、ユーザのPCあるいはワークステーション上
で実行されるアプリケーションプログラムの実行制御の
場合では、証明データ生成装置11と証明データ検証装
置10との通信がいわゆるプロセス間通信として実行さ
れるのに対し、サーバ・クライアント・モデルに従った
場合、証明データ生成装置11と証明データ検証装置1
0との通信はTCP/IPなどのネットワークプロトコ
ルに従った通信として実行される。
【0100】また、アプリケーションプログラムが専用
装置上に構成されている場合にも、この発明を適用する
ことが可能である。例えば、証明データ生成装置全体を
ICカード内に実装し、取得したアクセスチケットもI
Cカードに登録するものとする。証明データ検証装置は
前記専用装置上に実装されるが、該専用装置はICカー
ドを挿入するためのスロットを備え、ユーザは該スロッ
トに所有するICカードを挿入することで認証を行う。
このような専用装置による構成は、銀行のATM機や、
ゲームセンターにおけるゲーム機などに適用することが
できる。
【0101】ユーザによるアクセスチケットの取得に関
しては、共通のセンターがユーザからの発行依頼に応じ
て生成して配布する方法と、アプリケーションプログラ
ムの作成者が、アクセスチケット発行プログラムやアク
セスチケット生成装置の助けを借りて個別に生成する方
法がある。
【0102】生成されたアクセスチケットは、フロッピ
ーディスク等の可搬型記憶媒体を介してユーザに配送さ
れるものとしてもよいが、アクセスチケットが十分な安
全性を備えていることから、電子メールなどを用いてネ
ットワークを介して配送されるように構成してもよい。
【0103】アクセスチケットの安全性とは、以下の二
つの性質である。
【0104】アクセスチケットは記名式であり、即ち、
アクセスチケットが発行されたユーザ本人(正確には、
アクセスチケット生成時に用いられたユーザ固有情報の
保持者)だけが該アクセスチケットを用いて証明データ
生成装置を正しく作動させることができる。従って、悪
意の第三者がネットワークを盗聴し、他のユーザのアク
セスチケットを不正に手に入れたとしても、この第三者
がアクセスチケットの発行先である正規のユーザのユー
ザ固有情報を手に入れないかぎり、このアクセスチケッ
トを利用することは不可能である。
【0105】アクセスチケットはさらに厳密な安全性を
保持している。即ち、悪意の第三者が任意個数のアクセ
スチケットを集めて、いかなる解析を行ったとしても、
得られた情報をもとに別のアクセスチケットを偽造した
り、証明データ生成装置の動作を模倣して認証を成立さ
せるような装置を構成することは不可能である。
【0106】以下では、より具体的な構成について実施
例に即して説明する。 [第一の実施例]
【0107】この発明における第一の実施例では、アク
セスチケットtは次の式1に基づいて生成されるデータ
である。
【数1】(1) t = D−e+ωφ(n) 上式中の各記号は以下を表す。
【0108】nはRSA法数、即ち、十分大きな二つの
素数p、qの積である(n=pq)。
【0109】φ(n)はnのオイラー数、即ち、p−1
とq−1の積である(φ(n)=(p−1)(q−
1))。
【0110】ユーザ固有情報eは、ユーザ毎に異なる数
であり、ユーザを識別するために用いられる。
【0111】アクセスチケット秘密鍵Dは、法数nのも
とでのRSA秘密鍵であり、式2を満たす。
【数2】(2) gcd(D,φ(n))=1 ここで、gcd(x,y)は二数x、yの最大公約数を
表す。式(2)によって表現される性質は、式3を満た
す数Eが存在することを保証する。
【数3】 (3) ED mod φ(n) = 1 Eをアクセスチケット公開鍵と呼ぶ。
【0112】ωは、n及びeに依存して定まる数であ
り、nあるいはeのいずれか一方が異なる場合、その値
が容易に一致しない(衝突しない)ように定める。ωの
定め方の一例として、一方向ハッシュ関数hを利用し
て、式4のようにωを定める方法もある。
【数4】(4) ω=h(n|e) ただし、記号|はビット列の接合を表す。
【0113】一方向ハッシュ関数とは、h(x)=h
(y)を満たす相異なるx、yを算出することが著しく
困難であるという性質をもつ関数である。一方向ハッシ
ュ関数の例として、RSA Data Securit
y Inc.によるMD2、MD4、MD5、米国連邦
政府による規格SHS(Secure Hash St
andard)が知られている。
【0114】上記の説明中に現れた数において、t、
E、nは公開可能であり、残りのD、e、ω、p、q、
φ(n)はチケットを作成する権利を有する者以外には
秘密である必要がある。図を参照してさらに第一の実施
例について詳細に説明する。図3は、この発明における
第一の実施例の構成を示し、図4は図3におけるデータ
のフローを示している。図3において、証明データ検証
装置10は、アクセスチケット公開鍵記憶部101、乱
数発生部102、乱数記憶部103、受信データ記憶部
105、検証部106、実行部107およびエラー処理
部108を含んで構成されている。また、証明データ生
成装置11は、受信データ記憶部111、第1演算部1
12、アクセスチケット記憶部113、第2演算部11
4、ユーザ固有情報記憶部115および証明データ生成
部116を含んで構成されている。
【0115】つぎに動作について説明する。 1.ユーザがアクセスすることによって、証明データ検
証装置101が起動される。証明データ検証装置10の
起動に関しては以下のような形態が考えられる。
【0116】証明データ検証装置10がユーザのPCあ
るいはワークステーション上で動作するアプリケーショ
ンプログラムの一部として構成されている場合、ユーザ
がキーボードあるいはマウスなどの指示装置を用いた通
常の方法で、該アプリケーションプログラムを起動す
る。アプリケーションプログラムの実行が証明データ検
証装置10を構成しているプログラムに到達することに
よりことにより、証明データ検証装置10が起動され
る。
【0117】証明データ検証装置10がネットワークで
結ばれた他のPCあるいはワークステーション(サーバ
と呼ぶ)上に構成されてい場合、ユーザは自分のPCあ
るいはワークステーション上の通信プログラムを起動
し、該通信プログラムが所定の手続きに従って前記サー
バに通信の開設要求を行うことにより、証明データ検証
装置10が起動される。例えば、ユーザの通信プログラ
ムがサーバと通信する際にTCP/IPと呼ばれる手続
きに従うとすると、証明データ検証装置をサーバの特定
のポートに予め対応づけておき、更に、ユーザの通信プ
ログラムが該ポートを指定してTCP接続要求をサーバ
に要求するように設定しておくことにより、サーバ上の
デーモン(inetd)がTCP接続要求に応じて証明
データ検証装置10を起動することが可能となる。この
ような実現方法は、インターネットなどのネットワーク
において広く利用されているものである。
【0118】証明データ検証装置10を専用目的の装置
とすることも可能である。例えば、証明データ検証装置
10をICカード・リーダ・ライター内のROMに焼き
つけられたプログラムあるいはEEPROMに書き込ま
れたプログラムとして構成し、証明データ生成装置11
をICカードのマイクロコントローラーに実装されたプ
ログラムとすることができる。この場合、ユーザがIC
カードをリーダ・ライターに挿入することにより、証明
データ検証装置10が起動される。
【0119】2.証明データ検証装置10は、認証用デ
ータCとアクセスチケット公開鍵記憶部101に記憶さ
れているRSA暗号の法数nとを、証明データ生成装置
11中の受信データ記憶部111に書き込むが、この認
証用データCは以下の方法で生成される。
【0120】証明データ検証装置中の乱数発生部102
によって,乱数rを、アクセスチケット公開鍵記憶部1
01に保持されているRSA法数nと互いに素になるよ
うに生成し、乱数記憶部103に記録する。更に、この
乱数rを認証用データCとする。後述するように、この
場合、証明データ生成装置11が返す証明データは、C
を法数nののもとでRSA暗号を用いて暗号化したもの
となる。
【0121】Cの値は乱数rそのものであることから、
通信の度に異なる値となり、リプレイアタックを防止す
る効果をもつ。
【0122】3.証明データ生成装置11中の第1演算
部112は、アクセスチケット記憶部113に記憶され
ているアクセスチケットtを取得し、受信データ記憶部
111に書き込まれたRSA法数nのもとで、式5を実
行し中間情報R’を得る。
【数5】(5) R’=Ct mod n
【0123】4.証明データ生成装置11中の第2演算
部114は、ユーザ固有情報記憶部115に記憶されて
いるユーザの固有情報eを取得し、式6の計算を実行し
差分情報Sを得る。
【数6】(6) S=Ce mod n 5.証明データ生成装置11中の証明データ生成部11
6は、第1および第2演算部112、114からR’お
よびSを得て、式7の計算を行ないRを得る。
【数7】(7) R=R’S mod n
【0124】6.証明データ生成装置11はRを証明デ
ータ検証装置10の受信データ記憶部105に返送す
る。
【0125】7.証明データ検証装置10中の検証部1
06は、まず、受信データ記憶部105に返された証明
データRと、アクセスチケット公開鍵記憶部101に保
持されている公開指数EおよびRSA法数nをもとに式
8の計算を行なう。
【数8】(8) RE mod n 次いで、この計算結果と、乱数記憶部103中に保持さ
れている乱数C(=r)とを比較することにより、式9
が成り立つことを確かめる。
【数9】 (9) C mod n = RE mod n 式(9)が成立する場合は実行部107を起動して処理
を継続し、成立しない場合はエラー処理部108を起動
してエラー処理を行う。
【0126】[第二の実施例]この発明の第二の実施例
における、アクセスチケットtの構成、証明データ証明
装置の作用は、前記第一の実施例におけるそれと同一で
ある。第一の実施例においては証明データは認証用デー
タの暗号化であったのに対し、第二の実施例においては
証明データ検証装置10が生成する認証用データは証明
データの(乱数効果付)暗号化であり、証明データ生成
装置11は認証用データを復号して(乱数効果を維持し
たまま)証明データを生成する。図を参照してさらに第
二の実施例について詳細に説明する。図5は、この発明
における第二の実施例の構成を示し、図6は図5におけ
るデータのフローを示している。図5において、証明デ
ータ検証装置10は、アクセスチケット公開鍵記憶部1
01、乱数発生部102、乱数記憶部103、受信デー
タ記憶部105、乱数化部121、認証用素データ記憶
部122、乱数効果除去部123、および実行手段31
0を含んで構成されている。また、証明データ生成装置
11は、受信データ記憶部111、第1演算部112、
アクセスチケット記憶部113、第2演算部114、ユ
ーザ固有情報記憶部115および証明データ生成部11
6を含んで構成されている。
【0127】つぎに動作について説明する。 1.ユーザがアクセスすることによって、証明データ検
証装置10が起動される。
【0128】証明データ検証装置の実現方法として、ユ
ーザのPCやワークステーション上で動作するアプリケ
ーションプログラム、ユーザのPCやワークステーショ
ンとネットワークを介して接続されたサーバ上のサーバ
プログラム、あるいは、ICカード・リーダ・ライター
のような専用の装置のいずれも可能であることは、第一
の実施例の場合と変わらない。
【0129】2.証明データ検証装置10は、認証用デ
ータCと、アクセスチケット公開鍵記憶部101に保持
されているRSA暗号の法数nとの組を証明データ生成
装置11中の受信データ記憶部111に書き込むが、認
証用データCは以下の方法で生成される。
【0130】証明データ検証装置中の乱数発生部102
によって、乱数rをアクセスチケット公開鍵記憶部10
1に保持されているRSA法数nと互いに素になるよう
に生成し、乱数記憶部103に記録する。乱数化部12
1は、アクセスチケット公開鍵記憶部101に格納され
ている公開指数Eと法数nを取得し、さらに認証用素デ
ータ記憶部122に記憶されているデータC’を取得し
て、式10の計算を行なう。
【数10】(10) C=rEC’ mod n ここで、認証用素データC’はデータKに対して関係式
11を満たすように生成され、認証用素データ記憶部1
22に格納された値である。
【数11】(11) C’=KE mod n ここで、データKを証明データ検証装置に保持せず、代
わりに、その暗号化の結果であるC’のみを保持するよ
うに証明データ検証装置10を構成すれば、証明データ
検証装置10からデータKが漏洩する危険を回避するこ
とができる。
【0131】基本的に見れば、認証用データCは法数n
のもとでRSA暗号を用いてデータKを暗号化したもの
であり、証明データ生成装置11はCを法数nのもとで
RSA暗号を用いて復号することによりデータKを再現
する。しかし、このままでは、証明データ検証装置10
と証明データ生成装置11の間の通信は常に同一のもの
となり、いわゆるリプレイアタックが可能となることか
ら、乱数rを用いて認証用データに乱数効果を与え、証
明データ生成装置11が返すデータを検証する際に乱数
効果を除去するように構成される。
【0132】3.証明データ生成装置11中の第1演算
部112は、アクセスチケット記憶部113に記憶され
ているアクセスチケットtを取得し、受信データ記憶部
111に書き込まれたRSA法数nのもとで式12を実
行し中間情報R’を得る。
【数12】(12) R’=Ct mod n
【0133】4.証明データ生成装置11中の第2演算
部114は、ユーザ固有情報記憶部115に記憶されて
いるユーザの固有情報eを取得し、式13の計算を実行
し差分情報Sを得る。
【数13】(13) S=Ce mod n 5.証明データ生成装置11中の証明データ生成部11
6は、第1および第2演算部112、114からR’お
よびSを得て、式14の計算を行ないRを得る。
【数14】(14) R=R’S mod n
【0134】6.証明データ生成装置11はRを証明デ
ータ検証装置10の受信データ記憶部105に返送す
る。
【0135】7.証明データ検証装置10中の乱数効果
除去部123は、乱数記憶部103中から先に生成した
乱数rと、受信データ記憶部106から証明データRと
を取り出し、式15の計算を行なう。
【数15】(15) K’=r-1R mod n 証明データ生成装置11において用いられるアクセスチ
ケットtとユーザの固有情報eの組合せが正しい場合に
限り、計算の結果得られたK’とKが一致することに注
意せよ。
【0136】計算されたK’は、証明データ検証装置1
0中の実行手段310に引き渡されるが、実行手段31
0はK’=Kが成立する場合に限り正規の処理を実行す
るように構成される。
【0137】以下に、証明データ検証装置10中の実行
手段310の構成法を数例述べる。
【0138】1.図7の構成例 実行手段310中の記憶部310aに予めデータKを記
憶しておく。実行部310中の比較部310bは、この
Kと証明データ生成装置11から送られた証明データR
から乱数効果を除去して得られるK’とを直接比較し、
K’=Kが成立する場合に限り正規の処理を実行し、成
立しない場合には処理を中止するなどのエラー処理を実
行する(図8)。
【0139】この構成例には、検証に用いるデータKが
装置中に現れるという安全上の弱点がある。例えば、証
明データ検証装置10、特に、実行手段310が、ユー
ザのPCあるいはワークステーション上で動作するプロ
グラムとして構成されている場合、プログラムを解析し
てKを窃取することは、困難であっても、必ずしも不可
能ではない。Kの値がユーザの知るところとなり、更
に、証明データ検証装置で生成される乱数が予想可能で
あると、証明データ生成装置の動作を模倣する装置を構
成することが可能となり、なりすましによる不正アクセ
スが可能となる。
【0140】2.図9の構成例 上記の欠点を改善するため、記憶部310aに記憶され
るデータをKそのものではなく、Kに前述の一方向ハッ
シュ関数hを施して得られるデータh(K)とすること
もできる。一方向ハッシュ関数の性質から、記憶部31
0aに記憶されるデータyから、y=h(x)を満たす
xを算出することは著しく困難である。
【0141】実行部310は、入力データに対し一方向
ハッシュ関数を施した結果を返す変換部310cを有す
る。比較部310bは、上記変換部310cの出力h
(K’)と、記憶部310aに記憶されたデータ(=h
(K))とを比較する(図10)。
【0142】この方法例では、検証に用いるデータKが
プログラム中に現れることがなく、また、記憶部310
aに記憶されたh(K)からKを計算することが著しく
困難であることから、図7の例より安全であるといえ
る。
【0143】この構成では、図10に示すようにプログ
ラムの実行を制御する。
【0144】しかしながら、比較部310bはプログラ
ム中では条件文として構成され、証明データ検証装置1
0、特に、実行手段310がユーザのPCあるいはワー
クステーション上で動作するプログラムであるような場
合、即ち、プログラムの分析・改竄が比較的容易である
ような構成では、該条件文をスキップするようにプログ
ラムを改竄することが可能である点で、なお弱点を有し
ている。
【0145】3.図11の構成例 第3の構成例では、証明データ検証装置10の実行部3
10のプログラムのコードの一部或は全部を暗号化した
データを認証用素データC’として、認証用素データ記
憶部122に保持する。即ち、Kは実行部プログラムの
コードの一部或は全部である。
【0146】実行手段310は、証明データ生成装置1
1からの返信データから乱数効果を除去して得られるデ
ータK’を、プログラム中の予め定められた位置に埋め
込む。すなわち実行手段310は、コードとしてのデー
タK’を記憶するコード記憶部310dとこのコードを
プログラム中に取り込むコード取り込み部310eと、
プログラムを実行するコード実行部310fとを有して
いる。証明データ生成装置11が正しいデータを返信し
た場合、即ち、K’=Kである場合に限ってプログラム
は実行可能となる(図12)。
【0147】この構成例では、プログラムの実行に不可
欠なコードの一部或は全部が暗号化されているため、実
行手段310がユーザのPCあるいはワークステーショ
ン上で動作するアプリケーションプログラムとして構成
されているような比較的安全性の低い場合でも、不正実
行を防止することができる。
【0148】実行手段310がユーザのPCあるいはワ
ークステーション上で動作するアプリケーションプログ
ラムとして構成されている場合を例にとって、更に詳細
な構成を述べる。
【0149】証明データが書き込まれるコード記憶部3
10dは、計算機中の指定された記憶領域である。
【0150】コード実行部310fは計算機のCPU及
びOSである。CPUとOSとは協力して、計算機のプ
ログラム領域に記憶されている実行命令を順に実行す
る。特定の機能を提供する一連の実行命令をプログラム
コードと呼ぶ。
【0151】コード取込み部310eの実体は、実行手
段310中で最初に実行されるプログラムコードであ
る。コード取込み部310eは、直接・間接にコード記
憶部310dのアドレスをコード実行部310fに指示
することが可能である。例えば、コード取込み部310
eはコード記憶部310dの物理アドレスを直接コード
実行部310fに指示してもよいし、計算機のOSが仮
想アドレッシングを実行する場合には、コード取込み部
310eはコード記憶部310dの仮想アドレスを指示
し、OSがCPU経由で受け取った仮想アドレスを物理
アドレスに変換する方法でもよい。
【0152】コード記憶部310dに証明データが書き
込まれた状態で、プログラムであるコード取込み部31
0eが起動されると、コード取込み部310eは、コー
ド記憶部310dのアドレスに記憶されている内容を計
算機上のプログラム領域の特定のアドレスに書き出すよ
う、コード実行部310fに命令し、実行させる。
【0153】次いで、コード取込み部310eは、コー
ド実行部310fに命令してコード記憶部310dの記
憶内容を書き出させた、プログラム領域中の特定のアド
レスの実行命令を実行するよう、JMP命令等を用いて
コード実行部310fに命令する。
【0154】この構成例では、証明データが証明データ
生成装置11によって正しく生成されたならば、乱数効
果を取り除いた後のデータはプログラムコード、即ち、
コード実行部310fへの一連の実行命令である。従っ
て、上記構成では、コード取込み部310eのプログラ
ムコードに引続き、証明データ生成手段11によって復
号されたプログラムコードが実行されることとなる。
【0155】4.図13の構成例 第3の構成例において、暗号化したコードを復号するた
めに必要な復号鍵を、Kとすることもできる。この構成
によると、暗号化するコードのサイズに関わらず、Kの
サイズ、すなわち認証用素データC’のサイズを一定の
小さい値に抑えることが可能となり、通信のオーバヘッ
ドを減少させることができる。
【0156】実行部310は、証明データ生成装置11
からの返信データから乱数効果を除去して得られるデー
タK’を用いて、プログラム中の予め定められた領域の
コードを復号する。すなわち実行部310は暗号化され
たプログラムを記憶するプログラム記憶部310gと、
暗号化されたプログラムを読み出しデータK’を利用し
て復号する復号部310hと、復号されたコードを取り
出すコード取り出し部310iと、取り出されたコード
を実行するコード実行部310fとを有する。
【0157】実行手段310がユーザのPCあるいはワ
ークステーション上で動作するアプリケーションプログ
ラムとして構成されている場合を例にとって、更に詳細
な構成を述べる。
【0158】暗号化されたプログラムコードが記憶され
ているプログラム記憶部310gは、計算機中の指定さ
れた記憶領域である。
【0159】コード実行部310fは計算機のCPU及
びOSである。
【0160】プログラム記憶部310gは、ハードディ
スク等、補助記憶装置上のファイル領域であるとするこ
とができる。即ち、暗号化されたプログラムコードは、
ファイルとして記憶されている。
【0161】復号部310hの実体は、実行手段310
中で最初に実行されるプログラムコードである。復号部
310hは、直接・間接に、プログラム記憶部310g
のアドレスを、コード実行部310fに指示することが
可能である。
【0162】K’が与えられた状態で、プログラムであ
る復号部310hが起動されると、復号部310hは、
プログラム記憶部310gに記憶されているデータを順
に、あるいは定められた長さのブロック毎に読み出し、
そのデータにK’を復号鍵とした所定の復号処理を実行
し、その復号結果を計算機上のプログラム領域の特定の
アドレスに書き出すよう、コード実行部310fに命令
し、実行させる。この処理により、プログラム記憶部3
10gに記憶されていた暗号化データに対し、K’を復
号鍵として、所定の復号アルゴリズムを実行した結果
を、プログラム領域中の特定の位置に書き込んだことと
なる。
【0163】次いで、復号部310hは、コード実行部
310fに命令して復号したプログラムコードを書き出
させた、プログラム領域中の特定のアドレスの実行命令
を実行するよう、JMP命令等を用いてコード実行部3
10fに命令する。
【0164】この構成例では、証明データが証明データ
生成装置11によって正しく生成されたならば、乱数効
果を取り除いたのちの値はプログラム記憶部310gに
記憶されている暗号化されたプログラムコードを正しく
復号するための復号鍵となる。復号部310hは、この
復号鍵を用いて、前記暗号化プログラムコードを復号
し、復号結果であるプログラムコードをプログラム領域
にロードし、ロードされた前記プログラムコードを実行
するようコード実行部310fに命令する。従って、上
記構成では、復号部310hのプログラムコードに引続
き、証明データ生成手段11によって復号された復号鍵
を用いて復号されたプログラムコードが実行されること
となる(図14)。 [第三の実施例]
【0165】この発明における第三の実施例では、アク
セスチケットtは次の式16に基づいて生成されるデー
タである。
【数16】 (16) t = D+F(n,e) 上式中の各記号は以下を表す。
【0166】nはRSA法数、即ち、十分大きな二つの
素数p、qの積である(n=pq)。
【0167】ユーザ固有情報eはユーザ毎に異なる数で
あり、ユーザを識別するために用いられる。
【0168】φ(n)はnのオイラー数、即ち、p−1
とq−1の積である(φ(n)=(p−1)(q−
1))。
【0169】アクセスチケット秘密鍵Dは、法数nのも
とでのRSA秘密鍵であり、式17を満たす。
【数17】 (17) gcd(D,φ(n))=1 ここで、gcd(x,y)は二数x、yの最大公約数を
表す。式(17)によって表現される性質は、式18を
満たす数Eが存在することを保証する。
【数18】 (18) ED mod φ(n) = 1 Eをアクセスチケット公開鍵と呼ぶ。
【0170】二変数関数F(x,y)は関数値が衝突し
にくい二変数関数であり、例えば、前述の一方向ハッシ
ュ関数hを利用して、式19のように定めることができ
る。
【数19】 (19) F(x,y)=h(x|y) 図を参照してさらに第二の実施例について詳細に説明す
る。図15は、この発明における第三の実施例の構成を
示し、図16は図15におけるデータのフローを示して
いる。図15において、証明データ生成装置11は、受
信データ記憶部111、第1演算部112、アクセスチ
ケット記憶部113、第2演算部114、ユーザ固有情
報記憶部115、証明データ生成部116および指数生
成部130を含んで構成されている。証明データ検証装
置10は第一の実施例(図3)や第二の実施例(図5)
の構成を採用することができる。ここでは説明を繰り返
さない。
【0171】つぎにこの構成における動作について説明
する。 1.ユーザがアクセスすることによって、証明データ検
証装置10が起動される。
【0172】証明データ検証装置10の実現方法とし
て、ユーザのPCやワークステーション上で動作するア
プリケーションプログラム、ユーザのPCやワークステ
ーションとネットワークを介して接続されたサーバ上の
サーバプログラム、あるいは、ICカード・リーダ・ラ
イターのような専用の装置のいずれも可能であること
は、第一および第二の実施例の場合と変わらない。
【0173】2.証明データ検証装置10は、認証用デ
ータCとアクセスチケット公開鍵記憶部101に記憶さ
れているRSA暗号の法数nとの組を証明データ生成装
置11中の受信データ記憶部111に書き込む。
【0174】Cの生成方法としては、第一の実施例で述
べた方法、第二の実施例で述べた方法のいずれも適用可
能であるので、ここでは特に限定しない。前記いずれか
の方法で生成されたCが証明データ生成装置11中の受
信データ記憶部111に書き込まれるものとする。
【0175】3.証明データ生成装置11中の第1演算
部112は、アクセスチケット記憶部113に記憶され
ているアクセスチケットtを取得し、受信データ記憶部
111に書き込まれたRSA法数nのもとで式20を実
行し中間情報R’を得る。
【数20】(20) R’=Ct mod n
【0176】4.証明データ生成装置11中の指数生成
部130は、ユーザ固有情報記憶部115に記憶されて
いるユーザの固有情報eを取得し、式21の計算を実行
する。
【数21】(21) F(n,e)
【0177】5.証明データ生成装置11中の第2演算
部114は、指数生成部130で生成されたデータを用
いて、式22の計算を実行し差分情報Sを得る。
【数22】(22) S=CF(n,e) mod n 6.証明データ生成装置11中の証明データ生成部11
6は、第1および第2演算部112、114からR’お
よびSを得て、式23の計算を行ないRを得る。
【数23】(23) R=R’S-1 mod n ただし、S-1は法nのもとでのSの逆数、即ち、式24
を満たす数を表す。
【数24】(24) S・S-1 mod n=1
【0178】7.証明データ生成装置11はRを証明デ
ータ検証装置10の受信データ記憶部105に返送す
る。
【0179】8.証明データ検証装置10では、証明デ
ータ生成装置11から受け取った証明データの検証を行
うが、その検証方法は、認証用データの一部であるCの
生成方法によって異なる。
【0180】Cが第一の実施例の方法に基づいて生成さ
れたものであれば、その検証は第一の実施例に述べられ
た方法に従って行われる。
【0181】Cが第二の実施例の方法に基づいて生成さ
れたものであれば、その検証は第二の実施例に述べられ
た方法に従って行われる。 [第四の実施例]
【0182】第四の実施例では、第一乃至第三の実施例
において、証明データ生成装置がユーザのPCあるいは
ワークステーション上のプログラムと、前記PCあるい
はワークステーションに装着されるICカード、あるい
はPCカード(PCMCIAカード)などの携帯可能な
演算手段によって構成される場合について述べる。
【0183】第一乃至第三の実施例の証明データ生成装
置11において、ユーザ固有情報eは秘密情報であり、
外部に漏洩しないよう注意を払わなければならない。ま
た、ユーザ固有情報eを用いた計算を実行する第2演算
部114の動作が観測されるとユーザ固有情報eが漏洩
する危険がある。第三の実施例における関数F(x,
y)の計算過程が観測された場合も同様である。即ち、
ユーザ固有情報eの漏洩を防ぐためには、ユーザ固有情
報記憶部115、第2演算部114及び指数生成部13
0の内部が外部から観測されることを防止しなければな
らない。この目的を達成するためには、証明データ生成
装置11の一部をハードウェアとして構成すると有効で
ある。
【0184】このようなハードウェアとして、ICカー
ド・PCカードのような携帯性のある手段を用いること
にすれば、更にユーザの利便性を高めることができる。
証明データ生成装置の内、ユーザに固有な部分は、ユー
ザ固有情報記憶部とアクセスチケット記憶部のみであ
る。従って、例えば、ユーザ固有情報記憶部115と、
アクセスチケット記憶部113と、第2演算部114
と、指数生成部130とをICカード・PCカード中に
構成し、証明データ生成装置の残りの部分をユーザが使
用するPCあるいはワークステーション上で動作するプ
ログラムとして構成することにすれば、証明データ生成
装置11のうち各ユーザに固有な部分は、それぞれのユ
ーザが携帯可能なICカード・PCカードとして実現さ
れ、ユーザに依存しない共通部分はプログラムとして任
意のPCあるいはワークステーションに共通に構成され
ることとなる。このような構成によって、どのユーザで
も、自分のICカード・PCカードを、前記プログラム
がインストールされた任意のPCあるいはワークステー
ションに装着するだけで、該PCあるいはワークステー
ションを自分用の証明データ生成装置として利用するこ
とが可能となる。
【0185】さて、内部メモリーに格納されたデータや
プログラムが外部から観測されたり、改竄されたりする
ことを防止するための特殊な構成を持つハードウェア
を、耐タンパーハードウェア(タンパーレジスタントハ
ードウェア)と呼ぶ。耐タンパーハードウェアの構成法
としては、例えば、特許第1863953号、特許第1
860463号、特開平3−100753号公報等が知
られている。
【0186】特許第1863953号においては、情報
記憶媒体の周囲に、各種の導体パターンを持つ複数のカ
ードからなる包囲体を設ける。検出される導体パターン
が予測されるパターンと異なる時に記憶情報を破壊す
る。
【0187】特許第1860463号においては、情報
記憶媒体の周囲に導体巻線を形成するとともに積分回路
等からなる検知回路を設けることで、電子回路領域への
侵入があった場合には電磁エネルギーの変動を検知し記
憶情報を破壊する。
【0188】特開平3−100753号公報において
は、ハードウェア内部に光検知器を設け、ハードウェア
に力が加えられて破壊された場合や穿孔されたときに入
る外光を光検知器が検知し、記憶破壊装置が記憶情報を
リセットする。
【0189】これらの耐タンパーハードウェアを、IC
カードやPCカード(PCMCIAカード)のような携
帯可能な演算装置として実現することにより、ユーザに
対する更なる利便を提供することができる。
【0190】また、ICカードに実装されるマイクロコ
ントローラーは、高密度実装ゆえに、それ自体で相当の
耐タンパー特性を有しているとされている。
【0191】図17は、第一および第二の実施例におい
て、ユーザ固有情報eを保持するユーザ固有情報記憶手
段115と、差分情報を生成する第二演算手段114と
が、ICカードのような耐タンパーハードウェア160
に封入されている構成を示している。
【0192】図18は、第三の実施例において、ユーザ
固有情報eを保持するユーザ固有情報記憶部115と、
差分情報を生成する第2演算部114に加えて、指数生
成部130も耐タンパーハードウェア161に封入され
ている構成を示している。
【0193】ICカード側I/F部141は、ホストと
ICカードの通信を司るICカード側インターフェース
であり、具体的には、通信用バッファと通信プログラム
から構成される。証明データ生成装置の内の残りの部分
は、ユーザのPCあるいはワークステーション上で動作
するプログラムとして構成される。耐タンパーハードウ
ェア161中の各手段の作用は第一乃至第三の実施例に
述べた通りであるので、以下では、その部分の作用につ
いては解説しない。また、説明を簡略にする目的で耐タ
ンパーハードウェアをICカードであるものと仮定する
が、この仮定はこの発明の一般性をなんら束縛するもの
ではない。図19は、図17および図18におけるデー
タのフローを示している。
【0194】つぎに、動作について説明する。 1.ユーザがアクセスすることによって、証明データ検
証装置10が起動される。
【0195】2.証明データ検証装置10は、認証用デ
ータCとアクセスチケット公開鍵記憶部101に記憶さ
れているRSA暗号の法数nとの組を証明データ生成装
置11中の受信データ記憶部111に書き込む。
【0196】3.証明データ生成装置11中のホスト側
インターフェース部140は、受信データ記憶部111
に書き込まれた認証用データCとnを、ICカード側イ
ンターフェース部141に引き渡す。ホスト側インター
フェース部140は、ICカード中に設けられたICカ
ード側インターフェース部141と協調して、ホスト・
ICカード間のデータ通信を司る。
【0197】4.アクセスチケット検索部142は、R
SA法数nを検索のキーとして、アクセスチケット記憶
部113に記憶されているアクセスチケットtを検索・
取得する。
【0198】5.第1演算部112は、受信データ記憶
部111に書き込まれたRSA法数nのもとで式25を
実行し中間情報R’を得る。
【数25】(25) R’=Ct mod n
【0199】6.次いで、ホスト側インターフェース部
140は、ICカード側インターフェース部141にコ
マンドを発行し、その返り値として差分情報Sを得る。
【0200】アクセスチケット及びICカード中の手段
が第一あるいは第二の実施例に即して構成されている場
合には、差分情報Sは式26によって計算される値であ
る。
【数26】(26) S=Ce mod n
【0201】アクセスチケット及びICカード中の手段
が第三の実施例に即して構成されている場合には、差分
情報Sは式27によって計算される値である。
【数27】(27) S=CF(n,e) mod n 7.証明データ生成装置11中の証明データ生成部11
6は、第1および第2演算部112、114からR’お
よびSを得て、第一および第二の実施例に即している場
合は式28、第三の実施例に即している場合には式29
の計算を行ないRを得る。
【数28】(28) R=R’S mod n
【数29】(29) R=R’S-1 mod n
【0202】8.証明データ生成装置11はRを証明デ
ータ検証装置10の受信データ記憶部105に返送す
る。
【0203】上記の作用において、中間情報R’と差分
情報Sの計算が、ユーザのPCあるいはワークステーシ
ョンであるホスト側と、演算機能を内蔵するICカード
側で並列に実行されるため、証明データ生成手段11が
認証用データC及び法数nを受け取ってから、証明デー
タRを計算するまでの実行時間を短縮することができ、
よって処理効率を向上させている。
【0204】この実施例では、アクセスチケット記憶部
113には複数のアクセスチケットが記憶されるが、ア
クセスチケットが異なればそのRSA法数nが異なるの
で、アクセスチケットは、nをキーとして検索ができる
ようにnと対応づけて記憶される。
【0205】また、アプリケーションやサーバがアクセ
ス制御のために利用するRSA法数nは、アプリケーシ
ョンやサーバ毎に異なるのが基本である。
【0206】アクセスチケット検索部142は、証明デ
ータ検証装置10から与えられるRSA法数nをキーと
して、適切なアクセスチケットを検索し、以後の証明デ
ータの生成に供する。この検索機能により、証明データ
生成装置11は、ユーザになんら負担を強いることな
く、アクセスしている対象(個別のアプリケーションや
個別のサーバ)に応じて適切な証明データを計算し、返
送することが可能となる。
【0207】[第五の実施例]この発明における第五の
実施例では、第三の実施例で用いたRSA公開鍵暗号の
代わりに、Pohlig−Hellman非対称鍵暗号
を用いる。
【0208】Pohlig−Hellman非対称鍵暗
号は、法数として大きな素数pを用いる点で,法数とし
て2つの素数の積n(=pq)を用いるRSA公開鍵暗
号と異なる外は、RSA公開鍵暗号と同一の暗号方式で
ある。しかし、RSA公開鍵暗号では、一方の鍵Eと法
数nから、もう一方の鍵Dを計算することが非常に困難
であったため、E及びnを公開鍵として用い、Dを個人
の秘密として用いることが可能であった。一方、Poh
lig−Hellman非対称鍵暗号暗号では、Eとp
とから、容易にDが計算できるため、Eとpとを公開鍵
として用いることはできない。即ち、EとDとの両方を
当事者間の秘密としておく必要があり、DES(Dat
a Encryption Standard)のよう
な共通鍵暗号と同様の利用形態を採らざるを得ない。
【0209】この実施例では、アクセスチケットtは次
の式30に基づいて生成されるデータである。
【数30】 (30) t = D+F(p,e) 上式中の各記号は以下を表す。
【0210】pは十分大きな素数である。
【0211】ユーザ固有情報eはユーザ毎に異なる数で
あり、ユーザを識別するために用いられる。
【0212】アクセスチケット秘密鍵Dは、法数pのも
とでのPohlig−Hellman暗号の鍵の一方で
あり、式31を満たす。
【数31】 (31) gcd(D,p−1)=1 ここで、gcd(x,y)は二数x、yの最大公約数を
表す。
【0213】式31によって表現される性質は、式32
を満たす数Eが存在することを保証する。
【数32】 (32) ED mod p−1 = 1
【0214】二変数関数F(x,y)は関数値が衝突し
にくい二変数関数であり、例えば、前述の一方向ハッシ
ュ関数hを利用して、式33のように定めることができ
る。
【数33】 (33) F(x,y)=h(x|y) つぎに、図20および図21を参照して第五の実施例に
ついてさらに詳細に説明する。図20は第五の実施例の
構成を示し、図21は図20におけるデータのフローを
示している。図20において、証明データ検証装置20
は、鍵記憶部401、乱数発生部402、乱数記憶部4
03、受信データ記憶部405、乱数化部421、認証
用素データ記憶部422、乱数効果除去部423および
実行手段310を含んで構成されている。また、証明デ
ータ生成部41は、受信データ記憶部411、第1演算
部412、アクセスチケット記憶部413、第2演算部
414、ユーザ固有情報記憶部415、証明データ生成
部416、および指数生成部430を含んで構成されて
いる。
【0215】つぎに、動作について説明する。 1.ユーザがアクセスすることによって、証明データ検
証装置40が起動される。
【0216】2.証明データ検証装置40は、認証用デ
ータCと鍵記憶部401に記憶されている法数pとの組
を証明データ生成装置41中の受信データ記憶部411
に書き込む。
【0217】この実施例では、Cの生成方法としては、
第二の実施例で述べた方法に準じた方法によるものとす
るが、第一の実施例で述べた方法に準じた方法を構成す
ることも難しくない。
【0218】証明データ検証装置中40の乱数発生部4
02によって、乱数rを鍵記憶部401に保持されてい
る法数pと互いに素になるように生成し、乱数記憶部4
03に記録する。乱数化部421は、鍵記憶部401に
格納されてい指数Eと法数pを取得し、さらに認証用素
データ記憶部422に記憶されているデータC’を取得
して、式34の計算を行なう。
【数34】(34) C=rEC’ mod p ここで、認証用素データC’はデータKに対して関係式
35を満たすように生成され、認証用素データ記憶部3
05に格納された値である。
【数35】(35) C’=KE mod p
【0219】3.証明データ生成装置41中の第1演算
部412は、アクセスチケット記憶部413に記憶され
ているアクセスチケットtを取得し、受信データ記憶部
411に書き込まれたRSA法数pのもとで式36を実
行し中間情報R’を得る。
【数36】(36) R’=Ct mod p
【0220】4.証明データ生成装置41中の指数生成
部430は、ユーザ固有情報記憶部415に記憶されて
いるユーザの固有情報eを取得し、式37の計算を実行
する。
【数37】(37) F(p,e)
【0221】5.証明データ生成装置11中の第2演算
部414は、指数生成部430で生成されたデータを用
いて、式38の計算を実行し差分情報Sを得る。
【数38】(38) S=CF(p,e) mod p 6.証明データ生成装置41中の証明データ生成部41
6は、第1および第2演算部412、414からR’お
よびSを得て、式39の計算を行ないRを得る。
【数39】(39) R=R’S-1 mod p ただし、S-1は法pのもとでのSの逆数、即ち、式40
を満たす数を表す。
【数40】(40) SS-1 mod p = 1
【0222】7.証明データ生成装置41はRを証明デ
ータ検証装置40の受信データ記憶部405に返送す
る。
【0223】8.証明データ検証装置10中の乱数効果
除去部423は、乱数記憶部403中から先に生成した
乱数rを取り出し、式41の計算を行なう。
【数41】(41) K’=r-1R mod p 証明データ生成装置41において用いられるアクセスチ
ケットtとユーザの第一の固有情報eの組合せが正しい
場合に限り、計算の結果得られたK’とKが一致するこ
とに注意せよ。 [第六の実施例]
【0224】この発明の第六の実施例では、第三の実施
例におけるRSA公開鍵暗号の代わりに、ElGama
l公開鍵暗号を用いた構成例を示す。
【0225】この発明における第六の実施例では、アク
セスチケットtは次の式42に基づいて生成されるデー
タである。
【数42】 (42) t = X+F(p,e) 上式中の各記号は以下を表す。
【0226】pは十分大きな素数である。
【0227】ユーザ固有情報eはユーザ毎に異なる数で
あり、ユーザを識別するために用いられる。
【0228】アクセスチケット秘密鍵Xは、法数pのも
とでのElGamal暗号の秘密鍵であり、Yを対応す
る公開鍵であるとする。即ち、式43を満たす。
【数43】(43) Y = aX mod p ここで、aは位数pの有限体の乗法群の生成元、即ち、
式44及び45を満たす。
【数44】(44) a ≠ 0
【数45】 (45) min{x>0|ax=1 mod p} = p−1 また、Yをアクセスチケット公開鍵と呼ぶ。
【0229】二変数関数F(x,y)は関数値が衝突し
にくい二変数関数であり、例えば、前述の一方向ハッシ
ュ関数hを利用して、式46のように定めることができ
る。
【数46】 (46) F(x,y)=h(x|y) つぎに、図22および図23を参照して第六の実施例を
さらに説明する。図22は第六の実施例の構成を示し、
図23は第六の実施例におけるデータのフローを示して
いる。図22において、証明データ検証装置50は、ア
クセスチケット公開鍵記憶部501、乱数発生部50
2、乱数記憶部503、受信データ記憶部505、乱数
化部521、認証用素データ記憶部522、乱数効果除
去部523および実行手段310を含んで構成されてい
る。証明データ生成部51は、受信データ記憶部51
1、第1演算部512、アクセスチケット記憶部51
3、第2演算部514、ユーザ固有情報記憶部515、
証明データ生成部516、および指数生成部530を含
んで構成されている。
【0230】つぎに動作について説明する。 1.ユーザがアクセスすることによって、証明データ検
証装置50が起動される。
【0231】2.証明データ検証装置50は、認証用デ
ータの組u、Cと、アクセスチケット公開鍵記憶部50
1に記憶されている法数pとを、証明データ生成装置5
1中の受信データ記憶部511に書き込む。
【0232】認証用素データ記憶部522には、認証用
素データとしてu,C’が記憶されているが、それらは
次の性質を満たす。
【0233】uは、上記aを法pのもとで適当な乱数z
を指数としてべき乗した数であり、即ち、式47を満た
す。
【数47】(47) u = az mod p
【0234】C’は、アクセスチケット公開鍵Yを、法
pのもとで、上記乱数zを指数としてべき乗した数と、
適当なデータKとの積であり、式48を満たす。
【数48】(48) C’=YzK mod p
【0235】認証用データCは、次のように生成され
る。
【0236】証明データ検証装置50は、乱数発生部5
02によって、乱数rをアクセスチケット公開鍵記憶部
501に保持されている法数pと互いに素になるように
生成し、乱数記憶部503に記録する。
【0237】次いで、乱数化部521は、認証用素デー
タ記憶部522に記憶されているデータC’を取得し
て、式49の計算を行なう。
【数49】(49) C=rC’ mod p
【0238】3.証明データ生成装置51中の第1演算
部512は、アクセスチケット記憶部513に記憶され
ているアクセスチケットtを取得し、受信データ記憶部
511に書き込まれた法数pのもとで式50を実行し中
間情報Sを得る。
【数50】(50) S = ut mod p
【0239】4.証明データ生成装置51中の指数生成
部530は、ユーザ固有情報記憶部515に記憶されて
いるユーザの固有情報eを取得し、式51の計算を実行
する。
【数51】 (51) F(p,e)
【0240】5.証明データ生成装置51中の第2演算
部514は、指数生成部530で生成されたデータを用
いて、式52の計算を実行し差分情報S’を得る。
【数52】 (52) S’ = uF(p,e) mod p
【0241】6.証明データ生成装置51中の証明デー
タ生成部516は、第1および第2演算部512、51
4からSおよびS’を得て、式53の計算を行ないRを
得る。
【数53】 (53) R = S-1S’C mod p ただし、S-1は法pのもとでのSの逆数、即ち、式54
を満たす数を表す。
【数54】(54) SS-1 mod p = 1
【0242】7.証明データ生成装置51はRを証明デ
ータ検証装置50の受信データ記憶部505に返送す
る。
【0243】8.証明データ検証装置10中の乱数効果
除去部523は、乱数記憶部503中から先に生成した
乱数rを取り出し、式55の計算を行なう。
【数55】(55) K’=r-1R mod p 証明データ生成装置51において用いられるアクセスチ
ケットtとユーザの固有情報eの組合せが正しい場合に
限り、計算の結果得られたK’とKが一致することに注
意せよ。さて、上記の形態を直接実施した場合、次のよ
うな問題が生じる。即ち、同一の認証用素データu,
C’を、複数回のアクセス資格認証手続きに適用するこ
とにより、ユーザ固有情報やアクセスチケットなしに証
明データ生成装置11の作用を模倣する装置を構成する
ことが可能となる。まず、初回の認証手続きにおいて、
証明データ検証装置10から発行される認証用素データ
Cと証明データ生成装置11が生成する証明データRか
ら、H=RC-1 mod pを計算する。模倣装置に
は、ユーザ固有情報及びアクセスチケットの代わりにこ
のHを記録しておく。証明データ検証装置10が発行す
る任意の認証用素データ(u,C)に対し、模倣装置が
式R=HC mod pに従って証明データRを生成
し、証明データ検証装置10に返すようにすればよい。
この攻撃に対処する方法として、認証用素データ記憶部
522に認証用素データの組u,C’を必要な数だけ記
憶しておいて、認証手続きの都度使い捨てにする方法が
考えられる。ここで、相異なる認証用素データでは、そ
の生成のために用いられる乱数zが互いに相違するよう
にする。uは、u=ak modpで定義されるが、k
は乱数であったことに留意されたい。 [第七の実施例]
【0244】この発明の第七の実施例においては、アク
セス資格認証の特徴情報としてElGamal署名の署
名鍵を用いる構成例を述べる。
【0245】この発明における第七の実施例では、アク
セスチケットtは式56に基づいて生成されるデータで
ある。
【数56】 (56) t = X+F(p,e) 上式中の各記号は以下を表す。
【0246】pは十分大きな素数である。
【0247】ユーザ固有情報eはユーザ毎に異なる数で
あり、ユーザを識別するために用いられる。
【0248】アクセスチケット秘密鍵Xは、法数pのも
とでのElGamal署名の署名鍵であり、Yを対応す
る公開鍵であるとする。即ち、式57を満たす。
【数57】 (57) Y = aX mod p ここで、aは位数pの有限体の乗法群の生成元、即ち、
式58及び59を満たす。
【数58】(58) a ≠ 0
【数59】 (59) min{x>0|ax=1 mod p} = p−1 また、Yをアクセスチケット公開鍵と呼ぶ。
【0249】二変数関数F(x,y)は関数値が衝突し
にくい二変数関数であり、例えば、前述の一方向ハッシ
ュ関数hを利用して、式60のように定めることができ
る。
【数60】 (60) F(x,y)=h(x|y)
【0250】つぎに図24および図25を参照してさら
に第七の実施例について説明する。図24は第七の実施
例の構成を示し、図25は第七の実施例におけるデータ
のフローを示している。図24において、証明データ検
証装置60は、アクセスチケット公開鍵記憶部601、
乱数発生部602、乱数記憶部603、受信データ記憶
部605、検証部606、実行部607およびエラー処
理部608を含んで構成されている。また、証明データ
生成装置61は、受信データ記憶部611、乱数発生部
612、第1演算部613、第2演算部614、アクセ
スチケット記憶部615、およびユーザ固有情報記憶部
616を含んで構成されている。つぎに動作について説
明する。 1.ユーザがアクセスすることによって、証明データ検
証装置60が起動される。
【0251】2.証明データ検証装置60は、認証用デ
ータCと、アクセスチケット公開鍵記憶部601に記憶
されている法数pと、生成元aとを、証明データ生成装
置61中の受信データ記憶部611に書き込む。認証用
データCは、次のように生成される。
【0252】証明データ検証装置60は、乱数発生部6
02によって、乱数rをアクセスチケット公開鍵記憶部
601に保持されている法数pと互いに素になるように
生成し、前記rを乱数記憶部603に記録するととも
に、認証用データCとする(C=r)。
【0253】3.証明データ生成装置61中の乱数生成
部612は、法数p−1と互いに素であるような乱数k
を生成する。
【0254】第1演算部613は、前記乱数kと、受信
データ記憶部611に書き込まれた法数pと、生成元a
とから、第一の証明データRを式61に従って計算す
る。
【数61】(61) R = ak mod p
【0255】第2演算部614は、アクセスチケット記
憶部615に記憶されているアクセスチケットtと、ユ
ーザ固有情報記憶部616に記憶されているユーザ固有
情報eと、前記乱数kと、前記第一の証明データRと、
受信データ記憶部611に書き込まれた認証用データC
と、法数pとから、第二の証明データSを式62に従っ
て計算する。
【数62】 (62) S = (C−R(t−F(p,e)))k-1 mod p−1
【0256】4.証明データ生成装置61は第一および
第二の証明データであるR及びSを証明データ検証装置
60の受信データ記憶部605に返送する。
【0257】5.証明データ検証装置60中の検証部6
06は、乱数記憶部603に記憶されている乱数r(=
C)と、アクセスチケット公開鍵記憶部601に記憶さ
れているY及びpとを取り出し、式63によって、証明
データR及びSを検証する。
【数63】(63) ar = YRS mod p [第八の実施例]
【0258】この発明の第八の実施例では、アクセスチ
ケットの生成方法について述べる。
【0259】第一乃至第七の実施例におけるアクセスチ
ケットの生成には、秘密数に基づく計算が必要である。
従って、アクセスチケットの生成は、計算に用いる秘密
数が漏洩したり、計算の中間結果が露呈する心配のない
安全な装置で実行される必要がある。
【0260】このような安全な装置を構成するための最
も容易な方法は、アクセスチケット発行サービスをユー
ザに提供するサーバを、ユーザが使用するPCあるいは
ワークステーションから独立な計算機上に構築すること
である。サーバは、ユーザからの要求に応じてアクセス
チケットを生成する。サーバの構成に当たっては、外部
からの侵入を遮断するように構成することにより、秘密
数およびアクセスチケットの計算手順を守る。
【0261】例えば、アクセスチケット発行サーバを、
施錠され、出入りが厳重に管理される個室内の計算機上
に構成することにより、外部からの侵入を遮断すること
が可能となる。
【0262】また、ユーザの利便を向上させるために、
前記アクセスチケット発行サーバをネットワークに接続
し、ユーザからのアクセスチケット発行要求をネットワ
ークを介して受け取り、生成したアクセスチケットをや
はりネットワークを介してユーザに配送するように構成
することも可能である。
【0263】このように、アクセスチケット発行サーバ
をネットワークに接続する場合には、ファイアウォール
技術(D. Brent Chapman & Eli
zabeth D. Zwicky, Buildin
g Internet Firewalls, O’R
eilly & Associates, Inc.あ
るいは邦訳、ファイアウォール構築、オライリー・ジャ
パンを参照)を利用して、ネットワークを介した外部か
らの侵入に対しても十分に安全性が保たれるよう構築さ
れる必要がある。
【0264】第一乃至第七の実施例におけるアクセスチ
ケットは、その正当な使用者(アクセスチケットを計算
する際に用いたユーザ固有情報eを保持するユーザ)以
外には利用できない形式で生成されている。
【0265】第一乃至第七の実施例におけるアクセスチ
ケットは、更に厳密な安全基準のもとに生成されてい
る。即ち、不正なアクセスを試みるユーザが、本人向け
あるいは他人向けを問わず、任意個数のアクセスチケッ
トを集めたとしても、そこから、別のアクセスチケット
を偽造したり、第一乃至第五の実施例で述べた証明デー
タ生成装置の動作を模倣する装置を構成することは不可
能である。
【0266】上記のようなアクセスチケットの安全性か
ら、アクセスチケット発行サーバが生成したアクセスチ
ケットを、電子メールのような比較的安全性の低い配送
手段を利用してユーザに配送することも可能となる。 [第九の実施例]
【0267】この実施例では、第一乃至第七の実施例と
は異なるユーザの固有情報およびアクセスチケットの構
成法を述べる。この構成方法の特徴は、アクセスチケッ
トの生成に秘密情報を必要としない点にある。
【0268】従って、アクセスチケット生成に際して、
第八の実施例で述べたような、外部からの侵入に対して
安全に構築されたアクセスチケット発行サーバは必要な
い。ユーザは、所有するPCあるいはワークステーショ
ン上で動作するプログラムによって自由にアクセスチケ
ットを生成することができる。プログラム中には、秘密
の定数や秘密の手続きは存在せず、プログラムを解析し
たとしても不正アクセスを可能とするいかなる情報も取
り出すことはできない。
【0269】ユーザUの固有情報はRSA公開鍵ペアの
個人鍵dである。このユーザの固有情報に対応する公開
鍵を(e U,nU)とする。即ち、異なる2つの大きい素
数pUとqUに対しnU=pUUであり、dU及びeUは関
係式64を満たすように決定された整数である。
【数64】 1≦dU≦(pU−1)(qU−1) (64) 1≦eU≦(pU−1)(qU−1) eUU≡1 mod(pU−1)(qU−1) ここで、nUは全てのユーザに共有される定数N以上で
あるという条件を付け加える。
【0270】ユーザUへのアクセスチケットは以下のよ
うに構成される。
【0271】RSA公開鍵ペアの公開鍵(E,n)をア
クセスチケットの公開鍵とし、該公開鍵と対をなす秘密
鍵をDとする。nの素因数分解をn=pqとする時、関
係式65が成り立つ。
【数65】 アクセスチケットtUは式66で定義される
【数66】(66) tU=DeU mod nU
【0272】この実施例におけるアクセス資格認証の特
徴情報は、前記RSA公開鍵ペアの個人鍵Dである。
【0273】第一乃至第七の実施例の場合と同様、この
実施例における証明データ生成装置11は、アクセス資
格認証の特徴情報を知りえること、即ち、与えられた認
証用データに対応して、正しい証明データを計算し得る
ことを、証明データ検証装置10との通信を介して証明
する。
【0274】この実施例の特徴は、アクセス資格認証の
特徴情報であるDを暗号化して得られるデータがアクセ
スチケットであり、ユーザの固有情報がこの暗号化を解
くための唯一の復号鍵である点にある。更にいえば、ユ
ーザの固有情報をRSA公開鍵暗号の個人鍵としている
所から、対応する公開鍵を知りえる何人でもアクセスチ
ケットを生成しえる点にある。以下に、本実施例におけ
る作用を図26を参照して述べる。
【0275】1.証明データ検証装置10は、認証用デ
ータCを証明データ生成装置10の受信データ記憶部7
11に書き込む。
【0276】2.証明データ生成装置11の復号鍵生成
部712は、ユーザ固有情報記憶部715中に記憶され
たユーザの固有情報dUと、アクセスチケット記憶部7
13中に記憶されたアクセスチケットtUを取得し、式
67に基づきD’を計算する。
【数67】(67) D’=t U dU mod nU 3.証明データ生成部714は、復号鍵生成部712に
よって生成された前記D’と、受信データ記憶部711
に記憶されている認証用データCを入力として式68の
計算を行ない、Rを求める。証明データ生成部714
は、計算結果を返信データとして証明データ検証装置に
送信する。
【数68】(68) R= CD' mod n
【0277】4.証明データ検証装置は、証明データR
の正当性を検証する。
【0278】アクセスチケットtU=DeU mod nU
におけるアクセスチケットの秘密鍵Dは、ユーザUに対
しても秘密に保たれなければならないので、上記証明デ
ータ生成装置11の装置構成のうち、ユーザ固有情報記
憶部713、復号鍵生成部712および証明データ生成
部714は耐タンパー特性を有する防御手段760中に
封入される。
【0279】第1乃至第七の実施例の場合と同様、証明
データ生成装置11によってユーザの第一の固有情報と
アクセスチケットの正しい組合せが用いられた場合に限
り、証明データ生成装置によって生成される証明データ
Rは、証明データ検証装置によって正しく検証される。
【0280】[第十の実施例]この発明の第十の実施例
は、証明データ生成装置における証明データの計算に公
開鍵暗号(RSA暗号)の代わりに対称鍵暗号が利用さ
れ、アクセスチケットが、前記対称鍵暗号の復号鍵(暗
号化鍵と同一)Dをユーザ固有情報であるRSA公開鍵
ペアの個人鍵に対応する公開鍵(eU,nU)で暗号化し
て得られるデータである点を除いては、第九の実施例と
ほぼ同じである。
【0281】即ち、対称鍵暗号の暗号化関数をEncr
ypt(鍵,平文)(出力は暗号文)、復号関数をDe
crypt(鍵,暗号文)(出力は平文)と表す時、プ
ロテクトされた証明データCは式69で定義される。
【数69】 (69) C=Encrypt(D,K) 更に、アクセスチケットtUは式70で定義される
【数70】(70) tU=DeU mod nU 以下、証明データ生成装置の装置構成および作用を図2
6に基づいて説明する。
【0282】1.証明データ検証装置10は、認証用デ
ータCを証明データ生成装置10の受信データ記憶部7
11に書き込む。
【0283】2.証明データ生成装置11の復号鍵生成
部712は、ユーザ固有情報記憶部715中に記憶され
たユーザの固有情報dUと、アクセスチケット記憶部7
13中に記憶されたアクセスチケットtUを取得し、式
71によりD’を計算する。計算結果は証明データ生成
部714に出力される。
【数71】(71) D’=tU dU mod nU
【0311】3.証明データ生成部714は、復号鍵生
成部712から得たD’と、受信データ記憶部711に
記憶されている認証用データCを入力として式72の計
算を行ない、Rを求める。計算結果は、返信データとし
て証明データ検証装置10に送信される。
【数72】 (72) R=Decrypt(D’,C)
【0284】4.証明データ検証装置11中はRの検証
を行い、正規の処理を続行するか、エラー処理を実行す
るかを決定する。 [実施例の効果]以上の説明から明らかなように、ユー
ザのPCあるいはワークステーション上で実行されるア
プリケーションプログラムへのアクセス制御(実行制
御)を目的として、上記の実施例を実施した場合、次に
述べる効果を提供することができる。
【0285】1.ユーザはユーザ固有情報を固有にただ
一つ保持すればよい。
【0286】2.アプリケーション作成時にはユーザ固
有情報と無関係な方法でプログラムに保護処理を施す。
【0287】3.アプリケーションの実行を許可された
ユーザにはアクセスチケットが発行され、該ユーザは自
らのユーザ固有情報とアクセスチケットを保持すること
によってのみアプリケーションの実行が可能となる。
【0288】4.アクセスチケットは、正規の持ち主で
はないユーザがそれを保持していたとしても、それによ
ってアプリケーションの実行が可能ならないような方法
で、安全に生成される。
【0289】これらの特徴により、ユーザ固有情報を内
蔵したハードウェアをユーザに配布する場合でも、配布
は各ユーザ毎に一回で済み、また、プログラム作成者
は、作成する所のプログラムがだれによって利用される
かに関わりなく、一つのアプリケーションの保護処理を
一通りの方法で行なえばよいこととなる。従って、従来
技術の問題点であった、 ◎ユーザ毎に異なるユーザ固有情報を識別するように、
プログラムの保護方法をユーザ毎に変えなければならな
い、 ◎ユーザ固有情報をアプリケーション毎に設定し、その
ためアプリケーション毎にハードウェアをユーザに郵送
しなければならない、 といった問題点が解決され、コストの低減と利便性の向
上に大幅に寄与する。
【0290】上述の実施例によれば、アプリケーション
プログラムの実行にはアクセスチケットが必要となる
が、アクセスチケットは正規のユーザにのみ利用可能な
安全なディジタル情報であるため、ネットワーク等を介
して簡便にユーザに配送することが出来る。
【0291】また、ユーザは利用するアプリケーション
プログラムを変更する度にアクセスチケットを取り替え
る必要があるが、前述のようにアクセスチケットはディ
ジタル情報であるため取り替え操作は計算機中のプログ
ラムによって容易に行なうことができる。即ち、アプリ
ケーションプログラムを変更する度にユーザがハードウ
ェアを取り替えなければならないといった従来の煩雑さ
が解消される。
【0292】更に、上述実施例では、異なる証明データ
に基づく証明データ検証装置(プロシージャ)を、アプ
リケーションプログラム中の任意の位置に自由に配置す
ることが可能であるため、 ◎アプリケーションプログラムの部分毎に異なる実行権
を設定する ◎特定の組合せのアクセスチケットを全て保持している
時に限り実行権を与える といった、きめの細かいアクセス制御を実行制御によっ
て実現することが出来る。
【0293】なおこの発明はプログラムの実行制御に限
定されるものではなく、メールのプライバシー保護やフ
ァイルおよび計算機資源へのアクセス制御にこの発明を
適用することができることは明らかである。すなわちフ
ァイルやメールや計算機資源を管理する機構にこの発明
の認証技術を適用すれば、ファイル等のアクセスを制御
することができる。
【0294】
【発明の効果】以上説明したように、この発明によれ
ば、証明用補助データ(アクセスチケット)を導入する
ことにより、アクセス資格認証の特徴情報とユーザ固有
情報とを独立させることができ、従って、プロテクト側
も、ユーザ側も1つの固有情報を準備しておけば済む。
アクセスチケットは、特定のユーザ固有情報とアクセス
資格認証の特徴情報とに基づいて計算されるデータであ
り、またユーザ固有情報を知らずにアクセスチケットか
らアクセス資格認証の特徴情報を計算することは少なく
とも計算量的に不可能である。そしてユーザ固有情報と
アクセスチケットとの正しい組合せ、即ち、ユーザ固有
情報と該ユーザ固有情報に基づいて計算されたアクセス
チケットの組合せが入力された場合に限って、正しい証
明用データがを計算される。従って、ユーザはあらかじ
めユーザ固有情報を所持し、プログラム作成者等のプロ
テクト者はユーザが所持するユーザ固有情報とは独立に
アクセス資格認証の特徴情報を用意し、アクセスチケッ
トをユーザの固有情報とアプリケーションプログラムの
作成等に使用したアクセス資格認証の特徴情報とに応じ
て作成し、配布することにより、実行制御等のユーザの
アクセス資格の認証を行なうことができる。
【図面の簡単な説明】
【図1】 この発明の原理的な構成例を示すブロック図
である。
【図2】 この発明の第一の実施例の構成を示すブロッ
ク図である。
【図3】 第一の実施例の証明データ検証装置及び証明
データ生成装置の構成を示すブロック図である。
【図4】 第一の実施例の動作を説明するフロー図であ
る。
【図5】 第二の実施例の証明データ検証装置及び証明
データ生成装置の構成を示すブロック図である。
【図6】 第二の実施例の証明データ検証装置の動作を
説明するフロー図である。
【図7】 第二の実施例の証明データ検証装置の実行部
の構成例を示すブロック図である。
【図8】 図7の実行部の構成例の動作を説明するフロ
ー図である。
【図9】 第二の実施例の証明データ検証装置の実行部
の他の構成例を示すブロック図である。
【図10】 図9の実行部の構成例の動作を説明するフ
ロー図である。
【図11】 第二の実施例の証明データ検証装置の実行
部の他の構成例を示すブロック図である。
【図12】 図11の実行部の構成例の動作を説明する
フロー図である。
【図13】 第二の実施例の証明データ検証装置の実行
部の他の構成例を示すブロック図である。
【図14】 図13の実行部の構成例の動作を説明する
フロー図である。
【図15】 この発明の第三の実施例の証明データ生成
装置の構成を示すブロック図である。
【図16】 第三の実施例の証明データ生成装置の動作
を説明するフロー図である。
【図17】 この発明の第四の実施例の構成例を示すブ
ロック図である。
【図18】 この発明の第四の実施例の他の構成例を示
すブロック図である。
【図19】 図17の動作を説明するフロー図である。
【図20】 この発明の第五の実施例の構成を示すブロ
ック図である。
【図21】 第五の実施例のデータ検証装置の動作を説
明するフロー図である。
【図22】 この発明の第六の実施例の構成を示すブロ
ック図である。
【図23】 第六の実施例の動作を説明するフロー図で
ある。
【図24】 この発明の第七の実施例の構成を示すブロ
ック図である。
【図25】 第七の実施例の動作を説明するフロー図で
ある。認証プロトコルを説明する図である。
【図26】 第九の実施例および第十の実施例のアクセ
スチケットを用いた認証を説明するブロック図である。
【符号の説明】
10 証明データ検証装置 11 証明データ生成装置 12 アクセスチケット生成装置 13 アクセスチケット 14 アクセス資格認証の特徴情報 15 検証ルーチン 16 ユーザ固有情報 17 証明データ生成プログラム 20 トークン(防護手段) 101 アクセスチケット公開鍵記憶部101 102 乱数発生部 103 乱数記憶部 105 受信データ記憶部 106 検証部 107 実行部 108 エラー処理部 111 受信データ記憶部 112 第1演算部 113 アクセスチケット記憶部 114 第2演算部 115 ユーザ固有情報記憶部 116 証明データ生成部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI G06F 12/14 320 G06F 12/14 320A G09C 1/00 640 G09C 1/00 640B 640E H04L 9/00 675D

Claims (51)

    【特許請求の範囲】
  1. 【請求項1】 ユーザのアクセス資格を証明するために
    生成された証明データの正当性を検証することにより上
    記ユーザのアクセス資格を認証するアクセス資格認証装
    置において、 認証用データを記憶する第1の記憶手段と、 ユーザの固有情報を記憶する第2の記憶手段と、 上記ユーザの固有情報と、アクセス資格認証の特徴情報
    とに対し、所定の計算を実行した実行結果である証明用
    補助情報を記憶する第3の記憶手段と、 上記第1の記憶手段に保持されている認証用データと、
    上記第2の記憶手段に記憶されている上記ユーザの固有
    情報と、上記第3の記憶手段に記憶されている上記証明
    用補助情報とに所定の計算を施して証明データを生成す
    る証明データ生成手段と、 上記証明データ生成手段によって生成された証明データ
    が上記アクセス資格認証の特徴情報に基づいて生成され
    ていることを検証する証明データ検証手段とを有するこ
    とを特徴とするアクセス資格認証装置。
  2. 【請求項2】 少なくとも、上記第2の記憶手段と、上
    記証明データ生成手段とが、内部のデータ及び処理手続
    を外部から観測することを困難ならしめる防御手段中に
    保持されていることを特徴とする請求項1記載のアクセ
    ス資格認証装置。
  3. 【請求項3】 少なくとも、上記第2の記憶手段と、上
    記証明データ生成手段とが、ICカードなどの携帯可能
    な小型演算装置として構成されていることを特徴とする
    請求項1記載のアクセス資格認証装置。
  4. 【請求項4】 上記証明データ生成手段が、第1の演算
    手段と、第2の演算手段とから構成され、 第1の演算手段は、上記第2の記憶手段に記憶されてい
    るユーザの固有情報と、上記第3の記憶手段に記憶され
    ている証明用補助情報とに所定の計算を施し、その結果
    として上記アクセス資格認証の特徴情報を算出し、 第2の演算手段は、上記第1の記憶手段に記憶されてい
    る認証用データと、第1の演算手段によって算出された
    アクセス資格認証の特徴情報とに所定の計算を施し、そ
    の結果として上記証明データを生成することを特徴とす
    る請求項1乃至3記載のアクセス資格認証装置。
  5. 【請求項5】 上記証明データ生成手段が、第3の演算
    手段と、第4の演算手段と、第5の演算手段とから構成
    され、 第3の演算手段は、上記第1の記憶手段に記憶されてい
    る認証用データと、上記第3の記憶手段に記憶されてい
    る証明用補助情報とに所定の計算を施し、 第4の演算手段は、上記第1の記憶手段に記憶されてい
    る認証用データと、第2の記憶手段に記憶されているユ
    ーザの固有情報とに所定の計算を施し、 第5の演算手段が、上記第3の演算手段による計算結果
    と、上記第4の演算手段による計算結果とに所定の計算
    を施し、その結果として上記証明データを生成すること
    を特徴とする請求項1乃至3記載のアクセス資格認証装
    置。
  6. 【請求項6】 少なくとも、上記第2の記憶手段と、上
    記第4の演算手段とが、内部のデータ及び処理手続を外
    部から観測することを困難ならしめる防御手段中に保持
    されていることを特徴とする請求項5に記載のアクセス
    資格認証装置。
  7. 【請求項7】 少なくとも、上記第2の記憶手段と、上
    記第4の演算手段とが、ICカードなどの携帯可能な小
    型演算装置として構成されていることを特徴とする請求
    項5に記載のアクセス資格認証装置。
  8. 【請求項8】 上記アクセス資格認証の特徴情報が暗号
    関数における復号鍵であり、上記認証用データが適当な
    データを前記復号鍵に対応する暗号化鍵を用いて暗号化
    したものであり、 上記証明データ検証手段は、上記証明データ生成手段が
    生成する上記証明データが認証用データを正しく復号し
    たものであることを検証することを特徴とする請求項1
    乃至7に記載のアクセス資格認証装置。
  9. 【請求項9】 上記アクセス資格認証の特徴情報が暗号
    関数における暗号化鍵であり、上記証明データ生成手段
    が生成する上記証明データが上記認証用データを前記暗
    号化鍵を用いて正しく暗号化したものであることを検証
    することを特徴とする請求項1乃至7に記載のアクセス
    資格認証装置。
  10. 【請求項10】 上記アクセス資格認証の特徴情報がデ
    ジタル署名関数における署名鍵であり、上記証明データ
    生成手段が生成する上記証明データが、上記認証用デー
    タに対して、前記署名鍵を用いて正しく生成されたデジ
    タル署名であることを検証することを特徴とする請求項
    1乃至7に記載のアクセス資格認証装置。
  11. 【請求項11】 暗号化関数が非対称鍵暗号関数であ
    り、アクセス資格認証の特徴情報が鍵の一方であること
    を特徴とする請求項8または9に記載のアクセス資格認
    証装置。
  12. 【請求項12】 暗号化関数が公開鍵暗号関数であり、
    アクセス資格認証の特徴情報が秘密鍵であることを特徴
    とする請求項11に記載のアクセス資格認証装置。
  13. 【請求項13】 暗号化関数が対称鍵暗号関数であり、
    アクセス資格認証の特徴情報が共通秘密鍵であることを
    特徴とする請求項8または9に記載のアクセス資格認証
    装置。
  14. 【請求項14】 上記第1の記憶手段と、上記第2の記
    憶手段と、上記第3の記憶手段と、上記証明データ生成
    手段とから構成される証明データ生成装置と、 上記証明データ検証手段に加え、認証用データを記憶す
    る第4の記憶手段と、証明データを記憶する第5の記憶
    手段を備えた証明データ検証装置とが、互いに通信する
    ことによりユーザのアクセス資格を認証するアクセス資
    格認証装置において、 証明データ検証装置は、第4の記憶手段に記憶されてい
    る認証用データを証明データ生成装置の第1の記憶手段
    に書き出し、 証明データ生成装置は、証明データ生成手段によって第
    1の記憶手段に書き込まれた上記認証用データをもとに
    生成した証明データを、証明データ検証装置中の第5の
    記憶手段に書き出し、 証明データ検証装置は第5の記憶手段に書き込まれた上
    記証明データを用いてユーザのアクセス資格を認証する
    ことを特徴する請求項1乃至13に記載のアクセス資格
    認証装置。
  15. 【請求項15】 上記アクセス資格認証の特徴情報が暗
    号化関数の暗号化鍵であり、 証明データ検証装置が乱数生成手段を備え、乱数生成手
    段は生成した乱数を認証用データとして第4の記憶手段
    に書き込み、 証明データ検証手段は、証明データ生成装置によって第
    5の記憶手段に書き込まれた証明データが前記乱数であ
    る認証用データをアクセス資格認証の特徴情報である暗
    号化鍵で暗号化したものであることを検証することを特
    徴とする請求項14に記載のアクセス資格認証装置。
  16. 【請求項16】 アクセス資格認証の特徴情報が暗号化
    関数の復号鍵であり、 証明データ検証装置が乱数生成手段と、生成した乱数を
    記憶する第6の記憶手段と、認証用素データを記憶する
    第7の記憶手段とを備え、 乱数生成手段は生成した乱数を第6の記憶手段に書き込
    むと共に、第7の記憶手段に記憶されている認証用素デ
    ータに前記乱数を用いた乱数効果を施した後、認証用デ
    ータとして第4の記憶手段に書き込み、 証明データ検証手段は、第6の記憶手段に記憶されてい
    る乱数による乱数効果を、上記証明データ生成装置によ
    って第5の記憶手段に書き込まれた証明データから除去
    した結果が、アクセス資格認証の特徴情報である復号鍵
    で第7の記憶手段に記憶されている認証用素データを復
    号したものであることを検証することを特徴とする請求
    項14に記載のアクセス資格認証装置。
  17. 【請求項17】 上記アクセス資格認証の特徴情報がデ
    ジタル署名関数の署名鍵であり、 証明データ検証装置が乱数生成手段を備え、乱数生成手
    段は生成した乱数を認証用データとして第4の記憶手段
    に書き込み、 証明データ検証手段は、証明データ生成装置によって第
    5の記憶手段に書き込まれた証明データが、前記乱数で
    ある認証用データに対する、アクセス資格認証の特徴情
    報である署名鍵によるデジタル署名であることを検証す
    ることを特徴とする請求項14に記載のアクセス資格認
    証装置。
  18. 【請求項18】 暗号化関数が法nのもとでのRSA公
    開鍵暗号であり、アクセス資格認証の特徴情報が秘密鍵
    Dであり、秘密鍵Dに対応する公開鍵がEであり、 証明データ検証手段は、第5の記憶手段に書き込まれた
    証明データRをE乗した結果と、第4の記憶手段に記憶
    されている認証用データCとが、法nのもとで合同であ
    ること(RE mod n = C mod n)を検
    証することを特徴とする請求項15に記載のアクセス資
    格認証装置。
  19. 【請求項19】 暗号化関数が法nのもとでのRSA公
    開鍵暗号であり、アクセス資格認証の特徴情報が秘密鍵
    Dであり、秘密鍵Dに対応する公開鍵がEであり、 上記第7の記憶手段に記憶される認証用素データがデー
    タKを法nのもとでE乗した数K’(=KE mod
    n)であり、 上記乱数生成手段は、生成した乱数rを法nのもとでE
    乗した数と、前記K’とを法nのもとで乗じた数C(=
    EK’ mod n)を認証用データとして前記第4
    の記憶手段に書き込み、 証明データ検証手段は、第6の記憶手段に記憶されてい
    る乱数rの法nのもとでの逆数を、証明データ生成装置
    によって第5の記憶手段に書き込まれた証明データRに
    乗じた数と、前記Kとが法nのもとで合同であること
    (K mod n=r-1R mod n)を検証するこ
    とを特徴とする請求項16に記載のアクセス資格認証装
    置。
  20. 【請求項20】 暗号化関数が法nのもとでのRSA公
    開鍵暗号であり、アクセス資格認証の特徴情報が秘密鍵
    Dであり、秘密鍵Dに対応する公開鍵がEであり、 上記第3の記憶手段に記憶される証明用補助情報tが、
    前記Dから上記第2の記憶手段に記憶されるユーザの固
    有情報eを減じ、さらに、前記nとeに依存する非衝突
    性関数値ω(=G(n,e))とnのオイラー数φ
    (n)との積を加えて得られるデータ(t=D−e+ω
    φ(n))であり、 上記証明データ生成手段は、前記tと、前記eと、第1
    の記憶手段に書き込まれた認証用データCとから、法n
    のもとでCのD乗(CD mod n)を計算すること
    によって前記証明データを生成することを特徴とする請
    求項18または19に記載のアクセス資格認証装置。
  21. 【請求項21】 上記証明データ生成手段が、第3の演
    算手段と、第4の演算手段と、第5の演算手段とからな
    り、 第3の演算手段は、前記法nのもとで前記Cの前記t乗
    (Ct mod n)を計算し、 第4の演算手段は、前記法nのもとで前記Cの前記e乗
    (Ce mod n)を計算し、 第5の演算手段は、前記法nのもとで第1および第2の
    演算手段の計算結果を乗じることによって、証明データ
    R(=Cte mod n)を生成することを特徴とす
    る請求項20に記載のアクセス資格認証装置。
  22. 【請求項22】 前記第2の記憶手段及び前記第4の演
    算手段が、内部の処理手続及びデータを外部の観測から
    防御する防御手段中に内蔵されることを特徴とする請求
    項21に記載のアクセス資格認証装置。
  23. 【請求項23】 暗号化関数が法nのもとでのRSA公
    開鍵暗号であり、アクセス資格認証の特徴情報が秘密鍵
    Dであり、秘密鍵Dに対応する公開鍵がEであり、 上記第3の記憶手段に記憶される証明用補助情報tが、
    前記Dに、上記第2の記憶手段に記憶されるユーザの固
    有情報eと前記法nとに依存する非衝突性関数値F
    (n,e)を加えて得られるデータ(t=D+F(n,
    e))であり、 上記証明データ生成手段は、前記tと、前記eと、前記
    第1の記憶手段に書き込まれた認証用データCとから、
    法nのもとでCのD乗(CD mod n)を計算する
    ことによって前記証明データを生成することを特徴とす
    る請求項18または19に記載のアクセス資格認証装
    置。
  24. 【請求項24】 上記証明データ生成手段が、第3の演
    算手段と、第4の演算手段と、第5の演算手段とからな
    り、 第3の演算手段は、前記法nのもとで前記Cの前記t乗
    (Ct mod n)を計算し、 第4の演算手段は、前記法nのもとで前記Cの前記F
    (n,e)乗(CF(n,e) mod n)を計算し、 第5の演算手段は、前記法nのもとで、第3の演算手段
    の計算結果と、第4の演算手段の計算結果の逆数とを乗
    じることによって、証明データR(=Ct-F(n,e)
    od n)を生成することを特徴とする請求項23に記
    載のアクセス資格認証装置。
  25. 【請求項25】 前記第2の記憶手段及び前記第4の演
    算手段が、内部の処理手続及びデータを外部の観測から
    防御する防御手段中に内蔵されることを特徴とする請求
    項24に記載のアクセス資格認証装置。
  26. 【請求項26】 暗号化関数が法pのもとでのPohl
    ig−Hellman非対称鍵暗号であり、アクセス資
    格認証の特徴情報が一方の鍵Dであり、鍵Dに対応する
    他方の鍵がEであり(DE mod p−1 =
    1)、 証明データ検証手段は、第5の記憶手段に書き込まれた
    証明データRをE乗した結果と、第4の記憶手段に記憶
    されている認証用データCとが法pのもとで合同である
    こと(RE mod p = C mod p)を検証
    することを特徴とする請求項15に記載のアクセス資格
    認証装置。
  27. 【請求項27】 暗号化関数が法pのもとでのPohl
    ig−Hellman非対称鍵暗号であり、アクセス資
    格認証の特徴情報が一方の鍵Dであり、鍵Dに対応する
    他方の鍵がEであり(DE mod p−1 =
    1)、 上記第7の記憶手段に記憶される認証用素データがデー
    タKを法pのもとでE乗した数K’(=KE mod
    p)であり、 上記乱数生成手段は、生成した乱数rを法pのもとでE
    乗した数と、前記K’とを法pのもとで乗じた数C(=
    EK’ mod p)を認証用データとして前記第4
    の記憶手段に書き込み、 証明データ検証手段は、第6の記憶手段に記憶されてい
    る乱数rの法pのもとでの逆数を、証明データ生成装置
    によって第5の記憶手段に書き込まれた証明データRに
    乗じた数と、前記Kとが法pのもとで合同であること
    (K mod p=r-1R mod p)を検証するこ
    とを特徴とする請求項16に記載のアクセス資格認証装
    置。
  28. 【請求項28】 暗号化関数が法pのもとでのPohl
    ig−Hellman非対称鍵暗号であり、アクセス資
    格認証の特徴情報が一方の鍵Dであり、鍵Dに対応する
    他方の鍵がEであり(DE mod p−1 =
    1)、 上記第3の記憶手段に記憶される証明用補助情報tが、
    前記Dに、上記第2の記憶手段に記憶されるユーザ固有
    情報eと前記pとに依存する非衝突性関数値F(p,
    e)を加えて得られるデータ(t=D+F(p,e))
    であり、 上記証明データ生成手段は、前記tと、前記eと、第1
    の記憶手段に書き込まれた認証用データCとから、法p
    のもとでCのD乗(CD mod p)を計算すること
    によって前記証明データを生成することを特徴とする請
    求項26または27に記載のアクセス資格認証装置。
  29. 【請求項29】 上記証明データ生成手段が、第3の演
    算手段と、第4の演算手段と、第5の演算手段とからな
    り、 第3の演算手段は、前記法pのもとで前記Cの前記t乗
    (Ct mod p)を計算し、 第4の演算手段は、前記法pのもとで、前記F(p,
    e)を指数として、前記Cのべき乗(CF(p,e) mod
    p)を計算し、 第5の演算手段は、前記法pのもとで、第3の演算手段
    の計算結果と、第4の演算手段の計算結果の逆数とを乗
    じることによって、証明データR(=Ct-F(p,e)
    od p)を生成することを特徴とする請求項28に記
    載のアクセス資格認証装置。
  30. 【請求項30】 前記第2の記憶手段及び前記第4の演
    算手段が、内部の計算手順及びデータを外部の観測から
    防御する防御手段中に内蔵されることを特徴とする請求
    項29に記載のアクセス資格認証装置。
  31. 【請求項31】 暗号化関数が法p、生成元aのもとで
    のElGamal公開鍵暗号であり、アクセス資格認証
    の特徴情報が一方の鍵Xであり、鍵Xに対応する公開鍵
    がYであり(Y = aX mod p)、 uが上記aを法pのもとで適当な乱数zを指数としてべ
    き乗した数であり(u=az mod p)、 K’が、上記Yを法pのもとで上記乱数zを指数として
    べき乗した数と、データKとの積であるとき(K’=Y
    zK mod p)、 上記第7の記憶手段に認証用素データとしてu及びK’
    の組が記憶され、 上記乱数生成手段は、上記uと、生成した乱数rを前記
    K’に法pのもとで乗じた数C(=rK’ mod
    p)とを認証用データとして前記第4の記憶手段に書き
    込み、 証明データ検証手段は、第6の記憶手段に記憶されてい
    る乱数rの法pのもとでの逆数を、証明データ生成装置
    によって第5の記憶手段に書き込まれた証明データRに
    乗じた数と、前記Kとが法pのもとで合同であること
    (K mod p=r-1R mod p)を検証するこ
    とを特徴とする請求項16に記載のアクセス資格認証装
    置。
  32. 【請求項32】 暗号化関数が法p、生成元aのもとで
    のElGamal公開鍵暗号であり、アクセス資格認証
    の特徴情報が一方の鍵Xであり、鍵Xに対応する公開鍵
    がYであり(Y = aX mod p)、 上記第3の記憶手段に記憶される証明用補助情報tが、
    前記Xに、上記第2の記憶手段に記憶されるユーザ固有
    情報eと前記pとに依存する非衝突性関数値F(p,
    e)を加えて得られるデータ(t=X+F(p,e))
    であり、 上記証明データ生成手段は、前記tと、前記eと、第1
    の記憶手段に書き込まれた認証用データu及びCから、
    法pのもとで、Cを上記uのX乗で割った数(Cu-X
    mod p)を計算することによって上記証明データを
    生成することを特徴とする請求項31に記載のアクセス
    資格認証装置。
  33. 【請求項33】 上記証明データ生成手段が、第3の演
    算手段と、第4の演算手段と、第5の演算手段とからな
    り、 第3の演算手段は、前記法pのもとで前記uの前記t乗
    (ut mod p)を計算し、 第4の演算手段は、前記法pのもとで前記uの前記F
    (p,e)乗(uF(p,e)mod n)を計算し、 第5の演算手段は、前記法pのもとで、上記Cを第3の
    演算手段の計算結果で割り、さらに、第4の演算手段の
    計算結果を乗じることによって、証明データR(=Cu
    -tF(p,e) mod p)を生成することを特徴とする
    請求項32に記載のアクセス資格認証装置。
  34. 【請求項34】 前記第2の記憶手段及び前記第4の演
    算手段が、内部の計算手順及びデータを外部の観測から
    防御する防御手段中に内蔵されることを特徴とする請求
    項33に記載のアクセス資格認証装置。
  35. 【請求項35】 署名関数が法p、生成元aのもとでの
    ElGamal署名であり、アクセス資格認証の特徴情
    報が一方の鍵Xであり、鍵Xに対応する公開鍵がYであ
    り(Y = aX mod p)、 証明データ検証手段は、第5の記憶手段に書き込まれた
    証明データR及びSに対して、法pのもとで、上記aを
    第4の記憶手段に記憶されている認証用データCを指数
    としてべき乗した値と、上記YをR乗した値とRをS乗
    した値との積とが法pのもとで合同であること(aC
    mod p = YRS mod p)を検証すること
    を特徴とする請求項17に記載のアクセス資格認証装
    置。
  36. 【請求項36】 署名関数が法p、生成元aのもとでの
    ElGamal署名であり、アクセス資格認証の特徴情
    報が一方の鍵Xであり、鍵Xに対応する公開鍵がYであ
    り(Y = aX mod p)、 上記第3の記憶手段に記憶される証明用補助情報tが、
    前記Xに、上記第2の記憶手段に記憶されるユーザ固有
    情報eと前記pとに依存する非衝突性関数値F(p,
    e)を加えて得られるデータ(t=X+F(p,e))
    であり、 上記証明データ生成手段は、証明データR及びSを生成
    するに当たり、適当な乱数kを生成し、法pのもとでの
    上記aのk乗をR(=ak mod p)とし、前記t
    と、前記eと、第1の記憶手段に書き込まれた認証用デ
    ータCから、法p−1のもとで、CからXとrの積を引
    いた数にkの逆数を乗じることによって、S(=(C−
    RX)k-1 mod p−1)を計算することを特徴と
    する請求項35に記載のアクセス資格認証装置。
  37. 【請求項37】 第2の記憶手段及び証明データ生成手
    段が、内部の計算手順及びデータを外部の観測から防御
    する防御手段中に内蔵されることを特徴とする請求項3
    6に記載のアクセス資格認証装置。
  38. 【請求項38】 上記ユーザの固有情報が暗号関数の復
    号鍵であり、証明用補助情報がアクセス資格認証のため
    の特徴情報を前記復号鍵に対応する暗号化鍵によって暗
    号化したものであり、第1の演算手段は上記ユーザの固
    有情報である復号鍵を用いて、証明用補助情報を復号す
    ることにより、アクセス資格認証のための特徴情報を算
    出することを特徴とする請求項4に記載のアクセス資格
    認証装置。
  39. 【請求項39】 上記暗号関数が非対称鍵暗号関数であ
    り、ユーザの固有情報が一方の鍵であることを特徴とす
    る請求項38に記載のアクセス資格認証装置。
  40. 【請求項40】 上記暗号関数が公開鍵暗号関数であ
    り、ユーザの固有情報が秘密鍵であることを特徴とする
    請求項39に記載のアクセス資格認証装置。
  41. 【請求項41】 上記暗号関数が対称鍵暗号関数であ
    り、ユーザの固有情報が共通秘密鍵であることを特徴と
    する請求項38に記載のアクセス資格認証装置。
  42. 【請求項42】 上記証明データ検証手段は、暗号化さ
    れたデータである上記認証用データあるいは上記認証用
    素データに対応する平文データを記憶する第8の記憶手
    段と、比較手段とを有し、 上記比較手段は、上記証明データ生成手段が生成した上
    記証明データ或は証明データから乱数効果を除去した結
    果と、第8の記憶手段に記憶されている平文データを比
    較し、両者が一致した場合に限り、上記証明データが正
    当であると判断することを特徴とする請求項8または1
    6に記載のアクセス資格認証装置。
  43. 【請求項43】 上記証明データ検証手段は、暗号化さ
    れたデータである上記認証用データあるいは上記認証用
    素データに対応する平文データに所定の一方向関数を施
    した結果を記憶する第9の記憶手段と、上記一方向関数
    を実行する第6の演算手段と、比較手段とを有し、 第6の演算手段は、上記証明データ生成手段が生成した
    上記証明データに、必要ならば乱数効果を取り除いたの
    ち、一方向関数を施し、 上記比較手段は、第6の演算手段による計算結果と、第
    9の記憶手段に記憶されているデータを比較し、両者が
    一致した場合に限り、上記証明データが正当であると判
    断することを特徴とする請求項8または16に記載のア
    クセス資格認証装置。
  44. 【請求項44】 上記証明データ検証手段は、プログラ
    ム実行手段を含み、上記認証用データあるいは上記認証
    用素データは、プログラムを暗号化して得られるデータ
    であり、 上記証明データ検証手段が、証明データ生成手段が生成
    した上記証明データを、必要ならば乱数効果を取り除い
    たのち、プログラムとしてプログラム実行手段に引き渡
    すことにより、 証明データ生成手段が、暗号化されたプログラムである
    上記認証用データあるいは認証用素データを正しく復号
    した場合、即ち、暗号化されたプログラムが正しく復号
    された場合に限り、プログラム実行手段が正しい動作を
    行うことを特徴とする請求項8または16に記載のアク
    セス資格認証装置。
  45. 【請求項45】 上記証明データ検証手段は、プログラ
    ム実行手段と、プログラム記憶手段と、プログラム復号
    手段とを含み、 プログラム記憶手段に記憶されているプログラムは、そ
    の一部あるいは全部が暗号化されたものであり、 上記認証用データあるいは上記認証用素データは、前記
    暗号化されたプログラムを復号するための復号鍵を別途
    暗号化して得られるデータであり、 上記証明データ検証手段は、証明データ生成手段が生成
    した上記証明データをプログラム復号手段に引き渡し、 プログラム復号手段は、前記証明データ生成手段が生成
    した証明データを、必要ならば乱数効果を取り除いたの
    ち、復号鍵として用いることにより、プログラム記憶手
    段に記憶されたプログラムの必要な部分を復号し、 プログラム実行手段が復号されたプログラムを実行する
    ことにより、 証明データ生成手段が上記認証用データあるいは認証用
    素データを正しく復号した場合、即ち、暗号化されたプ
    ログラムを復号するために復号鍵が正しく復号された場
    合に限り、プログラム実行手段が正しい動作を行うこと
    を特徴とする請求項8または16に記載のアクセス資格
    認証装置。
  46. 【請求項46】 上記証明データ生成装置および上記証
    明データ認証装置が同一の筺体内に設けられ、上記証明
    データ生成装置および上記証明データ認証装置が、当該
    筺体の外部の通信媒体を解さずに通信を行う請求項14
    に記載のアクセス資格認証装置。
  47. 【請求項47】 ユーザのアクセス資格を証明するため
    に認証用データから生成された証明データの正当性を検
    証することにより上記ユーザのアクセス資格を認証する
    アクセス資格認証方法において、 上記認証用データを記憶するステップとユーザの固有情
    報を記憶するステップと、 上記ユーザの固有情報と、アクセス資格認証の特徴情報
    とに対し、所定の計算を実行した実行結果である証明用
    補助情報を記憶するステップと、 上記認証用データと、上記ユーザの固有情報と、上記証
    明用補助情報とに所定の計算を施して証明データを生成
    するステップと、 上記証明データ生成手段によって生成された証明データ
    が上記アクセス資格認証の特徴情報に基づいて生成され
    ていることを検証するステップとを有することを特徴と
    するアクセス資格認証方法。
  48. 【請求項48】 ユーザのアクセス資格を証明するため
    に認証用データから生成された証明データの正当性を検
    証することにより上記ユーザのアクセス資格を認証する
    ために、コンピュータで用いられるアクセス資格認証用
    プログラム製品において、 上記認証用データを記憶するステップと、 ユーザの固有情報を記憶するステップと、 上記ユーザの固有情報と、アクセス資格認証の特徴情報
    とに対し、所定の計算を実行した実行結果である証明用
    補助情報を記憶するステップと、 上記認証用データと、上記ユーザの固有情報と、上記証
    明用補助情報とに所定の計算を施して証明データを生成
    するステップと、 上記証明データ生成手段によって生成された証明データ
    が上記アクセス資格認証の特徴情報に基づいて生成され
    ていることを検証するステップとを上記コンピュータに
    実行させるのに用いることを特徴とするアクセス資格認
    証用プログラム製品。
  49. 【請求項49】 ユーザのアクセス資格を認証するため
    にその正当性を検証される証明データを、認証用データ
    から生成するために、コンピュータで用いられる証明デ
    ータ生成用プログラム製品において、 上記認証用データを記憶するステップと、 ユーザの固有情報を記憶するステップと、 上記ユーザの固有情報と、アクセス資格認証の特徴情報
    とに対し、所定の計算を実行した実行結果である証明用
    補助情報を記憶するステップと、 上記認証用データと、上記ユーザの固有情報と、上記証
    明用補助情報とに所定の計算を施して証明データを生成
    するステップとを上記コンピュータに実行させるのに用
    いられることを特徴とする証明データ生成用プログラム
    製品。
  50. 【請求項50】 ユーザのアクセス資格を証明するため
    に生成された証明データの正当性を検証することにより
    上記ユーザのアクセス資格を認証し、上記資格の認証に
    基づいてプログラムの実行を制御するプログラム実行制
    御装置において、 認証用データを記憶する第1の記憶手段と、 ユーザの固有情報を記憶する第2の記憶手段と、 上記ユーザの固有情報と、アクセス資格認証の特徴情報
    とに対し、所定の計算を実行した実行結果である証明用
    補助情報を記憶する第3の記憶手段と、 上記第2の記憶手段に記憶されている上記ユーザの固有
    情報と、上記第3の記憶手段に記憶されている上記証明
    用補助情報とを利用して、上記認証用データから上記証
    明データを生成する証明データ生成手段と、 上記証明データ生成手段から生成された証明データの正
    当性を検証する手段と、 上記証明データの正当性が検証されたときにプログラム
    の実行を継続する手段とを有することを特徴とするプロ
    グラム実行制御装置。
  51. 【請求項51】 所定の情報処理資源へのユーザのアク
    セス資格を証明するために生成された証明データの正当
    性を検証することにより上記ユーザのアクセス資格を認
    証して上記所定の情報処理資源へのアクセスを許容する
    情報処理装置において、 認証用データを記憶する第1の記憶手段と、 ユーザの固有情報を記憶する第2の記憶手段と、 上記ユーザの固有情報と、アクセス資格認証の特徴情報
    とに対し、所定の計算を実行した実行結果である証明用
    補助情報を記憶する第3の記憶手段と、 上記第2の記憶手段に記憶されている上記ユーザの固有
    情報と、上記第3の記憶手段に記憶されている上記証明
    用補助情報とを利用して、上記認証用データから上記証
    明データを生成する証明データ生成手段と、 上記証明データ生成手段から生成された証明データの正
    当性を検証する手段と、 上記正当性の検証に基づいて上記所定の情報処理資源へ
    のアクセスを許可する手段とを有することを特徴とする
    情報処理装置。
JP03877097A 1996-02-23 1997-02-24 アクセス資格認証装置および方法 Expired - Fee Related JP3613921B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03877097A JP3613921B2 (ja) 1996-02-23 1997-02-24 アクセス資格認証装置および方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP6207696 1996-02-23
JP8-62076 1997-01-06
JP41897 1997-01-06
JP9-418 1997-01-06
JP03877097A JP3613921B2 (ja) 1996-02-23 1997-02-24 アクセス資格認証装置および方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP32928799A Division JP3614057B2 (ja) 1996-02-23 1999-11-19 アクセス資格認証方法および装置ならびに証明用補助情報作成方法および装置

Publications (2)

Publication Number Publication Date
JPH10247905A true JPH10247905A (ja) 1998-09-14
JP3613921B2 JP3613921B2 (ja) 2005-01-26

Family

ID=26333401

Family Applications (2)

Application Number Title Priority Date Filing Date
JP03877097A Expired - Fee Related JP3613921B2 (ja) 1996-02-23 1997-02-24 アクセス資格認証装置および方法
JP32928799A Expired - Fee Related JP3614057B2 (ja) 1996-02-23 1999-11-19 アクセス資格認証方法および装置ならびに証明用補助情報作成方法および装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP32928799A Expired - Fee Related JP3614057B2 (ja) 1996-02-23 1999-11-19 アクセス資格認証方法および装置ならびに証明用補助情報作成方法および装置

Country Status (4)

Country Link
US (1) USRE42762E1 (ja)
EP (1) EP0792044B1 (ja)
JP (2) JP3613921B2 (ja)
DE (1) DE69704684T2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275936B1 (en) 1997-10-17 2001-08-14 Fuji Xerox Co., Ltd. Decryption method and device, and access right authentication method and apparatus
US6516413B1 (en) 1998-02-05 2003-02-04 Fuji Xerox Co., Ltd. Apparatus and method for user authentication
WO2003073295A1 (en) * 2002-02-27 2003-09-04 Matsushita Electric Industrial Co., Ltd. Host device
US7155745B1 (en) 1999-10-15 2006-12-26 Fuji Xerox Co., Ltd. Data storage device provided with function for user's access right
US8549606B2 (en) 2005-06-01 2013-10-01 Fuji Xerox Co., Ltd. Device for protecting digital content, device for processing protected digital content, method for protecting digital content, method for processing protected digital content, storage medium storing program for protecting digital content, and storage medium storing program for processing protected digital content
JP2015534691A (ja) * 2012-10-05 2015-12-03 マイクロソフト テクノロジー ライセンシング,エルエルシー コンピューティング・デバイスについてのセキュアな識別およびセキュアな識別方法

Families Citing this family (171)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7290288B2 (en) 1997-06-11 2007-10-30 Prism Technologies, L.L.C. Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network
US5974550A (en) * 1997-12-12 1999-10-26 Intel Corporation Method for strongly authenticating another process in a different address space
US6296071B1 (en) 1998-06-30 2001-10-02 Harley-Davidson Motor Company Group, Inc. Motorcycle rocker assembly
WO2000046946A2 (fr) * 1999-01-27 2000-08-10 France Telecom Procede, systeme, dispositif destines a prouver l'authenticite d'une entite et/ou l'integrite et/ou l'authenticite d'un message
FR2788911A1 (fr) * 1999-01-27 2000-07-28 France Telecom Procede, systeme, dispositif pour diminuer la charge de travail pendant une session destinee a prouver l'authenticite d'une entite et/ou l'origine et l'integrite d'un message
IL128609A0 (en) * 1999-02-18 2000-01-31 Nds Ltd Identification protocols
JP3389186B2 (ja) 1999-04-27 2003-03-24 松下電器産業株式会社 半導体メモリカード及び読み出し装置
JP2003511899A (ja) * 1999-10-01 2003-03-25 フランス テレコム エンティティの真正性及びメッセージの完全性を証明するための特定のキーのセット
KR100844546B1 (ko) 1999-10-01 2008-07-08 프랑스 텔레콤 엔티티의 진정성 또는 메시지의 무결성 검증방법, 시스템 및 장치
AU2290801A (en) * 1999-12-21 2001-07-03 Netscape Communications Corporation Hardware token self enrollment process
RU2251752C2 (ru) * 1999-12-28 2005-05-10 Мацусита Электрик Индастриал Ко., Лтд. Карта полупроводниковой памяти и устройство считывания данных
US7984104B1 (en) 2000-04-03 2011-07-19 West Corporation Method and system for content driven electronic messaging
AU2001253098A1 (en) * 2000-04-03 2001-10-15 Craig Goren Method of controlling access to personal resources
EP1410231A4 (en) 2000-04-03 2005-02-23 Juergen Stark METHOD AND SYSTEM FOR ELECTRONIC MESSAGING WITH CONTENT CONTROL
US7062535B1 (en) 2000-04-03 2006-06-13 Centerpost Communications, Inc. Individual XML message processing platform
US7302703B2 (en) 2000-12-20 2007-11-27 Aol, Llc A Delaware Limited Liability Company Hardware token self enrollment process
JP2002278839A (ja) * 2001-03-15 2002-09-27 Sony Corp データアクセス管理システム、メモリ搭載デバイス、およびデータアクセス管理方法、並びにプログラム記憶媒体
JP2002278838A (ja) 2001-03-15 2002-09-27 Sony Corp メモリアクセス制御システム、デバイス管理装置、パーティション管理装置、メモリ搭載デバイス、およびメモリアクセス制御方法、並びにプログラム記憶媒体
US7110858B2 (en) * 2001-04-09 2006-09-19 Koninklijke Philips Electronics N.V. Object identification uses prediction of data in distributed network
WO2004068426A1 (en) 2003-01-31 2004-08-12 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card, and program for controlling the same
USD514035S1 (en) 2003-11-12 2006-01-31 Midwest Motorcycle Supply Rocker box
US6883505B1 (en) 2004-04-02 2005-04-26 Midwest Motorcycle Supply Rocker box assembly with reed valve
JP4435084B2 (ja) * 2005-12-27 2010-03-17 フェリカネットワークス株式会社 通信システム,リーダライタ,認証方法,およびコンピュータプログラム
DE102007009212A1 (de) * 2007-02-26 2008-08-28 Giesecke & Devrient Gmbh Tragbarer Datenträger
US8850549B2 (en) * 2009-05-01 2014-09-30 Beyondtrust Software, Inc. Methods and systems for controlling access to resources and privileges per process
EP3518128B1 (en) * 2011-03-30 2021-04-28 Irdeto B.V. Enabling a software application to be executed on a hardware device
JP5990927B2 (ja) * 2012-02-17 2016-09-14 富士電機株式会社 制御システム、制御装置及びプログラム実行制御方法
US8843739B2 (en) * 2012-04-04 2014-09-23 Lockheed Martin Corporation Anti-tamper device, system, method, and computer-readable medium
CA2982766C (en) 2015-04-14 2023-07-04 Capital One Services, Llc Automated bluetooth pairing
DE102015119140A1 (de) * 2015-11-06 2017-05-11 Océ Printing Systems GmbH & Co. KG Verfahren zum Steuern des Zugriffs auf verschlüsselte Dateien und Computersystem
US11315114B2 (en) 2016-12-28 2022-04-26 Capital One Services, Llc Dynamic transaction card protected by multi-factor authentication
US10515361B2 (en) 2016-12-28 2019-12-24 Capital One Services, Llc Smart card secure online checkout
US10977361B2 (en) 2017-05-16 2021-04-13 Beyondtrust Software, Inc. Systems and methods for controlling privileged operations
US11122033B2 (en) * 2017-12-19 2021-09-14 International Business Machines Corporation Multi factor authentication
US11012435B2 (en) 2017-12-19 2021-05-18 International Business Machines Corporation Multi factor authentication
US10546444B2 (en) 2018-06-21 2020-01-28 Capital One Services, Llc Systems and methods for secure read-only authentication
US11216806B2 (en) 2018-09-19 2022-01-04 Capital One Services, Llc Systems and methods for providing card interactions
US10554411B1 (en) 2018-10-02 2020-02-04 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10505738B1 (en) 2018-10-02 2019-12-10 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
AU2019355110A1 (en) 2018-10-02 2021-04-08 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10630653B1 (en) 2018-10-02 2020-04-21 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10733645B2 (en) 2018-10-02 2020-08-04 Capital One Services, Llc Systems and methods for establishing identity for order pick up
US10592710B1 (en) 2018-10-02 2020-03-17 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10680824B2 (en) 2018-10-02 2020-06-09 Capital One Services, Llc Systems and methods for inventory management using cryptographic authentication of contactless cards
JP7668209B2 (ja) 2018-10-02 2025-04-24 キャピタル・ワン・サービシーズ・リミテッド・ライアビリティ・カンパニー 非接触カードの暗号化認証のためのシステムおよび方法
AU2019351825A1 (en) 2018-10-02 2021-04-15 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
WO2020072474A1 (en) 2018-10-02 2020-04-09 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
SG11202101874SA (en) 2018-10-02 2021-03-30 Capital One Services Llc Systems and methods for cryptographic authentication of contactless cards
WO2020072626A1 (en) 2018-10-02 2020-04-09 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10909527B2 (en) 2018-10-02 2021-02-02 Capital One Services, Llc Systems and methods for performing a reissue of a contactless card
US10771254B2 (en) 2018-10-02 2020-09-08 Capital One Services, Llc Systems and methods for email-based card activation
US10607214B1 (en) 2018-10-02 2020-03-31 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10771253B2 (en) 2018-10-02 2020-09-08 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10565587B1 (en) 2018-10-02 2020-02-18 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
MX2021003217A (es) 2018-10-02 2021-05-12 Capital One Services Llc Sistemas y metodos para autentificacion criptografica de tarjetas sin contacto.
US10748138B2 (en) 2018-10-02 2020-08-18 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10542036B1 (en) 2018-10-02 2020-01-21 Capital One Services, Llc Systems and methods for signaling an attack on contactless cards
CA3115084A1 (en) 2018-10-02 2020-04-09 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10949520B2 (en) 2018-10-02 2021-03-16 Capital One Services, Llc Systems and methods for cross coupling risk analytics and one-time-passcodes
SG11202101171VA (en) 2018-10-02 2021-03-30 Capital One Services Llc Systems and methods for cryptographic authentication of contactless cards
US10489781B1 (en) 2018-10-02 2019-11-26 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US11210664B2 (en) 2018-10-02 2021-12-28 Capital One Services, Llc Systems and methods for amplifying the strength of cryptographic algorithms
US10581611B1 (en) 2018-10-02 2020-03-03 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10582386B1 (en) 2018-10-02 2020-03-03 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10511443B1 (en) 2018-10-02 2019-12-17 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
WO2020072670A1 (en) 2018-10-02 2020-04-09 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10579998B1 (en) 2018-10-02 2020-03-03 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
US10664830B1 (en) 2018-12-18 2020-05-26 Capital One Services, Llc Devices and methods for selective contactless communication
US20200226581A1 (en) 2019-01-11 2020-07-16 Capital One Services, Llc Systems and methods for touch screen interface interaction using a card overlay
US11037136B2 (en) 2019-01-24 2021-06-15 Capital One Services, Llc Tap to autofill card data
US10510074B1 (en) 2019-02-01 2019-12-17 Capital One Services, Llc One-tap payment using a contactless card
US11120453B2 (en) 2019-02-01 2021-09-14 Capital One Services, Llc Tap card to securely generate card data to copy to clipboard
US11082229B2 (en) 2019-03-18 2021-08-03 Capital One Services, Llc System and method for pre-authentication of customer support calls
US10535062B1 (en) 2019-03-20 2020-01-14 Capital One Services, Llc Using a contactless card to securely share personal data stored in a blockchain
US10984416B2 (en) 2019-03-20 2021-04-20 Capital One Services, Llc NFC mobile currency transfer
US10643420B1 (en) 2019-03-20 2020-05-05 Capital One Services, Llc Contextual tapping engine
US10970712B2 (en) 2019-03-21 2021-04-06 Capital One Services, Llc Delegated administration of permissions using a contactless card
GB2584018B (en) 2019-04-26 2022-04-13 Beyondtrust Software Inc Root-level application selective configuration
US11521262B2 (en) 2019-05-28 2022-12-06 Capital One Services, Llc NFC enhanced augmented reality information overlays
US10516447B1 (en) 2019-06-17 2019-12-24 Capital One Services, Llc Dynamic power levels in NFC card communications
US10871958B1 (en) 2019-07-03 2020-12-22 Capital One Services, Llc Techniques to perform applet programming
US11392933B2 (en) 2019-07-03 2022-07-19 Capital One Services, Llc Systems and methods for providing online and hybridcard interactions
US11694187B2 (en) 2019-07-03 2023-07-04 Capital One Services, Llc Constraining transactional capabilities for contactless cards
US12086852B2 (en) 2019-07-08 2024-09-10 Capital One Services, Llc Authenticating voice transactions with payment card
US10713649B1 (en) 2019-07-09 2020-07-14 Capital One Services, Llc System and method enabling mobile near-field communication to update display on a payment card
US10885514B1 (en) 2019-07-15 2021-01-05 Capital One Services, Llc System and method for using image data to trigger contactless card transactions
US11182771B2 (en) 2019-07-17 2021-11-23 Capital One Services, Llc System for value loading onto in-vehicle device
US10832271B1 (en) 2019-07-17 2020-11-10 Capital One Services, Llc Verified reviews using a contactless card
US10733601B1 (en) 2019-07-17 2020-08-04 Capital One Services, Llc Body area network facilitated authentication or payment authorization
US11521213B2 (en) 2019-07-18 2022-12-06 Capital One Services, Llc Continuous authentication for digital services based on contactless card positioning
US10506426B1 (en) 2019-07-19 2019-12-10 Capital One Services, Llc Techniques for call authentication
US10541995B1 (en) 2019-07-23 2020-01-21 Capital One Services, Llc First factor contactless card authentication system and method
EP4038587A4 (en) 2019-10-02 2023-06-07 Capital One Services, LLC CLIENT DEVICE AUTHENTICATION USING CONTACTLESS MAGNETIC STRIP DATA
US10657754B1 (en) 2019-12-23 2020-05-19 Capital One Services, Llc Contactless card and personal identification system
US11615395B2 (en) 2019-12-23 2023-03-28 Capital One Services, Llc Authentication for third party digital wallet provisioning
US10885410B1 (en) 2019-12-23 2021-01-05 Capital One Services, Llc Generating barcodes utilizing cryptographic techniques
US10733283B1 (en) 2019-12-23 2020-08-04 Capital One Services, Llc Secure password generation and management using NFC and contactless smart cards
US10862540B1 (en) 2019-12-23 2020-12-08 Capital One Services, Llc Method for mapping NFC field strength and location on mobile devices
US11651361B2 (en) 2019-12-23 2023-05-16 Capital One Services, Llc Secure authentication based on passport data stored in a contactless card
US11113685B2 (en) 2019-12-23 2021-09-07 Capital One Services, Llc Card issuing with restricted virtual numbers
US11200563B2 (en) 2019-12-24 2021-12-14 Capital One Services, Llc Account registration using a contactless card
US10853795B1 (en) 2019-12-24 2020-12-01 Capital One Services, Llc Secure authentication based on identity data stored in a contactless card
US10664941B1 (en) 2019-12-24 2020-05-26 Capital One Services, Llc Steganographic image encoding of biometric template information on a card
US10757574B1 (en) 2019-12-26 2020-08-25 Capital One Services, Llc Multi-factor authentication providing a credential via a contactless card for secure messaging
US10909544B1 (en) 2019-12-26 2021-02-02 Capital One Services, Llc Accessing and utilizing multiple loyalty point accounts
US11038688B1 (en) 2019-12-30 2021-06-15 Capital One Services, Llc Techniques to control applets for contactless cards
US11455620B2 (en) 2019-12-31 2022-09-27 Capital One Services, Llc Tapping a contactless card to a computing device to provision a virtual number
US10860914B1 (en) 2019-12-31 2020-12-08 Capital One Services, Llc Contactless card and method of assembly
US11210656B2 (en) 2020-04-13 2021-12-28 Capital One Services, Llc Determining specific terms for contactless card activation
US11222342B2 (en) 2020-04-30 2022-01-11 Capital One Services, Llc Accurate images in graphical user interfaces to enable data transfer
US11823175B2 (en) 2020-04-30 2023-11-21 Capital One Services, Llc Intelligent card unlock
US10861006B1 (en) 2020-04-30 2020-12-08 Capital One Services, Llc Systems and methods for data access control using a short-range transceiver
US10915888B1 (en) 2020-04-30 2021-02-09 Capital One Services, Llc Contactless card with multiple rotating security keys
US11030339B1 (en) 2020-04-30 2021-06-08 Capital One Services, Llc Systems and methods for data access control of personal user data using a short-range transceiver
US10963865B1 (en) 2020-05-12 2021-03-30 Capital One Services, Llc Augmented reality card activation experience
US11063979B1 (en) 2020-05-18 2021-07-13 Capital One Services, Llc Enabling communications between applications in a mobile operating system
US11100511B1 (en) 2020-05-18 2021-08-24 Capital One Services, Llc Application-based point of sale system in mobile operating systems
US11062098B1 (en) 2020-08-11 2021-07-13 Capital One Services, Llc Augmented reality information display and interaction via NFC based authentication
US12165149B2 (en) 2020-08-12 2024-12-10 Capital One Services, Llc Systems and methods for user verification via short-range transceiver
US11165586B1 (en) 2020-10-30 2021-11-02 Capital One Services, Llc Call center web-based authentication using a contactless card
US11482312B2 (en) 2020-10-30 2022-10-25 Capital One Services, Llc Secure verification of medical status using a contactless card
US11373169B2 (en) 2020-11-03 2022-06-28 Capital One Services, Llc Web-based activation of contactless cards
US11216799B1 (en) 2021-01-04 2022-01-04 Capital One Services, Llc Secure generation of one-time passcodes using a contactless card
US11682012B2 (en) 2021-01-27 2023-06-20 Capital One Services, Llc Contactless delivery systems and methods
US11687930B2 (en) 2021-01-28 2023-06-27 Capital One Services, Llc Systems and methods for authentication of access tokens
US11792001B2 (en) 2021-01-28 2023-10-17 Capital One Services, Llc Systems and methods for secure reprovisioning
US11562358B2 (en) 2021-01-28 2023-01-24 Capital One Services, Llc Systems and methods for near field contactless card communication and cryptographic authentication
US11438329B2 (en) 2021-01-29 2022-09-06 Capital One Services, Llc Systems and methods for authenticated peer-to-peer data transfer using resource locators
US11777933B2 (en) 2021-02-03 2023-10-03 Capital One Services, Llc URL-based authentication for payment cards
US11637826B2 (en) 2021-02-24 2023-04-25 Capital One Services, Llc Establishing authentication persistence
US11245438B1 (en) 2021-03-26 2022-02-08 Capital One Services, Llc Network-enabled smart apparatus and systems and methods for activating and provisioning same
US12143515B2 (en) 2021-03-26 2024-11-12 Capital One Services, Llc Systems and methods for transaction card-based authentication
US12160419B2 (en) 2021-04-15 2024-12-03 Capital One Services, Llc Authenticated messaging session with contactless card authentication
US11935035B2 (en) 2021-04-20 2024-03-19 Capital One Services, Llc Techniques to utilize resource locators by a contactless card to perform a sequence of operations
US11961089B2 (en) 2021-04-20 2024-04-16 Capital One Services, Llc On-demand applications to extend web services
US11902442B2 (en) 2021-04-22 2024-02-13 Capital One Services, Llc Secure management of accounts on display devices using a contactless card
US11354555B1 (en) 2021-05-04 2022-06-07 Capital One Services, Llc Methods, mediums, and systems for applying a display to a transaction card
US12301735B2 (en) 2021-06-18 2025-05-13 Capital One Services, Llc Systems and methods for contactless card communication and multi-device key pair cryptographic authentication
US12335412B2 (en) 2021-06-21 2025-06-17 Capital One Services, Llc Systems and methods for scalable cryptographic authentication of contactless cards
US12041172B2 (en) 2021-06-25 2024-07-16 Capital One Services, Llc Cryptographic authentication to control access to storage devices
US12061682B2 (en) 2021-07-19 2024-08-13 Capital One Services, Llc System and method to perform digital authentication using multiple channels of communication
US12495042B2 (en) 2021-08-16 2025-12-09 Capital One Services, Llc Systems and methods for resetting an authentication counter
US12062258B2 (en) 2021-09-16 2024-08-13 Capital One Services, Llc Use of a payment card to unlock a lock
US12069173B2 (en) 2021-12-15 2024-08-20 Capital One Services, Llc Key recovery based on contactless card authentication
US12166750B2 (en) 2022-02-08 2024-12-10 Capital One Services, Llc Systems and methods for secure access of storage
US12354077B2 (en) 2022-06-23 2025-07-08 Capital One Services, Llc Mobile web browser authentication and checkout using a contactless card
US12596780B2 (en) 2022-06-27 2026-04-07 Capital One Services, LLC. Techniques to perform dynamic call center authentication utilizing a contactless card
US12511654B2 (en) 2022-08-08 2025-12-30 Capital One Services, Llc Systems and methods for bypassing contactless payment transaction limit
US12354104B2 (en) 2022-08-09 2025-07-08 Capital One Services, Llc Methods and arrangements for proof of purchase
US12505450B2 (en) 2022-08-17 2025-12-23 Capital One Services, Llc Systems and methods for dynamic data generation and cryptographic card authentication
US12289396B2 (en) 2022-08-18 2025-04-29 Capital One Services, Llc Parallel secret salt generation and authentication for encrypted communication
US12489747B2 (en) 2022-11-18 2025-12-02 Capital One Services, LLC. Systems and techniques to perform verification operations with wireless communication
US12592828B2 (en) 2023-01-06 2026-03-31 Capital One Services, Llc System and method for parallel manufacture and verification of one-time-password authentication cards
US12147983B2 (en) 2023-01-13 2024-11-19 Capital One Services, Llc Systems and methods for multi-factor authentication using device tracking and identity verification
US12519652B2 (en) 2023-02-24 2026-01-06 Capital One Services, Llc System and method for dynamic integration of user-provided data with one-time-password authentication cryptogram
US12592819B2 (en) 2023-02-28 2026-03-31 Capital One Services, Llc Membership account management using a contactless card
US12248832B2 (en) 2023-03-07 2025-03-11 Capital One Services, Llc Systems and methods for steganographic image encoding and identity verification using same
US12335256B2 (en) 2023-03-08 2025-06-17 Capital One Services, Llc Systems and methods for device binding authentication
US12591875B2 (en) 2023-03-10 2026-03-31 Capital One Services, Llc Systems and methods of contactless card as one authentication factor for multiple factor authentication
US12511640B2 (en) 2023-03-13 2025-12-30 Capital One Services, Llc Systems and methods of managing password using contactless card
US12248928B2 (en) 2023-03-13 2025-03-11 Capital One Services, Llc Systems and methods of secure merchant payment over messaging platform using a contactless card
US12124903B2 (en) 2023-03-16 2024-10-22 Capital One Services, Llc Card with a time-sensitive element and systems and methods for implementing the same
US12299672B2 (en) 2023-03-30 2025-05-13 Capital One Services, Llc System and method for authentication with transaction cards
US12499432B2 (en) 2023-04-06 2025-12-16 Capital One Services, Llc Techniques to perform operations with a contactless card when in the presence of a trusted device
US12591876B2 (en) 2023-04-07 2026-03-31 Capital One Services, Llc Systems and methods for launching a mobile application or a browser extension responsive to satisfying predetermined conditions
US12200135B2 (en) 2023-06-13 2025-01-14 Capital One Services, Llc Contactless card-based authentication via web-browser
US12505448B2 (en) 2023-08-09 2025-12-23 Capital One Services, Llc Systems and methods for fraud prevention in mobile application verification device enrollment process
US12511638B2 (en) 2023-09-07 2025-12-30 Capital One Services, Llc Assignment of near-field communications applets
US12580767B2 (en) 2023-10-31 2026-03-17 Capital One Services, LLC. Transmission of secure and authenticated data over a network
US12580752B2 (en) 2024-01-03 2026-03-17 Capital One Services, Llc Systems and methods for generating shared secret key for transaction cards
CN118842628B (zh) * 2024-07-10 2025-11-25 中国联合网络通信集团有限公司 验证方法、验证码生成方法、系统及相关设备

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4218738A (en) * 1978-05-05 1980-08-19 International Business Machines Corporation Method for authenticating the identity of a user of an information system
US4926480A (en) 1983-08-22 1990-05-15 David Chaum Card-computer moderated systems
US4672572A (en) * 1984-05-21 1987-06-09 Gould Inc. Protector system for computer access and use
US4856062A (en) * 1984-11-30 1989-08-08 Kenneth Weiss Computing and indicating device
GB2168514A (en) * 1984-12-12 1986-06-18 Ibm Security module
JPH0762854B2 (ja) * 1985-03-05 1995-07-05 カシオ計算機株式会社 Icカードシステム
US4757533A (en) * 1985-09-11 1988-07-12 Computer Security Corporation Security system for microcomputers
US5050213A (en) * 1986-10-14 1991-09-17 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US4827508A (en) * 1986-10-14 1989-05-02 Personal Library Software, Inc. Database usage metering and protection system and method
US4977594A (en) * 1986-10-14 1990-12-11 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US5191611A (en) 1989-04-03 1993-03-02 Lang Gerald S Method and apparatus for protecting material on storage media and for transferring material on storage media to various recipients
FR2649748B1 (fr) * 1989-07-17 1991-10-11 Axyval Sa Systeme de protection de documents ou d'objets de valeur enfermes dans un contenant inviolable physiquement, qui passe par ailleurs par une succession d'etats logiques authentifies en nombre restreint
JP2989200B2 (ja) 1989-09-13 1999-12-13 富士通株式会社 個人識別装置
US5029207A (en) * 1990-02-01 1991-07-02 Scientific-Atlanta, Inc. External security module for a television signal decoder
US5237610A (en) * 1990-02-01 1993-08-17 Scientific-Atlanta, Inc. Independent external security module for a digitally upgradeable television signal decoder
JPH0575135A (ja) 1991-08-16 1993-03-26 Rohm Co Ltd 半導体記憶装置
JPH0568727A (ja) 1991-09-11 1993-03-23 Tonen Corp スキー板
JPH05274269A (ja) * 1991-11-18 1993-10-22 Internatl Business Mach Corp <Ibm> コンピュータ・システムにおけるアクセスの正当性検証のための方法及びシステム
US5157726A (en) * 1991-12-19 1992-10-20 Xerox Corporation Document copy authentication
CH683652A5 (de) * 1992-03-10 1994-04-15 Frama Ag Frankiermaschine.
FR2700430B1 (fr) * 1992-12-30 1995-02-10 Jacques Stern Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification et dispositif pour sa mise en Óoeuvre.
NL9301348A (nl) * 1993-08-02 1995-03-01 Stefanus Alfonsus Brands Elektronisch betalingssysteem.
CA2169449A1 (en) * 1993-08-13 1995-02-23 Frank Thomson Leighton Secret key exchange
US5467396A (en) * 1993-10-27 1995-11-14 The Titan Corporation Tamper-proof data storage
US5499298A (en) * 1994-03-17 1996-03-12 National University Of Singapore Controlled dissemination of digital information
US5517567A (en) * 1994-08-23 1996-05-14 Daq Electronics Inc. Key distribution system
US5913025A (en) * 1996-11-14 1999-06-15 Novell, Inc. Method and apparatus for proxy authentication
US6061740A (en) * 1996-12-09 2000-05-09 Novell, Inc. Method and apparatus for heterogeneous network management

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275936B1 (en) 1997-10-17 2001-08-14 Fuji Xerox Co., Ltd. Decryption method and device, and access right authentication method and apparatus
US6516413B1 (en) 1998-02-05 2003-02-04 Fuji Xerox Co., Ltd. Apparatus and method for user authentication
US7155745B1 (en) 1999-10-15 2006-12-26 Fuji Xerox Co., Ltd. Data storage device provided with function for user's access right
WO2003073295A1 (en) * 2002-02-27 2003-09-04 Matsushita Electric Industrial Co., Ltd. Host device
US8549606B2 (en) 2005-06-01 2013-10-01 Fuji Xerox Co., Ltd. Device for protecting digital content, device for processing protected digital content, method for protecting digital content, method for processing protected digital content, storage medium storing program for protecting digital content, and storage medium storing program for processing protected digital content
JP2015534691A (ja) * 2012-10-05 2015-12-03 マイクロソフト テクノロジー ライセンシング,エルエルシー コンピューティング・デバイスについてのセキュアな識別およびセキュアな識別方法

Also Published As

Publication number Publication date
EP0792044A2 (en) 1997-08-27
EP0792044B1 (en) 2001-05-02
DE69704684D1 (de) 2001-06-07
EP0792044A3 (en) 1998-05-27
DE69704684T2 (de) 2004-07-15
JP3613921B2 (ja) 2005-01-26
USRE42762E1 (en) 2011-09-27
JP3614057B2 (ja) 2005-01-26
JP2000151583A (ja) 2000-05-30

Similar Documents

Publication Publication Date Title
JP3613921B2 (ja) アクセス資格認証装置および方法
US5987134A (en) Device and method for authenticating user&#39;s access rights to resources
JP3613936B2 (ja) アクセス資格認証装置
JP3613929B2 (ja) アクセス資格認証装置および方法
JP3622433B2 (ja) アクセス資格認証装置および方法
CN109361668B (zh) 一种数据可信传输方法
US7596704B2 (en) Partition and recovery of a verifiable digital secret
JP4463979B2 (ja) 暗号方式でカムフラージュされた暗号方式キーをストアし証明し使用する装置および方法
Dwoskin et al. Hardware-rooted trust for secure key management and transient trust
JP2001117823A (ja) アクセス資格認証機能付きデータ記憶装置
EP0803789A2 (en) Software copy protection mechanism
JPH11231775A (ja) 条件付き認証装置および方法
WO2004042516A2 (en) Digital-rights management system
JPH11225142A (ja) 認証装置および方法
JP2007013433A (ja) 暗号化データを送受信する方法及び情報処理システム
JP3580333B2 (ja) 暗号認証機能の装備方法
JP4107420B2 (ja) 安全なバイオメトリック認証/識別方法、バイオメトリックデータ入力モジュールおよび検証モジュール
CN111614467B (zh) 系统后门防御方法、装置、计算机设备和存储介质
CN101965574A (zh) 认证信息生成系统、认证信息生成方法、客户机装置以及安装了该方法的认证信息生成程序
JP2010517449A (ja) 信頼できない受信者における秘密の保護
US6651169B1 (en) Protection of software using a challenge-response protocol embedded in the software
CN102236607B (zh) 一种数据安全保护方法和数据安全保护装置
CN110837634B (zh) 基于硬件加密机的电子签章方法
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
JP2000287065A (ja) 画像処理システム

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040607

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040721

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041025

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091112

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111112

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111112

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131112

Year of fee payment: 9

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S802 Written request for registration of partial abandonment of right

Free format text: JAPANESE INTERMEDIATE CODE: R311802

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees