WO2018235845A1 - 鍵交換システムおよび鍵交換方法 - Google Patents

鍵交換システムおよび鍵交換方法 Download PDF

Info

Publication number
WO2018235845A1
WO2018235845A1 PCT/JP2018/023380 JP2018023380W WO2018235845A1 WO 2018235845 A1 WO2018235845 A1 WO 2018235845A1 JP 2018023380 W JP2018023380 W JP 2018023380W WO 2018235845 A1 WO2018235845 A1 WO 2018235845A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
transaction
terminal
encryption
user
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/023380
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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to EP18820430.9A priority Critical patent/EP3644548B1/en
Priority to US16/621,000 priority patent/US11424913B2/en
Priority to JP2019525649A priority patent/JP6882705B2/ja
Publication of WO2018235845A1 publication Critical patent/WO2018235845A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/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
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/047Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
    • H04W12/0471Key exchange

Definitions

  • the present invention relates to a key exchange system and key exchange method having forward secrecy on a block chain.
  • a block chain is one in which transaction information (transactions) such as virtual currency between participants is put together in units called blocks.
  • a block chain functions as one huge ledger shared by participants in a peer to peer (P2P) network.
  • Non-Patent Document 1 transaction information (transaction) of virtual currency is expressed by a chain of digital signatures. Then, as shown in FIG. 9, the generated plurality of transactions are grouped into blocks by the block chain generation device under predetermined conditions. The new block is linked to the existing block chain in the P2P network. Then, the updated block chain is shared by each computer (participant's terminal).
  • the block chain generation device collects transactions not included in the block chain and includes the collected transaction and the hash value (256 bits) of the block (nth block) at the end of the current block chain. Generate a new block (the (n + 1) th block).
  • the block chain generation device applies the cryptographic hash function (SHA-256) to a new block (the (n + 1) th block), and the first few bits of the hash value are all "0". Search for the appropriate value to be
  • the block chain generation device broadcasts a new block (the (n + 1) th block) including the appropriate value by linking it to the end of the current block chain.
  • a block chain is built on the P2P network.
  • the block chain verification device verifies the broadcasted block chain and shares the verification result with other terminals.
  • Patent Document 1 discloses a technology applied to permission management of digital content.
  • a common key for decrypting the content is delivered to the user along with the usage permission information via the block chain.
  • the common key is secret information that the user does not want to know.
  • key exchange using public key encryption is performed via a block chain, and an encrypted common key is registered in the block chain.
  • secret information is encrypted with a user's public key and decrypted with a pair of secret keys. If a secret key used for decryption is leaked, all secret information using that secret key can be decrypted. That is, it is difficult to conceal the encrypted secret information safely for a long period of time by the method using simply the public key encryption.
  • An object of the present invention made in view of such circumstances is to provide a key exchange system and a key exchange method for securely concealing information for a long time when secret information is recorded on a block chain.
  • a key exchange system is a key exchange system including a first terminal and a second terminal interconnected via a network in which a block chain is constructed, the first terminal being a key exchange system
  • a license issuing unit for generating a first transaction including a first public key and a license issuance for the license request, a first key storage area for holding a first secret key, and the first key storage area
  • a first encryption that generates a common key using transaction-specific information that is at least one of a transaction, a second transaction, and a parameter of a specific block, a second public key, and the first secret key
  • the second terminal includes a license request unit that generates the second transaction including the second public key and the license request, and a second secret key Second to hold A second encryption / decryption unit that generates the common key using a storage area, the transaction specific information, the first public key, and the second secret key;
  • the encryption / decryption unit 1 encrypts secret information with the common key generated by the first encryption / de
  • a key exchange method is a key exchange method executed by a key exchange system including a first terminal and a second terminal interconnected with each other via a network in which a block chain is constructed.
  • a step of holding the first secret key by the first terminal, a step of holding the second secret key by the second terminal, and a second release of the second terminal Generating a second transaction including the key and the permission request; and the first terminal including the first transaction including the first public key and the issuance of the permission for the permission request.
  • Generating, transaction specific information which is at least one of the parameters of the first transaction, the second transaction, and the specific block, the second public key, and the first terminal.
  • a key exchange system and a key exchange method for securely concealing information for a long time when secret information is recorded on a block chain are provided.
  • FIG. 1 is a diagram illustrating the configuration of the key exchange system 5 according to the first embodiment.
  • the key exchange system 5 comprises a plurality of terminals (user A terminal 1, user B terminal 2 and other terminals 3).
  • the terminal is an information processing apparatus used by the user.
  • Each of the plurality of terminals may be, for example, a personal computer (PC) or a smartphone.
  • the plurality of terminals are connected in an autonomous distributed manner via a P2P network 4 (block chain network, also simply referred to as a network) in a mutually communicable manner.
  • the number of the plurality of terminals included in the key exchange system 5 shown in FIG. 1 is an example, and the present invention is not limited to this.
  • the key exchange system 5 may include two or more other terminals 3.
  • a program for realizing digital virtual currency transactions is installed in each of a plurality of terminals constituting the key exchange system 5.
  • Each terminal acquires block chains and transactions via the P2P network 4. Also, multiple terminals monitor transaction fraud and share only one block chain.
  • the transaction handled by the key exchange system 5 includes the evidence data of the transaction in which the sender and the destination are specified and the sender's digital signature is attached.
  • Each of the plurality of terminals constituting the key exchange system 5 functions as a block chain generation device, a block chain verification device, or a transaction generation device according to the role in each transaction of digital virtual currency.
  • the block chain generation apparatus connects a new block to an existing block chain in which blocks including a plurality of transactions are connected to generate a new block chain.
  • the new block contains the transaction that occurred after the creation of the existing block chain.
  • the new block chain generated by the block chain generation device is shared with other terminals via the P2P network 4. Thus, a block chain is built on the P2P network 4.
  • the block chain verification device verifies the block chain generated by the block chain generation device.
  • the results verified by the block chain verification device are shared with other terminals via the P2P network 4.
  • the transaction generator generates a transaction associated with a digital virtual currency transaction.
  • the transaction generated by the transaction generator is shared with other terminals via the P2P network 4.
  • Each of the plurality of terminals (user A terminal 1, user B terminal 2 and other terminals 3) includes an encryption processing unit 10, a block chain storage unit 30, a block chain control unit 40, and a transaction issuing unit 50. Equipped with
  • the encryption processing unit 10 executes, for example, processing related to encryption / decryption and the like. Details of the encryption processing unit 10 will be described later.
  • the other terminals 3 are not targets for sharing secret information S. Therefore, in FIG. 1, the notations of the encryption processing units 10 of the other terminals 3 are omitted.
  • the block chain storage unit 30 is a storage device that stores block chains shared by a plurality of terminals as described above.
  • the block chain storage unit 30 may be configured of at least one of a semiconductor storage device and a magnetic storage device.
  • the block chain control unit 40 executes control related to storage of the block chain.
  • the block chain control unit 40 has a role of holding the latest block chain in the terminal (store in the block chain storage unit 30) in cooperation with other terminals in an autonomous distributed manner.
  • the block chain control unit 40 may read the block chain from the block chain storage unit 30 in response to a request from the encryption processing unit 10, for example, and may output the block chain to the encryption processing unit 10.
  • the transaction issuing unit 50 generates a transaction associated with a transaction, for example, when the terminal functions as a transaction generation device. Also, the transaction issuing unit 50 broadcasts the generated transaction to another terminal via the P2P network 4.
  • FIG. 2 is a diagram illustrating the detailed configuration of the encryption processing unit 10.
  • the encryption processing unit 10 includes a permission request unit 11, a permission issuance unit 12, an encryption / decryption unit 13, a key management unit 14, and a key storage area 15.
  • the permission request unit 11 generates a transaction including the public key and the permission request.
  • the public key is generated by the key management unit 14.
  • the permission request unit 11 outputs the generated transaction to the transaction issuing unit 50.
  • the transaction generated by the permission request unit 11 is broadcast by the transaction issuing unit 50 to another terminal via the P2P network 4.
  • the license issuance unit 12 generates a transaction including the public key and the license issuance.
  • the permission issuing unit 12 outputs the generated transaction to the transaction issuing unit 50.
  • the transaction generated by the permission issuing unit 12 is broadcast by the transaction issuing unit 50 to another terminal via the P2P network 4.
  • the encryption / decryption unit 13 executes processing related to encryption / decryption.
  • the encryption / decryption unit 13 acquires from the P2P network 4 the public key of the other party sharing the secret information S. Further, the encryption / decryption unit 13 calculates a session key (a disposable encryption key which is valid only for a certain period of time) using its own secret key or the like stored in the key storage area 15. Also, the encryption / decryption unit 13 encrypts the secret information S using the calculated session key. Also, the encryption / decryption unit 13 decrypts the encrypted secret information S using the session key.
  • a session key a disposable encryption key which is valid only for a certain period of time
  • the encryption / decryption unit 13 may use the session key stored in the key storage area 15 or may calculate the session key again.
  • the encrypted secret information S can be registered in the block chain by being included in the transaction in a predetermined method.
  • the key management unit 14 executes processing relating to the public key and the secret key.
  • the key management unit 14 executes generation, reference and deletion of the public key and the secret key.
  • the key management unit 14 is used by other modules (for example, the permission request unit 11, the permission issuance unit 12, and the encryption / decryption unit 13).
  • an ECDH (Elliptic Curve Diffie-Hellman) key exchange method is used to generate a public key and a secret key.
  • the key storage area 15 stores (holds) the secret key generated by the key management unit 14. In addition, the key storage area 15 may temporarily store the session key calculated by the encryption / decryption unit 13.
  • Key exchange method A procedure in which the user A and the user B share the secret information S on the block chain of the key exchange system 5 (a key exchange method in the key exchange system 5 according to the present embodiment) will be described below.
  • the user A is a user of the user A terminal 1 (first terminal).
  • the user B is a user of the user B terminal 2 (second terminal).
  • FIG. 3 is a sequence diagram for explaining the key exchange method according to the present embodiment.
  • the user A in FIG. 3 means the user A terminal 1. Further, user B in FIG. 3 means user B terminal 2.
  • the secret information S is private information generated by the user A.
  • FIG. 3 shows a sequence of key exchange in the case where the user B requests permission from the user A regarding browsing (or use) of the secret information S and the user A approves and secret information S is disclosed only to the user B.
  • all communication is performed by a transaction issued by each user.
  • the transfer of data such as the public key is performed via a block chain.
  • ECDH key exchange is adopted in the present embodiment, and the user A and the user B generate keys using the same elliptic curve.
  • a program for generating a key using one specific elliptic curve may be installed in the user A terminal 1 and the user B terminal 2.
  • the program installed in common to the user A terminal 1 and the user B terminal 2 functions as the encryption processing unit 10 by being executed by the processor.
  • the key management unit 14 of the user B terminal 2 generates a secret key esk b (second secret key) and a public key EPK b (second public key) using elliptic curve cryptography (see FIG. 1)). Also, the key storage area 15 (second key storage area) of the user B terminal 2 holds the generated secret key esk b .
  • the user B terminal 2 performs a transaction T b (second transaction) including a permission request (that is, information indicating request for permission such as viewing of the secret information S) and a public key EPK b for ECDH key exchange. It generates and broadcasts via the P2P network 4 ((2) in FIG. 3). Specifically, the transaction Tb is generated by the permission request unit 11 and output to the transaction issuing unit 50. The transaction T b is broadcasted by the transaction issuing unit 50.
  • the permission request may include, for example, an identifier or a flag value for specifying the secret information S.
  • the block including a transaction T b public key EPK b is stored (block N-1 in FIG. 3) is added to the block chain.
  • another terminal 3 functioning as a block chain generation device may generate a new block chain.
  • the user A terminal 1 confirms the grant request included in the transaction T b . Further, the user A terminal 1 acquires the public key EPK b ((3) in FIG. 3).
  • the public key EPK b of the user B is shared with the user A by the processes (1) to (3) of FIG.
  • the key management unit 14 of the user A terminal 1 generates a private key using elliptic curve cryptography ESK a (first secret key) and a public key EPK a (first public key) (in FIG. 3 (4)). Also, the key storage area 15 (first key storage area) of the user A terminal 1 holds the generated secret key esk a .
  • the user A terminal 1 performs a transaction T including a license issuance (that is, information indicating that browsing of the secret information S has been approved in response to a license request and the license has been issued) and a public key EPK a for ECDH key exchange.
  • a (first transaction) is generated and broadcast via the P2P network 4 ((5) in FIG. 3).
  • transaction T a is generated and output by license issuing unit 12 to the transaction sending unit 50.
  • Transaction T a is broadcast by the transaction sending unit 50.
  • the license issuance may include, for example, an identifier or a flag value for specifying the license request from the user B.
  • block (Block N of Fig. 3) is added to the block chain that contains the transaction T a public key EPK a is stored.
  • another terminal 3 functioning as a block chain generation device may generate a new block chain.
  • the user B terminal 2 checks the license issuance contained in transaction T a. Further, the user B terminal 2 acquires the public key EPK a ((6) in FIG. 3).
  • the public key EPK a of the user A is shared with the user B by the processes of (4) to (6) in FIG.
  • the value ⁇ calculated by the other party's public key and its own private key becomes the same value for the user A and the user B. Therefore, the user A and the user B can generate the same key (common key) from the value ⁇ using the key derivation function KDF negotiated in advance.
  • the user A and the user B can encrypt / decrypt the secret information S by using the common key obtained by the key derivation function KDF, for example, by the common key cryptosystem such as AES-GCM.
  • the common key is calculated by giving values to the parameters of the key derivation function KDF.
  • the common key is calculated using only the value ⁇ as a parameter of the key derivation function KDF
  • the secret key of the user A or the secret key of the user B
  • all encrypted with the common key Information may be deciphered. Therefore, the “related transaction” recognized by both the user A and the user B and the “parameter of the related block (specific block)” are further used as parameters of the key derivation function KDF.
  • the common key calculated by the key derivation function KDF becomes a session key, that is, a disposable encryption key that is valid only for a certain period of time.
  • the session key k is represented by the following equation (B).
  • k KDF ( ⁇
  • the value ⁇ of equation (B) is calculated by the above equation (A). Further, as shown in the formula (B), a transaction T b including a permission request and a transaction T a including a license issuance are used as “related transactions”. In addition, as shown in the equation (B), the number N of the block in which the transaction Ta is stored is used as the “parameter of the related block”.
  • the transactions T a and T b and the block number N are values determined for each transaction. That is, the transactions T a and T b and the block number N are information unique to each transaction on the P2P network 4. Therefore, the session key calculated using the transactions T a and T b and the block number N is a key unique to each transaction.
  • the encryption / decryption unit 13 (first encryption / decryption unit) of the user A terminal 1 calculates the value ⁇ from the secret key esk a and the public key EPK b according to formula (A). Then, the user A terminal 1 generates k which is a session key (and a common key) according to the equation (B) ((8) in FIG. 3, first common key generation step).
  • the user A terminal 1 broadcasts a transaction including secret information S encrypted using the session key k to another terminal via the P2P network 4 ((9) in FIG. 3).
  • the encryption / decryption unit 13 encrypts the secret information S using the session key.
  • the encrypted secret information S is included in the transaction in a predetermined method and output to the transaction issuing unit 50.
  • the transaction issuing unit 50 broadcasts the generated transaction to another terminal via the P2P network 4.
  • the encryption / decryption unit 13 (second encryption / decryption unit) of the user B terminal 2 calculates the value ⁇ from the secret key esk b and the public key EPK a according to formula (A). Then, the user B terminal 2 generates k which is a session key (and a common key) according to the equation (B) ((7) in FIG. 3, second common key generation step).
  • the encryption / decryption unit 13 of the user B terminal 2 decrypts the encrypted secret information S acquired via the P2P network 4 using k as a session key (see FIG. 10)).
  • the secret information S is encrypted / decrypted by the common key k according to the above formulas (A) and (B).
  • the common key k is calculated using “related transaction” and “related block parameter”, which are values determined for each transaction. Therefore, k is a unique session key for each transaction. Therefore, the key exchange system according to the present embodiment (and the key exchange method on the system) has forward secrecy, and when secret information is recorded on the block chain, it is possible to securely conceal over a long period of time can do.
  • secret information S is shared by two parties (user A and user B).
  • the secret information S is expanded to be shared by a group of many people.
  • users belonging to a group use a common key (group common key) that is used as a whole.
  • the group common key is generated by a root user having management authority among the users belonging to the group.
  • a user belonging to a group encrypts shared information with a group common key, and places the information in a place where another user belonging to the group can obtain it (eg, registers in a block chain).
  • the user belonging to the group decrypts the encrypted shared information with the group common key.
  • the shared information is one of the information to be concealed except for the users of the group.
  • secret information S encrypted using the session key is transmitted and received between the two parties.
  • the secret information S between two parties may be, for example, the information itself or a password or an encryption key for accessing the information.
  • the encrypted group common key is transmitted and received between the root user and each of the “users other than the root user belonging to the group (client users)”. That is, in the present embodiment, the secret information S between the two parties is a group common key. Further, in the present embodiment, the transmission and reception of the group common key between the two parties is performed as many as the number of client users.
  • the session key between the root user U 1 and the client user U d is k d (d is an integer of 2 or more).
  • the group common key is k.
  • the configuration of the key exchange system 5 according to the present embodiment is similar to the configuration of the first embodiment.
  • the user A terminal 1 of FIG. 1 corresponds to the terminal of the root user U 1 .
  • the user B terminal 2 of FIG. 1 corresponds to the terminal of the client user U d.
  • the key exchange system 5 according to the present embodiment can be configured to include a plurality of the user B terminals 2 of FIG.
  • the encryption processing unit 10 of the user A terminal 1 has the same configuration as the encryption processing unit 10 of the user B terminal 2.
  • the root user U 1 to the management of production and the like of the group common key. Therefore, the root user U 1 of the encryption processing unit 10a of the terminal, configuration and encryption processing unit 10b of the terminal of the client user U d is different.
  • FIG. 4 is a diagram illustrating the configuration of the encryption processing unit 10a for the root user U 1.
  • the encryption processing unit 10a includes a permission request unit 11, a permission issuance unit 12, a session key encryption unit 13a, a key management unit 14, a key storage area 15, a group common key encryption / decryption unit 16, and a group A common key management unit 17 and a group common key storage area 18 are provided.
  • the description of the permission request unit 11, the permission issuing unit 12, the key management unit 14, and the key storage area 15 is the same as that of the first embodiment (see FIG. 2), and thus the description thereof is omitted.
  • the session key encryption unit 13 a acquires the public key of the client user U d from the P2P network 4. Also, the session key encryption unit 13a, using a secret key or the like of its own that is stored in the key storage area 15, and calculates a session key between the root user U 1 and the client user U d. Also, the session key encryption unit 13a encrypts the group common key acquired via the group common key management unit 17 using the calculated session key.
  • the encrypted group common key can be registered in the block chain by being included in the transaction in a predetermined method.
  • the group common key encryption / decryption unit 16 encrypts shared information using the group common key stored in the group common key storage area 18.
  • the encrypted shared information can be registered in the block chain by being included in the transaction in a predetermined manner. Further, the group common key encryption / decryption unit 16 decodes the encrypted shared information using the group common key.
  • the group common key management unit 17 executes processing relating to the group common key.
  • the group common key management unit 17 executes generation, reference and deletion of a group common key.
  • group-wide key management unit 17 to delete or the like of the client user U d, to update the group common key.
  • the group common key management unit 17 executes the association with the client user U d added to the group common key, to the group common key storage area 18. store.
  • the group common key management unit 17 discards the group common key stored in the group common key storage area 18 until then. Then, the group common key management unit 17 newly generates a group common key.
  • the group shared key management unit 17 when deletion of a client user U d of (withdrawal from the group), in order to prevent unauthorized use of the withdrawal the client user U d, the group shared key management unit 17 generates a new group common key.
  • the group common key storage area 18 stores (holds) the group common key generated by the group common key management unit 17.
  • FIG. 5 is a diagram illustrating the configuration of the encryption processing unit 10b for the client user U d.
  • the encryption processing unit 10 b includes a permission request unit 11, a permission issuing unit 12, a session key decryption unit 13 b, a key management unit 14, a key storage area 15, and a group common key encryption / decryption unit 16. Equipped with Here, the description of the permission request unit 11, the permission issuing unit 12, the key management unit 14, and the key storage area 15 is the same as that of the first embodiment (see FIG. 2), and thus the description thereof is omitted.
  • the session key decryption unit 13 b acquires the public key of the root user U 1 from the P2P network 4. Also, the session key decryption unit 13 b calculates a session key between the root user U 1 and the client user U d by using its own secret key stored in the key storage area 15. The session key decryption unit 13 b also decrypts the encrypted group common key acquired from the block chain using the calculated session key.
  • the group common key encryption / decryption unit 16 encrypts the shared information using the group common key acquired by the session key decryption unit 13 b decrypting.
  • the encrypted shared information can be registered in the block chain by being included in the transaction in a predetermined manner. Further, the group common key encryption / decryption unit 16 decodes the encrypted shared information using the group common key.
  • the group common key encryption / decryption unit 16 of the encryption processing unit 10b has the same configuration and function as the group common key encryption / decryption unit 16 of the encryption processing unit 10a except that the method of acquiring the group common key is different. Prepare.
  • the client user U d is, the procedure for sharing a group symmetric key k on the block chain from the root user U 1.
  • the root user U 1 is a user of the user A terminal 1.
  • the client user U d is a user of the user B terminal 2.
  • each client user U d will use their B terminals 2.
  • FIG. 6 is a sequence diagram for explaining the key exchange method according to the present embodiment.
  • FIG. 7 is a sequence diagram showing the continuation of FIG.
  • the group common key management unit 17 of the user A terminal 1 generates a group common key k ((1) in FIG. 6).
  • the group common key k is one of the information to be concealed except for the users of the group (the root user U 1 and the client user U d ).
  • Root user U 1 is performed ECDH key exchange between the client user U d, shares a session key k d (in FIG. 6 (2)).
  • Session key k d is different for each client user U d. Then, the root user U 1 encrypts the group shared key k with the session key k d, to distribute to the client user U d ((3 in FIG. 7)).
  • the client user U d decrypts it using the session key k d to obtain the group common key k ((4) in FIG. 7).
  • Root user U 1 is for each client user U d, key exchange method using a session key k d (in FIG. 6 (2), (3 in FIG. 7) and (4)) executes.
  • Key exchange method using a session key k d corresponds to the key exchange method of the first embodiment in which the information S Secret Group common key k. That is, the details of the key exchange method using a session key k d, the description thereof is omitted are the same as the first embodiment.
  • the root user U 1 is for each of the four client user U d, performs key exchange (sharing group symmetric key k) sequentially.
  • the key exchange system and the key exchange method for safely concealing for a long time are realized Be done.
  • the second embodiment it is possible to share secret information S in a group of many people safely over a long period of time.
  • ECDH key exchange scheme was used in generating keys.
  • DH key exchange method RSA key exchange method, MQV key exchange method, HMQV key exchange method, or the like may be used.
  • the transaction specific information may be that only a part (at least one) of the parameters of the transactions T a and T b and the associated block may be used.
  • values different from the transactions T a and T b and the block number N may be used as the transaction specific information.
  • the block number N ⁇ 1 in which the transaction T b is stored may be used.
  • not the block number N or N-1 but the block number N or N-1 block size may be used as the "related block parameter”.
  • relevant transaction may be used is different transactions with transaction T a and T b.
  • data of the entire transaction may be used, or part of data of the transaction (for example, part of data including at least a digital signature) may be used.
  • the hardware capable of executing program instructions is not limited to a personal computer, a smartphone, etc.
  • a telephone, tablet terminal, game console, electronic note pad, laptop computer, Global Positioning System (GPS) receiver or other programmable data processing device may be included.
  • GPS Global Positioning System
  • the one or more processors include, for example, a microprocessor, a CPU (central processing unit), an application specific integrated circuit (ASIC), a digital signal processor (DSP), a programmable logic device (PLD), a field programmable gate array (FPGA) or A combination of any of these is included.
  • a microprocessor central processing unit
  • ASIC application specific integrated circuit
  • DSP digital signal processor
  • PLD programmable logic device
  • FPGA field programmable gate array

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

秘密の情報をブロックチェーン上に記録する際に、長期に渡って安全に秘匿する鍵交換システムおよび鍵交換方法を提供する。鍵交換システム5であって、第1の端末1が、第1の公開鍵を含めた第1のトランザクションを生成する許諾発行部と、第1の秘密鍵を保持する第1の鍵保管領域と、取引固有情報と、第2の公開鍵と、第1の秘密鍵と、を用いて共通鍵を生成する第1の暗号・復号化部と、を備え、第2の端末2が、第2の公開鍵を含めた第2のトランザクションを生成する許諾要求部と、第2の秘密鍵を保持する第2の鍵保管領域と、取引固有情報と、第1の公開鍵と、第2の秘密鍵と、を用いて共通鍵を生成する第2の暗号・復号化部と、を備え、第1の暗号・復号化部は、共通鍵で秘密の情報を暗号化し、第2の暗号・復号化部は、共通鍵で暗号化された秘密の情報を復号化する。

Description

鍵交換システムおよび鍵交換方法
 本発明は、ブロックチェーン上で前方秘匿性を有する鍵交換システムおよび鍵交換方法に関する。
 近年、ビットコイン(登録商標)などのデジタル仮想通貨が普及しつつある。このような仮想通貨では、中央集権的な管理を必要とせずに、信頼性を担保可能な仕組みが導入されている。ビットコイン(登録商標)などの仮想通貨において、ブロックチェーンと呼ばれる技術が用いられている。ブロックチェーン技術において、参加者間でやり取りされる情報の信頼性は、参加者全体で形成されるネットワーク内での合意形成のプロセスによって担保され、かつ、改ざんまたは二重使用等の不正を系全体で防ぐことで、ブロックチェーンの健全性が保たれる(非特許文献1)。ブロックチェーンは、参加者間の仮想通貨等の取引情報(トランザクション)がブロックと呼ばれる単位でまとめられたものである。ブロックチェーンは、P2P(Peer To Peer)ネットワークにおいて参加者が共有する一つの巨大な元帳として機能する。
 非特許文献1によれば、図8に示すように、デジタル署名の連鎖により仮想通貨の取引情報(トランザクション)が表現される。そして、図9に示すように、生成された複数のトランザクションは、所定条件下で、ブロックチェーン生成装置によってブロックにまとめられる。新たなブロックは、P2Pネットワークにおいて、既存のブロックチェーンに連結される。そして、更新されたブロックチェーンは各コンピュータ(参加者の端末)で共有される。ここで、ブロックチェーン生成装置は、ブロックチェーンに含まれていないトランザクションを収集して、収集したトランザクションと、現在のブロックチェーンの末尾のブロック(第nのブロック)のハッシュ値(256ビット)を含む新たなブロック(第n+1のブロック)を生成する。また、ブロックチェーン生成装置は、新たなブロック(第n+1のブロック)に対して、暗号学的ハッシュ関数(SHA-256)を適用した場合のハッシュ値の先頭のいくつかのビットがすべて“0”になるような適切値を探索する。ブロックチェーン生成装置は、適切値も含む新たなブロック(第n+1のブロック)を、現在のブロックチェーンの末尾に連結して、ブロードキャストする。このように、P2Pネットワーク上でブロックチェーンが構築される。その後、ブロックチェーン検証装置は、ブロードキャストされたブロックチェーンを検証して、その検証結果を他の端末と共有する。
 ビットコイン(登録商標)に代表されるような公開を前提としたブロックチェーンにおいては、登録される取引情報はすべて公開される。ここに秘密の情報を含める場合には、当該情報を暗号化してからトランザクションに格納することが求められる。例えば、特許文献1にはデジタルコンテンツの許諾管理に適用する技術が開示されている。特許文献1が開示する技術では、暗号化されたデジタルコンテンツを利用する際に、ブロックチェーンを介して利用の許諾情報と合わせて、コンテンツを復号する共通鍵を利用者に受け渡す。ここで、共通鍵は利用者以外には知られたくない秘密の情報である。特許文献1が開示する技術では、ブロックチェーンを介して公開鍵暗号を用いた鍵交換を実施し、暗号化された共通鍵をブロックチェーンに登録する。
特開2017-50763号公報
斉藤賢爾、"ビットコイン-人間不在のデジタル巨石貨幣"、WI  DEテクニカルレポート
 ブロックチェーンに登録されたトランザクションは、すべての参加者に共有され、ブロックチェーン内で永続的に蓄積される。ビットコイン(登録商標)に代表されるような一般的なブロックチェーンでは、一度登録されたトランザクションの内容は、後から取り消したり、改ざんしたりすることが困難である。そのため、ある利用者によって暗号化され、トランザクションに含められた秘密の情報は、過去に遡って誰でも取得することができる。
 例えば特許文献1が開示する技術では、秘密の情報は、利用者の公開鍵で暗号化され、ペアとなる秘密鍵で復号される。仮に復号に使う秘密鍵が流出した場合、その秘密鍵を用いた秘密の情報が全て復号可能となる。即ち、単純に公開鍵暗号を用いた方法では、暗号化された秘密の情報を長期に渡って安全に秘匿することは困難である。
 かかる事情に鑑みてなされた本発明の目的は、秘密の情報をブロックチェーン上に記録する際に、長期に渡って安全に秘匿する鍵交換システムおよび鍵交換方法を提供することにある。
 一実施形態に係る鍵交換システムは、ブロックチェーンが構築されるネットワークを介して相互に接続された、第1の端末および第2の端末を含む鍵交換システムであって、前記第1の端末は、第1の公開鍵と、許諾要求に対する許諾発行と、を含めた第1のトランザクションを生成する許諾発行部と、第1の秘密鍵を保持する第1の鍵保管領域と、前記第1のトランザクション、第2のトランザクションおよび特定ブロックのパラメータの少なくとも1つである取引固有情報と、第2の公開鍵と、前記第1の秘密鍵と、を用いて共通鍵を生成する第1の暗号・復号化部と、を備え、前記第2の端末は、前記第2の公開鍵と、前記許諾要求と、を含めた前記第2のトランザクションを生成する許諾要求部と、第2の秘密鍵を保持する第2の鍵保管領域と、前記取引固有情報と、前記第1の公開鍵と、前記第2の秘密鍵と、を用いて前記共通鍵を生成する第2の暗号・復号化部と、を備え、前記第1の暗号・復号化部は、前記第1の暗号・復号化部が生成した前記共通鍵で秘密の情報を暗号化し、前記第2の暗号・復号化部は、前記ネットワークを介して取得した、暗号化された前記秘密の情報を、前記第2の暗号・復号化部が生成した前記共通鍵で復号化する。
 また、一実施形態に係る鍵交換方法は、ブロックチェーンが構築されるネットワークを介して相互に接続された、第1の端末および第2の端末を含む鍵交換システムで実行される鍵交換方法であって、前記第1の端末が、第1の秘密鍵を保持するステップと、前記第2の端末が、第2の秘密鍵を保持するステップと、前記第2の端末が、第2の公開鍵と、許諾要求と、を含めた第2のトランザクションを生成するステップと、前記第1の端末が、第1の公開鍵と、前記許諾要求に対する許諾発行と、を含めた第1のトランザクションを生成するステップと、前記第1の端末が、前記第1のトランザクション、前記第2のトランザクションおよび特定ブロックのパラメータの少なくとも1つである取引固有情報と、第2の公開鍵と、前記第1の秘密鍵と、を用いて共通鍵を生成する第1の共通鍵生成ステップと、前記第1の端末が、前記第1の共通鍵生成ステップで生成された前記共通鍵で秘密の情報を暗号化するステップと、前記第2の端末が、前記取引固有情報と、前記第1の公開鍵と、前記第2の秘密鍵と、を用いて前記共通鍵を生成する第2の共通鍵生成ステップと、前記第2の端末が、前記ネットワークを介して取得した、暗号化された前記秘密の情報を、前記第2の共通鍵生成ステップで生成された前記共通鍵で復号化するステップと、を含む。
 本発明によれば、秘密の情報をブロックチェーン上に記録する際に、長期に渡って安全に秘匿する鍵交換システムおよび鍵交換方法が提供される。
一実施形態に係る鍵交換システムの構成を例示する図である。 暗号化処理部の構成を例示する図である。 一実施形態に係る鍵交換方法を説明するためのシーケンス図である。 ルートユーザ用の暗号化処理部の構成を例示する図である。 クライアントユーザ用の暗号化処理部の構成を例示する図である。 別の一実施形態に係る鍵交換方法を説明するためのシーケンス図である。 図6の続きのシーケンス図である。 一般的な仮想通貨における署名を説明する図である。 一般的な仮想通貨におけるブロックチェーンを説明する図である。
[第1実施形態]
(鍵交換システム)
 図1は第1実施形態に係る鍵交換システム5の構成を例示する図である。鍵交換システム5は、複数の端末(ユーザA端末1、ユーザB端末2およびその他の端末3)を備える。端末はユーザによって使用される情報処理装置である。複数の端末のそれぞれは、例えばパーソナルコンピュータ(PC:Personal Computer)またはスマートフォン等であってもよい。複数の端末は、相互に通信可能に、P2Pネットワーク4(ブロックチェーンネットワーク、単にネットワークともいう)を介して自律分散的に接続されている。なお、図1に示す鍵交換システム5が備える複数の端末の数は一例であって、これに限るものではない。例えば、鍵交換システム5は、2つ以上のその他の端末3を備えてもよい。
 鍵交換システム5を構成する複数の端末のそれぞれに、デジタル仮想通貨の取引を実現するためのプログラムがインストールされる。各端末は、P2Pネットワーク4を介して、ブロックチェーンおよびトランザクションを取得する。また、複数の端末は、取引の不正を監視し、唯一のブロックチェーンを共有する。ここで、鍵交換システム5で扱われるトランザクションは、送り手と宛先とが明記され、送り手の電子署名がついた取引の証拠データを含む。
 鍵交換システム5を構成する複数の端末のそれぞれは、デジタル仮想通貨の各取引で、役割に応じてブロックチェーン生成装置、ブロックチェーン検証装置、または、トランザクション生成装置として機能する。
 ブロックチェーン生成装置は、複数のトランザクションを含むブロックを連結した既存のブロックチェーンに、新たなブロックを連結して、新たなブロックチェーンを生成する。新たなブロックは、既存のブロックチェーンの生成後に発生したトランザクションを含む。ブロックチェーン生成装置が生成した新たなブロックチェーンは、P2Pネットワーク4を介して、他の端末に共有される。このように、ブロックチェーンはP2Pネットワーク4上で構築される。
 ブロックチェーン検証装置は、ブロックチェーン生成装置が生成したブロックチェーンを検証する。ブロックチェーン検証装置が検証した結果は、P2Pネットワーク4を介して、他の端末に共有される。
 トランザクション生成装置は、デジタル仮想通貨の取引に伴うトランザクションを生成する。トランザクション生成装置が生成したトランザクションは、P2Pネットワーク4を介して、他の端末に共有される。
 複数の端末(ユーザA端末1、ユーザB端末2およびその他の端末3)のそれぞれは、暗号化処理部10と、ブロックチェーン記憶部30と、ブロックチェーン制御部40と、トランザクション発行部50と、を備える。
 暗号化処理部10は例えば暗号・復号化等に関する処理を実行する。暗号化処理部10の詳細については後述する。ここで、以下の説明において、その他の端末3は秘密の情報Sを共有する対象となっていない。そのため、図1において、その他の端末3の暗号化処理部10の表記は省略されている。
 ブロックチェーン記憶部30は、上記のように複数の端末で共有されるブロックチェーンを記憶する記憶装置である。例えば、ブロックチェーン記憶部30は、半導体記憶デバイスおよび磁気記憶デバイスの少なくとも一方で構成されてもよい。
 ブロックチェーン制御部40は、ブロックチェーンの記憶に関する制御を実行する。ブロックチェーン制御部40は、特に、他の端末と自律分散的に協調して、最新のブロックチェーンを端末内に保持する(ブロックチェーン記憶部30に記憶させる)役割を有する。また、ブロックチェーン制御部40は、例えば暗号化処理部10からの要求に応じてブロックチェーン記憶部30からブロックチェーンを読み出して、暗号化処理部10に出力してもよい。
 トランザクション発行部50は、端末がトランザクション生成装置として機能する場合等に、取引に伴うトランザクションを生成する。また、トランザクション発行部50は、生成したトランザクションを、P2Pネットワーク4を介して他の端末にブロードキャストする。
 図2は暗号化処理部10の詳細な構成を例示する図である。暗号化処理部10は、許諾要求部11と、許諾発行部12と、暗号・復号化部13と、鍵管理部14と、鍵保管領域15と、を備える。
 許諾要求部11は、公開鍵と、許諾要求と、を含めたトランザクションを生成する。ここで、公開鍵は鍵管理部14によって生成される。許諾要求部11は、生成したトランザクションをトランザクション発行部50に出力する。許諾要求部11が生成したトランザクションは、トランザクション発行部50によって、P2Pネットワーク4を介して他の端末にブロードキャストされる。
 許諾発行部12は、公開鍵と、許諾発行と、を含めたトランザクションを生成する。許諾発行部12は、生成したトランザクションをトランザクション発行部50に出力する。許諾発行部12が生成したトランザクションは、トランザクション発行部50によって、P2Pネットワーク4を介して他の端末にブロードキャストされる。
 暗号・復号化部13は、暗号・復号化に関する処理を実行する。暗号・復号化部13は、P2Pネットワーク4から秘密の情報Sを共有する相手の公開鍵を取得する。また、暗号・復号化部13は、鍵保管領域15に保管した自身の秘密鍵等を用いてセッション鍵(ある時間だけ有効な使い捨ての暗号鍵)を算出する。また、暗号・復号化部13は、算出したセッション鍵を用いて、秘密の情報Sを暗号化する。また、暗号・復号化部13は暗号化された秘密の情報Sを、セッション鍵を用いて復号化する。ここで、復号化の際には、暗号・復号化部13は鍵保管領域15に保管したセッション鍵を用いてもよいし、再度セッション鍵を算出してもよい。ここで、暗号化された秘密の情報Sは、所定の方法でトランザクションに内包されることによって、ブロックチェーンへの登録が可能になる。
 鍵管理部14は、公開鍵および秘密鍵に関する処理を実行する。鍵管理部14は、公開鍵および秘密鍵の生成、参照および削除を実行する。鍵管理部14は、他のモジュール(例えば許諾要求部11、許諾発行部12および暗号・復号化部13)によって利用される。ここで、本実施形態において、公開鍵および秘密鍵の生成にはECDH(Elliptic Curve Diffie-Hellman)鍵交換方式が用いられる。
 鍵保管領域15は、鍵管理部14が生成した秘密鍵を保管(保持)する。また、鍵保管領域15は、暗号・復号化部13によって算出されたセッション鍵を一時的に保管してもよい。
(鍵交換方法)
 以下に、ユーザAとユーザBとが、鍵交換システム5のブロックチェーン上で秘密の情報Sを共有する手順(本実施形態に係る鍵交換システム5における鍵交換方法)について説明する。ここで、ユーザAはユーザA端末1(第1の端末)の使用者である。また、ユーザBはユーザB端末2(第2の端末)の使用者である。
 図3は、本実施形態に係る鍵交換方法を説明するためのシーケンス図である。図3のユーザAはユーザA端末1を意味する。また、図3のユーザBはユーザB端末2を意味する。
 この例で、秘密の情報Sは、ユーザAによって生成された非公開の情報である。図3は、ユーザBが秘密の情報Sの閲覧(または使用)に関してユーザAに許諾を要求して、ユーザAが承認してユーザBのみに秘密の情報Sを公開する場合の鍵交換のシーケンスを示す。ここで、全ての通信は各ユーザが発行するトランザクションによって行われる。また、公開鍵等のデータの受け渡しはブロックチェーンを介して行われる。また、上記の通り、本実施形態ではECDH鍵交換が採用されており、ユーザAおよびユーザBは同一の楕円曲線を用いて鍵を生成する。例えば、特定の一つの楕円曲線を用いて鍵を生成するプログラムがユーザA端末1およびユーザB端末2にインストールされていてもよい。このとき、ユーザA端末1およびユーザB端末2に共通にインストールされた当該プログラムは、プロセッサによって実行されることで暗号化処理部10として機能する。
 まず、ユーザB端末2の鍵管理部14は、楕円曲線暗号を用いた秘密鍵esk(第2の秘密鍵)および公開鍵EPK(第2の公開鍵)を生成する(図3の(1))。また、ユーザB端末2の鍵保管領域15(第2の鍵保管領域)は、生成された秘密鍵eskを保持する。
 ユーザB端末2は、許諾要求(すなわち、秘密の情報Sの閲覧等の許諾を要求することを示す情報)およびECDH鍵交換用の公開鍵EPKを含むトランザクションT(第2のトランザクション)を生成して、P2Pネットワーク4を介してブロードキャストする(図3の(2))。詳細には、トランザクションTは許諾要求部11によって生成されてトランザクション発行部50に出力される。トランザクションTはトランザクション発行部50によってブロードキャストされる。ここで、許諾要求は、例えば秘密の情報Sを特定するための識別子またはフラグ値等を含んでいてもよい。
 P2Pネットワーク4では、新たなブロックチェーンを生成するプロセスによって、公開鍵EPKが格納されたトランザクションTを含むブロック(図3のブロックN-1)がブロックチェーンに追加される。例えば、ブロックチェーン生成装置として機能するその他の端末3が新たなブロックチェーンを生成してもよい。トランザクションTを含むブロックがブロックチェーンに追加された後に、ユーザA端末1はトランザクションTに含まれる許諾要求を確認する。また、ユーザA端末1は公開鍵EPKを取得する(図3の(3))。図3の(1)~(3)のプロセスによって、ユーザBの公開鍵EPKがユーザAに共有される。
 次に、ユーザA端末1の鍵管理部14は、楕円曲線暗号を用いた秘密鍵esk(第1の秘密鍵)および公開鍵EPK(第1の公開鍵)を生成する(図3の(4))。また、ユーザA端末1の鍵保管領域15(第1の鍵保管領域)は、生成された秘密鍵eskを保持する。
 ユーザA端末1は、許諾発行(すなわち、許諾要求に対して、秘密の情報Sの閲覧等を承認し許諾を発行したことを示す情報)およびECDH鍵交換用の公開鍵EPKを含むトランザクションT(第1のトランザクション)を生成して、P2Pネットワーク4を介してブロードキャストする(図3の(5))。詳細には、トランザクションTは許諾発行部12によって生成されてトランザクション発行部50に出力される。トランザクションTはトランザクション発行部50によってブロードキャストされる。ここで、許諾発行は、例えばユーザBからの許諾要求を特定するための識別子またはフラグ値等を含んでいてもよい。
 P2Pネットワーク4では、新たなブロックチェーンを生成するプロセスによって、公開鍵EPKが格納されたトランザクションTを含むブロック(図3のブロックN)がブロックチェーンに追加される。例えば、ブロックチェーン生成装置として機能するその他の端末3が新たなブロックチェーンを生成してもよい。トランザクションTを含むブロックがブロックチェーンに追加された後に、ユーザB端末2はトランザクションTに含まれる許諾発行を確認する。また、ユーザB端末2は公開鍵EPKを取得する(図3の(6))。図3の(4)~(6)のプロセスによって、ユーザAの公開鍵EPKがユーザBに共有される。
 ここで、ECDH鍵交換においては、次の式(A)が成り立つ。
   σ=eskEPK=eskEPK ・・・(A)
 相手の公開鍵と自身の秘密鍵によって計算される値σは、ユーザAとユーザBとで同一の値となる。そのため、ユーザAおよびユーザBは、事前に取り決めた鍵導出関数KDFを用いて、値σから同一の鍵(共通鍵)を生成することが可能である。ユーザAおよびユーザBは、例えばAES-GCM等の共通鍵暗号方式で、鍵導出関数KDFで得られた共通鍵を用いて秘密の情報Sを暗号・復号化できる。
 共通鍵は、鍵導出関数KDFのパラメータに値を与えることによって算出される。ここで、仮に値σだけを鍵導出関数KDFのパラメータとして共通鍵を算出するならば、ユーザAの秘密鍵(または、ユーザBの秘密鍵)が流出した場合に、共通鍵で暗号化した全ての情報が解読されるおそれがある。そこで、ユーザAとユーザBとが共に認識している「関連するトランザクション」および「関連するブロック(特定ブロック)のパラメータ」を、さらに鍵導出関数KDFのパラメータとして用いる。このことにより、鍵導出関数KDFで算出される共通鍵は、セッション鍵、すなわち、ある時間だけ有効な使い捨ての暗号鍵となる。
 本実施形態において、セッション鍵であるkは次の式(B)で表される。
   k=KDF(σ||T||T||N) ・・・(B)
 式(B)の値σは上記の式(A)で算出される。また、式(B)に示すように、「関連するトランザクション」として、許諾要求を含むトランザクションTおよび許諾発行を含むトランザクションTが用いられる。また、式(B)に示すように、「関連するブロックのパラメータ」として、トランザクションTが格納されたブロックの番号Nが用いられる。ここで、トランザクションT,Tおよびブロックの番号N(ブロックに付された固有の番号)は、取引毎に定まる値である。つまり、トランザクションT,Tおよびブロックの番号Nは、P2Pネットワーク4上における、取引毎に固有の情報である。そのため、トランザクションT,Tおよびブロックの番号Nを用いて算出されたセッション鍵は取引毎に固有の鍵となる。
 ユーザA端末1の暗号・復号化部13(第1の暗号・復号化部)は、秘密鍵eskおよび公開鍵EPKから式(A)に従って値σを算出する。そして、ユーザA端末1は、式(B)に従ってセッション鍵(かつ、共通鍵)であるkを生成する(図3の(8)、第1の共通鍵生成ステップ)。
 そして、ユーザA端末1は、セッション鍵であるkを用いて暗号化された秘密の情報Sを含むトランザクションを、P2Pネットワーク4を介して他の端末にブロードキャストする(図3の(9))。詳細には、暗号・復号化部13が、セッション鍵を用いて、秘密の情報Sを暗号化する。暗号化された秘密の情報Sは、所定の方法でトランザクションに内包されて、トランザクション発行部50に出力される。トランザクション発行部50は、生成したトランザクションを、P2Pネットワーク4を介して他の端末にブロードキャストする。
 一方、ユーザB端末2の暗号・復号化部13(第2の暗号・復号化部)は、秘密鍵eskおよび公開鍵EPKから式(A)に従って値σを算出する。そして、ユーザB端末2は、式(B)に従ってセッション鍵(かつ、共通鍵)であるkを生成する(図3の(7)、第2の共通鍵生成ステップ)。
 そして、ユーザB端末2の暗号・復号化部13は、P2Pネットワーク4を介して取得した、暗号化された秘密の情報Sを、セッション鍵であるkを用いて復号化する(図3の(10))。
 以上のように、本実施形態によれば、秘密の情報Sは、上記の式(A)および(B)に従う、共通鍵であるkによって暗号・復号化される。共通鍵であるkは、取引毎に定まる値である「関連するトランザクション」および「関連するブロックのパラメータ」を用いて算出される。そのため、kは取引毎に固有のセッション鍵となる。したがって、本実施形態に係る鍵交換システム(および、同システム上における鍵交換方法)は、前方秘匿性を有し、秘密の情報をブロックチェーン上に記録する際に、長期に渡って安全に秘匿することができる。
[第2実施形態]
 第1実施形態に係る鍵交換システム5では二者(ユーザAおよびユーザB)で秘密の情報Sが共有された。第2実施形態に係る鍵交換システム5では、多人数のグループにおいて秘密の情報Sが共有されるように拡張する。
 本実施形態において、グループに属するユーザは、全体で用いられる共通鍵(グループ共通鍵)を使用する。グループ共通鍵は、グループに属するユーザのうち管理権限を有するルートユーザによって生成される。グループに属するユーザは、共有情報をグループ共通鍵によって暗号化して、グループに属する他のユーザが取得可能な場所に配置する(例えばブロックチェーンに登録する)。また、グループに属するユーザは、暗号化された共有情報を、グループ共通鍵によって復号化する。ここで、共有情報は、グループのユーザ以外には秘匿すべき情報の一つである。
 ここで、第1実施形態に係る鍵交換システム5では、セッション鍵を用いて暗号化された秘密の情報Sが二者間で送受信された。第1実施形態において、二者間の秘密の情報S(セッション鍵による暗号・復号化の対象)は、例えば情報そのものであっても、情報にアクセスするためのパスワードまたは暗号鍵であってもよい。本実施形態に係る鍵交換システム5では、暗号化されたグループ共通鍵が、ルートユーザと「グループに属するルートユーザ以外のユーザ(クライアントユーザ)」のそれぞれとの間で送受信される。つまり、本実施形態において、二者間の秘密の情報Sはグループ共通鍵である。また、本実施形態において、二者間のグループ共通鍵の送受信は、クライアントユーザの数だけ実行される。以下の説明において、ルートユーザUとクライアントユーザUとの間のセッション鍵をkとする(dは2以上の整数)。また、以下の説明においては、グループ共通鍵をkとする。
(鍵交換システム)
 本実施形態に係る鍵交換システム5の構成は、第1実施形態の構成に類似する。図1のユーザA端末1はルートユーザUの端末に対応する。また、図1のユーザB端末2はクライアントユーザUの端末に対応する。ここで、グループがn人(nは3以上の整数)のユーザで構成される場合に、クライアントユーザU,U,…Uのそれぞれが固有の端末を有する。すなわち、本実施形態に係る鍵交換システム5は、図1のユーザB端末2を複数備える構成になり得る。
 また、第1実施形態において、ユーザA端末1の暗号化処理部10は、ユーザB端末2の暗号化処理部10と同じ構成であった。本実施形態では、ルートユーザUはグループ共通鍵の生成等の管理をする。そのため、ルートユーザUの端末の暗号化処理部10aは、クライアントユーザUの端末の暗号化処理部10bと構成が異なっている。
 図4はルートユーザU用の暗号化処理部10aの構成を例示する図である。暗号化処理部10aは、許諾要求部11と、許諾発行部12と、セッション鍵暗号部13aと、鍵管理部14と、鍵保管領域15と、グループ共通鍵暗号・復号化部16と、グループ共通鍵管理部17と、グループ共通鍵保管領域18と、を備える。ここで、許諾要求部11、許諾発行部12、鍵管理部14および鍵保管領域15の説明は、第1実施形態(図2参照)と同じであるため省略する。
 セッション鍵暗号部13aは、P2Pネットワーク4からクライアントユーザUの公開鍵を取得する。また、セッション鍵暗号部13aは、鍵保管領域15に保管した自身の秘密鍵等を用いて、ルートユーザUとクライアントユーザUとの間におけるセッション鍵を算出する。また、セッション鍵暗号部13aは、算出したセッション鍵を用いて、グループ共通鍵管理部17を介して取得したグループ共通鍵を暗号化する。ここで、暗号化されたグループ共通鍵は、所定の方法でトランザクションに内包されることによって、ブロックチェーンへの登録が可能になる。
 グループ共通鍵暗号・復号化部16は、グループ共通鍵保管領域18に保管されたグループ共通鍵を用いて共有情報を暗号化する。暗号化された共有情報は、所定の方法でトランザクションに内包されることによって、ブロックチェーンへの登録が可能になる。また、グループ共通鍵暗号・復号化部16は、暗号化された共有情報を、グループ共通鍵を用いて復号化する。
 グループ共通鍵管理部17は、グループ共通鍵に関する処理を実行する。グループ共通鍵管理部17は、グループ共通鍵の生成、参照および削除を実行する。また、グループ共通鍵管理部17は、クライアントユーザUの削除時等に、グループ共通鍵を更新する。例えば、グループにクライアントユーザUが追加された場合に、グループ共通鍵管理部17は、グループ共通鍵に追加されたクライアントユーザUとの対応付けを実行して、グループ共通鍵保管領域18に保管する。一方で、クライアントユーザUが削除された場合に、グループ共通鍵管理部17は、それまでグループ共通鍵保管領域18に保管されていたグループ共通鍵を破棄する。そして、グループ共通鍵管理部17は、新たにグループ共通鍵を生成する。つまり、クライアントユーザUの削除(グループからの脱退)の場合には、脱退したクライアントユーザUの不正利用を防止するために、グループ共通鍵管理部17は新たにグループ共通鍵を生成する。
 グループ共通鍵保管領域18は、グループ共通鍵管理部17が生成したグループ共通鍵を保管(保持)する。
 図5はクライアントユーザU用の暗号化処理部10bの構成を例示する図である。暗号化処理部10bは、許諾要求部11と、許諾発行部12と、セッション鍵復号化部13bと、鍵管理部14と、鍵保管領域15と、グループ共通鍵暗号・復号化部16と、を備える。ここで、許諾要求部11、許諾発行部12、鍵管理部14および鍵保管領域15の説明は、第1実施形態(図2参照)と同じであるため省略する。
 セッション鍵復号化部13bは、P2Pネットワーク4からルートユーザUの公開鍵を取得する。また、セッション鍵復号化部13bは、鍵保管領域15に保管した自身の秘密鍵等を用いて、ルートユーザUとクライアントユーザUとの間におけるセッション鍵を算出する。また、セッション鍵復号化部13bは、ブロックチェーンより取得した暗号化されたグループ共通鍵を、算出したセッション鍵を用いて復号化する。
 グループ共通鍵暗号・復号化部16は、セッション鍵復号化部13bが復号化することによって取得したグループ共通鍵を用いて、共有情報を暗号化する。暗号化された共有情報は、所定の方法でトランザクションに内包されることによって、ブロックチェーンへの登録が可能になる。また、グループ共通鍵暗号・復号化部16は、暗号化された共有情報を、グループ共通鍵を用いて復号化する。暗号化処理部10bのグループ共通鍵暗号・復号化部16は、グループ共通鍵の取得の手法が異なるだけで、暗号化処理部10aのグループ共通鍵暗号・復号化部16と同じ構成および機能を備える。
(鍵交換方法)
 以下に、クライアントユーザUが、ルートユーザUからブロックチェーン上でグループ共通鍵kを共有する手順について説明する。ここで、ルートユーザUはユーザA端末1の使用者である。また、クライアントユーザUはユーザB端末2の使用者である。図6および図7の例のように、クライアントユーザUが複数いる場合には、クライアントユーザUのそれぞれが各自のB端末2を使用する。
 図6は、本実施形態に係る鍵交換方法を説明するためのシーケンス図である。また、図7は、図6の続きを示すシーケンス図である。図6および図7のルートユーザUはユーザA端末1を意味する。また、図6および図7のクライアントユーザU(d=2~5)のそれぞれはユーザB端末2を意味する。
 ユーザA端末1のグループ共通鍵管理部17はグループ共通鍵kを生成する(図6の(1))。グループ共通鍵kは、グループのユーザ(ルートユーザUおよびクライアントユーザU)以外には秘匿すべき情報の一つである。
 ルートユーザUは、クライアントユーザUとの間でECDH鍵交換を実施して、セッション鍵kを共有する(図6の(2))。
 セッション鍵kはクライアントユーザU毎に異なる。そして、ルートユーザUは、グループ共通鍵kをセッション鍵kで暗号化して、クライアントユーザUへ配布する(図7の(3))。
 そして、クライアントユーザUは、セッション鍵kで復号化して、グループ共通鍵kを入手する(図7の(4))。
 ルートユーザUは、クライアントユーザUのそれぞれに対して、セッション鍵kを用いた鍵交換方法(図6の(2)、図7の(3)および(4))を実行する。セッション鍵kを用いた鍵交換方法は、秘密の情報Sをグループ共通鍵kとした場合の第1実施形態の鍵交換方法に対応する。すなわち、セッション鍵kを用いた鍵交換方法の詳細は、第1実施形態と同じであるため説明を省略する。図6および図7の例では、ルートユーザUは、4人のクライアントユーザUのそれぞれに対して、順に鍵交換(グループ共通鍵kの共有)を行う。
 以上のように、本実施形態においては、第1実施形態と同様に、秘密の情報Sをブロックチェーン上に記録する際に、長期に渡って安全に秘匿する鍵交換システムおよび鍵交換方法が実現される。また、第2実施形態においては、長期に渡って安全に、多人数のグループにおいて秘密の情報Sを共有することが可能である。
 上述の実施形態は代表的な例として説明している。本発明の趣旨および範囲内で、多くの変更および置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形および変更が可能である。
 例えば、上述の実施形態において、鍵を生成する際にECDH鍵交換方式が使用された。ここで、ECDH鍵交換方式に代えてDH鍵交換方式、RSA鍵交換方式、MQV鍵交換方式またはHMQV鍵交換方式等が使用されてもよい。
 また、上述の実施形態において、セッション鍵を算出する際に、「関連するトランザクション」および「関連するブロックのパラメータ」として、トランザクションT,Tおよびブロックの番号Nの全てが用いられていた。関連するトランザクションおよびブロックに固有の情報(取引固有情報)として多くの情報が含まれることによって、より確実に、長期に渡って安全に秘密の情報Sを秘匿する共通鍵が生成されていた。しかし、事前にユーザAとユーザBとの間で定めておけば、取引固有情報は、トランザクションT,Tおよび関連するブロックのパラメータの一部だけ(少なくとも1つ)が用いられてもよい。また、事前にユーザAとユーザBとの間で定めておけば、取引固有情報として、トランザクションT,Tおよびブロックの番号Nとは異なる値が用いられてもよい。例えば「関連するブロックのパラメータ」として、トランザクションTが格納されたブロックの番号N-1が用いられてもよい。また、例えば「関連するブロックのパラメータ」として、ブロックの番号NまたはN-1ではなく、ブロックの番号NまたはN-1のブロックのサイズが用いられてもよい。また、例えば、「関連するトランザクション」として、トランザクションTおよびTとは異なるトランザクションが用いられてもよい。また、「関連するトランザクション」として、当該トランザクション全体のデータを用いてもよく、あるいは、当該トランザクションの一部のデータ(例えば、少なくとも電子署名を含む一部のデータ)を用いてもよい。
 本開示内容の多くの側面は、プログラム命令を実行可能なハードウェアにより実行される一連の動作として示される。プログラム命令を実行可能なハードウェアは、パーソナルコンピュータ、スマートフォン等に限定されず、例えば、専用コンピュータ、ワークステーション、PCS(Personal Communications System、パーソナル移動通信システム)、データ処理機能を備えた移動(セルラー)電話機、タブレット端末、ゲーム機、電子ノートパッド、ラップトップコンピュータ、GPS(Global Positioning System)受信機またはその他のプログラム可能なデータ処理装置が含まれる。各実施形態では、種々の動作または制御方法は、プログラム命令(ソフトウェア)、および/または一以上のプロセッサにより実行されるプログラムモジュール等により実行されることに留意されたい。一以上のプロセッサには、例えば、マイクロプロセッサ、CPU(中央演算処理ユニット)、ASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)またはこれらいずれかの組合せ等が含まれる。
 1  端末(ユーザA端末)
 2  端末(ユーザB端末)
 3  端末(その他の端末)
 5  鍵交換システム
10  暗号化処理部
10a 暗号化処理部(ルートユーザ用)
10b 暗号化処理部(クライアントユーザ用)
11  許諾要求部
12  許諾発行部
13  暗号・復号化部
13a セッション鍵暗号部
13b セッション鍵復号化部
14  鍵管理部
15  鍵保管領域
16  グループ共通鍵暗号・復号化部
17  グループ共通鍵管理部
18  グループ共通鍵保管領域
30  ブロックチェーン記憶部
40  ブロックチェーン制御部
50  トランザクション発行部

Claims (8)

  1.  ブロックチェーンが構築されるネットワークを介して相互に接続された、第1の端末および第2の端末を含む鍵交換システムであって、
     前記第1の端末は、
      第1の公開鍵と、許諾要求に対する許諾発行と、を含めた第1のトランザクションを生成する許諾発行部と、
      第1の秘密鍵を保持する第1の鍵保管領域と、
      前記第1のトランザクション、第2のトランザクションおよび特定ブロックのパラメータの少なくとも1つである取引固有情報と、第2の公開鍵と、前記第1の秘密鍵と、を用いて共通鍵を生成する第1の暗号・復号化部と、を備え、
     前記第2の端末は、
      前記第2の公開鍵と、前記許諾要求と、を含めた前記第2のトランザクションを生成する許諾要求部と、
      第2の秘密鍵を保持する第2の鍵保管領域と、
      前記取引固有情報と、前記第1の公開鍵と、前記第2の秘密鍵と、を用いて前記共通鍵を生成する第2の暗号・復号化部と、を備え、
     前記第1の暗号・復号化部は、前記第1の暗号・復号化部が生成した前記共通鍵で秘密の情報を暗号化し、
     前記第2の暗号・復号化部は、前記ネットワークを介して取得した、暗号化された前記秘密の情報を、前記第2の暗号・復号化部が生成した前記共通鍵で復号化する、鍵交換システム。
  2.  前記取引固有情報は、前記第1のトランザクション、前記第2のトランザクションおよび前記特定ブロックのパラメータである、請求項1に記載の鍵交換システム。
  3.  前記特定ブロックのパラメータは、前記第1のトランザクションまたは前記第2のトランザクションが格納されたブロックに付された固有の番号である、請求項1または2に記載の鍵交換システム。
  4.  前記特定ブロックのパラメータは、前記第1のトランザクションまたは前記第2のトランザクションが格納されたブロックのサイズである、請求項1または2に記載の鍵交換システム。
  5.  前記秘密の情報は、グループ共通鍵であり、
     前記第2の端末は、前記ネットワークを介して、前記グループ共通鍵で暗号化された共有情報を取得可能である、請求項1から4のいずれか一項に記載の鍵交換システム。
  6.  前記第2の端末は複数であり、
     複数の前記第2の端末のそれぞれは、互いに異なる共通鍵を生成する、請求項5に記載の鍵交換システム。
  7.  前記第1の公開鍵、前記第2の公開鍵、前記第1の秘密鍵および第2の秘密鍵は、ECDH鍵交換方式で生成される、請求項1から6のいずれか一項に記載の鍵交換システム。
  8.  ブロックチェーンが構築されるネットワークを介して相互に接続された、第1の端末および第2の端末を含む鍵交換システムで実行される鍵交換方法であって、
     前記第1の端末が、第1の秘密鍵を保持するステップと、
     前記第2の端末が、第2の秘密鍵を保持するステップと、
     前記第2の端末が、第2の公開鍵と、許諾要求と、を含めた第2のトランザクションを生成するステップと、
     前記第1の端末が、第1の公開鍵と、前記許諾要求に対する許諾発行と、を含めた第1のトランザクションを生成するステップと、
     前記第1の端末が、前記第1のトランザクション、前記第2のトランザクションおよび特定ブロックのパラメータの少なくとも1つである取引固有情報と、第2の公開鍵と、前記第1の秘密鍵と、を用いて共通鍵を生成する第1の共通鍵生成ステップと、
     前記第1の端末が、前記第1の共通鍵生成ステップで生成された前記共通鍵で秘密の情報を暗号化するステップと、
     前記第2の端末が、前記取引固有情報と、前記第1の公開鍵と、前記第2の秘密鍵と、を用いて前記共通鍵を生成する第2の共通鍵生成ステップと、
     前記第2の端末が、前記ネットワークを介して取得した、暗号化された前記秘密の情報を、前記第2の共通鍵生成ステップで生成された前記共通鍵で復号化するステップと、を含む、鍵交換方法。
PCT/JP2018/023380 2017-06-21 2018-06-20 鍵交換システムおよび鍵交換方法 Ceased WO2018235845A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP18820430.9A EP3644548B1 (en) 2017-06-21 2018-06-20 Key exchange system and key exchange method
US16/621,000 US11424913B2 (en) 2017-06-21 2018-06-20 Key exchange system and key exchange method
JP2019525649A JP6882705B2 (ja) 2017-06-21 2018-06-20 鍵交換システムおよび鍵交換方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017121633 2017-06-21
JP2017-121633 2017-06-21

Publications (1)

Publication Number Publication Date
WO2018235845A1 true WO2018235845A1 (ja) 2018-12-27

Family

ID=64737201

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/023380 Ceased WO2018235845A1 (ja) 2017-06-21 2018-06-20 鍵交換システムおよび鍵交換方法

Country Status (4)

Country Link
US (1) US11424913B2 (ja)
EP (1) EP3644548B1 (ja)
JP (1) JP6882705B2 (ja)
WO (1) WO2018235845A1 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147684A (zh) * 2019-05-24 2019-08-20 众安信息技术服务有限公司 用于实现区块链数据隐私保护的方法及设备
JP2021033480A (ja) * 2019-08-20 2021-03-01 株式会社chaintope 情報処理方法、情報処理システム、及びサーバシステム
CN113169865A (zh) * 2019-02-15 2021-07-23 三菱动力株式会社 控制装置、工业用控制系统及加密密钥寿命延长方法
JP2022512220A (ja) * 2018-12-10 2022-02-02 アルゴランド インコーポレイテッド 公正な電子交換を実施するための仮想ブロックチェーンプロトコルの利用
JPWO2022074771A1 (ja) * 2020-10-07 2022-04-14
JP2022528925A (ja) * 2019-04-16 2022-06-16 エヌチェーン ホールディングス リミテッド データを暗号化するためのコンピュータにより実施される方法及びシステム
JP2022530150A (ja) * 2019-04-26 2022-06-27 ジェイピーモルガン・チェース・バンク,ナショナル・アソシエーション プライバシを用いて不変のデータアクセスログを維持するためのシステムおよび方法
JP2024514860A (ja) * 2021-04-09 2024-04-03 ダブコ・リミテッド Sim暗号鍵ストレージ
JP2025115404A (ja) * 2020-07-16 2025-08-06 セールスフォース インコーポレイテッド 鍵共有を使用するデータのセキュア化

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201811263D0 (en) * 2018-07-10 2018-08-29 Netmaster Solutions Ltd A method and system for managing digital using a blockchain
JP2022002351A (ja) * 2018-09-20 2022-01-06 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
CN111445250B (zh) * 2020-04-16 2023-04-11 中国银行股份有限公司 一种区块链密钥测试方法及装置
JP7462903B2 (ja) * 2020-07-01 2024-04-08 日本電信電話株式会社 利用者端末、認証者端末、登録者端末、管理システムおよびプログラム
CN114154988B (zh) * 2021-12-03 2024-09-24 福建师范大学 基于国产区块链的匿名密钥协商方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH088895A (ja) * 1994-06-10 1996-01-12 Sun Microsyst Inc インターネット手順のキー管理のための方法ならびにその装置
JP2017050763A (ja) 2015-09-03 2017-03-09 日本電信電話株式会社 許諾情報管理システム、利用者端末、権利者端末、許諾情報管理方法、および、許諾情報管理プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5588060A (en) 1994-06-10 1996-12-24 Sun Microsystems, Inc. Method and apparatus for a key-management scheme for internet protocols
CN106296184A (zh) * 2015-06-05 2017-01-04 地气股份有限公司 电子货币管理方法及电子货币系统
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US10103885B2 (en) * 2016-01-20 2018-10-16 Mastercard International Incorporated Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography
FR3076420B1 (fr) * 2017-12-29 2020-02-07 Commissariat A L'energie Atomique Et Aux Energies Alternatives Methode d'echange de cles par contrat intelligent deploye sur une chaine de blocs

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH088895A (ja) * 1994-06-10 1996-01-12 Sun Microsyst Inc インターネット手順のキー管理のための方法ならびにその装置
JP2017050763A (ja) 2015-09-03 2017-03-09 日本電信電話株式会社 許諾情報管理システム、利用者端末、権利者端末、許諾情報管理方法、および、許諾情報管理プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KENJI SAITO: "Bitcoin-Digital Megalith Money without Human Presence", WI DE TECHNICAL REPORT
SAITO, TAKAMICHI: "Chapter 5.3.5. IKE", PART OF MASTERING TCP/IP SECURITY. 1 ST ED., 1 September 2013 (2013-09-01), pages 147 - 149, XP009517591, ISBN: 978-4-274-06921-5 *
See also references of EP3644548A4

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022512220A (ja) * 2018-12-10 2022-02-02 アルゴランド インコーポレイテッド 公正な電子交換を実施するための仮想ブロックチェーンプロトコルの利用
JP7369772B2 (ja) 2018-12-10 2023-10-26 アルゴランド,インコーポレイテッド 公正な電子交換を実施するための仮想ブロックチェーンプロトコルの利用
CN113169865A (zh) * 2019-02-15 2021-07-23 三菱动力株式会社 控制装置、工业用控制系统及加密密钥寿命延长方法
CN113169865B (zh) * 2019-02-15 2024-01-09 三菱重工业株式会社 控制装置、工业用控制系统及加密密钥寿命延长方法
JP2022528925A (ja) * 2019-04-16 2022-06-16 エヌチェーン ホールディングス リミテッド データを暗号化するためのコンピュータにより実施される方法及びシステム
US12609815B2 (en) 2019-04-16 2026-04-21 Nchain Licensing Ag Computer implemented method and system for encrypting data
JP7620564B2 (ja) 2019-04-16 2025-01-23 エヌチェーン ライセンシング アーゲー データを暗号化するためのコンピュータにより実施される方法及びシステム
JP2024153841A (ja) * 2019-04-26 2024-10-29 ジェイピーモルガン・チェース・バンク,ナショナル・アソシエーション プライバシを用いて不変のデータアクセスログを維持するためのシステムおよび方法
JP7675909B2 (ja) 2019-04-26 2025-05-13 ジェイピーモルガン・チェース・バンク,ナショナル・アソシエーション プライバシを用いて不変のデータアクセスログを維持するためのシステムおよび方法
JP2022530150A (ja) * 2019-04-26 2022-06-27 ジェイピーモルガン・チェース・バンク,ナショナル・アソシエーション プライバシを用いて不変のデータアクセスログを維持するためのシステムおよび方法
JP7532410B2 (ja) 2019-04-26 2024-08-13 ジェイピーモルガン・チェース・バンク,ナショナル・アソシエーション プライバシを用いて不変のデータアクセスログを維持するためのシステムおよび方法
CN110147684A (zh) * 2019-05-24 2019-08-20 众安信息技术服务有限公司 用于实现区块链数据隐私保护的方法及设备
CN110147684B (zh) * 2019-05-24 2023-07-25 众安信息技术服务有限公司 用于实现区块链数据隐私保护的方法及设备
JP2022016506A (ja) * 2019-08-20 2022-01-21 株式会社chaintope 情報処理方法、情報処理システム、及びサーバシステム
JP7786714B2 (ja) 2019-08-20 2025-12-16 株式会社chaintope 情報処理方法、情報処理システム、及びサーバシステム
JP2021033480A (ja) * 2019-08-20 2021-03-01 株式会社chaintope 情報処理方法、情報処理システム、及びサーバシステム
JP2025115404A (ja) * 2020-07-16 2025-08-06 セールスフォース インコーポレイテッド 鍵共有を使用するデータのセキュア化
JPWO2022074771A1 (ja) * 2020-10-07 2022-04-14
JP7468682B2 (ja) 2020-10-07 2024-04-16 日本電信電話株式会社 識別子変更管理装置、識別子変更管理方法及び識別子変更管理プログラム
WO2022074771A1 (ja) * 2020-10-07 2022-04-14 日本電信電話株式会社 識別子変更管理装置、識別子変更管理方法及び識別子変更管理プログラム
JP2024514860A (ja) * 2021-04-09 2024-04-03 ダブコ・リミテッド Sim暗号鍵ストレージ
JP7826333B2 (ja) 2021-04-09 2026-03-09 ダブコ・リミテッド Sim暗号鍵ストレージ

Also Published As

Publication number Publication date
US20200127818A1 (en) 2020-04-23
EP3644548B1 (en) 2023-07-26
JPWO2018235845A1 (ja) 2020-05-21
EP3644548A4 (en) 2021-02-24
JP6882705B2 (ja) 2021-06-02
US11424913B2 (en) 2022-08-23
EP3644548A1 (en) 2020-04-29

Similar Documents

Publication Publication Date Title
JP6882705B2 (ja) 鍵交換システムおよび鍵交換方法
US11876897B2 (en) Right holder terminal, permission information management method, and permission information management program
US11316677B2 (en) Quantum key distribution node apparatus and method for quantum key distribution thereof
US5815573A (en) Cryptographic key recovery system
US10187361B2 (en) Method for secure communication using asymmetric and symmetric encryption over insecure communications
JP6363032B2 (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
EP0916209B1 (en) Cryptographic key recovery system
CN115242555A (zh) 一种可监管的跨链隐私数据共享方法及装置
CN111797415A (zh) 基于区块链的数据共享方法、电子设备和存储介质
CN109359470A (zh) 多方安全计算方法及装置、电子设备
CN111342955B (zh) 一种通信方法及其设备、计算机存储介质
US20210192012A1 (en) Right holder terminal, user terminal, right holder program, user program, content utilization system, and content utilization method
CN109274492B (zh) 自安全的紧耦合秘密共享方法
CN116830523A (zh) 阈值密钥交换
CN102958021A (zh) 一种手机短信加解密通信系统及其通信方法
CN111181944B (zh) 通信系统及信息发布方法、装置、介质、设备
EP2892206B1 (en) System and method for push framework security
CN111488618B (zh) 基于区块链的一次一密密码方法、装置及存储介质
JP2002539489A (ja) 暗号鍵スプリットコンバイナを用いる音声及びデータ暗号化方法
CN111224921A (zh) 安全传输方法和安全传输系统
TW202301830A (zh) 群組即時通訊的加密系統和加密方法
CN115134111B (zh) 一种针对海量数据分布式存储的加密算法的方法
JP2003309544A (ja) 暗号鍵配送装置
WO2025230990A1 (en) Secure and efficient signing of cryptocurrency transactions under fully homomorphic encryption
CN113343281A (zh) 面向数据交易的otp加密即服务云计算方法及系统

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019525649

Country of ref document: JP

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

Country of ref document: EP

Effective date: 20200121