JP6720113B2 - Authentication system, service providing server, authentication method, and program - Google Patents

Authentication system, service providing server, authentication method, and program Download PDF

Info

Publication number
JP6720113B2
JP6720113B2 JP2017110349A JP2017110349A JP6720113B2 JP 6720113 B2 JP6720113 B2 JP 6720113B2 JP 2017110349 A JP2017110349 A JP 2017110349A JP 2017110349 A JP2017110349 A JP 2017110349A JP 6720113 B2 JP6720113 B2 JP 6720113B2
Authority
JP
Japan
Prior art keywords
authentication
service providing
providing server
server
client terminal
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
JP2017110349A
Other languages
Japanese (ja)
Other versions
JP2018207287A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017110349A priority Critical patent/JP6720113B2/en
Publication of JP2018207287A publication Critical patent/JP2018207287A/en
Application granted granted Critical
Publication of JP6720113B2 publication Critical patent/JP6720113B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、認証システム、サービス提供サーバ、認証方法、及びプログラムに関する。

The present invention relates to an authentication system, a service providing server, an authentication method , and a program.

従来の知識認証では、OTP(one-time password)、PAKE(Password Authenticated Key Exchange)等がよく利用されているが、OTPは、全数探索攻撃には強いがフィッシング攻撃に弱く、PAKEは、フィッシング攻撃には強いが全数探索攻撃に弱い。 In conventional knowledge authentication, OTP (one-time password), PAKE (Password Authenticated Key Exchange), etc. are often used. Strong against, but weak against an exhaustive search attack.

これに対し、フィッシング攻撃にも全数探索攻撃にも強い認証方法としてM−Pinが提案されている(例えば、非特許文献1参照)。すなわち、M−Pinでは、パスワードを直接送信しないことによりフィッシング攻撃を防御し、2要素認証により全数探索攻撃を防御することができる。 On the other hand, M-Pin has been proposed as an authentication method that is strong against both phishing attacks and exhaustive search attacks (see Non-Patent Document 1, for example). That is, the M-Pin can prevent a phishing attack by not directly transmitting a password and can prevent an exhaustive search attack by two-factor authentication.

Michael S., M-Pin: A Multi-Factor Zero Knowledge Authentication Protocol, (2016), インターネット<URL:https://www.miracl.com/hs-fs/hub/230906/file-63954152-pdf/downloads/certivox_labs_mpin.pdf>Michael S., M-Pin: A Multi-Factor Zero Knowledge Authentication Protocol, (2016), Internet <URL: https://www.miracl.com/hs-fs/hub/230906/file-63954152-pdf/downloads /certivox_labs_mpin.pdf>

しかしながら、M−Pinによる認証処理は、サービスを提供するサーバごとに実行される。したがって、鍵発行局から秘密情報(マスタ秘密鍵)が漏洩した場合、なりすまし攻撃を防ぐためには、漏洩元の鍵発行局を利用している全てのサービス提供者に連絡して、当該全てのサービス提供者のサーバを停止する必要があり、作業負担が大きいという問題が有った。 However, the authentication process by M-Pin is executed for each server that provides the service. Therefore, if secret information (master secret key) is leaked from the key issuing authority, in order to prevent spoofing attacks, contact all service providers using the key issuing authority of the leak source and It is necessary to stop the server of the provider, and there is a problem that the work load is heavy.

本発明は、上記の点に鑑みてなされたものであって、M−Pinのための秘密情報の漏洩時の作業負担を軽減することを目的とする。 The present invention has been made in view of the above points, and an object of the present invention is to reduce the work load when secret information for M-Pin is leaked.

そこで上記課題を解決するため、認証システムは、クライアント端末にネットワークを介して接続されるサービス提供サーバと、前記サービス提供サーバにネットワークを介して接続される認証サーバとを含み、前記サービス提供サーバは、前記クライアント端末のユーザのM−Pinによる認証に必要なパラメータを前記認証サーバに送信する際に、前記サービス提供サーバの公開鍵及び秘密鍵については、共通の乱数を適用した値を前記認証サーバに送信する送信部を有し、前記認証サーバは、前記パラメータを受信すると、当該パラメータに基づいて、M−Pinのための計算を実行し、計算結果を前記サービス提供サーバに送信する計算部を有する。 Therefore, in order to solve the above problems, an authentication system includes a service providing server connected to a client terminal via a network, and an authentication server connected to the service providing server via a network. When transmitting parameters required for M-Pin authentication of the user of the client terminal to the authentication server, a value to which a common random number is applied is applied to the authentication server as a public key and a secret key of the service providing server. When the authentication server receives the parameter, the authentication server executes a calculation for M-Pin based on the parameter and transmits a calculation result to the service providing server. Have.

M−Pinのための秘密情報の漏洩時の作業負担を軽減することができる。 It is possible to reduce the work load when the confidential information for the M-Pin is leaked.

第1の実施の形態における認証システムの構成例を示す図である。It is a figure which shows the structural example of the authentication system in 1st Embodiment. 第1の実施の形態におけるサービス提供サーバ10のハードウェア構成例を示す図である。It is a figure which shows the hardware structural example of the service provision server 10 in 1st Embodiment. 第1の実施の形態におけるサービス提供サーバ10及び認証サーバ20の機能構成例を示す図である。It is a figure which shows the function structural example of the service provision server 10 and the authentication server 20 in 1st Embodiment. 第1の実施の形態の運用前の前処理の処理手順の一例を説明するためのシーケンス図である。It is a sequence diagram for explaining an example of a processing procedure of preprocessing before operation of the first embodiment. 第1の実施の形態の認証時の処理手順の一例を説明するためのシーケンス図である。FIG. 9 is a sequence diagram for explaining an example of a processing procedure at the time of authentication according to the first embodiment. 第2の実施の形態の認証時の処理手順の一例を説明するためのシーケンス図である。It is a sequence diagram for explaining an example of a processing procedure at the time of authentication of the second embodiment.

以下、図面に基づいて第1の実施の形態を説明する。図1は、第1の実施の形態における認証システムの構成例を示す図である。図1において、認証システム1は、サービス提供サーバ10a及び10b等の複数のサービス提供サーバ10、クライアント端末30a及び30b等の1以上のクライアント端末30、鍵発行局40及び認証サーバ20等を含む。サービス提供サーバ10は、クライアント端末30、鍵発行局40及び認証サーバ20とネットワークを介して接続される。クライアント端末30は、更に、鍵発行局40とネットワークを介して通信可能である。 The first embodiment will be described below with reference to the drawings. FIG. 1 is a diagram showing a configuration example of an authentication system according to the first embodiment. In FIG. 1, the authentication system 1 includes a plurality of service providing servers 10 such as service providing servers 10a and 10b, one or more client terminals 30 such as client terminals 30a and 30b, a key issuing station 40, an authentication server 20 and the like. The service providing server 10 is connected to the client terminal 30, the key issuing station 40, and the authentication server 20 via a network. The client terminal 30 can also communicate with the key issuing station 40 via the network.

サービス提供サーバ10は、Webサーバ等、何らかのサービスをクライアント端末30に提供する1以上のコンピュータである。 The service providing server 10 is one or more computers that provide some kind of service to the client terminal 30, such as a Web server.

クライアント端末30は、サービス提供サーバ10によって提供されるサービスのユーザインタフェースとして機能する端末である。例えば、PC(Personal Computer)、スマートフォン、又はタブレット端末等がクライアント端末30として利用されてもよい。 The client terminal 30 is a terminal that functions as a user interface of a service provided by the service providing server 10. For example, a PC (Personal Computer), a smartphone, a tablet terminal, or the like may be used as the client terminal 30.

認証サーバ20は、いずれかのサービス提供サーバ10へアクセスを要求するクライアント端末30のユーザについて認証処理を実行する1以上のコンピュータである。本実施の形態において、認証サーバ20は、複数のサービス提供サーバ10によって共用される。すなわち、本実施の形態では、従来技術(例えば、非特許文献1)において区別されていなかったサービス提供サーバ10と認証サーバ20とが、それぞれに分離され、複数のサービス提供サーバ10に関する認証処理が、認証サーバ20によって一元的に実行される。 The authentication server 20 is one or more computers that execute authentication processing for a user of the client terminal 30 requesting access to any of the service providing servers 10. In the present embodiment, the authentication server 20 is shared by a plurality of service providing servers 10. That is, in the present embodiment, the service providing server 10 and the authentication server 20, which are not distinguished in the related art (for example, Non-Patent Document 1), are separated from each other, and the authentication processing regarding a plurality of service providing servers 10 is performed. , Is centrally executed by the authentication server 20.

鍵発行局40は、クライアント端末30のユーザの認証(M−Pin)に利用される暗号鍵の発行等を行う1以上のコンピュータである。 The key issuing station 40 is one or more computers that issue an encryption key used for authentication (M-Pin) of the user of the client terminal 30.

図2は、第1の実施の形態におけるサービス提供サーバ10のハードウェア構成例を示す図である。図2のサービス提供サーバ10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。 FIG. 2 is a diagram illustrating a hardware configuration example of the service providing server 10 according to the first embodiment. The service providing server 10 in FIG. 2 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, etc., which are connected to each other by a bus B.

サービス提供サーバ10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。 The program that realizes the processing in the service providing server 10 is provided by the recording medium 101 such as a CD-ROM. When the recording medium 101 storing the program is set in the drive device 100, the program is installed in the auxiliary storage device 102 from the recording medium 101 via the drive device 100. However, the program does not necessarily have to be installed from the recording medium 101, and may be downloaded from another computer via a network. The auxiliary storage device 102 stores the installed program and also stores necessary files and data.

メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってサービス提供サーバ10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。 The memory device 103 reads the program from the auxiliary storage device 102 and stores the program when an instruction to activate the program is given. The CPU 104 executes the function related to the service providing server 10 according to the program stored in the memory device 103. The interface device 105 is used as an interface for connecting to a network.

なお、認証サーバ20及び鍵発行局40等も、図2に示されるような1以上のコンピュータによって構成されてもよい。 The authentication server 20, the key issuing authority 40, and the like may also be configured by one or more computers as shown in FIG.

図3は、第1の実施の形態におけるサービス提供サーバ10及び認証サーバ20の機能構成例を示す図である。 FIG. 3 is a diagram illustrating a functional configuration example of the service providing server 10 and the authentication server 20 according to the first embodiment.

図3において、サービス提供サーバ10は、鍵受信部11、ログイン要求受信部12、認証情報受信部13、認証要求部14及び認証結果受信部15等を有する。これら各部は、サービス提供サーバ10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。サービス提供サーバ10は、また、鍵記憶部121を利用する。鍵記憶部121は、例えば、補助記憶装置102、又はサービス提供サーバ10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。 In FIG. 3, the service providing server 10 includes a key receiving unit 11, a login request receiving unit 12, an authentication information receiving unit 13, an authentication requesting unit 14, an authentication result receiving unit 15, and the like. Each of these units is realized by a process that causes the CPU 104 to execute one or more programs installed in the service providing server 10. The service providing server 10 also uses the key storage unit 121. The key storage unit 121 can be realized by using, for example, the auxiliary storage device 102 or a storage device that can be connected to the service providing server 10 via a network.

一方、認証サーバ20は、楕円曲線発行部21及び認証処理部22等を有する。これら各部は、認証サーバ20にインストールされた1以上のプログラムが、認証サーバ20のCPUに実行させる処理により実現される。認証サーバ20は、また、トラップドア情報記憶部211を利用する。トラップドア情報記憶部211は、例えば、補助記憶装置102、又は認証サーバ20にネットワークを介して接続可能な記憶装置等を用いて実現可能である。なお、トラップドア情報記憶部211としては、HSM(Hardware Security Module)が好適である。 On the other hand, the authentication server 20 includes an elliptic curve issuing unit 21, an authentication processing unit 22, and the like. Each of these units is realized by a process that causes the CPU of the authentication server 20 to execute one or more programs installed in the authentication server 20. The authentication server 20 also uses the trap door information storage unit 211. The trap door information storage unit 211 can be realized using, for example, the auxiliary storage device 102 or a storage device that can be connected to the authentication server 20 via a network. As the trap door information storage unit 211, HSM (Hardware Security Module) is suitable.

以下、認証システム1において実行される処理手順について説明する。図4は、第1の実施の形態の運用前の前処理の処理手順の一例を説明するためのシーケンス図である。 The processing procedure executed in the authentication system 1 will be described below. FIG. 4 is a sequence diagram for explaining an example of a processing procedure of preprocessing before operation according to the first embodiment.

ステップS101において、認証サーバ20の楕円曲線発行部21は、supersingular楕円曲線E(Z/NZ)を発行する。この際、楕円曲線発行部21は、楕円曲線Eの位数情報であり、後述されるペアリングeの計算に用いられるトラップドア情報T(p1,p2,j1,j2)を、トラップドア情報記憶部211に保存する。なお、Zは有理整数環であり、N=p1p2である。また、各jd(d=1,2)は、jd|(pd+1)を満たすような十分大きな素数である。ここで、jd|(pd+1)は、jdが(pd+1)によって割り切れることを意味する。 In step S101, the elliptic curve issuing unit 21 of the authentication server 20 issues a supersingular elliptic curve E(Z/NZ). At this time, the elliptic curve issuing unit 21 stores trap door information T(p1, p2, j1, j2), which is the order information of the elliptic curve E and is used in the calculation of the pairing e described later, in the trap door information storage. It is stored in the section 211. Z is a rational integer ring, and N=p1p2. Further, each jd (d=1, 2) is a sufficiently large prime number that satisfies jd|(pd+1). Here, jd|(pd+1) means that jd is divisible by (pd+1).

続いて、楕円曲線発行部21は、楕円曲線Eを鍵発行局40に送信する(S102)。鍵発行局40は、マスタ秘密鍵sとする整数を生成し(S103)、サービス提供サーバ10にQとsQを送信する(S104)。ここで、Qは、楕円曲線E上の点であり、sQは、楕円曲線E上におけるスカラー倍算を意味する。なお、楕円曲線Eは、複数のサービス提供サーバ10に対して共通である。一方、マスタ秘密鍵s、Q及びsQは、サービス提供サーバ10ごと(サービスごと)に異なる。なお、以下において、基本的に、小文字のアルファベット1文字は、整数を示す。大文字のアルファベット1文字は、楕円曲線E上の点を示す。整数をa、楕円曲線E上の点をBとした場合に、aBは、Bについてのaによる楕円曲線E上におけるスカラー倍算を示す。 Then, the elliptic curve issuing unit 21 transmits the elliptic curve E to the key issuing authority 40 (S102). The key issuing station 40 generates an integer as the master secret key s (S103), and transmits Q and sQ to the service providing server 10 (S104). Here, Q is a point on the elliptic curve E, and sQ means scalar multiplication on the elliptic curve E. The elliptic curve E is common to a plurality of service providing servers 10. On the other hand, the master secret keys s, Q and sQ are different for each service providing server 10 (each service). In the following, basically, one lowercase alphabetic character indicates an integer. One uppercase letter indicates a point on the elliptic curve E. When a is an integer and B is a point on the elliptic curve E, aB represents a scalar multiplication of B on a elliptic curve E by a.

サービス提供サーバ10の鍵受信部11は、Q及びsQを受信すると、Qを公開鍵として、sQを秘密鍵としてそれぞれを鍵記憶部121に保存する(S105)。なお、サービス提供サーバ10と認証サーバ20との通信は暗号化されているものとする。 Upon receiving Q and sQ, the key receiving unit 11 of the service providing server 10 stores Q as a public key and sQ as a secret key in the key storage unit 121 (S105). The communication between the service providing server 10 and the authentication server 20 is assumed to be encrypted.

一方、クライアント端末30は、IDのハッシュ値であるA=H(ID)を含む登録要求を鍵発行局40に送信する(S111)。H(x)は、xについての楕円曲線E上のハッシュ値を算出する関数である。また、IDは、クライアント端末30ごとの識別情報であり、例えば、各クライアント端末30に予め保存されている。 On the other hand, the client terminal 30 transmits a registration request including A=H(ID), which is a hash value of the ID, to the key issuing authority 40 (S111). H(x) is a function that calculates a hash value on the elliptic curve E for x. The ID is identification information for each client terminal 30, and is stored in advance in each client terminal 30, for example.

鍵発行局40は、当該登録要求を受信すると、マスタ秘密鍵sと当該登録要求に含まれているAとに基づいてsAを発行(計算)し(S112)、sAを暗号化通信によってクライアント端末30に送信する(S113)。続いて、ユーザがPIN(Personal Identification Number:個人暗証番号)α1を入力すると(S114)、クライアント端末30は、(s−α1)Aをクライアント端末30内に保存する(S115)。 Upon receiving the registration request, the key issuing station 40 issues (calculates) sA based on the master secret key s and A included in the registration request (S112), and sA is encrypted by communication with the client terminal. 30 (S113). Subsequently, when the user inputs a PIN (Personal Identification Number) α1 (S114), the client terminal 30 stores (s−α1)A in the client terminal 30 (S115).

以上で前処理は終了する。続いて、認証時の処理手順について説明する。図5は、第1の実施の形態の認証時の処理手順の一例を説明するためのシーケンス図である。 With that, the preprocessing ends. Subsequently, a processing procedure at the time of authentication will be described. FIG. 5 is a sequence diagram for explaining an example of a processing procedure at the time of authentication according to the first embodiment.

ユーザによって、PINα2がクライアント端末30に入力されると(S201)、クライアント端末30は乱数xを生成する(S202)。続いて、クライアント端末30は、U=xAを計算し(S203)、(ID,U)を含むログイン要求を、例えば、ユーザによって指定されたサービス提供サーバ10に送信する(S204)。 When PINα2 is input to the client terminal 30 by the user (S201), the client terminal 30 generates a random number x (S202). Subsequently, the client terminal 30 calculates U=xA (S203), and transmits a login request including (ID, U) to the service providing server 10 designated by the user (S204), for example.

サービス提供サーバ10のログイン要求受信部12は、当該ログイン要求を受信すると、乱数yを生成し(S205)、乱数yをクライアント端末30に送信する(S206)。 Upon receiving the login request, the login request receiving unit 12 of the service providing server 10 generates a random number y (S205) and transmits the random number y to the client terminal 30 (S206).

クライアント端末30は、乱数yを受信すると、認証情報V=−(x+y)((s−α1)A+α2A)を生成(計算)し(S207)、認証情報Vをサービス提供サーバ10に送信する(S208)。ここで、(s−α1)Aは、予めクライアント端末30に保存されている値である。なお、正しいユーザであれば、α1=α2である。 Upon receiving the random number y, the client terminal 30 generates (calculates) the authentication information V=−(x+y)((s−α1)A+α2A) (S207), and transmits the authentication information V to the service providing server 10 (S208). ). Here, (s-α1)A is a value stored in the client terminal 30 in advance. If the user is correct, α1=α2.

サービス提供サーバ10の認証情報受信部13が、認証情報Vを受信すると、認証要求部14は、乱数r1を生成する(S209)。続いて、認証要求部14は、(V,r1Q,(U+yA),r1sQ)を含む認証要求を認証サーバ20に送信する(S210)。すなわち、Q及びsQには、共通の乱数r1が適用される。sQに乱数r1が適用されるのは、秘密鍵であるsQをそのままネットワーク上に流通させるのはセキュリティの観点において好ましくないからである。Qに乱数r1が適用されるのは、sQに適用された乱数r1と同じ乱数を適用することで、後述のペアリングeの計算を可能とするためである。なお、認証要求部14は、ステップS204において受信されたIDに基づいて、Aを計算し、更に、yAを計算する。 When the authentication information receiving unit 13 of the service providing server 10 receives the authentication information V, the authentication requesting unit 14 generates a random number r1 (S209). Then, the authentication requesting unit 14 transmits an authentication request including (V, r1Q, (U+yA), r1sQ) to the authentication server 20 (S210). That is, the common random number r1 is applied to Q and sQ. The random number r1 is applied to sQ because it is not preferable in terms of security to distribute the secret key sQ on the network as it is. The reason why the random number r1 is applied to Q is that the same random number as the random number r1 applied to sQ is applied to enable calculation of the pairing e described later. The authentication requesting unit 14 calculates A based on the ID received in step S204, and further calculates yA.

認証サーバ20の認証処理部22は、当該認証要求を受信すると、トラップドア情報記憶部211に記憶されているトラップドア情報Tを用いてg=e(V,r1Q)e((U+yA),r1sQ)を計算する(S211)。すなわち、ペアリングeの計算が実行される。ここで、α1=α2であり、かつ、クライアント端末30に保存されている(s−α1)Aが正しければ、g=0となり、そうでなければ、g≠0となる。なお、計算方法は、例えば、「http://www.ieice-hbkb.org/files/01/01gun_03hen_07.pdf」及び「https://www.researchgate.net/publication/225174550_Hidden_Pairings_and_Trapdoor_DDH_Groups」等を参考とすることができる。続いて、認証処理部22は、計算結果gをサービス提供サーバ10に送信する(S212)。 Upon receiving the authentication request, the authentication processing unit 22 of the authentication server 20 uses the trap door information T stored in the trap door information storage unit 211 to g=e(V,r1Q)e((U+yA),r1sQ. ) Is calculated (S211). That is, the pairing e is calculated. Here, if α1=α2 and (s-α1)A stored in the client terminal 30 is correct, g=0, and if not, g≠0. The calculation method is based on, for example, "http://www.ieice-hbkb.org/files/01/01gun_03hen_07.pdf" and "https://www.researchgate.net/publication/225174550_Hidden_Pairings_and_Trapdoor_DDH_Groups". be able to. Subsequently, the authentication processing unit 22 transmits the calculation result g to the service providing server 10 (S212).

サービス提供サーバ10の認証結果受信部15は、計算結果gを受信すると、gに基づいて認証の成否を判定する(S213)。具体的には、g=0であれば認証は成功と判定され、それ以外であれば認証は失敗と判定される。続いて、認証結果受信部15は、認証結果をクライアント端末30に送信する(S214)。具体的には、g=0ならばaccept、それ以外ではrejectがクライアント端末30に送信される。 Upon receiving the calculation result g, the authentication result receiving unit 15 of the service providing server 10 determines the success or failure of the authentication based on g (S213). Specifically, if g=0, the authentication is determined to be successful, and otherwise, the authentication is determined to be unsuccessful. Subsequently, the authentication result receiving unit 15 transmits the authentication result to the client terminal 30 (S214). Specifically, accept is transmitted to the client terminal 30 if g=0, and reject otherwise.

上述したように、本実施の形態によれば、サービス提供サーバ10から認証サーバ20が分離され、複数のサービス提供サーバ10のそれぞれに対するログイン要求について、一つの認証サーバ20によって一元的に認証処理が実行される。したがって、鍵発行局40から秘密情報(マスタ秘密鍵s)が漏洩した場合でも認証サーバ20による処理を停止させることでなりすまし等の不正行為を防ぐことができる。その結果、M−Pinのための秘密情報の漏洩時の作業負担を軽減することができる。 As described above, according to the present embodiment, the authentication server 20 is separated from the service providing server 10, and the login request for each of the plurality of service providing servers 10 is centrally authenticated by one authentication server 20. To be executed. Therefore, even if the secret information (master secret key s) is leaked from the key issuing authority 40, the fraudulent act such as spoofing can be prevented by stopping the processing by the authentication server 20. As a result, it is possible to reduce the work load when the confidential information for the M-Pin is leaked.

また、M−Pinに必要なパラメータがサービス提供サーバ10から認証サーバ20へ送信される際において、サービス提供サーバ10の秘密鍵sQには乱数r1が適用される。したがって、秘密鍵sQが漏洩する可能性を低下させることができ、サービス提供サーバ10と認証サーバ20とを分離したことによるセキュリティの低下を抑制することができる。 Further, when the parameter necessary for the M-Pin is transmitted from the service providing server 10 to the authentication server 20, the random number r1 is applied to the secret key sQ of the service providing server 10. Therefore, it is possible to reduce the possibility that the secret key sQ is leaked, and it is possible to suppress the decrease in security due to the separation of the service providing server 10 and the authentication server 20.

また、サービス提供サーバ10の公開鍵Qに対しても、秘密鍵sQと共通の乱数r1が適用されることで、認証サーバ20におけるペアリングeの計算を可能とすることができる。 Further, by applying the same random number r1 as the secret key sQ to the public key Q of the service providing server 10, it is possible to calculate the pairing e in the authentication server 20.

なお、鍵発行局40は、複数存在してもよい。この場合であっても、サービス提供サーバ10と認証サーバ20との間のやりとりは、上記した通りでよい。 There may be a plurality of key issuing stations 40. Even in this case, the communication between the service providing server 10 and the authentication server 20 may be as described above.

次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。第2の実施の形態において特に言及されない点については、第1の実施の形態と同様でもよい。 Next, a second embodiment will be described. In the second embodiment, the points different from the first embodiment will be described. The points that are not particularly mentioned in the second embodiment may be the same as in the first embodiment.

図6は、第2の実施の形態の認証時の処理手順の一例を説明するためのシーケンス図である。図6中、図5と同一ステップには同一ステップ番号を付し、その説明は省略する。図6では、図5のステップS209〜S211が、S209a〜S211aに置換されている。 FIG. 6 is a sequence diagram for explaining an example of a processing procedure at the time of authentication according to the second embodiment. 6, those steps which are the same as those corresponding parts in FIG. 5 are designated by the same step numbers, and a description thereof will be omitted. In FIG. 6, steps S209 to S211 of FIG. 5 are replaced with S209a to S211a.

ステップS209aにおいて、認証情報受信部13は、認証情報Vを受信すると、乱数r1に加えて乱数r2を生成する(S209)。乱数r2は、乱数r1とは異なる乱数である。続いて、認証要求部14は、(r2V,r1Q,r2(U+yA),r1sQ)を含む認証要求を認証サーバ20に送信する(S210a)。すなわち、V及び(U+yA)に対して乱数r2が適用される。 Upon receiving the authentication information V in step S209a, the authentication information receiving unit 13 generates a random number r2 in addition to the random number r1 (S209). The random number r2 is a random number different from the random number r1. Subsequently, the authentication request unit 14 transmits an authentication request including (r2V, r1Q, r2(U+yA), r1sQ) to the authentication server 20 (S210a). That is, the random number r2 is applied to V and (U+yA).

認証サーバ20の認証処理部22は、当該認証要求を受信すると、トラップドア情報記憶部211に記憶されているトラップドア情報Tを用いてg=e(r2V,r1Q)e(r2(U+yA),r1sQ)を計算する(S211)。ここで、α1=α2であり、かつ、クライアント端末30に保存されている(s−α1)Aが正しければ、g=0となり、そうでなければ、g≠0となる。なお、計算方法は、第1の実施の形態と同様でよい。 Upon receiving the authentication request, the authentication processing unit 22 of the authentication server 20 uses the trap door information T stored in the trap door information storage unit 211 to g=e(r2V,r1Q)e(r2(U+yA), r1sQ) is calculated (S211). Here, if α1=α2 and (s-α1)A stored in the client terminal 30 is correct, g=0, and if not, g≠0. The calculation method may be the same as in the first embodiment.

なお、上記各実施の形態において、認証要求部14は、送信部の一例である。認証処理部22は、計算部の一例である。PINは、識別番号の一例である。 In each of the above embodiments, the authentication requesting unit 14 is an example of a transmitting unit. The authentication processing unit 22 is an example of a calculation unit. The PIN is an example of an identification number.

以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications are possible within the scope of the gist of the present invention described in the claims. It can be modified and changed.

1 認証システム
10 サービス提供サーバ
11 鍵受信部
12 ログイン要求受信部
13 認証情報受信部
14 認証要求部
15 認証結果受信部
20 認証サーバ
21 楕円曲線発行部
22 認証処理部
30 クライアント端末
40 鍵発行局
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
121 鍵記憶部
211 トラップドア情報記憶部
B バス
1 Authentication System 10 Service Providing Server 11 Key Receiving Section 12 Login Request Receiving Section 13 Authentication Information Receiving Section 14 Authentication Requesting Section 15 Authentication Result Receiving Section 20 Authentication Server 21 Elliptic Curve Issuing Section 22 Authentication Processing Section 30 Client Terminal 40 Key Issuing Bureau 100 Drive device 101 Recording medium 102 Auxiliary storage device 103 Memory device 104 CPU
105 Interface device 121 Key storage unit 211 Trap door information storage unit B bus

Claims (6)

クライアント端末にネットワークを介して接続されるサービス提供サーバと、前記サービス提供サーバにネットワークを介して接続される認証サーバとを含む認証システムであって、
前記サービス提供サーバは、
前記クライアント端末のユーザのM−Pinによる認証に必要なパラメータを前記認証サーバに送信する際に、前記サービス提供サーバの公開鍵及び秘密鍵については、共通の乱数を適用した値を前記認証サーバに送信する送信部を有し、
前記認証サーバは、
前記パラメータを受信すると、当該パラメータに基づいて、M−Pinのための計算を実行し、計算結果を前記サービス提供サーバに送信する計算部を有する、
ことを特徴とする認証システム。
An authentication system including a service providing server connected to a client terminal via a network, and an authentication server connected to the service providing server via a network,
The service providing server,
When a parameter required for M-Pin authentication of the user of the client terminal is transmitted to the authentication server, a public random number and a secret key of the service providing server are applied to the authentication server with a value to which a common random number is applied. Has a transmitter for transmitting,
The authentication server is
When the parameter is received, a calculation unit for executing calculation for M-Pin based on the parameter and transmitting the calculation result to the service providing server is provided.
An authentication system characterized by that.
前記送信部は、
前記クライアント端末が生成した乱数をx、
前記サービス提供サーバが生成した乱数をy及びr1、
正しい識別番号をα1、
前記クライアント端末にユーザによって入力された識別番号をα2、
マスタ秘密鍵をs、
前記サービス提供サーバの楕円曲線E上の公開鍵をQ、
サービス提供サーバの秘密鍵をsQ、
前記楕円曲線E上の前記クライアント端末のIDのハッシュ値をA、
V=−(x+y)((s−α1)A+α2A)、
U=xA、
とした場合に、V、r1Q、U+yA、r1sQを前記認証サーバに送信する、
ことを特徴とする請求項1記載の認証システム。
The transmitter is
The random number generated by the client terminal is x,
The random numbers generated by the service providing server are y and r1,
The correct identification number is α1,
The identification number input by the user to the client terminal is α2,
The master secret key is s,
The public key on the elliptic curve E of the service providing server is Q,
The private key of the service providing server is sQ,
The hash value of the ID of the client terminal on the elliptic curve E is A,
V=−(x+y)((s−α1)A+α2A),
U=xA,
, V, r1Q, U+yA, r1sQ are transmitted to the authentication server.
The authentication system according to claim 1, wherein:
前記送信部は、
前記クライアント端末が生成した乱数をx、
前記サービス提供サーバが生成した乱数をy,r1及びr2、
正しい識別番号をα1、
前記クライアント端末にユーザによって入力された識別番号をα2、
マスタ秘密鍵をs、
前記サービス提供サーバの楕円曲線E上公開鍵をQ、
サービス提供サーバの秘密鍵をsQ、
前記楕円曲線E上の前記クライアント端末のIDのハッシュ値をA、
V=−(x+y)((s−α1)A+α2A)、
U=xA、
とした場合に、r2V、r1Q、r2(U+yA)、r1sQを前記認証サーバに送信する、
ことを特徴とする請求項1記載の認証システム。
The transmitter is
The random number generated by the client terminal is x,
The random numbers generated by the service providing server are y, r1 and r2,
The correct identification number is α1,
The identification number input by the user to the client terminal is α2,
The master secret key is s,
The public key on the elliptic curve E of the service providing server is Q,
The private key of the service providing server is sQ,
The hash value of the ID of the client terminal on the elliptic curve E is A,
V=−(x+y)((s−α1)A+α2A),
U=xA,
In this case, r2V, r1Q, r2(U+yA) and r1sQ are transmitted to the authentication server,
The authentication system according to claim 1, wherein:
請求項1乃至3いずれか一項記載の認証システムが含む前記サービス提供サーバ。 The service providing server included in the authentication system according to claim 1. クライアント端末にネットワークを介して接続されるサービス提供サーバと、前記サービス提供サーバにネットワークを介して接続される認証サーバとが実行する認証方法であって、 An authentication method executed by a service providing server connected to a client terminal via a network, and an authentication server connected to the service providing server via a network,
前記サービス提供サーバが、 The service providing server,
前記クライアント端末のユーザのM−Pinによる認証に必要なパラメータを前記認証サーバに送信する際に、前記サービス提供サーバの公開鍵及び秘密鍵については、共通の乱数を適用した値を前記認証サーバに送信する送信手順を実行し、 When a parameter required for M-Pin authentication of the user of the client terminal is transmitted to the authentication server, a value to which a common random number is applied is applied to the authentication server as a public key and a secret key of the service providing server. Perform the send procedure to send,
前記認証サーバが、 The authentication server is
前記パラメータを受信すると、当該パラメータに基づいて、M−Pinのための計算を実行し、計算結果を前記サービス提供サーバに送信する計算手順を実行する、 When the parameter is received, the calculation for the M-Pin is executed based on the parameter, and the calculation procedure for transmitting the calculation result to the service providing server is executed,
ことを特徴とする認証方法。An authentication method characterized by the following.
請求項1乃至3いずれか一項記載の認証システムが含む前記サービス提供サーバとしてコンピュータを機能させることを特徴とするプログラム。 A program for causing a computer to function as the service providing server included in the authentication system according to any one of claims 1 to 3 .
JP2017110349A 2017-06-02 2017-06-02 Authentication system, service providing server, authentication method, and program Active JP6720113B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017110349A JP6720113B2 (en) 2017-06-02 2017-06-02 Authentication system, service providing server, authentication method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017110349A JP6720113B2 (en) 2017-06-02 2017-06-02 Authentication system, service providing server, authentication method, and program

Publications (2)

Publication Number Publication Date
JP2018207287A JP2018207287A (en) 2018-12-27
JP6720113B2 true JP6720113B2 (en) 2020-07-08

Family

ID=64958360

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017110349A Active JP6720113B2 (en) 2017-06-02 2017-06-02 Authentication system, service providing server, authentication method, and program

Country Status (1)

Country Link
JP (1) JP6720113B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5302665B2 (en) * 2008-12-25 2013-10-02 日本電信電話株式会社 Authentication server presentation method, service providing system, service providing apparatus, and service providing program
JP5723300B2 (en) * 2012-01-04 2015-05-27 株式会社野村総合研究所 Server system, service providing server, and control method
GB201309702D0 (en) * 2013-05-30 2013-07-17 Certivox Ltd Security

Also Published As

Publication number Publication date
JP2018207287A (en) 2018-12-27

Similar Documents

Publication Publication Date Title
JP6811339B2 (en) Read public data for blockchain networks using a highly available and reliable execution environment
EP3420677B1 (en) System and method for service assisted mobile pairing of password-less computer login
US10742626B2 (en) Method for key rotation
US8532620B2 (en) Trusted mobile device based security
CN109413201B (en) SSL communication method, device and storage medium
EP3639498B1 (en) Certificate pinning in highly secure network environments using public key certificates obtained from a dhcp (dynamic host configuration protocol) server
JP2017521934A (en) Method of mutual verification between client and server
US10375084B2 (en) Methods and apparatuses for improved network communication using a message integrity secure token
US10516653B2 (en) Public key pinning for private networks
Albalawi et al. A survey on authentication techniques for the internet of things
GB2554082A (en) User sign-in and authentication without passwords
JP2022534677A (en) Protecting online applications and web pages that use blockchain
Mun et al. A novel secure and efficient hash function with extra padding against rainbow table attacks
US11784993B2 (en) Cross site request forgery (CSRF) protection for web browsers
US20170295142A1 (en) Three-Tiered Security and Computational Architecture
Reimair et al. MoCrySIL-Carry your Cryptographic keys in your pocket
JP2018032907A (en) Content creation device, content creation method, and program
JP6720113B2 (en) Authentication system, service providing server, authentication method, and program
Bhattacharjya et al. A Novel Simplified Framework to Secure IoT Communications.
CN106464684B (en) Service processing method and device
EP3051770A1 (en) User opt-in computer implemented method for monitoring network traffic data, network traffic controller and computer programs
Yang et al. An improved scheme of secure access and detection of cloud front-end device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190617

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200414

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200604

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200617

R150 Certificate of patent or registration of utility model

Ref document number: 6720113

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150