WO2014112551A1 - 秘密鍵分割保管システム、分割保管装置、秘密鍵分割保管方法 - Google Patents

秘密鍵分割保管システム、分割保管装置、秘密鍵分割保管方法 Download PDF

Info

Publication number
WO2014112551A1
WO2014112551A1 PCT/JP2014/050652 JP2014050652W WO2014112551A1 WO 2014112551 A1 WO2014112551 A1 WO 2014112551A1 JP 2014050652 W JP2014050652 W JP 2014050652W WO 2014112551 A1 WO2014112551 A1 WO 2014112551A1
Authority
WO
WIPO (PCT)
Prior art keywords
divided
secret key
dec
sig
split
Prior art date
Application number
PCT/JP2014/050652
Other languages
English (en)
French (fr)
Inventor
鉄太郎 小林
山本 剛
麗生 吉田
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to EP14740768.8A priority Critical patent/EP2947812B1/en
Priority to JP2014557492A priority patent/JP6059258B2/ja
Priority to CN201480005193.8A priority patent/CN104919752B/zh
Priority to US14/760,935 priority patent/US9894056B2/en
Publication of WO2014112551A1 publication Critical patent/WO2014112551A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes

Definitions

  • the present invention relates to a secret key split storage system, a split storage device, and a secret key split storage method for securely storing a secret key for encryption / authentication.
  • Patent document 1 etc. are known as such a technique.
  • the present invention has been made in view of such problems, and an object thereof is to reduce the risk of leakage of secret information due to leakage of a secret key.
  • the first secret key split storage system of the present invention encrypts plaintext M using a public key PK and outputs a ciphertext C, and a split secret obtained by splitting a secret key SK corresponding to the public key PK.
  • N division storage devices for recording any one of the keys sk 1 ,..., Sk N , and an integration unit for obtaining plaintext M obtained by decrypting the ciphertext C.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Dec (C, SK) is a symbol indicating that the ciphertext C is decrypted using the secret key SK
  • g (sk 1 ,..., Sk N) is sk 1, ..., function as a variable sk N
  • f (m 1, ..., m N) are m 1, ..., a function whose variable is the m N
  • the relationship is established.
  • all split storage devices include a decryption unit and a split secret key change unit.
  • the second secret key split storage system of the present invention encrypts plaintext M using a public key PK and outputs a ciphertext C, and a split secret obtained by splitting a secret key SK corresponding to the public key PK.
  • This is a secret key split storage system including N split storage devices for recording any one of the keys sk 1 ,..., Sk N.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Dec (C, SK) is a symbol indicating that the ciphertext C is decrypted using the secret key SK
  • g (sk 1 ,..., Sk N ) is a function with sk 1 ,..., Sk N as variables
  • f (Dec (C, sk n ), mn + 1 ) is a function with dec (C, sk n ), mn + 1 as variables
  • Dec (C, SK) Dec (C, g (sk 1 ,..., Sk N ))
  • m N Dec (C, sk N )
  • M m 1
  • a decoding unit is provided that sends to the divided storage device that records sk N-1 .
  • the divided storage device that records the divided secret key sk n (where N is 3 or more and n is any of 2,..., N ⁇ 1) is obtained from the divided storage device that records the divided secret key sk n + 1.
  • a decoding unit is provided that sends the divided storage device for recording n ⁇ 1 .
  • the third secret key split storage system of the present invention includes N split storage devices for recording any one of the split secret keys sk 1 ,..., Sk N obtained by splitting the secret key SK, and a signature ⁇ for the plaintext M.
  • All the divided storage apparatuses include a generation unit and a divided secret key change unit.
  • the fourth secret key split storage system of the present invention includes N split storage devices for recording any one of split secret keys sk 1 ,..., Sk N obtained by splitting the secret key SK, and provides a signature for plaintext M. Is generated.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Sig (M, SK) is a symbol indicating that a signature ⁇ is generated using the secret key SK
  • g (sk 1 ,..., Sk N ) Is a function with sk 1 ,..., Sk N as variables
  • f (Sig (M, sk n ), ⁇ n + 1 ) is a function with sig (M, sk n ), ⁇ n + 1 as variables
  • Sig (M, SK) Sig (M, g (sk 1 ,..., Sk N ))
  • ⁇ N Sig (M, sk N )
  • ⁇ n
  • the divided storage device that records the divided secret key sk n (where N is 3 or more and n is any of 2,..., N ⁇ 1) is obtained from the divided storage device that records the divided secret key sk n + 1.
  • the divided signature ⁇ n f (Sig (M, sk n ), ⁇ n + 1 ), and the divided signature ⁇ n is obtained as the divided secret key sk.
  • a generation unit for sending to the divided storage device for recording n ⁇ 1 is provided.
  • the secret key SK is not known unless the split secret key is stolen from all the split storage devices within the interval for changing the split secret key. Therefore, the risk of leakage can be greatly reduced compared to the risk of leakage of the secret key from one device.
  • FIG. 3 is a diagram illustrating a functional configuration example of a secret key split storage system according to the first embodiment.
  • FIG. 6 is a diagram illustrating a functional configuration example of a secret key split storage system according to a second embodiment.
  • FIG. 10 is a diagram illustrating a functional configuration example of a secret key split storage system according to a third embodiment.
  • FIG. 10 is a diagram illustrating a processing flow for generating a signature of the secret key split storage system according to the third embodiment.
  • FIG. 9 is a diagram illustrating a functional configuration example of a secret key split storage system according to a fourth embodiment. The figure which shows the processing flow which produces
  • FIG. 1 shows a functional configuration example of the secret key split storage system of the first embodiment.
  • FIG. 2 shows a processing flow for decrypting ciphertext into plaintext
  • FIGS. 3 to 5 show examples of processing flow for changing the split secret key.
  • the secret key split storage system according to the first embodiment includes an encryption device 600, N split storage devices 100 1 ,..., 100 N , and an integration unit 130 connected via a network 900.
  • the encryption device 600 encrypts the plaintext M using the public key PK and outputs a ciphertext C.
  • the divided storage device 100 n records the divided secret key sk n among the divided secret keys sk 1 ,..., Sk N obtained by dividing the secret key SK corresponding to the public key PK.
  • the integration unit 130 obtains a plaintext M obtained by decrypting the ciphertext C.
  • the integration means 130 is shown in various places with dotted lines.
  • the integration unit 130 may be an independent device, or may be provided inside any one of the divided storage devices 100 n . Further, various apparatuses may include the integration unit 130, and the integration unit 130 to be used may be selected for each decoding processing flow.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Dec (C, SK) is a symbol indicating that the ciphertext C is decrypted using the secret key SK
  • g sk 1 ,...
  • sk N is sk 1, ..., function as a variable sk N
  • f (m 1, ..., m N) are m 1
  • is a sign indicating exponentiation
  • the relationship is established.
  • Each divided storage device 100 n includes a decryption unit 110 n , a divided secret key change unit 120 n , and a recording unit 190 n .
  • the recording unit 190 n records the divided secret key sk n .
  • the time when the predetermined condition is met is when the decoding process is performed a predetermined number of times, and may be determined as appropriate.
  • SK sk 1 +... + Sk N
  • SK sk 1 +...
  • the divided secret key change unit 120 n sk 1 '+ ... + sk N ' mod q sk 1 + ... + sk N mod q
  • divided secret key pair (sk 1 ', ..., sk N') may be determined a.
  • two divided storage devices 100 i and 100 j are selected.
  • i and j are integers of i ⁇ j from 1 to N.
  • the change ⁇ is shared between the divided storage devices 100 i and 100 j (S121 ij ).
  • S122 ij It is confirmed whether all divided storage devices have been selected, and it is determined whether to repeat this process (S124). All the divided secret keys are changed by this repeated processing.
  • the changed amount ⁇ is shared between the divided storage devices 100 1 and 100 2 (S121).
  • Divided secret keys to change the split secret key changing unit of the divided storage apparatus 100 2 120 2 sk 2 ' sk 2-.alpha.
  • the divided secret key may be changed as follows (S122). Also in this case, an authentication key exchange protocol can be used in the step of sharing the value ⁇ (S121).
  • the secret key SK is not known unless the split secret key is stolen from all the split storage devices within the interval for changing the split secret key. Therefore, the risk of leakage can be greatly reduced compared to the risk of leakage of the secret key from one device.
  • the relationship must be established.
  • the present invention is not limited to these encryption methods.
  • Dec (C, sk N ) ⁇ Dec (C, sk N ) mod q
  • FIG. 6 shows a functional configuration example of the secret key split storage system of the second embodiment
  • FIG. 7 shows a processing flow for decrypting ciphertext into plaintext.
  • An example of the processing flow for changing the split secret key is the same as in FIGS.
  • the secret key split storage system of the second embodiment includes an encryption device 600 and N split storage devices 200 1 ,..., 200 N connected via a network 900.
  • the encryption device 600 encrypts the plaintext M using the public key PK and outputs a ciphertext C.
  • the divided storage device 200 n records the divided secret key sk n among the divided secret keys sk 1 ,..., Sk N obtained by dividing the secret key SK corresponding to the public key PK.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Dec (C, SK) is a symbol indicating that the ciphertext C is decrypted using the secret key SK
  • g sk 1 ,...
  • sk N is a function with sk 1 ,..., sk N as variables
  • f (Dec (C, sk n ), mn + 1 ) is a function with Dec (C, sk n ) and mn + 1 as variables
  • is a power
  • Dec (C, SK) Dec (C, g (sk 1 ,..., Sk N ))
  • m N Dec (C, sk N )
  • the relationship is established.
  • Each divided storage device 200 n includes a decrypting unit 210 n , a divided secret key changing unit 120 n , and a recording unit 190 n .
  • the recording unit 190 n records the divided secret key sk n .
  • Dec (C, SK) Dec (C, g (sk 1 ′,..., Sk N ′))
  • m N Dec (C, sk N ′)
  • m n f (Dec (C, sk n ′), m n + 1 )
  • M m 1 Change in the holds, and (sk 1, ..., sk N ) different from the divided secret key pair (sk 1 ', ..., sk N') look, sk n 'split private key sk n, each record (S120 n ).
  • SK sk 1 +...
  • Dec (C, SK) Dec (C, g (sk 1 ,..., Sk N ))
  • m N Dec (C, sk N )
  • m n f (Dec (C, sk n ), m n + 1 )
  • M m 1
  • SK sk 1 +...
  • Dec (C, SK) Dec (C, g (sk 1 ,..., Sk N ))
  • m N Dec (C, sk N )
  • m n f (Dec (C, sk n ), m n + 1 )
  • M m 1
  • the set (sk 1 ', ..., sk N') because the conditions required for the same as in Example 1, the set (sk 1 ', ..., sk N') flow to change, the examples 1 (FIGS. 3 to 5).
  • the secret key SK is not known unless the split secret key is stolen from all the split storage devices within the interval for changing the split secret key. Therefore, the risk of leakage can be greatly reduced compared to the risk of leakage of the secret key from one device.
  • Dec (C, SK) Dec (C, g (sk 1 ,..., Sk N ))
  • m N Dec (C, sk N )
  • the relationship must be established.
  • the present invention is not limited to these encryption methods.
  • FIG. 8 shows a functional configuration example of the secret key split storage system of the third embodiment
  • FIG. 9 shows a processing flow for generating a signature.
  • the processing flow for changing the split secret key is the same as in FIGS.
  • the secret key split storage system according to the third embodiment includes a signature verification apparatus 700, N split storage apparatuses 300 1 ,..., 300 N connected by a network 900, and an integration unit 330.
  • the signature verification apparatus 700 is an apparatus that verifies the validity of the created signature ⁇ .
  • the divided storage device 300 n records the divided secret key sk n among the divided secret keys sk 1 ,..., Sk N obtained by dividing the secret key SK corresponding to the public key PK.
  • the integration unit 330 obtains a signature ⁇ for the plaintext M.
  • integrated unit 330 may be a single device that is independent, may be provided inside one of the divided storage devices 300 n. Further, various devices may include the integration unit 330, and the integration unit 330 to be used may be selected for each signature processing flow.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Sig (M, SK) is a symbol indicating that a signature ⁇ is generated using the secret key SK
  • g (sk 1 ,..., Sk N) is sk 1, ..., function as a variable sk N
  • f ( ⁇ 1, ..., ⁇ N) is sigma 1, ..., function to the sigma N variables
  • is a sign indicating exponentiation
  • the relationship is established.
  • Each divided storage device 300 n includes a generation unit 310 n , a divided secret key change unit 120 n , and a recording unit 190 n .
  • the recording unit 190 n records the divided secret key sk n .
  • SK sk 1 +...
  • the set (sk 1 ', ..., sk N') because the conditions required for the same as in Example 1, the set (sk 1 ', ..., sk N') flow to change, the examples 1 (FIGS. 3 to 5).
  • the secret key SK cannot be known unless the split secret key is stolen from all the split storage devices within the interval for changing the split secret key. Therefore, the risk of leakage can be greatly reduced compared to the risk of leakage of the secret key from one device.
  • Sig (M, sk N ) F (Sig (M, sk 1 ),..., Sig (M, sk N )
  • FIG. 10 shows a functional configuration example of the secret key split storage system of the fourth embodiment
  • FIG. 11 shows a processing flow for generating a signature.
  • An example of the processing flow for changing the split secret key is the same as in FIGS.
  • the secret key split storage system according to the fourth embodiment includes a signature verification apparatus 700 and N split storage apparatuses 400 1 ,..., 400 N connected via a network 900.
  • the signature verification apparatus 700 is an apparatus that verifies the validity of the created signature ⁇ .
  • the divided storage device 400 n records the divided secret key sk n among the divided secret keys sk 1 ,..., Sk N obtained by dividing the secret key SK corresponding to the public key PK.
  • N is an integer greater than or equal to 2
  • n is an integer greater than or equal to 1 and less than or equal to N
  • Sig (M, SK) is a symbol indicating that a signature ⁇ is generated using the secret key SK
  • g (sk 1 ,..., Sk N ) is a function with sk 1 ,..., Sk N as variables
  • f (Sig (M, sk n ), ⁇ n + 1 ) is a function with Sig (M, sk n ), ⁇ n + 1 as variables
  • is a power
  • Sig (M, SK) Sig (M, g (sk 1 ,..., Sk N ))
  • ⁇ N Sig (M, sk n )
  • the relationship is established.
  • Each divided storage device 400 n includes a generation unit 410 n , a divided secret key change unit 120 n , and a recording unit 190 n .
  • the recording unit 190 n records the divided secret key sk n .
  • the set (sk 1 ', ..., sk N') because the conditions required for the same as in Example 1, the set (sk 1 ', ..., sk N') flow to change, the examples 1 (FIGS. 3 to 5).
  • the secret key SK is not known unless the split secret key is stolen from all the split storage devices within the interval for changing the split secret key. Therefore, the risk of leakage can be greatly reduced compared to the risk of leakage of the secret key from one device.
  • this description does not limit the signature scheme for realizing the present embodiment. Another signature scheme may be used as long as the above conditions are satisfied.
  • the program describing the processing contents can be recorded on a computer-readable recording medium.
  • a computer-readable recording medium any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.
  • this 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.
  • a computer that executes such a program first stores a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device.
  • the computer reads a program stored in its own recording medium and executes a process according to the read 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.
  • the processing according to the received program may be executed sequentially.
  • 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 a processing function only by an execution instruction and result acquisition. It is good.
  • 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).
  • the present apparatus is configured by executing a predetermined program on a computer.
  • a predetermined program on a computer.
  • at least a part of these processing contents may be realized by hardware.

Abstract

 秘密鍵の漏洩による秘密情報の漏洩のリスクを低減する。本発明の秘密鍵分割システムは、秘密鍵SKを復号時または署名生成時に統合できるように分割し、それぞれの分割秘密鍵をk,…,skを分割保管装置で記録する。そして、定期的または所定の条件を満たす時に統合できる条件を満たす別の分割秘密鍵の組に変更する。本発明の秘密鍵分割保管システムによれば、分割秘密鍵を変更する間隔内に、すべての分割保管装置から分割秘密鍵を盗まなければ秘密鍵SKが分からない。したがって、1個の装置から秘密鍵が漏洩するリスクに比べ、大幅に漏洩のリスクを低減できる。

Description

秘密鍵分割保管システム、分割保管装置、秘密鍵分割保管方法
 本発明は、暗号・認証のための秘密鍵を安全に保管するための秘密鍵分割保管システム、分割保管装置、秘密鍵分割保管方法に関する。
 暗号・認証のための秘密鍵を保管することは重要な問題である。現代暗号においては、秘密鍵が漏洩しないことが安全性の前提である。そのため、秘密鍵が漏洩しないようにするために、鍵を保管する耐タンパなハードウェアが研究され、TPM(Trusted Platform Module)やHSM(Hardware security module)のような製品が実用化されている。
 秘密鍵の漏洩による秘密情報漏洩を防止する方法としては、秘密鍵を更新する方法も考えられる。このような技術としては特許文献1などが知られている。
特開2012-150287号公報
 しかしながら、TPMやHSMのようなハードウェアは低速であり、大量の鍵を保管したい場合には容量が十分でない場合が多い。一方、秘密鍵を定期的に、または定めた条件の基に更新する方法も、秘密鍵が漏洩してから更新するまでの間に秘密情報が漏洩するリスクがある。
 本発明は、このような課題を鑑みてなされたものであり、秘密鍵の漏洩による秘密情報の漏洩のリスクを低減することを目的とする。
 本発明の第1の秘密鍵分割保管システムは、公開鍵PKを用いて平文Mを暗号化し、暗号文Cを出力する暗号化装置と、公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つを記録するN個の分割保管装置と、暗号文Cを復号した平文Mを求める統合手段とを備える。まず、Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(m,…,m)はm,…,mを変数とする関数とし、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
の関係が成り立つとする。そして、第1の秘密鍵分割保管システムでは、すべての分割保管装置は、復号部と分割秘密鍵変更部とを備える。復号部は、それぞれが記録する分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、統合手段に分割平文mを送る。分割秘密鍵変更部は、
 Dec(C,SK)=Dec(C,g(sk’,…,sk’))
          =f(Dec(C,sk’),…,Dec(C,sk’))
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する。統合手段は、平文MをM=f(m,…,m)のように求める。
 本発明の第2の秘密鍵分割保管システムは、公開鍵PKを用いて平文Mを暗号化し、暗号文Cを出力する暗号化装置と、公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つを記録するN個の分割保管装置とを備えた秘密鍵分割保管システムである。まず、Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Dec(C,sk),mn+1)はDec(C,sk),mn+1を変数とする関数とし、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
の関係が成り立つとする。分割秘密鍵skを記録する分割保管装置は、分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、分割平文mを、分割秘密鍵skN-1を記録する分割保管装置に送る復号部を備える。分割秘密鍵sk(ただし、Nが3以上であって、nが2,…,N-1のいずれか)を記録する分割保管装置は、分割秘密鍵skn+1を記録する分割保管装置から取得した分割平文mn+1と分割秘密鍵skを用いて分割平文mをm=f(Dec(C,sk),mn+1)のように求め、分割平文mを、分割秘密鍵skn-1を記録する分割保管装置に送る復号部を備える。分割秘密鍵skを記録する分割保管装置は、分割秘密鍵skを記録する分割保管装置から取得した分割平文mと分割秘密鍵skを用いて平文MをM=f(Dec(C,sk),m)のように求める復号部を備える。すべての分割保管装置は、さらに、
 Dec(C,SK)=Dec(C,g(sk’,…,sk’))
 m=Dec(C,sk’)
 m=f(Dec(C,sk’),mn+1
 M=m
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部も備える。
 本発明の第3の秘密鍵分割保管システムは、秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つを記録するN個の分割保管装置と、平文Mに対する署名Σを求める統合手段とを備える。まず、Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(σ,…,σ)はσ,…,σを変数とする関数とし、
 Sig(M,SK)=Sig(M,g(sk,…,sk))
          =f(Sig(M,sk),…,Sig(C,sk))
の関係が成り立つとする。すべての分割保管装置は、生成部と分割秘密鍵変更部を備える。生成部は、それぞれが記録する分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、統合手段に分割署名σを送る。分割秘密鍵変更部は、
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
          =f(Sig(M,sk’),…,Sig(C,sk’))
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する。統合手段は、署名ΣをΣ=f(σ,…,σ)のように求める。
 本発明の第4の秘密鍵分割保管システムは、秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つを記録するN個の分割保管装置を備え、平文Mに対する署名を生成する。まず、Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Sig(M,sk),σn+1)はSig(M,sk),σn+1を変数とする関数とし、
 Sig(M,SK)=Sig(M,g(sk,…,sk))
 σ=Sig(M,sk
 σ=f(Sig(M,sk),σn+1
 Σ=σ
の関係が成り立つとする。分割秘密鍵skを記録する分割保管装置は、分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、分割署名σを、分割秘密鍵skN-1を記録する分割保管装置に送る生成部を備える。分割秘密鍵sk(ただし、Nが3以上であって、nが2,…,N-1のいずれか)を記録する分割保管装置は、分割秘密鍵skn+1を記録する分割保管装置から取得した分割署名σn+1と分割秘密鍵skを用いて分割署名σをσ=f(Sig(M,sk),σn+1)のように求め、分割署名σを、分割秘密鍵skn-1を記録する分割保管装置に送る生成部を備える。分割秘密鍵skを記録する分割保管装置は、分割秘密鍵skを記録する分割保管装置から取得した分割署名σと分割秘密鍵skを用いて署名ΣをΣ=f(Sig(M,sk),σ)のように求める生成部を備える。すべての分割保管装置は、さらに、
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
 σ=Sig(M,sk’)
 σ=f(Sig(M,sk’),σn+1
 Σ=σ
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部も備える。
 本発明の秘密鍵分割保管システムによれば、分割秘密鍵を変更する間隔内に、すべての分割保管装置から分割秘密鍵を盗まなければ秘密鍵SKが分からない。したがって、1個の装置から秘密鍵が漏洩するリスクに比べ、大幅に漏洩のリスクを低減できる。
実施例1の秘密鍵分割保管システムの機能構成例を示す図。 実施例1の秘密鍵分割保管システムの暗号文を平文に復号する処理フローを示す図。 本発明の分割秘密鍵を変更する処理フローの1つ目の例を示す図。 本発明の分割秘密鍵を変更する処理フローの2つ目の例を示す図。 本発明の分割秘密鍵を変更する処理フローの3つ目の例を示す図。 実施例2の秘密鍵分割保管システムの機能構成例を示す図。 実施例2の秘密鍵分割保管システムの暗号文を平文に復号する処理フローを示す図。 実施例3の秘密鍵分割保管システムの機能構成例を示す図。 実施例3の秘密鍵分割保管システムの署名を生成する処理フローを示す図。 実施例4の秘密鍵分割保管システムの機能構成例を示す図。 実施例4の秘密鍵分割保管システムの署名を生成する処理フローを示す図。
 以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
 図1に実施例1の秘密鍵分割保管システムの機能構成例を示す。図2に暗号文を平文に復号する処理フローを、図3~5に分割秘密鍵を変更する処理フローの例を示す。実施例1の秘密鍵分割保管システムは、ネットワーク900で接続された暗号化装置600、N個の分割保管装置100,…,100、統合手段130を備える。暗号化装置600は、公開鍵PKを用いて平文Mを暗号化し、暗号文Cを出力する。分割保管装置100は、公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skの中の分割秘密鍵skを記録する。統合手段130は、暗号文Cを復号した平文Mを求める。図1では、統合手段130は点線で色々な場所に示している。このように、統合手段130は独立した1つの装置でもよいし、いずれかの分割保管装置100の内部に備えられていてもよい。また、色々な装置が統合手段130を備えておき、復号の処理フローごとにどの統合手段130を用いるのかを選択してもよい。
 ここで、Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(m,…,m)はm,…,mを変数とする関数、^はべき乗を示す記号とし、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
の関係が成り立つとする。
 それぞれの分割保管装置100は、復号部110、分割秘密鍵変更部120、記録部190を備える。記録部190は、分割秘密鍵skを記録している。復号部110は、分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、統合手段130に分割平文mを送る(S110)。統合手段130は、平文MをM=f(m,…,m)のように求める(S130)。
 分割秘密鍵変更部120は、定期的に、または所定の条件に適合したときに、
 Dec(C,SK)=Dec(C,g(sk’,…,sk’))
          =f(Dec(C,sk’),…,Dec(C,sk’))
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する(S120)。所定の条件に適合したときとは、所定の回数復号の処理を行ったときなどであり、適宜定めればよい。例えば、
 SK=sk+…+sk
の関係が成り立てば
 Dec(C,SK)=Dec(C,g(sk’,…,sk’))
          =f(Dec(C,sk’),…,Dec(C,sk’))
が成り立つように、関数g、fを決めた場合、分割秘密鍵変更部120は、
 sk’+…+sk’ = sk+…+sk
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。また、
 SK=sk+…+sk mod q
の関係が成り立てば
 Dec(C,SK)=Dec(C,g(sk’,…,sk’))
          =f(Dec(C,sk’),…,Dec(C,sk’))
が成り立つように、関数g、fを決めた場合、分割秘密鍵変更部120は、
 sk’+…+sk’ mod q = sk+…+sk mod q
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。
 図3に示した分割秘密鍵を変更する処理フローの場合、分割保管装置100の分割秘密鍵の変更分をαとし、分割保管装置100,…,100が、
α+…+α =0
または
 α+…+α mod q =0
となるように、α,…,αを求め、分割保管装置100がαを取得する(S121)。そして、分割秘密鍵変更部120
 sk’=sk+α
のように分割秘密鍵を変更する(S122)。
 図4に示した分割秘密鍵を変更する処理フローの場合、2つの分割保管装置100,100を選択する。なお、iとjは1以上N以下のi≠jの整数である。また、N=2の場合は、i=1,j=2またはi=2,j=1である。そして、分割保管装置100,100の間で変更分αを共有する(S121ij)。そして、分割保管装置100の分割秘密鍵変更部120
 sk’=sk+α
のように分割秘密鍵を変更し、分割保管装置100の分割秘密鍵変更部120
 sk’=sk-α
のように分割秘密鍵を変更する(S122ij)。すべての分割保管装置が選択されたかを確認し、この処理を繰り返すかを判断する(S124)。この繰り返し処理によってすべての分割秘密鍵が変更される。なお、このように2つの分割保管装置の間で値αを共有し、分割秘密鍵sk,skを、αを用いてそれぞれ、sk’,sk’に変更する方法の場合、値αを共有するステップ(S121ij)では、認証鍵交換プロトコルを用いることができる。認証鍵交換プロトコルであれば、分割保管装置100と分割保管装置100の両方が生成した乱数を用いてαが決まるので、いずれの分割保管装置も恣意的にαを決めることができない。したがって、より安全性を高くできる。
 図5に示した分割秘密鍵を変更する処理フローは、N=2の場合の処理フローである。この場合は、分割保管装置を選択する必要がないので、分割保管装置100,100の間で変更分αを共有する(S121)。そして、分割保管装置100の分割秘密鍵変更部120
 sk’=sk+α
のように分割秘密鍵を変更し、分割保管装置100の分割秘密鍵変更部120
 sk’=sk-α
のように分割秘密鍵を変更すればよい(S122)。この場合も、値αを共有するステップ(S121)では、認証鍵交換プロトコルを用いることができる。
 実施例1の秘密鍵分割保管システムによれば、分割秘密鍵を変更する間隔内に、すべての分割保管装置から分割秘密鍵を盗まなければ秘密鍵SKが分からない。したがって、1個の装置から秘密鍵が漏洩するリスクに比べ、大幅に漏洩のリスクを低減できる。
 なお、以下のように運用すれば、秘密鍵SKを1個の装置で記録している既存の復号装置を、実施例1の分割保管装置100に移行することも可能である。既存の復号装置に分割秘密鍵変更部120を追加し、記録部190,…,190N-1にsk=…=skN-1=0を記録した分割保管装置100,…,100N-1をネットワーク900につなぐ。このように構成すれば、初期状態がsk=SK,sk=…=skN-1=0となる。そして、最初の分割秘密鍵の組(sk,…,sk)の変更によって、秘密鍵を分割すれば、実施例1の秘密鍵分割保管システムを構成できる。したがって、実施例1の秘密鍵分割保管システムであれば、既存のシステムからも容易に移行できる。
<適用できる暗号方式の具体例>
 実施例1の秘密鍵分割保管システムを実現するためには、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
の関係が成り立たなければならない。ここでは、この関係が成り立つ暗号方式を紹介する。ただし、上記の関係が成り立てば、これらの暗号方式に限定するものではない。
(1)RSA暗号
 RSA暗号では、qを2つの大きい素数の合成数(積)とし、公開鍵PKを{q,e}、秘密鍵SKをdとすると、平文Mと暗号文Cは、
 C=M^e mod q
 M=Dec(C,d)=C^d mod q
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk
 f(Dec(C,sk),…,Dec(C,sk))
 =Dec(C,sk)×…×Dec(C,sk) mod q
のように定め、分割秘密鍵の組(sk,…,sk)を、
 d=SK=sk+…+sk
が成り立つように選択すれば、
 Dec(C,sk)=C^sk mod q
なので、
 f(Dec(C,sk),…,Dec(C,sk))
 =C^(sk+…+sk) mod q
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
が成り立つ。
(2)ElGamal暗号
 ElGamal暗号では、公開鍵PKを{g,h}、秘密鍵SKをx、rを乱数とすると(ただし、h=g^x、xとrは0以上q-1以下の整数、qは巡回群Gの位数、gは巡回群Gの生成元)、巡回群Gの要素である平文Mと暗号文Cは、
 C={C,C}={g^r,Mh^r}
 M=Dec(C,x)=C/(C^x)
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk mod q
 f(Dec(C,sk),…,Dec(C,sk))
 =Dec(C,sk)×…×Dec(C,sk)/(C^(N-1))
のように定め、分割秘密鍵の組(sk,…,sk)を、
 x=SK=sk+…+sk mod q
が成り立つように選択すれば、
 Dec(C,sk)=C/(C^sk
なので、
 f(Dec(C,sk),…,Dec(C,sk))
 =C/(C^sk)×…×C/(C^sk)/(C^(N-1))
 =C/(C^(sk+…+sk
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
が成り立つ。
(3)楕円ElGamal暗号
 楕円ElGamal暗号では、公開鍵PKを{G,H}、秘密鍵SKをx、rを乱数とすると(ただし、H=xG、xは1以上q-1以下の整数、rは0以上q-1以下の整数、qは楕円曲線上のベースポイントGの位数)、平文Mと暗号文Cは、
 C={C,C}={rG,M+rH}
 M=Dec(C,x)=C-xC
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk mod q
 f(Dec(C,sk),…,Dec(C,sk))
 =Dec(C,sk)+…+Dec(C,sk)-(N-1)C
のように定め、分割秘密鍵の組(sk,…,sk)を、
 x=SK=sk+…+sk mod q
が成り立つように選択すれば、
 Dec(C,sk)=C-sk
なので、
 f(Dec(C,sk),…,Dec(C,sk))
 =C-sk+…+C-sk-(N-1)C
 =C-(sk+…+sk)C
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
が成り立つ。
(4)IDベース暗号
 IDベース暗号では、公開鍵PKを{PID,P,Q}、秘密鍵SKをSID、rを乱数とすると(ただし、SID=sPID、Q=sP、PIDはIDをハッシュ関数を用いて変換した位数qの楕円曲線上の点、Pは前記楕円曲線上の部分群の生成元、sはマスター秘密鍵、e(,)は前記楕円曲線上のペアリング)、平文Mと暗号文Cは、
 C={C,C}={rP,M・e(PID,rQ)}
 M=Dec(C,SID)=C・e(SID,C-1
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk mod q
 f(Dec(C,sk),…,Dec(C,sk))
 =Dec(C,sk)×…×Dec(C,sk)/(C^(N-1))
のように定め、分割秘密鍵の組(sk,…,sk)を、
 SID=SK=sk+…+sk mod q
が成り立つように選択すれば、
 Dec(C,sk)=C・e(sk,C-1
なので、
 f(Dec(C,sk),…,Dec(C,sk))
 =C・e(sk,C-1…C・e(sk,C-1/(C^(N-1))
 =C・e(sk+…+sk,C-1
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
          =f(Dec(C,sk),…,Dec(C,sk))
が成り立つ。
 図6に実施例2の秘密鍵分割保管システムの機能構成例を、図7に暗号文を平文に復号する処理フローを示す。分割秘密鍵を変更する処理フローの例は、図3~5と同じである。実施例2の秘密鍵分割保管システムは、ネットワーク900で接続された暗号化装置600、N個の分割保管装置200,…,200を備える。暗号化装置600は、公開鍵PKを用いて平文Mを暗号化し、暗号文Cを出力する。分割保管装置200は、公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skの中の分割秘密鍵skを記録する。
 ここで、Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Dec(C,sk),mn+1)はDec(C,sk)とmn+1を変数とする関数、^はべき乗を示す記号とし、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
の関係が成り立つとする。
 それぞれの分割保管装置200は、復号部210、分割秘密鍵変更部120、記録部190を備える。記録部190は、分割秘密鍵skを記録している。分割保管装置200の復号部210は、分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、分割平文mを分割保管装置200N-1に送る(S210)。
 分割保管装置200(ただし、n=2,…,N-1)の復号部210は、分割保管装置n+1から取得した分割平文mn+1と分割秘密鍵skを用いて、分割平文mをm=f(Dec(C,sk),mn+1)のように求める。そして、分割平文mを、分割保管装置200n-1に送る(S210)。ただし、N=2の場合は、分割保管装置200(ただし、n=2,…,N-1)は存在しない。
 分割保管装置200の復号部210は、分割保管装置200から取得した分割平文mと分割秘密鍵skを用いて、平文MをM=f(Dec(C,sk),m)のように求める(S210)。
 分割秘密鍵変更部120は、定期的に、または所定の条件に適合したときに、
 Dec(C,SK)=Dec(C,g(sk’,…,sk’))
 m=Dec(C,sk’)
 m=f(Dec(C,sk’),mn+1
 M=m
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する(S120)。例えば、
 SK=sk+…+sk
の関係が成り立てば
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
が成り立つように、関数g、fを決めた場合、
 sk’+…+sk’ = sk+…+sk
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。また、
SK=sk+…+sk mod q
の関係が成り立てば
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
が成り立つように、関数g、fを決めた場合、
 sk’+…+sk’ mod q = sk+…+sk mod q
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。これらの例の場合、組(sk’,…,sk’)に求められる条件は実施例1と同じなので、組(sk’,…,sk’)を変更するフローは、実施例1と同じである(図3~5)。
 よって、実施例2の秘密鍵分割保管システムでも、分割秘密鍵を変更する間隔内に、すべての分割保管装置から分割秘密鍵を盗まなければ秘密鍵SKが分からない。したがって、1個の装置から秘密鍵が漏洩するリスクに比べ、大幅に漏洩のリスクを低減できる。
 なお、以下のように運用すれば、秘密鍵SKを1個の装置で記録している既存の復号装置を、実施例2の分割保管装置200に移行することも可能である。既存の復号装置に分割秘密鍵変更部120を追加し、記録部190,…,190N-1にsk=…=skN-1=0を記録した分割保管装置200,…,200N-1をネットワーク900につなぐ。このように構成すれば、初期状態がsk=SK,sk=…=skN-1=0となる。そして、最初の分割秘密鍵の組(sk,…,sk)の変更によって、秘密鍵を分割すれば、実施例2の秘密鍵分割保管システムを構成できる。したがって、実施例2の秘密鍵分割保管システムであれば、既存のシステムからも容易に移行できる。
<適用できる暗号方式の具体例>
 実施例2の秘密鍵分割保管システムを実現するためには、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
の関係が成り立たなければならない。ここでは、この関係が成り立つ暗号方式を紹介する。ただし、上記の関係が成り立てば、これらの暗号方式に限定するものではない。
(1)RSA暗号
 RSA暗号では、qを2つの大きい素数の合成数(積)とし、公開鍵PKを{q,e}、秘密鍵SKをdとすると、平文Mと暗号文Cは、
 C=M^e mod q
 M=Dec(C,d)=C^d mod q
の関係が成り立つ。そこで、関数g、fを、
 g(sk,…,sk)=sk+…+sk
 f(Dec(C,sk),mn+1
 =Dec(C,sk)×mn+1 mod q
のように定め、分割秘密鍵の組(sk,…,sk)を、
 d=SK=sk+…+sk
が成り立つように選択すれば、
 m=Dec(C,sk)=C^sk mod q
なので、
 mN-1=f(Dec(C,skN-1),m
 =C^(skN-1+sk) mod q
となる。そして、これが繰り返されるので、
 m=f(Dec(C,sk),mn+1
 =C^(sk+・・・+sk) mod q
となり、
 m=C^(sk+・・・+sk) mod q
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
が成り立つ。
(2)ElGamal暗号
 ElGamal暗号では、公開鍵PKを{g,h}、秘密鍵SKをx、rを乱数とすると(ただし、h=g^x、xとrは0以上q-1以下の整数、qは巡回群Gの位数、gは巡回群Gの生成元)、巡回群Gの要素である平文Mと暗号文Cは、
 C={C,C}={g^r,Mh^r}
 M=Dec(C,x)=C/(C^x)
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk mod q
 f(Dec(C,sk),mn+1
 =(Dec(C,sk)×mn+1)/C
のように定め、分割秘密鍵の組(sk,…,sk)を、
 x=SK=sk+…+sk mod q
が成り立つように選択すれば、
 m=Dec(C,sk)=C/(C^sk) mod q
なので、
 mN-1=f(Dec(C,skN-1),m
 =(Dec(C,skN-1)×m)/C
 =(C/(C^skN-1)・C/(C^sk))/C
 =C/((C^skN-1)(C^sk))
 =C/(C^(skN-1+sk))
となる。そして、これが繰り返されるので、
 m=f(Dec(C,sk),mn+1
 =C/(C^(sk+・・・+sk))
となり、
 m=C/(C^(sk+・・・+sk))
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
が成り立つ。
(3)楕円ElGamal暗号
 楕円ElGamal暗号では、公開鍵PKを{G,H}、秘密鍵SKをx、rを乱数とすると(ただし、H=xG、xは1以上q-1以下の整数、rは0以上q-1以下の整数、qは楕円曲線上のベースポイントGの位数)、平文Mと暗号文Cは、
 C={C,C}={rG,M+rH}
 M=Dec(C,x)=C-xC
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk mod q
 f(Dec(C,sk),mn+1
 =Dec(C,sk)+mn+1-C
のように定め、分割秘密鍵の組(sk,…,sk)を、
 x=SK=sk+…+sk mod q
が成り立つように選択すれば、
 m=Dec(C,sk)=C-sk
なので、
 mN-1=f(Dec(C,skN-1),m
 =Dec(C,skN-1)+m-C
 =C-skN-1+C-sk-C
 =C-skN-1-sk
 =C-(skN-1+sk)C
となる。そして、これが繰り返されるので、
 m=f(Dec(C,sk),mn+1
 =C-(sk+・・・+sk)C
となり、
 m=C-(sk+・・・+sk)C
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
が成り立つ。
(4)IDベース暗号
 IDベース暗号では、公開鍵PKを{PID,P,Q}、秘密鍵SKをSID、rを乱数とすると(ただし、SID=sPID、Q=sP、PIDはIDをハッシュ関数を用いて変換した位数qの楕円曲線上の点、Pは前記楕円曲線上の部分群の生成元、sはマスター秘密鍵、e(,)は前記楕円曲線上のペアリング)、平文Mと暗号文Cは、
 C={C,C}={rP,M・e(PID,rQ)}
 M=Dec(C,SID)=C・e(SID,C-1
の関係が成り立つ。関数g、fを、
 g(sk,…,sk)=sk+…+sk mod q
 f(Dec(C,sk),mn+1
 =(Dec(C,sk)×mn+1)/C
のように定め、分割秘密鍵の組(sk,…,sk)を、
 SID=SK=sk+…+sk mod q
が成り立つように選択すれば、
 m=Dec(C,sk)=C・e(sk,C-1
なので、
 mN-1=f(Dec(C,skN-1),m
 =(Dec(C,skN-1)×m)/C
 =(C・e(skN-1,C-1・C・e(sk,C-1)/C
 =C・e(skN-1,C-1e(sk,C-1
 =C・e(skN-1+sk,C-1
となる。そして、これが繰り返されるので、
 m=f(Dec(C,sk),mn+1
 =C・e(sk+・・・+sk,C-1
となり、
 m=C・e(sk+・・・+sk,C-1
 =M
となる。したがって、
 Dec(C,SK)=Dec(C,g(sk,…,sk))
 m=Dec(C,sk
 m=f(Dec(C,sk),mn+1
 M=m
が成り立つ。
 図8に実施例3の秘密鍵分割保管システムの機能構成例を、図9に署名を生成する処理フローを示す。分割秘密鍵を変更する処理フローは図3~5と同じである。実施例3の秘密鍵分割保管システムは、ネットワーク900で接続された署名検証装置700、N個の分割保管装置300,…,300、統合手段330を備える。署名検証装置700は、作成された署名Σの正当性を検証する装置である。分割保管装置300は、公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skの中の分割秘密鍵skを記録する。統合手段330は、平文Mに対する署名Σを求める。図8では、統合手段330は点線で色々な場所に示している。このように、統合手段330は独立した1つの装置でもよいし、いずれかの分割保管装置300の内部に備えられていてもよい。また、色々な装置が統合手段330を備えておき、署名の処理フローごとにどの統合手段330を用いるのかを選択してもよい。
 ここで、Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(σ,…,σ)はσ,…,σを変数とする関数、^はべき乗を示す記号とし、
 Sig(M,SK)=Sig(M,g(sk,…,sk))
          =f(Sig(M,sk),…,Sig(C,sk))
の関係が成り立つとする。
 それぞれの分割保管装置300は、生成部310、分割秘密鍵変更部120、記録部190を備える。記録部190は、分割秘密鍵skを記録している。生成部310は、分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、統合手段330に分割署名σを送る(S310)。統合手段は、署名ΣをΣ=f(σ,…,σ)のように求める(S330)。
 分割秘密鍵変更部120は、定期的に、または所定の条件に適合したときに、
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
          =f(Sig(M,sk’),…,Sig(C,sk’))
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する(S120)。例えば、
 SK=sk+…+sk
の関係が成り立てば
 Sig(M,SK)=Sig(M,g(sk,…,sk))
          =f(Sig(M,sk),…,Sig(C,sk))
が成り立つように、関数g、fを決めた場合、
 sk’+…+sk’ = sk+…+sk
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。また、
 SK=sk+…+sk mod q
の関係が成り立てば
 Sig(M,SK)=Sig(M,g(sk,…,sk))
          =f(Sig(M,sk),…,Sig(C,sk))
が成り立つように、関数g、fを決めた場合、
 sk’+…+sk’ mod q = sk+…+sk mod q
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。これらの例の場合、組(sk’,…,sk’)に求められる条件は実施例1と同じなので、組(sk’,…,sk’)を変更するフローは、実施例1と同じである(図3~5)。
 よって、実施例3の秘密鍵分割保管システムでも、分割秘密鍵を変更する間隔内に、すべての分割保管装置から分割秘密鍵を盗まなければ秘密鍵SKが分からない。したがって、1個の装置から秘密鍵が漏洩するリスクに比べ、大幅に漏洩のリスクを低減できる。
 なお、以下のように運用すれば、秘密鍵SKを1個の装置で記録している既存の署名生成装置を、実施例3の分割保管装置300に移行することも可能である。既存の署名生成装置に分割秘密鍵変更部120を追加し、記録部190,…,190N-1にsk=…=skN-1=0を記録した分割保管装置300,…,300N-1をネットワーク900につなぐ。このように構成すれば、初期状態がsk=SK,sk=…=skN-1=0となる。そして、最初の分割秘密鍵の組(sk,…,sk)の変更によって、秘密鍵を分割すれば、実施例3の秘密鍵分割保管システムを構成できる。したがって、実施例3の秘密鍵分割保管システムであれば、既存のシステムからも容易に移行できる。
<適用できる署名方式の具体例>
 実施例3の秘密鍵分割保管システムを実現するためには、
 Sig(M,SK)=Sig(M,g(sk,…,sk))
          =f(Sig(M,sk),…,Sig(M,sk))
の関係が成り立たなければならない。例えば、RSA署名の場合は、qを2つの大きい素数の合成数(積)とし、公開鍵PKを{q,e}、秘密鍵SKをdとすると、平文Mと署名Σは、
 Σ=Sig(M,d)=M^d mod q  (署名生成)
 M=Σ^e mod q           (署名検証)
の関係が成り立つ。そこで、関数g、fを、
 g(sk,…,sk)=sk+…+sk
 f(Sig(M,sk),…,Sig(M,sk))
 =Sig(M,sk)×…×Sig(M,sk) mod q
のように定め、分割秘密鍵の組(sk,…,sk)を、
 d=SK=sk+…+sk
が成り立つように選択すれば、
 Sig(M,sk)=M^sk
なので、
 f(Sig(M,sk),…,Sig(M,sk))
 =M^(sk+…+sk) mod q
 =Σ
となる。したがって、
 Sig(M,SK)=Sig(M,g(sk,…,sk))
          =f(Sig(M,sk),…,Sig(M,sk))
が成り立つ。ただし、この説明は本実施例を実現する署名方式を限定するものではない。上記の条件を満足すれば別の署名方式でもよい。
 図10に実施例4の秘密鍵分割保管システムの機能構成例を、図11に署名を生成する処理フローを示す。分割秘密鍵を変更する処理フローの例は、図3~5と同じである。実施例4の秘密鍵分割保管システムは、ネットワーク900で接続された署名検証装置700、N個の分割保管装置400,…,400を備える。署名検証装置700は、作成された署名Σの正当性を検証する装置である。分割保管装置400は、公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skの中の分割秘密鍵skを記録する。
 ここで、Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Sig(M,sk),σn+1)はSig(M,sk),σn+1を変数とする関数、^はべき乗を示す記号とし、
 Sig(M,SK)=Sig(M,g(sk,…,sk))
 σ=Sig(M,sk
 σ=f(Sig(M,sk),σn+1
 Σ=σ
の関係が成り立つとする。
 それぞれの分割保管装置400は、生成部410、分割秘密鍵変更部120、記録部190を備える。記録部190は、分割秘密鍵skを記録している。分割保管装置400の生成部410は、分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、分割署名σを、分割保管装置400N-1に送る(S410)。
 分割保管装置400(ただし、n=2,…,N-1)の生成部410は、分割保管装置400n+1から取得した分割署名σn+1と分割秘密鍵skを用いて、分割署名σをσ=f(Sig(M,sk),σn+1)のように求める。そして、分割署名σを、分割保管装置400n-1に送る(S410)。ただし、N=2の場合は、分割保管装置400(n=2,…,N-1)は存在しない。分割保管装置400は、分割保管装置400から取得した分割署名σと分割秘密鍵skを用いて署名ΣをΣ=f(Sig(M,sk),σ)のように求める(S410)。
 分割秘密鍵変更部120は、定期的に、または所定の条件に適合したときに、
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
 σ=Sig(M,sk’)
 σ=f(Sig(M,sk’),σn+1
 Σ=σ
が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する(S120)。例えば、
 SK=sk+…+sk mod q
の関係が成り立てば
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
 σ=Sig(M,sk
 σ=f(Sig(M,sk),σn+1
 Σ=σ
が成り立つように、関数g、fを決めた場合、
 sk’+…+sk’  mod q = sk+…+sk mod q
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。また、
 SK=sk+…+sk mod q
の関係が成り立てば
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
 σ=Sig(M,sk
 σ=f(Sig(M,sk),σn+1
 Σ=σ
が成り立つように、関数g、fを決めた場合、
 sk’+…+sk’  mod q = sk+…+sk mod q
となる分割秘密鍵の組(sk’,…,sk’)を求めればよい。これらの例の場合、組(sk’,…,sk’)に求められる条件は実施例1と同じなので、組(sk’,…,sk’)を変更するフローは、実施例1と同じである(図3~5)。
 よって、実施例4の秘密鍵分割保管システムでも、分割秘密鍵を変更する間隔内に、すべての分割保管装置から分割秘密鍵を盗まなければ秘密鍵SKが分からない。したがって、1個の装置から秘密鍵が漏洩するリスクに比べ、大幅に漏洩のリスクを低減できる。
 なお、以下のように運用すれば、秘密鍵SKを1個の装置で記録している既存の署名生成装置を、実施例4の分割保管装置400に移行することも可能である。既存の署名生成装置に分割秘密鍵変更部120を追加し、記録部190,…,190N-1にsk=…=skN-1=0を記録した分割保管装置400,…,400N-1をネットワーク900につなぐ。このように構成すれば、初期状態がsk=SK,sk=…=skN-1=0となる。そして、最初の分割秘密鍵の組(sk,…,sk)の変更によって、秘密鍵を分割すれば、実施例4の秘密鍵分割保管システムを構成できる。したがって、実施例4の秘密鍵分割保管システムであれば、既存のシステムからも容易に移行できる。
<適用できる署名方式の具体例>
 実施例4の秘密鍵分割保管システムを実現するためには、
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
 σ=f(Sig(M,sk’),σn+1
の関係が成り立たなければならない。例えば、RSA署名の場合は、qを2つの大きい素数の合成数(積)とし、公開鍵PKを{q,e}、秘密鍵SKをdとすると、平文Mと署名Σは、
 Σ=Sig(M,d)=M^d mod q  (署名生成)
 M=Σ^e mod q           (署名検証)
の関係が成り立つ。そこで、関数g、fを、
 g(sk,…,sk)=sk+…+sk
 f(Sin(M,sk),mn+1
 =(Sin(M,sk)×mn+1 mod q
のように定め、分割秘密鍵の組(sk,…,sk)を、
 d=SK=sk+…+sk
が成り立つように選択すれば、
 σ=Sig(M,sk)=M^sk mod q
なので、
 σN-1=f(Sig(M,sk),σn+1
 =M^(skN-1+sk) mod q
 =Σ
となる。したがって、
 σ=f(Sig(M,sk),σn+1
 =M^(sk+・・・+sk) mod q
となり、
 m=M^(sk+・・・+sk) mod q
 =Σ
となる。したがって、
 Sig(M,SK)=Sig(M,g(sk’,…,sk’))
 σ=Sig(M,sk
 σ=f(Sig(M,sk’),σn+1
 Σ=σ
が成り立つ。ただし、この説明は本実施例を実現する署名方式を限定するものではない。上記の条件を満足すれば別の署名方式でもよい。
[プログラム、記録媒体]
 上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
 また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
100,200,300,400 分割保管装置
110,210 復号部        120 分割秘密鍵変更部
130,330 統合手段       190 記録部
310,410 生成部        600 暗号化装置
700 署名検証装置         900 ネットワーク

Claims (14)

  1.  公開鍵PKを用いて平文Mを暗号化し、暗号文Cを出力する暗号化装置と、
     前記公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置と、
     暗号文Cを復号した平文Mを求める統合手段と、
     を備えた秘密鍵分割保管システムであって、
     Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(m,…,m)はm,…,mを変数とする関数とし、
     Dec(C,SK)=Dec(C,g(sk,…,sk))
              =f(Dec(C,sk),…,Dec(C,sk))
    の関係が成り立ち、
     すべての前記分割保管装置は、
     それぞれが記録する分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、前記統合手段に分割平文mを送る復号部と、
     Dec(C,SK)=Dec(C,g(sk’,…,sk’))
              =f(Dec(C,sk’),…,Dec(C,sk’))
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部と
     を備え、
     前記統合手段は、平文MをM=f(m,…,m)のように求める
     ことを特徴とする秘密鍵分割保管システム。
  2.  公開鍵PKを用いて平文Mを暗号化し、暗号文Cを出力する暗号化装置と、
     前記公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置と、
     を備えた秘密鍵分割保管システムであって、
     Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Dec(C,sk),mn+1)はDec(C,sk),mn+1を変数とする関数とし、
     Dec(C,SK)=Dec(C,g(sk,…,sk))
     m=Dec(C,sk
     m=f(Dec(C,sk),mn+1
     M=m
    の関係が成り立ち、
     分割秘密鍵skを記録する前記分割保管装置は、分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、分割平文mを、分割秘密鍵skN-1を記録する前記分割保管装置に送る復号部を備え、
     分割秘密鍵skを記録する前記分割保管装置は、分割秘密鍵skを記録する前記分割保管装置から取得した分割平文mと分割秘密鍵skを用いて平文MをM=f(Dec(C,sk),m)のように求める復号部を備え、
     Nが3以上の場合は、分割秘密鍵sk(ただし、nは2,…,N-1のいずれか)を記録する前記分割保管装置は、分割秘密鍵skn+1を記録する前記分割保管装置から取得した分割平文mn+1と分割秘密鍵skを用いて分割平文mをm=f(Dec(C,sk),mn+1)のように求め、分割平文mを、分割秘密鍵skn-1を記録する前記分割保管装置に送る復号部を備え、
     すべての前記分割保管装置は、さらに、Dec(C,SK)=Dec(C,g(sk’,…,sk’))
     m=Dec(C,sk’)
     m=f(Dec(C,sk’),mn+1
     M=m
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部も備える
     ことを特徴とする秘密鍵分割保管システム。
  3.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置と、
     平文Mに対する署名Σを求める統合手段と、
     を備えた秘密鍵分割保管システムであって、
     Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(σ,…,σ)はσ,…,σを変数とする関数とし、
     Sig(M,SK)=Sig(M,g(sk,…,sk))
              =f(Sig(M,sk),…,Sig(C,sk))
    の関係が成り立ち、
     すべての前記分割保管装置は、
     それぞれが記録する分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、前記統合手段に分割署名σを送る生成部と、
     Sig(M,SK)=Sig(M,g(sk’,…,sk’))
              =f(Sig(M,sk’),…,Sig(C,sk’))
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部と
     を備え、
     前記統合手段は、署名ΣをΣ=f(σ,…,σ)のように求める
     ことを特徴とする秘密鍵分割保管システム。
  4.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を備え、平文Mに対する署名を生成する秘密鍵分割保管システムであって、
     Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Sig(M,sk),σn+1)はSig(M,sk),σn+1を変数とする関数とし、
     Sig(M,SK)=Sig(M,g(sk,…,sk))
     σ=Sig(M,sk
     σ=f(Sig(M,sk),σn+1
     Σ=σ
    の関係が成り立ち、
     分割秘密鍵skを記録する前記分割保管装置は、分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、分割署名σを、分割秘密鍵skN-1を記録する前記分割保管装置に送る生成部を備え、
     分割秘密鍵skを記録する前記分割保管装置は、分割秘密鍵skを記録する前記分割保管装置から取得した分割署名σと分割秘密鍵skを用いて署名ΣをΣ=f(Sig(M,sk),σ)のように求める生成部を備え、
     Nが3以上の場合は、分割秘密鍵sk(ただし、nは2,…,N-1のいずれか)を記録する前記分割保管装置は、分割秘密鍵skn+1を記録する前記分割保管装置から取得した分割署名σn+1と分割秘密鍵skを用いて分割署名σをσ=f(Sig(M,sk),σn+1)のように求め、分割署名σを、分割秘密鍵skn-1を記録する前記分割保管装置に送る生成部を備え、
     すべての前記分割保管装置は、さらに、
     Sig(M,SK)=Sig(M,g(sk’,…,sk’))
     σ=Sig(M,sk’)
     σ=f(Sig(M,sk’),σn+1
     Σ=σ
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部も備える
     ことを特徴とする秘密鍵分割保管システム。
  5.  請求項1から4のいずれかに記載の秘密鍵分割保管システムであって、
     iとjは1以上N以下のi≠jの整数とし、
     前記分割秘密鍵変更部は、いずれか2つの分割保管装置の間で認証鍵交換プロトコルを用いて値αを共有し、
     前記値αを共有する分割保管装置が記録する分割秘密鍵sk,skを、αを用いてそれぞれ、sk’,sk’に変更する
     ことを特徴とする秘密鍵分割保管システム。
  6.  請求項1から5のいずれかに記載の秘密鍵分割保管システムであって、
     初期状態がsk=SK,sk=…=skN-1=0であり、
     最初の分割秘密鍵の組(sk,…,sk)の変更によって、秘密鍵を分割する
     ことを特徴とする秘密鍵分割保管システム。
  7.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を備えた秘密鍵分割保管システムの中の1つの分割保管装置であって、
     Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(m,…,m)はm,…,mを変数とする関数とし、
     Dec(C,SK)=Dec(C,g(sk,…,sk))
              =f(Dec(C,sk),…,Dec(C,sk))
    の関係が成り立ち、
     当該分割保管装置が記録する分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、前記統合手段に分割平文mを送る復号部と、
     Dec(C,SK)=Dec(C,g(sk’,…,sk’))
              =f(Dec(C,sk’),…,Dec(C,sk’))
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)となるように分割秘密鍵skをsk’に変更する分割秘密鍵変更部と
     を備える
     ことを特徴とする分割保管装置。
  8.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を備えた秘密鍵分割保管システムの中の1つの分割保管装置であって、
     Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Dec(C,sk),mn+1)はDec(C,sk),mn+1を変数とする関数とし、
     Dec(C,SK)=Dec(C,g(sk,…,sk))
     m=Dec(C,sk
     m=f(Dec(C,sk),mn+1
     M=m
    の関係が成り立ち、
     分割秘密鍵skを記録する場合は、分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、分割平文mを、分割秘密鍵skN-1を記録する前記分割保管装置に送り、
     分割秘密鍵skを記録する場合は、分割秘密鍵skを記録する前記分割保管装置から取得した分割平文mと分割秘密鍵skを用いて平文MをM=f(Dec(C,sk),m)のように求める復号部と、
     Nが3以上であって分割秘密鍵sk(ただし、nは2,…,N-1のいずれか)を記録する場合は、分割秘密鍵skn+1を記録する前記分割保管装置から取得した分割平文mn+1と分割秘密鍵skを用いて分割平文mをm=f(Dec(C,sk),mn+1)のように求め、分割平文mを、分割秘密鍵skn-1を記録する前記分割保管装置に送り、
     分割秘密鍵の組を
     Dec(C,SK)=Dec(C,g(sk’,…,sk’))
     m=Dec(C,sk’)
     m=f(Dec(C,sk’),mn+1
     M=m
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)となるように分割秘密鍵skをsk’に変更する分割秘密鍵変更部と
     を備える
     ことを特徴とする分割保管装置。
  9.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を備えた秘密鍵分割保管システムの中の1つの分割保管装置であって、
     Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(σ,…,σ)はσ,…,σを変数とする関数とし、
     Sig(M,SK)=Sig(M,g(sk,…,sk))
              =f(Sig(M,sk),…,Sig(C,sk))
    の関係が成り立ち、
     当該分割保管装置が記録する分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、前記統合手段に分割署名σを送る生成部と、
     Sig(M,SK)=Sig(M,g(sk’,…,sk’))
              =f(Sig(M,sk’),…,Sig(C,sk’))
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更部と
     を備える
     ことを特徴とする分割保管装置。
  10.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を備えた秘密鍵分割保管システムの中の1つの分割保管装置であって、
     Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Sig(M,sk),σn+1)はSig(M,sk),σn+1を変数とする関数とし、
     Sig(M,SK)=Sig(M,g(sk,…,sk))
     σ=Sig(M,sk
     σ=f(Sig(M,sk),σn+1
     Σ=σ
    の関係が成り立ち、
     分割秘密鍵skを記録する場合は、分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、分割署名σを、分割秘密鍵skN-1を記録する前記分割保管装置に送り、
     分割秘密鍵skを記録する場合は、分割秘密鍵skを記録する前記分割保管装置から取得した分割署名σと分割秘密鍵skを用いて署名ΣをΣ=f(Sig(M,sk),σ)のように求める生成部と、
     Nが3以上であって分割秘密鍵sk(ただし、nは2,…,N-1のいずれか)を記録する場合は、分割秘密鍵skn+1を記録する前記分割保管装置から取得した分割署名σn+1と分割秘密鍵skを用いて分割署名σをσ=f(Sig(M,sk),σn+1)のように求め、分割署名σを、分割秘密鍵skn-1を記録する前記分割保管装置に送り、
     分割秘密鍵の組を
     Sig(M,SK)=Sig(M,g(sk’,…,sk’))
     σ=Sig(M,sk’)
     σ=f(Sig(M,sk’),σn+1
     Σ=σ
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)となるように分割秘密鍵skをsk’に変更する分割秘密鍵変更部と
     を備える
     ことを特徴とする分割保管装置。
  11.  公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置と、
     暗号文Cを復号した平文Mを求める統合手段と、
     を用いた秘密鍵分割保管方法であって、
     Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(m,…,m)はm,…,mを変数とする関数とし、
     Dec(C,SK)=Dec(C,g(sk,…,sk))
              =f(Dec(C,sk),…,Dec(C,sk))
    の関係が成り立ち、
     すべての前記分割保管装置が、それぞれが記録する分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、前記統合手段に分割平文mを送る復号ステップと、
     前記統合手段が、平文MをM=f(m,…,m)のように求める統合ステップと、
     前記分割保管装置が、
     Dec(C,SK)=Dec(C,g(sk’,…,sk’))
              =f(Dec(C,sk’),…,Dec(C,sk’))
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更ステップと
     を有する秘密鍵分割保管方法。
  12.  公開鍵PKに対応する秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を用いた秘密鍵分割保管方法であって、
     Nは2以上の整数、nは1以上N以下の整数、Dec(C,SK)は秘密鍵SKを用いて暗号文Cを復号することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Dec(C,sk),mn+1)はDec(C,sk),mn+1を変数とする関数とし、
     Dec(C,SK)=Dec(C,g(sk,…,sk))
     m=Dec(C,sk
     m=f(Dec(C,sk),mn+1
     M=m
    の関係が成り立ち、
     分割秘密鍵skを記録する前記分割保管装置が、分割秘密鍵skを用いて分割平文mをm=Dec(C,sk)のように求め、分割平文mを、分割秘密鍵skN-1を記録する前記分割保管装置に送る第N復号ステップと、
     Nが3以上の場合は、分割秘密鍵sk(ただし、nは2,…,N-1のいずれか)を記録する前記分割保管装置が、分割秘密鍵skn+1を記録する前記分割保管装置から取得した分割平文mn+1と分割秘密鍵skを用いて分割平文mをm=f(Dec(C,sk),mn+1)のように求め、分割平文mを、分割秘密鍵skn-1を記録する前記分割保管装置に送る第n復号ステップと、
     分割秘密鍵skを記録する前記分割保管装置が、分割秘密鍵skを記録する前記分割保管装置から取得した分割平文mと分割秘密鍵skを用いて平文MをM=f(Dec(C,sk),m)のように求める第1復号ステップと、
     すべての前記分割保管装置が、
     Dec(C,SK)=Dec(C,g(sk’,…,sk’))
     m=Dec(C,sk’)
     m=f(Dec(C,sk’),mn+1
     M=m
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更ステップと
     を有する秘密鍵分割保管方法。
  13.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置と、
     平文Mに対する署名Σを求める統合手段と、
     を用いた秘密鍵分割保管方法であって、
     Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(σ,…,σ)はσ,…,σを変数とする関数とし、
     Sig(M,SK)=Sig(M,g(sk,…,sk))
              =f(Sig(M,sk),…,Sig(C,sk))
    の関係が成り立ち、
     すべての前記分割保管装置が、それぞれが記録する分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、前記統合手段に分割署名σを送る生成ステップと、
     前記統合手段が、署名ΣをΣ=f(σ,…,σ)のように求める統合ステップと、
     前記分割保管装置が、
     Sig(M,SK)=Sig(M,g(sk’,…,sk’))
              =f(Sig(M,sk’),…,Sig(C,sk’))
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更ステップと
     を有する秘密鍵分割保管方法。
  14.  秘密鍵SKを分割した分割秘密鍵sk,…,skのいずれか1つをそれぞれが記録するN個の分割保管装置を用いて平文Mに対する署名を生成する秘密鍵分割保管方法であって、
     Nは2以上の整数、nは1以上N以下の整数、Sig(M,SK)は秘密鍵SKを用いて署名Σを生成することを示す記号、g(sk,…,sk)はsk,…,skを変数とする関数、f(Sig(M,sk),σn+1)はSig(M,sk),σn+1を変数とする関数とし、
     Sig(M,SK)=Sig(M,g(sk,…,sk))
     σ=Sig(M,sk
     σ=f(Sig(M,sk),σn+1
     Σ=σ
    の関係が成り立ち、
     分割秘密鍵skを記録する前記分割保管装置が、分割秘密鍵skを用いて分割署名σをσ=Sig(M,sk)のように求め、分割署名σを、分割秘密鍵skN-1を記録する前記分割保管装置に送る第N生成ステップと、
     Nが3以上の場合は、分割秘密鍵sk(ただし、nは2,…,N-1のいずれか)を記録する前記分割保管装置が、分割秘密鍵skn+1を記録する前記分割保管装置から取得した分割署名σn+1と分割秘密鍵skを用いて分割署名σをσ=f(Sig(M,sk),σn+1)のように求め、分割署名σを、分割秘密鍵skn-1を記録する前記分割保管装置に送る第n生成ステップと、
     分割秘密鍵skを記録する前記分割保管装置が、分割秘密鍵skを記録する前記分割保管装置から取得した分割署名σと分割秘密鍵skを用いて署名ΣをΣ=f(Sig(M,sk),σ)のように求める第1生成ステップと、
     すべての前記分割保管装置が、
     Sig(M,SK)=Sig(M,g(sk’,…,sk’))
     σ=Sig(M,sk’)
     σ=f(Sig(M,sk’),σn+1
     Σ=σ
    が成り立ち、かつ(sk,…,sk)とは異なる分割秘密鍵の組(sk’,…,sk’)を求め、それぞれが記録する分割秘密鍵skをsk’に変更する分割秘密鍵変更ステップと
     を有する秘密鍵分割保管方法。
PCT/JP2014/050652 2013-01-17 2014-01-16 秘密鍵分割保管システム、分割保管装置、秘密鍵分割保管方法 WO2014112551A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP14740768.8A EP2947812B1 (en) 2013-01-17 2014-01-16 Segmented secret-key storage system, segment storage apparatus segmented secret-key storage method
JP2014557492A JP6059258B2 (ja) 2013-01-17 2014-01-16 分割保管装置、秘密鍵分割保管方法
CN201480005193.8A CN104919752B (zh) 2013-01-17 2014-01-16 分割保管装置、秘密密钥分割保管方法
US14/760,935 US9894056B2 (en) 2013-01-17 2014-01-16 Segmented secret-key storage system, segment storage apparatus, segmented secret-key storage method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013006648 2013-01-17
JP2013-006648 2013-01-17

Publications (1)

Publication Number Publication Date
WO2014112551A1 true WO2014112551A1 (ja) 2014-07-24

Family

ID=51209640

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/050652 WO2014112551A1 (ja) 2013-01-17 2014-01-16 秘密鍵分割保管システム、分割保管装置、秘密鍵分割保管方法

Country Status (5)

Country Link
US (1) US9894056B2 (ja)
EP (1) EP2947812B1 (ja)
JP (1) JP6059258B2 (ja)
CN (1) CN104919752B (ja)
WO (1) WO2014112551A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018029268A (ja) * 2016-08-18 2018-02-22 三菱電機株式会社 暗号システム、暗号装置、暗号プログラム及び暗号方法
JP2019507559A (ja) * 2016-03-03 2019-03-14 アリババ グループ ホウルディング リミテッド 共同アカウントのための承認方法及びデバイス並びに共同アカウントのための認証方法及びデバイス
CN109934585A (zh) * 2019-03-08 2019-06-25 矩阵元技术(深圳)有限公司 一种基于安全多方计算的签名方法、装置及系统
JP7084525B1 (ja) 2021-03-24 2022-06-14 三菱電機インフォメーションシステムズ株式会社 組織署名鍵共有装置、組織署名鍵共有システム、組織署名鍵共有プログラム及び方法
JP2022138460A (ja) * 2021-03-10 2022-09-26 三菱電機インフォメーションシステムズ株式会社 組織署名システム、組織署名サーバおよび組織署名クライアント端末
WO2023188218A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 署名制御方法、署名制御プログラム、情報処理装置、およびシステム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10396984B2 (en) * 2014-05-02 2019-08-27 Barclays Services Limited Apparatus and system having multi-party cryptographic authentication
US9768953B2 (en) * 2015-09-30 2017-09-19 Pure Storage, Inc. Resharing of a split secret
EP3437248A4 (en) * 2016-03-30 2019-11-06 The Athena Group, Inc. KEY UPDATE FOR KEY MASTERS
JP6541048B2 (ja) * 2016-07-06 2019-07-10 日本電信電話株式会社 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム
US11431494B2 (en) 2018-03-15 2022-08-30 Atakama LLC Passwordless security system for data-at-rest
CN109274503B (zh) * 2018-11-05 2022-01-04 北京仁信证科技有限公司 分布式协同签名方法及分布式协同签名装置、软盾系统
JP6838260B2 (ja) * 2018-11-14 2021-03-03 カウリー株式会社 ブロックチェーン制御方法
CN110768790A (zh) * 2019-09-06 2020-02-07 深圳壹账通智能科技有限公司 数据安全授权访问方法、装置、设备及存储介质
US11296879B2 (en) 2019-10-04 2022-04-05 Atakama LLC Encrypted search
US11323252B2 (en) 2019-10-11 2022-05-03 Atakama LLC Relay network for encryption system
US11418340B2 (en) 2019-10-11 2022-08-16 Atakama LLC Waterfall request for decryption
CN110650160B (zh) * 2019-10-29 2022-01-04 北京天威诚信电子商务服务有限公司 一种身份认证方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001166687A (ja) * 1999-09-29 2001-06-22 Hitachi Software Eng Co Ltd グループ署名生成方法及びシステム
JP2001189719A (ja) * 1999-12-28 2001-07-10 Nippon Telegr & Teleph Corp <Ntt> 暗号鍵分散生成方法および装置と暗号鍵分散生成プログラムを記録した記録媒体
JP2002091301A (ja) * 2000-09-19 2002-03-27 Ntt Data Corp 鍵情報分散装置、演算装置および署名検証装置
JP2004048479A (ja) * 2002-07-12 2004-02-12 Kddi Corp 共有化された暗号化情報の暗号鍵管理方法
JP2006352254A (ja) * 2005-06-13 2006-12-28 Oki Electric Ind Co Ltd 分散電子署名システム,分散電子署名計算装置
JP2012150287A (ja) 2011-01-19 2012-08-09 Nippon Telegr & Teleph Corp <Ntt> 暗号化システム、復号方法、鍵更新方法、鍵生成装置、受信装置、代理計算装置、プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE36918E (en) * 1992-04-20 2000-10-17 Certco Llc Fair cryptosystems and methods of use
JP4328748B2 (ja) * 2005-08-23 2009-09-09 株式会社エヌ・ティ・ティ・ドコモ 鍵更新方法、鍵隔離型暗号システム及び端末装置
US7826619B2 (en) * 2005-08-23 2010-11-02 Ntt Docomo, Inc. Key-updating method, encryption processing method, key-insulated cryptosystem and terminal device
JP4764447B2 (ja) * 2008-03-19 2011-09-07 株式会社東芝 グループ署名システム、装置及びプログラム
US8151333B2 (en) * 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US8892908B2 (en) * 2010-12-23 2014-11-18 Morega Systems Inc. Cryptography module for use with fragmented key and methods for use therewith

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001166687A (ja) * 1999-09-29 2001-06-22 Hitachi Software Eng Co Ltd グループ署名生成方法及びシステム
JP2001189719A (ja) * 1999-12-28 2001-07-10 Nippon Telegr & Teleph Corp <Ntt> 暗号鍵分散生成方法および装置と暗号鍵分散生成プログラムを記録した記録媒体
JP2002091301A (ja) * 2000-09-19 2002-03-27 Ntt Data Corp 鍵情報分散装置、演算装置および署名検証装置
JP2004048479A (ja) * 2002-07-12 2004-02-12 Kddi Corp 共有化された暗号化情報の暗号鍵管理方法
JP2006352254A (ja) * 2005-06-13 2006-12-28 Oki Electric Ind Co Ltd 分散電子署名システム,分散電子署名計算装置
JP2012150287A (ja) 2011-01-19 2012-08-09 Nippon Telegr & Teleph Corp <Ntt> 暗号化システム、復号方法、鍵更新方法、鍵生成装置、受信装置、代理計算装置、プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2947812A4

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019507559A (ja) * 2016-03-03 2019-03-14 アリババ グループ ホウルディング リミテッド 共同アカウントのための承認方法及びデバイス並びに共同アカウントのための認証方法及びデバイス
JP2018029268A (ja) * 2016-08-18 2018-02-22 三菱電機株式会社 暗号システム、暗号装置、暗号プログラム及び暗号方法
CN109934585A (zh) * 2019-03-08 2019-06-25 矩阵元技术(深圳)有限公司 一种基于安全多方计算的签名方法、装置及系统
JP2022138460A (ja) * 2021-03-10 2022-09-26 三菱電機インフォメーションシステムズ株式会社 組織署名システム、組織署名サーバおよび組織署名クライアント端末
JP7177874B2 (ja) 2021-03-10 2022-11-24 三菱電機インフォメーションシステムズ株式会社 組織署名システム、組織署名サーバおよび組織署名クライアント端末
JP7084525B1 (ja) 2021-03-24 2022-06-14 三菱電機インフォメーションシステムズ株式会社 組織署名鍵共有装置、組織署名鍵共有システム、組織署名鍵共有プログラム及び方法
JP2022148937A (ja) * 2021-03-24 2022-10-06 三菱電機インフォメーションシステムズ株式会社 組織署名鍵共有装置、組織署名鍵共有システム、組織署名鍵共有プログラム及び方法
WO2023188218A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 署名制御方法、署名制御プログラム、情報処理装置、およびシステム

Also Published As

Publication number Publication date
EP2947812A1 (en) 2015-11-25
CN104919752B (zh) 2018-04-27
US9894056B2 (en) 2018-02-13
EP2947812A4 (en) 2016-11-16
EP2947812B1 (en) 2018-03-14
JPWO2014112551A1 (ja) 2017-01-19
CN104919752A (zh) 2015-09-16
US20160028719A1 (en) 2016-01-28
JP6059258B2 (ja) 2017-01-11

Similar Documents

Publication Publication Date Title
JP6059258B2 (ja) 分割保管装置、秘密鍵分割保管方法
US10027481B2 (en) Management of cryptographic keys
EP2228942B1 (en) Securing communications sent by a first user to a second user
JP6363032B2 (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
JP5957095B2 (ja) 改ざん検知装置、改ざん検知方法、およびプログラム
US20120323981A1 (en) Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor
US20150043735A1 (en) Re-encrypted data verification program, re-encryption apparatus and re-encryption system
US20130259227A1 (en) Information processing device and computer program product
JP5972181B2 (ja) 改ざん検知装置、改ざん検知方法、およびプログラム
JP5079479B2 (ja) Idベース暗号システム、方法
JP6294882B2 (ja) 鍵保管装置、鍵保管方法、及びそのプログラム
JP5730805B2 (ja) 格子問題に基づく階層型内積暗号システム,格子問題に基づく階層型内積暗号方法,装置
JP5469618B2 (ja) 暗号化システム、復号方法、鍵更新方法、鍵生成装置、受信装置、代理計算装置、プログラム
CN105187213B (zh) 一种计算机信息安全的方法
JP2013172178A (ja) 署名鍵難読化システム、署名鍵難読化方法、難読化された署名鍵を用いた暗号化署名システム、難読化された署名鍵を用いた暗号化署名方法、装置とプログラム
WO2019220900A1 (ja) 暗号化システム、暗号化装置、復号装置、暗号化方法、復号方法、及びプログラム
US20170126399A1 (en) Encryption apparatus, storage system, decryption apparatus, encryption method, decryption method, and computer readable medium
CN109617876A (zh) 基于Http协议的数据加密、解密方法及系统
JP5752751B2 (ja) 復号システム、端末装置、署名システム、その方法、及びプログラム
Prasad et al. Implementing Preserved Access of Cloud Networking
JP5480763B2 (ja) 復号システム、汎用端末、高信頼端末、鍵生成装置、復号方法、プログラム
JP5118556B2 (ja) 鍵配送方法、鍵配送システム、クライアント装置、鍵サーバ装置、それらのプログラム
JP5480788B2 (ja) 公開鍵暗号システム、方法、暗号化装置、復号装置及びこれらのプログラム
Paterson Applied Cryptography Knowledge Area Version..
JP2005269587A (ja) 鍵共有システム、暗号システム、ファイル認証システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14740768

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014557492

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14760935

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2014740768

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE