WO2019049408A1 - 秘密情報復元可能値分散システムおよび方法 - Google Patents

秘密情報復元可能値分散システムおよび方法 Download PDF

Info

Publication number
WO2019049408A1
WO2019049408A1 PCT/JP2018/013207 JP2018013207W WO2019049408A1 WO 2019049408 A1 WO2019049408 A1 WO 2019049408A1 JP 2018013207 W JP2018013207 W JP 2018013207W WO 2019049408 A1 WO2019049408 A1 WO 2019049408A1
Authority
WO
WIPO (PCT)
Prior art keywords
secret information
storage device
computer
recoverable
removable storage
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.)
Ceased
Application number
PCT/JP2018/013207
Other languages
English (en)
French (fr)
Inventor
野田 啓一
久美子 米元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Health Media Inc
Original Assignee
Health Media Inc
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 Health Media Inc filed Critical Health Media Inc
Priority to EP18854302.9A priority Critical patent/EP3681097A4/en
Priority to US16/492,875 priority patent/US20210144001A1/en
Priority to CN201880058014.5A priority patent/CN111066281A/zh
Priority to KR1020207006354A priority patent/KR20200035443A/ko
Publication of WO2019049408A1 publication Critical patent/WO2019049408A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/223Payment schemes or models based on the use of peer-to-peer networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus 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
    • 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
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/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
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • G06Q2220/10Usage protection of distributed data files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Definitions

  • the party paying the virtual currency (remittance source) generates a pair of public key and secret key.
  • the remittance source generates an address (account number) from the public key (a set of addresses becomes “a wallet”).
  • the remittance source signs remittance information (transaction history information such as bitcoin and address to be transmitted) using its own private key.
  • the remittance source broadcasts remittance information to the P2P network.
  • the party receiving the virtual currency (remittance destination) verifies the transaction with the public key included in the transaction and the signed remittance information to verify that the transaction is correct.
  • the user needs to use a computer terminal (such as a smartphone, a tablet computer, and a personal computer) connected to the P2P network.
  • a computer terminal such as a smartphone, a tablet computer, and a personal computer
  • a malicious third party may gain unauthorized access to the computer terminal. Therefore, the risk of the secret key leaking to a third party can not be completely eliminated.
  • Non-Patent Document 1 discloses Shamir's threshold method.
  • Shamir's threshold method n unique shares are generated based on secret information, and the unique shares are passed to n sharers. Then, the original secret information can be restored by using k (k ⁇ n) of the n shares. That is, even if the unique share is lost by the number of n ⁇ k, the secret information can be restored using the remaining k unique shares. This means that information can not be restored using k-1 shares. By using this technology, the share for recovering secret information can be distributed.
  • Patent Document 1 As an ultimate way to properly protect confidential information, for example, using the technology disclosed in Patent Document 1, write down the value of at least k shares on a paper or the like, and store the paper in a safe or the like How to do Since the share is to be stored using a paper medium, share information is not accessed through the network, and the possibility that k shares leak to a third party can be reduced. However, this method will increase the management load of the user's information.
  • a computer implemented method capable of reducing the management load of user information and / or appropriately protecting confidential information. Further, according to the present invention, there is provided a computer device capable of reducing a user's management load of information and / or capable of appropriately protecting secret information.
  • a computer device also includes a controller, and a memory coupled to the controller and storing computer executable instructions, the computer executable instructions being executed by the controller.
  • the method is configured to perform a method including storing in n physical storage devices and deleting the generated secret information.
  • the computer implemented method or computer device allows the user to properly protect the secret information without the need of information management with heavy load.
  • shares are distributed to a plurality of physical storage devices, even if one of the shares stored in a distributed manner leaks, secret information is protected as long as all k shares do not leak. can do.
  • a secret information recoverable value distribution system distributes secret information recoverable values (shares) by using Shamir's threshold method (secret sharing method) according to the prior art.
  • Shamir's threshold method defines k (the threshold), which is the number of shares that can recover secret information, and n (the number of shares), which is the number by which the shares are distributed.
  • the secret information recoverable value distribution system utilizes any other secret sharing method that can arbitrarily define a set that can or can not restore information. (See Non-Patent Document 2).
  • FIG. 1 shows a graph in which a curve passing through each coordinate is drawn, with the value of the share calculated as described above as the coordinate.
  • the curve shown in FIG. 1 passes through four coordinates corresponding to the values of four shares.
  • This curve represents the second degree polynomial of equation (1).
  • secret information can not be restored by using k-1 shares. That is, similar curves can not be drawn by passing arbitrary two coordinates among the four coordinates shown in FIG.
  • the secret information can be restored from the k share values by using polynomial interpolation.
  • the specific calculation formula is shown below.
  • y a 2 + b + c
  • k 3 sets of share values
  • k ⁇ (1, 4), (2, 3), (3 , 6) ⁇ is substituted.
  • equation (2) is substituted into equation (3) and equation (4), respectively.
  • a that is, the coefficient of the first term of the second-order polynomial shown in equation (1)
  • the secret information recoverable value distribution system generates n shares using any secret sharing method including the (k, n) threshold method described above, and generates k shares Use to recover secret information.
  • n any secret sharing method including the (k, n) threshold method described above
  • k Use to recover secret information.
  • the secret information recoverable value according to an embodiment of the present invention It should be noted that distributed systems can be applied.
  • a calculation formula used when generating n shares using the secret sharing method is referred to as a secret information recoverable value (share) generation formula.
  • a calculation formula used when recovering secret information using k shares among the generated n shares is referred to as a secret information recovery formula.
  • the secret information recoverable value distribution system according to an embodiment of the present invention uses the (k, n) threshold method
  • the share generation formula and the secret information restoration formula each use the calculation formula shown in Non-Patent Document 1 Ru.
  • a share generation formula and secret information corresponding to the secret sharing method A reconstruction formula is used respectively.
  • the secret information recoverable value distribution system according to the present embodiment is not used alone, and it is premised that there is a service (computer system) that uses the secret information recoverable value distribution system.
  • the computer system itself described above may implement the secret information recoverable value distribution system according to the present embodiment.
  • the secret information recoverable value distribution system when performing settlement (remittance) using virtual currency, the user (remittance source) generates a secret key, and uses the generated secret key to sign transaction history information of virtual currency. From this, the secret information recoverable value distribution system according to an embodiment of the present invention generates n shares based on the secret key generated in the payment system, and the secret key is generated based on k shares. Restore.
  • the secret information recoverable value distribution system includes the computer terminal 1 and the server computer 2 and these are the network 3 (a public network such as the Internet, P2P network in the present embodiment). Connected through.
  • the network 3 a public network such as the Internet, P2P network in the present embodiment.
  • the computer terminal 1 is a computer device that implements the secret information recoverable value distribution system according to an embodiment of the present invention.
  • the computer terminal 1 may be implemented by, for example, a smartphone, a tablet computer, and a personal computer.
  • the user generates n shares by inputting predetermined information using the computer terminal 1, and restores secret information using k shares of them.
  • the server computer 2 is a computer device that executes a function of providing a settlement service or the like using the secret information recoverable value distribution method according to an embodiment of the present invention.
  • the computer terminal 1 alone generates n shares and executes a process of recovering secret information.
  • the computer terminal 1 and the server computer 2 may be linked to implement the secret information recoverable value distribution system. In this case, in response to a request from the computer terminal 1, the server computer 2 generates n shares.
  • the computer terminal 1 includes a control device 11, a memory 12, a storage device 13, a communication device 14, an input device 15, an input driver 16, an output device 17, and an output driver 18.
  • the input device 15 may include a keyboard, a keypad, a touch screen, a touch pad, a microphone, an accelerometer, a gyroscope, a biological scanner, and the like.
  • the input device 15 receives an input by the user via the input driver 16 and communicates it with the control device 11.
  • the output device 17 may include a display, a speaker, a printer, and the like.
  • the output device 17 receives an output from the control device 11 via the output driver 18 and outputs it (visual output via display, audio output via speaker, etc.).
  • a process of generating a secret information recoverable value (share) performed by the secret information recoverable value distribution system will be described.
  • a secret key used in the settlement service described above is secret information
  • a share is generated based on the secret key
  • the share is distributed and stored.
  • the application program for providing the payment service and the secret information recoverable value distribution system are linked, and hereinafter, the application program for providing the payment service is referred to as a payment application.
  • the settlement service is performed by exchanging information between the computer terminal 1 and the server computer 2.
  • UUID for a file name is only an illustration, and it is not limited to such a format.
  • An arbitrary numerical value unique to each service linked to the secret information restorable value distribution system according to the present embodiment may be generated, and the numerical value may be used as the file name.
  • the generated share is deleted each time the secret information is restored.
  • a unique numerical value such as UUID used for the file name may be assigned a new numerical value each time secret information is restored, or may be assigned a new numerical value only when the share is lost or the like.
  • step S63 the control device 11 stores the three shares generated in step S62 in predetermined storage areas.
  • the predetermined storage area includes the removable storage device 19 described above. That is, n shares are separately stored in a plurality of independent physical storage devices (media).
  • the removable storage device 19 includes, for example, a USB memory and an SD card.
  • n- (k-1) shares are used in the secret information restorable value distribution system according to the present embodiment. That is, leakage of secret information can be prevented by preventing leakage of n- (k-1) shares.
  • n- (k-1) that is, 2) shares are stored in the removable storage device 19 which can be disconnected from the network 3, respectively. It is a preferable combination.
  • the removable storage device 19 is used in the computer terminal 1 before performing step S61 or step S62. It may be determined whether it is connected. This process can recognize whether the removable storage device 19 is connected, for example, by executing a device control API such as UsbDevice provided as standard in the Android operating system. . If the control device 11 determines that the removable storage device 19 is not connected to the computer terminal 1 by this processing, an error message may be notified to the user (via the output device 17). On the other hand, when the control device 11 determines that the removable storage device 19 is connected to the computer terminal 1, a message to that effect is notified to the user, and the process proceeds to the subsequent step S64.
  • a device control API such as UsbDevice provided as standard in the Android operating system.
  • share 1 is stored in the storage device 13
  • share 2 is stored in a network-connected external storage device such as NAS (Network Attached Storage) or SAN (Storage Area Network)
  • share 3 is USB. It indicates that it is stored in the memory.
  • This combination is inferior in security as compared with the combinations shown in Table 1 and Table 2 because k numbers of shares are normally stored in a storage device that is not disconnected from the network. Become.
  • the combination of storage devices in which the shares are distributed and stored may be predefined in the secret information recoverable value distribution system, or the user may set the combination at an arbitrary timing.
  • the number of shares and the number of thresholds may be predefined in the secret information recoverable value distribution system, or the user may set the number at any timing.
  • the secret information restoration processing described in the present embodiment is processing for restoring the secret information generated in the share generation processing described with reference to FIG. 6 in normal use. That is, this is an example of restoring a secret key or the like used for signing virtual currency transaction history information in remittance of virtual currency in the settlement service described above without leaking or losing even one share.
  • the first is restoration processing in the above-described normal use.
  • the second is restoration processing at the time of leakage of shares, loss or replacement of computer terminals, and the like.
  • These two types of restoration processing can be selected on a menu screen (not shown) displayed on the output device 17 (display or the like) of the computer terminal 1 (the former type is “normal restoration mode”, the latter Type "recovery mode”).
  • the recovery mode is not intended to recover secret information, but is a mode intended to regenerate a share.
  • step S71 it may be determined whether the share is read from the same physical storage device as when storing the share in step S63 in the share generation process described with reference to FIG.
  • the physical storage device can be identified by the control device 11 executing the device control API. Therefore, this determination can be performed by storing the identifier of each physical storage device when the control device 11 stores n shares. If it is determined by this process that the share is obtained from a physical storage device different from that stored, an error message may be notified to the user (via the output device 17). This can further reduce the possibility that secret information is restored to a third party even if the share leaks.
  • step S72 the control device 11 restores the secret information using the secret information restoring equation described above based on the k shares obtained in step S71.
  • the recovered secret information is used in conjunction with the application 1 to sign transaction history information of virtual currency in the payment service.
  • step S73 the control device 11 deletes the share stored in each physical storage device.
  • the corresponding share is deleted from the k physical storage devices in which the k shares acquired at least in step S71 are stored.
  • the normal recovery mode is selected, the corresponding share is deleted from the n physical storage devices in which the n shares are stored.
  • the deletion process it may be determined whether a predetermined number of shares have been deleted according to the mode selected by the user.
  • step S73 the control device 11 deletes the secret key restored in step S72.
  • a timer may be set at the timing when the secret key is restored, and the secret key may be deleted in response to the timer having passed a predetermined period.
  • the secret information recoverable value distribution system As described above, the secret information recoverable value distribution system according to the embodiment of the present invention has been described. According to the secret information restorable value distribution system according to one embodiment of the present invention, since the generated share is stored in the physical storage device, for example, the load of managing the secret key used in the settlement service is reduced. .
  • the secret information recoverable value distribution system according to an embodiment of the present invention may be applied to, for example, an authentication system using an ID and a password. When a password is used as secret information, the secret information recoverable value distribution system according to an embodiment of the present invention avoids the risk of the password being leaked by using the same or similar password in all services. Can.
  • the share can be disconnected from the network by implementing the storage device storing the share as a removable storage device and removing it from the computer terminal.
  • secret information can not be restored unless k shares are collected. Therefore, by storing at least n- (k-1) shares in the removable storage device and removing them from the computer terminal and storing them, very high security can be ensured.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

秘密情報復元可能値分散システムを提供する。コンピュータによって実行される方法であって、所定の情報の処理に使用する秘密情報に基づいて、n個の秘密情報復元可能値を生成するステップであって、秘密情報は、生成したn個のシェアのうちの少なくともk個の秘密情報復元可能値を使用して復元可能であり、n>=k>=2である、ステップと、生成したn個の秘密情報復元可能値を、対応するn個の物理的記憶装置に記憶するステップと、生成した秘密情報を削除するステップとを備える。

Description

秘密情報復元可能値分散システムおよび方法
 本発明は、秘密情報復元可能値分散システムおよび方法に関する。特に、本発明は、秘密情報を復元するための秘密情報復元可能値(シェア)を物理的な記憶媒体に分散して記憶することによって、セキュリティを確保する秘密情報復元可能値分散システムおよび方法に関する。
 インターネットなどの公衆ネットワークを通じてオンライン上で取引を行うコンピュータシステムが利用されている。上記コンピュータシステムの例は、ピアツーピア(P2P)型の決済網であるビットコイン(Bitcoin)と称される仮想通貨管理システムなどを含む。ビットコインにおいては、対になる2つの鍵を利用してデータの暗号化および復号を行う公開鍵暗号方式が利用される。
 以下では、ビットコインでの仮想通貨の送金処理の流れを簡単に説明する。(1)まず、仮想通貨を支払う側(送金元)が公開鍵および秘密鍵のペアを生成する。(2)送金元が公開鍵からアドレス(口座番号)を生成する(このアドレスの集合が「ウォレット(財布)となる」)。(3)送金元が送金情報(送信するビットコイン、アドレス等のトランザクション履歴情報)に自身の秘密鍵を使用して署名する。(4)送金元がP2Pネットワークに送金情報をブロードキャストする。(5)仮想通貨を受け取る側(送金先)が取引内に含まれる公開鍵および署名済みの送金情報を照合して取引が正しいことを検証する。
 ビットコインでは、送金元のみが知り得る秘密鍵を使用して送金情報が署名されるので、その秘密鍵は高度なレベルで秘密に管理される必要がある。このことから、ビットコインの仕組みでは、秘密鍵をどのように管理するかという課題が存在する。秘密鍵は、セキュリティ面を考慮し一般的にはランダムな英数字による64桁の秘密鍵が使われている。よって、その秘密鍵が分からなくなってしまうと、そのアドレスに対応するビットコインは二度と使用できなくなる。このような背景から、様々なデバイスやサービスを使用して秘密鍵の管理を行う利用者が存在する。例えば、ビットコインの使用用途に合わせて複数の口座を所持し、利便性やセキュリティ性などを考慮してそれぞれ異なる方法で管理している利用者が存在する。
土井 洋、「秘密分散法とその応用について」、情報セキュリティ総合科学、第4巻、[online]、2012年11月、情報セキュリティ大学院大学、[平成29年8月30日検索]、インターネット〈URL:https://www.iisec.ac.jp/proc/vol0004/doi.pdf〉 G. R. Blakley, Safeguarding cryptographic keys, Proc. of the National Computer Conference, Vol.48, pp.313-317, 1979, 〈URL:https://www.computer.org/csdl/proceedings/afips/1979/5087/00/50870313.pdf〉
 ビットコインを利用する上で、利用者は、P2Pネットワークに接続されたコンピュータ端末(スマートフォン、タブレットコンピュータおよびパーソナルコンピュータなど)を使用する必要がある。それらの端末がネットワークに接続される以上、悪意のある第三者がコンピュータ端末に不正アクセスするおそれがある。よって、秘密鍵が第三者に漏洩する危険性を完全に排除することはできない。
 非特許文献1は、Shamirの閾値法を開示している。Shamirの閾値法では、秘密情報に基づいてn個の一意なシェアが生成され、それらの一意なシェアがn人の共有者に渡される。そして、n個のうちk個(k<n)のシェアを使用することによって、元の秘密情報を復元することができる。つまり、n-kの数だけ一意なシェアが失われても、残りのk個の一意なシェアを使用して秘密情報を復元することができる。このことは、k-1のシェアを使用しても情報を復元することができないことを意味する。この技術を使用することによって、秘密情報を復元するためのシェアを分散させることができる。
 しかしながら、シェアを分散させても、例えば、それらのシェアをネットワークに接続された記憶装置に記憶した場合、第三者が当該記憶装置に不正アクセスすることによってk個のシェアが漏洩する危険性がある。このことから、非特許文献1に開示された技術を使用しても、秘密情報を適切に保護することはできない場合がある。特に、k個のシェアを同一のLANに位置する記憶装置に記憶した場合、第三者がそのLANの入口となるGateway(Firewall)を通過することによって、k個の全てのシェアが容易に当該第三者に漏洩する可能性がある。
 秘密情報を適切に保護するための究極的な方法として、例えば、特許文献1に開示された技術を使用して、少なくともk個のシェアの値を紙などに書き留め、その紙を金庫などに保管する方法が考えられる。紙の媒体を使用してシェアを保存することになるので、シェアの情報がネットワークを通じてアクセスされることがなくなり、k個のシェアが第三者に漏洩する可能性を低減させることができる。しかしながら、この方法は、利用者の情報の管理負荷を増大させることになる。
 本発明によれば、利用者の情報の管理負荷を軽減することが可能な、および/または秘密情報を適切に保護することが可能な、コンピュータによって実行される方法が提供される。また、本発明によれば、利用者の情報の管理負荷を軽減することが可能な、および/または秘密情報を適切に保護することが可能な、コンピュータデバイスが提供される。
 本発明の一実施形態に係るコンピュータによって実行される方法は、所定の情報の処理に使用する秘密情報に基づいて、n個の秘密情報復元可能値を生成するステップであって、前記秘密情報は、前記生成したn個のシェアのうちの少なくともk個の秘密情報復元可能値を使用して復元可能であり、n>=k>=2である、ステップと、前記生成したn個の秘密情報復元可能値を、対応するn個の物理的記憶装置に記憶するステップと、前記生成した秘密情報を削除するステップとを備える。
 また、本発明の別の実施形態に係るコンピュータデバイスは、制御装置と、前記制御装置に結合され、コンピュータ実行可能命令を記憶したメモリとを備え、前記コンピュータ実行可能命令は、前記制御装置によって実行されると、前記コンピュータデバイスに、所定の情報の処理に使用する秘密情報に基づいて、n個の秘密情報復元可能値を生成するステップであって、前記秘密情報は、前記生成したn個のシェアのうちの少なくともk個の秘密情報復元可能値を使用して復元可能であり、n>=k>=2である、ステップと、前記生成したn個の秘密情報復元可能値を、対応するn個の物理的記憶装置に記憶するステップと、前記生成した秘密情報を削除するステップとを含む方法を実行させるように構成されている。
 本発明の一実施形態に係るコンピュータによって実行される方法またはコンピュータデバイスによれば、利用者は甚大な負荷がかかる情報管理の必要性なしに、適切に秘密情報を保護することができる。特に、複数の物理的記憶装置に分散してシェアを記憶するので、仮に、分散して記憶したシェアのうちの1つが漏洩しても、k個のシェアの全てが漏洩しない限り秘密情報を保護することができる。
従来技術に従った(k,n)閾値法に従って算出した秘密鍵の値に対応する座標を通るグラフを示す。 従来技術に従った(k,n)閾値法に従って算出した秘密鍵の値に対応する座標を通るグラフを示す。 従来技術に従った(k,n)閾値法に従って算出した秘密鍵の値に対応する座標を通るグラフを示す。 本発明の実施形態に係る秘密情報復元可能値分散システムを構成するコンピュータシステム全体の構成の例を示す図である。 本発明の実施形態に係る秘密情報復元可能値分散システムを構成するコンピュータ端末の詳細な構成の例を示す図である。 本発明の実施形態に係るが秘密情報復元可能値分散システム実行するシェア生成処理の例を示す図である。 本発明の実施形態に係るが秘密情報復元可能値分散システム実行する秘密情報復元処理の例を示す図である。
 以下、添付図面を参照して、本発明の一実施形態に係る秘密情報復元可能値分散システムを詳細に説明する。本発明の一実施形態に係る秘密情報復元可能値分散システムは、従来技術に従ったShamirの閾値法(秘密分散法)を利用することによって、秘密情報復元可能値(シェア)を分散している。ここで、Shamirの閾値法は、秘密情報を復元することができるシェアの数であるk(閾値)、およびそのシェアを分散する数であるn(シェア数)を定めている。上記に加え、本発明の一実施形態に係る秘密情報復元可能値分散システムは、情報を復元することができる/できない集合を任意に定めることができる、いずれかの他の秘密分散法を利用してもよい(非特許文献2を参照)。
 まず、従来技術に従ったShamirの閾値法の概要を、図1乃至図3を参照して説明する。Shamirの閾値法(以下、「(k,n)閾値法」と称する)では、秘密情報であるSに対し、その秘密情報Sをn人で共有することを前提とする。そのn人のそれぞれには、所定の多項式を使用して生成されたn個のシェアがそれぞれ渡される。そのうちk個のシェアによって秘密情報Sを復元することができる。つまり、生成されたn個のシェアをn人の間で共有し、そのうちk人が有するk個のシェアを使用することによって秘密情報Sを復元することができる。本明細書では、このnの数をシェア数と称し、kの数を閾値と称する。
 シェアを生成する際は、定数項をSとする任意のk-1次多項式を使用する。ここで、kを3とし、nを4とし(つまり、4個のシェアを生成し、そのうち3個のシェアを使用することによって、秘密情報Sを復元することができる)、秘密情報を9とする。よって、k-1次多項式、つまり定数項を9とする任意の2次多項式を使用することになる。例えば、第1の項の係数に2、第2の項に係数7を使用して、式(1)
f(x)=2x2-7x+9 ……式(1)
とする。
 n=4個のシェアを生成する際に、シェア番号として{1,2,3,4}を割り当てる。f(1)、f(2)、f(3)およびf(4)として式(1)に当てはめると、n個のシェアの値の集合、n={(1,4),(2,3),(3,6),(4,13)}が算出される。
 図1は、上述したように算出されたシェアの値を座標とし、各座標を通る曲線を描いたグラフを示している。図1に示す曲線は、4個のシェアの値に対応する4箇所の座標を通っている。この曲線が、式(1)の2次多項式を表わしている。(k,n)閾値法では、n=4個のうちk=3個のシェアを使用することによって秘密情報を復元することができる。つまり、図1に示す4箇所の座標のうち、任意の3箇所の座標を通ることによっても、同様の曲線を描くことができる。一方で、k-1個のシェアを使用することによっては、秘密情報を復元することができない。つまり、図1に示す4箇所の座標のうち、任意の2箇所の座標を通ることによっては、同様の曲線を描くことができない。
 図2は、k=3個のシェアの値を座標とし、各座標を通る曲線を描いたグラフを示している。図2から理解できるように、閾値であるk=3箇所の座標が分かれば、図1に示す曲線と同一の曲線を描くことができる。図3は、k-1=2個のシェアの値を座標とし、各座標を通る曲線を描いたグラフを示している。図2から理解できるように、閾値k-1=2の箇所の座標のみでは、破線で示す曲線なども描くことができ、必ずしも、図1に示す曲線と同一の曲線を描くことができない。つまり、k-1(2)個のシェアを使用することによっては、式(1)に示した2次多項式を導出することができず、ひいては、秘密情報Sを復元することができない。
 k個のシェアの値からは、多項式補間を使用することによって秘密情報を復元することができるが、その具体的な算出式を以下に示す。まず、閾値k=3であることから、シェアを生成する多項式がy=x2+x+定数項である2次多項式であることが分かる。そして、各項の係数をa、bおよびcに置換え、y=a2+b+cとし、k=3個のシェアの値の集合、k={(1,4),(2,3),(3,6)}を代入する。これによって、以下のように式(2)乃至式(4)を導出することができる。
c=-a-b+4   ……式(2)
c=-4a-2b+3 ……式(3)
c=-9a-3b+6 ……式(4)
 次に、式(2)を式(3)および式(4)にそれぞれ代入する。これによって、以下のように式(5)および式(6)を介してa(つまり、式(1)に示した2次多項式の第1の項の係数)を導出することができる。
3a=-b-1  ……式(5)
8a=-2b+2 ……式(6)
a=2
 上記式から係数aの値を導出することができたので、導出したaの値を式(2)および式(3)に代入する。これによって、以下のように式(7)および式(8)を介してb(つまり、式(1)に示した2次多項式の第2の項の係数)を導出することができる。
c=-b+2  ……式(7)
c=-2b-5 ……式(8)
b=-7
 最後に、導出した係数aの値および係数bの値を式(2)に代入する。これによって、c=9(つまり、式(1)に示した2次多項式の定数項の値)を導出することができる。
 以上のようにして導出した係数の値を2次多項式に代入すると、式(1)に示した2次多項式、つまり、秘密情報Sを復元することができることが分かる。この秘密情報Sを復元する具体的な式は、例えば、非特許文献1に開示されているように公知であるので、本明細書では具体的な説明は行わない。
 本発明の一実施形態に係る秘密情報復元可能値分散システムは、上述した(k,n)閾値法を含むいずれかの秘密分散法を使用してn個のシェアを生成し、k個のシェアを使用して、秘密情報を復元する。(k,n)閾値法では、n>kであるが、使用する秘密分散法によっては、n=kの場合もあり、そのような場合も本発明の一実施形態に係る秘密情報復元可能値分散システムが適用することができることに留意されたい。
 以下、本明細書では、秘密分散法を使用してn個のシェアを生成する際に使用する算出式を、秘密情報復元可能値(シェア)生成式と称する。また、生成したn個のシェアのうちk個のシェアを使用して秘密情報を復元する際に使用する算出式を秘密情報復元式と称する。本発明の一実施形態に係る秘密情報復元可能値分散システムが(k,n)閾値法を利用する場合、シェア生成式および秘密情報復元式はそれぞれ、非特許文献1に示す算出式が使用される。(k,n)閾値法に加え、本発明の一実施形態に係る秘密情報復元可能値分散システムが他の秘密分散法を利用する場合、その秘密分散法に対応する、シェア生成式および秘密情報復元式がそれぞれ使用される。
 次に、図4を参照して、本発明の一実施形態に係る秘密情報復元可能値分散システムを構成するコンピュータシステム全体の構成の例を示している。本実施形態に係る秘密情報復元可能値分散システムは、単独で使用されず、秘密情報復元可能値分散システムを利用するサービス(コンピュータシステム)が存在することが前提となる。しかしながら、上述したコンピュータシステム自体が、本実施形態に係る秘密情報復元可能値分散システムを実装してもよい。
 以下の実施形態では、本発明の一実施形態に係る秘密情報復元可能値分散システムが、ビットコインなどの仮想通貨を使用した決済サービスを提供するコンピュータシステム(以下、決済システム)と連動する例を説明する。この例では、仮想通貨を使用して決済(送金)を行う場合、利用者(送金元)が秘密鍵を生成し、生成した秘密鍵を使用して仮想通貨のトランザクション履歴情報の署名を行なう。このことから、決済システムにおいて生成された秘密鍵に基づいて、本発明の一実施形態に係る秘密情報復元可能値分散システムがn個のシェアを生成し、k個のシェアに基づいて秘密鍵を復元する。
 図4に示すように、本実施形態に係る秘密情報復元可能値分散システムは、コンピュータ端末1およびサーバコンピュータ2を含み、それらがネットワーク3(インターネットなどの公衆ネットワーク、本実施形態ではP2Pネットワーク)を介して接続されている。
 コンピュータ端末1は、本発明の一実施形態に係る秘密情報復元可能値分散システムを実装するコンピュータデバイスである。コンピュータ端末1は、例えば、スマートフォン、タブレットコンピュータおよびパーソナルコンピュータなどで実装されてもよい。利用者は、コンピュータ端末1を使用して所定の情報を入力することによって、n個のシェアを生成し、そのうちk個のシェアを使用して秘密情報を復元する。
 サーバコンピュータ2は、本発明の一実施形態に係る秘密情報復元可能値分散方法を利用して決済サービスなどを提供する機能を実行するコンピュータデバイスである。本実施形態では、コンピュータ端末1が単独でn個のシェアを生成し、秘密情報を復元する処理を実行する。しかしながら、コンピュータ端末1とサーバコンピュータ2とが連動して、秘密情報復元可能値分散システムを実装してもよい。この場合、コンピュータ端末1からの要求に応じて、サーバコンピュータ2がn個のシェアを生成する。
 次に図5を参照して、本発明の一実施形態に係る秘密情報復元可能値分散システムを構成するコンピュータ端末1の詳細な構成の例を説明する。コンピュータ端末1は、制御装置11、メモリ12、記憶装置13、通信装置14、入力デバイス15、入力ドライバ16、出力デバイス17、および出力ドライバ18を含む。
 制御装置11は、プロセッサなどで実装され、中央処理装置(CPU)、グラフィックプロセシングユニット(GPU)、および1つまたは複数の制御装置コアを含んでもよい。制御装置11は、所定のプログラム(OSおよびアプリケーションプログラム)を実行する。メモリ12は、揮発性または不揮発性メモリ、例えば、ランダムアクセスメモリ(RAM)、ダイナミックRAM、またはキャッシュメモリを含んでもよい。メモリ12は、制御装置11が実行するプログラムデータを一時的に記憶する。
 記憶装置13は、コンピュータ端末1に内蔵された記憶装置であり、例えば、ハードディスクドライブ、ソリッドステートドライブ、光ディスク、およびフラッシュドライブを含んでもよい。記憶装置13は、生成されたn個のうちの1つのシェアを記憶する。通信装置14は、ネットワークインタフェースカード(例えば、LANカード)などで実装され、ネットワーク3を介してデータを送受信する。
 入力デバイス15は、キーボード、キーパッド、タッチスクリーン、タッチパッド、マイクロフォン、加速度計、ジャイロスコープ、および生体スキャナなどを含んでもよい。入力デバイス15は、入力ドライバ16を介して、利用者による入力を受信し、それを制御装置11と通信する。
 出力デバイス17は、ディスプレイ、スピーカ、およびプリンタなどを含んでもよい。出力デバイス17は、出力ドライバ18を介して制御装置11からの出力を受信し、それを出力する(ディスプレイを介した視覚的出力、スピーカを介した音声出力など)。
 コンピュータ端末1には、取外可能記憶装置19が接続される。取外可能記憶装置19が接続されると、入力ドライバ16を介して取外可能記憶装置19からの情報が制御装置11と通信される。また、制御装置11からの出力が出力ドライバ18を介して取外可能記憶装置19に出力(記憶)される。取外可能記憶装置19は、例えば、USBメモリおよびSDカードなどのフラッシュメモリ、CD-ROMおよびDVDなどの光学記憶媒体、フロッピーディスクなどの磁気記憶媒体など、いずれかの着脱可能、かつ不揮発性の記憶装置を含む。
 本実施形態に係る秘密情報復元可能値分散システムは、所定のコンピュータシステムと連動することは上述した通りである。つまり、コンピュータ端末1上で、当該所定のコンピュータシステムが提供するアプリケーションプログラムが実行される。本実施形態に係る秘密情報復元可能値分散システムは、コンピュータ端末1上で実行されるアプリケーションプログラムに対応するサービスごとに独立して実行されることが望ましい。
 例えば、コンピュータ端末1がApple(登録商標)社製のオペレーティングシステム「iOS(登録商標)」を実行する場合(iPhone(登録商標)など)、記憶装置13が、サービスごとに論理的に独立した記憶領域を構成することになる。この場合、例えば、コンピュータ端末1が複数のアプリケーションプログラムを実行し、各アプリケーションプログラムが秘密情報復元可能値分散システムと連動する。よって、アプリケーションプログラムに対応するサービスごとに論理的に独立した記憶領域が使用される。このことは、後述するシェアを記憶装置13に記憶する際に、実行するアプリケーションプログラムごとに論理的に独立した領域に記憶することができることを意味し、セキュリティがより高まることになる。
 コンピュータ端末1がiOS以外のオペレーティングシステムを実行する場合(Windows(登録商標)およびAndroid(登録商標)など)、例えば、コンテナ型仮想化技術を使用することによって、サービスごと、またはユーザごとに記憶領域を独立させることができる。このように、複数のアプリケーションプログラムを実行し、各アプリケーションプログラムが秘密情報復元可能値分散システムと連動する場合、独立した記憶領域を実装することによって、さらなるセキュリティを確保することができる。
 次に、図6を参照して、本発明の一実施形態に係る秘密情報復元可能値分散システムが実行する秘密情報復元可能値(シェア)生成処理を説明する。本実施形態では、上述した決済サービスにおいて使用される秘密鍵を秘密情報とし、その秘密鍵に基づいてシェアを生成し、シェアを分散して記憶する例を説明する。この場合、当該決済サービスを提供するアプリケーションプログラムと秘密情報復元可能値分散システムとが連動し、以下では、決済サービスを提供するアプリケーションプログラムを決済アプリケーションと称する。決済サービスは、コンピュータ端末1とサーバコンピュータ2との間で情報を交換することによって行われる。
 図6に示すように、コンピュータ端末1の制御装置11が、所定のプログラムを実行することによって、ステップS61乃至ステップS64を含むシェア生成処理を実行する。ステップS61では、制御装置11が、決済アプリケーションを実行することによって、秘密鍵を生成する。この処理は、従来技術に従って、決済サービスにおいて仮想通貨の送金を行う際に使用する秘密鍵の生成処理を含む。生成された秘密鍵は、メモリ12および/または記憶装置13に記憶される。
 ステップS62では、制御装置11が、ステップS61で生成した秘密鍵に基づいて、上述したシェア生成式を使用して、シェア数(n)個のシェアを生成する。本実施形態では、n=3であるものとし、それぞれのシェアを識別するために、シェア1~シェア3と表わす。また、閾値k=2であるものとする。
 ここで、ステップS62で生成されるシェアは、例えば、「.txt」の拡張子を有するファイルであり、ファイルの中に、秘密分散法に基づいて算出された値が書き込まれる。また、ファイル名は、例えば、「UUID_シェア番号.txt」としてもよい。UUIDは、任意のバージョンに従ってアプリケーションプログラムごとに一意に生成される。つまり、本実施形態では、秘密情報復元可能値分散システムと連動するアプリケーションごとに一意なUUIDが生成される。UUIDは、生成するごとに一意な番号となるので、シェアのファイル名が、アプリケーションプログラムごと、および生成するごとに一意なファイル名となる。このようにファイル名を割り当てることによって、アプリケーションプログラムの独立性がさらに高まる。
 なお、ファイル名にUUIDを使用することは例示的なものにすぎず、このような形式に限定されない。本実施形態に係る秘密情報復元可能値分散システムと連動するサービスごとに一意となる任意の数値を生成し、その数値をファイル名に使用してもよい。また、後述するが、生成したシェアは、秘密情報を復元する都度、削除される。ファイル名に使用するUUIDなどの一意な数値は、秘密情報を復元する都度、新たな数値を割り当ててもよく、またはシェアを紛失したときなどのみに新たな数値を割り当ててもよい。
 なお、本実施形態では、ステップS61およびステップS62の処理をコンピュータ端末1で実行しているが、そのような形式に限定されない。ステップS61および/またはステップS62の処理がサーバコンピュータ2で実行されてもよい。この場合、例えば、コンピュータ端末1からの要求に応じて、サーバコンピュータ2が秘密鍵および/またはシェアを生成し、それらをコンピュータ端末1に送信することになる。サーバコンピュータ2で秘密鍵および/またはシェアを生成した場合、コンピュータ端末1に送信した後、それらがサーバコンピュータ2の記憶領域から削除される。
 ステップS63では、制御装置11がステップS62で生成した3個のシェアを、所定の記憶領域にそれぞれ記憶する。ここで、所定の記憶領域とは、コンピュータ端末1の記憶装置13の所定の領域に加え、上述した取外可能記憶装置19を含む。つまり、n個のシェアは、複数の独立した物理的記憶装置(媒体)にそれぞれ別個に記憶される。取外可能記憶装置19は、例えば、USBメモリおよびSDカードを含むものとする。
 シェアが分散して記憶される複数の物理的記憶装置の組み合わせは、上述した組み合わせに限定されない。例えば、以下に示す表1乃至表3に示す組み合わせが考えられる。
Figure JPOXMLDOC01-appb-T000001
 表1に示す組み合わせは、シェア1が記憶装置13に記憶され、シェア2がUSBメモリに記憶され、シェア3がSDカードに記憶されることを示している。記憶装置13は、ネットワークに接続されるコンピュータ端末1に内蔵された記憶装置であるので、コンピュータ端末1を介してネットワーク3に接続されることになる。一方で、USBメモリおよびSDカードは、それらを取り外すことによって、ネットワーク3から遮断されることになる。このことから、USBメモリなどの取外可能記憶装置19にシェアを記憶したほうがよりセキュリティが高まる。
 上述したように、本実施形態に係る秘密情報復元可能値分散システムでは、k-1個のシェアを使用しても、秘密情報を復元することができない。つまり、n-(k-1)個のシェアの漏洩などを防止することによって、秘密情報の漏洩を防止することができる。表1に示す組み合わせでは、n-(k-1)(つまり、2)個のシェアをそれぞれ、ネットワーク3から遮断可能な取外可能記憶装置19に記憶しているので、セキュリティを確保する上で好ましい組合せとなる。
 本実施形態では、n個のシェアを複数の独立した物理的記憶装置に記憶することを保証するために、ステップS61またはステップS62を実行する前に、取外可能記憶装置19がコンピュータ端末1に接続されているかを判定してもよい。この処理は、制御装置11が、例えば、Androidオペレーティングシステムにおいて標準で提供されているUsbDeviceなどのデバイス制御APIを実行することによって、取外可能記憶装置19が接続されているかを認識することができる。この処理によって、制御装置11が、コンピュータ端末1に取外可能記憶装置19が接続されていないと判定した場合、エラーメッセージを利用者に通知してもよい(出力デバイス17を介して)。一方で、制御装置11が、コンピュータ端末1に取外可能記憶装置19が接続されていると判定した場合、その旨のメッセージを利用者に通知し、後続のステップS64の処理に遷移する。
 また、デバイス制御APIを実行することによって、コンピュータ端末1に接続されているデバイスの種別を判定することができる。よって、n-(k-1)個のシェアを取外可能記憶装置19に記憶することを保証するべく、n-(k-1)個の取外可能記憶装置19がコンピュータ端末1に接続されているかを判定してもよい。表1に示す組み合わせでは、SDカードおよびUSBメモリがそれぞれ接続されているかを判定する。
 表1に示す組み合わせに加え、以下のような組み合わせも同様のセキュリティを確保することができる。
Figure JPOXMLDOC01-appb-T000002
 表2に示す組合せは、シェア2およびシェア3がそれぞれ、独立した2個のUSBメモリに記憶されることを示している。このように、複数の独立した物理的記憶装置が同一の種別の取外可能記憶装置19である場合、利用者は、1つ目の物理的記憶装置にシェアを記憶した後、その物理的記憶装置を取り外し、2つ目の物理的記憶装置を新たに接続する必要がある。
 このように、同一種別の独立した別個の物理的記憶装置にシェアを記憶することを保証するために、2つ目の物理的記憶装置が接続されるときに、1つ目の物理的記憶装置と異なる物理的記憶装置であるかを判定してもよい。この処理は、制御装置11が上述したデバイス制御APIを実行することによって、物理的記憶装置のそれぞれを識別する(接続される装置のシリアル番号などによって)ことによって行われる。この処理によって、制御装置11が、2つ目の物理的記憶装置が1つ目の物理的記憶装置と同一の物理的記憶装置であると判定した場合、エラーメッセージを利用者に通知してもよい(出力デバイス17を介して)。一方で、制御装置11が、2つ目の物理的記憶装置が1つ目の物理的記憶装置と異なる物理的記憶装置であると判定した場合、その旨のメッセージを利用者に通知し、後続のステップS64の処理に遷移する。
 さらに、以下のような組み合わせも可能である。
Figure JPOXMLDOC01-appb-T000003
 表3に示す組み合わせは、シェア1が記憶装置13に記憶され、シェア2がNAS(Network Attached Storage)またはSAN(Storage Area Network)などのネットワーク接続される外部記憶装置に記憶され、シェア3がUSBメモリに記憶されることを示している。この組み合わせは、k個の数のシェアが、通常では、ネットワークから遮断されない記憶装置に記憶されることになるので、表1および表2に示した組合せと比較して、セキュリティ性が劣ることになる。
 上述したシェアが分散して記憶される記憶装置の組み合わせは、秘密情報復元可能値分散システムにおいて予め定義されてもよく、または利用者が任意のタイミングでその組み合わせを設定してもよい。また、シェア数および閾値数も同様に、秘密情報復元可能値分散システムにおいて予め定義されてもよく、または利用者が任意のタイミングでその数を設定してもよい。
 ステップS64では、ステップS61で生成し、メモリ12および/または記憶装置13に記憶した秘密情報を削除する。この処理によって、コンピュータ端末1には、秘密情報が存在しなくなり、かつn個のシェアが分散して記憶されることになる。なお、シェアを記憶してから一定期間が経過しても取外可能記憶装置19が取り外されない場合に、その旨のメッセージを利用者に通知してもよい。これによって、取外可能記憶装置19がコンピュータ端末1から取り外されること、つまり、記憶されたシェアがネットワークから遮断されることを保証することができる。
 次に、図7を参照して、本発明の一実施形態に係る秘密情報復元可能値分散システムが実行する秘密情報復元処理を説明する。本実施形態で説明する秘密情報復元処理は、図6で説明したシェア生成処理において生成された秘密情報を、通常の利用において復元する処理である。つまり、シェアを1つも漏洩または損失することなく、上述した決済サービスにおける仮想通貨の送金の際の仮想通貨のトランザクション履歴情報の署名に使用する秘密鍵などを復元する例である。
 秘密情報復元処理は2つのタイプが存在する。1つ目が上述した通常利用における復元処理である。2つ目がシェアの漏洩、コンピュータ端末の紛失もしくは交換などのときにおける復元処理である。この2つのタイプの復元処理は、コンピュータ端末1の出力デバイス17(ディスプレイなど)に表示されるメニュー画面(図示せず)において選択することができる(前者のタイプを「通常復元モード」、後者のタイプを「リカバリモード」とする)。リカバリモードでは、秘密情報を復元することを目的とするのではなく、シェアを再度生成することを目的としたモードである。
 図7に示すように、コンピュータ端末1の制御装置11が、所定のプログラムを実行することによって、ステップS71乃至ステップS73を含む秘密情報復元処理を実行する。ステップS71では、制御装置11が、複数の物理的記憶装置のいずれかから、閾値(k)個のシェアを読み出す。本実施形態では、k=2であるものとし、シェア1が記憶装置13から読み出され、シェア2がUSBメモリから読み出される。
 ステップS71の処理において、図6で説明したシェア生成処理におけるステップS63でシェアを記憶したときと同一の物理的記憶装置からシェアを読み出しているかを判定してもよい。上述したように、制御装置11がデバイス制御APIを実行することによって、物理的記憶装置を識別することができる。よって、制御装置11がn個のシェアを記憶した時点でそれぞれの物理的記憶装置の識別子を記憶しておくことで、この判定を行うことができる。この処理によって、記憶したときと異なる物理的記憶装置からシェアを取得していると判定した場合、エラーメッセージを利用者に通知してもよい(出力デバイス17を介して)。これによって、シェアが漏洩した場合にも、秘密情報が第三者に復元される可能性をさらに低減させることができる。
 ステップS72では、制御装置11が、ステップS71で取得したk個のシェアに基づいて、上述した秘密情報復元式を使用して、秘密情報を復元する。復元した秘密情報は、アプリケーション1と連携して、決済サービスにおける仮想通貨のトランザクション履歴情報の署名に使用される。
 ステップS73では、制御装置11が、各物理的記憶装置に記憶したシェアを削除する。ここで、上述したリカバリモードを選択した場合、少なくともステップS71で取得したk個のシェアが記憶されたk個の物理的記憶装置から、対応するシェアを削除する。一方で、通常復元モードを選択した場合、n個のシェアが記憶されたn個の物理的記憶装置から、対応するシェアを削除する。この削除処理を実行する際に、利用者が選択したモードに応じて、所定の数のシェアを削除したかを判定してもよい。
 また、ステップS73では、制御装置11は、ステップS72で復元した秘密鍵を削除する。この削除処理は、秘密鍵を復元したタイミングでタイマを設定し、タイマが所定の期間を経過したことに応答して、秘密鍵を削除するようにしてもよい。この処理によって、所定の期間を経過したことによって、復元した秘密鍵をコンピュータ端末1から削除するので、秘密情報が第三者に漏洩する可能性をさらに低減させることができる。
 このようにして、生成および復元を行う都度、シェアを削除しているので、秘密情報のセキュリティをさらに確保することができる。なお、上述したリカバリモードを選択した場合、制御装置11は、ステップS73の後に、図6で説明したシェア生成処理を実行するよう制御し、ステップS72で復元した秘密情報に基づいてシェアを生成する。例えば、式(1)に示した2次多項式における第1の項の係数および第2の項の係数を変更することによって、異なるシェアを生成することができる。この処理によって、シェアのうちの1つを紛失した場合などでも、新たなシェアを再度生成することができる。
 以上のように、本発明の一実施形態に係る秘密情報復元可能値分散システムを説明した。本発明の一実施形態に係る秘密情報復元可能値分散システムによれば、生成したシェアを物理的記憶装置に記憶するので、例えば、決済サービスで使用される秘密鍵を管理する負荷が低減される。また、本発明の一実施形態に係る秘密情報復元可能値分散システムを、例えば、IDおよびパスワードを使用した認証システムに適用してもよい。パスワードを秘密情報とする場合、本発明の一実施形態に係る秘密情報復元可能値分散システムによって、あらゆるサービスにおいて同一または類似したパスワードを使い回すことにより当該パスワードが漏洩すること危険性を回避することができる。
 一方で、シェアを記憶した記憶装置を取外可能記憶装置で実装し、それをコンピュータ端末から取り外すことによって、シェアをネットワークから遮断することができる。本発明の一実施形態に係る秘密情報復元可能値分散システムでは、k個のシェアが集まらない限り、秘密情報を復元することができない。よって、少なくとも、n-(k-1)個のシェアを取外可能記憶装置に記憶し、それらをコンピュータ端末から取り外して保管することによって、非常に高いセキュリティを確保することができる。
 上記実施形態で説明した式およびハードウェアの構成要素は例示的なものにすぎず、その他の構成も可能であることに留意されたい。また、上記実施形態で説明した処理の順序は、必ずしも説明した順序で実行される必要がなく、任意の順序で実行されてもよい。さらに、本発明の基本的な概念から逸脱することなく、追加のステップが新たに加えられてもよい。
 また、本発明の一実施形態に係る秘密情報復元可能値分散システムは、コンピュータ端末1によって実行されるプログラムによって実装されるが、当該プログラムは、非一時的記憶媒体に記憶されてもよい。非一時的記憶媒体の例は、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、レジスタ、キャッシュメモリ、半導体メモリ装置、内蔵ハードディスクおよび取外可能ディスク装置などの磁気媒体、光磁気媒体、ならびにCD-ROMディスクおよびデジタル多用途ディスク(DVD)などの光学媒体などを含む。

Claims (12)

  1.  コンピュータによって実行される方法であって、
     交換される情報の処理に使用する秘密情報に基づいて、n個の秘密情報復元可能値を生成するステップであって、前記秘密情報は、前記生成したn個のシェアのうちの少なくともk個の秘密情報復元可能値を使用して復元可能であり、n>=k>=2である、ステップと、
     前記生成したn個の秘密情報復元可能値を、対応するn個の物理的記憶装置に記憶するステップと、
     前記生成した秘密情報を削除するステップと
     を備えたことを特徴とする方法。
  2.  前記n個の物理的記憶装置のうちのk個の物理的記憶装置から、対応するk個の秘密情報復元可能値を読み出すステップと、
     前記読み出したk個の秘密情報復元可能値を使用して、前記秘密情報を復元するステップと、
     前記k個の秘密情報復元可能値を削除するステップと
     をさらに備えたことを特徴とする請求項1に記載の方法。
  3.  前記n個の物理的記憶装置のうちの少なくともn-(k-1)個は、取外可能記憶装置であり、
     前記方法は、前記取外可能記憶装置が前記コンピュータに接続されているか否かを判定するステップをさらに備えたことを特徴とする請求項1または2に記載の方法。
  4.  前記n個の物理的記憶装置のうちの少なくとも1つは、第1の取外可能記憶装置であり、
     前記n個の物理的記憶装置のうちの少なくとももう1つは、第2の取外可能記憶装置であり、前記第1の取外可能記憶装置および前記第2の取外可能記憶装置は、同一の種別の取外可能記憶装置であり、
     前記生成したn個の秘密情報復元可能値を、前記対応するn個の物理的記憶装置に記憶するステップは、
     前記生成したn個の秘密情報復元可能値のうちの第1の秘密情報復元可能値を前記第1の取外可能記憶装置に記憶するステップと、
     前記第2の取外可能記憶装置が前記コンピュータに接続されているか否かを判定するステップと、
     前記第2の取外可能記憶装置が前記第1の取外可能記憶装置と物理的に異なる取外可能記憶装置であるかを判定するステップと、
     前記第2の取外可能記憶装置が前記第1の取外可能記憶装置と物理的に異なる取外可能記憶装置であると判定したことに応答して、前記生成したn個の秘密情報復元可能値のうちの第2の秘密情報復元可能値を前記第2の取外可能記憶装置に記憶するステップと
     を含むことを特徴とする請求項1乃至3のいずれか一項に記載の方法。
  5.  前記秘密情報を生成し、または前記秘密情報を受信するステップをさらに備えたことを特徴とする請求項1乃至4のいずれか一項に記載の方法。
  6.  複数のアプリケーションプログラムを実行することによって、前記秘密情報を生成するステップをさらに備え、
     前記n個の物理的記憶装置のうちの少なくとも1つは、前記コンピュータに内蔵された記憶装置であり、前記記憶装置は、前記複数のアプリケーションプログラムのそれぞれに対して独立した複数の論理的記憶領域を含み、
     前記生成したn個の秘密情報復元可能値を、前記対応するn個の物理的記憶装置に記憶するステップは、前記生成したn個の秘密情報復元可能値のうちの1つを、前記複数の論理的記憶領域うちのいずれか1つに記憶するステップを含むことを特徴とする請求項1乃至4のいずれか一項に記載の方法。
  7.  前記n個の秘密情報復元可能値を生成するステップは、(k,n)閾値法を使用して実行されることを特徴とする請求項1乃至6のいずれか一項に記載の方法。
  8.  前記秘密情報は、秘密鍵であることを特徴とする請求項1乃至7のいずれか一項に記載の方法。
  9.  前記処理は、署名であることを特徴とする請求項1乃至8のいずれか一項に記載の方法。
  10.  前記交換される情報は、仮想通貨のトランザクション履歴情報であることを特徴とする請求項1乃至9のいずれか一項に記載の方法。
  11.  コンピュータデバイスであって、
     制御装置と、
     前記制御装置に結合され、コンピュータ実行可能命令を記憶したメモリと
     を備え、
     前記コンピュータ実行可能命令は、前記制御装置によって実行されると、前記コンピュータデバイスに、請求項1乃至10のいずれか一項に記載の方法を実行させることを特徴とするコンピュータデバイス。
  12.  コンピュータ実行可能命令を含むコンピュータプログラムであって、前記コンピュータ実行可能命令は、コンピュータによって実行されると、前記コンピュータに請求項1乃至10のいずれか一項に記載の方法を実行させることを特徴とするコンピュータプログラム。
PCT/JP2018/013207 2017-09-08 2018-03-29 秘密情報復元可能値分散システムおよび方法 Ceased WO2019049408A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP18854302.9A EP3681097A4 (en) 2017-09-08 2018-03-29 SYSTEM AND METHOD FOR DISTRIBUTION OF RECOVERABLE VALUE OF SECRET INFORMATION
US16/492,875 US20210144001A1 (en) 2017-09-08 2018-03-29 Secret reconstructible value distribution system and method
CN201880058014.5A CN111066281A (zh) 2017-09-08 2018-03-29 秘密信息可复原值分散系统及方法
KR1020207006354A KR20200035443A (ko) 2017-09-08 2018-03-29 비밀정보 복원가능값 분산시스템 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-173060 2017-09-08
JP2017173060A JP6718175B2 (ja) 2017-09-08 2017-09-08 秘密情報復元可能値分散システムおよび方法

Publications (1)

Publication Number Publication Date
WO2019049408A1 true WO2019049408A1 (ja) 2019-03-14

Family

ID=65634766

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/013207 Ceased WO2019049408A1 (ja) 2017-09-08 2018-03-29 秘密情報復元可能値分散システムおよび方法

Country Status (7)

Country Link
US (1) US20210144001A1 (ja)
EP (1) EP3681097A4 (ja)
JP (1) JP6718175B2 (ja)
KR (1) KR20200035443A (ja)
CN (1) CN111066281A (ja)
TW (1) TWI678640B (ja)
WO (1) WO2019049408A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021044780A (ja) * 2019-09-13 2021-03-18 アスピレイション株式会社 電子認証における改ざん防止システム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11336462B1 (en) * 2019-09-10 2022-05-17 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11334667B1 (en) 2020-01-17 2022-05-17 Wells Fargo Bank, N.A. Systems and methods for disparate quantum computing threat detection
KR102822098B1 (ko) * 2022-09-13 2025-06-18 충북대학교 산학협력단 Shamir 비밀 공유 및 HMAC 인증에 기초하는 중앙 집중식 임계 키 생성 프로토콜
JP2025008098A (ja) * 2023-07-04 2025-01-20 チェーンブリッジ株式会社 秘密鍵管理システム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072613A (ja) * 2005-09-05 2007-03-22 Makoto Toma 代理人端末装置、代理人端末装置の制御プログラムおよびusbメモリ
JP2007134952A (ja) * 2005-11-10 2007-05-31 Softbank Mobile Corp 移動体通信端末
JP2007304962A (ja) * 2006-05-12 2007-11-22 Fujitsu Ltd 情報分散機能を有する情報処理装置
WO2008096608A1 (ja) * 2007-02-05 2008-08-14 Senken Co., Ltd. 秘密情報配送システムおよび秘密情報配送方法
JP2009104575A (ja) * 2007-10-02 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> 情報記録媒体のセキュリティ方法、情報処理装置、プログラム及び記録媒体
WO2017082237A1 (ja) * 2015-11-09 2017-05-18 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621375A (zh) * 2009-07-28 2010-01-06 成都市华为赛门铁克科技有限公司 密钥管理方法、装置及系统
US9922063B2 (en) * 2009-12-29 2018-03-20 International Business Machines Corporation Secure storage of secret data in a dispersed storage network
US8806609B2 (en) * 2011-03-08 2014-08-12 Cisco Technology, Inc. Security for remote access VPN
TWI509425B (zh) * 2014-04-16 2015-11-21 Walton Advanced Eng Inc A way of sharing files
CN107251478A (zh) * 2015-02-12 2017-10-13 卡米纳利欧技术有限公司 秘密密钥管理的计算机化系统和方法
US10075296B2 (en) * 2015-07-02 2018-09-11 Intel Corporation Loading and virtualizing cryptographic keys

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072613A (ja) * 2005-09-05 2007-03-22 Makoto Toma 代理人端末装置、代理人端末装置の制御プログラムおよびusbメモリ
JP2007134952A (ja) * 2005-11-10 2007-05-31 Softbank Mobile Corp 移動体通信端末
JP2007304962A (ja) * 2006-05-12 2007-11-22 Fujitsu Ltd 情報分散機能を有する情報処理装置
WO2008096608A1 (ja) * 2007-02-05 2008-08-14 Senken Co., Ltd. 秘密情報配送システムおよび秘密情報配送方法
JP2009104575A (ja) * 2007-10-02 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> 情報記録媒体のセキュリティ方法、情報処理装置、プログラム及び記録媒体
WO2017082237A1 (ja) * 2015-11-09 2017-05-18 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
G. R. BLAKLEY: "Safeguarding cryptographic keys", PROC. OF THE NATIONAL COMPUTER CONFERENCE, vol. 48, 1979, pages 313 - 317, XP000566416, Retrieved from the Internet <URL:https://www.computer,org/csdl/proceedings/afips/1979/5087/00/50870313.pdf>>
HIROSHI DOI: "Jouhou Security Sougou Kagaku", vol. 4, November 2012, INSTITUTE OF INFORMATION SECURITY, article "Himitsu Bunsan Hou To Sono Ouyou Ni Tsuite"
KOGURE, JUN ET AL.: "Blockchain Technology for Next Generation ICT", FUJITSU SCIENCE TECHNOLOGY, vol. 68, no. 5, 1 September 2017 (2017-09-01), pages 56 - 61, XP055581298 *
See also references of EP3681097A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021044780A (ja) * 2019-09-13 2021-03-18 アスピレイション株式会社 電子認証における改ざん防止システム

Also Published As

Publication number Publication date
KR20200035443A (ko) 2020-04-03
EP3681097A1 (en) 2020-07-15
TWI678640B (zh) 2019-12-01
JP6718175B2 (ja) 2020-07-08
JP2019050480A (ja) 2019-03-28
CN111066281A (zh) 2020-04-24
EP3681097A4 (en) 2021-07-21
TW201918927A (zh) 2019-05-16
US20210144001A1 (en) 2021-05-13

Similar Documents

Publication Publication Date Title
CN112988764B (zh) 数据存储方法、装置、设备和存储介质
TWI678640B (zh) 用於將為了復原機密資訊之機密資訊復原可能值分散記憶之利用電腦執行之方法及電腦設備
US11893577B2 (en) Cryptographic key storage system and method
CN112789825B (zh) 用于转移对数字资源的访问的计算机实现的系统和方法
CN110915164A (zh) 基于可信执行环境中执行的智能合约操作处理区块链数据
JP7089303B2 (ja) 推論装置、処理システム、推論方法及び推論プログラム
WO2020238959A1 (zh) 基于区块高度实现动态加密的方法及装置
EP3531365A1 (en) Computer system, connection apparatus, and processing method using transaction
JP6909452B2 (ja) 情報処理方法、情報処理装置、プログラムならびに情報処理システム
WO2022068360A1 (zh) 基于共享根密钥的信息处理方法、装置、设备及介质
CN116361849A (zh) 一种加密数据库的备份数据加密、解密方法及装置
CN112347516A (zh) 基于区块链的资产证明方法及装置
CN110166234A (zh) 一种业务密钥创建与业务数据加密方法、装置及系统
JPWO2016132546A1 (ja) データ保管装置及びデータ処理方法及びデータ処理プログラム
CN114128209A (zh) 密钥交换系统、通信装置、密钥交换方法及程序
CN113906423A (zh) 身份验证程序、身份验证方法、用户终端和用户认证程序
CN114531224B (zh) 地址的生成方法、区块链信息的处理方法以及相关设备
JP2022053676A (ja) 情報処理システム及び情報処理方法
CN110599167A (zh) 基于标识符的钱包私钥管理方法及装置与系统和存储介质
CN121195472A (zh) 非托管备份与恢复
WO2024180903A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2020191552A (ja) シェア分散システムおよび方法
WO2025009223A1 (ja) 秘密鍵管理システム
US10909245B1 (en) Secure quarantine of potentially malicious content
JP2015207205A (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: 18854302

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20207006354

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018854302

Country of ref document: EP

Effective date: 20200408