JP3622433B2 - Access credential authentication apparatus and method - Google Patents
Access credential authentication apparatus and method Download PDFInfo
- Publication number
- JP3622433B2 JP3622433B2 JP21039997A JP21039997A JP3622433B2 JP 3622433 B2 JP3622433 B2 JP 3622433B2 JP 21039997 A JP21039997 A JP 21039997A JP 21039997 A JP21039997 A JP 21039997A JP 3622433 B2 JP3622433 B2 JP 3622433B2
- Authority
- JP
- Japan
- Prior art keywords
- signature
- user
- authentication
- key
- generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3218—Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Description
【0001】
【発明の属する技術分野】
この発明はユーザのアクセス資格を認証するアクセス資格認証技術に関する。
【0002】
【従来技術】
本発明と同分野に属する先行技術としてプログラムの実行制御技術が知られている。プログラム実行制御技術は、
▲1▼アプリケーションプログラム中にユーザ認証のためのルーチンを埋め込み、▲2▼該ルーチンはアプリケーションの実行を試みているユーザが正規の認証用の鍵を保有していることを検査し、
▲3▼前記認証用の鍵の存在が確認された場合に限りプログラムを続行し、それ以外の場合にはプログラムの実行を停止する
技術である。当技術を利用することにより、認証鍵を保有する正規のユーザにのみアプリケーションプログラムの実行を可能ならしめることが出来る。当技術はソフトウェア頒布事業において実用化されており、製品として、例えばRainbow Technologies,Inc.社のSentinelSuperPro(商標)や、Aladdin Knowledge Systems Ltd.社のHASP(商標)等がある。
【0003】
以下にプログラム実行制御技術について、より詳細に説明する。
▲1▼ソフトウェアの実行を行うユーザはユーザ識別情報として認証鍵を保有する。認証鍵は暗号化のための鍵であり、ソフトウェアの利用を許可する者、例えばソフトウェアベンダがユーザに配布する。認証鍵は複製を防ぐためにハードウェア中のメモリ等に厳重に封入され、郵便等の物理的手段を用いてユーザに配送される。
▲2▼ユーザは認証鍵を内蔵したハードウェアを指定された方法で所有のパソコン・ワークステーションに装着する。ハードウェアは、例えばプリンタポートに装着される。
▲3▼ユーザがアプリケーションプログラムを起動し、プログラムの実行が前記ユーザ認証ルーチンに及ぶと、プログラムはユーザの認証鍵を内蔵したハードウェアと通信する。通信の結果に基づいてプログラムは認証鍵を識別し、正しい認証鍵の存在が確認されると次のステップへ実行を移す。通信が失敗し認証鍵の存在が確認できない場合は、プログラムは自らを停止し以降の実行ができないようにする。
【0004】
アクセス資格認証ルーチンによる認証鍵の識別は、例えば、次のようなプロトコルに従って行われる。
▲1▼アクセス資格認証ルーチンは適当な数を生成し鍵内蔵ハードウェアに送信する。
▲2▼鍵内蔵ハードウェアは内蔵する認証鍵を用いて送られた数を暗号化し、前記認証ルーチンに返信する。
▲3▼認証ルーチンは、返信された数が予め予想された数、即ちハードウェアに送信した数を正しい認証鍵で暗号化して得られる数であるか否かを判定する。
▲4▼返信された数が予想された数と一致する場合にはプログラムの実行を続行し、一致しない場合には停止する。
【0005】
この際、アプリケーションプログラムと認証鍵内蔵ハードウェア間の通信は、たとえ同じアプリケーションプログラム中の同じ箇所において同じハードウェアとの間で交換されるものであろうとも、実行のたびに異ならなければならない。さもなければ、正常な実行過程における通信内容を一度記録し、以後プログラムを実行する度に記録した通りにアプリケーションプログラムへの返信を行うことにより、正しい認証鍵を保有しないユーザでもプログラムを実行することが可能となってしまう。このような通信内容の再現によるアプリケーションプログラムの不正実行をリプレイアタック(replay attack)と呼ぶ。
【0006】
リプレイアタックを防ぐために、通常、鍵内蔵ハードウェアに送られる数は通信の度に新たに生成される乱数を用いる。
【0007】
[従来技術の問題点]
従来技術の問題点は、アプリケーションプログラムを作成する際に、プログラム作成者がユーザが持つ認証鍵を予め想定した上で、該認証鍵に基づいてプログラムの保護処理を行わなければならないという性質に由来する。
【0008】
つまり、プログラム作成者は、鍵内蔵ハードウェアからの正しい返信をプログラム作成時に予測して、正しい返信を受けた場合にのみプログラムが正常に実行されるようにプログラムの作成を行わなければならない。
【0009】
上記特徴を有する従来技術の利用形態は基本的に2通りとなるが、いずれの場合も以下に述べる問題を有する。
【0010】
▲1▼第一の方法ではユーザの認証鍵をユーザ毎に異なるように用意する。即ち、ユーザ甲には認証鍵甲、ユーザ乙には認証鍵乙というように、ユーザ毎に異なる認証鍵を一つずつ用意する。
【0011】
この場合、プログラム作成者は、プログラム中の認証ルーチンをユーザ毎に適切に変えてプログラムを作成する必要がある。つまり、ユーザ毎に認証鍵が異なるので、プログラム中の認証ルーチンは該プログラムを利用するユーザ固有の認証鍵を識別するように作成されなければならず、プログラム作成者は利用ユーザの数だけ異なるプログラムを作成する必要がある。
【0012】
対象となるユーザが多数の場合、プログラムをユーザ毎に個別化する作業はプログラム作成者にとって耐えがたい労力を要求し、管理しなければならないユーザ認証鍵のリストも膨大なものとなる。
【0013】
▲2▼第二の方法では、プログラム作成者はアプリケーション毎にそれぞれ異なる認証鍵を用意する。即ち、アプリケーション甲には認証鍵甲、アプリケーション乙には認証鍵乙というように、アプリケーション毎に異なる認証鍵を一つずつ用意し、固有の認証鍵を識別するように各アプリケーションプログラムを作成する。
【0014】
この方法では、第一の方法の場合のようにユーザ毎にプログラムを個別的に作成する必要は無くなるが、逆に、ユーザは利用するアプリケーションの数だけ認証鍵を保持しなければならないこととなる。
【0015】
この制約はプログラム作成者及びユーザそれぞれに以下のような問題を惹起する。
【0016】
前述のように、認証鍵はハードウェアに厳重に封入した状態でユーザに配布する必要がある。従って、プログラム自身はネットワークを介して簡便に配布することができるのと対照的に、認証鍵を内蔵するハードウェアの配布は郵便等の物理手段に頼らざるを得ない。この制限は、コスト、時間、梱包の手間いずれをとっても、プログラム作成者とって大きな負担となる。
【0017】
プログラム作成者は、ユーザの要求に応えるべく、アプリケーション毎に異なるハードウェアを一定個数ストックしておかなければならず、在庫管理のコストを必要とする。
【0018】
また、ユーザは利用するアプリケーションを変更する度にハードウェアを交換しなければならないという煩雑さに甘んじなければならない。
【0019】
ユーザがあるアプリケーションを使いたいとしても、認証鍵が封入されたハードウェアが届くまで待たねばならず、即座に利用できないという点での不便さも生ずる。
【0020】
この負担を軽減するため、ハードウェア中に複数の認証鍵を予め封入しておき、新しいアプリケーションの利用をユーザに許可する度に、ハードウェア中の未使用の認証鍵を利用可能とするためのパスワードをユーザに教えるといった方法が用いられる。しかしながら、この方法を用いたとしても、前記の問題点は原理的に解決されないことは明らかである。実際、商品化に際しては、上記問題点に起因する不便さを緩和するために、ハードウェアは連接して複数結合することが可能となるように設計される。
【0021】
このように、上記二つのいずれの方法をとったとしても、プログラム作成者及びユーザの利便に問題が存在する。
【0022】
なお、実行制御の外的な特質を考えると、メールのプライバシー保護やファイルや計算機資源のアクセス制御、その他一般のデジタルコンテンツアクセス制御にも適用可能であると想像できる。しかしながら、従来技術をこれらの分野に適用しようとしても、前記の問題点により不可能である。
【0023】
【発明が解決しようとする課題】
本発明は、以上の事情を考慮してなされたものであり、ユーザ側及びアプリケーション作成者等のプロテクト側の双方に生ずる、多数の認証鍵等の固有情報を取り扱うことによって派生する不具合を解消し、プログラムの実行制御、デジタルコンテンツ(静止画・動画・音声等)のアクセス権保護、メールのプライバシー保護、ファイルや計算機資源のアクセス制御等を行う際に、ユーザのアクセス資格を簡易に認証する事ができるようにした、アクセス資格認証技術を提供することを目的とする。
【0024】
【課題を解決する手段】
本発明によれば、上述の目的を達成するために、ユーザの権限を証明するために生成された署名の正当性を検証することにより上記ユーザのアクセス資格を認証するアクセス資格認証装置に、ユーザの固有情報を記憶する第1の記憶手段と、上記ユーザの固有情報と、署名鍵より計算された固有署名鍵を記憶する第2の記憶手段と、上記第1の記憶手段に保持されたユーザの固有情報を用いてプレ署名を生成する第1の生成手段と、上記第2の記憶手段に保持されたユーザの固有署名鍵を用いて署名を生成する第2の生成手段と、第2の生成手段の生成した署名の正当性を検証する検証手段とを設け、第1の生成手段と第2の生成手段が協調して署名を生成するようにしている。
【0025】
この構成においては、固有署名鍵(アクセスチケット)を導入することにより、アクセス資格認証の特徴情報とユーザ固有情報とを独立させることができ、したがってプロテクト側もユーザ側も、1つの固有情報を準備しておくだけですむ。
【0026】
アクセスチケットは、特定のユーザの固有情報とアクセス資格認証の特徴情報とに基づいて計算されるデータであり、また、ユーザ固有情報を知らずに、アクセスチケットからアクセス資格認証の特徴情報を計算することは困難である。そして、ユーザ固有情報とアクセスチケットとの正しい組み合わせ、すなわち、ユーザ固有情報と該ユーザ固有情報に基づいて計算されたアクセスチケットの組み合わせが入力された場合に限って、正しい証明用データが計算される。したがってユーザはあらかじめ固有情報を保持し、プログラム作成者等のプロテクト者はユーザが所持する固有情報とは独立にアクセス資格認証の特徴情報を用意し、アクセスチケットをユーザの固有情報とアプリケーションプログラムの作成等に使用したアクセス資格認証の特徴情報とに応じて作成し、配布することにより、実行制御等のユーザのアクセス資格の認証を行う事ができる。
【0027】
なお、本発明は、方法としても実現可能である。さらに本発明の少なくとも一部をプログラム製品として実現することもできる。
【0028】
【発明の実施の態様】
[全体の構成]
以下、本発明を詳細に説明する。具体的な個別の実施例を述べる前に、本発明の実施形態の全体像を以下に述べる。
【0029】
まず、本発明を、ユーザのPCあるいはワークステーション上で動作するアプリケーションプログラムの実行制御に用いる場合について述べる。図1にこの実施形態における装置の構成を示す。
【0030】
図1において、プログラム実行制御装置(ユーザ認証装置)は、証明データ検証装置10、証明データ生成装置11およびアクセスチケット生成装置12を含んで構成されている。証明データ検証装置10は検証手段13を具備し、また認証用データ14を保持している。証明データ生成装置11は、署名データ生成手段15およびプレ署名データ生成手段16を具備し、またユーザ固有情報17および固有署名鍵(アクセスチケット)18を保持している。アクセスチケット生成装置12はアクセスチケット18を生成して証明データ生成装置11に供給する。アクセスチケット18については後に詳述する。
【0031】
証明データ検証装置10は認証用データ14を証明データ生成装置11に送出する。証明データ生成装置11の署名データ生成手段15およびプレ署名データ生成手段16は、受け取った認証用データ14と、保持しているユーザ固有情報(ユーザを識別するための固有情報)17とアクセスチケット18とから証明データ(署名)を生成し、証明データ検証装置10に返す。証明データ検証装置10の検証手段13は、署名を検証し、検証が成功すればプログラムの実行が許容される。
【0032】
この実施例では、証明データ生成装置11はユーザが用いる計算機上の証明用プログラムとして実現することができる。この際、ユーザを識別するための固有情報(ユーザ固有情報)17を、ユーザがコピーして配布することができると、正当な利用権をもたないユーザにもアプリケーションプログラムの使用を許すこととなる。そこで、ユーザ固有情報17はその正当な保持者であるユーザであってもこれを窃取することができないように、該計算機に装着され、耐タンパー特性を有する証明用ハードウェア(ICカード、ボードなど)を併用することが好ましい。この際、ICカードのような携帯性のあるハードウェアを用いれば、ユーザが複数のPCあるいはワークステーション上で作業をする場合に便利である。
【0033】
証明データ検証装置10はユーザが利用するアプリケーションプログラムの一部として構成される。即ち、ユーザがアプリケーションプログラムをPCあるいはワークステーション上で起動すると、アプリケーションプログラム中にプログラムとして記述された証明データ検証装置10が起動され、証明データ生成装置11と通信してユーザ認証を行い、通信が正しく終了した場合に限って該アプリケーションプログラムの実行を可能とする。
【0034】
ユーザが、証明データ検証装置10が埋めこまれた前記アプリケーションプログラムを利用するためには、ユーザ本人宛に発行され、前記アプリケーションプログラムに対応する固有署名鍵(アクセスチケット)を取得する必要がある。ユーザは、前記PCあるいはワークステーション上にインストールされた証明データ生成プログラムに、取得したアクセスチケットを登録するとともに、例えば、ユーザ固有情報がICカードに封入されている場合には、ICカードを前記PCあるいはワークステーションに装着する。アクセスチケットは、前記PCあるいはワークステーション上に置く構成にしてもよいし、ICカード中に置いてもよい。
【0035】
証明データ生成装置11(PCあるいはワークステーション上のプログラムとICカードによって構成される)は、ユーザ固有情報17とアクセスチケット18に基づいて計算を行い、その計算に基づいて証明データ検証装置10と通信を行う。この計算の過程でユーザ固有情報17が用いられるが、ユーザ固有情報17が外部に漏洩すると問題があるため、前記プログラムの少なくとも一部はICカード等の防御手段によって保護される必要がある。
【0036】
通信の結果、証明データ検証装置10による認証が成功するのは、ユーザ固有情報17と、アクセスチケット18と、証明データ検証装置10が検証するアクセス資格認証の特徴情報の三つが正しく対応している場合に限られる。
【0037】
ユーザ固有情報17あるいはアクセスチケット18の一方が欠けていた場合には、認証は成功しない。
【0038】
アクセスチケット18は特定のユーザ宛に発行される。即ち、アクセスチケット18の生成に際して、特定のユーザのユーザ固有情報17が使用される。アクセスチケット18の生成時に使用されるユーザ固有情報17と、証明データ生成装置11によって使用されるユーザ固有情報17とが一致していない場合、やはり、認証は成功しない。
【0039】
また、アクセスチケット18は、特定のアクセス資格認証の特徴情報に基づいて生成され、証明データ検証装置10はこのアクセス資格認証の特徴情報を認証するように構成される。従って、アクセスチケットの生成のもととなった特徴情報と、アプリケーションプログラムに埋めこまれている証明データ検証装置10が認証しようとする特徴情報とが互いに対応していなかった場合にも、認証は成功しない。
【0040】
また、アプリケーションプログラムがネットワークによって結合された別の計算機上で実行され、実行結果がネットワークを介してユーザが用いる計算機に通信されるものとしてもよい。この場合、いわゆるサーバ・クライアントモデルに基づく構成となる。先に述べた、ユーザのPCあるいはワークステーション上で実行されるアプリケーションプログラムの実行制御の場合では、証明データ生成装置11と証明データ検証装置10との通信がいわゆるプロセス間通信として実行されるのに対し、サーバ・クライアント・モデルに従った場合、証明データ生成装置11と証明データ検証装置10との通信はTCP/IP(トランスミッション・コントロール・プロトコル/インターネット・プロトコル)などのネットワークプロトコルに従った通信として実行される。
【0041】
また、アプリケーションプログラムが専用装置上に構成されている場合にも、本発明を適用することが可能である。例えば、証明データ生成装置11の全体をICカード内に実装し、取得したアクセスチケット18もICカードに登録するものとする。証明データ検証装置10は前記専用装置上に実装されるが、該専用装置はICカードを挿入するためのスロットを備え、ユーザは該スロットに所有するICカードを挿入することで認証を行う。
【0042】
このような専用装置による構成は、銀行のATM機や、ゲームセンターにおけるゲーム機などに適用することができる。
【0043】
ユーザによるアクセスチケット18の取得に関しては、アクセスチケット18を発行する共通のセンターが、ユーザからの発行依頼に応じて生成して配布する方法と、アプリケーションプログラムの作成者が、アクセスチケット発行プログラムやアクセスチケット生成装置12の助けを借りて個別に生成する方法がある。
【0044】
このような場合、アクセスチケット生成装置12は、チケット発行者によって管理され、アクセスチケット18はこれら正当な権利者等によって、ユーザの環境とは別個に作成され、配布される。
【0045】
生成されたアクセスチケット18は、フロッピーディスク等の可搬型記憶媒体を介してユーザに配送されるものとしてもよいが、アクセスチケット18が十分な安全性を備えていることから、電子メールなどを用いてネットワークを介して配送されるように構成してもよい。
【0046】
アクセスチケット18の安全性とは、以下の二つの性質である。
【0047】
1)アクセスチケットは記名式である。即ち、アクセスチケットが発行されたユーザ本人(正確には、アクセスチケット生成時に用いられたユーザ固有情報の保持者)だけが該アクセスチケットを用いて証明データ生成装置を正しく作動させることができる。従って、悪意の第三者が、他のユーザのアクセスチケットを不正に手に入れたとしても、この第三者がアクセスチケットの発行先である正規のユーザのユーザ固有情報を手に入れないかぎり、このアクセスチケットを利用することは不可能である。
【0048】
2)アクセスチケットはさらに厳密な安全性を保持している。即ち、悪意の第三者が任意個数のアクセスチケットを集めて、いかなる解析を行ったとしても、得られた情報をもとに別のアクセスチケットを偽造したり、証明データ生成装置の動作を模倣して認証を成立させるような装置を構成することは不可能である。
【0049】
[具体的な構成]
以下では、より具体的な構成について実施例に即して説明する。この実施例では、以下に説明する一般的な離散対数問題に基づいた署名方式にアクセスチケットを適用する場合の構成例を示す。
【0050】
本発明の実施例で用いられる署名方式は、離散対数問題が計算量的に困難な有限群G(乗法的に記す)と位数がnの元gを用いる。
【0051】
署名鍵xは、有理整数環の法nによる剰余類環Z/nZの元であり、検証鍵yは、y=gxを満たす有限群Gの元である。
【0052】
剰余類環Z/nZの元mに対する署名は、Z/nZの二つの元rとsとからなり、署名の検証は
【0053】
【数2】
(1−1) r=H(grys,m)
で与えられる。ここで関数Hは有限群Gの元aと剰余類環Z/nZの元bより剰余類環Z/nZの元H(a,b)を決める任意の二変数関数である。また、署名rおよびsは次のとおりである。
【0054】
【数3】
r=gk
s=k−r’x
ただし、r’=H(m,r)であり、k∈Z/nZの乱数である。
【0055】
図2は、本実施例の証明データ検証装置10および証明データ生成装置11の構成例を示し、図3は証明データ生成装置11の署名生成部を中心に詳細な構成を示している。また、図4に本実施例の動作を示す。なお、図2および図3において図1と対応する箇所には対応する符号を付した。
【0056】
図2において、証明データ検証装置10は、検証部13、検証鍵記憶部21、乱数生成部22、認証用データ記憶部23、および署名記憶部24を含んで構成されている。また、証明データ生成装置11は、署名データ生成部15、プレ署名データ生成部16、ユーザ固有情報記憶部25、アクセスチケット記憶部26、検証鍵記憶部27、および認証用データ記憶部28を含んで構成されている。
【0057】
さて、ユーザを識別するために、ユーザ毎に異なる数であるユーザ固有情報eを定める。eは、ユーザ固有情報記憶部25に記憶されている。プレ署名生成部16およびユーザ固有情報記憶部25は防御手段(トークンともいう)29に収容されている。
【0058】
図3は、図2の証明データ生成装置11のプレ署名生成部16および署名生成部15の詳細な構成を中心に示すものである。すなわち、図2のプレ署名生成部16は乱数生成部30、補助署名鍵記憶部31、第1のプレ署名生成部16Aおよび第2のプレ署名生成部16Bからなっている。また、図2の証明データ生成装置11の署名生成部15は第1の署名生成部15Aおよび第2の署名生成部15Bからなっている。さらに図2の証明データ検証装置10の証明記憶部24は第1の署名記憶部24Aおよび第2の証明記憶部24Bからなっている。
【0059】
アクセスチケットtは次の式1−2に基づいて生成される。
【0060】
【数4】
(1−2) t=x−f(e,y) mod N
ここでNはnの任意の倍元である。もちろん、N=0の場合は(1−2)は有理整数環上で行われる。剰余類環Z/nZの元を表す代表元として、0,1,2,...,n−1を取ることとして必要ならばこれらを整数とみなして計算を行う。
【0061】
関数fは関数値が衝突しにくい関数であり、例えば、一方向ハッシュ関数hを利用して、式1−3のように定めることができる。
【0062】
【数5】
(1−3) f(x,y)=h(x|y)
ここで、x|yはxとyとのビットの連結であることを表す。
【0063】
一方向ハッシュ関数とは、h(x)=h(y)を満たす相異なるx、yを算出することが著しく困難であるという性質をもつ関数である。一方向ハッシュ関数の例として、RSA Data Security Inc.によるMD2、MD4、MD5、米国連邦政府による規格SHS(Secure Hash Standard)が知られている。
【0064】
また、以下では、証明データ検証装置10が認証を行うために生成するデータmを認証用データ、証明装置が証明のために生成する署名r、sを証明用データとよぶ。
【0065】
以下に本実施例の動作を示す。
【0066】
[ステップ1] ユーザが、プログラム実行制御装置(アクセス資格認証装置)による認証を必要とするプログラム(デジタルコンテンツ)にアクセスすることによって、証明データ検証装置10が起動される。
【0067】
証明データ検証装置10がユーザのPCあるいはワークステーション上で動作するアプリケーションプログラムの一部として構成されている場合、ユーザがキーボードあるいはマウスなどの指示装置を用いた通常の方法で、アプリケーションプログラムを起動する。アプリケーションプログラムの実行が証明データ検証装置10を構成しているプログラムに到達することによりことにより、証明データ検証装置10が起動される。
【0068】
証明データ検証装置10がネットワークで結ばれた他のPCあるいはワークステーション(サーバと呼ぶ)上に構成されている場合、ユーザは自分のPCあるいはワークステーション上の通信プログラムを起動し、該通信プログラムが所定の手続きに従って前記サーバに通信の開設要求を行うことにより、前記サーバ上の証明データ検証装置10が起動される。例えば、ユーザの通信プログラムがサーバと通信する際にTCP/IPと呼ばれる手続きに従うとすると、証明データ検証装置をサーバの特定のポートに予め対応づけておき、更に、ユーザの通信プログラムが該ポートを指定してTCP接続要求をサーバに要求するように設定しておくことにより、サーバ上のデーモン(inetd)がTCP接続要求に応じて証明データ検証装置10を起動することが可能となる。このような実現方法は、インターネットなどのネットワークにおいて広く利用されているものである。
【0069】
証明データ検証装置10を専用目的の装置とすることも可能である。例えば、証明データ検証装置10をICカード・リーダ・ライター内のROMに焼きつけられたプログラムとして構成し、証明データ生成装置10をICカードのマイクロコントローラーに実装されたプログラムとすることができる。この場合、ユーザがICカードをリーダ・ライターに挿入することにより、証明データ検証装置10が起動される。
【0070】
[ステップ2] 証明データ検証装置10は、認証用データmを生成して認証用データ記憶部23に書き込む。認証用データmは、毎回異なる値となるように生成される。本実施例では、証明データ検証装置10が乱数生成部22を持ち、この乱数生成部22が生成する乱数を認証用データmとして、認証用データ記憶部23に書き込む。
【0071】
更に、該認証用データmと、検証鍵記憶部21に記憶されている検証鍵yを、証明データ生成装置11中の受信データ記憶用の検証鍵記憶部27および認証用データ記憶部28に書き込む。
【0072】
[ステップ3] 証明データ生成装置11中の乱数生成部30は、適当な乱数kを生成してkを補助署名鍵記憶部31に記憶し、第1のプレ署名生成部16Aは、有限群Gにおいて底gをk乗し、第1のプレ署名r’を生成する。第1のプレ署名r’は式1−4を満たす。
【0073】
【数6】
(1−4) r’=gk
【0074】
[ステップ4] 証明データ生成装置中10の第1の署名生成部15Aは、認証用データ記憶部28に記憶された認証用データmと第1のプレ署名生成部16Aの生成した第1のプレ署名r’より二変数関数Hを用いて第1の署名rを生成し、証明データ検証装置10中の第1の署名記憶部24Aに書き込む。第1の署名rは式1−5を満たす。
【0075】
【数7】
(1−5) r=H(m,r’)
【0076】
[ステップ5] 証明データ生成装置11中の第2のプレ署名生成部16Bは、補助署名鍵記憶部31に記憶された補助署名鍵kと第1の署名生成部15Aの生成した第1の署名rとユーザ固有情報記憶部25に記憶されたユーザ固有情報eと検証鍵記憶部27に記憶された検証鍵yより式1−6を用いて第2のプレ署名s’を生成する。
【0077】
【数8】
(1−6) s’=k−rf(e,y)
【0078】
[ステップ6] 証明データ生成装置11中の第2の署名生成部15Bは、第2のプレ署名生成部16Bが生成した第2のプレ署名s’と第1の署名生成部15Aが生成した第1の署名rとアクセスチケット記憶部26に記憶されているアクセスチケットtより式1−7を用いて第2の署名sを生成し、証明データ検証装置10中の第2の署名記憶部24Bに書き込む。
【0079】
【数9】
(1−7) s=s’−rt
【0080】
[ステップ7] 証明データ検証装置10中の検証部13は、認証用データ記憶部23に記憶された認証用データmと検証鍵記憶部21に記憶された検証鍵yと第1の署名記憶部24Aに記憶された第1の署名rと第2の署名記憶部24Bに記憶された第2の署名sより、先の式1−1(r=H(grys,m))の計算を行い検証を行う。
【0081】
証明データ生成装置11において用いられるアクセスチケットtとユーザの固有情報eの組み合わせが正しい場合に限り、検証式が成立し、正しく検証が行われる。
【0082】
本実施例における二変数関数Hを、例えば、ハッシュ関数hを用いて
【0083】
【数10】
(1−8) H(a,b)=h(b|a)
とすることによって、上記の構成でいわゆるSchnorr署名のアクセスチケットによる実現が可能となる。図7はSchnorr署名のアクセスチケットによる実現の動作を示す。
【0084】
この場合、証明データ生成装置11中の第1の署名生成部15Aと証明データ検証装置10中の検証部13はハッシュ関数hを計算する機能を備えれば良い。
【0085】
また、二変数関数Hを、例えば、有限群Gの元bを剰余類環の元{b}に変換し、aと剰余類環において加算を行う、つまり、
【0086】
【数11】
(1−9) H(a,b)=a+{b}
とすることによって、同様の構成でいわゆるメッセージ復元型のNyberg−Rueppel署名のアクセスチケットによる実現が可能となる。図8はNyberg−Rueppel署名のアクセスチケットによる実現の動作を示す。
【0087】
以上で実施例の説明を終了する。なお、本発明は上述の実施例に限定されるものではなく、種々変更が可能である。例えば、上述実施例では、証明データ生成装置にアクセスチケットを供給し、証明データ生成装置において署名を生成し、証明データ検証装置に送るようにしているが、アクセスチケットを証明データ検証装置に供給し、証明データとして署名の一部やプレ署名を証明データ検証装置に送り、証明データ検証装置で署名を生成し、検証を行うようにしてもよい。また証明データ検証装置と証明データ生成装置とを区別することなく一体型のアクセス資格認証装置を構成し、この装置にユーザ固有情報やアクセスチケットを供給して認証を行うようにしてもよい。また、署名鍵およびユーザ固有情報から固有署名鍵(アクセスチケット)を生成してユーザに送ることにより、安全に署名鍵を配布可能となる。
【0088】
【発明の効果】
以上の説明から明らかなように,本発明によれば、固有署名鍵(アクセスチケット)を導入することにより、アクセス資格認証の特徴情報とユーザ固有情報とを独立させることができ、したがってプロテクト側もユーザ側も、1つの固有情報を準備しておくだけですむ。
【0089】
アクセスチケットは、特定のユーザの固有情報とアクセス資格認証の特徴情報とに基づいて計算されるデータであり、また、ユーザ固有情報を知らずに、アクセスチケットからアクセス資格認証の特徴情報を計算することは困難である。そして、ユーザ固有情報とアクセスチケットとの正しい組み合わせ、すなわち、ユーザ固有情報と該ユーザ固有情報に基づいて計算されたアクセスチケットの組み合わせが入力された場合に限って、正しい証明用データが計算される。したがってユーザはあらかじめ固有情報を保持し、プログラム作成者等のプロテクト者はユーザが所持する固有情報とは独立にアクセス資格認証の特徴情報を用意し、アクセスチケットをユーザの固有情報とアプリケーションプログラムの作成等に使用したアクセス資格認証の特徴情報とに応じて作成し、配布することにより、実行制御等のユーザのアクセス資格の認証を行う事ができる。
【0090】
また、本発明によれば、署名鍵を安全に配布することが可能となり、簡明な鍵供託機構を実現することができる。
【図面の簡単な説明】
【図1】本発明の実施例の全体の構成を示す図である。
【図2】上述実施例の証明データ検証装置および証明データ生成装置の構成を示すブロック図である。
【図3】上述実施例の証明データ検証装置および証明データ生成装置の詳細な構成を示すブロック図である。
【図4】上述実施例の動作を説明する図である。
【図5】上述実施例の動作を説明する図である。
【図6】上述実施例の動作を説明する図である。
【符号の説明】
10 証明データ検証装置
11 証明データ生成装置
12 アクセスチケット生成装置
13 検証手段
14 認証用データ
15 署名データ生成手段
16 プレ署名データ生成手段
17 ユーザ固有情報
18 アクセスチケット
21 検証鍵記憶部
22 乱数(認証用データ)生成部
23 認証用データ記憶部
24 署名記憶部
25 ユーザ固有情報記憶部
26 アクセスチケット記憶部
27 検証鍵記憶部
28 認証用データ記憶部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an access credential authentication technique for authenticating a user's access qualification.
[0002]
[Prior art]
A program execution control technique is known as a prior art belonging to the same field as the present invention. Program execution control technology
(1) A routine for user authentication is embedded in the application program. (2) The routine checks that the user who is attempting to execute the application has a proper authentication key.
{Circle around (3)} A technique for continuing the program only when the existence of the authentication key is confirmed, and stopping the execution of the program otherwise. By using this technology, it is possible to execute an application program only for a legitimate user having an authentication key. This technology has been put into practical use in the software distribution business, and as a product, for example, Rainbow Technologies, Inc. Sentinel SuperPro (trademark), Aladdin Knowledge Systems Ltd. HASP (trademark) of the company.
[0003]
Hereinafter, the program execution control technique will be described in more detail.
(1) A user who executes software has an authentication key as user identification information. The authentication key is a key for encryption, and is distributed to the user by a person who is permitted to use the software, for example, a software vendor. The authentication key is strictly enclosed in a memory or the like in hardware to prevent duplication, and is delivered to the user using physical means such as mail.
(2) The user attaches the hardware with the built-in authentication key to his / her own personal computer / workstation by the designated method. The hardware is attached to, for example, a printer port.
(3) When a user starts an application program and the execution of the program reaches the user authentication routine, the program communicates with hardware incorporating a user authentication key. Based on the result of the communication, the program identifies the authentication key, and when the presence of the correct authentication key is confirmed, execution proceeds to the next step. If communication fails and the presence of the authentication key cannot be confirmed, the program stops itself so that it cannot be executed later.
[0004]
Identification of the authentication key by the access qualification authentication routine is performed according to the following protocol, for example.
(1) The access qualification routine generates an appropriate number and sends it to the hardware with a key.
(2) The key built-in hardware encrypts the number sent using the built-in authentication key and returns it to the authentication routine.
{Circle around (3)} The authentication routine determines whether or not the returned number is a number that is predicted in advance, that is, a number obtained by encrypting the number transmitted to the hardware with a correct authentication key.
(4) If the number returned is equal to the expected number, execution of the program is continued, and if not, the program is stopped.
[0005]
At this time, the communication between the application program and the hardware with a built-in authentication key must be different every time it is executed even if it is exchanged with the same hardware at the same location in the same application program. Otherwise, the contents of communication in the normal execution process are recorded once, and the program can be executed even by a user who does not have the correct authentication key by returning to the application program as recorded every time the program is executed. Will be possible. Such illegal execution of the application program by reproducing the communication content is called a replay attack.
[0006]
In order to prevent a replay attack, normally, a random number newly generated every time communication is used as the number sent to the hardware with a key.
[0007]
[Problems of conventional technology]
The problem with the prior art stems from the nature that when creating an application program, the program creator must preliminarily assume the user's authentication key and then perform program protection processing based on the authentication key. To do.
[0008]
That is, the program creator must predict a correct reply from the hardware with a built-in key at the time of creating the program, and create the program so that the program is executed normally only when the correct reply is received.
[0009]
There are basically two types of usage of the prior art having the above characteristics, but in either case, there are problems described below.
[0010]
{Circle around (1)} In the first method, user authentication keys are prepared differently for each user. That is, one different authentication key is prepared for each user, such as authentication key A for user A and authentication key B for user B.
[0011]
In this case, the program creator needs to create a program by appropriately changing the authentication routine in the program for each user. In other words, since the authentication key is different for each user, the authentication routine in the program must be created so as to identify the authentication key specific to the user who uses the program, and the program creator differs by the number of users. Need to create.
[0012]
When there are a large number of target users, the task of individualizing the program for each user requires labor that cannot be tolerated by the program creator, and the list of user authentication keys that must be managed becomes enormous.
[0013]
(2) In the second method, the program creator prepares a different authentication key for each application. That is, a different authentication key is prepared for each application, such as an authentication key A for the application A and an authentication key B for the application B, and each application program is created so as to identify a unique authentication key.
[0014]
In this method, it is not necessary to individually create a program for each user as in the case of the first method, but on the contrary, the user must hold authentication keys for the number of applications to be used. .
[0015]
This restriction raises the following problems for each program creator and user.
[0016]
As described above, the authentication key needs to be distributed to users in a state of being strictly enclosed in hardware. Therefore, in contrast to the program itself being able to be easily distributed via the network, the distribution of the hardware containing the authentication key has to rely on physical means such as mail. This restriction places a heavy burden on the program creator regardless of cost, time, and packaging.
[0017]
In order to respond to the user's request, the program creator must stock a certain number of different hardware for each application, which requires inventory management costs.
[0018]
In addition, the user must be relieved by the complexity of having to replace the hardware every time the application to be used is changed.
[0019]
Even if the user wants to use an application, the user has to wait until the hardware in which the authentication key is enclosed arrives, which causes inconvenience in that it cannot be used immediately.
[0020]
In order to reduce this burden, multiple authentication keys are encapsulated in hardware in advance, and an unused authentication key in hardware can be used every time a user is allowed to use a new application. A method such as telling the user the password is used. However, even if this method is used, it is clear that the above-mentioned problem cannot be solved in principle. Actually, when commercializing, in order to alleviate the inconvenience caused by the above-mentioned problems, the hardware is designed to be connected and coupled together.
[0021]
As described above, even if any of the above two methods is adopted, there is a problem in the convenience of the program creator and the user.
[0022]
Considering the external characteristics of execution control, it can be imagined that it can also be applied to privacy protection of mail, access control of files and computer resources, and other general digital content access control. However, it is impossible to apply the prior art to these fields due to the above problems.
[0023]
[Problems to be solved by the invention]
The present invention has been made in view of the above circumstances, and solves the problems caused by handling a large number of unique information such as authentication keys that occur on both the user side and the protect side such as the application creator. , Simply authenticate user access qualifications when performing program execution control, access rights protection for digital content (still images, movies, audio, etc.), email privacy protection, file and computer resource access control, etc. The purpose is to provide an access qualification authentication technology.
[0024]
[Means for solving the problems]
According to the present invention, in order to achieve the above-mentioned object, the access credential authentication apparatus for authenticating the access qualification of the user by verifying the validity of the signature generated to prove the authority of the user, The first storage means for storing the unique information, the second storage means for storing the unique information of the user, the unique signature key calculated from the signature key, and the user held in the first storage means First generation means for generating a pre-signature using the unique information of the second, second generation means for generating a signature using the user's unique signature key held in the second storage means, Verification means for verifying the validity of the signature generated by the generation means is provided, and the first generation means and the second generation means cooperate to generate a signature.
[0025]
In this configuration, by introducing a unique signature key (access ticket), the characteristic information of the access qualification authentication and the user specific information can be made independent. Therefore, the protect side and the user side prepare one specific information. Just do it.
[0026]
An access ticket is data calculated based on specific information of a specific user and characteristic information of access credential authentication, and also calculates characteristic information of access qualification authentication from the access ticket without knowing the user specific information. It is difficult. The correct proof data is calculated only when the correct combination of the user-specific information and the access ticket, that is, the combination of the user-specific information and the access ticket calculated based on the user-specific information is input. . Therefore, the user holds the unique information in advance, and the protector such as the program creator prepares the characteristic information of the access qualification authentication independently of the unique information possessed by the user, and creates the access ticket as the user's unique information and application program. It is possible to authenticate the access qualification of the user such as execution control by creating and distributing it according to the characteristic information of the access credential authentication used for the above.
[0027]
The present invention can also be realized as a method. Furthermore, at least a part of the present invention can be realized as a program product.
[0028]
BEST MODE FOR CARRYING OUT THE INVENTION
[Overall configuration]
Hereinafter, the present invention will be described in detail. Before describing specific individual examples, an overview of embodiments of the present invention will be described below.
[0029]
First, a case where the present invention is used for execution control of an application program operating on a user's PC or workstation will be described. FIG. 1 shows the configuration of the apparatus in this embodiment.
[0030]
In FIG. 1, a program execution control device (user authentication device) includes a proof
[0031]
The proof
[0032]
In this embodiment, the proof
[0033]
The proof
[0034]
In order for the user to use the application program in which the proof
[0035]
The proof data generation device 11 (comprised of a program on the PC or workstation and an IC card) calculates based on the user
[0036]
As a result of the communication, the authentication by the proof
[0037]
If either the user
[0038]
The
[0039]
Further, the
[0040]
Further, the application program may be executed on another computer coupled by a network, and the execution result may be communicated to the computer used by the user via the network. In this case, the configuration is based on a so-called server / client model. In the case of execution control of the application program executed on the user's PC or workstation as described above, the communication between the proof
[0041]
The present invention can also be applied when the application program is configured on a dedicated device. For example, it is assumed that the entire proof
[0042]
Such a configuration using a dedicated device can be applied to a bank ATM machine, a game machine in a game center, and the like.
[0043]
Regarding the acquisition of the
[0044]
In such a case, the access
[0045]
The generated
[0046]
The security of the
[0047]
1) The access ticket is a registered expression. That is, only the user himself / herself who issued the access ticket (more precisely, the holder of the user-specific information used when generating the access ticket) can correctly operate the proof data generation apparatus using the access ticket. Therefore, even if a malicious third party illegally obtains another user's access ticket, unless the third party obtains the user-specific information of the legitimate user to whom the access ticket is issued It is impossible to use this access ticket.
[0048]
2) The access ticket has a stricter security. In other words, a malicious third party collects an arbitrary number of access tickets and does any analysis, forges another access ticket based on the obtained information or imitates the operation of the proof data generation device Thus, it is impossible to configure a device that establishes authentication.
[0049]
[Specific configuration]
Hereinafter, a more specific configuration will be described in accordance with an embodiment. In this embodiment, a configuration example in the case of applying an access ticket to a signature scheme based on a general discrete logarithm problem described below is shown.
[0050]
The signature method used in the embodiment of the present invention uses a finite group G (denoted in a multiplicative manner) in which the discrete logarithm problem is difficult in terms of computational complexity and an element g having an order n.
[0051]
Signing key x is the original residue class ring Z / nZ by law n rational integer ring, verification key y is a finite group G in the original satisfying y = g x.
[0052]
The signature for the element m of the remainder class ring Z / nZ is composed of two elements r and s of Z / nZ.
[Expression 2]
(1-1) r = H (g ry s , m)
Given in. Here, the function H is an arbitrary two-variable function that determines the element H (a, b) of the remainder class ring Z / nZ from the element a of the finite group G and the element b of the remainder class ring Z / nZ. Signatures r and s are as follows.
[0054]
[Equation 3]
r = g k
s = k−r′x
However, r ′ = H (m, r), and a random number k∈Z / nZ.
[0055]
FIG. 2 shows a configuration example of the proof
[0056]
In FIG. 2, the proof
[0057]
Now, in order to identify a user, the user specific information e which is a different number for every user is defined. e is stored in the user specific
[0058]
FIG. 3 mainly shows a detailed configuration of the
[0059]
The access ticket t is generated based on the following expression 1-2.
[0060]
[Expression 4]
(1-2) t = x−f (e, y) mod N
Here, N is an arbitrary multiple of n. Of course, when N = 0, (1-2) is performed on the rational integer ring. As representative elements representing elements of the remainder class ring Z / nZ, 0, 1, 2,. . . , N−1, these are regarded as integers if necessary.
[0061]
The function f is a function in which the function values do not collide with each other, and can be defined as in Expression 1-3 using the one-way hash function h, for example.
[0062]
[Equation 5]
(1-3) f (x, y) = h (x | y)
Here, x | y represents a bit concatenation of x and y.
[0063]
The one-way hash function is a function having a property that it is extremely difficult to calculate different x and y satisfying h (x) = h (y). As an example of a one-way hash function, RSA Data Security Inc. MD2, MD4, MD5, and the standard SHS (Secure Hash Standard) by the US federal government are known.
[0064]
Hereinafter, the data m generated for authentication by the proof
[0065]
The operation of this embodiment will be described below.
[0066]
[Step 1] When the user accesses a program (digital content) that requires authentication by the program execution control device (access qualification authentication device), the proof
[0067]
When the proof
[0068]
When the proof
[0069]
The proof
[0070]
[Step 2] The proof
[0071]
Further, the authentication data m and the verification key y stored in the verification
[0072]
[Step 3] The random
[0073]
[Formula 6]
(1-4) r ′ = g k
[0074]
[Step 4] The first
[0075]
[Expression 7]
(1-5) r = H (m, r ′)
[0076]
[Step 5] The second
[0077]
[Equation 8]
(1-6) s ′ = k−rf (e, y)
[0078]
[Step 6] The second
[0079]
[Equation 9]
(1-7) s = s′−rt
[0080]
[Step 7] The
[0081]
Only when the combination of the access ticket t and the user specific information e used in the proof
[0082]
The bivariate function H in the present embodiment is expressed by using, for example, the hash function h.
[Expression 10]
(1-8) H (a, b) = h (b | a)
Thus, with the above configuration, an access ticket with a so-called Schnorr signature can be realized. FIG. 7 shows the operation of realization by the Schnorr signature access ticket.
[0084]
In this case, the first
[0085]
Further, the bivariate function H is converted, for example, from an element b of the finite group G to an element {b} of the remainder class ring, and addition is performed on a and the remainder class ring.
[0086]
[Expression 11]
(1-9) H (a, b) = a + {b}
By doing so, it is possible to realize a so-called message restoration type Nyberg-Ruppel signature access ticket with the same configuration. FIG. 8 shows an operation of realizing an access ticket with a Nyberg-Ruppel signature.
[0087]
This is the end of the description of the embodiment. In addition, this invention is not limited to the above-mentioned Example, A various change is possible. For example, in the above embodiment, the access ticket is supplied to the proof data generation device, the signature is generated in the proof data generation device, and the signature is sent to the proof data verification device. However, the access ticket is supplied to the proof data verification device. Alternatively, a part of the signature or a pre-signature may be sent as proof data to the proof data verification device, and the proof data verification device may generate the signature for verification. Further, an integrated access qualification authentication device may be configured without distinguishing between the proof data verification device and the proof data generation device, and authentication may be performed by supplying user-specific information and an access ticket to this device. Further, by generating a unique signature key (access ticket) from the signature key and user specific information and sending it to the user, the signature key can be safely distributed.
[0088]
【The invention's effect】
As is clear from the above description, according to the present invention, by introducing the unique signature key (access ticket), the characteristic information of the access qualification authentication and the user specific information can be made independent. The user only needs to prepare one piece of unique information.
[0089]
An access ticket is data calculated based on specific information of a specific user and characteristic information of access credential authentication, and also calculates characteristic information of access qualification authentication from the access ticket without knowing the user specific information. It is difficult. The correct proof data is calculated only when the correct combination of the user-specific information and the access ticket, that is, the combination of the user-specific information and the access ticket calculated based on the user-specific information is input. . Therefore, the user holds the unique information in advance, and the protector such as the program creator prepares the characteristic information of the access qualification authentication independently of the unique information possessed by the user, and creates the access ticket as the user's unique information and application program. It is possible to authenticate the access qualification of the user such as execution control by creating and distributing it according to the characteristic information of the access credential authentication used for the above.
[0090]
Further, according to the present invention, it is possible to safely distribute the signature key, and it is possible to realize a simple key deposit mechanism.
[Brief description of the drawings]
FIG. 1 is a diagram showing an overall configuration of an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a configuration of a proof data verification device and a proof data generation device according to the embodiment.
FIG. 3 is a block diagram illustrating a detailed configuration of a proof data verification device and a proof data generation device according to the embodiment.
FIG. 4 is a diagram for explaining the operation of the embodiment.
FIG. 5 is a diagram for explaining the operation of the embodiment.
FIG. 6 is a diagram for explaining the operation of the embodiment.
[Explanation of symbols]
DESCRIPTION OF
Claims (19)
ユーザの固有情報eを記憶する第1の記憶手段と、
上記ユーザの固有情報eおよび署名鍵xに対して予め定められた所定の演算を実行して得られた補助情報tを記憶する第2の記憶手段と、
上記第1の記憶手段に保持された上記ユーザの固有情報eを用い、署名対象のメッセージを用いることのない署名用の第1の部分演算を実行して署名用部分演算結果を生成する第1の生成手段と、
上記第2の記憶手段に保持された上記補助情報tと上記署名用部分演算結果と上記署名対象のメッセージとを用いて署名用の第2の部分演算を実行して最終演算結果を生成する第2の生成手段と、
上記第2の生成手段で生成した上記最終演算結果が正当な署名であるかどうかを検証する検証手段とを有し、
上記第1の生成手段による上記署名用の第1の部分演算と上記第2の生成手段による上記署名用の第2の部分演算とは協調して上記署名を生成するように選定され、さらに、上記所定の演算は、上記ユーザの固有情報e、上記署名鍵xおよび上記補助情報が対応する場合に上記最終演算結果が正当な署名となるように選定されたことを特徴とするアクセス資格認証装置。In an access credential authentication device that authenticates a user's access qualification by verifying the validity of a signature generated to prove the user's authority,
First storage means for storing user specific information e;
Second storage means for storing auxiliary information t obtained by executing a predetermined calculation on the user's unique information e and signature key x;
A first partial operation result for signature is generated by executing the first partial operation for signature without using the message to be signed , using the unique information e of the user held in the first storage means Means for generating
A second partial operation for signature is executed using the auxiliary information t , the partial operation result for signature and the message to be signed held in the second storage means to generate a final operation result . Two generating means;
Verification means for verifying whether the final operation result generated by the second generation means is a valid signature ;
The signature first partial operation by the first generation means and the second partial operation for signature by the second generation means are selected to cooperate to generate the signature , and The access qualification authentication apparatus, wherein the predetermined calculation is selected so that the final calculation result is a valid signature when the user's unique information e, the signature key x, and the auxiliary information correspond to each other. .
補助署名鍵kと第1の署名用部分演算結果r’とを生成する第3の生成手段と、
上記補助署名鍵kを記憶する第3の記憶手段と、
第2の署名用部分演算結果s’を生成する第4の生成手段とから構成され、
第2の生成手段が、
第1の署名rを生成する第5の生成手段と、
第2の署名sを生成する第6の生成手段とから構成され、
上記第1の署名rは、認証用データmと上記第1の署名用部分演算結果r’とより計算され、
上記第2の署名用部分演算結果s’は、上記補助署名鍵kと上記第1の署名rと上記ユーザの固有情報eと検証鍵yとより計算され、
上記第2の署名sは、上記第2の署名用部分演算結果s’と上記第1の署名rと上記補助情報tとより計算されることを特徴とする請求項1、2または3記載のアクセス資格認証装置。The first generating means is
Third generation means for generating the auxiliary signature key k and the first partial signature calculation result r ′;
Third storage means for storing the auxiliary signature key k;
And a fourth generation means for generating a second signature partial operation result s ′.
The second generating means is
Fifth generation means for generating a first signature r;
And sixth generation means for generating the second signature s,
The first signature r is calculated from the authentication data m and the first partial signature calculation result r ′.
The second partial signature calculation result s ′ is calculated from the auxiliary signature key k, the first signature r, the user specific information e, and the verification key y.
4. The second signature s is calculated from the second signature partial calculation result s ′, the first signature r, and the auxiliary information t. Access credential authentication device.
【数1】
t≡x−f(e,y) (mod N)
(ただしNはnの任意の倍元)を満たすように定められたことを特徴とする請求項1、2、3、4、5、6または7記載のアクセス資格認証装置。The auxiliary information held in the second storage means is based on the signature key, the verification key, the user specific information, and the non-collision function.
t≡x−f (e, y) (mod N)
8. The access qualification authentication apparatus according to claim 1, wherein the access qualification authentication apparatus is defined so as to satisfy (where N is an arbitrary multiple of n).
上記第5の生成手段は、上記認証用データmと上記第1の署名用部分演算結果r’を入力として上記2変数関数Hにより上記第1の署名r=H(m,r’)を計算し、
上記第4の生成手段は、上記第1の署名rと上記ユーザの固有情報eおよび上記検証鍵yの非衝突性関数値とを掛けたものを上記補助署名鍵から引いて上記第2の署名用部分演算結果s’=k−rf(e,y)を計算し、
上記第6の生成手段は、上記第1の署名rと上記補助情報tとを掛けたものを上記第2の署名用部分演算結果s’から引いて第2の署名s=s’−rtを計算することを特徴とする請求項4〜請求項12のいずれかに記載のアクセス資格認証装置。The third generation means generates a random number k as an auxiliary signature key and stores the random number k in the third storage means. The base g of the group G is raised to the kth power by the auxiliary signature key k and the first signature partial calculation result calculate r ′ = g k ,
The fifth generation means calculates the first signature r = H (m, r ′) by the two-variable function H with the authentication data m and the first signature partial calculation result r ′ as inputs. And
The fourth generating means, said first signature r and specific information e and the ones obtained by multiplying the non-collision function value of the verification key y is subtracted from the auxiliary signing key signature the second of the user The partial operation result s ′ = k−rf (e, y) is calculated,
The sixth generation means subtracts the product of the first signature r and the auxiliary information t from the second partial signature calculation result s ′ to obtain a second signature s = s′−rt. The access qualification authentication apparatus according to any one of claims 4 to 12, wherein the access qualification authentication apparatus is calculated.
上記証明データ検証装置は、第4の記憶手段に記憶された認証用データを上記証明データ生成装置の第6の記憶手段に書き出し、
上記証明データ生成装置は、上記第2の生成手段によって上記第6の記憶手段に書き込まれた上記認証用データを元に生成した署名を上記証明データ検証装置中の上記第5の記憶手段に書き出し、
上記証明データ検証装置は上記第5の記憶手段に書き込まれた上記署名を用いてユーザのアクセス資格を認証することを特徴とする請求項1〜16のいずれかに記載のアクセス資格認証装置。The proof data generation device includes at least the first storage unit, the second storage unit, the first generation unit, and the second generation unit, and the proof data verification device includes at least The proof data verification means, a fourth storage means for storing the authentication data, and a fifth storage means for storing the proof data, wherein the proof data generation device and the proof data verification device are: In an access credential authentication device that authenticates user access qualification by communicating with each other,
The proof data verification device writes the authentication data stored in the fourth storage means to the sixth storage means of the proof data generation device,
The proof data generation device writes a signature generated based on the authentication data written in the sixth storage unit by the second generation unit to the fifth storage unit in the proof data verification device. ,
The access credential authentication apparatus according to any one of claims 1 to 16, wherein the proof data verification apparatus authenticates a user's access qualification using the signature written in the fifth storage means.
第1の記憶手段が、ユーザの固有情報eを記憶する第1の記憶ステップと、
第2の記憶手段が、上記ユーザの固有情報eおよび署名鍵xに対して予め定められた所定の演算を実行して得られた補助情報tを記憶する第2の記憶ステップと、
第1の生成手段が、上記第1の記憶ステップにより保持された上記ユーザの固有情報eを用い、署名対象のメッセージを用いることのない署名用の第1の部分演算を実行して署名用部分演算結果を生成する第1の生成ステップと、
第2の生成手段が、上記第2の記憶ステップにより保持された上記補助情報tと上記署名用部分演算結果と上記署名対象のメッセージとを用いて署名用の第2の部分演算を実行して最終演算結果を生成する第2の生成ステップと、
検証手段が、上記第2の生成ステップで生成した上記最終演算結果が正当な署名であるかどうかを検証する検証ステップとを有し、
上記第1の生成ステップによる上記署名用の第1の部分演算と上記第2の生成ステップによる上記署名用の第2の部分演算とは協調して上記署名を生成するように選定され、さらに上記所定の演算は、上記ユーザの固有情報e、上記署名鍵xおよび上記補助情報が対応する場合に上記最終演算結果が正当な署名となるように選定されたことを特徴とするアクセス資格認証方法。In an access credential authentication method for authenticating a user's access credential by verifying the validity of a signature generated to prove the user's authority,
A first storage means for storing a user's unique information e;
A second storage step in which a second storage means stores auxiliary information t obtained by executing a predetermined calculation on the user's unique information e and signature key x;
The first generation means executes the first partial operation for signature without using the signature target message by using the unique information e of the user held in the first storage step, and the signature portion A first generation step for generating a calculation result ;
The second generation means executes a second partial operation for signature using the auxiliary information t, the partial operation result for signature, and the message to be signed held in the second storage step. A second generation step for generating a final operation result ;
A verification unit has a verification step of verifying whether the final operation result generated in the second generation step is a valid signature ;
In cooperation and second portions calculation for the signature of the first part operation and the second generating step for the signature by the first generating step is selected to generate the signature, further the The access qualification authentication method, wherein the predetermined calculation is selected so that the final calculation result is a valid signature when the user's unique information e, the signature key x, and the auxiliary information correspond .
上記ユーザの固有情報eおよび署名鍵xに対して予め定められた所定の演算を実行して得られた補助情報tを記憶する第2の記憶手段と、
上記第1の記憶手段に保持された上記ユーザの固有情報eを用い、署名対象のメッセージを用いることのない署名用の第1の部分演算を実行して署名用部分演算結果を生成する第1の生成手段と、
上記第2の記憶手段に保持された上記補助情報tと上記署名用部分演算結果と上記署名対象のメッセージとを用いて署名用の第2の部分演算を実行して最終演算結果を生成する第2の生成手段とを有し、
上記第1の生成手段による上記署名用の第1の部分演算と上記第2の生成手段による上記署名用の第2の部分演算とは協調して上記署名を生成するように選定され、さらに、さらに上記所定の演算は、上記ユーザの固有情報e、上記署名鍵xおよび上記補助情報が対応する場合に上記最終演算結果が正当な署名となるように選定されたことを特徴とする署名装置。First storage means for storing user specific information e;
Second storage means for storing auxiliary information t obtained by executing a predetermined calculation on the user's unique information e and signature key x;
A first partial operation result for signature is generated by executing the first partial operation for signature without using the message to be signed , using the unique information e of the user held in the first storage means Means for generating
A second partial operation for signature is executed using the auxiliary information t , the partial operation result for signature and the message to be signed held in the second storage means to generate a final operation result . Two generation means,
The signature first partial operation by the first generation means and the second partial operation for signature by the second generation means are selected to cooperate to generate the signature , and Furthermore, the predetermined calculation is selected so that the final calculation result becomes a valid signature when the user's unique information e, the signature key x, and the auxiliary information correspond to each other .
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21039997A JP3622433B2 (en) | 1997-08-05 | 1997-08-05 | Access credential authentication apparatus and method |
| US09/794,074 US7137007B2 (en) | 1997-08-05 | 2001-02-28 | Device and method for authenticating user's access rights to resources |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21039997A JP3622433B2 (en) | 1997-08-05 | 1997-08-05 | Access credential authentication apparatus and method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH1155249A JPH1155249A (en) | 1999-02-26 |
| JP3622433B2 true JP3622433B2 (en) | 2005-02-23 |
Family
ID=16588683
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP21039997A Expired - Fee Related JP3622433B2 (en) | 1997-08-05 | 1997-08-05 | Access credential authentication apparatus and method |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7137007B2 (en) |
| JP (1) | JP3622433B2 (en) |
Families Citing this family (58)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4751209A (en) * | 1985-10-11 | 1988-06-14 | Matsushita Electric Industrial Co., Ltd. | Dielectric ceramic compositions |
| US6963859B2 (en) | 1994-11-23 | 2005-11-08 | Contentguard Holdings, Inc. | Content rendering repository |
| JPH08263438A (en) * | 1994-11-23 | 1996-10-11 | Xerox Corp | Distribution and use control system of digital work and access control method to digital work |
| US6233684B1 (en) * | 1997-02-28 | 2001-05-15 | Contenaguard Holdings, Inc. | System for controlling the distribution and use of rendered digital works through watermaking |
| US6832377B1 (en) * | 1999-04-05 | 2004-12-14 | Gateway, Inc. | Universal registration system |
| US7743259B2 (en) * | 2000-08-28 | 2010-06-22 | Contentguard Holdings, Inc. | System and method for digital rights management using a standard rendering engine |
| US8225414B2 (en) | 2000-08-28 | 2012-07-17 | Contentguard Holdings, Inc. | Method and apparatus for identifying installed software and regulating access to content |
| US7343324B2 (en) | 2000-11-03 | 2008-03-11 | Contentguard Holdings Inc. | Method, system, and computer readable medium for automatically publishing content |
| US6912294B2 (en) | 2000-12-29 | 2005-06-28 | Contentguard Holdings, Inc. | Multi-stage watermarking process and system |
| US8069116B2 (en) | 2001-01-17 | 2011-11-29 | Contentguard Holdings, Inc. | System and method for supplying and managing usage rights associated with an item repository |
| US20040039704A1 (en) * | 2001-01-17 | 2004-02-26 | Contentguard Holdings, Inc. | System and method for supplying and managing usage rights of users and suppliers of items |
| US7774279B2 (en) | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
| US6754642B2 (en) * | 2001-05-31 | 2004-06-22 | Contentguard Holdings, Inc. | Method and apparatus for dynamically assigning usage rights to digital works |
| US7028009B2 (en) * | 2001-01-17 | 2006-04-11 | Contentguardiholdings, Inc. | Method and apparatus for distributing enforceable property rights |
| US7103573B2 (en) * | 2001-04-02 | 2006-09-05 | Privilegeone Networks, Llc | User rewards program and associated communications system |
| US8275716B2 (en) * | 2001-05-31 | 2012-09-25 | Contentguard Holdings, Inc. | Method and system for subscription digital rights management |
| US8099364B2 (en) | 2001-05-31 | 2012-01-17 | Contentguard Holdings, Inc. | Digital rights management of content when content is a future live event |
| US7725401B2 (en) | 2001-05-31 | 2010-05-25 | Contentguard Holdings, Inc. | Method and apparatus for establishing usage rights for digital content to be created in the future |
| US6876984B2 (en) | 2001-05-31 | 2005-04-05 | Contentguard Holdings, Inc. | Method and apparatus for establishing usage rights for digital content to be created in the future |
| US8275709B2 (en) | 2001-05-31 | 2012-09-25 | Contentguard Holdings, Inc. | Digital rights management of content when content is a future live event |
| US6895503B2 (en) | 2001-05-31 | 2005-05-17 | Contentguard Holdings, Inc. | Method and apparatus for hierarchical assignment of rights to documents and documents having such rights |
| US8001053B2 (en) | 2001-05-31 | 2011-08-16 | Contentguard Holdings, Inc. | System and method for rights offering and granting using shared state variables |
| US7774280B2 (en) | 2001-06-07 | 2010-08-10 | Contentguard Holdings, Inc. | System and method for managing transfer of rights using shared state variables |
| KR20030096250A (en) | 2001-06-07 | 2003-12-24 | 콘텐트가드 홀딩즈 인코포레이티드 | Method and apparatus for supporting multiple trust zones in a digital rights management system |
| JP3668175B2 (en) * | 2001-10-24 | 2005-07-06 | 株式会社東芝 | Personal authentication method, personal authentication device, and personal authentication system |
| US7974923B2 (en) * | 2001-11-20 | 2011-07-05 | Contentguard Holdings, Inc. | Extensible rights expression processing system |
| WO2003044680A1 (en) * | 2001-11-20 | 2003-05-30 | Contentguard Holdings, Inc. | Systems and methods for creating, manipulating and processing rights and contract expressions using tokenized templates |
| US7840488B2 (en) * | 2001-11-20 | 2010-11-23 | Contentguard Holdings, Inc. | System and method for granting access to an item or permission to use an item based on configurable conditions |
| WO2003048840A1 (en) * | 2001-12-07 | 2003-06-12 | Juan Dominguez-Montes | Double active parallax barrier for viewing stereoscopic images |
| US7805371B2 (en) * | 2002-03-14 | 2010-09-28 | Contentguard Holdings, Inc. | Rights expression profile system and method |
| US20030229593A1 (en) * | 2002-03-14 | 2003-12-11 | Michael Raley | Rights expression profile system and method |
| EP1490819A4 (en) * | 2002-03-14 | 2006-05-31 | Contentguard Holdings Inc | SYSTEM AND METHOD FOR EXPRESSING USE RIGHTS USING MODULATED SIGNALS |
| US7305555B2 (en) * | 2002-03-27 | 2007-12-04 | General Instrument Corporation | Smart card mating protocol |
| US8543511B2 (en) * | 2002-04-29 | 2013-09-24 | Contentguard Holdings, Inc. | System and method for specifying and processing legality expressions |
| US7895443B2 (en) * | 2002-11-05 | 2011-02-22 | Safenet, Inc. | Secure authentication using hardware token and computer fingerprint |
| EP2182465B1 (en) * | 2003-02-21 | 2013-05-01 | Research In Motion Limited | System and method of multiple-level control of electronic devices |
| DE10307995B4 (en) * | 2003-02-25 | 2008-02-07 | Siemens Ag | Method for signing data |
| US7685642B2 (en) * | 2003-06-26 | 2010-03-23 | Contentguard Holdings, Inc. | System and method for controlling rights expressions by stakeholders of an item |
| US20050097593A1 (en) * | 2003-11-05 | 2005-05-05 | Michael Raley | System, method and device for selected content distribution |
| WO2005071880A1 (en) * | 2004-01-23 | 2005-08-04 | Nec Corporation | Group signature system, method, device, and program |
| US20060107326A1 (en) * | 2004-11-12 | 2006-05-18 | Demartini Thomas | Method, system, and device for verifying authorized issuance of a rights expression |
| US20060106726A1 (en) * | 2004-11-18 | 2006-05-18 | Contentguard Holdings, Inc. | Method, system, and device for license-centric content consumption |
| US8660961B2 (en) * | 2004-11-18 | 2014-02-25 | Contentguard Holdings, Inc. | Method, system, and device for license-centric content consumption |
| US20060112015A1 (en) * | 2004-11-24 | 2006-05-25 | Contentguard Holdings, Inc. | Method, system, and device for handling creation of derivative works and for adapting rights to derivative works |
| US8074067B2 (en) * | 2005-02-10 | 2011-12-06 | Nec Corporation | Member certificate acquiring device, member certificate issuing device, group signing device, and group signature verifying device |
| US20060248573A1 (en) * | 2005-04-28 | 2006-11-02 | Content Guard Holdings, Inc. | System and method for developing and using trusted policy based on a social model |
| JP2007004461A (en) * | 2005-06-23 | 2007-01-11 | Nec Corp | Service providing system, outsourcing agency apparatus, service providing method, and program |
| EP1929685A4 (en) * | 2005-09-29 | 2011-12-21 | Contentguard Holdings Inc | System and method for digital rights management using advanced copy with issue rights, and managed copy tokens |
| US7720767B2 (en) * | 2005-10-24 | 2010-05-18 | Contentguard Holdings, Inc. | Method and system to support dynamic rights and resources sharing |
| US9122563B2 (en) * | 2009-02-03 | 2015-09-01 | Microsoft Technology Licensing, Llc | Computing minimal polynomials |
| CN102611749B (en) * | 2012-01-12 | 2014-05-28 | 电子科技大学 | Cloud-storage data safety auditing method |
| US10135613B2 (en) | 2012-01-13 | 2018-11-20 | Qualcomm Incorporated | Method and apparatus for generating a privilege-based key |
| US8844026B2 (en) | 2012-06-01 | 2014-09-23 | Blackberry Limited | System and method for controlling access to secure resources |
| CN103067374B (en) * | 2012-12-26 | 2015-10-28 | 电子科技大学 | A kind of data security auditing method of identity-based |
| US8850213B2 (en) * | 2013-01-29 | 2014-09-30 | Infineon Technologies Ag | Method for verifying an electronic signature and data processing device |
| CN103501352B (en) * | 2013-10-22 | 2016-08-17 | 北京航空航天大学 | A kind of cloud storage data method for auditing safely allowing group user identity to cancel |
| CN104023044A (en) * | 2014-01-01 | 2014-09-03 | 电子科技大学 | Cloud-storage data lightweight-level public auditing method with privacy protection |
| CN105978695A (en) * | 2016-05-03 | 2016-09-28 | 西南石油大学 | Batch self-auditing method for cloud storage data |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5557518A (en) * | 1994-04-28 | 1996-09-17 | Citibank, N.A. | Trusted agents for open electronic commerce |
| US5347581A (en) * | 1993-09-15 | 1994-09-13 | Gemplus Developpement | Verification process for a communication system |
| US5825880A (en) * | 1994-01-13 | 1998-10-20 | Sudia; Frank W. | Multi-step digital signature method and system |
-
1997
- 1997-08-05 JP JP21039997A patent/JP3622433B2/en not_active Expired - Fee Related
-
2001
- 2001-02-28 US US09/794,074 patent/US7137007B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US20010009026A1 (en) | 2001-07-19 |
| US7137007B2 (en) | 2006-11-14 |
| JPH1155249A (en) | 1999-02-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3622433B2 (en) | Access credential authentication apparatus and method | |
| JP3613936B2 (en) | Access qualification authentication device | |
| JP3671611B2 (en) | Access credential authentication apparatus and method | |
| JP3613929B2 (en) | Access credential authentication apparatus and method | |
| JP3613921B2 (en) | Access credential authentication apparatus and method | |
| EP0881559B1 (en) | Computer system for protecting software and a method for protecting software | |
| US5935246A (en) | Electronic copy protection mechanism using challenge and response to prevent unauthorized execution of software | |
| JP3867388B2 (en) | Conditional authentication apparatus and method | |
| JP4463887B2 (en) | Protected storage of core data secrets | |
| JP4113274B2 (en) | Authentication apparatus and method | |
| Todorov | Mechanics of user identification and authentication: Fundamentals of identity management | |
| US5987134A (en) | Device and method for authenticating user's access rights to resources | |
| EP1374473B1 (en) | Method and apparatus for secure cryptographic key generation, certification and use | |
| CN109361668A (en) | A method of reliable data transmission | |
| US20040088541A1 (en) | Digital-rights management system | |
| US6651169B1 (en) | Protection of software using a challenge-response protocol embedded in the software | |
| JP3749640B2 (en) | IC card using device, IC card and storage medium | |
| Hu et al. | Enhancing account privacy in blockchain-based IoT access control via zero knowledge proof | |
| JP3860280B2 (en) | Communication system, IC card issuance registration system, key code generation device, and recording medium | |
| GB2270446A (en) | Establishing a common cryptographic key at two cryptographic sites | |
| Looi et al. | Enhancing sesamev4 with smart cards | |
| Salaiwarakul | Verification of secure biometric authentication protocols | |
| Varadharajan | Authentication in mobile distributed environment | |
| CN119743252A (en) | Mobile terminal data encryption method, device, equipment and storage medium | |
| Sowers | Architecture for Issuing DoD Mobile Derived Credentials |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040810 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041004 |
|
| 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: 20041102 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041115 |
|
| 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: 20071203 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081203 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091203 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101203 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111203 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111203 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121203 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121203 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131203 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 |