JP5004086B2 - Authentication system using short sequences - Google Patents

Authentication system using short sequences Download PDF

Info

Publication number
JP5004086B2
JP5004086B2 JP2007280297A JP2007280297A JP5004086B2 JP 5004086 B2 JP5004086 B2 JP 5004086B2 JP 2007280297 A JP2007280297 A JP 2007280297A JP 2007280297 A JP2007280297 A JP 2007280297A JP 5004086 B2 JP5004086 B2 JP 5004086B2
Authority
JP
Japan
Prior art keywords
authentication
server
user
data
key
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.)
Active
Application number
JP2007280297A
Other languages
Japanese (ja)
Other versions
JP2009111594A (en
Inventor
和邦 古原
星漢 辛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
National Institute of Advanced Industrial Science and Technology AIST
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 National Institute of Advanced Industrial Science and Technology AIST filed Critical National Institute of Advanced Industrial Science and Technology AIST
Priority to JP2007280297A priority Critical patent/JP5004086B2/en
Publication of JP2009111594A publication Critical patent/JP2009111594A/en
Application granted granted Critical
Publication of JP5004086B2 publication Critical patent/JP5004086B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、例えば、パスワードなど、ユーザが短い系列を入力してユーザの端末装置とサーバの認証装置の間に安全性を確保しながら高速に相互認証とセッション鍵の確立を行う認証システムに関するものである。   The present invention relates to an authentication system that performs mutual authentication and session key establishment at high speed while ensuring safety between a user terminal device and a server authentication device by inputting a short sequence such as a password, for example. It is.

パスワードを用いる認証システムに関係する技術としては、例えば、次のような特許文献1、特許文献2,特許文献3に記載された技術がある。   As a technique related to an authentication system using a password, for example, there are techniques described in Patent Document 1, Patent Document 2, and Patent Document 3 as follows.

特許文献1に記載されている「遠隔システムアクセス接続規制方法」の発明は、構内電子交換機が提供するサービス(Remote System Access)を公衆網から利用する際、電子交換機の内部にあるセキュリティ管理装置は利用者(発信者)のパスワードコードと同期して発生された乱数をチェックすることで認証を行う方法である。しかしながら、この方法では、攻撃者が利用者に成りすませるため安全ではない。   The invention of “Remote System Access Connection Restriction Method” described in Patent Document 1 is based on the fact that when a service provided by a private branch exchange (Remote System Access) is used from a public network, a security management device inside the electronic switch is In this method, authentication is performed by checking a random number generated in synchronization with the password code of the user (sender). However, this method is not secure because the attacker impersonates the user.

特許文献2に記載されている「暗号鍵の配送における認証方式」の発明は、RSA暗号で配送鍵を暗号化した暗号文とその暗号文に署名を付け、相手側に送るとともに、配送鍵を使って共通鍵暗号で共通鍵暗号方式に使うデータ通信用の鍵をパスワードとともに暗号化して送ることで認証を行う。さらに、RSA暗号用の秘密鍵はマスタ鍵で暗号化され保存される。この方式は、認証の際に公開鍵基盤(PKI)を必要とする。つまり、利用者はサーバの公開鍵あるいは認証局の公開鍵を持たなければならない。   The invention of the “authentication method for encryption key delivery” described in Patent Document 2 is that the ciphertext encrypted with the RSA cipher and the ciphertext are signed, sent to the other party, and the delivery key is Authentication is performed by encrypting and sending the data communication key used for the common key encryption method together with the password. Furthermore, the private key for RSA encryption is encrypted with the master key and stored. This scheme requires a public key infrastructure (PKI) for authentication. In other words, the user must have the public key of the server or the public key of the certificate authority.

特許文献3に記載されている「データ署名装置」の発明は、データ署名に必要とする秘密鍵あるいは公開鍵暗号に必要とする相手側の公開鍵を携帯可能なハウジング内に格納して、利用者から入力されたパスワードが正しい時のみに、暗号用の演算処理を行う。ただし、この方式を安全に利用するには、秘密鍵を保存している携帯可能なハウジングが外部からアクセスや読み取りが不可能であることが必要となっており、デバイスの耐タンパー性が必要となる。
特開平7−245657号公報 特開平62−190943号公報 特開平9−107352号公報
The invention of the “data signature device” described in Patent Document 3 uses a secret key required for data signature or a public key of the other party required for public key encryption in a portable housing for use. Only when the password entered by the user is correct, the cryptographic calculation process is performed. However, in order to use this method safely, it is necessary that the portable housing that stores the private key cannot be accessed or read from the outside, and the device must be tamper resistant. Become.
JP-A-7-245657 Japanese Patent Laid-Open No. 62-190943 JP-A-9-107352

認証システムにおいてパスワードなどの短い系列を安全に利用する場合には、公開鍵暗号など、処理の重い多倍長のべき剰余演算が必要となる。そのため、このような方式をICカードなど、処理能力の小さなデバイスへ実装することは敬遠される。   When a short series such as a password is securely used in the authentication system, a multiple-length power residue calculation that requires heavy processing such as public key cryptography is required. For this reason, mounting such a method on a device having a small processing capability such as an IC card is not recommended.

しかし、電子決済や交通系のゲート通過などでは、低機能のデバイスを用いて高速かつ安全に処理を行うことが必要とされており、認証システムにおいて、安全性を損なうことなく、処理の高速化を実現することが課題となっている。   However, in electronic payments and transit gates, it is necessary to perform processing quickly and safely using a low-function device, and in the authentication system, the processing speed is increased without sacrificing safety. It has become an issue to realize.

本発明は、このような課題を解決するためになされたものであり、本発明の目的は、RSA公開鍵暗号方式を使うにもかかわらず、ユーザが短い系列(パスワードなど)を入力してユーザの端末装置とサーバの認証装置の間に安全性を確保しながら高速に相互認証とセッション鍵の確立を行うことができる認証システムを提供することにある。   The present invention has been made to solve such a problem, and the object of the present invention is to input a short sequence (such as a password) by the user even though the RSA public key cryptosystem is used. It is an object of the present invention to provide an authentication system capable of performing mutual authentication and session key establishment at high speed while ensuring safety between the terminal device and the server authentication device.

また、本発明の別の目的は、ユーザが短い系列を入力してユーザの端末装置とサーバの認証装置の間に安全性を確保しながら相互認証とセッション鍵の確立を行う認証システムを用いて、パスワードオンライン攻撃を検出する方法と、以降において他の認証方式を利用するためのデータを安全に共有して記録する方法を提供することにある。   Another object of the present invention is to use an authentication system in which a user inputs a short sequence and establishes mutual authentication and session key while ensuring safety between the user terminal device and the server authentication device. Another object of the present invention is to provide a method for detecting a password online attack and a method for securely sharing and recording data for using another authentication method thereafter.

上記の目的を達成するため、本発明の認証システムは、基本的な概念として、短い系列(パスワードなど)を用いた認証システムとし、安全性を落とさないセキュリティパラメータを設定して、その範囲で計算量と通信量を小さくするパラメータを選び、そのパラメータで後の処理を行うようにしてシステムを構成する。これにより、認証システム全体の処理が軽く済むという効果が期待できる。また、これにより、低機能デバイスでの処理を安全性を落とすことなく削減することができるという利点が期待できる。   In order to achieve the above object, the authentication system of the present invention is basically an authentication system using a short sequence (password, etc.), and security parameters that do not reduce safety are set and calculation is performed within the range. The system is configured by selecting a parameter for reducing the amount of communication and the amount of communication, and performing subsequent processing with the parameter. Thereby, the effect that the process of the whole authentication system can be lightened can be expected. In addition, this can be expected to reduce the processing in the low-function device without reducing the safety.

更には、このような認証システムを用いて共有されたセッション鍵で安全な通信路を確立して、この通信路を経由してオンライン攻撃が行われたか否かを検出できる検出システムを構成する。これによって、認証システム上のユーザが覚えているパスワードの更新時期に関するセキュリティポリシーを立てることが可能になる。   Furthermore, a secure communication path is established with a session key shared using such an authentication system, and a detection system capable of detecting whether an online attack has been performed via this communication path is configured. As a result, it becomes possible to establish a security policy regarding the update time of the password remembered by the user on the authentication system.

パスワードなどの短い系列に基づく認証システムでは、例えば、オンラインによる短い系列の全数探索(オンライン攻撃)が深刻な問題となるため、それを検出するメカニズムを備えておくことが、その利便性を左右する短い系列の更新時期を決める上でも非常に重要となる。   In an authentication system based on a short sequence such as a password, for example, an exhaustive search (online attack) of a short sequence on-line becomes a serious problem. Therefore, having a mechanism for detecting it affects the convenience. It is very important to decide when to update short series.

更に、このような認証システムを用いて、ユーザの端末装置とサーバの認証装置の間で相互認証を行った後に新しい認証データを登録するシステムを構成する。これにより、サーバの認証装置に登録された認証データに基づくほかの認証システムを容易に使うことが可能になる。   Furthermore, using such an authentication system, a system for registering new authentication data after mutual authentication between a user terminal device and a server authentication device is configured. This makes it possible to easily use another authentication system based on the authentication data registered in the server authentication device.

具体的に、本発明による認証システムは、システム構成としては、ユーザの端末装置が、サーバの認証装置との間のデータ通信を行う通信処理部と、サーバの認証装置からのRSA公開鍵とパラメータLに基づく前記通信処理部の通信によりユーザの端末装置とサーバの認証装置の間で公開鍵の正しさを決定するユーザ側質問生成・応答確認装置と、入力された短い系列と前記ユーザ側質問生成・応答確認装置により受け取った公開鍵に基づいてサーバの認証装置に送信する認証データを生成するユーザ側認証用データ生成装置と、サーバの認証装置から受信した認証子に対して認証処理を行い、認証の結果によりサーバの認証装置に送信する認証子とセッション鍵を生成するユーザ側認証結果判定装置を備え、サーバの認証装置が、ユーザの端末装置との間のデータ通信を行う通信処理部と、RSA公開鍵を生成して前記通信処理部の通信によりユーザの端末装置に送信し、RSA公開鍵とパラメータLに基づく前記通信処理部の通信によりユーザの端末装置とサーバの認証装置の間で公開鍵の正しさを示すための応答を生成するサーバ側RSA鍵生成・応答生成装置と、ユーザの端末装置からの認証データと前記サーバ側RSA鍵生成・応答生成装置により生成された秘密鍵に基づいてユーザの端末装置に送信する認証子を生成するサーバ側認証用データ生成装置と、ユーザの端末装置から受信した認証子に対して認証処理を行い、認証の結果によりセッション鍵を生成するサーバ側認証結果判定装置とを備える構成される。   Specifically, the authentication system according to the present invention has a system configuration in which a user terminal device performs data communication with a server authentication device, an RSA public key and parameters from the server authentication device. A user side question generation / response confirmation device for determining the correctness of a public key between a user terminal device and a server authentication device by communication of the communication processing unit based on L, an input short sequence, and the user side question Performs authentication processing on the user-side authentication data generation device that generates authentication data to be transmitted to the server authentication device based on the public key received by the generation / response confirmation device, and the authenticator received from the server authentication device , Including a user-side authentication result determination device that generates an authenticator and a session key to be transmitted to the server authentication device according to the authentication result. A communication processing unit that performs data communication with the terminal device, and an RSA public key is generated and transmitted to the user terminal device by communication of the communication processing unit, and the communication processing unit based on the RSA public key and the parameter L A server-side RSA key generation / response generation device that generates a response for indicating the correctness of the public key between the user terminal device and the server authentication device by communication, authentication data from the user terminal device, and the server side A server-side authentication data generating device that generates an authenticator to be transmitted to the user's terminal device based on the secret key generated by the RSA key generating / response generating device, and authenticating the authenticator received from the user's terminal device A server-side authentication result determination device that performs processing and generates a session key based on the authentication result.

認証システムは、このように構成のシステムにおいて、ユーザの端末装置に短い系列を入力して、ユーザの端末装置とサーバの認証装置の間において相互に認証子を生成して送信し、相互の認証子に基づく相互認証を行い、認証結果によりユーザの端末装置とサーバの認証装置の間でセッション鍵の確立を行う。   In the system configured in this way, a short sequence is input to the user terminal device, an authenticator is generated and transmitted between the user terminal device and the server authentication device, and mutual authentication is performed. Mutual authentication based on the child is performed, and a session key is established between the user terminal device and the server authentication device based on the authentication result.

この認証システムによりユーザの端末装置とサーバの認証装置の間で確立したセッション鍵を使って構成できる安全な通信路を用いて、攻撃者がオンラインで試したパスワードの回数を検出する場合には、上記の認証システムにおいて、ユーザ側認証結果判定装置およびサーバ側認証結果判定装置にそれぞれのログ用メモリを備え、ユーザの端末装置とサーバの認証装置の間において相互に認証子を生成して送信し、相互の認証子に基づく相互認証を行う際に、エラーが発生した時の認証用のデータおよび認証子を前記ログ用メモリに記憶し、前記ログ用メモリに記憶されたデータに基づいて前記通信処理部の通信により不正検出の判断処理を行い、その結果を前記ユーザの端末装置に出力するようにシステムが構成される。   When detecting the number of passwords tried by an attacker online using a secure communication path that can be configured using a session key established between the user terminal device and the server authentication device by this authentication system, In the above authentication system, each of the user-side authentication result determination device and the server-side authentication result determination device includes a log memory, and generates and transmits an authenticator between the user terminal device and the server authentication device. When performing mutual authentication based on a mutual authenticator, authentication data and an authenticator when an error occurs are stored in the log memory, and the communication is performed based on the data stored in the log memory. The system is configured to perform fraud detection determination processing by communication of the processing unit and output the result to the user terminal device.

また、この認証システムによりユーザの端末装置とサーバの認証装置の間で確立したセッション鍵を使って構成できる安全な通信路を用いて、ユーザの認証データを登録する場合には、上記の構成の認証システムにおいて、ユーザの端末装置およびサーバの認証装置にそれぞれの認証データを登録する認証データ登録用メモリと、セッション鍵と認証データから共通鍵暗号文を出力する共通鍵暗号演算器と、前記共通鍵暗号文からセッション鍵に基づいて認証データを復号する共通鍵復号演算器とを備え、ユーザの端末装置とサーバの認証装置の間において相互に認証子を生成して送信し、相互の認証子に基づく相互認証を行った際のセッション鍵とRSA鍵に加えてユーザの端末装置とサーバの認証装置の認証データを、それぞれの認証データ登録用メモリに登録して、前記共通鍵暗号演算器により各自の認証データを暗号文とした共通鍵暗号文を送信し、送信された共通鍵暗号文を受信すると、前記共通鍵復号演算器により共通鍵暗号文から相手の認証データを復号して前記認証用データ登録用のメモリに記憶するようにシステムが構成される。   In addition, when registering user authentication data using a secure communication path that can be configured using a session key established between the user terminal device and the server authentication device by this authentication system, the above configuration is used. In the authentication system, an authentication data registration memory for registering respective authentication data in a user terminal device and a server authentication device, a common key cryptography unit for outputting a common key ciphertext from a session key and authentication data, and the common A common key decryption computing unit that decrypts authentication data from the key ciphertext based on the session key, and generates and transmits an authenticator between the user terminal device and the server authenticator, and In addition to the session key and RSA key for mutual authentication based on the authentication data of the user terminal device and server authentication device, A common key ciphertext using the common key ciphering unit as a ciphertext, and receiving the transmitted common key ciphertext, the common key decryption unit Thus, the system is configured to decrypt the other party's authentication data from the common key ciphertext and store it in the authentication data registration memory.

本発明により提供される認証システムは、短い系列を用いても十分なセキュリティを得られるため、基本的に、利用者やサーバ認証を必要とするサービスやアプリケーションのシステムにおいて利用できる。現在、利用者認証やサーバ認証は、電子商取引、サーバやネットワークへのログイン、入退室管理、公的交通機関への搭乗など、リアル、サイバーを問わず至るところで必要とされており、その応用先は広い。   Since the authentication system provided by the present invention can obtain sufficient security even with a short sequence, it can be basically used in a service or application system that requires user authentication or server authentication. Currently, user authentication and server authentication are required everywhere, whether real or cyber, such as electronic commerce, login to servers and networks, entrance / exit management, and boarding in public transportation. Is wide.

また、本発明による認証システムは、端末動作にかかる処理を、安全性を損なうことなく軽くできるという利点があり、ユビキタスデバイスなど計算能力の低いデバイスへの応用が期待できる。また、この認証システムを用いるパスワードオンライン攻撃検出方法、この認証システムを用いる認証データ登録方法により安全性を損なうことなく利便性を高めることができる。   In addition, the authentication system according to the present invention has an advantage that the processing related to the terminal operation can be lightened without impairing safety, and can be expected to be applied to a device having a low calculation capability such as a ubiquitous device. Moreover, the convenience can be improved without impairing safety by the password online attack detection method using this authentication system and the authentication data registration method using this authentication system.

以下、図面を参照しつつ、本発明の好適な実施例について説明する。本発明は以下の各実施例に限定されるものではなく、例えば、これら実施例の構成要素同士を適宜組み合わせてもよい。   Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings. The present invention is not limited to the following examples. For example, the constituent elements of these examples may be appropriately combined.

図1は、短い系列を用いた認証システムの構成を示すブロック図である。この認証システム100は、ユーザの端末装置200とサーバの認証装置300が、ネットワークなどの通信路110により結合されて、短い系列(例えば、パスワードなど)のみに基づいて互いに通信を行って認証処理を実行する。ユーザの端末装置200に入力された利用者のパスワード(短い系列入力データ)に基づいて、ユーザの端末装置200およびサーバの認証装置300がお互いに相互認証して、その相互認証が成功した時、同じセッション鍵が確保される。   FIG. 1 is a block diagram showing a configuration of an authentication system using a short sequence. In this authentication system 100, a user terminal device 200 and a server authentication device 300 are coupled by a communication path 110 such as a network, and communicate with each other based only on a short sequence (for example, a password) to perform an authentication process. Execute. When the user terminal device 200 and the server authentication device 300 mutually authenticate each other based on the user password (short sequence input data) input to the user terminal device 200 and the mutual authentication is successful, The same session key is secured.

ここで、RSA公開鍵暗号方式を使った実施例を説明する前に、本発明の実施例の理解を容易とするため、いくつかの背景知識及び以下の説明において用いる記号について説明しておく。   Here, before describing an embodiment using the RSA public key cryptosystem, some background knowledge and symbols used in the following description will be described in order to facilitate understanding of the embodiment of the present invention.

公開鍵暗号方式では、公開鍵(PK)および秘密鍵(SK)の対(PK,SK)が存在する。公開鍵PKは秘密の状態ではなく、誰でも入手できるように公開しておく。それに対して、秘密鍵SKは秘密の状態とされる。   In the public key cryptosystem, there is a pair (PK, SK) of a public key (PK) and a secret key (SK). The public key PK is not in a secret state and is made public so that anyone can obtain it. On the other hand, the secret key SK is kept secret.

暗号化は、公開鍵PKを用いて、送信したいメッセージmを、暗号化関数EncによりC=EncPK(m)となるようにして、暗号文Cを生成することにより行う。この暗号文Cは、秘密鍵SKを用いてのみ、復号化関数Decによりm=DecSK(C)として復号できる。つまり、暗号文Cは、公開鍵PKを用いては復号できない。 Encryption is performed by generating a ciphertext C by using the public key PK so that the message m to be transmitted is C = Enc PK (m) by the encryption function Enc. This ciphertext C can be decrypted as m = Dec SK (C) by the decryption function Dec only using the secret key SK. That is, the ciphertext C cannot be decrypted using the public key PK.

また、公開鍵署名方式では、送信したいメッセージmを、署名化関数Sigによりs=SigSK(m)となるように署名化して、署名文(m,s)を生成することにより認証して送信する。署名文の検証は、公開鍵PKを用いて、検証化関数Verによって、メッセージm’=VerPK(s)を求め、メッセージmとメッセージm’とを比較することにより行う。つまり、メッセージmとメッセージm’が一致した場合は、その署名文(m,s)が正しいことを検証する。そうではない場合は、署名文(m,s)が正しい署名文ではないことになる。 In the public key signature method, the message m to be transmitted is signed by the signing function Sig so that s = Sig SK (m), and a signature sentence (m, s) is generated to authenticate and transmit. To do. Verification of the signature text is performed by obtaining a message m ′ = Ver PK (s) by using the verification function Ver using the public key PK, and comparing the message m with the message m ′. That is, when the message m and the message m ′ match, it is verified that the signature sentence (m, s) is correct. Otherwise, the signature text (m, s) is not a correct signature text.

周知のRSA公開鍵方式においては、nを2つのランダムに選択された大きな第1の素数pと第2の素数qの積(すなわち、n=p・q)とし、第1の所定の数eを、当該数eと(p−1)・(q−1)の最大公約数が1であるような任意の数(例えば、e=3あるいはe=216+1)とし、第2の所定の数dを、e−1 mod ((p−1)・(q−1))とすると、この場合に、公開鍵は(e,n)であり、秘密鍵は(d,n)となる。 In the well-known RSA public key system, n is a product of two randomly selected large first primes p and second primes q (ie, n = p · q), and a first predetermined number e Is an arbitrary number (for example, e = 3 or e = 2 16 +1) such that the greatest common divisor of the number e and (p−1) · (q−1) is 1, and the second predetermined number If the number d is e −1 mod ((p−1) · (q−1)), then the public key is (e, n) and the secret key is (d, n).

安全性を最大化するには、第1の素数pと第2の素数qを同じ長さにする。一般に、暗号システムでは、その安全性のレベルを記述するセキュリティパラメータを有する。RSA公開鍵方式において、セキュリティパラメータをkにすると2k−1<n<2である。 In order to maximize the safety, the first prime number p and the second prime number q are made the same length. Generally, cryptographic systems have security parameters that describe their level of security. In the RSA public key method, when the security parameter is k, 2 k−1 <n <2 k .

メッセージm(m∈Z )に対して、暗号化関数Encは、
EncPK(m)=m mod n
であり、復号化関数Decは、
DecSK(C)=C mod n
である。ここで、暗号文Cと公開鍵(e,n)が与えられた時、メッセージmを求めることは、計算量的に困難である。RSA公開鍵暗号方式は、大きな数nの素因数分解が難しいことから安全性を得ている。また、公開鍵署名方式では、署名化関数Sigは、
SigSK(m)=m mod n
であり、検証化関数Verは、
VerPK(s)=s mod n
である。
For the message m (mεZ n * ), the encryption function Enc is
Enc PK (m) = m e mod n
And the decryption function Dec is
Dec SK (C) = C d mod n
It is. Here, when the ciphertext C and the public key (e, n) are given, it is difficult in terms of calculation amount to obtain the message m. The RSA public key cryptosystem is secure because it is difficult to factorize a large number n. In the public key signature method, the signing function Sig is
Sig SK (m) = m d mod n
And the verification function Ver is
Ver PK (s) = s e mod n
It is.

ここでは、ハッシュ関数Hのセキュリティパラメータを、v(ただし、1/2は無視できるほど小さいと仮定する)にし、オンライン攻撃に対するセキュリティパラメータをKon(例えば、Kon=2−40)にする。セキュリティパラメータKonは、攻撃者が短い系列(例えば、パスワードなど)に対して、一回のオンライン攻撃で得られる成功確率より小さく設定される。 Here, the security parameter of the hash function H is v (provided that 1/2 v is negligibly small), and the security parameter for the online attack is K on (for example, K on = 2-40 ). . The security parameter K on is set to be smaller than the success probability obtained by a single online attack for a series of short attackers (for example, a password).

集合{0,1}は有限の2進数のストリングの集合を示し、集合{0,1}は長さvの2進数のストリングの集合を示す。この場合に、ハッシュ関数Hは、集合{0,1}の入力から集合{0,1}の出力を出す安全な一方向関数であり、FDH(Full−Domain Hash)関数Gは、集合{0,1}の入力から認証データZ \{1}の出力を出す安全な一方向関数である。乱数発生器から発生される乱数としては、乱数t(t∈Z )を無作為に生成する。‖は値を連結(concatenation)するという意味である。ここでの記号CとSは、それぞれユーザとサーバを表すIDである。 The set {0, 1} * indicates a set of finite binary strings, and the set {0, 1} v indicates a set of binary strings of length v. In this case, the hash function H is a safe one-way function that outputs the output of the set {0, 1} v from the input of the set {0, 1} * , and the FDH (Full-Domain Hash) function G is This is a safe one-way function that outputs the authentication data Z n * \ {1} from the input of {0, 1} * . A random number t (tεZ n * ) is randomly generated as a random number generated from the random number generator. ‖ Means that the values are concatenated. The symbols C and S here are IDs representing the user and the server, respectively.

このような認証システムにおいて特徴的なことは、与えられたセキュリティパラメータKonに対して、L(エル)を1以上logon −1┐以下の範囲で変化させ、e≧(Kon −1/Lを満たし、(m mod n)の計算量が最も小さくなる素数e(計算量が同じ場合にはその中で最大の素数e)と、それより計算量は大きいが、Lが小さくなる素数e(計算量が同じ場合にはその中でLが最も小さくなる素数eを選択し、計算量とLが同じ場合にはその中で最も大きな素数e)を選択することである。 Such characteristic may in an authentication system, for a given security parameter K on, L a (El) is changed in one or more log 3 K on -1┐ the range, e ≧ (K met on -1 / L) ┐, ( m and e mod n) of the amount of calculation smallest prime number e (calculation amount greatest prime e are in that case the same), but the amount of calculation than the larger , Select a prime e that makes L small (if the calculation amount is the same, select the prime e that has the smallest L, and if the calculation amount and L are the same, select the largest prime e among them). It is.

具体的には、数値例として、Kon=2−40の場合、素数eとして、257、12289、1179649、2748779069441(その際のL(エル)にはそれぞれ5、3、2、1)が選択され、Kon=2−20の場合、素数eとして、17,41,1153,1179649(その際のLにはそれぞれ5、4、2、1)が選択される。 Specifically, as a numerical example, for K on = 2 -40, as a prime e, 257,12289,1179649,2748779069441 (respectively 5,3,2,1 The L (El) at that time) is selected It is, in the case of K on = 2 -20, as a prime e, 17,41,1153,1179649 (each of the L at that time 5,4,2,1) is selected.

<認証システムの初期化>
まず、ユーザは、自分の短い系列(例えば、パスワードなど)を入力して、これをサーバに安全に登録することにより認証システムの初期化を行う。すなわち、ユーザは自分の短い系列(パスワードpw)を、直接にサーバに渡したり、郵便で送付したり、あるいは電話で知らせるなどして、安全に通知する必要がある。サーバは、サーバの認証装置の内部にあるメモリへユーザの端末装置200のユーザID(C)とパスワードpwを記憶して保存する。これにより、認証システムを初期化する。
<Initialization of authentication system>
First, the user inputs his short series (for example, a password) and initializes the authentication system by securely registering it in the server. That is, the user needs to notify his / her short series (password pw) safely by handing it to the server, sending it by mail, or notifying it by telephone. The server stores and saves the user ID (C) of the user terminal device 200 and the password pw in a memory inside the authentication device of the server. Thereby, the authentication system is initialized.

次に、前述した初期化を行った後、ユーザの端末装置200とサーバの認証装置300との間で、相互認証および鍵交換の処理を行う。この動作について、図2および図3を参照して説明する。ここで、図2は、ユーザの端末装置200のシステム構成を詳細に示す図であり、図3は、サーバの認証装置300のシステム構成を詳細に示す図である。図2に示すように、ユーザの端末装置200は、通信処理部210、ユーザ側質問生成・応答確認装置220、ユーザ側認証用データ生成装置230、およびユーザ側認証結果判定装置240により構成されており、サーバの認証装置300は、図3に示すように、通信処理部310,サーバ側RSA鍵生成・応答生成装置320、サーバ側認証用データ生成装置330、およびサーバ側認証結果判定装置340から構成されている。   Next, after the initialization described above, mutual authentication and key exchange processing are performed between the user terminal device 200 and the server authentication device 300. This operation will be described with reference to FIG. 2 and FIG. Here, FIG. 2 is a diagram showing in detail the system configuration of the user terminal device 200, and FIG. 3 is a diagram showing in detail the system configuration of the server authentication device 300. As shown in FIG. 2, the user terminal device 200 includes a communication processing unit 210, a user-side question generation / response confirmation device 220, a user-side authentication data generation device 230, and a user-side authentication result determination device 240. As shown in FIG. 3, the server authentication apparatus 300 includes a communication processing unit 310, a server-side RSA key generation / response generation apparatus 320, a server-side authentication data generation apparatus 330, and a server-side authentication result determination apparatus 340. It is configured.

短い系列を用いた認証システム100では、サーバの認証装置300は、RSA公開鍵方式に従って公開鍵と秘密鍵の対を生成し、その公開鍵をユーザの端末装置200に、通信路110を介して送信する。この通信路110を介する通信は安全でない通信であるため、つまり、その公開鍵は、安全が約束されていない通信路110を利用して送信されることになるため、ユーザは、受信した公開鍵が正しいかどうかを決定する必要がある。   In the authentication system 100 using a short sequence, the server authentication device 300 generates a public key / private key pair according to the RSA public key method, and the public key is transmitted to the user terminal device 200 via the communication path 110. Send. Since the communication via the communication path 110 is an insecure communication, that is, the public key is transmitted using the communication path 110 whose safety is not promised, the user receives the received public key. Need to determine if is correct.

この決定は、具体的には、サーバが提供した公開鍵の素数eと(p−1)・(q−1)の最大公約数が1であるかどうか(すなわち、gcd(e,(p−1)・(q−1))=1であるかどうか)を決定する。そのために、ユーザはRSA暗号方式あるいはRSA署名方式を使った質問・応答方式を利用する場合の実施例について説明する。   Specifically, this determination is made based on whether the prime e of the public key provided by the server and the greatest common divisor of (p−1) · (q−1) are 1 (that is, gcd (e, (p− 1) (q-1)) = 1) or not. Therefore, an embodiment will be described in which the user uses a question / response system using the RSA encryption system or the RSA signature system.

まず、サーバの認証装置300の動作について説明する。
<サーバの動作>
(1)質問・応答方式を利用する場合(第1の実施例):
図4はサーバ側RSA鍵生成・応答生成装置の第1の実施例の構成を示す図であり、図5はサーバ側認証用データ生成装置の第1の実施例の構成を示す図であり、図6はサーバ側認証結果判定装置の第1の実施例の構成を示す図である。これらの図4〜図6を参照して、第1の実施例の質問・応答方式を利用するサーバの認証装置の動作例について説明する。
First, the operation of the server authentication device 300 will be described.
<Server operation>
(1) When using a question / response system (first embodiment):
FIG. 4 is a diagram showing a configuration of the first embodiment of the server-side RSA key generation / response generation device, and FIG. 5 is a diagram showing a configuration of the first embodiment of the server-side authentication data generation device, FIG. 6 is a diagram showing the configuration of the first embodiment of the server-side authentication result determination apparatus. With reference to FIG. 4 to FIG. 6, an operation example of the server authentication apparatus using the question / response method of the first embodiment will be described.

図4に示すように、まず、サーバ側RSA鍵生成・応答生成装置320に設けられているRSA鍵生成器321により、公開鍵(e,n)と秘密鍵(d,n)の対を生成する。通信処理部310は、サーバID(S)とRSA鍵生成器321により生成された公開鍵(e,n)をユーザの端末装置200へ送信する。その際、公開鍵の素数eについては予め決められた記号を送ることで指定してもよい。秘密鍵(d,n)は質問適切性判断部322に送られる。   As shown in FIG. 4, first, a pair of a public key (e, n) and a secret key (d, n) is generated by the RSA key generator 321 provided in the server-side RSA key generation / response generation apparatus 320. To do. The communication processing unit 310 transmits the server ID (S) and the public key (e, n) generated by the RSA key generator 321 to the user terminal device 200. At this time, the prime e of the public key may be specified by sending a predetermined symbol. The secret key (d, n) is sent to the question appropriateness determination unit 322.

質問適切性判断部322は、ユーザの端末装置200から受信した暗号文のデータ(C,{c1≦i≦L)とRSA鍵生成器321から生成されて送られた秘密鍵(d,n)入力として、暗号文{c1≦i≦Lの適切性を判断する。受信した暗号文のデータ数だけ、つまり、すべてのiに対して最大公約数gcd(c,n)が1になるか否かを確認する。ここで、LはL=log(Kon −1になるような整数である。 The question appropriateness determination unit 322 includes the ciphertext data (C, {c i } 1 ≦ i ≦ L ) received from the user terminal device 200 and the secret key (d) generated and sent from the RSA key generator 321. , N) As an input, determine the appropriateness of the ciphertext {c i } 1 ≦ i ≦ L. It is confirmed whether or not the greatest common divisor gcd (c i , n) is 1 for the number of received ciphertext data, that is, for all i. Here, L is an integer such that L = ┌ log e (K on -1) ┐.

質問適切性判断部322において、最大公約数gcd(c,n)と1が一致しないiが一つでもあった場合、質問適切性判断部322はエラーメッセージ発生器324に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器324はエラーを発生して、システムの処理を中断する。一方、質問適切性判断部322において、すべてのiに対する最大公約数gcd(c,n)と1が一致した場合には、その暗号文{c1≦i≦Lが適切なものとして判断して、応答生成器323に秘密鍵(d,n)と暗号文{c1≦i≦Lを出力する。応答生成器323は、質問適切性判断部322からの秘密鍵(d,n)と暗号文{c1≦i≦Lを入力として、すべてのiに対する
「r’=c mod n」と
「v=H(00‖i‖r’ ‖n)」
を計算する。通信処理部310は応答生成器323により計算された応答{v1≦i≦Lをユーザの端末装置200へ送信する。
In the question appropriateness determination unit 322, if there is even one i that does not match the greatest common divisor gcd (c i , n), the question appropriateness determination unit 322 does not match the error message generator 324. Notify that. In response to this, the error message generator 324 generates an error and interrupts the processing of the system. On the other hand, in the question appropriateness determination unit 322, when the greatest common divisor gcd (c i , n) for all i matches 1, the ciphertext {c i } 1 ≦ i ≦ L is deemed appropriate. Judgment is made, and a secret key (d, n) and ciphertext {c i } 1 ≦ i ≦ L are output to the response generator 323. The response generator 323 receives the secret key (d, n) from the question appropriateness determination unit 322 and the ciphertext {c i } 1 ≦ i ≦ L as input, and “r i ′ = c i d mod for all i. n "and" v i = H (00‖i‖r i '‖n) "
Calculate The communication processing unit 310 transmits the response {v i } 1 ≦ i ≦ L calculated by the response generator 323 to the user terminal device 200.

次に、図5を参照すると、サーバ側認証用データ生成装置330に備えられたメモリ332から、先に保存されたユーザID(C)と短い系列(pw)を読み出す。マスク生成器331はメモリ332から読み出した短い系列のパスワードpwと、サーバ側RSA鍵生成・応答生成装置320の応答生成器323(図4)から出力された秘密鍵(d,n)を入力として、FDH関数G(n,pw)によりマスクを計算して、秘密鍵(d,n)とともに出力する。RSA復号演算器333は、ユーザの端末装置200から受信した認証データZとマスク生成器から出力されたFDH関数G(n,pw)と秘密鍵(d,n)を入力として、t’を、
t’=(Z/G(n,pw)) mod n
により計算して出力する。認証子生成器334は、RSA復号演算器333から入力された認証用のデータ(n,Z,t’)とメモリ332から読み出したパスワードpwから認証子Vを、ハッシュ関数Hにより、
=H(01‖C‖S‖n‖Z‖pw‖t’)
として計算して、認証子Vとデータ「trans」を出力する。ここで、データ「trans」は(C‖S‖n‖Z‖pw‖t’)である。通信処理部310は、認証子生成器334により計算して得られた認証子Vをユーザの端末装置200へ送信する。
Next, referring to FIG. 5, the previously stored user ID (C) and short sequence (pw) are read from the memory 332 provided in the server-side authentication data generation device 330. The mask generator 331 receives the short password pw read from the memory 332 and the secret key (d, n) output from the response generator 323 (FIG. 4) of the server-side RSA key generator / response generator 320. , The mask is calculated by the FDH function G (n, pw), and is output together with the secret key (d, n). The RSA decryption calculator 333 receives the authentication data Z received from the user terminal device 200, the FDH function G (n, pw) and the secret key (d, n) output from the mask generator, and inputs t ′,
t ′ = (Z / G (n, pw)) d mod n
Calculate and output by The authenticator generator 334 generates the authenticator V S from the authentication data (n, Z, t ′) input from the RSA decryption calculator 333 and the password pw read from the memory 332 by using the hash function H.
V S = H (01‖C‖S‖n‖Z‖pw‖t ')
And the authenticator V S and the data “trans” are output. Here, the data “trans” is (C‖S‖n‖Z‖pw‖t '). The communication processing unit 310 transmits the authenticator V S calculated by the authenticator generator 334 to the user terminal device 200.

続いて、サーバ側認証結果判定装置340の認証結果判断部341(図6)は、ユーザの端末装置200から受信した認証子Vと認証子生成器334から出力されたデータ「trans」を入力として、ハッシュ関数H(10‖trans)を計算して、ユーザの端末装置200から受信した認証子Vと比較する。ここで、ハッシュ関数Hの代わりにMAC(Message Authentication Code)を使ってもよい。認証結果判断部341において認証子Vとハッシュ関数H(10‖trans)が一致しない場合、認証結果判断部341は、エラーメッセージ発生器342に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器342はエラーを発生して、システムの処理を中断する。一方、認証結果判断部341において認証子Vとハッシュ関数H(10‖trans)が一致した場合は、ユーザの端末装置200が正当な装置として認証して、セッション鍵生成器343は、SK=H(11‖trans)によりセッション鍵SKを生成して出力する。 Subsequently, the authentication result determination unit 341 of the server side authentication result determination device 340 (FIG. 6), the input and authenticator V C data "trans" outputted from the authenticator generating unit 334 received from the terminal apparatus 200 of the user as it calculates the hash function H (10‖trans), compared with the authenticator V C received from the terminal apparatus 200 of the user. Here, instead of the hash function H, a MAC (Message Authentication Code) may be used. When the authentication result determination unit 341 in the authenticator V C and the hash function H (10‖trans) do not match, the authentication result determination unit 341 notifies the error message generator 342, do not coincide. In response, the error message generator 342 generates an error and interrupts the processing of the system. On the other hand, if the authentication result determination unit 341 authenticator V C and the hash function H (10‖trans) match, the terminal device 200 of the user to authenticate a legitimate device, the session key generator 343, SK = A session key SK is generated and output by H (11‖trans).

(2)質問・応答方式を利用する場合(第2の実施例):
次に、第2の実施例の質問・応答方式を利用するサーバの認証装置の動作例について説明する。図7はサーバ側RSA鍵生成・応答生成装置の第2の実施例の構成を示す図である。サーバ側認証用データ生成装置については、図5に示した第1の構成例と同じものが用いられる。サーバ側認証結果判定装置は、図6に示した第1の構成例と同じものが用いられる。これらの図5〜図7を参照して、第2の実施例の質問・応答方式を利用するサーバの認証装置300の動作について説明する。
(2) When using a question / response system (second embodiment):
Next, an operation example of the server authentication apparatus using the question / response system of the second embodiment will be described. FIG. 7 is a diagram showing the configuration of the second embodiment of the server-side RSA key generation / response generation apparatus. As the server-side authentication data generation device, the same device as the first configuration example shown in FIG. 5 is used. The same server side authentication result determination apparatus as that of the first configuration example shown in FIG. 6 is used. The operation of the server authentication apparatus 300 that uses the question / response system of the second embodiment will be described with reference to FIGS.

図7に示すように、第2の実施例のサーバ側RSA鍵生成・応答生成装置350は、RSA鍵生成器351および応答生成器352から構成されている。第2の実施例の動作では、第1実施例の動作と同様に、まず、サーバ側RSA鍵生成・応答生成装置350のRSA鍵生成器351により、公開鍵(e,n)と秘密鍵(d,n)の対を生成する。サーバの認証装置300は、通信処理部310を介して、サーバID(S)と、RSA鍵生成器351により生成された公開鍵(e,n)をユーザの端末装置200へ送信する。その際、公開鍵の素数eについては予め決められた記号を送ることで指定してもよい。   As shown in FIG. 7, the server-side RSA key generation / response generation apparatus 350 of the second embodiment includes an RSA key generator 351 and a response generator 352. In the operation of the second embodiment, similar to the operation of the first embodiment, first, the RSA key generator 351 of the server-side RSA key generation / response generation apparatus 350 uses the public key (e, n) and the private key ( d, n) pairs are generated. The server authentication device 300 transmits the server ID (S) and the public key (e, n) generated by the RSA key generator 351 to the user terminal device 200 via the communication processing unit 310. At this time, the prime e of the public key may be specified by sending a predetermined symbol.

応答生成器352は、RSA鍵生成器351からの秘密鍵(d,n)とユーザの端末装置200から、ユーザID(C)と共に受信した乱数rを入力として、すべてのiに対して、FDH関数Gにより、
=G(i,r,n)
=x mod n
を計算する。サーバの認証装置300は、通信処理部310を介して、応答生成器352により計算された応答{y1≦i≦Lをユーザの端末装置200へ送信する。ここで、LはL=log(Kon −1になるような整数である。
The response generator 352 receives the private key (d, n) from the RSA key generator 351 and the random number r received together with the user ID (C) from the user terminal device 200, and inputs FDH to all i. By function G
x i = G (i, r, n)
y i = x i d mod n
Calculate The server authentication device 300 transmits the response {y i } 1 ≦ i ≦ L calculated by the response generator 352 to the user terminal device 200 via the communication processing unit 310. Here, L is an integer such that L = ┌ log e (K on -1) ┐.

次に、サーバ側認証用データ生成装置330に備えられたメモリ332から、先に保存されたユーザID(C)と短い系列(pw)を読み出す。マスク生成器331はメモリ332から読み出したパスワードpwと応答生成器323から出力された秘密鍵(d,n)を入力として、FDH関数G(n,pw)によりマスクを計算して、秘密鍵(d,n)とともに出力する。RSA復号演算器333は、ユーザの端末装置200から受信した認証データZとマスク生成器331から出力されたFDH関数Gの計算結果G(n,pw)と、秘密鍵(d,n)を入力として、t’を、
t’=(Z/G(n,pw)) mod n
により計算して出力する。認証子生成器334は、RSA復号演算器333から入力されたデータ(n,Z,t’)とメモリ332から読み出したパスワードpwから認証子Vを、
=H(01‖C‖S‖n‖Z‖pw‖t’)
により計算し、認証子Vとデータ「trans」を出力する。ここで、データ「trans」は(C‖S‖n‖Z‖pw‖t’)である。サーバの認証装置300は、通信処理部310により、認証子生成器334により計算して得られた認証子Vをユーザの端末装置200へ送信する。
Next, the previously stored user ID (C) and short sequence (pw) are read from the memory 332 provided in the server-side authentication data generation device 330. The mask generator 331 receives the password pw read from the memory 332 and the secret key (d, n) output from the response generator 323 as inputs, calculates a mask using the FDH function G (n, pw), and generates a secret key ( d, n). The RSA decryption calculator 333 receives the authentication data Z received from the user terminal device 200, the calculation result G (n, pw) of the FDH function G output from the mask generator 331, and the secret key (d, n). As t ′,
t ′ = (Z / G (n, pw)) d mod n
Calculate and output by The authenticator generator 334 obtains the authenticator V S from the data (n, Z, t ′) input from the RSA decryption calculator 333 and the password pw read from the memory 332.
V S = H (01‖C‖S‖n‖Z‖pw‖t ')
And the authenticator V S and the data “trans” are output. Here, the data “trans” is (C‖S‖n‖Z‖pw‖t '). In the server authentication apparatus 300, the communication processing unit 310 transmits the authentication code V S calculated by the authentication code generator 334 to the user terminal device 200.

続いて、サーバ側認証結果判定装置340の認証結果判断部341(図6)は、ユーザの端末装置200から受信した認証子Vと認証子生成器334(図5)から出力されたデータ「trans」を入力として、ハッシュ関数H(10‖trans)を計算して、ユーザの端末装置200から受信した認証子Vと比較する。ここで、ハッシュ関数Hの代わりにMAC(Message Authentication Code)を使ってもよい。認証結果判断部341において認証子Vとハッシュ関数Hによる計算結果H(10‖trans)が一致しない場合、認証結果判断部341は、エラーメッセージ発生器342に対して、一致しないことを通知する。この通知を受けて、エラーメッセージ発生器342はエラーを発生して、システムの処理を中断する。一方、認証結果判断部341において、認証子Vとハッシュ関数Hの計算結果H(10‖trans)が一致した場合は、ユーザの端末装置200を正当な装置であるとして認証して、セッション鍵生成器343は、ハッシュ関数Hを計算し、SK=H(11‖trans)により、セッション鍵SKを生成して出力する。 Subsequently, the authentication result of the determination unit 341 (FIG. 6) of the server-side authentication result judging unit 340, the data output from the authenticator V C and authenticator generating unit 334 received from the terminal apparatus 200 of the user (FIG. 5) " as input trans ", by calculating the hash function H (10‖trans), compared with the authenticator V C received from the terminal apparatus 200 of the user. Here, instead of the hash function H, a MAC (Message Authentication Code) may be used. If authenticator in the authentication result determination section 341 V C and the hash function H by the calculation result H (10‖trans) do not match, the authentication result determination unit 341 notifies the error message generator 342 does not match . Upon receiving this notification, the error message generator 342 generates an error and interrupts the processing of the system. On the other hand, the authentication at the result of the determination unit 341, if the authenticator V C and the hash function H of the calculation result H (10‖trans) match, authenticates the terminal device 200 of the user as a legitimate device, the session key The generator 343 calculates a hash function H, and generates and outputs a session key SK according to SK = H (11‖trans).

次にユーザの端末装置200の動作について説明する。
<ユーザの端末装置の動作>
(1)質問・応答方式を利用する場合(第1の実施例):
図8はユーザ側質問生成・応答確認装置の第1の実施例の構成を示す図であり、図9はユーザ側認証用データ生成装置の第1の実施例の構成を示す図であり、図10はユーザ側認証結果判定装置の第1の実施例の構成を示す図である。これらの図8〜図10を参照して、第1の実施例の質問・応答方式を利用するサーバの端末装置の動作例について説明する。
Next, the operation of the user terminal device 200 will be described.
<Operation of user terminal device>
(1) When using a question / response system (first embodiment):
FIG. 8 is a diagram showing the configuration of the first embodiment of the user-side question generation / response confirmation apparatus, and FIG. 9 is the diagram showing the configuration of the first embodiment of the user-side authentication data generation apparatus. 10 is a diagram showing the configuration of the first embodiment of the user side authentication result determination apparatus. With reference to these FIG. 8 to FIG. 10, an operation example of the terminal device of the server using the question / response method of the first embodiment will be described.

図8に示すように、ユーザ側質問生成・応答確認装置220のRSA鍵適切性判断部22は、サーバの認証装置300から受信したサーバID(S)と公開鍵(e,n)を入力として、RSA公開鍵(e,n)の適切性を判断する。つまり、公開鍵eが素数(もしくは予め指定された集合の要素)であり、かつ素数の積nがkビットの奇数であることを確認する。それらが確認できない場合、RSA鍵適切性判断部221は、エラーメッセージ発生器222に対して、確認が取れないことを通知する。これを受けて、エラーメッセージ発生器222はエラーを発生して、システムの処理を中断する。一方、RSA鍵適切性判断部221において、公開鍵eと素数の積nの妥当性が確認できた場合は、サーバのRSA公開鍵(e,n)が適切なものとして判断して、質問生成器224に、公開鍵(e,n)を出力する。   As shown in FIG. 8, the RSA key appropriateness determination unit 22 of the user-side question generation / response confirmation apparatus 220 receives the server ID (S) and the public key (e, n) received from the server authentication apparatus 300 as inputs. , The adequacy of the RSA public key (e, n) is determined. That is, it is confirmed that the public key e is a prime number (or an element of a set designated in advance) and the product n of prime numbers is an odd number of k bits. If they cannot be confirmed, the RSA key appropriateness determination unit 221 notifies the error message generator 222 that confirmation cannot be obtained. In response, the error message generator 222 generates an error and interrupts the processing of the system. On the other hand, if the validity of the product n of the public key e and the prime number can be confirmed in the RSA key appropriateness determination unit 221, it is determined that the RSA public key (e, n) of the server is appropriate, and a question is generated. The public key (e, n) is output to the device 224.

質問生成器224は乱数発生器223によりランダムに発生させた乱数{r1≦i≦L(r∈Z )と、RSA鍵適切性判断部221により出力されたRSA公開鍵(e,n)とを入力として、各iに対して暗号文「c=r mod n」を計算して、出力する。ここで、LはL=log(Kon −1になるような整数である。 The question generator 224 uses a random number {r i } 1 ≦ i ≦ L (r i εZ n * ) randomly generated by the random number generator 223, and the RSA public key output by the RSA key appropriateness determination unit 221 ( e, n) as an input, ciphertext “c i = r i e mod n” is calculated and output for each i. Here, L is an integer such that L = ┌ log e (K on -1) ┐.

質問適切性判断部225は、質問生成器224により出力された暗号文cの適切性を判断する。質問適切性判断部225において最大公約数gcd(c,n)と1が一致しない場合、質問適切性判断部225は、質問生成器224を再び呼び出し、iに対する暗号文cを計算して出力させる。一方、質問適切性判断部225において、すべてのiに対する最大公約数gcd(c,n)と1が一致した場合は、暗号文{c1≦i≦Lが適切なものとして判断して、暗号文{c1≦i≦Lを出力する。ユーザの端末装置200は、通信処理部210を介して、質問適切性判断部225によって、出力された暗号文{c1≦i≦LとユーザID(C)をサーバの認証装置300へ送信する。 Question appropriateness determination unit 225 determines the appropriateness of the ciphertext c i output by the question generator 224. In the question suitability determination unit 225, when the greatest common divisor gcd (c i , n) and 1 do not match, the question suitability determination unit 225 calls the question generator 224 again to calculate the ciphertext ci for i. Output. On the other hand, in the question appropriateness determination unit 225, when the greatest common divisor gcd (c i , n) for all i matches 1, the ciphertext {c i } 1 ≦ i ≦ L is determined to be appropriate. The ciphertext {c i } 1 ≦ i ≦ L is output. The user terminal device 200 sends the ciphertext {c i } 1 ≦ i ≦ L and user ID (C) output by the question appropriateness determination unit 225 and the user ID (C) to the server authentication device 300 via the communication processing unit 210. Send.

応答確認判断部226は、質問生成器224から出力された公開鍵(e,n)と乱数{r1≦i≦Lと、サーバの認証装置300から受信した応答{v1≦i≦Lを入力として、応答{v1≦i≦Lの確認を行う。応答確認判断部226において、応答vとハッシュ関数Hによる計算結果H(00‖i‖r‖n)が一致しないiが一つでもあった場合、応答確認判断部226は、エラーメッセージ発生器227に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器227はエラーを発生して、システムの処理を中断する。一方、応答確認判断部226において、すべてのiに対する応答viとハッシュ関数Hによる計算結果H(00‖i‖r‖n)が一致した場合は、サーバの応答の確認が取れたと判断して、公開鍵(e,n)を出力する。 Acknowledgment determination unit 226, the public key output from the question generator 224 (e, n) and the random number {r i} 1 and ≦ i ≦ L, the response received from the authentication device 300 of the server {v i} 1 ≦ With i ≦ L as an input, the response {v i } 1 ≦ i ≦ L is confirmed. If there is at least one i in which the response v i and the calculation result H (00vi‖r i ‖n) by the hash function H do not match in the response confirmation determination unit 226, the response confirmation determination unit 226 generates an error message. The device 227 is notified of the mismatch. In response to this, the error message generator 227 generates an error and interrupts the processing of the system. On the other hand, in response confirmation determination section 226, if all the calculation results of the response vi and a hash function H to i H (00‖i‖r i ‖n) matches, it is determined that 0.00 verify server response The public key (e, n) is output.

図9を参照すると、次に、ユーザ側認証用データ生成装置230のRSA暗号演算器232は、応答確認判断部226からの公開鍵(e,n)と乱数発生器231によりランダムに発生させた乱数t(t∈Z )を入力として、暗号文zを「z=t mod n」により計算して、乱数t,公開鍵(e,n)とともに、これらのデータ(z,t,(e,n))を出力する。 Referring to FIG. 9, next, the RSA encryption calculator 232 of the user side authentication data generation device 230 is randomly generated by the public key (e, n) from the response confirmation determination unit 226 and the random number generator 231. Using the random number t (tεZ n * ) as an input, the ciphertext z is calculated by “z = t e mod n”, and together with the random number t and the public key (e, n), these data (z, t, (E, n)) is output.

一方、マスク生成器233は、ユーザが入力した短い系列(例えば、パスワードpwなど)によりFDH関数G(n,pw)を計算して出力するので、認証データ生成器234は、RSA暗号演算器から出力された認証用のデータ(z,t,(e,n))とマスク生成器から出力されたFDH関数G(n,pw)を入力として、認証データZを「Z=z・G(n,pw) mod n」により計算して、データ「trans」とともに出力する。ここで、データ「trans」は(C‖S‖n‖Z‖pw‖t)である。ユーザの端末装置200は、通信処理部210によって、認証データ生成器234により出力された認証データZをサーバの認証装置300へ送信する。   On the other hand, since the mask generator 233 calculates and outputs the FDH function G (n, pw) using a short sequence (for example, password pw) input by the user, the authentication data generator 234 receives from the RSA encryption calculator. Using the output authentication data (z, t, (e, n)) and the FDH function G (n, pw) output from the mask generator as input, the authentication data Z is expressed as “Z = z · G (n , Pw) mod n ”and output together with the data“ trans ”. Here, the data “trans” is (C‖S‖n‖Z‖pw‖t). The user terminal device 200 transmits the authentication data Z output from the authentication data generator 234 to the server authentication device 300 by the communication processing unit 210.

図10に示すように、続いて、ユーザ側認証結果判定装置240における認証結果判断部241は、サーバの認証装置300から受信した認証子VSと認証データ生成器234から出力されたデータ「trans」を入力として、ハッシュ関数H(01‖trans)を計算して、サーバの認証装置300から受信した認証子VSと比較する。ここで、ハッシュ関数Hの代わりにMAC(Message Authentication Code)を使ってもよい。認証結果判断部241において、認証子VSとハッシュ関数H(01‖trans)が一致しない場合、認証結果判断部241は、エラーメッセージ発生器242に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器242はエラーを発生して、システムの処理を中断する。   As illustrated in FIG. 10, the authentication result determination unit 241 in the user-side authentication result determination device 240 subsequently receives the authenticator VS received from the server authentication device 300 and the data “trans” output from the authentication data generator 234. As an input, the hash function H (01‖trans) is calculated and compared with the authenticator VS received from the authentication device 300 of the server. Here, instead of the hash function H, a MAC (Message Authentication Code) may be used. In the authentication result determination unit 241, when the authenticator VS and the hash function H (01 認証 trans) do not match, the authentication result determination unit 241 notifies the error message generator 242 that they do not match. In response to this, the error message generator 242 generates an error and interrupts the processing of the system.

一方、認証結果判断部241において認証子Vとハッシュ関数H(01‖trans)が一致した場合は、認証子Vを送信したサーバの認証装置300が正当な装置として認証して、データ「trans」を出力する。認証子生成器243は、認証結果判断部241から入力されたデータ「trans」から認証子Vを「V=H(10‖trans)」により計算して、認証子Vとデータ「trans」を出力する。ユーザの端末装置200は、通信処理部210によって、認証子生成器243により出力された認証子Vをサーバの認証装置300へ送信する。セッション鍵生成器244は、認証子生成器243により出力されたデータ「trans」を入力として、ハッシュ関数Hを計算し、SK=H(11‖trans)により、セッション鍵SKを生成して出力する。 On the other hand, when the authenticator V S and the hash function H (01‖trans) match in the authentication result determination unit 241, the authentication device 300 of the server that transmitted the authenticator V S authenticates as a valid device, and the data “ “trans” ”is output. Authenticator generating unit 243, the authentication result calculated input from the data "trans" from decision section 241 to authenticator V C by 'V C = H (10‖trans) ", the authenticator V C and data" trans Is output. Terminal 200 of the user, the communication processing unit 210 transmits the authenticator V C output by authenticator generating unit 243 to the authentication device 300 of the server. The session key generator 244 receives the data “trans” output from the authenticator generator 243 as an input, calculates a hash function H, generates a session key SK by SK = H (11‖trans), and outputs it. .

(2)質問・応答方式を利用する場合(第2の実施例):
次に、第2の実施例の質問・応答方式を利用するユーザの端末装置の動作例について説明する。図11は、ユーザ側質問生成・応答確認装置の第2の実施例の構成を示す図である。ユーザ側認証用データ生成装置については、図9に示した第1の構成例と同じものが用いられる。ユーザ側認証結果判定装置は、図10に示した第1の構成例と同じものが用いられる。これらの図9〜図11を参照して、第2の実施例の質問・応答方式を利用するユーザの端末装置200の動作について説明する。
(2) When using a question / response system (second embodiment):
Next, an operation example of the user terminal device using the question / response system of the second embodiment will be described. FIG. 11 is a diagram showing a configuration of a second example of the user side question generation / response confirmation apparatus. As the user-side authentication data generation device, the same device as the first configuration example shown in FIG. 9 is used. As the user side authentication result determination device, the same device as the first configuration example shown in FIG. 10 is used. With reference to FIG. 9 to FIG. 11, the operation of the user terminal device 200 using the question / response system of the second embodiment will be described.

図11に示すように、第2の実施例のユーザ側質問生成・応答確認装置250に設けられたRSA鍵適切性判断部251は、サーバの認証装置300から受信したサーバID(S)と公開鍵(e,n)を入力として、RSA公開鍵(e,n)の適切性を判断する。つまり、公開鍵eが素数(もしくは予め指定された集合の要素)であり、かつ素数の積nがkビットの奇数であることを確認する。それらが確認されない場合、RSA鍵適切性判断部251は、エラーメッセージ発生器252に対して、確認が取れないことを通知する。これを受けて、エラーメッセージ発生器252はエラーを発生して、システムの処理を中断する。   As shown in FIG. 11, the RSA key appropriateness determination unit 251 provided in the user-side question generation / response confirmation apparatus 250 of the second embodiment, discloses the server ID (S) received from the server authentication apparatus 300 and the disclosure. With the key (e, n) as input, the adequacy of the RSA public key (e, n) is determined. That is, it is confirmed that the public key e is a prime number (or an element of a set designated in advance) and the product n of prime numbers is an odd number of k bits. If they are not confirmed, the RSA key appropriateness determination unit 251 notifies the error message generator 252 that confirmation cannot be obtained. In response to this, the error message generator 252 generates an error and interrupts the processing of the system.

一方、RSA鍵適切性判断部251において、公開鍵eと素数の積nの妥当性が確認された場合は、サーバの認証装置300から送られたRSA公開鍵(e,n)が適切なものとして判断して、公開鍵(e,n)を出力する。そして、ユーザの端末装置200は、通信処理部210により、乱数発生器253においてランダムに発生させた乱数r(r∈{0,1})と、ユーザID(C)をサーバの認証装置300へ送信する。 On the other hand, when the validity of the product n of the public key e and the prime number is confirmed in the RSA key appropriateness determination unit 251, the RSA public key (e, n) sent from the server authentication device 300 is appropriate. And public key (e, n) is output. Then, the user terminal device 200 uses the communication processing unit 210 to randomly generate the random number r (rε {0, 1} v ) generated by the random number generator 253 and the user ID (C) as the server authentication device 300. Send to.

RSA暗号演算器254は、RSA鍵適切性判断部251から出力された公開鍵(e,n)とサーバの認証装置300から受信した署名{y1≦i≦Lを入力として、
{y mod n}1≦i≦L
を計算して公開鍵(e,n)とともに出力する。ここで、LはL=log(Kon −1になるような整数である。
The RSA cryptographic operation unit 254 receives the public key (e, n) output from the RSA key appropriateness determination unit 251 and the signature {y i } 1 ≦ i ≦ L received from the server authentication device 300 as inputs.
{Y i e mod n} 1 ≦ i ≦ L
Is calculated and output together with the public key (e, n). Here, L is an integer such that L = ┌ log e (K on -1) ┐.

応答確認判断部255は、乱数発生器253によりランダムに発生させた乱数rとRSA暗号演算器254により出力されたRSA公開鍵(e,n)と計算結果「{y mod n}1≦i≦L」を入力として、各iに対して応答の正当性を確認する。応答確認判断部255において、署名y とFDH関数G(i,r,n)が一致しないあるいは最大公約数gcd(y,n)と1が一致しないiが一つでもあった場合、応答確認判断部255は、エラーメッセージ発生器に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器はエラーを発生して、システムの処理を中断する。一方、応答確認判断部255において、すべてのiに対する署名y とFDH関数G(i,r,n)が一致して、かつ最大公約数gcd(y,n)と1が一致した場合は、サーバの応答の確認が取れたと判断して、公開鍵(e,n)を出力する。 The response confirmation determination unit 255 generates the random number r generated randomly by the random number generator 253, the RSA public key (e, n) output from the RSA encryption calculator 254, and the calculation result “{y i e mod n} 1 ≦i ≦ L ” is input, and the validity of the response is confirmed for each i. When there is at least one i in which the signature y i e and the FDH function G (i, r, n) do not match or the greatest common divisor gcd (y i , n) does not match 1 in the response confirmation determination unit 255, The response confirmation determination unit 255 notifies the error message generator that they do not match. In response, the error message generator generates an error and interrupts the processing of the system. On the other hand, in the response confirmation determination unit 255, when the signature y i e for all i matches the FDH function G (i, r, n) and the greatest common divisor gcd (y i , n) matches 1. Determines that the server response has been confirmed and outputs the public key (e, n).

次に、ユーザ側認証用データ生成装置230のRSA暗号演算器232(図9)は、応答確認判断部255からの公開鍵(e,n)と乱数発生器231によりランダムに発生させた乱数t(t∈Z )を入力として、暗号文zを「z=t mod n」により計算して(t,(e,n))とともに出力する。そして、マスク生成器はユーザが入力した短い系列(例えば、パスワードなど)によりG(n,pw)を計算して出力する。認証データ生成器は、RSA暗号演算器から出力された認証用のデータ(z,t,(e,n))とマスク生成器から出力されたFDH関数G(n,pw)を入力として、認証データZを「Z=z・G(n,pw) mod n」により計算して、データ「trans」とともに出力する。ここで、データ「trans」は(C‖S‖n‖Z‖pw‖t)である。ユーザの端末装置200は、通信処理部210によって、認証データ生成器234により出力された認証データZをサーバの認証装置300へ送信する。 Next, the RSA encryption calculator 232 (FIG. 9) of the user side authentication data generation device 230 uses the public key (e, n) from the response confirmation determination unit 255 and the random number t generated randomly by the random number generator 231. Using (tεZ n * ) as an input, the ciphertext z is calculated by “z = t e mod n” and output together with (t, (e, n)). Then, the mask generator calculates and outputs G (n, pw) using a short sequence (for example, a password) input by the user. The authentication data generator receives the authentication data (z, t, (e, n)) output from the RSA cryptographic calculator and the FDH function G (n, pw) output from the mask generator as inputs. Data Z is calculated by “Z = z · G (n, pw) mod n” and output together with data “trans”. Here, the data “trans” is (C‖S‖n‖Z‖pw‖t). The user terminal device 200 transmits the authentication data Z output from the authentication data generator 234 to the server authentication device 300 by the communication processing unit 210.

続いて、図10に示すように、ユーザ側認証結果判定装置240の認証結果判断部241は、サーバの認証装置300から受信した認証子Vと認証データ生成器234から出力されたデータ「trans」を入力として、ハッシュ関数H(01‖trans)を計算して、サーバの認証装置300から受信した認証子Vと比較する。ここで、ハッシュ関数Hの代わりにMAC(Message Authentication Code)を使ってもよい。認証結果判断部241において、認証子VSとハッシュ関数H(01‖trans)が一致しない場合、認証結果判断部241は、エラーメッセージ発生器242に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器242はエラーを発生して、システムの処理を中断する。 Subsequently, as illustrated in FIG. 10, the authentication result determination unit 241 of the user-side authentication result determination device 240 receives the authentication code V S received from the authentication device 300 of the server and the data “trans” output from the authentication data generator 234. ”As an input, the hash function H (01‖trans) is calculated, and compared with the authenticator V S received from the server authentication device 300. Here, instead of the hash function H, a MAC (Message Authentication Code) may be used. In the authentication result determination unit 241, when the authenticator VS and the hash function H (01 認証 trans) do not match, the authentication result determination unit 241 notifies the error message generator 242 that they do not match. In response to this, the error message generator 242 generates an error and interrupts the processing of the system.

一方、認証結果判断部241において認証子VSとハッシュ関数H(01‖trans)が一致した場合は、認証子Vを送信したサーバの認証装置300が正当な装置として認証して、データ「trans」を出力する。認証子生成器243は、認証結果判断部241から入力されたデータ「trans」から認証子Vを「V=H(10‖trans)」により計算して、認証子Vとデータ「trans」を出力する。ユーザの端末装置200は、通信処理部210によって、認証子生成器243により出力された認証子VCをサーバの認証装置300へ送信する。セッション鍵生成器244は、認証子生成器243により出力されたデータ「trans」を入力として、ハッシュ関数Hを計算し、SK=H(11‖trans)により、セッション鍵SKを生成して出力する。 On the other hand, the authentication result if the authenticator VS and the hash function H (01‖trans) match at decision 241, the authentication device 300 of the server that sent the authenticator V S is authenticated as a legitimate device, the data "trans Is output. Authenticator generating unit 243, the authentication result calculated input from the data "trans" from decision section 241 to authenticator V C by 'V C = H (10‖trans) ", the authenticator V C and data" trans Is output. The user terminal device 200 transmits the authentication code VC output from the authentication code generator 243 to the authentication device 300 of the server by the communication processing unit 210. The session key generator 244 receives the data “trans” output from the authenticator generator 243 as an input, calculates a hash function H, generates a session key SK by SK = H (11‖trans), and outputs it. .

<パスワードオンライン攻撃検出のためのログ管理及び照合方法>
本発明による認証システムは、パスワードなどの短い系列を用いてセッション鍵の確立を行うようにしているため、パスワードのオンライン攻撃を受ける可能性がある。これに対しては、認証システムにおけるセッション鍵の確立までの認証動作のログを作成することにより、作成されたログを用いて、パスワードオンライン攻撃を検出することができるシステム構成とすることができる。
<Log management and verification method for password online attack detection>
Since the authentication system according to the present invention establishes a session key using a short sequence such as a password, there is a possibility of being subjected to a password online attack. On the other hand, by creating a log of the authentication operation until the establishment of the session key in the authentication system, it is possible to have a system configuration that can detect a password online attack using the created log.

次に、このような認証システムの変形例について説明する。ログの作成は、ユーザの端末装置およびサーバの認証装置において、それぞれにログ作成するためのメモリを設け、メモリに作成したログを蓄積するシステム構成とされる。図12は、ユーザの端末装置200に設けられるログ用のユーザ側認証結果判定装置の構成を示す図であり、図13は、サーバの認証装置300に設けられるログ用のサーバ側認証結果判定装置の構成を示す図である。ユーザの端末装置200に設けられるユーザ側認証結果判定装置240が、図12に示すログ用のユーザ側認証結果判定装置440に置き換えられ、また、サーバの認証装置300に設けられるサーバ側認証結果判定装置340が、図13に示すログ用のサーバ側認証結果判定装置540に置き換えられたシステム構成となる。これにより、ログ作成に対応した認証システムとなる。   Next, a modified example of such an authentication system will be described. The log is created in a system configuration in which a memory for creating a log is provided in each of the user terminal device and the server authentication device, and the created log is stored in the memory. FIG. 12 is a diagram illustrating a configuration of a log user side authentication result determination device provided in the user terminal device 200, and FIG. 13 illustrates a log server side authentication result determination device provided in the server authentication device 300. FIG. The user side authentication result determination device 240 provided in the user terminal device 200 is replaced with the log user side authentication result determination device 440 shown in FIG. 12, and the server side authentication result determination provided in the server authentication device 300 is performed. The system configuration is such that the apparatus 340 is replaced with the log server-side authentication result determination apparatus 540 shown in FIG. Thus, an authentication system corresponding to log creation is obtained.

(1)ログ用のユーザ側認証結果判定装置の動作:
初めに、図12を参照して、ログ用のユーザ側認証結果判定装置440の動作について説明する。ユーザの端末装置200において、ユーザ側質問生成・応答確認装置220、ユーザ側認証用データ生成装置230については、先に説明した第1の実施例の構成と同様である。
(1) Operation of user authentication result determination device for log:
First, the operation of the log user side authentication result determination device 440 will be described with reference to FIG. In the user terminal device 200, the user-side question generation / response confirmation device 220 and the user-side authentication data generation device 230 are the same as the configuration of the first embodiment described above.

ログ用のユーザ側認証結果判定装置440の認証結果判断部441は、サーバの認証装置300から受信した認証子Vと認証データ生成器234から出力されたデータ「trans」を入力として、ハッシュ関数H(01‖trans)を計算して、サーバの認証装置300から受信した認証子Vと比較する。ここで、ハッシュ関数Hの代わりにMAC(Message Authentication Code)を使ってもよい。 The authentication result determination unit 441 of the log user-side authentication result determination device 440 receives the authenticator V S received from the authentication device 300 of the server and the data “trans” output from the authentication data generator 234 as an input, and the hash function H (01‖trans) is calculated and compared with the authenticator V S received from the authentication device 300 of the server. Here, instead of the hash function H, a MAC (Message Authentication Code) may be used.

認証結果判断部441において、認証子VSとハッシュ関数H(01‖trans)が一致しない場合、認証結果判断部441は、エラーメッセージ発生器442に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器442はログ用のメモリ445にログとしてハッシュ関数の計算結果h(Z)、認証子VSを時間などの属性情報とともに「log_data」として保存し、もしくはそれらが保存されているログにそのセッションが正常に終了しなかったことを記述して、エラーメッセージを発生して、システムの処理を中断する。ここで、ハッシュ関数hは安全な一方向性ハッシュ関数である。   If the authentication result VS and the hash function H (01Vtrans) do not match in the authentication result determination unit 441, the authentication result determination unit 441 notifies the error message generator 442 that they do not match. In response to this, the error message generator 442 stores the calculation result h (Z) of the hash function and the authenticator VS together with attribute information such as time as “log_data” in the log memory 445, or stores them. Indicate that the session did not end normally in the logged log, generate an error message, and suspend system processing. Here, the hash function h is a safe one-way hash function.

一方、認証結果判断部441において認証子VSとハッシュ関数H(01‖trans)が一致した場合には、サーバの認証装置300を正当な装置として認証して、データ「trans」を出力する。認証子生成器443は、認証結果判断部441から入力されたデータ「trans」から認証子Vを、V=H(10‖trans)により計算して、認証子Vとデータ「trans」を出力する。ユーザの端末装置200の通信処理部210は、認証子生成器443により出力された認証子Vをサーバの認証装置300へ送信する。セッション鍵生成器444は、認証子生成器443により出力されたデータ「trans」を入力として、ハッシュ関数Hを計算し、SK=H(11‖trans)により、セッション鍵SKを生成して出力する。 On the other hand, when the authenticator VS and the hash function H (01‖trans) match in the authentication result determination unit 441, the authentication device 300 of the server is authenticated as a valid device, and data “trans” is output. Authenticator generating unit 443, the authenticator V C from the input data "trans" from the authentication result determination unit 441, calculated by V C = H (10‖trans), the authenticator V C and data "trans" Is output. Communication processing unit 210 of the user of the terminal device 200 transmits the authenticator V C output by authenticator generating unit 443 to the authentication device 300 of the server. The session key generator 444 receives the data “trans” output from the authenticator generator 443 as an input, calculates a hash function H, and generates and outputs a session key SK with SK = H (11 し て trans). .

(2)ログ用のサーバ側認証結果判定装置の動作:
続いて、図13を参照して、ログ用のサーバ側認証結果判定装置540の動作について説明する。サーバの認証装置300において、サーバ側RSA鍵生成・応答生成装置320、サーバ側認証用データ生成装置330については、先に説明した第1の実施例の構成と同様である。
(2) Operation of server-side authentication result determination device for log:
Next, with reference to FIG. 13, the operation of the log server-side authentication result determination apparatus 540 will be described. In the server authentication apparatus 300, the server-side RSA key generation / response generation apparatus 320 and the server-side authentication data generation apparatus 330 are the same as those in the first embodiment described above.

ログ用のサーバ側認証結果判定装置540に設けられるログ用メモリ545には、ログとして、ハッシュ関数h(Z)、認証子Vを時間などのほかの属性情報とともに保存する。もしくは、それらが保存されているログにそのセッションが正常に終了しなかったことを記述する。ここで、ハッシュ関数hは安全な一方向性ハッシュ関数である。 The log memory 545 provided in the log server-side authentication result determination device 540 stores the hash function h (Z) and the authenticator V S together with other attribute information such as time as a log. Or, describe that the session did not end normally in the log where they are stored. Here, the hash function h is a safe one-way hash function.

認証結果判断部541は、ユーザの端末装置200から受信した認証子Vと認証子生成器334から出力されたデータ「trans」を入力として、ハッシュ関数H(10‖trans)を計算して、ユーザの端末装置200から受信した認証子Vと比較する。ここで、ハッシュ関数Hの代わりにMAC(Message Authentication Code)を使ってもよい。認証結果判断部541において、認証子Vとハッシュ関数H(10‖trans)が一致しない場合、認証結果判断部541は、エラーメッセージ発生器に対して、一致しないことを通知する。これを受けて、エラーメッセージ発生器はエラーを発生して、システムの処理を中断する。 Authentication result determination unit 541, as input data "trans" outputted from the authenticator V C and authenticator generating unit 334 received from the terminal apparatus 200 of the user, by calculating the hash function H (10‖trans), comparing the authenticator V C received from the user of the terminal device 200. Here, instead of the hash function H, a MAC (Message Authentication Code) may be used. In the authentication result determination unit 541, if the authenticator V C and the hash function H (10‖trans) do not match, the authentication result determination unit 541 notifies the error message generator does not match. In response, the error message generator generates an error and interrupts the processing of the system.

一方、認証結果判断部541において認証子Vとハッシュ関数H(10‖trans)が一致した場合は、ユーザの端末装置200を正当な装置として認証して、セッション鍵生成器543は、ハッシュ関数Hを計算し、SK=H(11‖trans)により、セッション鍵SKを生成して出力し、ログ用メモリ545にログとして保存されているハッシュ関数h(Z)、認証子Vに対応するエントリを削除する。もしくは、それらが保存されているログにそのセッションが正常に終了しなかったことを記述した場合には、その記述を破棄する。 On the other hand, if the authentication result determination unit 541 authenticator V C and the hash function H (10‖trans) match, authenticates the terminal device 200 of the user as a legitimate device, the session key generator 543, a hash function H is calculated, and the session key SK is generated and output by SK = H (11‖trans), and corresponds to the hash function h (Z) and the authenticator V S stored as a log in the log memory 545. Delete the entry. Or, if it is described in the log where they are stored that the session did not end normally, the description is discarded.

このようにして、ログが作成された場合、その作成されたログのデータを用いて、パスワードオンライン攻撃を検出する動作について説明する。図14は、パスワートオンライン攻撃を検出する動作を説明するための認証システム全体のデータの流れを説明する図であり、図15は、ユーザの端末装置における不正検出動作に係るデータの流れを説明する図であり、また、図16は、サーバの認証装置における不正検出動作に係るデータの流れを説明する図である。これらの図14〜図15を参照して、パスワートオンライン攻撃を検出する動作を説明する。   In this way, when a log is created, an operation for detecting a password online attack using data of the created log will be described. FIG. 14 is a diagram for explaining a data flow of the entire authentication system for explaining an operation for detecting a password online attack, and FIG. 15 is a diagram for explaining a data flow for a fraud detection operation in a user terminal device. FIG. 16 is a diagram for explaining the data flow related to the fraud detection operation in the server authentication device. The operation for detecting the password online attack will be described with reference to FIGS.

図14に示すように、認証システム1000において、前述したようにユーザの端末装置とサーバの認証装置の間で相互に認証子のデータ通信が行われて相互認証を行い、その認証処理が成功して、それぞれのセッション鍵が出力されている状態であるとする。つまり、この場合には、既にユーザの端末装置1200およびサーバの認証装置1300との間でセッション鍵が確立されている状態であるとする。その後に、ユーザの端末装置1200およびサーバの認証装置1300の間が通信路1010により結合された状態において不正検出の動作が行われる。   As shown in FIG. 14, in the authentication system 1000, as described above, authentication data is communicated between the user terminal device and the server authentication device to perform mutual authentication, and the authentication processing succeeds. Assume that each session key is being output. That is, in this case, it is assumed that a session key has already been established between the user terminal device 1200 and the server authentication device 1300. Thereafter, the fraud detection operation is performed in a state in which the user terminal device 1200 and the server authentication device 1300 are coupled by the communication path 1010.

(3)不正検出用のユーザの端末装置の動作:
図15を参照して、ユーザの端末装置1200における不正検出動作に係るデータの流れを説明すると、ユーザの端末装置1200で不正検出を行う場合に、ユーザの端末装置1200の共通鍵暗号演算器1201は、セッション鍵生成器から出力されたセッション鍵SKとログ用メモリから読み出したログデータ「log_data」を入力として、共通鍵暗号文Ctx_lを「Ctx_l=Enc(SK,log_data)」の演算処理により計算して出力する。ここで、Enc()は任意の安全な共通鍵暗号の暗号化(および改ざん検出符号生成)アルゴリズムを表す。
(3) Operation of user terminal device for fraud detection:
Referring to FIG. 15, the flow of data related to the fraud detection operation in the user terminal device 1200 will be described. When the user terminal device 1200 performs fraud detection, the common key cryptographic operation unit 1201 of the user terminal device 1200. Uses the session key SK output from the session key generator and the log data “log_data” read from the log memory as input, and calculates the common key ciphertext Ctx_l by the calculation process of “Ctx_l = Enc (SK, log_data)”. And output. Here, Enc () represents an arbitrary secure common key encryption (and tamper detection code generation) algorithm.

通信処理部1204は、共通鍵暗号演算器1201が出力した共通鍵暗号文Ctx_lを通信路1010を介して、不正検出の動作を行っているサーバの認証装置1300(図16)に送信する。共通鍵復号演算器1203は、通信処理部1205により不正検出の動作を行っているサーバの認証装置1300から受信した暗号文Ctx_rを、「report=Dec(SK,Ctx_r)」の演算処理によりにより復号して不正検出データ「report」を得て、それを結果表示器1206に出力する。結果表示器1206は共通鍵復号演算器1203より得た不正検出データ「report」をユーザの見易いように加工して検出結果をユーザに表示する。   The communication processing unit 1204 transmits the common key ciphertext Ctx_l output from the common key cryptographic operation unit 1201 to the authentication apparatus 1300 (FIG. 16) of the server performing the fraud detection operation via the communication path 1010. The common key decryption calculator 1203 decrypts the ciphertext Ctx_r received from the authentication apparatus 1300 of the server that is performing the fraud detection operation by the communication processing unit 1205 by the calculation process of “report = Dec (SK, Ctx_r)”. Then, fraud detection data “report” is obtained and output to the result display 1206. The result display 1206 processes the fraud detection data “report” obtained from the common key decryption calculator 1203 so that the user can easily see it, and displays the detection result to the user.

(4)不正検出用のサーバの認証装置の動作:
続いて、図16を参照して、サーバの認証装置1300における不正検出動作に係るデータの流れを説明すると、サーバの認証装置1300で不正検出を行う場合、サーバの認証装置1300の共通鍵復号演算器1301は、通信処理部1306により不正検出の動作を行っているユーザの端末装置1200から受信した暗号文Ctx_lとセッション鍵生成器により出力されたセッション鍵SKを入力として、復号文log_dataを「log_data=Dec(SK,Ctx)」の演算処理により計算して出力する。ここで、Dec()は任意の安全な共通鍵暗号の復号(および改ざん検出)アルゴリズムを表す。
(4) Operation of server authentication device for fraud detection:
Next, the flow of data related to the fraud detection operation in the server authentication device 1300 will be described with reference to FIG. 16. When the server authentication device 1300 performs fraud detection, the common key decryption operation of the server authentication device 1300 is performed. The device 1301 receives the ciphertext Ctx_l received from the terminal device 1200 of the user performing the fraud detection operation by the communication processing unit 1306 and the session key SK output by the session key generator, and uses the decrypted log_data as “log_data”. = Dec (SK, Ctx) "is calculated and output. Here, Dec () represents an arbitrary secure common key encryption decryption (and tampering detection) algorithm.

不正検出判断部1303は、共通鍵復号演算器1301から出力されたログデータlog_dataとログ用メモリ1302から読み出したログの「ハッシュ関数h(Z)、認証子V」を入力として、ユーザ側の各ログに対してサーバ側のログである「ハッシュ関数h(Z)、認証子V」と比較し、それらが一致していればパスワードオンライン攻撃は行われていないと判断し、さもなくば、パスワードオンライン攻撃が行われている可能性があると判断し、それぞれオンライン攻撃が行われている可能性のある時刻や回数などに関するレポートとして不正検出データ「report」を出力する。 The fraud detection determination unit 1303 receives the log data log_data output from the common key decryption calculator 1301 and the log “hash function h (Z), authenticator V s ” read from the log memory 1302 as input, and Each log is compared with “hash function h (Z), authenticator V s ” which is a log on the server side, and if they match, it is determined that a password online attack has not been performed, otherwise Then, it is determined that there is a possibility that a password online attack is being performed, and fraud detection data “report” is output as a report regarding the time and number of times that each online attack may be performed.

また、不正検出判断部1303は、比較の結果一致していたエントリをログ用メモリから削除(もしくは、一致していたことを示す目印を付与)する。作成された不正検出データ「report」のレポートは、共通鍵暗号演算器1304で暗号化されて、通信処理部1305を介してユーザの端末装置1200へ送られる。なお、不正検出判断の処理については、サーバの認証装置1300にあるログデータをユーザの端末装置1200に送り、ユーザの端末装置1200において処理を行うようにしても良い。   Further, the fraud detection determination unit 1303 deletes the entry that matches as a result of the comparison from the log memory (or adds a mark indicating that it matches). The generated report of the fraud detection data “report” is encrypted by the common key encryption unit 1304 and sent to the user terminal device 1200 via the communication processing unit 1305. The fraud detection determination processing may be performed by sending log data in the server authentication device 1300 to the user terminal device 1200 and performing the processing in the user terminal device 1200.

<安全な通信路を経由する認証データの送信方法>
次に安全な通信路を経由して認証データを送信するシステムについて説明する。このような通信システムを利用することにより、他の認証方式を利用するためのデータを安全に共有して記録することできる。図17は、安全な通信路を経由して認証データを送信する認証データ送信システムのシステム全体のデータの流れを説明する図であり、図18は、ユーザの端末装置における認証データ登録に係るデータの流れを説明する図であり、また、図19は、サーバの認証装置における認証データ登録に係るデータの流れを説明する図である。これらの図17〜図19を参照して、安全な通信路を経由して認証データを送信するシステムの動作を説明する。
<Method for sending authentication data via a secure communication path>
Next, a system for transmitting authentication data via a secure communication path will be described. By using such a communication system, data for using another authentication method can be safely shared and recorded. FIG. 17 is a diagram for explaining the data flow of the entire system of the authentication data transmission system that transmits authentication data via a secure communication path, and FIG. 18 is data related to authentication data registration in the user terminal device. FIG. 19 is a diagram for explaining the flow of data relating to authentication data registration in the authentication apparatus of the server. The operation of the system that transmits the authentication data via a secure communication path will be described with reference to FIGS.

前述したシステムの場合と同様に、図17に示すように、認証システム2000において、ユーザの端末装置2200とサーバの認証装置2300の間で通信路2010を介して相互に認証子のデータ通信が行われて相互認証を行い、認証処理が成功して、それぞれのセッション鍵が出力されている状態であるとする。この場合には既にユーザの端末装置2200およびサーバの認証装置2300との間で通信路2010を介してセッション鍵が確立されている状態であるとする。ユーザの端末装置とサーバの認証装置の間にセッション鍵が確立した時の認証データ登録用のユーザの端末装置の動作について説明する。   As in the case of the system described above, as shown in FIG. 17, in the authentication system 2000, data communication of the authenticator is performed between the user terminal device 2200 and the server authentication device 2300 via the communication path 2010. It is assumed that mutual authentication is performed, authentication processing is successful, and each session key is output. In this case, it is assumed that a session key is already established between the user terminal device 2200 and the server authentication device 2300 via the communication path 2010. The operation of the user terminal device for registering authentication data when a session key is established between the user terminal device and the server authentication device will be described.

(1)認証データ登録用のユーザの端末装置の動作:
図18を参照すると、まず、認証データ登録用のユーザの端末装置2200にある共通鍵暗号演算器2202は、認証処理が成功した後のセッション鍵生成器から出力されたセッション鍵SKと認証データ生成器2201から出力された認証データauth_data_sを入力として、共通鍵暗号文Ctx_sを「Ctx_s=Enc(SK,auth_data_s)」の計算を行い、計算結果を出力する。ここで、Enc()は任意の安全な共通鍵暗号の暗号化(および改ざん検出符号生成)アルゴリズムを表す。通信処理部2203は共通鍵暗号演算器2202が出力した共通鍵暗号文Ctx_sを、認証データ登録用のサーバの認証装置2300に送信する。
(1) Operation of user terminal device for registration of authentication data:
Referring to FIG. 18, first, the common key encryption calculator 2202 in the user terminal device 2200 for registering authentication data generates the session key SK and authentication data generated from the session key generator after successful authentication processing. The authentication data auth_data_s output from the device 2201 is input, the common key ciphertext Ctx_s is calculated as “Ctx_s = Enc (SK, auth_data_s)”, and the calculation result is output. Here, Enc () represents an arbitrary secure common key encryption (and tamper detection code generation) algorithm. The communication processing unit 2203 transmits the common key ciphertext Ctx_s output from the common key encryption calculator 2202 to the authentication device 2300 of the server for registering authentication data.

また、通信処理部2207は、サーバの認証装置2300から共通鍵暗号文Ctx_cを受信し、それを共通鍵復号演算器2205に渡す。共通鍵暗号演算器2202は、セッション鍵生成器から出力されたセッション鍵SKと通信処理部2207から出力された暗号文Ctx_cを入力として、共通鍵暗号文Ctx_cを「auth_data_c=Dec(SK,Ctx_c)」の計算を行うことにより、復号(および改ざんが無いことを確認)して、その計算結果「auth_data_c」を出力する。ここで、Dec()は任意の安全な共通鍵暗号の復号(および改ざん検出)アルゴリズムを表す。   Also, the communication processing unit 2207 receives the common key ciphertext Ctx_c from the server authentication device 2300 and passes it to the common key decryption calculator 2205. The common key cipher operation unit 2202 receives the session key SK output from the session key generator and the ciphertext Ctx_c output from the communication processing unit 2207 as input, and uses the common key ciphertext Ctx_c as “auth_data_c = Dec (SK, Ctx_c)”. Is calculated (and confirmed that there is no tampering), and the calculation result “auth_data_c” is output. Here, Dec () represents an arbitrary secure common key encryption decryption (and tampering detection) algorithm.

記録情報構成器2204は、認証データ生成器2201から出力された認証データ「auth_data_s」と、共通鍵復号演算器2205から出力された認証データ「auth_data_c」および応答確認判断部から出力された「RSA公開鍵(e,n)」からメモリ2206に記録する認証用のデータ(S,auth_c)を生成し、それをメモリ2206に記録する。   The record information composer 2204 includes the authentication data “auth_data_s” output from the authentication data generator 2201, the authentication data “auth_data_c” output from the common key decryption calculator 2205, and the “RSA disclosure” output from the response confirmation determination unit. Authentication data (S, auth_c) to be recorded in the memory 2206 is generated from the key (e, n) ”, and is recorded in the memory 2206.

(2)認証データ登録用のサーバの認証装置の動作:
続いて、安全な通信路2010を経由するユーザの端末装置2200とサーバの認証装置2300の間にセッション鍵が確立した時の認証データ登録用のサーバの認証装置2300の動作について説明する。
(2) Operation of authentication device of server for authentication data registration:
Next, the operation of the authentication device 2300 for authentication data registration when a session key is established between the user terminal device 2200 and the server authentication device 2300 via the secure communication path 2010 will be described.

図19を参照する。まず、認証データ登録用のサーバの認証装置2300にある共通鍵復号演算器2302は、安全な通信路2010を経由して通信処理部2301により認証データ登録用のユーザの端末装置から受信して、暗号文Ctx_sとセッション鍵生成器により出力されたセッション鍵SKを入力として、復号文auth_data_sをauth_data_s=Dec(SK,Ctx_s)により計算してauth_data_sを記録情報構成器に出力する。また、共通鍵暗号演算器は、認証データ生成器の生成したauth_data_cとセッション鍵生成器により出力されたセッション鍵SKを入力として、共通鍵暗号文Ctx_cを「Ctx_c=Enc(SK,auth_data_c)」により計算して出力する。通信処理部2307は、共通鍵暗号演算器2306が出力した計算結果の共通鍵暗号文Ctx_cを、認証データ登録用のユーザの端末装置2200に送信する。   Refer to FIG. First, the common key decryption arithmetic unit 2302 in the authentication device 2300 of the server for authentication data registration is received from the user terminal device for registration of authentication data by the communication processing unit 2301 via the secure communication path 2010, Using the ciphertext Ctx_s and the session key SK output by the session key generator as inputs, the decrypted text auth_data_s is calculated by auth_data_s = Dec (SK, Ctx_s), and auth_data_s is output to the recording information composer. In addition, the common key encryption calculator receives auth_data_c generated by the authentication data generator and the session key SK output by the session key generator as input, and uses the common key ciphertext Ctx_c by “Ctx_c = Enc (SK, auth_data_c)”. Calculate and output. The communication processing unit 2307 transmits the common key ciphertext Ctx_c, which is the calculation result output from the common key cipher operation unit 2306, to the user terminal device 2200 for registering authentication data.

記録情報構成器2303は、認証データ生成器2305から出力された認証データ「auth_data_c」と共通鍵復号演算器2302から出力された認証データ「auth_data_s」およびRSA鍵生成器から出力されたRSA復号鍵(d,n)からメモリ2304に記録する認証用のデータ(C,auth_c)を生成し、それをメモリ2304に記録する。   The recorded information composer 2303 includes the authentication data “auth_data_c” output from the authentication data generator 2305, the authentication data “auth_data_s” output from the common key decryption calculator 2302, and the RSA decryption key output from the RSA key generator ( Authentication data (C, auth_c) to be recorded in the memory 2304 is generated from d, n), and is recorded in the memory 2304.

本発明により提供される認証システムは、基本的には、利用者やサーバ認証を必要とするサービスやアプリケーションで利用できる。現在、利用者認証やサーバ認証は、電子商取引、サーバやネットワークへのログイン、入退室管理、公的交通機関への搭乗など、リアル、サイバーを問わず至るところで必要とされており、その応用先は広い。また、本発明による認証システムは、端末動作にかかる処理を、安全性を損なうことなく軽くできるという利点があり、ユビキタスデバイスなど計算能力の低いデバイスへの応用が期待できる。また、パスワードオンライン攻撃検出システムおよび認証データ送信システムにより安全性を損なうことなく利便性を高めることができる。   The authentication system provided by the present invention can be basically used in services and applications that require user or server authentication. Currently, user authentication and server authentication are required everywhere, whether real or cyber, such as electronic commerce, login to servers and networks, entrance / exit management, and boarding in public transportation. Is wide. In addition, the authentication system according to the present invention has an advantage that the processing related to the terminal operation can be lightened without impairing safety, and can be expected to be applied to a device having a low calculation capability such as a ubiquitous device. In addition, the password online attack detection system and the authentication data transmission system can improve convenience without sacrificing safety.

短い系列を用いた認証システムの構成を示すブロック図である。It is a block diagram which shows the structure of the authentication system using a short series. ユーザの端末装置200のシステム構成を詳細に示す図である。It is a figure which shows the system configuration | structure of the user's terminal device 200 in detail. サーバの認証装置300のシステム構成を詳細に示す図である。It is a figure which shows the system configuration | structure of the authentication apparatus 300 of a server in detail. サーバ側RSA鍵生成・応答生成装置の第1の実施例の構成を示す図である。It is a figure which shows the structure of the 1st Example of the server side RSA key production | generation / response production | generation apparatus. サーバ側認証用データ生成装置の第1の実施例の構成を示す図である。It is a figure which shows the structure of the 1st Example of the data generation apparatus for server side authentication. サーバ側認証結果判定装置の第1の実施例の構成を示す図である。It is a figure which shows the structure of the 1st Example of the server side authentication result determination apparatus. サーバ側RSA鍵生成・応答生成装置の第2の実施例の構成を示す図である。It is a figure which shows the structure of the 2nd Example of the server side RSA key production | generation / response production | generation apparatus. ユーザ側質問生成・応答確認装置の第1の実施例の構成を示す図である。It is a figure which shows the structure of the 1st Example of a user side question production | generation / response confirmation apparatus. ユーザ側認証用データ生成装置の第1の実施例の構成を示す図である。It is a figure which shows the structure of the 1st Example of the data generation apparatus for user side authentication. ユーザ側認証結果判定装置の第1の実施例の構成を示す図である。It is a figure which shows the structure of the 1st Example of a user side authentication result determination apparatus. ユーザ側質問生成・応答確認装置の第2の実施例の構成を示す図である。It is a figure which shows the structure of the 2nd Example of a user side question production | generation / response confirmation apparatus. ユーザの端末装置200に設けられるログ用のユーザ側認証結果判定装置の構成を示す図である。It is a figure which shows the structure of the user side authentication result determination apparatus for logs provided in the user's terminal device. サーバの認証装置300に設けられるログ用のサーバ側認証結果判定装置の構成を示す図である。It is a figure which shows the structure of the server side authentication result determination apparatus for logs provided in the authentication apparatus 300 of a server. パスワートオンライン攻撃を検出する動作を説明するための認証システム全体のデータの流れを説明する図である。It is a figure explaining the data flow of the whole authentication system for demonstrating the operation | movement which detects a password online attack. ユーザの端末装置における不正検出動作に係るデータの流れを説明する図である。It is a figure explaining the flow of the data which concern on fraud detection operation | movement in a user's terminal device. サーバの認証装置における不正検出動作に係るデータの流れを説明する図である。It is a figure explaining the flow of the data which concerns on fraud detection operation | movement in the authentication apparatus of a server. 安全な通信路を経由して認証データを送信する認証データ送信システムのシステム全体のデータの流れを説明する図である。It is a figure explaining the data flow of the whole system of the authentication data transmission system which transmits authentication data via a secure communication path. ユーザの端末装置における認証データ登録に係るデータの流れを説明する図である。It is a figure explaining the flow of the data which concern on the authentication data registration in a user's terminal device. サーバの認証装置における認証データ登録に係るデータの流れを説明する図である。It is a figure explaining the flow of the data which concern on the authentication data registration in the authentication apparatus of a server.

符号の説明Explanation of symbols

100 認証システム
110 通信路
200 ユーザの端末装置
210 通信処理部
220 ユーザ側質問生成・応答確認装置
230 ユーザ側認証用データ生成装置
240 ユーザ側認証結果判定装置
300 サーバの認証装置
310 通信処理部
320 サーバ側RSA鍵生成・応答生成装置
330 サーバ側認証用データ生成装置
340 サーバ側認証結果判定装置
DESCRIPTION OF SYMBOLS 100 Authentication system 110 Communication path 200 User terminal device 210 Communication processing part 220 User side question production | generation / response confirmation apparatus 230 User side authentication data generation apparatus 240 User side authentication result determination apparatus 300 Server authentication apparatus 310 Communication processing part 320 Server Side RSA key generation / response generation apparatus 330 Server side authentication data generation apparatus 340 Server side authentication result determination apparatus

Claims (3)

ユーザの端末装置が
サーバの認証装置との間のデータ通信を行う通信処理部と、
サーバの認証装置からのRSA公開鍵とオンライン攻撃に対するセキュリティパラメータK on と、パラメータL(1≦L≦ log 3 on -1┐ に基づく前記通信処理部の通信によりユーザの端末装置とサーバの認証装置の間で公開鍵の正しさを決定するユーザ側質問生成・応答確認装置と、
入力された短い系列と前記ユーザ側質問生成・応答確認装置により受け取った公開鍵に基づいてサーバの認証装置に送信する認証データを生成するユーザ側認証用データ生成装置と、
サーバの認証装置から受信した認証子に対して認証処理を行い、認証の結果によりサーバの認証装置に送信する認証子とセッション鍵を生成するユーザ側認証結果判定装置と、
を備え、
サーバの認証装置が
ユーザの端末装置との間のデータ通信を行う通信処理部と、
RSA公開鍵を生成して前記通信処理部の通信によりユーザの端末装置に送信し、RSA公開鍵と、セキュリティパラメータK on と、パラメータLに基づく前記通信処理部の通信によりユーザの端末装置とサーバの認証装置の間で公開鍵の正しさを示すための応答を生成するサーバ側RSA鍵生成・応答生成装置と、
ユーザの端末装置からの認証データと前記サーバ側RSA鍵生成・応答生成装置により生成された秘密鍵に基づいてユーザの端末装置に送信する認証子を生成するサーバ側認証用データ生成装置と、
ユーザの端末装置から受信した認証子に対して認証処理を行い、認証の結果によりセッション鍵を生成するサーバ側認証結果判定装置と、
を備え、
ユーザの端末装置に短い系列を入力して、ユーザの端末装置とサーバの認証装置の間において相互に認証子を生成して送信し、相互の認証子に基づく相互認証を行い、認証結果によりユーザの端末装置とサーバの認証装置の間でセッション鍵の確立を行う
ことを特徴とする認証システム。
A communication processing unit that performs data communication between the terminal device of the user and the authentication device of the server;
Server RSA public key and a security parameter K on for online attacks, by the communication of the communication processing unit based on the parameter L (1 ≦ L ≦ ┌ log 3 K on -1┐) and the user of the terminal device server from the authentication device A user-side question generation / response confirmation device that determines the correctness of the public key among the authentication devices,
A user side authentication data generation device for generating authentication data to be transmitted to the server authentication device based on the input short sequence and the public key received by the user side question generation / response confirmation device;
An authentication process is performed on the authenticator received from the server authentication device, and an authentication code to be transmitted to the server authentication device and a session key are generated according to the authentication result, and a user side authentication result determination device;
With
A communication processing unit that performs data communication between the server authentication device and the user terminal device; and
An RSA public key is generated and transmitted to the user's terminal device by communication of the communication processing unit, and the user's terminal device and server are communicated by the communication processing unit based on the RSA public key, the security parameter K on, and the parameter L. A server-side RSA key generation / response generation device for generating a response for indicating the correctness of the public key among the authentication devices of
A server-side authentication data generation device that generates an authenticator to be transmitted to the user terminal device based on the authentication data from the user terminal device and the secret key generated by the server-side RSA key generation / response generation device;
A server-side authentication result determination device that performs authentication processing on an authenticator received from a user terminal device and generates a session key based on the authentication result;
With
A short sequence is input to the user's terminal device, an authenticator is generated and transmitted between the user's terminal device and the server's authentication device, mutual authentication based on the mutual authenticator is performed, and the user is authenticated based on the authentication result. A session key is established between the terminal device and the server authentication device.
請求項1に記載の認証システムによりユーザの端末装置とサーバの認証装置の間で確立したセッション鍵を使って構成できる安全な通信路を用いて、攻撃者がオンラインで試したパスワードの回数を検出するパスワードオンライン攻撃検出方法であって、
前記ユーザ側認証結果判定装置およびサーバ側認証結果判定装置にそれぞれのログ用メモリを備え、
ユーザの端末装置とサーバの認証装置の間において相互に認証子を生成して送信し、
相互の認証子に基づく相互認証を行う際に、エラーが発生した時の認証用のデータおよび認証子を前記ログ用メモリに記憶し、
前記ログ用メモリに記憶されたデータに基づいて前記通信処理部の通信により不正検出の判断処理を行い、
その結果を前記ユーザの端末装置に出力する
ことを特徴とするパスワードオンライン攻撃検出方法。
The number of passwords tried by an attacker online using a secure communication path that can be configured using a session key established between the user terminal device and the server authentication device by the authentication system according to claim 1 A password online attack detection method
Each of the user-side authentication result determination device and the server-side authentication result determination device includes a log memory,
A mutual authenticator is generated and transmitted between the user terminal device and the server authentication device,
When performing mutual authentication based on the mutual authenticator, the authentication data and the authenticator when an error occurs are stored in the log memory,
Based on the data stored in the log memory, performing a fraud detection determination process by communication of the communication processing unit,
A password online attack detection method characterized in that the result is output to the terminal device of the user.
請求項1に記載の認証システムによりユーザの端末装置とサーバの認証装置の間で確立したセッション鍵を使って構成できる安全な通信路を用いて、ユーザの登録用認証データを登録する認証データ登録方法であって、
前記ユーザの端末装置およびサーバの認証装置にそれぞれの登録用認証データを登録する認証データ登録用メモリと、
セッション鍵と認証データから共通鍵暗号文を出力する共通鍵暗号演算器と、
前記共通鍵暗号文からセッション鍵に基づいて登録用認証データを復号する共通鍵復号演算器と
を備え、
ユーザの端末装置とサーバの認証装置の間において相互に認証子を生成して送信し、相互の認証子に基づく相互認証を行った際のセッション鍵とRSA鍵に加えてユーザの端末装置とサーバの認証装置の登録用認証データを、それぞれの認証データ登録用メモリに登録して、前記共通鍵暗号演算器により各自の登録用認証データを暗号文とした共通鍵暗号文を送信し、
送信された共通鍵暗号文を受信すると、前記共通鍵復号演算器により共通鍵暗号文から相手の登録用認証データを復号して前記認証用データ登録用のメモリに記憶することを特徴とする認証データ登録方法。
Authentication data registration for registering user registration authentication data using a secure communication path that can be configured using a session key established between the user terminal device and the server authentication device by the authentication system according to claim 1 A method,
An authentication data registration memory for registering respective registration authentication data in the user terminal device and the server authentication device;
A common key encryption unit that outputs a common key ciphertext from the session key and authentication data;
A common key decryption computing unit for decrypting registration authentication data from the common key ciphertext based on a session key;
In addition to the session key and the RSA key when mutual authentication is generated and transmitted between the user terminal device and the server authentication device and mutual authentication is performed based on the mutual authentication device, the user terminal device and the server The authentication data for registration of the authentication device is registered in the respective authentication data registration memory, and the common key ciphertext is transmitted by the common key cryptography unit using the respective authentication data for registration as ciphertext,
When the transmitted common key ciphertext is received, the authentication data for registration of the other party is decrypted from the common key ciphertext by the common key decryption operator and stored in the memory for registration of authentication data Data registration method.
JP2007280297A 2007-10-29 2007-10-29 Authentication system using short sequences Active JP5004086B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007280297A JP5004086B2 (en) 2007-10-29 2007-10-29 Authentication system using short sequences

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007280297A JP5004086B2 (en) 2007-10-29 2007-10-29 Authentication system using short sequences

Publications (2)

Publication Number Publication Date
JP2009111594A JP2009111594A (en) 2009-05-21
JP5004086B2 true JP5004086B2 (en) 2012-08-22

Family

ID=40779635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007280297A Active JP5004086B2 (en) 2007-10-29 2007-10-29 Authentication system using short sequences

Country Status (1)

Country Link
JP (1) JP5004086B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8422670B2 (en) 2008-07-10 2013-04-16 National Institute Of Advanced Industrial Science And Technology Password authentication method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5392741B2 (en) * 2008-04-21 2014-01-22 独立行政法人産業技術総合研究所 Password authentication method based on RSA and its application
JP5478364B2 (en) * 2010-05-28 2014-04-23 三菱電機株式会社 Authentication system, terminal device, IC card, computer program, authentication method, and command transmission method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3787431B2 (en) * 1997-04-11 2006-06-21 株式会社日立製作所 Abuse detection method
JP2002245013A (en) * 2001-02-19 2002-08-30 Nippon Telegr & Teleph Corp <Ntt> Security realizing method, security realizing program and storage medium having security realizing program recorded thereon
JP2007108973A (en) * 2005-10-13 2007-04-26 Eath:Kk Authentication server device, authentication system and authentication method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8422670B2 (en) 2008-07-10 2013-04-16 National Institute Of Advanced Industrial Science And Technology Password authentication method
JP5224481B2 (en) * 2008-07-10 2013-07-03 独立行政法人産業技術総合研究所 Password authentication method

Also Published As

Publication number Publication date
JP2009111594A (en) 2009-05-21

Similar Documents

Publication Publication Date Title
JP5201136B2 (en) Anonymous authentication system and anonymous authentication method
CN103763631B (en) Authentication method, server and television set
US8670563B2 (en) System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
US8589693B2 (en) Method for two step digital signature
US8380992B2 (en) Device and method for security key exchange and system pertaining to same
JP5224481B2 (en) Password authentication method
KR20080051753A (en) System and method for providing security
CN104901935A (en) Bilateral authentication and data interaction security protection method based on CPK (Combined Public Key Cryptosystem)
WO2019093478A1 (en) Key exchange device, key exchange system, key exchange method, and key exchange program
CN111769938A (en) Key management system and data verification system of block chain sensor
CN110999202A (en) Computer-implemented system and method for highly secure, high-speed encryption and transmission of data
Zhang et al. Robust and efficient password authenticated key agreement with user anonymity for session initiation protocol‐based communications
Yoon et al. A new authentication scheme for session initiation protocol
CN111245611B (en) Anti-quantum computation identity authentication method and system based on secret sharing and wearable equipment
JP5004086B2 (en) Authentication system using short sequences
KR20080005344A (en) System for authenticating user&#39;s terminal based on authentication server
Chang et al. On making U2F protocol leakage-resilient via re-keying
Yang et al. Security of improvement on methods for protecting password transmission
KR20070035342A (en) Method for mutual authentication based on the user&#39;s password
JP5393594B2 (en) Efficient mutual authentication method, program, and apparatus
Yang et al. Security enhancement for protecting password transmission
CN110572257B (en) Identity-based data source identification method and system
JP5099771B2 (en) Two-factor authentication system
Lee et al. An interactive mobile SMS confirmation method using secret sharing technique
JP5392741B2 (en) Password authentication method based on RSA and its application

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120404

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120514

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

Free format text: PAYMENT UNTIL: 20150601

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5004086

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250