JP6040313B2 - Multi-party secure authentication system, authentication server, multi-party secure authentication method and program - Google Patents
Multi-party secure authentication system, authentication server, multi-party secure authentication method and program Download PDFInfo
- Publication number
- JP6040313B2 JP6040313B2 JP2015532894A JP2015532894A JP6040313B2 JP 6040313 B2 JP6040313 B2 JP 6040313B2 JP 2015532894 A JP2015532894 A JP 2015532894A JP 2015532894 A JP2015532894 A JP 2015532894A JP 6040313 B2 JP6040313 B2 JP 6040313B2
- Authority
- JP
- Japan
- Prior art keywords
- authentication server
- value
- server
- authentication
- verification
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Description
この発明は、ネットワーク上の認証において、複数のサーバが同時にユーザを安全に認証する技術に関する。 The present invention relates to a technology in which a plurality of servers simultaneously securely authenticate users in authentication on a network.
ユーザが複数のサーバにまたがるサービスを受ける際に、各サーバに同時に安全に認証を受ける技術として、非特許文献1〜3に記載された技術が知られている(例えば、非特許文献1〜3参照。)。非特許文献1〜3に記載された技術は、安全なストレージサービスにおける認証技術であり、ユーザがパスワードを設定し、データを秘密分散と呼ばれる安全な方法で複数のサーバに分散して保管する。認証時に入力されたパスワードが正しければユーザは正しいデータを復元でき、パスワードが誤りであれば復元に失敗する。
When a user receives a service spanning a plurality of servers, the techniques described in
しかしながら、従来技術では、ユーザとストレージサーバが直結しているということを前提としており、Webサービス等におけるWebサーバのようにゲートウェイとしての中間サーバが存在する場合の安全性は保証できない。また、ストレージサービス以外に応用できないという課題もある。 However, the prior art is based on the premise that the user and the storage server are directly connected, and safety cannot be guaranteed when an intermediate server as a gateway exists like a Web server in a Web service or the like. There is also a problem that it cannot be applied to other than storage services.
この発明の目的は、中間サーバが存在する場合であっても安全性を保証することができるマルチパーティセキュア認証技術を提供することである。 An object of the present invention is to provide a multi-party secure authentication technique capable of guaranteeing safety even when an intermediate server exists.
上記の課題を解決するために、この発明の第一の態様のマルチパーティセキュア認証方法は、パスワード分散ステップ、パスワード分散値暗号化ステップ、パスワード分散値転送ステップ、パスワード分散値復号ステップ、中間サーバ検証値生成ステップ、中間サーバ検証値暗号化ステップ、中間サーバ検証値復号ステップ、中間サーバ検証ステップ、認証サーバ検証値生成ステップ、認証サーバ検証値暗号化ステップ、認証サーバ検証値復号ステップ及び認証サーバ検証ステップを含む。 In order to solve the above problems, a multi-party secure authentication method according to a first aspect of the present invention includes a password distribution step, a password distribution value encryption step, a password distribution value transfer step, a password distribution value decryption step, and an intermediate server verification. Value generation step, intermediate server verification value encryption step, intermediate server verification value decryption step, intermediate server verification step, authentication server verification value generation step, authentication server verification value encryption step, authentication server verification value decryption step, and authentication server verification step including.
以下では、n≧3であり、2k-1≦nであり、k≦mであり、m≦nであり、a1,…,amは1以上n以下の相異なるm個の整数であり、(k,n)秘密分散はn個の分散値のうちk個以上あれば復元することができる秘密分散であり、[r(W)]1,…,[r(W)]nは復元すると乱数r(W)となる(k,n)秘密分散による分散値であり、[r(i)]1,…,[r(i)]n(i=1,…,n)は復元すると乱数r(i)となる(k,n)秘密分散による分散値であり、[0(W)]1,…,[0(W)]nは復元すると0となる(k,n)秘密分散による分散値であり、[0(a_i)]1,…,[0(a_i)]n(i=1,…,m)は復元すると0となる(k,n)秘密分散による分散値であるとする。In the following, n ≧ 3, 2k-1 ≦ n, k ≦ m, m ≦ n, and a 1 ,..., Am are m different integers of 1 to n. , (K, n) secret sharing is a secret sharing that can be restored if there are k or more of n shared values, and [r (W) ] 1 , ..., [r (W) ] n is restored Then, the random value r (W) is the (k, n) secret sharing value, and [r (i) ] 1 , ..., [r (i) ] n (i = 1, ..., n) The random value r (i) is a (k, n) secret sharing value, and [0 (W) ] 1 , ..., [0 (W) ] n becomes 0 when restored (k, n) secret sharing [0 (a_i) ] 1 , ..., [0 (a_i) ] n (i = 1, ..., m) is 0 when restored (k, n) And
パスワード分散ステップにおいて、利用者装置が、入力されたパスワードw'をn個の分散値[w']1,…,[w']nに分散する。パスワード分散値暗号化ステップにおいて、利用者装置が、i=1,…,nについて、利用者装置とi番目の認証サーバとの共通鍵を用いて、分散値[w']iを暗号化した暗号文EncUS_i([w']i)を得る。パスワード分散値転送ステップにおいて、中間サーバが、i=1,…,nについて、利用者装置から受信した暗号文EncUS_i([w']i)をi番目の認証サーバへ送信する。パスワード分散値復号ステップにおいて、認証サーバが、利用者装置と当該認証サーバとの共通鍵を用いて、中間サーバから受信した暗号文EncUS_i([w']i)を復号して分散値[w']iを得る。中間サーバ検証値生成ステップにおいて、λa_i (W)(i∈1,…,m)は次式を満たす定数であり、 In the password distribution step, the user device distributes the input password w ′ into n distributed values [w ′] 1 ,..., [W ′] n . In the password distributed value encryption step, the user device encrypted the distributed value [w ′] i using a common key between the user device and the i-th authentication server for i = 1,..., N. The ciphertext Enc US_i ([w '] i ) is obtained. In the password distributed value transfer step, the intermediate server transmits the cipher text Enc US_i ([w ′] i ) received from the user device to i-th authentication server for i = 1,..., N. In the password distributed value decryption step, the authentication server decrypts the ciphertext Enc US_i ([w '] i ) received from the intermediate server using the common key between the user device and the authentication server, and distributes the value [w '] get i . In the intermediate server verification value generation step, λ a_i (W) (i∈1, ..., m) is a constant that satisfies the following equation:
^λa_i (W)(i∈1,…,m)は次式を満たす定数であり、^ λ a_i (W) (i∈1,…, m) is a constant that satisfies
λa_i (j)(i∈1,…,m)は次式を満たす定数であり、λ a_i (j) (i∈1, ..., m) is a constant that satisfies
^λa_i (j)(i∈1,…,m)は次式を満たす定数であるとして、^ λ a_i (j) (i∈1,…, m) is a constant that satisfies
認証サーバが、次式により検証値qa_i (W)を求める。Authentication server obtains the following equation verification value q a_i (W).
中間サーバ検証値暗号化ステップにおいて、認証サーバが、中間サーバと当該認証サーバとの共通鍵を用いて、検証値qa_i (W)を暗号化した暗号文EncWS_a_i(qa_i (W))を得る。中間サーバ検証値復号ステップにおいて、中間サーバが、i=1,…,mについて、中間サーバとai番目の認証サーバとの共通鍵を用いて、ai番目の認証サーバから受信した暗号文EncWS_a_i(qa_i (W))を復号して検証値qa_i (W)を得る。中間サーバ検証ステップにおいて、中間サーバが、検証値qa_1 (W),…,qa_m (W)の総和が0と等しいか否かを検証する。認証サーバ検証値生成ステップにおいて、認証サーバが、j=1,…,mについて、次式により検証値qa_i (a_j)を求める。In the intermediate server verification value encryption step, the authentication server uses the common key between the intermediate server and the authentication server to encrypt a ciphertext Enc WS_a_i (q a_i (W) ) obtained by encrypting the verification value q a_i (W). obtain. In the intermediate server verification value decryption step, the ciphertext Enc received from the a i th authentication server by the intermediate server for i = 1,..., M using a common key between the intermediate server and the a i th authentication server. WS_a_i (q a_i (W) ) is decoded to obtain a verification value q a_i (W) . In the intermediate server verification step, the intermediate server verifies whether the sum of the verification values q a — 1 (W) ,..., Q a — m (W) is equal to zero. In the authentication server verification value generation step, the authentication server obtains a verification value q a_i (a_j) for j = 1 ,.
認証サーバ検証値暗号化ステップにおいて、認証サーバが、j=1,…,mについて、aj番目の認証サーバと当該認証サーバとの共通鍵を用いて、検証値qa_i (a_j)を暗号化した暗号文EncS_a_iS_a_j(qa_i (a_j))を得る。認証サーバ検証値復号ステップにおいて、認証サーバが、j=1,…,mについて、aj番目の認証サーバと当該認証サーバとの共通鍵を用いて、aj番目の認証サーバから受信した暗号文EncS_a_iS_a_j(qa_j (a_i))を復号して検証値qa_j (a_i)を得る。認証サーバ検証ステップにおいて、認証サーバが、検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する。In the authentication server verification value encryption step, the authentication server encrypts the verification value q a_i (a_j) using the common key between the jth authentication server and the authentication server for j = 1, ..., m. The encrypted ciphertext Enc S_a_iS_a_j (q a_i (a_j) ) is obtained. In the authentication server verification value decoding step, authentication servers, j = 1, ..., for m, using a common key between a j-th authentication server and the authentication server, the cipher text received from a j-th authentication server Enc S_a_iS_a_j (q a_j (a_i) ) is decoded to obtain a verification value q a_j (a_i) . In the authentication server verification step, the authentication server verifies whether or not the sum of verification values q a — 1 (a_i) ,..., Q a — m (a_i) is equal to zero.
この発明の第二の態様のマルチパーティセキュア認証方法は、パスワード分散ステップ、パスワード分散値暗号化ステップ、パスワード分散値転送ステップ、第一パスワード分散値復号ステップ、第二パスワード分散値復号ステップ、第一認証サーバ検証値生成ステップ、第二認証サーバ検証値生成ステップ、第一認証サーバ検証値暗号化ステップ、第二認証サーバ検証値暗号化ステップ、第一認証サーバ検証値復号ステップ、第二認証サーバ検証値復号ステップ、第一認証サーバ検証ステップ及び第二認証サーバ検証ステップを含む。 The multi-party secure authentication method according to the second aspect of the present invention includes a password distribution step, a password distribution value encryption step, a password distribution value transfer step, a first password distribution value decryption step, a second password distribution value decryption step, a first Authentication server verification value generation step, second authentication server verification value generation step, first authentication server verification value encryption step, second authentication server verification value encryption step, first authentication server verification value decryption step, second authentication server verification A value decoding step, a first authentication server verification step, and a second authentication server verification step are included.
以下では、n≧3であり、2k-1≦nであり、k≦mであり、m≦nであり、a1,…,amはam=nかつそれぞれ1以上n以下の相異なるm個の整数であり、(k,n)秘密分散はn個の分散値のうちk個以上あれば復元することができる秘密分散であり、[r(i)]1,…,[r(i)]n(i=1,…,n)は復元すると乱数r(i)となる(k,n)秘密分散による分散値であり、[0(a_i)]1,…,[0(a_i)]n(i=1,…,m)は復元すると0となる(k,n)秘密分散による分散値であり、
λa_i (j)(i∈1,…,m)は次式を満たす定数であり、In the following, n ≧ 3, 2k-1 ≦ n, k ≦ m, m ≦ n, and a 1 ,..., A m are different from each other by a m = n and 1 or more and n or less. m integers, and (k, n) secret sharing is a secret sharing that can be restored if there are k or more of n sharing values, and [r (i) ] 1 , ..., [r ( i) ] n (i = 1, ..., n) is a random value r (i) when restored, (k, n) is a shared value by secret sharing, and [0 (a_i) ] 1 , ..., [0 (a_i ) ] n (i = 1, ..., m) is 0 when restored (k, n)
λ a_i (j) (i∈1, ..., m) is a constant that satisfies
^λa_i (j)(i∈1,…,m)は次式を満たす定数であるとする。^ λ a_i (j) (i∈1, ..., m) is a constant that satisfies the following equation.
パスワード分散ステップにおいて、利用者装置が、入力されたパスワードw'をn個の分散値[w']1,…,[w']nに分散する。パスワード分散値暗号化ステップにおいて、利用者装置が、i=1,…,n-1について、利用者装置とi番目の認証サーバとの共通鍵を用いて、分散値[w']iを暗号化した暗号文EncUS_i([w']i)を得、利用者装置と中間認証サーバとの共通鍵を用いて、分散値[w']nを暗号化した暗号文EncUS_n([w']n)を得る。パスワード分散値転送ステップにおいて、中間認証サーバが、i=1,…,n-1について、利用者装置から受信した暗号文EncUS_i([w']i)をi番目の認証サーバへ送信する。第一パスワード分散値復号ステップにおいて、認証サーバが、利用者装置と当該認証サーバとの共通鍵を用いて、中間認証サーバから受信した暗号文EncUS_i([w']i)を復号して分散値[w']iを得る。第二パスワード分散値復号ステップにおいて、中間認証サーバが、利用者装置と当該中間認証サーバとの共通鍵を用いて、暗号文EncUS_n([w']n)を復号して分散値[w']nを得る。第一認証サーバ検証値生成ステップにおいて、認証サーバが、j=1,…,mについて、次式により検証値qa_i (a_j)を求める。 In the password distribution step, the user device distributes the input password w ′ into n distributed values [w ′] 1 ,..., [W ′] n . In the password distributed value encryption step, the user device encrypts the distributed value [w ′] i using a common key between the user device and the i-th authentication server for i = 1,..., N−1. phased ciphertext Enc US_i ([w '] i ) give, using the common key between the user device and the intermediate authentication server, variance [w'] encrypt n ciphertext Enc US_n ([w ' ] get n ). In the password distributed value transfer step, the intermediate authentication server transmits the cipher text Enc US_i ([w ′] i ) received from the user device to i-th authentication server for i = 1,..., N−1. In the first password distributed value decryption step, the authentication server decrypts and distributes the ciphertext Enc US_i ([w '] i ) received from the intermediate authentication server using a common key between the user device and the authentication server. Get the value [w '] i . In the second password distributed value decryption step, the intermediate authentication server decrypts the ciphertext Enc US_n ([w ′] n ) using the common key between the user device and the intermediate authentication server, and the distributed value [w ′ ] get n . In the first authentication server verification value generation step, the authentication server obtains a verification value q a_i (a_j) for j = 1 ,.
第二認証サーバ検証値生成ステップにおいて、中間認証サーバが、j=1,…,mについて、次式により検証値qa_m (a_j)を求める。In the second authentication server verification value generation step, the intermediate authentication server calculates a verification value q a_m (a_j) for j = 1 ,.
第一認証サーバ検証値暗号化ステップにおいて、認証サーバが、j=1,…,mについて、aj番目の認証サーバおよびam番目の中間認証サーバと当該認証サーバとの共通鍵を用いて、検証値qa_i (a_j)を暗号化した暗号文EncS_a_iS_a_j(qa_i (a_j))を得る。第二認証サーバ検証値暗号化ステップにおいて、中間認証サーバが、j=1,…,m-1について、aj番目の認証サーバと当該中間認証サーバとの共通鍵を用いて、検証値qa_m (a_j)を暗号化した暗号文EncS_a_mS_a_j(qa_m (a_j))を得る。第一認証サーバ検証値復号ステップにおいて、認証サーバが、j=1,…,mについて、aj番目の認証サーバおよびam番目の中間認証サーバと当該認証サーバとの共通鍵を用いて、aj番目の認証サーバから受信した暗号文EncS_a_iS_a_j(qa_j (a_i))を復号して検証値qa_j (a_i)を得る。第二認証サーバ検証値復号ステップにおいて、中間認証サーバが、j=1,…,m-1について、aj番目の認証サーバと当該中間認証サーバとの共通鍵を用いて、aj番目の認証サーバから受信した暗号文EncS_a_mS_a_j(qa_j (a_m))を復号して検証値qa_j (a_m)を得る。第一認証サーバ検証ステップにおいて、認証サーバが、検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する。第二認証サーバ検証ステップにおいて、中間認証サーバが、検証値qa_1 (a_m),…,qa_m (a_m)の総和が0と等しいか否かを検証する。In the first authentication server verification value encryption step, with respect to j = 1,..., M, the a j- th authentication server and the a m- th intermediate authentication server and a common key of the authentication server, A ciphertext Enc S_a_iS_a_j (q a_i (a_j) ) obtained by encrypting the verification value q a_i (a_j ) is obtained. In the second authentication server verification value encryption step, for the j = 1,..., M−1, the intermediate authentication server uses a common key between the a jth authentication server and the intermediate authentication server to verify the verification value q a_m A ciphertext Enc S_a_mS_a_j (q a_m (a_j) ) obtained by encrypting (a_j ) is obtained. In the first authentication server verification value decryption step, for the j = 1,..., M, the authentication server uses a common key between the a j- th authentication server and the a m- th intermediate authentication server and the authentication server to The ciphertext Enc S_a_iS_a_j (q a_j (a_i) ) received from the j- th authentication server is decrypted to obtain a verification value q a_j (a_i) . In the second authentication server verification value decoding step, intermediate authentication server, j = 1, ..., the m-1, using a common key between a j-th authentication server and the intermediate authentication server, a j-th authentication The ciphertext Enc S_a_mS_a_j (q a_j (a_m) ) received from the server is decrypted to obtain a verification value q a_j (a_m) . In the first authentication server verification step, the authentication server verifies whether or not the sum of the verification values q a — 1 (a_i) ,..., Q a — m (a_i) is equal to zero. In the second authentication server verification step, the intermediate authentication server verifies whether the sum of the verification values q a — 1 (a_m) ,..., Q a — m (a_m) is equal to 0 or not.
この発明によれば、中間サーバが存在する場合であっても複数のサーバが同時にユーザを安全に認証することができる。 According to the present invention, even when an intermediate server exists, a plurality of servers can simultaneously securely authenticate users.
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。 Hereinafter, embodiments of the present invention will be described in detail. In addition, the same number is attached | subjected to the component which has the same function in drawing, and duplication description is abbreviate | omitted.
[表記方法]
実施形態の説明に先立ち、この明細書で用いる表記方法および用語を定義する。
・_(アンダースコア)は下付き添字を表す。例えば、xy_zはyzがxに対する上付き添字であり、xy_zはyzがxに対する下付き添字であることを表す。
・^(キャレット)は直後の文字にサーカムフレックスが付されることを表す。例えば、^λは数式内における以下の文字を表している。[Notation]
Prior to the description of the embodiments, notation methods and terms used in this specification are defined.
• _ (underscore) represents a subscript. For example, xy_z represents that yz is a superscript to x, and xy_z represents that yz is a subscript to x.
・ ^ (Caret) indicates that circumflex is added immediately after the character. For example, ^ λ represents the following characters in the formula:
・→(上付き右矢印)はベクトルを表す。
・[](角括弧)は括弧内のデータの分散値を表す。例えば、[w]はwの分散値である。
・EncAB(X)は、ノードAとノードBとの共通鍵によりデータXを暗号化した暗号文を表す。• → (superscript right arrow) represents a vector.
-[] (Square brackets) represents the variance of the data in parentheses. For example, [w] is a variance value of w.
Enc AB (X) represents a ciphertext obtained by encrypting the data X with the common key between the node A and the node B.
[基本的な考え方]
この発明のマルチパーティセキュア認証技術の基本的な考え方を説明する。[basic way of thinking]
The basic concept of the multi-party secure authentication technique of the present invention will be described.
全体を通しての登場人物は、利用者端末(利用者装置とも呼ぶ)1、中間サーバ2及びn台の認証サーバ31,…,3nである。ただし、nは3以上の整数である。
Characters throughout are a user terminal (also called user device) 1, an
まず、システムを利用する利用者端末1のパスワードがwであることを認証サーバ群31,…,3nに登録する。認証を実施する際に併せて用いるいくつかの乱数についてもユーザで生成し、各認証サーバ31,…,3nに送る。このとき、間に入る中間サーバ2がこれらの情報を悪用し利用者端末1に成りすまさないよう、送信する分散値等は各認証サーバ31,…,3nとの共通鍵で暗号化しておく。また、パスワード自体も秘密分散を用い、各認証サーバ31,…,3nにはパスワードの分散値のみを保存する。そのため、各認証サーバ31,…,3nは、パスワードそのものはわからない。First, the fact that the password of the
次に、認証の実施手順について述べる。利用者端末1がパスワードw’によって認証を試みてきた場合、登録されている利用者端末1のパスワードwと入力されたパスワードw’とが一致することを確認するために、wとw’との差が0であることを協調計算によって導く。認証の権限がシステムを構成する各参加者(具体的には、中間サーバ2及び認証サーバ31,…,3n)のいずれかに偏ることがないように、各参加者が認証のための計算を行う。協調計算によって登録されたパスワードw及び入力されたパスワードw’が各参加者に知られることがないように、乱数と組み合わせて協調計算を行う。また、このとき用いられる乱数を次回の認証で使い回さないように、認証の手順の最後で乱数を更新する。Next, an authentication procedure will be described. When the
さらに、認証手順において中間サーバ2を介して交わされる暗号文を悪用することによるリプレイ攻撃に対処するために、あらかじめ認証サーバ31,…,3nで乱数を生成し利用者端末1と共有することによって、認証時に送信するパスワードの暗号文を再利用できなくする改良方法について述べる。なお、リプレイ攻撃とは、認証成功した暗号文を再利用して、中間サーバ2が利用者装置1になりすまして認証を成功させてしまう攻撃である。Further, in order to cope with a replay attack by misusing the ciphertext exchanged via the
[秘密分散技術]
この発明では構成要素として秘密分散技術を用いる。この発明で用いる秘密分散技術では、2k-1<nであるような(k,n)秘密分散を用いる。(k,n)秘密分散は、あるデータをn個に分割し、そのうちk-1個まで集めても元データについては何もわからないが、k個以上集めると元データを復元できるような技術である。[Secret sharing technology]
In the present invention, a secret sharing technique is used as a component. The secret sharing technique used in the present invention uses (k, n) secret sharing such that 2k-1 <n. (k, n) Secret sharing is a technology that divides certain data into n pieces, and even if k-1 pieces are collected, nothing is known about the original data, but if more than k pieces are collected, the original data can be restored. is there.
具体的には、秘密分散技術は、以下に説明するShareアルゴリズムとReconstアルゴリズムとから構成される。 Specifically, the secret sharing technique includes a Share algorithm and a Reconst algorithm described below.
Shareアルゴリズムはデータを分割するアルゴリズムである。分割されたデータはシェアもしくは分散値と呼ばれる。Shareアルゴリズムは秘密sを入力としてn個に分割して出力する。この手続きを次式のように記述する。 The Share algorithm is an algorithm for dividing data. The divided data is called a share or a variance value. The Share algorithm takes the secret s as input and divides it into n pieces for output. This procedure is described as follows:
Reconstアルゴリズムはデータを復元するアルゴリズムである。Reconstアルゴリズムはm個(k≦m≦n)のシェアを入力として元の秘密sを出力する。この発明で利用する秘密分散技術では、mと{a1,…,am}とから決定するλa_i(i=1,…,m)が存在し、次式が成り立つとする。a1,…,amは1以上n以下の相異なるm個の整数である。The Reconst algorithm is an algorithm for restoring data. The Reconst algorithm takes m (k ≦ m ≦ n) shares as input and outputs the original secret s. The secret sharing technique utilized in the present invention, m and {a 1, ..., a m } and determining from λ a_i (i = 1, ... , m) is present, the following equation holds. a 1 ,..., a m are m integers different from 1 to n.
[第一実施形態]
図1を参照して、第一実施形態に係るマルチパーティセキュア認証システムの機能構成の一例を説明する。マルチパーティセキュア認証システムは、利用者装置1、中間サーバ2及びn台の認証サーバ31,…,3nを含む。[First embodiment]
An example of a functional configuration of the multi-party secure authentication system according to the first embodiment will be described with reference to FIG. The multi-party secure authentication system includes a
図2を参照して、利用者装置1の機能構成の一例を説明する。利用者装置1は、制御部101、メモリ102、共通鍵記憶部11、パスワード分散部12及びパスワード分散値暗号化部13を含む。利用者装置1は、例えば、中央演算処理装置(Central Processing Unit、CPU)、主記憶装置(Random Access Memory、RAM)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。利用者装置1は、例えば、制御部101の制御のもとで各処理を実行する。利用者装置1に入力されたデータや各処理で得られたデータは、例えば、メモリ102に格納され、メモリ102に格納されたデータは必要に応じて読み出されて他の処理に利用される。利用者装置1が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。
An example of the functional configuration of the
図3を参照して、中間サーバ2の機能構成の一例を説明する。中間サーバ2は、制御部201、メモリ202、共通鍵記憶部21、パスワード分散値転送部22、中間サーバ検証値復号部23及び中間サーバ検証部24を含む。中間サーバ2は、例えば、中央演算処理装置(Central Processing Unit、CPU)、主記憶装置(Random Access Memory、RAM)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。中間サーバ2は、例えば、制御部201の制御のもとで各処理を実行する。利用者装置1に入力されたデータや各処理で得られたデータは、例えば、メモリ202に格納され、メモリ202に格納されたデータは必要に応じて読み出されて他の処理に利用される。中間サーバ2が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。
An example of the functional configuration of the
図4を参照して、認証サーバ3の機能構成の一例を説明する。認証サーバ3は、制御部301、メモリ302、乱数分散値生成部31、ゼロ分散値生成部32、パスワード分散値復号部33、中間サーバ検証値生成部34、中間サーバ検証値暗号化部35、認証サーバ検証値生成部36、認証サーバ検証値暗号化部37、認証サーバ検証値復号部38、認証サーバ検証部39、共通鍵記憶部41及び分散値記憶部42を含む。認証サーバ3は、例えば、中央演算処理装置(Central Processing Unit、CPU)、主記憶装置(Random Access Memory、RAM)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。認証サーバ3は、例えば、制御部301の制御のもとで各処理を実行する。認証サーバ3に入力されたデータや各処理で得られたデータは、例えば、メモリ302に格納され、メモリ302に格納されたデータは必要に応じて読み出されて他の処理に利用される。認証サーバ3が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。認証サーバ3が備える各記憶部は、それぞれ論理的に分割されていればよく、一つの物理的な記憶装置に記憶されていてもよい。
An example of a functional configuration of the
図5〜10を参照して、マルチパーティセキュア認証方法の処理フローの一例を、実際に行われる手続きの順に従って説明する。 With reference to FIGS. 5 to 10, an example of the processing flow of the multi-party secure authentication method will be described in the order of procedures actually performed.
利用者端末1の共通鍵記憶部11には、利用者端末1が暗号化通信を行う各装置との共通鍵が記憶されている。具体的には、利用者端末1と各認証サーバ31,…,3nとの共通鍵であり、計n個の共通鍵が記憶されている。The common
中間サーバ2の共通鍵記憶部21には、中間サーバ2が暗号化通信を行う各装置との共通鍵が記憶されている。具体的には、中間サーバ2と各認証サーバ31,…,3nとの共通鍵であり、計n個の共通鍵が記憶されている。The common
i番目の認証サーバ3iの共通鍵記憶部41には、認証サーバ3iが暗号化通信を行う各装置との共通鍵が記憶されている。具体的には、利用者端末1、中間サーバ2、他のn-1台の認証サーバ3j(j=1,…,n、j≠i)との共通鍵であり、1台の認証サーバ3の共通鍵記憶部41には計n+1個の共通鍵が記憶されている。The common
この発明で用いる共通鍵暗号方式は、既存のいかなる共通鍵暗号方式であってもよく、この発明を適用する情報システムにおいて求められる安全性や処理速度などを勘案して選択すればよい。各装置の記憶する共通鍵は、選択された共通鍵暗号方式に則って生成された共通鍵であり、当該共通鍵暗号方式が許容する鍵交換方式により共有すればよい。 The common key cryptosystem used in the present invention may be any existing common key cryptosystem, and may be selected in consideration of the safety and processing speed required in the information system to which the present invention is applied. The common key stored in each device is a common key generated according to the selected common key encryption method, and may be shared by a key exchange method allowed by the common key encryption method.
<<パスワード登録フェーズ>>
図5を参照して、マルチパーティセキュア認証方法のパスワード登録フェーズの処理を説明する。パスワード登録フェーズは、新規にユーザを登録する場合または登録済みユーザのパスワードを変更する場合に実行される。<< Password registration phase >>
With reference to FIG. 5, the process of the password registration phase of the multi-party secure authentication method will be described. The password registration phase is executed when a new user is registered or when a password of a registered user is changed.
ステップS101において、利用者端末1のパスワード分散部12は、パスワードwをn個の分散値[w]1,…,[w]nに分散する。パスワードwはユーザUにより利用者端末1を操作して入力された任意のパスワードである。つまり、パスワード分散部12は、以下の式(3)の計算を行う。In step S101, the
ステップS102において、利用者端末1のパスワード分散値暗号化部13は、i=1,…,nについて、利用者装置1とi番目の認証サーバ3iとの共通鍵を用いて、分散値[w]iを暗号化した暗号文EncUS_i([w]i)を得る。In step S102, the password distributed
ステップS103において、利用者端末1のパスワード分散値暗号化部13は、ステップS102で得たn個の暗号文EncUS_1([w]1),…,EncUS_n([w]n)を中間サーバ2へ送信する。In step S103, the password distributed
ステップS201において、中間サーバ2のパスワード分散値転送部22は、利用者端末1から受信したn個の暗号文EncUS_1([w]1),…,EncUS_n([w]n)を受信し、i=1,…,nについて、暗号文EncUS_i([w]i)を認証サーバ3iへそれぞれ送信する。In step S201, the password distribution
ステップS301において、認証サーバ3iのパスワード分散値復号部33は、中間サーバ2から転送された暗号文EncUS_i([w]i)を受信する。In step S301, the password distribution
ステップS302において、認証サーバ3iのパスワード分散値復号部33は、利用者端末1と認証サーバ3iとの共通鍵を用いて、中間サーバ2から受信した暗号文EncUS_i([w]i)を復号して分散値[w]iを得る。分散値[w]iは、分散値記憶部42へ記憶する。In step S302, the
<<乱数生成フェーズ>>
図6を参照して、マルチパーティセキュア認証方法の乱数生成フェーズの処理を説明する。乱数生成フェーズは、少なくともパスワードを登録したユーザが認証を行う前に実行されている必要がある。<< Random number generation phase >>
With reference to FIG. 6, the process of the random number generation phase of the multi-party secure authentication method will be described. The random number generation phase needs to be executed at least before the user who has registered the password authenticates.
ステップS311において、認証サーバ3iの乱数分散値生成部31は、復元すると乱数r1,…,rdとなるd個の分散値[r1]i,…,[rd]iを生成する。生成した分散値[r1]i,…,[rd]iは、分散値記憶部42へ記憶する。ここで、d≧1である。In step S311, the
ステップS312において、認証サーバ3iのゼロ分散値生成部32は、復元すると0となるd個の分散値[01]i,…,[0d]iを生成する。生成した分散値[01]i,…,[0d]iは、分散値記憶部42へ記憶する。In step S312, the zero variance
ステップS311からステップS312の処理は、ステップS101からステップS302の処理と並行して実行しても構わないし、独立して予め行なっておいても構わない。 The processing from step S311 to step S312 may be executed in parallel with the processing from step S101 to step S302, or may be performed in advance independently.
<<認証フェーズ>>
図7〜9を参照して、マルチパーティセキュア認証方法の認証フェーズの処理を説明する。認証フェーズは、パスワードを登録しているユーザが認証を求める際に実行される。認証フェーズの処理は、n台の認証サーバ31,…,3nすべてが行う必要はなく、任意に選択したm台のみが実行すればよい。以降の説明では、a1,…,amを1以上n以下の相異なるm個の整数として、m台の認証サーバ3a_1,…,3a_mが認証フェーズの処理を行うものとする。<< Certification phase >>
Processing in the authentication phase of the multi-party secure authentication method will be described with reference to FIGS. The authentication phase is executed when a user who has registered a password requests authentication. The authentication phase process need not be performed by all the n
認証サーバ3a_iは、分散値記憶部42に記憶されている分散値[r1]a_i,…,[rd]a_iから[r(W)]a_i、[r(1)]a_i,…,[r(m)]a_iを選択する。また、同様に、認証サーバ3a_iは、分散値記憶部42に記憶されている分散値[01]a_i,…,[0d]a_iから[0(W)]a_i,[0(1)]a_i,…,[0(m)]a_iを選択する。The
図7に示すステップS121において、パスワードwを登録したユーザUが利用者端末1を操作して、認証を求めるためのパスワードw’を入力する。
In step S121 shown in FIG. 7, the user U who has registered the password w operates the
ステップS122において、利用者端末1のパスワード分散部12は、パスワードw’をn個の分散値[w’]1,…,[w’]nに分散する。つまり、パスワード分散部12は、以下の計算を行う。In step S122, the
ステップS123において、利用者端末1のパスワード分散値暗号化部13は、i=1,…,mについて、分散値[w']a_iを利用者装置1とai番目の認証サーバ3a_iとの共通鍵を用いて暗号化した暗号文EncUS_a_i([w']a_i)を得る。In step S123, the password
ステップS124において、利用者端末1のパスワード分散値暗号化部13は、ステップS123で得たn個の暗号文EncUS_1([w']1),…,EncUS_n([w']n)を中間サーバ2へ送信する。In step S124, the password distributed
ステップS221において、中間サーバ2のパスワード分散値転送部22は、利用者端末1から受信したn個の暗号文EncUS_1([w']1),…,EncUS_n([w']n)を受信し、i=1,…,mについて、暗号文EncUS_a_i([w']a_i)を認証サーバ3a_iへ送信する。In step S221, the password distribution
ステップS321において、認証サーバ3a_iのパスワード分散値復号部33は、中間サーバ2から転送された暗号文EncUS_a_i([w']a_i)を受信する。In step S321, the password distribution
ステップS322において、認証サーバ3a_iのパスワード分散値復号部33は、中間サーバ2から受信した暗号文EncUS_a_i([w']a_i)を利用者端末1と認証サーバ3a_iとの共通鍵を用いて復号して分散値[w']a_iを得る。In step S322, the password distribution
図8に示すステップS331において、認証サーバ3a_iの中間サーバ検証値生成部34は、分散値記憶部42に記憶されている分散値[w]a_i、[r(W)]a_i、[0(W)]a_i及びパスワード分散値復号部33の出力する分散値[w']a_iを用いて、下記の式(5)により検証値qa_i (W)を求める。In step S331 shown in FIG. 8, the intermediate server verification
ここで、λa_i (W)は式(6)を満たす既知の定数であり、^λa_i (W)は式(7)を満たす既知の定数である。Here, λ a — i (W) is a known constant that satisfies Equation (6), and ^ λ a — i (W) is a known constant that satisfies Equation (7).
ステップS332において、認証サーバ3a_iの中間サーバ検証値暗号化部35は、中間サーバ2と認証サーバ3a_iとの共通鍵を用いて、検証値qa_i (W)を暗号化した暗号文EncWS_a_i(qa_i (W))を得る。In step S332, the
ステップS333において、認証サーバ3a_iの中間サーバ検証値暗号化部35は、ステップS332で得た暗号文EncWS_a_i(qa_i (W))を中間サーバ2へ送信する。In step S333, the
ステップS231において、中間サーバ2の中間サーバ検証値復号部23は、m台の認証サーバ3a_1,…,3a_mから受信したm個の暗号文EncWS_a_1(qa_1 (W)),…,EncWS_a_m(qa_m (W))を受信する。In step S231, the intermediate server verification
ステップS232において、中間サーバ2の中間サーバ検証値復号部23は、i=1,…,mについて、中間サーバ2とai番目の認証サーバ3a_iとの共通鍵を用いて、暗号文EncWS_a_i(qa_i (W))を復号して検証値qa_i (W)を得る。中間サーバ検証値復号部23は、m個の検証値qa_1 (W),…,qa_m (W)を中間サーバ検証部24へ出力する。In step S232, the intermediate server verification
ステップS233において、中間サーバ2の中間サーバ検証部24は、検証値qa_1 (W),…,qa_m (W)の総和が0と等しいか否かを検証する。中間サーバ検証部24は、具体的には式(8)の等式が成り立つか否かを確認する。In step S233, the intermediate
中間サーバ検証部24は、式(8)が成り立つ場合には、利用者装置1へ認証成功を通知し、式(8)が成り立たない場合には、利用者装置1へ認証失敗を通知する。
The intermediate
図9に示すステップS341iにおいて、認証サーバ3a_iの認証サーバ検証値生成部36は、j=1,…,mについて、分散値記憶部42に記憶されている分散値[w]a_i、[r(a_j)]a_i、[0(a_j)]a_i及びパスワード分散値復号部33の出力する分散値[w']a_iを用いて、下記の式(9)により検証値qa_i (a_j)を求める。In step S341i shown in FIG. 9, the authentication server verification
ここで、λa_i (j)は式(10)を満たす既知の定数であり、^λa_i (j)は式(11)を満たす既知の定数である。Here, lambda a_i (j) is a known constant that satisfies the equation (10), ^ λ a_i ( j) is a known constant that satisfies the equation (11).
ステップS342iにおいて、認証サーバ3a_iの認証サーバ検証値暗号化部37は、j=1,…,m(j≠i)について、aj番目の認証サーバ3a_jとai番目の認証サーバ3a_iとの共通鍵を用いて、検証値qa_i (a_j)を暗号化した暗号文EncS_a_iS_a_j(qa_i (a_j))を得る。結果として、認証サーバ検証値暗号化部37は、m-1個の暗号文EncS_a_iS_a_1(qa_i (a_1)),…,EncS_a_iS_a_m(qa_i (a_m))(ただし、EncS_a_iS_a_i(qa_i (a_i))を除く)を得ることになる。In step S342i, the
ステップS343iにおいて、認証サーバ3a_iの認証サーバ検証値暗号化部37は、j=1,…,m(j≠i)について、ステップS342iで得たm-1個の暗号文EncS_a_iS_a_1(qa_i (a_1)),…,EncS_a_iS_a_m(qa_i (a_m))(ただし、EncS_a_iS_a_i(qa_i (a_i))を除く)を認証サーバ3a_jへそれぞれ送信する。In step S343i, the
ステップS344iにおいて、認証サーバ3a_iの認証サーバ検証値復号部38は、m-1台の認証サーバ3a_j(j=1,…,m(j≠i))からm-1個の暗号文EncS_a_1S_a_i(qa_1 (a_i)),…,EncS_a_mS_a_i(qa_m (a_i))(ただし、EncS_a_iS_a_i(qa_i (a_i))を除く)を受信する。In step S344i, the authentication server verification
ステップS345iにおいて、認証サーバ3a_iの認証サーバ検証値復号部38は、j=1,…,m(j≠i)について、aj番目の認証サーバ3a_jとai番目の認証サーバ3a_iとの共通鍵を用いて、暗号文EncS_a_jS_a_i(qa_j (a_i))を復号して検証値qa_i (a_j)を得る。認証サーバ検証値復号部38は、ステップS341iにおいて認証サーバ検証値生成部36が生成していた検証値qa_i (a_i)と併せて、m個の検証値qa_1 (a_i),…,qa_m (a_i)を認証サーバ検証部39へ出力する。In step S345i, the authentication server verification
ステップS345iにおいて、認証サーバ3a_iの認証サーバ検証部39は、検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する。認証サーバ検証部39は、具体的には式(12)の等式が成り立つか否かを確認する。In step S345i, the authentication
認証サーバ検証部39は、式(12)が成り立つ場合には、利用者装置1へ認証成功を通知し、式(12)が成り立たない場合には、利用者装置1へ認証失敗を通知する。
The authentication
<<乱数更新フェーズ>>
認証フェーズの処理を一回実行する度に、乱数更新フェーズの処理を実行する。乱数更新フェーズは、次回の認証で乱数を使い回さないように乱数を更新する処理である。乱数更新フェーズでは、以前の乱数生成フェーズの処理により生成された乱数のうち、未使用のものがあれば、次回の認証フェーズの処理において、その乱数を使用するように設定する。未使用の乱数がなければ、乱数生成フェーズの処理内容と同様に新たな乱数を生成する。乱数更新フェーズの処理は、認証フェーズの処理と並列に行なっても構わない。すなわち、認証フェーズにおいて乱数を利用した際に未使用の乱数が十分に残されているかを確認し、足りなければ新たな乱数を生成すればよい。<< Random number update phase >>
Each time the authentication phase process is executed, the random number update phase process is executed. The random number update phase is a process of updating the random number so that the random number is not reused in the next authentication. In the random number update phase, if there is an unused random number generated by the process of the previous random number generation phase, the random number is set to be used in the next authentication phase process. If there is no unused random number, a new random number is generated in the same manner as the processing contents of the random number generation phase. The random number update phase process may be performed in parallel with the authentication phase process. That is, it is only necessary to check whether there are enough unused random numbers when random numbers are used in the authentication phase.
[第二実施形態]
ユーザの利用する利用者端末と各認証サーバの間に存在するWebサーバ等の中間サーバには、認証の成否に加えて、利用者端末と認証サーバで交わされている暗号文を知られてしまう。中間サーバは認証に成功した際に認証手順で用いられたパスワードや乱数の分散値の暗号文を悪用してユーザに成りすまし、認証を成功させることができてしまう危険性がある。第二実施形態のマルチパーティセキュア認証システムは、送信済みの暗号文を悪用した中間サーバによるリプレイ攻撃を防ぐための改良方式である。[Second Embodiment]
In addition to the success or failure of authentication, the ciphertext exchanged between the user terminal and the authentication server is known to intermediate servers such as Web servers that exist between the user terminal used by the user and each authentication server. . If the intermediate server succeeds in the authentication, there is a risk that the authentication may succeed by impersonating the user by misusing the ciphertext of the password or random number distributed value used in the authentication procedure. The multi-party secure authentication system of the second embodiment is an improved method for preventing a replay attack by an intermediate server that misuses a transmitted ciphertext.
以降の説明では、第一実施形態と相違する点を中心に説明し、第一実施形態と同様の部分については説明を省略する。 In the following description, points different from the first embodiment will be mainly described, and description of the same parts as those in the first embodiment will be omitted.
図10を参照して、第二実施形態に係るマルチパーティセキュア認証システムの機能構成の一例を説明する。マルチパーティセキュア認証システムは、利用者装置4、中間サーバ5及びn台の認証サーバ61,…,6nを含む。With reference to FIG. 10, an example of a functional configuration of the multi-party secure authentication system according to the second embodiment will be described. Multi-party secure authentication system,
図11を参照して、利用者装置4の機能構成の一例を説明する。利用者装置4は、第一実施形態に係る利用者装置1と同様に、制御部101、メモリ102、共通鍵記憶部11及びパスワード分散部12を含む。第二実施形態に係る利用者装置4では、さらに、パスワード分散値暗号化部14及び乱数復号部15を含む。パスワード分散値暗号化部14は第一実施形態に係るパスワード分散値暗号化部13とは処理が異なる。
An example of a functional configuration of the
図12を参照して、中間サーバ5の機能構成の一例を説明する。中間サーバ5は、第一実施形態に係る中間サーバ2と同様に、制御部201、メモリ202、共通鍵記憶部21、中間サーバ検証値復号部23及び中間サーバ検証部24を含む。第二実施形態に係る中間サーバ5では、さらに、パスワード分散値転送部25及び乱数転送部26を含む。パスワード分散値転送部25は第一実施形態に係るパスワード分散値転送部22とは処理が異なる。
An example of the functional configuration of the
図13を参照して、認証サーバ6の機能構成の一例を説明する。認証サーバ6は、第一実施形態に係る認証サーバ3と同様に、制御部301、メモリ302、乱数分散値生成部31、ゼロ分散値生成部32、中間サーバ検証値生成部34、中間サーバ検証値暗号化部35、認証サーバ検証値生成部36、認証サーバ検証値暗号化部37、認証サーバ検証値復号部38、認証サーバ検証部39、共通鍵記憶部41及び分散値記憶部42を含む。第二実施形態に係る認証サーバ6では、さらに、パスワード分散値復号部43、乱数生成部44、乱数暗号化部45及び乱数検証部46を含む。パスワード分散値復号部43は第一実施形態に係るパスワード分散値復号部33とは処理が異なる。
An example of a functional configuration of the
図14、15を参照して、第二実施形態に係るマルチパーティセキュア認証方法の処理フローの一例を、実際に行われる手続きの順に従って説明する。 With reference to FIGS. 14 and 15, an example of the processing flow of the multi-party secure authentication method according to the second embodiment will be described in the order of procedures actually performed.
図14を参照して、リプレイ攻撃を防ぐために利用する乱数の生成手順を説明する。この乱数生成は認証フェーズを実行する前に予め行なっておく必要がある。この処理は比較的軽い処理であるため、認証フェーズを実行する直前に行うように構成してもよい。この処理は、n台の認証サーバ61,…,6nすべてが行う必要はなく、任意に選択したm台のみが実行すればよい。以降の説明では、a1,…,amを1以上n以下の相異なるm個の整数として、m台の認証サーバ6a_1,…,6a_mが処理を行うものとする。
With reference to FIG. 14, a procedure for generating a random number used for preventing a replay attack will be described. This random number generation needs to be performed in advance before executing the authentication phase. Since this process is a relatively light process, the process may be performed immediately before the authentication phase is executed. This process does not have to be performed by all n
ステップS351において、認証サーバ6a_iの乱数生成部44は、乱数ta_iを生成する。In step S351, the random
ステップS352において、認証サーバ6a_iの乱数暗号化部45は、利用者装置4とai番目の認証サーバ6 a_iとの共通鍵を用いて、乱数ta_iを暗号化した暗号文EncUS_a_i(ta_i)を得る。
In step S352, the
ステップS353において、認証サーバ6a_iの乱数暗号化部45は、暗号文EncUS_a_i(ta_i)を中間サーバ5へ送信する。In step S353, the
ステップS251において、中間サーバ5の乱数転送部26は、m台の認証サーバ6a_i(i=1,…,m)からm個の暗号文EncUS_a_i(ta_i)(i=1,…,m)を受信する。受信したm個の暗号文EncUS_a_i(ta_i)(i=1,…,m)は利用者端末4へ送信する。In step S251, the random
ステップS151において、利用者端末4の乱数復号部15は、中間サーバ5からm個の暗号文EncUS_a_i(ta_i)(i=1,…,m)を受信する。
In step S151, the
ステップS152において、乱数復号部15は、i=1,…,mについて、暗号文EncUS_a_i(ta_i)を復号して分散値ta_iを得る。分散値ta_iはメモリ102や共通鍵記憶部11などのいずれかの記憶部に記憶する。In step S152, the
図15を参照して、リプレイ攻撃を防ぐために改良した認証フェーズの処理を説明する。第一実施形態の認証フェーズとの相違点は、ステップS123及びステップS221の処理が異なることと、ステップS323の処理が追加されたことである。 With reference to FIG. 15, the process of the authentication phase improved in order to prevent a replay attack is demonstrated. The difference from the authentication phase of the first embodiment is that the processes in steps S123 and S221 are different and the process in step S323 is added.
ステップS123において、利用者端末4のパスワード分散値暗号化部14は、i=1,…,mについて、分散値[w']a_iを乱数ta_iと共に利用者装置4とai番目の認証サーバ6a_iとの共通鍵を用いて暗号化した暗号文EncUS_a_i(ta_i,[w']a_i)を得る。In step S123, the password distributed
ステップS221において、中間サーバ5のパスワード分散値転送部25は、利用者端末4から受信したm個の暗号文EncUS_a_1(ta_i,[w']a_1),…,EncUS_a_m(ta_i,[w']a_m)を受信し、i=1,…,mについて、暗号文EncUS_a_i(ta_i,[w']a_i)を認証サーバ6 a_iへ送信する。
In step S221, the password variance
ステップS323において、認証サーバ6 a_iの乱数検証部46は、暗号文EncUS_a_i(ta_i,[w']a_i)を復号して得た乱数ta_iがステップS351で生成した乱数ta_iと等しいか否かを確認する。乱数検証部46は、復号して得た乱数ta_iがステップS351で生成した乱数ta_iと等しくない場合には、利用者装置4へ認証失敗を通知する。その他の場合には、認証フェーズのステップS331以降の処理を続行する。
In step S323, the random
[第三実施形態]
第一実施形態のマルチパーティセキュア認証システムは、各認証サーバが乱数生成フェーズの処理を実行した。第三実施形態のマルチパーティセキュア認証システムは、利用者端末が乱数生成フェーズの処理を実行する。以下では、第一実施形態のマルチパーティセキュア認証システムに適用した場合の例を説明するが、第三実施形態の構成方法は、第二実施形態のマルチパーティセキュア認証システムへも同様に適用することができる。[Third embodiment]
In the multi-party secure authentication system according to the first embodiment, each authentication server executes a random number generation phase process. In the multi-party secure authentication system according to the third embodiment, the user terminal executes a random number generation phase process. In the following, an example of application to the multi-party secure authentication system of the first embodiment will be described. However, the configuration method of the third embodiment is similarly applied to the multi-party secure authentication system of the second embodiment. Can do.
以降の説明では、第一実施形態と相違する点を中心に説明し、第一実施形態と同様の部分については説明を省略する。 In the following description, points different from the first embodiment will be mainly described, and description of the same parts as those in the first embodiment will be omitted.
図16を参照して、第三実施形態に係るマルチパーティセキュア認証システムの機能構成の一例を説明する。マルチパーティセキュア認証システムは、利用者装置7、中間サーバ8及びn台の認証サーバ91,…,9nを含む。An example of a functional configuration of the multi-party secure authentication system according to the third embodiment will be described with reference to FIG. Multi-party secure authentication system,
図17を参照して、利用者装置7の機能構成の一例を説明する。利用者装置7は、第一実施形態に係る利用者装置1と同様に、制御部101、メモリ102、共通鍵記憶部11、パスワード分散部12及びパスワード分散値暗号化部13を含む。第三実施形態に係る利用者装置7では、さらに、乱数分散値生成部16、乱数分散値暗号化部17、ゼロ分散値生成部18及びゼロ分散値暗号化部19を含む。
An example of the functional configuration of the
図18を参照して、中間サーバ8の機能構成の一例を説明する。中間サーバ8は、第一実施形態に係る中間サーバ2と同様に、制御部201、メモリ202、共通鍵記憶部21、パスワード分散値転送部22、中間サーバ検証値復号部23及び中間サーバ検証部24を含む。第三実施形態に係る中間サーバ8では、さらに、乱数分散値転送部27及びゼロ分散値転送部28を含む。
An example of a functional configuration of the
図19を参照して、認証サーバ9の機能構成の一例を説明する。認証サーバ9は、第一実施形態に係る認証サーバ3と同様に、制御部301、メモリ302、中間サーバ検証値生成部34、中間サーバ検証値暗号化部35、認証サーバ検証値生成部36、認証サーバ検証値暗号化部37、認証サーバ検証値復号部38、認証サーバ検証部39、共通鍵記憶部41及び分散値記憶部42を含む。第三実施形態に係る認証サーバ9では、さらに、乱数分散値復号部47及びゼロ分散値復号部48を含む。
An example of a functional configuration of the
図20、21を参照して、第三実施形態に係るマルチパーティセキュア認証方法の処理フローの一例を、実際に行われる手続きの順に従って説明する。 With reference to FIGS. 20 and 21, an example of the processing flow of the multi-party secure authentication method according to the third embodiment will be described in the order of procedures actually performed.
<<乱数生成フェーズ>>
図20、21を参照して、第三実施形態に係る乱数生成フェーズの処理を説明する。<< Random number generation phase >>
Processing of the random number generation phase according to the third embodiment will be described with reference to FIGS.
図20に示すステップS111において、利用者端末7の乱数分散値生成部16は、n+1個の乱数r(W)、r(1),…,r(n)を生成する。In step S111 shown in FIG. 20, the random number distribution
ステップS112において、利用者端末7の乱数分散値生成部16は、各乱数r(W)、r(1),…,r(n)をそれぞれn個の分散値[r(W)]1,…,[r(W)]n、[r(1)]1,…,[r(1)]n,…,[r(n)]1,…,[r(n)]nへ分散する。つまり、乱数分散値生成部16は、以下の式(13)(14)の計算を行う。In step S112, the random number distribution
ステップS113において、利用者端末7の乱数分散値暗号化部17は、i=1,…,nについて、利用者装置7とi番目の認証サーバ9iとの共通鍵を用いて、分散値[r(W)]i,[r(1)]i,…,[r(n)]iを暗号化した暗号文EncUS_i([r(W)]i,[r(1)]i,…,[r(n)]i)を得る。In step S113, the random number distributed
ステップS114において、利用者端末7の乱数分散値暗号化部17は、ステップS113で得たn個の暗号文EncUS_1([r(W)]1,[r(1)]1,…,[r(n)]1),…,EncUS_n([r(W)]n,[r(1)]n,…,[r(n)]n)を中間サーバ8へ送信する。In step S114, the random number distributed
ステップS211において、中間サーバ8の乱数分散値転送部27は、利用者端末7から受信したn個の暗号文EncUS_1([r(W)]1,[r(1)]1,…,[r(n)]1),…,EncUS_n([r(W)]n,[r(1)]n,…,[r(n)]n)を受信し、i=1,…,nについて、暗号文EncUS_i([r(W)]i,[r(1)]i,…,[r(n)]i)を認証サーバ9iへそれぞれ送信する。In step S211, the random number distributed
ステップS313において、認証サーバ9iの乱数分散値復号部47は、中間サーバ8から転送された暗号文EncUS_i([r(W)]i,[r(1)]i,…,[r(n)]i)を受信する。In step S313, the random number distributed
ステップS314において、認証サーバ9iの乱数分散値復号部47は、利用者端末7と認証サーバ9iとの共通鍵を用いて、中間サーバ8から受信した暗号文EncUS_i([r(W)]i,[r(1)]i,…,[r(n)]i)を復号してn+1個の分散値[r(W)]i,[r(1)]i,…,[r(n)]iを得る。分散値[r(W)]i,[r(1)]i,…,[r(n)]iは、分散値記憶部42へ記憶する。In step S314, the
図21に示すステップS115において、利用者端末7のゼロ分散値生成部18は、復元すると0となるm+1組の分散値[0(W)]1,…,[0(W)]n、[0(1)]1,…,[0(1)]n,…,[0(m)]1,…,[0(m)]nを生成する。In step S115 shown in FIG. 21, the zero
ステップS116において、利用者端末7のゼロ分散値暗号化部19は、i=1,…,nについて、利用者装置7とi番目の認証サーバ9iとの共通鍵を用いて、分散値[0(W)]i,[0(1)]i,…,[0(m)]iを暗号化した暗号文EncUS_i([0(W)]i,[0(1)]i,…,[0(m)]i)を得る。In step S116, the zero distributed
ステップS117において、利用者端末7のゼロ分散値暗号化部19は、ステップS116で得たn個の暗号文EncUS_1([0(W)]1,[0(1)]1,…,[0(m)]1),…,EncUS_n([0(W)]n,[0(1)]n,…,[0(m)]n)を中間サーバ8へ送信する。In step S117, the zero distributed
ステップS212において、中間サーバ8のゼロ分散値転送部28は、利用者端末7から受信したn個の暗号文EncUS_1([0(W)]1,[0(1)]1,…,[0(m)]1),…,EncUS_n([0(W)]n,[0(1)]n,…,[0(m)]n)を受信し、i=1,…,nについて、暗号文EncUS_i([0(W)]i,[0(1)]i,…,[0(m)]i)を認証サーバ9iへそれぞれ送信する。In step S212, the zero variance
ステップS315において、認証サーバ9iのゼロ分散値復号部48は、中間サーバ8から転送された暗号文EncUS_i([0(W)]i,[0(1)]i,…,[0(m)]i)を受信する。In step S315, the zero distributed
ステップS316において、認証サーバ9iのゼロ分散値復号部48は、利用者端末7と認証サーバ9iとの共通鍵を用いて、中間サーバ8から受信した暗号文EncUS_i([0(W)]i,[0(1)]i,…,[0(m)]i)を復号してm+1個の分散値[0(W)]i,[0(1)]i,…,[0(m)]iを得る。分散値[0(W)]i,[0(1)]i,…,[0(m)]iは、分散値記憶部42へ記憶する。In step S316, the zero dispersion
ステップS111からステップS316の処理は、第一実施形態のマルチパーティセキュア認証方法と同様に、ステップS101からステップS302の処理と並行して実行しても構わないし、独立して予め行なっておいても構わない。 The processing from step S111 to step S316 may be executed in parallel with the processing from step S101 to step S302, or may be performed in advance independently, as in the multi-party secure authentication method of the first embodiment. I do not care.
[第四実施形態]
第四実施形態のマルチパーティセキュア認証システムは、乱数生成フェーズの処理のみが上述の実施形態とは異なる。第四実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Fourth embodiment]
The multi-party secure authentication system of the fourth embodiment differs from the above-described embodiment only in the random number generation phase processing. The configuration method of the fourth embodiment can be applied to the multi-party secure authentication system of the first to third embodiments.
以降の説明では、第一実施形態と相違する点を中心に説明し、第一実施形態と同様の部分については説明を省略する。 In the following description, points different from the first embodiment will be mainly described, and description of the same parts as those in the first embodiment will be omitted.
<<乱数生成フェーズ>>
第四実施形態に係る乱数生成フェーズの処理を説明する。この実施形態では、n台の認証サーバ31,…,3nのうち任意のn-k+1台の組み合わせの集合を{b1,…,bB}とする。ただし、Bは次式で定義される。
<< Random number generation phase >>
Processing in the random number generation phase according to the fourth embodiment will be described. In this embodiment, the
n台の認証サーバ31,…,3nのうち任意のn-m+2台の組み合わせの集合を{c1,…,cC}とする。ただし、Cは次式で定義される。
the
n台の認証サーバ31,…,3nのうち任意のn-m+1台の組み合わせの集合を{d1,…,dD}とする。ただし、Dは次式で定義される。
the
図6に示すステップS311において、認証サーバ3iの乱数分散値生成部31は、乱数もしくは疑似乱数u(W) 1,…,u(W) Bを生成し、i∈bjについて{u(W) b_j}を保持し、これを分散値[r(W)]iとする。乱数u(W) 1,…,u(W) Bは、利用者端末1が生成して各認証サーバ31,…,3nに送信してもよいし、認証サーバ31,…,3nが相互に生成して互いに送りあってもよいし、あらかじめ認証サーバ31,…,3nが保持していた疑似乱数のシードから生成してもよい。
In step S311 shown in FIG. 6, the random number
次に、認証サーバ3iの乱数分散値生成部31は、j=1,…,nについて、乱数もしくは疑似乱数u(j) 1,…,u(j) Bを生成し、j∈bhについて{u(j) b_h}を保持し、これを分散値[r(j)]iとする。乱数u(j) 1,…,u(j) Bは、利用者端末1が生成して各認証サーバ31,…,3nに送信してもよいし、認証サーバ31,…,3nが相互に生成して互いに送りあってもよいし、あらかじめ認証サーバ31,…,3nが保持していた疑似乱数のシードから生成してもよい。
Next, the
生成した分散値[r(W)]i、[r(1)]i,…,[r(n)]iは、分散値記憶部42へ記憶する。The generated variance values [r (W) ] i , [r (1) ] i ,..., [R (n) ] i are stored in the variance
図6に示すステップS312において、認証サーバ3iのゼロ分散値生成部32は、乱数もしくは疑似乱数u(W) 1,…,u(W) Cを生成し、i∈cjについて{u(W) c_j}を保持し、以下の式(15)により、分散値[0(W)]iを計算する。
In step S312 shown in FIG. 6, the
ここで、δc_1,…,δc_Dは既知の定数である。Here, δ c_1 ,..., Δ c_D are known constants.
次に、認証サーバ3iの乱数分散値生成部31は、j=1,…,mについて、乱数もしくは疑似乱数u(j) 1,…,u(j) Cを生成し、i∈chについて{u(j) c_h}を保持し、以下の式(16)により、分散値[0(j)]iを計算する。
Next, the
生成した分散値[0(W)]i、[0(1)]i,…,[0(m)]iは、分散値記憶部42へ記憶する。The generated variance values [0 (W) ] i , [0 (1) ] i ,..., [0 (m) ] i are stored in the variance
[第五実施形態]
第五実施形態のマルチパーティセキュア認証システムは、乱数生成フェーズの処理のみが上述の実施形態とは異なる。第五実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。
[Fifth embodiment]
The multi-party secure authentication system of the fifth embodiment is different from the above-described embodiment only in the process of the random number generation phase. The configuration method of the fifth embodiment can be applied to the multi-party secure authentication system of the first embodiment to the third embodiment.
以降の説明では、第一実施形態と相違する点を中心に説明し、第一実施形態と同様の部分については説明を省略する。 In the following description, points different from the first embodiment will be mainly described, and description of the same parts as those in the first embodiment will be omitted.
<<乱数生成フェーズ>>
第五実施形態に係る乱数生成フェーズの処理を説明する。この実施形態の乱数生成フェーズでは、ステップS311の処理は第四実施形態と同様であり、ステップS312の処理のみが第四実施形態と異なる。<< Random number generation phase >>
Processing in the random number generation phase according to the fifth embodiment will be described. In the random number generation phase of this embodiment, the process of step S311 is the same as that of the fourth embodiment, and only the process of step S312 is different from the fourth embodiment.
ステップS312において、認証サーバ3iのゼロ分散値生成部32は、乱数もしくは疑似乱数u(W) 1,…,u(W) Cを生成し、i∈cjについて{u(W) c_j}を保持し、以下の式(17)により、分散値[0(W)]iを計算する。
In step S312, the zero variance
ここで、fc_jは各u(W) c_j(1≦j≦C)に対しユニークな関数であり、fc_j(0)=1、fc_j(g)=0(gはcjに属さない)が成り立つ。Where f c_j is a unique function for each u (W) c_j (1 ≦ j ≦ C), f c_j (0) = 1, f c_j (g) = 0 (g does not belong to c j ) Holds.
次に、認証サーバ3iの乱数分散値生成部31は、j=1,…,mについて、乱数もしくは疑似乱数u(j) 1,…,u(j) Cを生成し、i∈chについて{u(j) c_h}を保持し、以下の式(18)により、分散値[0(j)]iを計算する。
Next, the
[第六実施形態]
第六実施形態のマルチパーティセキュア認証システムは、乱数生成フェーズの処理のみが上述の実施形態とは異なる。第六実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。
[Sixth embodiment]
The multi-party secure authentication system of the sixth embodiment differs from the above-described embodiment only in the random number generation phase processing. The configuration method of the sixth embodiment can be applied to the multi-party secure authentication system of the first to third embodiments.
以降の説明では、第一実施形態と相違する点を中心に説明し、第一実施形態と同様の部分については説明を省略する。 In the following description, points different from the first embodiment will be mainly described, and description of the same parts as those in the first embodiment will be omitted.
<<乱数生成フェーズ>>
第六実施形態に係る乱数生成フェーズの処理を説明する。この実施形態の乱数生成フェーズでは、ステップS312の処理は第四実施形態と同様であり、ステップS311の処理のみが第四実施形態と異なる。
<< Random number generation phase >>
Processing in the random number generation phase according to the sixth embodiment will be described. In the random number generation phase of this embodiment, the process of step S312 is the same as that of the fourth embodiment, and only the process of step S311 is different from the fourth embodiment.
ステップS311において、認証サーバ3iの乱数分散値生成部31は、乱数もしくは疑似乱数u(W) 1,…,u(W) Bを生成し、i∈bjについて{u(W) b_j}を保持し、以下の式(19)により、分散値[r(W)]iを計算する。
In step S311, the random number distribution
ここで、fb_jは各u(W) b_j(1≦j≦B)に対しユニークな関数であり、fb_j(0)=1、fb_j(g)=0(gはbjに属さない)が成り立つ。この手法については「Ronald Cramer, Ivan Damgard, and Yuval Ishai, “Share conversion, pseudorandom secret-sharing and applications to secure computation”, TCC, Vol. 3378 of Lecture Notes in Computer Science, pp. 342-362, 2005.(参考文献1)」に詳しく記載されている。Where f b_j is a unique function for each u (W) b_j (1 ≦ j ≦ B), f b_j (0) = 1, f b_j (g) = 0 (g does not belong to b j ) Holds. This method is described in “Ronald Cramer, Ivan Damgard, and Yuval Ishai,“ Share conversion, pseudorandom secret-sharing and applications to secure computation ”, TCC, Vol. 3378 of Lecture Notes in Computer Science, pp. 342-362, 2005. (Reference 1) ”is described in detail.
次に、認証サーバ3iの乱数分散値生成部31は、j=1,…,mについて、乱数もしくは疑似乱数u(j) 1,…,u(j) Bを生成し、i∈bhについて{u(j) b_h}を保持し、以下の式(20)により、分散値[r(j)]iを計算する。
Next, the
[第七実施形態]
第七実施形態のマルチパーティセキュア認証システムは、乱数生成フェーズの処理のみが上述の実施形態とは異なる。第七実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Seventh embodiment]
The multi-party secure authentication system of the seventh embodiment differs from the above-described embodiment only in the random number generation phase processing. The configuration method of the seventh embodiment can be applied to the multi-party secure authentication system of the first to third embodiments.
第七実施形態の乱数生成フェーズの処理内容は、ステップS311の処理内容が第六実施形態と同様であり、ステップS312の処理内容が第五実施形態と同様である。詳細な処理の手順は、上述の第六実施形態及び第五実施形態の説明を参照されたい。 Regarding the processing content of the random number generation phase of the seventh embodiment, the processing content of step S311 is the same as that of the sixth embodiment, and the processing content of step S312 is the same as that of the fifth embodiment. For the detailed processing procedure, refer to the description of the sixth embodiment and the fifth embodiment described above.
[第八実施形態]
第八実施形態のマルチパーティセキュア認証システムは、乱数生成フェーズの処理のみが上述の実施形態とは異なる。第八実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Eighth embodiment]
The multi-party secure authentication system of the eighth embodiment differs from the above-described embodiment only in the random number generation phase processing. The configuration method of the eighth embodiment can be applied to the multi-party secure authentication system of the first to third embodiments.
以降の説明では、第一実施形態と相違する点を中心に説明し、第一実施形態と同様の部分については説明を省略する。 In the following description, points different from the first embodiment will be mainly described, and description of the same parts as those in the first embodiment will be omitted.
<<乱数生成フェーズ>>
第八実施形態に係る乱数生成フェーズの処理を説明する。この実施形態では、n台の認証サーバ31,…,3nのうち、k≦q≦nであるような任意のq台が参加して行うものとする。以下では、a1,…,aqは1以上n以下の相異なるq個の整数である。<< Random number generation phase >>
Processing in the random number generation phase according to the eighth embodiment will be described. In this embodiment, it is assumed that arbitrary q servers satisfying k ≦ q ≦ n among n
図6に示すステップS311において、認証サーバ3a_iの乱数分散値生成部31は、乱数uiを生成し、乱数uiを(k,n)秘密分散を用いてn個の分散値[ui]1,…,[ui]nに分散する。乱数分散値生成部31は、j=1,…,qについて、分散値[ui]a_jをaj番目の認証サーバ3a_jとai番目の認証サーバ3a_iとの共通鍵を用いて暗号化した暗号文EncS_a_iS_a_j([ui]a_j)を得る。乱数分散値生成部31は、j=1,…,qについて、認証サーバ3a_jへ暗号文EncS_a_iS_a_j([ui]a_j)を送信する。In step S311 shown in FIG. 6, the random number
次に、認証サーバ3a_iの乱数分散値生成部31は、q-1台の認証サーバ3a_j(j=1,…,q、aj≠ai)からq-1個の暗号文EncS_a_1S_a_i([u1]a_i),…,EncS_a_qS_a_i([uq]a_i)(ただし、EncS_a_iS_a_i([ui]a_i)を除く)を受信し、j=1,…,qについて、暗号文EncS_a_jS_a_i([uj]a_i)をaj番目の認証サーバ3a_jとai番目の認証サーバ3a_iとの共通鍵を用いて復号して分散値[uj]a_iを得る。結果として、乱数分散値生成部31は、自ら生成した分散値[ui]a_iと併せて、q個の分散値[u1]a_i,…,[uq]a_iを得ることになる。Next, the random number distribution
次に、認証サーバ3a_iの乱数分散値生成部31は、Aをq×(q-k+1)行列とし、[u1]a_i,…,[uq]a_iを列ベクトル→uとみなし、ベクトル→u’=A→uを計算する。Next, the random number distribution
行列Aは、例えば、vandermonde行列もしくはHyper-Invertible行列を用いることができる。Hyper-Invertible行列についての詳細は「Zuzana Beerliova-Trubiniova and Martin Hirt, “Perfectly-secure mpc with linear communi-cation complexity”, TCC, Vol. 4948 of Lecture Notes in Computer Science, pp. 213-230, 2008」を参照されたい。 As the matrix A, for example, a vandermonde matrix or a Hyper-Invertible matrix can be used. For more information on Hyper-Invertible matrices, see “Zuzana Beerliova-Trubiniova and Martin Hirt,“ Perfectly-secure mpc with linear communi-cation complexity ”, TCC, Vol. 4948 of Lecture Notes in Computer Science, pp. 213-230, 2008. Please refer to.
次に、認証サーバ3a_iの乱数分散値生成部31は、ベクトル→u’の各要素をそれぞれ[r(W)]a_i,[r(1)]a_i,…,[r(m)]a_iとみなす。なお、q-k+1<m+1のときは、ステップS311を最初から再度実行してベクトル→u’を追加で生成し、m+1個の要素を得られるまで繰り返す。逆に、もし多かった場合は、次回の認証に使うように保管しておく。
Next, the random number distribution
図6に示すステップS312において、認証サーバ3a_iのゼロ分散値生成部32は、乱数uiを生成し、乱数uiを(m-1,n)秘密分散を用いてn個の分散値[ui]1,…,[ui]nに分散する。乱数分散値生成部31は、j=1,…,qについて、分散値[ui]a_jをaj番目の認証サーバ3a_jとai番目の認証サーバ3a_iとの共通鍵を用いて暗号化した暗号文EncS_a_iS_a_j([ui]a_j)を得る。乱数分散値生成部31は、j=1,…,qについて、認証サーバ3a_jへ暗号文EncS_a_iS_a_j([ui]a_j)を送信する。In step S312 shown in FIG. 6, the zero
次に、認証サーバ3a_iの乱数分散値生成部31は、q-1台の認証サーバ3a_j(j=1,…,q、aj≠ai)からq-1個の暗号文EncS_a_1S_a_i([u1]a_i),…,EncS_a_qS_a_i([uq]a_i)(ただし、EncS_a_iS_a_i([ui]a_i)を除く)を受信し、j=1,…,qについて、暗号文EncS_a_jS_a_i([uj]a_i)をaj番目の認証サーバ3a_jとai番目の認証サーバ3a_iとの共通鍵を用いて復号して分散値[uj]a_iを得る。結果として、乱数分散値生成部31は、自ら生成した分散値[ui]a_iと併せて、q個の分散値[u1]a_i,…,[uq]a_iを得ることになる。Next, the random number distribution
次に、認証サーバ3a_iの乱数分散値生成部31は、Aをq×(q-k+1)行列とし、[u1]a_i,…,[uq]a_iを列ベクトル→uとみなし、ベクトル→u’=A→uを計算する。Next, the random number distribution
次に、認証サーバ3a_iの乱数分散値生成部31は、ベクトル→u’の各要素にaiを乗じた値をそれぞれ[0(W)]a_i,[0(1)]a_i,…,[0(m)]a_iとみなす。なお、q-k+1<m+1のときは、ステップS312を最初から再度実行してベクトル→u’を追加で生成し、m+1個の要素を得られるまで繰り返す。逆に、もし多かった場合は、次回の認証に使うように保管しておく。
Next, random
[第九実施形態]
第九実施形態のマルチパーティセキュア認証システムは、乱数更新フェーズの処理のみが上述の実施形態とは異なる。第九実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Ninth embodiment]
The multi-party secure authentication system of the ninth embodiment differs from the above-described embodiment only in the random number update phase processing. The configuration method of the ninth embodiment can be applied to the multi-party secure authentication system of the first embodiment to the third embodiment.
第九実施形態の乱数更新フェーズの処理内容は、第四実施形態の乱数生成フェーズの処理内容と同様であるので、上述の第四実施形態の説明を参照されたい。 Since the processing content of the random number update phase of the ninth embodiment is the same as the processing content of the random number generation phase of the fourth embodiment, refer to the description of the above fourth embodiment.
[第十実施形態]
第十実施形態のマルチパーティセキュア認証システムは、乱数更新フェーズの処理のみが上述の実施形態とは異なる。第十実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Tenth embodiment]
The multi-party secure authentication system of the tenth embodiment differs from the above-described embodiment only in the process of the random number update phase. The configuration method of the tenth embodiment can be applied to the multi-party secure authentication system of the first to third embodiments.
第十実施形態の乱数更新フェーズの処理内容は、第五実施形態の乱数生成フェーズの処理内容と同様であるので、上述の第五実施形態の説明を参照されたい。 Since the processing content of the random number update phase of the tenth embodiment is the same as the processing content of the random number generation phase of the fifth embodiment, refer to the description of the fifth embodiment described above.
[第十一実施形態]
第十一実施形態のマルチパーティセキュア認証システムは、乱数更新フェーズの処理のみが上述の実施形態とは異なる。第十一実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Eleventh embodiment]
The multi-party secure authentication system of the eleventh embodiment is different from the above-described embodiment only in the random number update phase processing. The configuration method according to the eleventh embodiment can be applied to the multi-party secure authentication system according to the first to third embodiments.
第十一実施形態の乱数更新フェーズの処理内容は、第六実施形態の乱数生成フェーズの処理内容と同様であるので、上述の第六実施形態の説明を参照されたい。
[第十二実施形態]
第十二実施形態のマルチパーティセキュア認証システムは、乱数更新フェーズの処理のみが上述の実施形態とは異なる。第十二実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。Since the processing content of the random number update phase of the eleventh embodiment is the same as the processing content of the random number generation phase of the sixth embodiment, refer to the description of the above sixth embodiment.
[Twelfth embodiment]
The multi-party secure authentication system of the twelfth embodiment differs from the above-described embodiment only in the random number update phase processing. The configuration method of the twelfth embodiment can be applied to the multi-party secure authentication system of the first embodiment to the third embodiment.
第十二実施形態の乱数更新フェーズの処理内容は、第七実施形態の乱数生成フェーズの処理内容と同様であるので、上述の第七実施形態の説明を参照されたい。 Since the processing content of the random number update phase of the twelfth embodiment is the same as the processing content of the random number generation phase of the seventh embodiment, refer to the description of the seventh embodiment described above.
[第十三実施形態]
第十三実施形態のマルチパーティセキュア認証システムは、乱数更新フェーズの処理のみが上述の実施形態とは異なる。第十三実施形態の構成方法は、第一実施形態から第三実施形態のマルチパーティセキュア認証システムへ適用することができる。[Thirteenth embodiment]
The multi-party secure authentication system of the thirteenth embodiment differs from the above-described embodiment only in the random number update phase processing. The configuration method of the thirteenth embodiment can be applied to the multi-party secure authentication system of the first to third embodiments.
第十三実施形態の乱数更新フェーズの処理内容は、第八実施形態の乱数生成フェーズの処理内容と同様であるので、上述の第八実施形態の説明を参照されたい。 Since the processing content of the random number update phase of the thirteenth embodiment is the same as the processing content of the random number generation phase of the eighth embodiment, refer to the description of the above eighth embodiment.
[変形例]
上述の各実施形態では、マルチパーティセキュア認証システムが、利用者装置1、中間サーバ2及びn台の認証サーバ31,…,3nを含む構成を例に説明をしたが、中間サーバ2と1台の認証サーバ3を1台の中間認証サーバとして構成することも可能である。すなわち、マルチパーティセキュア認証システムは、例えば、利用者装置1と、n-1台の認証サーバ31,…,3n-1と、1台の中間認証サーバ3nとを含む構成とすることができる。[Modification]
In the above embodiments, multi-party secure authentication system,
中間認証サーバ3nは、中間サーバ2が備える構成部と、認証サーバ3が備える構成部とを併せ持つことで構成される。ただし、上述の実施形態において、中間サーバ2と認証サーバ3とで送受信したデータは、メモリ102を介してサーバ内部で受け渡すことができるので、必ずしも暗号化する必要はない。具体的には、中間サーバ2と認証サーバ3との共通鍵により暗号化される中間サーバ検証値qa_n (W)を暗号化する必要がなくなる。そのため、中間認証サーバ3nは、中間サーバ検証値暗号化部35を備えなくともよい。また、中間認証サーバ3nでの検証は認証サーバ検証値で可能なため、中間サーバ検証値は必要なくなる。そのため、中間認証サーバ3nは、中間サーバ検証値生成部34、中間サーバ検証値暗号化部35、中間サーバ検証値復号部23及び中間サーバ検証部24を備えなくともよい。
The
また、中間サーバ2と認証サーバ3を1台の中間認証サーバ3nとして構成した場合には、中間サーバ2と各認証サーバ31,…,3nとの共通鍵を、認証サーバ3nと他の認証サーバ31,…,3n-1との共通鍵で併用できるため、システム全体での共通鍵の数をn個減らすことができる。
Further, in case where the
[応用例]
この発明のマルチパーティセキュア認証技術は、パスワード認証を利用する様々な応用システムに適用することができる。[Application example]
The multi-party secure authentication technology of the present invention can be applied to various application systems that use password authentication.
例えば、ユーザがWebページを経由して、外部の第三者による情報システムのサービスを受ける際に、各サービスプロバイダを認証サーバとして第一実施形態または第二実施形態の認証を行ってから、各サービスは当該サービスをユーザに提供するように構成してもよい。なお、当該外部サービスは、複数のサーバが連携して行うサービスであってもよいし、それぞれの単一のサーバにより実施できるサービスであってもよい。 For example, when a user receives an information system service by an external third party via a web page, each service provider is used as an authentication server to authenticate the first embodiment or the second embodiment. The service may be configured to provide the service to the user. Note that the external service may be a service performed by a plurality of servers in cooperation, or may be a service that can be implemented by each single server.
また、例えば、第三実施形態のマルチパーティセキュア認証技術をシングルサインオンの方式として用いる応用例が考えられる。このように構成すれば、ユーザは各サーバのそれぞれのサービスを一つのパスワードで受けることができる。この発明を用いれば、シングルサインオンによる認証の過程における成りすましによる漏洩のリスクを低下させることができる。 In addition, for example, an application example in which the multi-party secure authentication technique of the third embodiment is used as a single sign-on scheme is conceivable. If comprised in this way, the user can receive each service of each server with one password. If this invention is used, the risk of leakage due to impersonation in the authentication process by single sign-on can be reduced.
さらに、例えば、第三実施形態のマルチパーティセキュア認証技術を(k,n)秘密分散を用いたストレージサービスとする応用例が考えられる。(k,n)秘密分散とは、データをn個の分散値に分割する分割方法であって、そのうちいずれのk-1個の分散値だけでは元のデータの情報を一切得ることができないが、任意のk個の分散値があれば元のデータを完全に復元することができる秘密分散方式である。(k,n)秘密分散を用いたストレージサービスでは、サーバが連携して行うサービスではあるがサーバ同士が直接通信する必要はない。この発明のマルチパーティセキュア認証技術もサーバ同士の通信が不要であるため、利点を十分に享受することが可能な応用例であると言える。 Furthermore, for example, an application example in which the multi-party secure authentication technology of the third embodiment is used as a storage service using (k, n) secret sharing is conceivable. (k, n) secret sharing is a division method that divides data into n distributed values, and it is impossible to obtain information on the original data with any k-1 distributed values. This is a secret sharing scheme that can completely restore the original data if there are any k distributed values. In the storage service using (k, n) secret sharing, the servers cooperate with each other, but the servers do not need to communicate directly with each other. Since the multi-party secure authentication technology of the present invention does not require communication between servers, it can be said that this is an application example that can fully enjoy the advantages.
[発明の効果]
この発明を用いることで、Webサーバなどの中間サーバを介していても、不正者がユーザになりすまして認証を成功させることはできない。不正者とは中間者やサーバであることも想定される。すなわちパスワードを中間者もサーバも知らないということを含む。[Effect of the invention]
By using this invention, even if an intermediate server such as a Web server is used, an unauthorized person cannot impersonate a user and succeed in authentication. An unauthorized person is also assumed to be an intermediary or a server. That is, it includes that neither the intermediate person nor the server knows the password.
また、この発明は、Webのサービスモデルが適用できることの他に、以下の四つの要件を実現している。
1.ユーザは複数のパスワードや煩わしい証明書のインストールが必要ないこと
2.中間者やサーバでさえ成りすましができないこと
3.サーバ間には通信路が不要であること
4.ユーザへのレスポンスまでの通信回数が最低限なことからインターネット環境でレスポンスタイムを最低限にできることIn addition to the fact that the Web service model can be applied, the present invention realizes the following four requirements.
1. 1. Users do not need to install multiple passwords or cumbersome certificates. 2. Even an intermediary or a server cannot impersonate. 3. No communication path is required between servers. The response time to the user can be minimized so that the response time can be minimized in the Internet environment.
上記1及び4の要件は自明である。上記2の要件は、サーバが単一主体のモデルでは、サーバは自分でデータを持っているため、わざわざ外部から認証を通って不正をするメリットが小さいが、サーバが複数ありそれぞれ異なるデータを持つ場合には、他サーバのもつデータを外部から閲覧することにメリットがある。特に秘密分散においては、データが二つ集まるとセキュリティの効力が失われるため、この問題は重大である。上記3の要件は、システム構築の際にお互いの間に通信路を持たないようなサーバ上であっても連携したサービスを展開できることを意味する。例えば、アプリケーションプロバイダは適当な複数のクラウドサービス上に自社サービスを展開できる。言い換えると、クラウドサービス同士が連携している必要がない。
The
この発明では、上記1の要件のためにパスワードが一つであり、2の要件のためにサーバも中間者もパスワードを知ることができない秘密分散によってパスワードを保護している。なお、パスワードのハッシュ値などではサーバのローカルで辞書攻撃が可能なため不十分である。また、上記3及び4の要件のため、サーバ間通信を許せばよく知られた秘匿回路計算を用いればよく(上記3の要件に対応)、また通信回数を増やせば暗号化通信路を用いて中間者がいない場合と同等の設定とできる(上記4の要件に対応)ところを、中間者を経由した低通信回数の秘匿回路計算を専用に設計している。
In the present invention, there is one password for the
[プログラム、記録媒体]
この発明は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上記実施例において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。[Program, recording medium]
The present invention is not limited to the above-described embodiment, and it goes without saying that modifications can be made as appropriate without departing from the spirit of the present invention. The various processes described in the above-described embodiments are not only executed in time series according to the order described, but may be executed in parallel or individually as required by the processing capability of the apparatus that executes the processes.
また、上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。 When various processing functions in each device described in the above embodiment are realized by a computer, the processing contents of the functions that each device should have are described by a program. Then, by executing this program on a computer, various processing functions in each of the above devices are realized on the computer.
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。 The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。 The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。 A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。 In this embodiment, the present apparatus is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.
Claims (10)
利用者装置、中間サーバ及びn台の認証サーバを含むマルチパーティセキュア認証システムであって、
上記利用者装置は、
入力されたパスワードw'をn個の分散値[w']1,…,[w']nに分散するパスワード分散部と、
i=1,…,nについて、上記利用者装置とi番目の上記認証サーバとの共通鍵を用いて、分散値[w']iを暗号化した暗号文EncUS_i([w']i)を得るパスワード分散値暗号化部と、
を含み、
上記中間サーバは、
i=1,…,nについて、上記利用者装置から受信した上記暗号文EncUS_i([w']i)をi番目の上記認証サーバへ送信するパスワード分散値転送部と、
i=1,…,mについて、上記中間サーバとai番目の上記認証サーバとの共通鍵を用いて、ai番目の上記認証サーバから受信した暗号文EncWS_a_i(qa_i (W))を復号して検証値qa_i (W)を得る中間サーバ検証値復号部と、
上記検証値qa_1 (W),…,qa_m (W)の総和が0と等しいか否かを検証する中間サーバ検証部と、
を含み、
上記認証サーバは、
パスワードwをn個に分散した分散値[w]1,…,[w]nのうちi番目の分散値[w]i、i番目の上記分散値[r(W)]i、それぞれi番目の上記分散値[r(1)]i,…,[r(n)]iを記憶する分散値記憶部と、
上記利用者装置と当該認証サーバとの共通鍵を用いて、上記中間サーバから受信した上記暗号文EncUS_i([w']i)を復号して上記分散値[w']iを得るパスワード分散値復号部と、
λa_i (W)(i∈1,…,m)は次式を満たす定数であり、
j=1,…,mについて、次式により検証値qa_i (a_j)を求める認証サーバ検証値生成部と、
j=1,…,mについて、aj番目の上記認証サーバと当該認証サーバとの共通鍵を用いて、aj番目の上記認証サーバから受信した暗号文EncS_a_iS_a_j(qa_j (a_i))を復号して上記検証値qa_j (a_i)を得る認証サーバ検証値復号部と、
上記検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する認証サーバ検証部と、
を含むマルチパーティセキュア認証システム。 n ≧ 3, 2k−1 ≦ n, k ≦ m, m ≦ n, a 1 ,..., a m are m different integers of 1 to n and (k , n) Secret sharing is secret sharing that can be restored if there are k or more of n shared values, and [r (W) ] 1 , ..., [r (W) ] n is a random number r when restored. ( K, n) is a shared value by secret sharing, and [r (i) ] 1 , ..., [r (i) ] n (i = 1, ..., n) is restored to a random number r ( i) (k, n) is a variance value due to secret sharing, and [0 (W) ] 1 , ..., [0 (W) ] n is 0 when restored, (k, n) a variance value due to secret sharing [0 (a_i) ] 1 , ..., [0 (a_i) ] n (i = 1, ..., m) is 0 when restored (k, n) is a distributed value by secret sharing,
A multi-party secure authentication system including a user device, an intermediate server, and n authentication servers,
The user device is
A password distribution unit that distributes the input password w ′ into n distributed values [w ′] 1 ,..., [W ′] n ;
For i = 1,..., n, a ciphertext Enc US_i ([w ′] i ) obtained by encrypting the distributed value [w ′] i using a common key between the user device and the i-th authentication server A password distributed value encryption unit to obtain
Including
The intermediate server
For i = 1,..., n, a password distributed value transfer unit that transmits the ciphertext Enc US_i ([w ′] i ) received from the user device to the i-th authentication server;
For i = 1,..., m, the ciphertext Enc WS_a_i (q a_i (W) ) received from the a i th authentication server is obtained using a common key between the intermediate server and the a i th authentication server. An intermediate server verification value decoding unit for decoding and obtaining a verification value q a_i (W) ;
An intermediate server verification unit that verifies whether or not the sum of the verification values q a_1 (W) ,..., Q a_m (W) is equal to 0;
Including
The authentication server
Dispersion value of the password w dispersed in the n [w] 1, ..., [ w] i -th variance value of the n [w] i, i-th of the dispersion values [r (W)] i, i -th, respectively A variance value storage unit for storing the variance values [r (1) ] i ,..., [R (n) ] i of
Password sharing to obtain the distributed value [w ′] i by decrypting the ciphertext Enc US_i ([w ′] i ) received from the intermediate server using a common key between the user device and the authentication server A value decoding unit;
λ a_i (W) (i∈1,…, m) is a constant that satisfies the following equation:
For j = 1,..., m, an authentication server verification value generation unit for obtaining a verification value q a_i (a_j) by the following equation;
For j = 1, ..., m, using the common key between the a j th authentication server and the authentication server, the cipher text Enc S_a_iS_a_j (q a_j (a_i) ) received from the a j th authentication server An authentication server verification value decryption unit that decrypts and obtains the verification value q a_j (a_i) ;
An authentication server verification unit that verifies whether the sum of the verification values q a_1 (a_i) ,..., Q a_m (a_i) is equal to 0;
Multi-party secure authentication system including
上記認証サーバは、
乱数ta_iを生成する乱数生成部と、
上記利用者装置と当該認証サーバとの共通鍵を用いて、上記乱数ta_iを暗号化した暗号文EncUS_a_i(ta_i)を得る乱数暗号化部と、
上記中間サーバから受信した暗号文EncUS_a_i(ta_i,[w']a_i)を復号して得た乱数ta_iが、上記乱数生成部により生成された上記乱数ta_iと等しいか否かを検証する乱数検証部と、
をさらに含み、
上記中間サーバは、
j=1,…,mについて、aj番目の認証サーバから受信した上記暗号文EncUS_a_j(ta_j)を上記利用者装置へ送信する乱数転送部
をさらに含み、
上記利用者装置は、
i=1,…,mについて、当該利用者装置とai番目の認証サーバとの共通鍵を用いて、上記中間サーバから受信した上記暗号文EncUS_a_i(ta_i)を復号し上記乱数ta_iを得る乱数復号部
をさらに含み、
上記パスワード分散値暗号化部は、
i=1,…,nについて、上記利用者装置とi番目の上記認証サーバとの共通鍵を用いて、分散値[w']iを上記乱数ta_iと共に暗号化した暗号文EncUS_a_i(ta_i,[w']a_i)を得る
マルチパーティセキュア認証システム。 The multi-party secure authentication system according to claim 1,
The authentication server
A random number generator for generating a random number t a_i ;
By using the common key between the user device and the authentication server, the random number encryption unit for the random number t a_i obtain encrypted ciphertext Enc US_a_i (t a_i),
Ciphertext received from the intermediate server Enc US_a_i (t a_i, [w '] a_i) verifies whether the random number t a_i obtained by decoding is equal to the generated the random number t a_i by the random number generating unit A random number verification unit to
Further including
The intermediate server
a random number transfer unit that transmits the cipher text Enc US_a_j ( ta_j ) received from the a j- th authentication server to j = 1, ..., m,
The user device is
For i = 1,..., m, the ciphertext Enc US_a_i (t a_i ) received from the intermediate server is decrypted using the common key between the user device and the a i th authentication server, and the random number t a_i A random number decryption unit for obtaining
The password distributed value encryption unit
i = 1, ..., for n, using the common key between the user device and the i-th the authentication server, variance [w '] ciphertext i encrypted with the random number t a_i Enc US_a_i (t a_i , [w '] Multi-party secure authentication system that obtains a_i ).
上記認証サーバは、
上記分散値[r(W)]i,[r(1)]i,…,[r(n)]iを生成する乱数分散値生成部と、
上記分散値[0(W)]i,[0(a_1)]i,…,[r(a_m)]iを生成するゼロ分散値生成部と、
をさらに含むマルチパーティセキュア認証システム。 The multi-party secure authentication system according to claim 1 or 2,
The authentication server
A random number variance generating unit for generating the variance [r (W) ] i , [r (1) ] i , ..., [r (n) ] i ;
A zero variance value generator for generating the variance values [0 (W) ] i , [0 (a_1) ] i ,..., [R (a_m) ] i ,
A multi-party secure authentication system.
上記利用者装置は、
上記乱数r(W),r(1),…,r(n)を生成し、上記乱数r(W),r(1),…,r(n)それぞれをn個に分散して上記分散値[r(W)]1,…,[r(W)]n及び上記分散値[r(i)]1,…,[r(i)]n(i=1,…,n)を生成する乱数分散値生成部と、
i=1,…,nについて、上記利用者装置とi番目の上記認証サーバとの共通鍵を用いて、分散値[r(W)]i,[r(i)]i,…,[r(n)]iを暗号化した暗号文EncUS_i([r(W)]i,[r(i)]i,…,[r(n)]i)を得る乱数分散値暗号化部と、
上記分散値[0(W)]1,…,[0(W)]n及び上記分散値[0(a_i)]1,…,[0(a_i)]n(i=1,…,m)を生成するゼロ分散値生成部と、
i=1,…,mについて、上記利用者装置とai番目の上記認証サーバとの共通鍵を用いて、分散値[0(W)]i,[0(1)]i,…,[0(m)]iを暗号化した暗号文EncUS_i([0(W)]i,[0(a_1)]i,…,[0(a_m)]i)を得る乱数分散値暗号化部と、
をさらに含み、
上記中間サーバは、
i=1,…,nについて、上記利用者装置から受信した上記暗号文EncUS_i([r(W)]i,[r(i)]i,…,[r(n)]i)をi番目の上記認証サーバへ送信する乱数分散値転送部と、
i=1,…,nについて、上記利用者装置から受信した上記暗号文EncUS_i([0(W)]i,[0(a_1)]i,…,[0(a_m)]i)をi番目の上記認証サーバへ送信するゼロ分散値転送部と、
を含むマルチパーティセキュア認証システム。 The multi-party secure authentication system according to claim 1 or 2,
The user device is
The random number r (W), r (1 ), ..., and generates an r (n), the random number r (W), r (1 ), ..., by distributing each r (n) into n the dispersion Generate the values [r (W) ] 1 , ..., [r (W) ] n and the variances [r (i) ] 1 , ..., [r (i) ] n (i = 1, ..., n) A random number distributed value generation unit for
For i = 1,..., n, using the common key between the user device and the i-th authentication server, the distributed values [r (W) ] i , [r (i) ] i ,. (n)] ciphertext i encrypted Enc US_i ([r (W) ] i, [r (i)] i, ..., [r (n)] i) and the random number variance encryption unit to obtain,
The variance [0 (W) ] 1 , ..., [0 (W) ] n and the variance [0 (a_i) ] 1 , ..., [0 (a_i) ] n (i = 1, ..., m) A zero variance value generation unit for generating
i = 1, ..., for m, using the common key between the user device and a i-th of said authentication server, variance [0 (W)] i, [0 (1)] i, ..., [ 0 (m)] ciphertext i encrypted Enc US_i ([0 (W) ] i, [0 (a_1)] i, ..., [0 (a_m)] i) and the random number variance encryption unit to obtain ,
Further including
The intermediate server
For i = 1,..., n, the ciphertext Enc US_i ([r (W) ] i , [r (i) ] i ,..., [r (n) ] i ) received from the user device is i A random number distributed value transfer unit to be transmitted to the authentication server
For i = 1, ..., n, the ciphertext Enc US_i ([0 (W) ] i , [0 (a_1) ] i , ..., [0 (a_m) ] i ) received from the user device is i A zero distributed value transfer unit to send to the authentication server
Multi-party secure authentication system including
λa_i (j)(i∈1,…,m)は次式を満たす定数であり、
上記利用者装置は、
入力されたパスワードw'をn個の分散値[w']1,…,[w']nに分散するパスワード分散部と、
i=1,…,n-1について、上記利用者装置とi番目の上記認証サーバとの共通鍵を用いて、分散値[w']iを暗号化した暗号文EncUS_i([w']i)を得、上記利用者装置と上記中間認証サーバとの共通鍵を用いて、分散値[w']nを暗号化した暗号文EncUS_n([w']n)を得るパスワード分散値暗号化部と、
を含み、
上記中間認証サーバは、
パスワードwをn個に分散した分散値[w]1,…,[w]nのうちn番目の分散値[w]n、それぞれn番目の上記分散値[r(1)]n,…,[r(n)]nを記憶する分散値記憶部と、
i=1,…,n-1について、上記利用者装置から受信した上記暗号文EncUS_i([w']i)をi番目の上記認証サーバへ送信するパスワード分散値転送部と、
上記利用者装置と当該中間認証サーバとの共通鍵を用いて、上記暗号文EncUS_n([w']n)を復号して上記分散値[w']nを得るパスワード分散値復号部と、
j=1,…,mについて、次式により検証値qa_m (a_j)を求める認証サーバ検証値生成部と、
j=1,…,m-1について、aj番目の上記認証サーバと当該中間認証サーバとの共通鍵を用いて、aj番目の上記認証サーバから受信した暗号文EncS_a_mS_a_j(qa_j (a_m))を復号して上記検証値qa_j (a_m)を得る認証サーバ検証値復号部と、
上記検証値qa_1 (a_m),…,qa_m (a_m)の総和が0と等しいか否かを検証する認証サーバ検証部と、
を含み、
上記認証サーバは、
i番目の上記分散値[w]i、それぞれi番目の上記分散値[r(1)]i,…,[r(n)]iを記憶する分散値記憶部と、
上記利用者装置と当該認証サーバとの共通鍵を用いて、上記中間認証サーバから受信した上記暗号文EncUS_i([w']i)を復号して上記分散値[w']iを得るパスワード分散値復号部と、
j=1,…,mについて、次式により検証値qa_i (a_j)を求める認証サーバ検証値生成部と、
j=1,…,mについて、aj番目の上記認証サーバもしくは上記中間認証サーバと当該認証サーバとの共通鍵を用いて、aj番目の上記認証サーバから受信した暗号文EncS_a_iS_a_j(qa_j (a_i))を復号して上記検証値qa_j (a_i)を得る認証サーバ検証値復号部と、
上記検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する認証サーバ検証部と、
を含むマルチパーティセキュア認証システム。 n ≧ 3, 2k-1 ≦ n, k ≦ m, m ≦ n, and a 1 ,..., a m are m m = n and m different from 1 to n, respectively. It is an integer, and (k, n) secret sharing is a secret sharing that can be restored if there are k or more of n sharing values, and [r (i) ] 1 , ..., [r (i) ] n (i = 1, ..., n) is a random value r (i) and (k, n) is a shared value by secret sharing. [0 (a_i) ] 1 , ..., [0 (a_i) ] n (I = 1, ..., m) is a (k, n) secret sharing value that is 0 when restored.
λ a_i (j) (i∈1, ..., m) is a constant that satisfies
The user device is
A password distribution unit that distributes the input password w ′ into n distributed values [w ′] 1 ,..., [W ′] n ;
For i = 1,..., n−1, the ciphertext Enc US_i ([w ′]) is obtained by encrypting the distributed value [w ′] i using the common key between the user device and the i-th authentication server. i ) to obtain a ciphertext Enc US_n ([w '] n ) obtained by encrypting the distributed value [w ′] n using the common key between the user device and the intermediate authentication server. And
Including
The intermediate authentication server
N of the distributed values [w] 1 ,..., [W] n in which the password w is distributed to n , and the nth distributed value [r (1) ] n ,. [r (n) ] a distributed value storage unit for storing n ;
For i = 1,..., n−1, a password distributed value transfer unit that transmits the ciphertext Enc US_i ([w ′] i ) received from the user device to the i-th authentication server;
A password distributed value decryption unit that decrypts the ciphertext Enc US_n ([w ′] n ) and obtains the distributed value [w ′] n using a common key between the user device and the intermediate authentication server;
For j = 1,..., m, an authentication server verification value generation unit for obtaining a verification value q a_m (a_j) by the following equation;
j = 1, ..., the m-1, a j-th by using the common key between the authentication server and the intermediate authentication server, a j-th ciphertext received from the authentication server Enc S_a_mS_a_j (q a_j (a_m ) ) To obtain the verification value q a_j (a_m), and an authentication server verification value decoding unit;
An authentication server verification unit that verifies whether the sum of the verification values q a_1 (a_m) ,..., Q a_m (a_m) is equal to 0;
Including
The authentication server
a variance value storage unit for storing the i-th variance value [w] i and the i-th variance value [r (1) ] i ,..., [r (n) ] i , respectively.
A password for decrypting the ciphertext Enc US_i ([w ′] i ) received from the intermediate authentication server by using a common key between the user device and the authentication server to obtain the distributed value [w ′] i A distributed value decoding unit;
For j = 1,..., m, an authentication server verification value generation unit for obtaining a verification value q a_i (a_j) by the following equation;
For j = 1,..., m, the ciphertext Enc S_a_iS_a_j (q a_j received from the a j th authentication server using a common key between the a j th authentication server or the intermediate authentication server and the authentication server (a_i) ) is decrypted to obtain the verification value q a_j (a_i) , an authentication server verification value decoding unit;
An authentication server verification unit that verifies whether the sum of the verification values q a_1 (a_i) ,..., Q a_m (a_i) is equal to 0;
Multi-party secure authentication system including
利用者装置が、入力されたパスワードw'をn個の分散値[w']1,…,[w']nに分散するパスワード分散ステップと、
上記利用者装置が、i=1,…,nについて、上記利用者装置とi番目の認証サーバとの共通鍵を用いて、分散値[w']iを暗号化した暗号文EncUS_i([w']i)を得るパスワード分散値暗号化ステップと、
中間サーバが、i=1,…,nについて、上記利用者装置から受信した上記暗号文EncUS_i([w']i)をi番目の上記認証サーバへ送信するパスワード分散値転送ステップと、
上記認証サーバが、上記利用者装置と当該認証サーバとの共通鍵を用いて、上記中間サーバから受信した上記暗号文EncUS_i([w']i)を復号して上記分散値[w']iを得るパスワード分散値復号ステップと、
λa_i (W)(i∈1,…,m)は次式を満たす定数であり、
上記中間サーバが、i=1,…,mについて、上記中間サーバとai番目の上記認証サーバとの共通鍵を用いて、ai番目の上記認証サーバから受信した暗号文EncWS_a_i(qa_i (W))を復号して検証値qa_i (W)を得る中間サーバ検証値復号ステップと、
上記中間サーバが、上記検証値qa_1 (W),…,qa_m (W)の総和が0と等しいか否かを検証する中間サーバ検証ステップと、
上記認証サーバが、j=1,…,mについて、次式により検証値qa_i (a_j)を求める認証サーバ検証値生成ステップと、
上記認証サーバが、j=1,…,mについて、aj番目の上記認証サーバと当該認証サーバとの共通鍵を用いて、aj番目の上記認証サーバから受信した暗号文EncS_a_iS_a_j(qa_j (a_i))を復号して上記検証値qa_j (a_i)を得る認証サーバ検証値復号ステップと、
上記認証サーバが、上記検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する認証サーバ検証ステップと、
を含むマルチパーティセキュア認証方法。 n ≧ 3, 2k−1 ≦ n, k ≦ m, m ≦ n, a 1 ,..., a m are m different integers of 1 to n and (k , n) Secret sharing is secret sharing that can be restored if there are k or more of n shared values, and [r (W) ] 1 , ..., [r (W) ] n is a random number r when restored. ( K, n) is a shared value by secret sharing, and [r (i) ] 1 , ..., [r (i) ] n (i = 1, ..., n) is restored to a random number r ( i) (k, n) is a variance value due to secret sharing, and [0 (W) ] 1 , ..., [0 (W) ] n is 0 when restored, (k, n) a variance value due to secret sharing [0 (a_i) ] 1 , ..., [0 (a_i) ] n (i = 1, ..., m) is 0 when restored (k, n) is a distributed value by secret sharing,
A password distribution step in which the user device distributes the input password w ′ into n distributed values [w ′] 1 ,..., [W ′] n ;
The user device, for i = 1,..., N, uses a common key between the user device and the i-th authentication server, and encrypts the distributed value [w ′] i into a ciphertext Enc US_i ([[ w '] i ) to obtain a password distributed value encryption step;
An intermediate server transmits the ciphertext Enc US_i ([w ′] i ) received from the user device for i = 1,..., N to the i-th authentication server;
The authentication server decrypts the ciphertext Enc US_i ([w ′] i ) received from the intermediate server by using a common key between the user device and the authentication server, and the distributed value [w ′] a password distributed value decryption step to obtain i ;
λ a_i (W) (i∈1,…, m) is a constant that satisfies the following equation:
The intermediate server uses ciphertext Enc WS_a_i (q a_i received from the a i th authentication server for i = 1,..., M using a common key between the intermediate server and the a i th authentication server. (W) ) intermediate server verification value decoding step to obtain verification value q a_i (W) by decoding
An intermediate server verification step in which the intermediate server verifies whether the sum of the verification values q a_1 (W) ,..., Q a_m (W) is equal to 0;
The authentication server generates an authentication server verification value generation step for obtaining a verification value q a_i (a_j) for j = 1 ,.
The authentication server, j = 1, ..., m for, using the common key between a j-th of the authentication server and the authentication server, a j-th ciphertext received from the authentication server Enc S_a_iS_a_j (q a_j (a_i) ) is decrypted to obtain the verification value q a_j (a_i) , an authentication server verification value decoding step;
An authentication server verification step in which the authentication server verifies whether the sum of the verification values q a_1 (a_i) ,..., Q a_m (a_i) is equal to 0;
A multi-party secure authentication method including:
λa_i (j)(i∈1,…,m)は次式を満たす定数であり、
上記利用者装置が、i=1,…,n-1について、上記利用者装置とi番目の認証サーバとの共通鍵を用いて、分散値[w']iを暗号化した暗号文EncUS_i([w']i)を得、上記利用者装置と中間認証サーバとの共通鍵を用いて、分散値[w']nを暗号化した暗号文EncUS_n([w']n)を得るパスワード分散値暗号化ステップと、
上記中間認証サーバが、i=1,…,n-1について、上記利用者装置から受信した上記暗号文EncUS_i([w']i)をi番目の上記認証サーバへ送信するパスワード分散値転送ステップと、
上記認証サーバが、上記利用者装置と当該認証サーバとの共通鍵を用いて、上記中間認証サーバから受信した上記暗号文EncUS_i([w']i)を復号して上記分散値[w']iを得る第一パスワード分散値復号ステップと、
上記中間認証サーバが、上記利用者装置と当該中間認証サーバとの共通鍵を用いて、上記暗号文EncUS_n([w']n)を復号して上記分散値[w']nを得る第二パスワード分散値復号ステップと、
上記認証サーバが、j=1,…,mについて、次式により検証値qa_i (a_j)を求める第一認証サーバ検証値生成ステップと、
上記中間認証サーバが、j=1,…,m-1について、aj番目の上記認証サーバと当該中間認証サーバとの共通鍵を用いて、上記検証値qa_m (a_j)を暗号化した暗号文EncS_a_mS_a_j(qa_m (a_j))を得る第二認証サーバ検証値暗号化ステップと、
上記認証サーバが、j=1,…,mについて、aj番目の上記認証サーバもしくは上記中間認証サーバと当該認証サーバとの共通鍵を用いて、aj番目の上記認証サーバから受信した暗号文EncS_a_iS_a_j(qa_j (a_i))を復号して上記検証値qa_j (a_i)を得る第一認証サーバ検証値復号ステップと、
上記中間認証サーバが、j=1,…,m-1について、aj番目の上記認証サーバと当該中間認証サーバとの共通鍵を用いて、aj番目の上記認証サーバから受信した暗号文EncS_a_mS_a_j(qa_j (a_m))を復号して上記検証値qa_j (a_m)を得る第二認証サーバ検証値復号ステップと、
上記認証サーバが、上記検証値qa_1 (a_i),…,qa_m (a_i)の総和が0と等しいか否かを検証する第一認証サーバ検証ステップと、
上記中間認証サーバが、上記検証値qa_1 (a_m),…,qa_m (a_m)の総和が0と等しいか否かを検証する第二認証サーバ検証ステップと、
を含むマルチパーティセキュア認証方法。 n ≧ 3, 2k-1 ≦ n, k ≦ m, m ≦ n, and a 1 ,..., a m are m m = n and m different from 1 to n, respectively. It is an integer, and (k, n) secret sharing is a secret sharing that can be restored if there are k or more of n sharing values, and [r (i) ] 1 , ..., [r (i) ] n (i = 1, ..., n) is a random value r (i) and (k, n) is a shared value by secret sharing. [0 (a_i) ] 1 , ..., [0 (a_i) ] n (I = 1, ..., m) is a (k, n) secret sharing value that is 0 when restored.
λ a_i (j) (i∈1, ..., m) is a constant that satisfies
Ciphertext Enc US_i obtained by encrypting the distributed value [w ′] i using the common key between the user device and the i-th authentication server for i = 1,..., N−1. ([w '] i ) is obtained, and the ciphertext Enc US_n ([w'] n ) obtained by encrypting the distributed value [w '] n is obtained using the common key between the user device and the intermediate authentication server. A password distributed value encryption step;
The intermediate authentication server transmits the ciphertext Enc US_i ([w '] i ) received from the user device to i-th authentication server for i = 1,..., N−1. Steps,
The authentication server decrypts the ciphertext Enc US_i ([w ′] i ) received from the intermediate authentication server by using a common key between the user device and the authentication server, and the distributed value [w ′ ] a first password distribution value decryption step to obtain i ;
The intermediate authentication server decrypts the ciphertext Enc US_n ([w ′] n ) and obtains the distributed value [w ′] n by using a common key between the user device and the intermediate authentication server. Two password distributed value decryption step;
The authentication server generates a verification value q a_i (a_j) for j = 1,..., M by the following equation:
The intermediate authentication server encrypts the verification value q a_m (a_j) by using a common key between the j- th authentication server and the intermediate authentication server for j = 1,..., M−1. A second authentication server verification value encryption step to obtain the sentence Enc S_a_mS_a_j (q a_m (a_j) );
Ciphertext received by the authentication server from the a j th authentication server for j = 1,..., M using the a j th authentication server or the common key between the intermediate authentication server and the authentication server. A first authentication server verification value decoding step of decoding Enc S_a_iS_a_j (q a_j (a_i) ) to obtain the verification value q a_j (a_i) ;
The intermediate authentication server, j = 1, ..., the m-1, a j-th by using the common key between the authentication server and the intermediate authentication server, ciphertext received from a j-th of the authentication server Enc a second authentication server verification value decoding step of obtaining the verification value q a_j (a_m) decodes the S_a_mS_a_j (q a_j (a_m)) ,
A first authentication server verification step in which the authentication server verifies whether the sum of the verification values q a_1 (a_i) ,..., Q a_m (a_i) is equal to 0;
A second authentication server verification step in which the intermediate authentication server verifies whether the sum of the verification values q a_1 (a_m) ,..., Q a_m (a_m) is equal to 0;
A multi-party secure authentication method including:
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013172032 | 2013-08-22 | ||
| JP2013172032 | 2013-08-22 | ||
| PCT/JP2014/071873 WO2015025916A1 (en) | 2013-08-22 | 2014-08-21 | Multi-party secure authentication system, authentication server, intermediate server, multi-party secure authentication method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP6040313B2 true JP6040313B2 (en) | 2016-12-07 |
| JPWO2015025916A1 JPWO2015025916A1 (en) | 2017-03-02 |
Family
ID=52483687
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015532894A Active JP6040313B2 (en) | 2013-08-22 | 2014-08-21 | Multi-party secure authentication system, authentication server, multi-party secure authentication method and program |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US9992190B2 (en) |
| EP (1) | EP3021518B1 (en) |
| JP (1) | JP6040313B2 (en) |
| CN (1) | CN105474575B (en) |
| WO (1) | WO2015025916A1 (en) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014166546A1 (en) | 2013-04-12 | 2014-10-16 | Nec Europe Ltd. | Method and system for accessing device by a user |
| US10091190B2 (en) | 2015-12-11 | 2018-10-02 | International Business Machines Corporation | Server-assisted authentication |
| US10795658B2 (en) * | 2017-03-20 | 2020-10-06 | Fujitsu Limited | Updatable random functions |
| CN107888382B (en) * | 2017-11-24 | 2019-11-19 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | Method, device and system for digital identity verification based on block chain |
| CN109255247B (en) * | 2018-08-14 | 2020-08-14 | 阿里巴巴集团控股有限公司 | Multi-party secure computing method and device, electronic device |
| CN111914264A (en) * | 2019-05-08 | 2020-11-10 | 华控清交信息科技(北京)有限公司 | Index creation method and device, and data verification method and device |
| CN111967038B (en) * | 2019-09-30 | 2023-12-15 | 华控清交信息科技(北京)有限公司 | Data processing systems, methods, equipment, editors and storage media |
| IL272520A (en) | 2020-02-06 | 2021-08-31 | Google Llc | Aggregating encrypted network values |
| IL272516A (en) | 2020-02-06 | 2021-08-31 | Google Llc | Preventing data manipulation using multiple aggregation servers |
| CN112866247A (en) * | 2021-01-18 | 2021-05-28 | 杭州中网智慧科技有限公司 | Identity authentication method and device |
| US20240303638A1 (en) * | 2023-03-08 | 2024-09-12 | Capital One Services, Llc | Systems and methods for secure authentication of contactless card |
| WO2025094297A1 (en) * | 2023-10-31 | 2025-05-08 | 株式会社Fiytty | Secret sharing device, assistance device, user device, secret sharing program, assistance program, and user device program |
Family Cites Families (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0695056B1 (en) * | 1994-07-29 | 2005-05-11 | Canon Kabushiki Kaisha | A method for sharing secret information, generating a digital signature, and performing certification in a communication system that has a plurality of information processing apparatuses and a communication system that employs such a method |
| JP3604737B2 (en) * | 1994-07-29 | 2004-12-22 | キヤノン株式会社 | Secret information processing method in communication system having a plurality of information processing devices and communication system thereof |
| AU3922299A (en) * | 1999-04-27 | 2000-11-10 | Valentin Alexandrovich Mischenko | Method for encrypting information and device for realization of the method |
| US6959394B1 (en) * | 2000-09-29 | 2005-10-25 | Intel Corporation | Splitting knowledge of a password |
| US9219708B2 (en) * | 2001-03-22 | 2015-12-22 | DialwareInc. | Method and system for remotely authenticating identification devices |
| US20030221102A1 (en) * | 2002-05-24 | 2003-11-27 | Jakobsson Bjorn Markus | Method and apparatus for performing multi-server threshold password-authenticated key exchange |
| WO2004008676A2 (en) * | 2002-07-12 | 2004-01-22 | Ingrian Networks, Inc. | Network attached encryption |
| JP4389145B2 (en) * | 2002-07-30 | 2009-12-24 | 富士ゼロックス株式会社 | Client server system and apparatus thereof |
| JP4292835B2 (en) * | 2003-03-13 | 2009-07-08 | 沖電気工業株式会社 | Secret reconstruction method, distributed secret reconstruction device, and secret reconstruction system |
| US20060149962A1 (en) * | 2003-07-11 | 2006-07-06 | Ingrian Networks, Inc. | Network attached encryption |
| US8171101B2 (en) * | 2005-09-30 | 2012-05-01 | Cleversafe, Inc. | Smart access to a dispersed data storage network |
| IL174619A (en) * | 2006-03-29 | 2013-12-31 | Nds Ltd | Password protection |
| US20070266236A1 (en) * | 2006-05-09 | 2007-11-15 | Colditz Nathan Von | Secure network and method of operation |
| GB2446199A (en) * | 2006-12-01 | 2008-08-06 | David Irvine | Secure, decentralised and anonymous peer-to-peer network |
| BRPI0906863A8 (en) * | 2008-01-07 | 2018-10-30 | Security First Corp | systems and methods for data protection using multifactor keyed dispersion |
| JP2010061261A (en) * | 2008-09-02 | 2010-03-18 | Fujitsu Ltd | Authentication system and authentication method |
| US9270655B1 (en) * | 2011-09-30 | 2016-02-23 | Emc Corporation | Configurable one-time authentication tokens with improved resilience to attacks |
| JP5814880B2 (en) * | 2012-07-31 | 2015-11-17 | 三菱電機株式会社 | Encryption system, encryption method, encryption program, and decryption device |
-
2014
- 2014-08-21 EP EP14838104.9A patent/EP3021518B1/en active Active
- 2014-08-21 CN CN201480045247.3A patent/CN105474575B/en active Active
- 2014-08-21 WO PCT/JP2014/071873 patent/WO2015025916A1/en not_active Ceased
- 2014-08-21 JP JP2015532894A patent/JP6040313B2/en active Active
- 2014-08-21 US US14/910,808 patent/US9992190B2/en active Active
Non-Patent Citations (4)
| Title |
|---|
| JPN6014047272; 諸橋玄武, 他: '実用的な秘密分散/マルチパーティ計算システムのための認証方式' 2013年暗号と情報セキュリティシンポジウム , 20130122, 3C1-2 * |
| JPN6014047274; 尾形わかは: '情報理論的に安全なパスワード付秘密分散法の安全性と効率化' 2013年暗号と情報セキュリティシンポジウム , 20130122, 1F1-2 * |
| JPN6014047276; J. Camenisch et al.: 'Practical Yet Universally Composable Two-Server Password-Authenticated Secret Sharing' Cryptology ePrint Archive Report 2012/717, Ver. 20121227:172803, 201212, International Association for Cryptologic Research * |
| JPN6014047278; 菊池亮, 他: '無条件秘匿性を持つマルチパーティシステム用パスワード認証方式' コンピュータセキュリティシンポジウム2013論文集 , 20131014, pp. 435-442, 情報処理学会 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20160197906A1 (en) | 2016-07-07 |
| EP3021518A4 (en) | 2017-03-15 |
| JPWO2015025916A1 (en) | 2017-03-02 |
| WO2015025916A1 (en) | 2015-02-26 |
| EP3021518A1 (en) | 2016-05-18 |
| US9992190B2 (en) | 2018-06-05 |
| CN105474575A (en) | 2016-04-06 |
| CN105474575B (en) | 2018-12-14 |
| EP3021518B1 (en) | 2018-04-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6040313B2 (en) | Multi-party secure authentication system, authentication server, multi-party secure authentication method and program | |
| JP4790731B2 (en) | Derived seed | |
| US10887110B2 (en) | Method for digital signing with multiple devices operating multiparty computation with a split key | |
| JP2013026747A (en) | Information processor, server device, and program | |
| KR20120132708A (en) | Distributed access priviledge management apparatus and method in cloud computing environments | |
| EP3163841A1 (en) | A method, system, server, client and application for sharing digital content between communication devices within an internet network | |
| Tiwari et al. | ACDAS: Authenticated controlled data access and sharing scheme for cloud storage | |
| WO2016199507A1 (en) | Key exchange method, key exchange system, key distribution device, communication device, and program | |
| KR102269753B1 (en) | Method for performing backup and recovery private key in consortium blockchain network, and device using them | |
| Krishna et al. | SSH-DAuth: secret sharing based decentralized OAuth using decentralized identifier | |
| KR20210020851A (en) | Method for performing backup and recovery private key in consortium blockchain network, and device using them | |
| Corella | Overcoming the UX Challenges Faced by FIDO Credentials in the Consumer Space | |
| CN116318647B (en) | A CP-ABE outsourcing decryption method and device with homomorphic characteristics | |
| KR102827883B1 (en) | Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation | |
| Zhang et al. | Medical data sharing scheme based on blockchain-based attribute proxy re-encryption | |
| Esiner et al. | Layered security for storage at the edge: On decentralized multi-factor access control | |
| Piechotta et al. | A secure dynamic collaboration environment in a cloud context | |
| Yasmin et al. | Decentralized Entrance Power with Secret Endorsement of Data Stored in Clouds | |
| Wu et al. | A lightweight authentication and key agreement scheme for mobile satellite communication systems | |
| Sim et al. | A cloud authentication protocol using one-time pad | |
| KR102894725B1 (en) | Method of creating account for electronic signature by secure multi-party computation | |
| Li et al. | RRMAC: A Multi-Data Owner Access Control Scheme With Robust Revocation for Co-Owned Data Sharing | |
| Satheesh et al. | A NOVEL HARDWARE PARAMETERS BASED CLOUD DATA ENCRYPTION AND DECRYPTION AGAINST UN-AUTHORIZED USERS | |
| Vijayalakshmi et al. | Authentication of data storage using decentralized access control in clouds | |
| Mona et al. | Secure Ballot: A Cryptographically Authenticated Voting System for SMBs |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161006 |
|
| 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: 20161101 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161107 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6040313 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 |