Transfer system, terminal device, and transfer method
Patent Information
- Application Number
- PCT/JP2024/008733
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-07
- Publication Date
- 2025-10-02
AI Technical Summary
The Inter-Blockchain Communication Protocol (IBC Protocol) requires each blockchain to maintain a light client for verification, which is costly and inefficient.
A transfer system that utilizes representative terminal devices to manage signature keys, generate hash chains, and share data across blockchains without the need for light clients, ensuring data integrity through public hash chains and autonomous verification.
Enables data transfer between blockchains without maintaining light clients, preventing fraudulent transfers and reducing costs by allowing participants to verify data authenticity autonomously.
Smart Images

Figure JP2024008733_02102025_PF_FP_ABST
Abstract
Description
Transfer system, terminal device, and transfer method
[0001] The present invention relates to a system for transferring data between blockchains.
[0002] The Inter-Blockchain Communication Protocol (IBC Protocol) is a known conventional technology for transferring packets between blockchains (see Non-Patent Document 1). Blockchain refers to a technology in which transaction data is recorded collectively in units called blocks at a node and the same block information is managed in a distributed manner across multiple nodes, or a system that realizes this technology. Blockchain is also known as a distributed ledger technology. In the IBC Protocol, each blockchain maintains a light client for other blockchains, and the light client verifies the authenticity of packets transferred from other blockchains in each blockchain. This mechanism prevents fraudulent transfers of packets by participants in individual blockchains without storing them in the ledger.
[0003] Christopher Goes, "The Interblockchain Communication Protocol: An Overview", [online], [Retrieved February 20, 2024], Internet<URL:https: / / arxiv.org / pdf / 2006.15918.pdf>
[0004] However, the IBC protocol requires a light client for verification, and it is necessary to maintain as many light clients as there are linked blockchains. Furthermore, all full nodes included in the blockchain must have a light client, which is costly.
[0005] Figure 1 is a diagram for explaining the outline of the IBC protocol. In Figure 1, blockchains A, B, and C are linked together, and all full nodes included in blockchain A use a verification light client LC to verify the authenticity of packets transferred by blockchains B and C. AB ,LC ACSimilarly, all full nodes in blockchain B hold the light client LC BA ,LC BC All full nodes in blockchain C are light clients LC CA ,LC CB , and retain.
[0006] Blockchain A generates a transfer packet TPa, blockchain B generates a transfer packet TPb, and blockchain C generates a transfer packet TPc (S1). AB ,LC AC verify the authenticity of the forwarded packets TPb and TPc, respectively, and the light client LC of blockchain B BA verifies the authenticity of the forwarding packet TPa and sends it to the light client LC of the blockchain C. CA verifies the authenticity of the transfer packet TPa (S2). If the authenticity of the transfer packet is confirmed in each blockchain, the transfer packet is stored (S3).
[0007] The present invention aims to provide a transfer system, terminal device, and transfer method that enable data transfer between blockchains without having to maintain a light client.
[0008] In order to solve the above problem, according to one aspect of the present invention, a transfer system transfers data between multiple blockchains. The transfer system includes multiple representative terminal devices included in each of the multiple blockchains. The representative terminal device includes a signature key management unit that secretly manages a signature key, an inter-blockchain communication unit that sends transfer data generated in its own blockchain to a destination blockchain, receives transfer data generated in other blockchains and addressed to its own blockchain, generates a signature request form indicating the status of the transfer data based on the transfer data generated in its own blockchain, receives signature request forms generated in other blockchains, and generates signatures using the signature key for information generated based on all of the signature request forms, and a hash chain storage unit that stores all of the signature request forms and a collection of multiple signatures generated by the multiple representative terminal devices as blocks of a hash chain, and the hash chain is made public to participants in its own blockchain and participants in the other blockchains.
[0009] The transfer system of the present invention has the effect of enabling data transfer between blockchains without each blockchain having to maintain a light client.
[0010] A diagram for explaining an overview of the IBC protocol. A diagram for explaining an overview of the first embodiment. A functional block diagram of terminal devices operated by participants and representatives of a blockchain. A diagram showing an example of the processing flow of a transfer system according to the first embodiment. A diagram for explaining transfer data generation processing (S110). Hash chain C j A diagram showing an example of blocks stored in. A diagram for explaining transfer data sharing processing (S120). A diagram for explaining signature sharing processing (S130). A diagram for explaining hash chain storage processing (S140). A diagram for explaining block chain storage processing (S150). A diagram for explaining verification processing S160. A diagram showing an example of the functional configuration of a computer.
[0011] Hereinafter, an embodiment of the present invention will be described in detail. Note that components having the same functions are assigned the same numbers, and duplicated explanations will be omitted. <Key Points of the First Embodiment> Figure 2 is a diagram for explaining an overview of the first embodiment.
[0012] In this embodiment, a hash chain including a joint signature by the representatives of each of the linked blockchains is constructed outside of each of the linked blockchains.
[0013] Transfer data issued from each blockchain is collectively stored in a hash chain. In this embodiment, for example, data is transferred in packets, and the transferred data is also referred to as a transfer packet. The packet header records control information and user data, such as the IP addresses of the destination and source, the packet type, and a serial number, and this information can be referenced to sort the packets. However, other data transfer methods may also be used. Here, the hash chain is made public to participants in each blockchain. Packet transfer is performed by recording the transfer packet in the hash chain.
[0014] Each blockchain extracts transfer packets addressed to its own blockchain stored in the hash chain and expands them within its own blockchain. Here, "expanding" means converting the transfer packets into a data format (transaction) that can be processed within the blockchain and broadcasting it to all nodes.
[0015] By recording in a public hash chain, it is possible to prevent fraudulent secret packet transfers by individual participants, just like in IBC. Furthermore, by referencing the public hash chain, it is possible for participants inside the blockchain that received the packet to autonomously verify the storage of the transferred packet, and for participants outside the blockchain that received the packet (for example, participants in the blockchain that sent the packet) to verify the storage of the transferred packet, realizing a method that does not rely on light clients.
[0016] A specific method will be described below. <Transfer System> The transfer system includes terminal devices of multiple representatives included in multiple blockchains. The transfer system transfers data between J blockchains. The transfer system transfers hash chains C corresponding to each blockchain j. j where J is an integer equal to or greater than 2, and j=1, 2, ..., J. In this embodiment, data is transferred between three blockchains 1, 2, and 3, and three corresponding hash chains C are constructed. 1 , C 2 , C 3 Build.
[0017] Blockchain j is D j Contains nodes. D j is an integer greater than or equal to 2. For example, a node consists of a terminal device operated by a blockchain participant.
[0018] 3 shows a functional block diagram of a terminal device 100-(j, e) operated by a participant of blockchain j. For example, the terminal device 100-(j, e) includes a transfer data generation unit 110, a signature key management unit 120, and a blockchain processing execution unit 130. Note that, for e=1, 2, ..., D j is.
[0019] One of the participants in each blockchain is designated as the representative of that block. The selection of the representative for each blockchain can vary depending on the blockchain, and there are no restrictions, such as "the block creator is the representative," "a fixed node," or "rotating."
[0020] The terminal device 100-(j, p) operated by the representative of the j-th blockchain further includes an inter-blockchain communication unit 140 and a hash chain storage unit 150 (shown by dashed lines in FIG. 3). p indicates the representative, and 1, 2, ..., D j Either of the following.
[0021] 4 shows an example of the processing flow of the transfer system according to this embodiment. <Transfer data generation process (S110)> A user who is a participant in each blockchain and wants to send a packet to another blockchain generates a transfer packet and stores it in his / her own blockchain (the blockchain that includes the terminal device operated by that participant).
[0022] FIG. 5 is a diagram for explaining the transfer data generation process (S110).
[0023] The transfer data generation unit 110 of the terminal device 100-(j, s) operated by the user who wants to send a packet generates a transfer packet. The method of generating a transfer packet is not limited to a particular method, and may be, for example, "performing an operation to set a transfer flag for a token," "issuing a transaction addressed to a certain address," or "issuing a transaction that invokes a function of a certain smart contract." s represents the sender, and 1, 2, ..., D j Either of the following.
[0024] The blockchain processing execution unit 130 of the terminal device 100-(j, s) operated by the user who wants to send a packet stores the generated forwarding packet in its own blockchain. Note that, as a method for storing the packet in the blockchain, for example, conventional blockchain technology can be used.
[0025] A signature key is secretly managed in the signature key management unit 120 of the terminal device 100-(j, s) operated by a user who wants to send a packet. For example, a pair of a private key and a public key is generated using an existing public key cryptosystem, and the private key is used as the signature key.
[0026] For example, the transfer data generation unit 110 of the terminal device 100-(j, s) operated by the user who wants to send a packet uses a predetermined hash function Hash() to generate the transfer destination blockchain ID (C i ) and the generated transfer packet body PB s and the public key Pk corresponding to the signature key of the user who wants to send s and data (C i ,PB s ,Pk s ) hash value Hash(Ci +PB s +Pk s ) is calculated using the signature key managed by the signature key management unit 120. i +PB s +Pk s ) signature Sig s =Sign(Hash(C i +PB s +Pk s )) and generate data (C i ,PB s ,Pk s ) Sign Sig s The packet with the i ,PB s ,Pk s ,Sig s ) and transmits it to the terminal device 100-(j, p) operated by the representative. The transfer data generation unit 110 of the terminal device 100-(j, p) operated by the representative generates a transfer packet (C i ,PB s ,Pk s ,Sig s ), the transmission process is omitted. Here, Sign() represents the signature function, and the plaintext is encrypted using the signature key. The generated ciphertext (signature) can be decrypted using the corresponding public key. i is an index indicating the destination blockchain, and is one of 1, 2, ..., J, where i ≠ j. In addition, an existing hash function can be used as the predetermined hash function Hash(), for example, SHA-256 and RIPEMD-160.
[0027] In the example of Figure 5, the transfer packet TP s12 , T.P. s13 and transfer packet TP on blockchain 2. s21 and transfer packet TP on blockchain 3 s32 is generated.
[0028] FIG. 6 shows the hash chain C j The following shows an example of a block stored in the block B. j,k is the jth hash chain C jindicates that it is the kth block of the forwarding packet group TP k includes all transfer packets generated in each block chain. <Transfer Data Sharing Process (S120)> Fig. 7 is a diagram for explaining the transfer data sharing process (S120). In the example of Fig. 7, block chains 1, 2, and 3 share the transfer packets TP s12 , T.P. s13 , T.P. s21 , T.P. s32 are transferred and shared with each other.
[0029] The terminal device 100-(j, p) operated by the representative receives the forwarded packet (C i ,PB s ,Pk s ,Sig s ) is received.
[0030] The other block chain communication unit 140 sends a transfer packet (C i ,PB s ,Pk s ,Sig s ), a message for generating a joint signature hash chain (hereinafter also referred to as a signature request slip) indicating the status of the forwarded packet is generated. Note that the predetermined timing is, for example, a certain time or the timing when a predetermined period has elapsed, and is synchronized in advance between J blockchains j. Note that it is not necessary for no forwarded packets to be generated within its own blockchain between the previous timing and the current timing, or multiple forwarded packets may be generated. Furthermore, one terminal device may generate multiple forwarded packets, or it may not generate any at all.
[0031] The signature request form is sent by the blockchain ID of the sender (C j ) (in this case, the own blockchain ID) and [transfer destination blockchain ID (C i ), a list L of hash values of forwarded packets j,k and the previous block ID of the hash chain (B j,k-1 ) and the representative's public key Pk pand the representative's signature, Sig p,k The hash value of a forwarded packet is a value obtained by applying a predetermined hash function to the forwarded packet, and is therefore also referred to as information generated from the forwarded packet.
[0032] For example, the other block chain communication unit 140 receives a transfer packet (C i ,PB s ,Pk s ,Sig s ) included in the destination blockchain ID (C i ) based on the same blockchain destination transfer packet (C i ,PB s ,Pk s ,Sig s ) and calculates the hash value Hash(C i +PB s ) and calculate the destination blockchain ID (C i ) and the set of hash values of the transfer packet are used as the destination blockchain ID (C i ) for each combination of J-1 (excluding the own blockchain) i ) and a set of hash values of forwarded packets) j,k Generate.
[0033] The signature request form is the previous block ID of the hash chain (B j,k-1 ) makes it possible to trace blocks by creating a chain-like data structure. j,k-1 ) can be used as the hash value of the previous block to check data integrity and detect tampering. The hash value of the previous block can be obtained from the data of the previous block using a specified hash function Hash().
[0034] For example, the other block chain communication unit 140 uses a predetermined hash function to obtain the block chain ID (C j ) and list L j,k and the previous block ID (B j,k-1 ) and the representative's public key Pk p and data (Cj ,L j,k ,B j,k-1 ,Pk p ) hash value Hash(C j +L j,k +B j,k-1 +Pk p ) is calculated using the signature key managed by the signature key management unit 120. j +L j,k +B j,k-1 +Pk p ) signature Sig p,k =Sign(Hash(C j +L j,k +B j,k-1 +Pk p )) and generate data (C j ,L j,k ,B j,k-1 ,Pk p ) Sign Sig p,k Please attach the signature request form (C j ,L j,k ,B j,k-1 ,Pk p ,Sig p,k ) and broadcast it to the other J-1 blockchains.
[0035] As mentioned above, the signature request form contains the transfer packet body PB s The other block chain communication unit 140 does not include the transfer packet body PB s may be broadcast to the other J-1 blockchains, or may be sent only to the destination blockchain. The inter-blockchain communication unit 140 only needs to send transfer packets generated in its own blockchain to at least the destination blockchain, and receive transfer data generated in other blockchains and addressed to at least its own blockchain. In this embodiment, it will be described as broadcasting.
[0036] For example, the communication unit with other blockchains 140 generates a packet group of transfer packet bodies with the same blockchain as the transfer destination. i ,PB s ,Pks ,Sig s ) included in the destination blockchain ID (C i ) based on the same blockchain destination transfer packet (C i ,PB s ,Pk s ,Sig s ) and extract the destination blockchain ID (C i ) and the transfer packet body PB s The combination of the set of (corresponding to the packet group of the transfer packet body mentioned above) is i ) and broadcast it.
[0037] In order to perform the same processing on the terminal devices 100-(h, p) operated by the representatives of the other J-1 blockchains, J-1 signature request forms are received from the terminal devices 100-(h, p) operated by the representatives of the other J-1 blockchains, and the J signature request forms are stored in a storage unit (not shown) together with the signature request form of the own blockchain. The set of J signature request forms is called signature request form M k Let us denote this as h=1,2,...,J, where h≠j.
[0038] If there is no packet loss or data tampering, the signature request slip M k It should be noted that sharing data between terminal devices means that the same data is stored and held in different terminal devices.
[0039] By configuring the inter-blockchain communication unit 140 to broadcast the packet group of the transfer packet body, the packet group of the transfer packet body can also be shared among the terminal devices 100-(j, p) operated by the representatives of all blockchains. <Signature sharing process (S130)> Fig. 8 is a diagram for explaining the signature sharing process (S130). In the example of Fig. 8, blockchains 1, 2, and 3 each have signature information Sig 1 , Sig 2 , Sig 3 are transferred and shared with each other.
[0040] The inter-blockchain communication unit 140 of the terminal device 100-(j, p) operated by the representative of each block chain receives the signature request slip (C j ,L j,k ,B j,k-1 ,Pk p ,Sig p,k ) p,k is correct or not, public key Pk p Once the signature request form is confirmed to be correct, the aggregated signature request form (signature request form M k ) hash value Hash(M k ) and calculate the hash value Hash(M k ) and the delegate's public key Pk p and data (Hash(M k )),Pk p ) hash value Hash((Hash(M k )),Pk p )) and calculates the hash value Hash((Hash(M k )),Pk p Signature for )) p,M_k =Sign(Hash((Hash(M k )),Pk p )) and generate data (Hash(M k )),Pk p ) Sign Sig p,M_k Please attach the following to the Signature Request Form M k Signature information (Hash(M k )),Pk p ,Sig p,M_k ) and broadcast it to the other J-1 blockchains. Note that the hash value Hash((Hash(M k )),Pk p ) is also referred to as the information generated based on all signature request forms.
[0041] In order to perform the same process in the terminal devices 100-(h, p) operated by the representatives of the other J-1 blockchains, J-1 pieces of signature information (Hash(M k)),Pk p ,Sig p,M_k ) and receives the signature information of its own blockchain (Hash(M k )),Pk p ,Sig p,M_k ) and J pieces of signature information are stored in a storage unit (not shown).
[0042] By this process, J pieces of signature information can be shared among the terminal devices 100-(j, p) operated by the representatives of all the blockchains. <Hash Chain Storage Process (S140)> Fig. 9 is a diagram for explaining the hash chain storage process (S140). In the example of Fig. 9, the hash chain C 1 , C 2 , C 3 Forward packets to the block TP s12 , T.P. s13 , T.P. s21 , T.P. s32 and signature information Sig 1 , Sig 2 , Sig 3 and is stored.
[0043] The terminal device 100-(j, p) operated by the representative receives the signature request form M k Then, the packet groups of all the transfer packet bodies and all the signature information are stored in the hash chain storage unit 150 as blocks of a hash chain.
[0044] The hash chain stored in the hash chain storage unit 150 is made public to participants of the blockchain j, including the representative, and participants of other blockchains i. In other words, the hash chain is stored in the hash chain storage unit 150 so that it can be accessed by terminal devices operated by participants of the own blockchain and other blockchains. <Blockchain storage process (S150)> Fig. 10 is a diagram for explaining the blockchain storage process (S150). In the example of Fig. 10, a transfer packet TP is stored in a block of blockchain 1. s21 However, a transfer packet TP is sent to the block of blockchain 2. s12 and TP s32 However, a transfer packet TP is sent to the block of blockchain 3.s13 is stored.
[0045] A terminal device 100-(j, e) operated by a participant in each blockchain extracts a transfer packet addressed to its own blockchain stored in the hash chain and deploys it within its own blockchain. This process may be performed by a terminal device 100-(j, p) operated by the representative, or by a terminal device 100-(j, e) operated by another participant. The blockchain processing execution unit 130 of the terminal device 100-(j, e) stores the transfer packet as a block in its own blockchain. For example, transfer packets converted into a data format (transaction) to be processed within the blockchain are accumulated, and when the amount exceeds a predetermined data amount, the blockchain processing execution unit 130 of one of the terminal devices 100-(j, e) operated by the participant (block producer) generates a block containing the transfer packet converted into a transaction. <Verification Process S160> Figure 11 is a diagram for explaining the verification process S160. In the example of Figure 11, a transfer packet TP of blockchain 1 is stored. s12 and TP s13 Each participant who generated the hash chain C 2 and C 3 Similarly, transfer packets TP s21 and TP s32 Each participant who generated the hash chain C 1 and C 2 See to verify transfer completion.
[0046] The terminal device 100-(j, s) operated by the participant who issued the transfer packet of each blockchain receives the public hash chain C of the transfer destination blockchain i. i , and the transfer packet is transferred to the hash chain C of the destination blockchain i. i, and confirms that the packet transfer is complete and that its own packet has been transferred correctly. Also, participants within the destination blockchain i may autonomously verify the storage of the transferred packet. <Effects> With the above configuration, data transfer between blockchains can be realized without each blockchain having to maintain a light client. [Variation 1] In this embodiment, the packets in the transfer packet body are broadcast to other blockchains and shared, but they may also be sent only to the destination blockchain without being shared. In this case, the hash chain contains the signature request slip M k and its signature information may be stored.
[0047] Furthermore, the present invention may also include a device (terminal) for using the device, system, or method of the present invention via a network (telecommunication line). The "device (terminal) for use" may be equipped with functions (e.g., control functions, decoding functions, restoration functions, input / output functions, etc.) necessary to obtain the effects of implementing the device, system, or method of the present invention. [Processor, Program, Recording Medium] The functions realized by the components described herein may be implemented in circuitry or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), CPUs (Central Processing Units), conventional circuits, and / or combinations thereof, programmed to realize the described functions. A processor includes transistors and other circuits and is considered to be circuitry or processing circuitry. A processor may also be a programmed processor that executes a program stored in memory.
[0048] In this specification, a circuitry, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed herein or any hardware known to be programmed to realize or perform the described functions.
[0049] If the hardware is a processor considered to be a type of circuitry, the circuitry, means, or unit is a combination of the hardware and software used to configure the hardware and / or processor.
[0050] The various processes described above can be implemented by loading a program that executes each step of the above method into the recording unit 2020 of the computer 2000 shown in Figure 12, and operating the control unit 2010, input unit 2030, output unit 2040, display unit 2050, etc.
[0051] The program describing the processing contents can be recorded on a computer-readable recording medium, which may be, for example, a magnetic recording device, an optical disk, a magneto-optical recording medium, a semiconductor memory, or any other suitable recording medium.
[0052] The program may be distributed by, for example, selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be stored in a storage device of a server computer, and then transferred from the server computer to other computers via a network, thereby distributing the program.
[0053] A computer that executes such a program may first temporarily store the program recorded on a portable recording medium or transferred from a server computer in its own storage device. Then, when executing a process, the computer reads the program stored on its own recording medium and executes the process in accordance with the read program. Alternatively, the computer may read the program directly from a portable recording medium and execute the process in accordance with the program. Furthermore, the computer may execute the process in accordance with the program each time a program is transferred from a server computer to the computer. Alternatively, the server computer may not transfer the program to the computer, but may instead execute the process through a so-called ASP (Application Service Provider) service, which realizes the processing function by issuing an execution instruction and obtaining the results. Furthermore, the server computer may execute the process at the terminal using a so-called SaaS (Software as a Service) service, which allows users to use part of a server computer along with the program. In this embodiment, the program includes information used for processing by an electronic computer that is equivalent to a program (such as data that is not a direct instruction to a computer but has properties that dictate computer processing).
[0054] Furthermore, in this embodiment, the device is configured by executing a predetermined program on a computer, but at least a part of the processing contents may be realized by hardware.
Claims
1. A transfer system for transferring data between multiple blockchains, comprising a terminal device of a plurality of representatives included in each of the multiple blockchains, wherein the terminal device of the representative comprises: a signature key management unit that secretly manages a signature key; an inter-blockchain communication unit that sends transfer data generated in its own blockchain to a destination blockchain, receives transfer data generated in another blockchain and addressed to its own blockchain, generates a signature request form indicating the status of the transfer data based on the transfer data generated in its own blockchain, receives signature request forms generated in the other blockchains, and generates signatures using the signature key for information generated based on all of the signature request forms; and a hash chain storage unit that stores all of the signature request forms and a collection of multiple signatures generated by the terminal devices of the multiple representatives as blocks of a hash chain, wherein the hash chain is made public to participants in its own blockchain and participants in the other blockchains.
2. A terminal device of a representative included in a transfer system that transfers data between multiple blockchains, comprising: a signature key management unit that secretly manages a signature key; an inter-blockchain communication unit that sends transfer data generated in its own blockchain to a destination blockchain, receives transfer data generated in other blockchains and addressed to its own blockchain, generates a signature request form indicating the status of the transfer data based on the transfer data generated in its own blockchain, receives signature request forms generated in other blockchains, and generates signatures using the signature key for information generated based on all of the signature request forms; and a hash chain storage unit that stores all of the signature request forms and a collection of multiple signatures generated by the terminal devices of the multiple representatives as blocks of a hash chain, and the hash chain is made public to participants in its own blockchain and participants in the other blockchains.
3. A terminal device according to claim 2, wherein the signature request form includes an identifier of the own blockchain, an identifier of the destination blockchain, information generated from the transferred data, and a hash value of the previous block in the hash chain.
4. The terminal device according to claim 2, wherein the transfer data is signed by a sender of the transfer data.
5. The terminal device according to claim 2, wherein the signature request slip is signed by a representative corresponding to the inter-blockchain communication unit that generates the signature request slip.
6. A transfer method for transferring data between multiple blockchains using terminal devices of multiple representatives included in multiple blockchains, respectively, comprising: a transfer data sharing step in which the representative's terminal device sends transfer data generated in its own blockchain to a destination blockchain, receives transfer data generated in another blockchain and addressed to its own blockchain, generates a signature request form indicating the status of the transfer data based on the transfer data generated in its own blockchain, and receives the signature request form generated in the other blockchain; a signature sharing step in which the representative's terminal device generates signatures for information generated based on all of the signature request forms using a secretly managed signature key, and receives the signatures generated in the other blockchain; and a hash chain storage step in which the representative's terminal device stores all of the signature request forms and a collection of multiple signatures generated by the terminal devices of the multiple representatives as blocks of a hash chain in a hash chain storage unit, and the hash chain is made public to participants in its own blockchain and participants in the other blockchain.
7. A transfer system according to claim 1, further comprising a device for using said transfer system via a network.