Electronic contract method, electronic contract system, and program

The electronic contract system addresses inefficiencies in blockchain-based contract storage by connecting to a distributed blockchain system, allowing terminals to manage transactions efficiently without internal storage, thus simplifying system construction and reducing resource wastage.

JP2025107364AActive Publication Date: 2025-07-17KK TOSHIBA
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2025077761
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-05-08
Publication Date
2025-07-17
Estimated Expiration
2041-07-29

AI Technical Summary

Technical Problem

Existing systems face challenges in easily constructing a blockchain-based contract storage system, as each terminal needs to store a blockchain and transactions for all contracts, including irrelevant ones, leading to inefficiencies and resource wastage.

Method used

An electronic contract system connected to a blockchain system that manages transactions without requiring internal storage, utilizing a distributed blockchain system to store transactions based on instructions from the electronic contract system, enabling easy integration and efficient transaction management.

Benefits of technology

Facilitates the easy construction of a blockchain-based contract storage system by eliminating the need for internal storage units in terminals, reducing redundancy and simplifying the addition of new contractors, while ensuring secure and reliable transaction logging.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025107364000001_ABST
    Figure 2025107364000001_ABST
Patent Text Reader

Abstract

To implement a system which stores a block chain relating to a contract more easily.SOLUTION: There is disclosed an electronic contract method to be executed in an electronic contract system which is connected to a block chain system which stores a transaction into a block chain. The electronic contract method includes a contract processing step and a storage control step. The contract processing step receives from first and second contractors each agreement instruction for a contract having been concluded between the first and second contractors. The storage control step transmits to the block chain system an instruction to store into the block chain a first transaction indicating that the first contractor has agreed to the contract, and an instruction to store into the block chain a second transaction indicating that the second contractor has agreed to the contract.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to an electronic contract method, an electronic contract system, and a program.

Background Art

[0002] A contract agreement system has been proposed that stores transactions related to an agreed contract in a blockchain. A blockchain is a mechanism in which a plurality of devices constituting a distributed network synchronize transactions and store them connected like a chain.

[0003] For example, a technique has been proposed in which a plurality of terminals used by a plurality of contractors each include a storage unit that stores a blockchain, and each terminal stores a transaction including evidence of whether or not to agree to a contract in the storage unit provided in the self-terminal.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Patent Document 2

Summary of the Invention

Problems to be Solved by the Invention

[0005] However, in the prior art, it may not be possible to easily construct a system that stores a blockchain related to a contract. For example, in the above prior art, since each terminal is configured to store a blockchain, when adding a contractor, it is necessary to prepare a terminal having a storage unit that stores a blockchain for each of the added contractors. In addition, all terminals corresponding to each of a plurality of contractors need to store transactions related to contracts unrelated to the corresponding contractors.

Means for Solving the Problems

[0006] The electronic contract method of the embodiment is an electronic contract method executed in an electronic contract system connected to a blockchain system that stores transactions in a blockchain. The electronic contract method includes a contract processing step and a storage control step. The contract processing step receives an instruction of agreement for a contract concluded between a first contractor and a second contractor from each of the first contractor and the second contractor. The storage control step transmits an instruction to store a first transaction indicating that the first contractor has agreed to the contract and an instruction to store a second transaction indicating that the second contractor has agreed to the contract in the blockchain to the blockchain system.

Brief Description of the Drawings

[0007]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Mode for Carrying Out the Invention

[0008] Hereinafter, with reference to the accompanying drawings, preferred embodiments of the electronic contract method, electronic contract system, and program according to the present invention will be described in detail.

[0009] Hereinafter, a case where an electronic contract system that manages electronic bidding and makes a contract regarding electronic bidding is realized will be described as an example. The applicable system is not limited to a system related to electronic bidding.

[0010] In the above prior art, a plurality of terminals used by a plurality of contractors each include a storage unit that stores a blockchain. That is, in the prior art, each terminal is configured to store a blockchain while being a user terminal used for contract agreement.

[0011] If such a configuration is applied to an electronic contract system related to electronic bidding, for example, a contractor (a business operator corresponding to a contractor who agrees to the contract, a corporation, etc.) who makes a bid will also store a blockchain in its own terminal. Since all transactions for all contracts are stored in the blockchain, the contractor who makes a bid needs to store all in its own terminal even for contracts that are irrelevant to itself and can occur in large quantities (for example, several thousand to several tens of thousands per year).

[0012] The electronic contract system according to the present embodiment does not include a storage unit that stores a blockchain inside, and instructs a blockchain system including a storage unit that stores a blockchain to store a transaction.

[0013] The blockchain system is configured to store a blockchain in an internal storage unit according to an instruction from an external system including the electronic contract system of the present embodiment. The blockchain system is composed of, for example, a plurality of servers (blockchain peers) arranged in a distributed manner. Each server is operated by, for example, a plurality of operators unrelated to the parties of the electronic contract.

[0014] The electronic contract system, for example, uses a private key to sign a transaction (a packet including the transaction) electronically and sends the transaction to the blockchain system. After that, the processing related to the blockchain is executed by the blockchain system.

[0015] In this way, the electronic contract system only needs to have functions (such as programs) for creating, electronically signing, and sending transactions, and does not need to have a storage unit for storing the blockchain internally. When a contractor is added, for example, it is only necessary to make the above functions available from the terminal used by the contractor or add a terminal that can use the above functions. In this way, it becomes possible to more easily construct a system that stores a blockchain related to a contract.

[0016] FIG. 1 is a block diagram showing an example of the configuration of the electronic contract system 100 of the present embodiment. As shown in FIG. 1, the electronic contract system 100 is connected via the network 10 to the certification authorities 201 and 202, the orderer terminal 301, the bidder terminal 302, and the blockchain system 400.

[0017] The network 10 is, for example, the Internet, but may be any other form of network. The network 10 may be a wired network, a wireless network, or a network in which a wired network and a wired network are mixed.

[0018] The certification authorities 201 and 202 are institutions that issue electronic certificates used in various systems. For example, the certification authorities 201 and 202 issue private keys and public key certificates in authentication technologies based on the Public Key Infrastructure (PKI).

[0019] The certification authority 201 may be, for example, a ministry or agency certification authority recognized by the GPKI (Government Public Key Infrastructure), or an organizational certification authority recognized by the LGPKI (Local Government Public Key Infrastructure). The ministry or agency certification authority is, for example, a certification authority that issues official certificates of the orderer. The organizational certification authority is a certification authority that issues certificates of responsibilities of the orderer. The certification authority 202 may be, for example, a private certification authority that issues certificates of responsibilities of the bidder.

[0020] The certification authorities 201 and 202 do not necessarily need to be distinguished and may be replaced by one certification authority that issues electronic certificates to both the orderer and the bidder. Also, the electronic contract system 100 may be connected to three or more certification authorities.

[0021] The certification authorities 201 and 202 may be configured to issue IC (Integrated Circuit) cards that store private keys and public key certificates.

[0022] The orderer terminal 301 is a terminal used by the orderer of the electronic bid. In FIG. 1, one orderer terminal 301 is shown, but the electronic contract system 100 may be connected to two or more orderer terminals 301.

[0023] The bidder terminal 302 is a terminal used by the bidder of the electronic bid. In FIG. 1, one bidder terminal 302 is shown, but the electronic contract system 100 may be connected to two or more bidder terminals 302.

[0024] Each terminal (the orderer terminal 301 and the bidder terminal 302) can be configured by a general computer such as a personal computer. Further, each terminal uses each function of the electronic contract system 100 via various screens provided by the electronic contract system 100. For example, each terminal can be configured to use each function of the electronic contract system 100 by a browser or a web application or the like.

[0025] As described above, the blockchain system 400 is a system configured to store a blockchain in a storage unit provided therein according to an instruction from an external system.

[0026] The blockchain system 400 includes a communication control unit 411, a smart contract processing unit 412, a management unit 413, and a blockchain storage unit 421. The blockchain system 400 includes a plurality of servers (blockchain peers) that are multiplexed and distributed so as to include each of these units. Each server may be constructed on a cloud environment.

[0027] The blockchain storage unit 421 is a storage unit that stores a blockchain. For example, the blockchain storage unit 421 stores a transaction in the blockchain according to a smart contract executed by the smart contract processing unit 412.

[0028] The communication control unit 411 controls communication with an external system such as the electronic contract system 100. For example, the communication control unit 411 receives an instruction (such as an execution instruction of a smart contract) to store a transaction in the blockchain storage unit 421, which is transmitted from the electronic contract system 100. Further, the communication control unit 411 transmits an execution result of the process (such as a return value of the instructed smart contract) to the requester of the process (such as the electronic contract system 100).

[0029] The smart contract processing unit 412 executes the smart contract for which execution is instructed. For example, the smart contract processing unit 412 executes the instructed smart contract among a plurality of smart contracts each defining processing for each type of transaction, and stores the transaction in the blockchain. The plurality of smart contracts includes an electronic contract smart contract that stores a contract by the electronic contract system 100.

[0030] The smart contract may be described in a general-purpose language such as JavaScript (registered trademark). An external system such as the electronic contract system 100 can cause a desired smart contract to be executed using a web application or the like that uses an API for calling the smart contract.

[0031] It can also be interpreted that executing a smart contract is a transaction. A log (transaction log) indicating the execution state of the transaction is stored in the blockchain. The transaction log includes, for example, information identifying the called smart contract, the arguments of the smart contract, the date and time, and the caller.

[0032] The smart contract may be newly added and modified. The management unit 413 performs management of such smart contracts, as well as management of the system state and management of users. For example, the management unit 413 causes a management screen for modifying the smart contract and for test execution to be displayed on the administrator's terminal. The management unit 413 also causes a screen for checking the state of the blockchain system 400 and a screen for changing the user's authority to be displayed.

[0033] Modifying the smart contract and other processing by other administrators (changing the system configuration, changing the user's authority, etc.) may also be stored in the blockchain as a transaction. Thereby, a more reliable system can be realized.

[0034] A smart contract may have a function to call other smart contracts. For example, an electronic contract smart contract may be configured to call a smart contract for executing payment processing. If realized as a smart contract, since the transaction log can be stored in the blockchain as described above, a more reliable system can be realized compared to a method of realizing payment processing outside the blockchain system 400.

[0035] The electronic contract system 100 includes a registration processing unit 111, a contract management unit 112, a bidding processing unit 113, a contract processing unit 114, a memory control unit 115, an authentication unit 116, and a memory unit 121.

[0036] The registration processing unit 111 performs registration processing of a user (first user) of the electronic contract system 100. The user corresponds to a contractor who conducts an electronic contract by the electronic contract system 100. For example, the registration processing unit 111 executes a business registration process that examines the qualifications of a business operator who conducts an electronic bid and registers the business operator recognized by the examination as a user. In the business registration process, business information such as the name of the business operator, the name of the representative, the location, the email address, and the registration number issued at the time of certification is stored in the memory unit 121, for example.

[0037] In addition, the registration processing unit 111 executes a usage registration process for allowing the registered business operator to use the electronic contract system 100. The usage registration process includes, for example, a process of registering information of an IC card pre-assigned to the business operator. Before the usage registration process, the business operator requests the issuance of an IC card from, for example, the certification authorities 201 and 202 and obtains the IC card. The IC card can be used, for example, for login processing to the electronic contract system 100 (personal confirmation using IC card information or personal confirmation using a user ID and a password), and for electronic signature for an electronic document handled in the process of an electronic bid.

[0038] The private key and public key certificate stored in the IC card may be used for the electronic signature of the transaction stored in the blockchain system 400. The key information used for the electronic signature of the transaction is not limited to the key information stored in the IC card issued for the use of the electronic contract system 100.

[0039] For example, instead of the IC card, a private key assigned to a user (merchant) by another method (any method may be used) may be used for the electronic signature of the transaction. A wallet that stores the private key and public key may be used instead of the IC card.

[0040] Two or more key information (IC card, wallet) may be assigned to one merchant. For example, for one merchant, different key information may be assigned for each type of electronic bidding. Also, different key information may be assigned for each individual belonging to one merchant.

[0041] In such a case, the registration processing unit 111 may execute a process (association process) of associating a user (second user) of the blockchain system 400 with a plurality of key information. For example, the registration processing unit 111 executes an association process of associating one or more public keys assigned to a user of the electronic contract system 100 with a user of the blockchain system. A wallet address generated from the public key may be used instead of the public key.

[0042] By the association process, it becomes possible for a user of the electronic contract system 100 to store a transaction of an electronic contract with an electronic signature made by the private key assigned to himself / herself in the blockchain system 400.

[0043] The contract management unit 112 manages contracts related to electronic bidding. For example, the contract management unit 112 performs registration of cases subject to electronic bidding, management of successful bidders by electronic bidding, and management of contract contents with successful bidders.

[0044] The bid processing unit 113 executes processing related to electronic bidding. For example, the bid processing unit 113 makes the projects registered by the contract management unit 112 available for bidders to view or search as targets for electronic bidding. In addition, the bid processing unit 113 accepts applications for bids from bidders and accepts information indicating the determined winning bidder, etc.

[0045] The contract processing unit 114 executes processing related to electronic contracts. For example, the contract processing unit 114 accepts an instruction for agreement on a contract concluded between the contractor (first contractor) corresponding to the client of the electronic bidding and the contractor (second contractor) corresponding to the winning bidder of the electronic bidding, respectively. Then, the contract processing unit 114 uses the storage control unit 115 to perform processing for storing a transaction indicating agreement on the contract in the blockchain.

[0046] Note that the function of the contract processing unit 114 may be integrated into the contract management unit 112. When adding a function for electronicizing contracts (electronic contract function) to an existing system (such as an electronic bidding system), a configuration may be adopted in which the contract processing unit 114 that realizes the electronic contract function is provided independently of the contract management unit 112 as in this embodiment. Thereby, it becomes possible to more easily add an electronic contract function, that is, a function for storing a contract in the blockchain system 400, to the existing system.

[0047] The storage control unit 115 controls the processing for storing a transaction in the blockchain storage unit 421. For example, the storage control unit 115 transmits an instruction to store a transaction (first transaction) indicating that the client has agreed to the contract in the blockchain and an instruction to store a transaction (second transaction) indicating that the winning bidder has agreed to the contract in the blockchain to the blockchain system 400.

[0048] When the above-mentioned electronic contract smart contract is prepared, the memory control unit 115 can instruct to store a transaction indicating agreement to the contract in the blockchain by using the electronic contract smart contract, that is, by calling the electronic contract smart contract.

[0049] When the registration processing unit 111 executes the association processing, the memory control unit 115 may store in the blockchain a transaction (third transaction) indicating that a transaction indicating the association processing, for example, one or more public keys (or wallet addresses) assigned to the user of the electronic contract system 100 and the user of the blockchain system are associated. Thereby, it becomes possible to verify that the electronic contract is stored by the correct user.

[0050] The authentication unit 116 authenticates the user of the electronic contract system 100. For example, the authentication unit 116 authenticates the user by using the user ID, which is the identification information of the user, and the authentication information including the password. The authentication method is not limited to this, and any method may be used. For example, an authentication method using a PIN (Personal Identification Number) number stored in an IC card may be used.

[0051] The storage unit 121 stores various types of information used in the electronic contract system 100. For example, the storage unit 121 stores the merchant information obtained by the merchant registration process by the registration processing unit 111. Further, the storage unit 121 stores the association information obtained by the association process by the registration processing unit 111.

[0052] FIG. 2 is a diagram showing an example of the data structure of the correspondence information. As shown in FIG. 2, the correspondence information has a structure in which a blockchain user ID and key information are associated with each other. The blockchain user ID is identification information of a user of the blockchain system 400. The key information is information for specifying a key assigned to a user (such as a merchant) of the electronic contract system 100 corresponding to the user identified by the blockchain user ID. For example, the information for specifying the key is a public key included in an IC card or a wallet, or a unique value calculated from this public key.

[0053] Each of the above parts (registration processing unit 111, contract management unit 112, bidding processing unit 113, contract processing unit 114, memory control unit 115, and authentication unit 116) is realized by, for example, one or more processors. For example, each of the above parts may be realized by causing a processor such as a CPU (Central Processing Unit) to execute a program, that is, by software. Each of the above parts may be realized by a processor such as a dedicated IC, that is, by hardware. Each of the above parts may be realized by using a combination of software and hardware. When using a plurality of processors, each processor may realize one of the parts, or may realize two or more of the parts.

[0054] Each of the above storage parts (storage part 121 and blockchain storage part 421) can be configured by any generally used storage medium such as a flash memory, a memory card, a RAM (Random Access Memory), an HDD (Hard Disk Drive), and an optical disk.

[0055] The electronic contract system 100 may be constructed on a cloud environment, or may be composed of a plurality of servers arranged in a distributed manner, similar to the blockchain system 400.

[0056] Next, the pre-registration process by the electronic contract system 100 configured as described above will be explained. The pre-registration process is a process performed before executing an electronic contract, and includes the above-mentioned vendor registration process and usage registration process. FIG. 3 is a sequence diagram showing an example of the pre-registration process in the present embodiment.

[0057] The bidder uses the bidder terminal 302 to send an eligibility application to the electronic contract system 100 (step S101). For example, a screen for eligibility application provided by the electronic contract system 100 is displayed on the browser of the bidder terminal 302. The bidder uses this screen to send an eligibility application.

[0058] The registration processing unit 111 of the electronic contract system 100 receives the transmitted eligibility application and executes a vendor registration process for registering the certified bidder (step S102).

[0059] The eligibility review may be performed by the reviewer checking the application documents. In such a case, the vendor registration process may be executed when the review by the reviewer is completed and the reviewer designates to the electronic contract system 100 that the bidder has been certified.

[0060] The registration processing unit 111 transmits the review result to the bidder terminal 302 (step S103). The review result is transmitted, for example, by email, but may be transmitted by any other method.

[0061] If the bidder is certified as a result of the eligibility application, the bidder uses the bidder terminal 302 to request the certification authority 202 to issue an IC card for the usage registration process (step S104). The certification authority 202 sends the IC card issued to the requesting bidder (step S105).

[0062] The bidder who has received the IC card uses the bidder terminal 302 to send a usage registration application to the electronic contract system 100 (step S106). For example, the electronic contract system 100 (registration processing unit 111) displays on the bidder terminal 302 a screen for inputting the registration number and password of the bidder, etc., which are notified at the time of sending the qualification application or notified as a result of the qualification review. When the bidder inputs the registration number and password, etc. on this screen, the registration processing unit 111 displays a screen for registering user information. The user information includes, for example, the company information, the person in charge, and the contact email address of the bidder (business operator). When the bidder inputs the user information on this screen and instructs registration, a usage registration application including the user information is sent to the electronic contract system 100.

[0063] The registration processing unit 111 executes a usage registration process in response to the sent usage registration application (step S107). For example, the registration processing unit 111 stores the user information included in the usage registration application in the storage unit 121 or the like.

[0064] The registration processing unit 111 may execute an association process (step S108). The registration processing unit 111 stores the association information obtained in the association process in the storage unit 121. Also, the registration processing unit 111 stores, via the storage control unit 115, a transaction indicating the association process in the blockchain system 400 (blockchain storage unit 421) (step S109).

[0065] Next, the electronic bidding and electronic contract processing by the electronic contract system 100 configured as described above will be described. The electronic bidding and electronic contract processing includes processing related to electronic bidding (steps S201 to S210) and processing for storing the contract concluded as a result of the electronic bidding in the blockchain (steps S211 to S217). FIG. 4 is a sequence diagram showing an example of the electronic bidding and electronic contract processing in the present embodiment.

[0066] Steps S201 to S204 correspond to the login processing of the orderer and the bidder to the electronic contract system 100.

[0067] For example, the orderer uses the authentication screen displayed on the orderer terminal 301 to input the orderer's authentication information (e.g., user ID, password), and transmits the authentication information to the electronic contract system 100 (authentication unit 116) (step S201). The authentication unit 116 performs authentication using the authentication information and transmits the authentication result to the orderer terminal 301 (step S202).

[0068] Similarly, the bidder uses the authentication screen displayed on the bidder terminal 302 to input the bidder's authentication information, and transmits the authentication information to the electronic contract system 100 (authentication unit 116) (step S203). The authentication unit 116 performs authentication using the authentication information and transmits the authentication result to the bidder terminal 302 (step S204).

[0069] When the login is successful, the orderer uses, for example, the project registration screen displayed on the orderer terminal 301 to input information (project information) about the project to be the subject of the electronic bid, and instructs registration. The orderer terminal 301 transmits a registration instruction for the project information to the electronic contract system 100 (contract management unit 112) according to the instruction (step S205).

[0070] The contract management unit 112 performs processes such as registering the corresponding project as the subject of the electronic bid according to the received project information. The registered project is displayed, for example, on the electronic bid screen or can be searched on the electronic bid screen.

[0071] When the login is successful, the bidder uses, for example, the electronic bid screen displayed on the bidder terminal 302 to input bid information including bid conditions for the desired project, and instructs transmission. The bidder terminal 302 transmits the bid information to the electronic contract system 100 (bid processing unit 113) according to the instruction (step S206).

[0072] The orderer determines the winning bidder by referring to the bid information sent from each bidder. The orderer inputs bidder information indicating the determined winning bidder, for example, using a screen for registering the winning bidder displayed on the orderer terminal 301, and instructs transmission. The orderer terminal 301 transmits the bidder information to the electronic contract system 100 (bid processing unit 113) in response to the instruction (step S207).

[0073] The bid processing unit 113 transmits the transmitted bidder information to the contract management unit 112 (step S208). Thereby, the contract management unit 112 can manage that the winning bidder for the corresponding case has been determined.

[0074] The orderer further inputs, for example, using a screen for registering contract details displayed on the orderer terminal 301, the details of the contract to be concluded with the winning bidder, and instructs transmission. The orderer terminal 301 transmits the contract details to the electronic contract system 100 (contract management unit 112) in response to the instruction (step S209).

[0075] The contract management unit 112 generates contract document information corresponding to the electronic data of the contract document according to the received contract details (step S210).

[0076] In the case of a system that does not execute electronic contracts, for example, the generated contract document information is printed on paper media, and a contract using the paper media is executed. In the present embodiment, an electronic contract using the electronic data of the contract document is executed by the following steps S211 to S217.

[0077] The contract processing unit 114 transmits the contract document information to the bidder terminal 302 used by the bidder who is the winning bidder (step S211). The contract document information may include not only the contract document but also the electronic data of other related documents (related books) (details will be described later).

[0078] The bidder (winning bidder) inputs information indicating agreement to the contract using, for example, the agreement formation screen displayed on the bidder terminal 302, and instructs transmission. The bidder terminal 302 transmits information indicating contract agreement to the electronic contract system 100 (contract processing unit 114) in response to the instruction (step S212).

[0079] When the contract processing unit 114 receives an instruction for contract agreement, it instructs the storage control unit 115 to store the transaction information including the information indicating contract agreement as a transaction in the blockchain system 400 (step S213). For example, the contract processing unit 114 instructs to store a transaction indicating agreement to the contract using an electronic contract smart contract.

[0080] The storage control unit 115 stores the transaction information as a transaction in the blockchain system 400 (blockchain storage unit 421) in response to the instruction (step S214). For example, the storage control unit 115 stores the transaction by calling an electronic contract smart contract.

[0081] Similar processing is also executed on the orderer side. For example, the orderer inputs information indicating agreement to the contract using the agreement formation screen displayed on the orderer terminal 301, and instructs transmission. The orderer terminal 301 transmits information indicating contract agreement to the electronic contract system 100 (contract processing unit 114) in response to the instruction (step S215).

[0082] Steps S216 and S217 are the same as steps S213 and S214, so the description is omitted.

[0083] In FIG. 4, first, the bidder (winning bidder) stores the contract agreement transaction, and then the orderer stores the contract agreement transaction. However, the order of these storage processes may be reversed.

[0084] In addition, in Fig. 4, an example of the formation of a contract agreement between two parties (the order placer and the winning bidder) is shown, but the same procedure can be applied to the formation of an agreement among three or more contractors. In this case, multiple transactions indicating the formation of an agreement by multiple contractors are collectively stored in the blockchain.

[0085] Next, the details of the electronic bidding and electronic contract processing will be further explained. Fig. 5 is a diagram showing an example of the flow of the electronic bidding and electronic contract processing.

[0086] Note that in Fig. 5, the contract processing unit 114 is described as being divided into a "electronic contract" function for creating contract document information for an electronic contract, a "contract APL (application)" function for storing the transaction of the contract in the blockchain, and a "login process" function for verifying the identity of the contractor.

[0087] The contractor information obtained through the qualification application and contractor registration process by the registration processing unit 111 is stored in the storage unit 121 etc. and referred to by the contract management unit 112 (step S301). The contract management unit 112 registers the project information transmitted according to the instructions of the order placer (step S302). The registered project is transmitted to the bidding processing unit 113 as the target of the electronic bidding (step S303).

[0088] The bidding processing unit 113 receives the bidding information transmitted from the bidders (step S304). The bidding processing unit 113 notifies the winning bidder among the bidders that they have won according to the winning bidder information determined by the order placer (step S305). Also, the bidding processing unit 113 transmits the bidding result to the contract management unit 112 (step S306).

[0089] The contract management unit 112 receives the contract content input by the order placer (step S307). Fig. 6 is a diagram showing an example of a contract content input screen used for inputting the contract content. The contract content input screen includes functions such as searching for the target project, deleting the contract, updating the contract, and registering the input contract content.

[0090] Returning to FIG. 5, the contract management unit 112 transmits the contract document information generated based on the contract details input via the contract details input screen in FIG. 6 and the like to the contract processing unit 114 (step S308).

[0091] The contract document information may be output to the contract processing unit 114 when the orderer designates the output. FIG. 7 is a diagram showing an example of a contract output screen for designating the output of the contract document information. The contract output screen includes functions such as a function for searching for a target project and a function for outputting the contract document information corresponding to the contract details.

[0092] Returning to FIG. 5, the information for identifying the winning bidder (for example, identification information such as a user ID) is transmitted from the bidding processing unit 113 to the contract processing unit 114 (step S309).

[0093] As described above, the contract document information may include the electronic data of the related documents of the contract. For example, the contract processing unit 114 displays a screen for designating related documents on the orderer terminal 301, and receives information indicating the related documents designated by the orderer using this screen (step S310). The contract processing unit 114 may store and manage the related documents in the storage unit 121 and the like (document management in FIG. 5).

[0094] In the generation of the contract transaction, the identification information of the contractor (step S311) and the hash value of the contractor information (step S312) are used.

[0095] The contract processing unit 114 transmits the contract document information to the bidder terminal 302 used by the winning bidder (step S313). When the winning bidder instructs agreement to the contract, information indicating the contract agreement is transmitted to the contract processing unit 114 (step S314). The contract processing unit 114 stores the transaction information including the information indicating that the winning bidder has agreed to the contract in the blockchain system 400 as a transaction.

[0096] When the orderer instructs agreement to the contract (step S315), the contract processing unit 114 stores, as a transaction, transaction information including information indicating that the orderer has agreed to the contract in the blockchain system 400.

[0097] The contract processing unit 114 transmits information indicating the contract result to the contract management unit 112 (steps S316, S317).

[0098] Thus, according to the present embodiment, it is possible to realize the function of electronic contract (contract processing unit 114) in cooperation with each function such as qualification application (registration processing unit 111), electronic bidding (bidding processing unit 113), and contract management (contract management unit 112).

[0099] FIG. 8 is a diagram showing an example of an electronic contract screen that can be used in various processes by the contract processing unit 114. The electronic contract screen includes a related document addition button 801, a contract document transmission button 802, a contract agreement button 803, and an end button 804.

[0100] When the related document addition button 801 is pressed, for example, a screen for specifying related documents to be added to the contract is displayed. The contractor can add related documents through this screen.

[0101] When the contract document transmission button 802 is pressed, the contract document information is transmitted to the winning bidder (bidder terminal 302). This function corresponds to step S313 in FIG. 5.

[0102] When the contract agreement button 803 is pressed, transaction information including information indicating agreement to the contract is stored in the blockchain system 400 as a transaction. This function corresponds to steps S314 and S315 in FIG. 5.

[0103] When the end button 804 is pressed, the processing by the contract processing unit 114 ends. At this time, information indicating the contract result may be transmitted to the contract management unit 112 (step S317 in FIG. 5).

[0104] FIG. 9 is a diagram showing an example of the process flow of an electronic contract on the winning bidder side. The winning bidder is authenticated, for example, by the login function of the contract processing unit 114. By using the contract APL function of the contract processing unit 114, it is possible to search for the project to be the subject of the electronic contract and download the contract document information. Note that the contract document set corresponds to the downloaded contract document information (which may include related documents).

[0105] The winning bidder can further specify the contract agreement by using the contract APL function of the contract processing unit 114 and store it in the blockchain system 400 as a transaction indicating the contract agreement.

[0106] FIG. 10 is a diagram showing an example of the process flow of an electronic contract on the orderer side. The orderer is authenticated, for example, by the login function of the contract processing unit 114. The orderer can input the contract content to be included in the contract document by the contract management unit 112 ("contract management" in FIG. 10). Also, by using the contract APL function of the contract processing unit 114, it is possible to add related documents and search for other past contracts.

[0107] The orderer can further specify the contract agreement by using the contract APL function of the contract processing unit 114 and store it in the blockchain system 400 as a transaction indicating the contract agreement.

[0108] FIG. 11 is a diagram showing an example of the data structure of transaction information (transaction). The electronic document in FIG. 11 corresponds to, for example, the electronic data of the contract document. A and B correspond to, for example, the winning bidder and the orderer.

[0109] As shown in FIG. 11, the transaction information includes information obtained by electronically signing the hash value of the electronic document, the address of the public key, and information indicating the transaction act.

[0110] The hash value may be calculated by any method. For example, a method of calculating by a hash function such as SHA-256 (Secure Hash Algorithm 256-bit) can be applied. SHA-256 calculates, as the hash value, a value obtained by summarizing data of any length into 256 bits.

[0111] The information indicating the transaction act corresponds to, for example, the information indicating the contract agreement. Incidentally, if it is specified that no agreement is reached on the contract, the information indicating that no agreement is reached on the contract may be stored as the information indicating the transaction act.

[0112] As described above, in this embodiment, the electronic document itself is not stored in the blockchain, and only the fact of the transaction (contract agreement) is stored. Also, in this embodiment, for example, after Party A (the winning bidder) agrees and stores it in the blockchain storage unit 421, Party B (the orderer) can form an agreement on the same electronic document. That is, it is possible to store in the blockchain that a plurality of contractors (Party A and Party B) have agreed to the electronic data of one contract document.

[0113] Note that the transaction stored in the blockchain can be confirmed for its legitimacy by a third party. The third party is, for example, an individual (such as an auditor) other than the contractor (winning bidder) belonging to the company, a financing person for the company, and a resident related to the contracted project.

[0114] In this embodiment, the case where the electronic document stored in the blockchain is a contract document for electronic bidding has been described as an example. As described above, electronic bidding may be permitted only to bidders who have been certified in the eligibility review and have had an IC card issued by a certification authority. For this reason, the contract document for electronic bidding may correspond to only a part of the documents handled by the organization to which the bidder belongs.

[0115] However, since the method of storing electronic documents in this embodiment does not sign the electronic documents themselves, the target electronic documents do not necessarily have to be limited to the contract documents for electronic bidding. That is, the electronic documents stored in the blockchain are not limited to the contract documents for electronic bidding, and any electronic documents may be used.

[0116] For example, the target document can be extended to the following types of documents. Even in such a case where the target document is extended, the method of this embodiment can be applied without change. · Contract documents for optional contract cases · Contract-related documents (application forms, drawings, documents, etc.) · Other general documents

[0117] As described above, the electronic contract system according to this embodiment does not include a storage unit for storing a blockchain internally, but instructs a blockchain system including a storage unit for storing a blockchain to store transactions related to electronic documents. Therefore, it becomes possible to more easily construct a system for storing a blockchain related to a contract.

[0118] Also, even when there is an existing system (such as an electronic bidding system), by simply adding a function (contract processing unit) for cooperating with the blockchain system, transactions related to electronic documents can be stored in the blockchain.

[0119] When the existing system has a cooperation function for the function added by the existing system, for example, when it has a single sign-on function, by using such a cooperation function, an electronic contract system can be realized more easily.

[0120] Also, when key information such as an IC card is used in the existing system, this key information can also be used for the electronic signature of the transaction stored in the blockchain system 400. Therefore, the management of key information can be simplified.

[0121] Next, the hardware configuration of the devices (the orderer terminal 301 and the bidder terminal 302) according to this embodiment will be described with reference to FIG. 12. FIG. 12 is an explanatory diagram showing an example of the hardware configuration of the devices according to this embodiment.

[0122] The devices according to this embodiment include a control device such as a CPU 51, a storage device such as a ROM (Read Only Memory) 52 and a RAM (Random Access Memory) 53, a communication I / F 54 that connects to a network for communication, and a bus 61 that connects each part.

[0123] The program executed in the electronic contract system according to this embodiment is provided by being pre-embedded in the ROM 52 or the like.

[0124] The program executed in the electronic contract system according to this embodiment may be recorded on a computer-readable recording medium such as a CD-ROM (Compact Disk Read Only Memory), a flexible disk (FD), a CD-R (Compact Disk Recordable), a DVD (Digital Versatile Disk) in an installable or executable file format and provided as a computer program product.

[0125] Furthermore, the program executed in the electronic contract system according to this embodiment may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network. Also, the program executed in the electronic contract system according to this embodiment may be configured to be provided or distributed via a network such as the Internet.

[0126] The program executed in the electronic contract system according to this embodiment can cause a computer to function as each part of the electronic contract system described above. This computer can read a program from a computer-readable storage medium and execute it in the main storage device by the CPU.

[0127] Although some embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the gist of the invention. These embodiments and their modifications are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalent scope thereof.

Explanation of Reference Numerals

[0128] 100 Electronic contract system 111 Registration processing unit 112 Contract management unit 113 Bidding processing unit 114 Contract processing unit 115 Memory control unit 116 Authentication unit 121 Memory unit 201 Certification authority 202 Certification authority 301 Orderer terminal 302 Bidder terminal 400 Blockchain system 411 Communication control unit 412 Smart contract processing unit 413 Management unit 421 Blockchain memory unit

Claims

1. An electronic contract method executed in an electronic contract system connected to a blockchain system that stores transactions in a blockchain, comprising: a contract processing step of receiving instructions for a transaction between a first contractor and a second contractor from each of the first contractor and the second contractor; a storage control step of transmitting to the blockchain system an instruction to store in the blockchain a first transaction indicating that the first contractor has performed the transaction, and an instruction to store in the blockchain a second transaction indicating that the second contractor has performed the transaction; An electronic contract method including the above.

2. The first transaction is electronically signed with first key information of the first contractor, The second transaction is electronically signed with second key information of the second contractor, The electronic contract method according to Claim 1.

3. At least one of the first key information and the second key information is key information stored in an IC (Integrated Circuit) card, The electronic contract method according to Claim 2.

4. The IC card is used for a login process to the electronic contract system, The electronic contract method according to Claim 3.

5. The first key information is a private key assigned to the first contractor, The second key information is a private key assigned to the second contractor, The electronic contract method according to Claim 2.

6. The transaction indicates agreement to a contract between the first contractor and the second contractor, The electronic contract method according to Claim 1.

7. The transaction indicates disagreement to a contract between the first contractor and the second contractor, The electronic contract method according to Claim 1.

8. The electronic contract method according to Claim 1, further comprising a second storage control step of transmitting to the blockchain system an instruction to store in the blockchain a transaction indicating the association between the first key information of the first contractor or the second key information of the second contractor and a user of the blockchain system. The electronic contract method according to Claim 1.

9. The storage control step transmits an instruction to store the first transaction and the second transaction in the blockchain using an electronic contract smart contract. The electronic contract method according to Claim 1.

10. An electronic contract system connected to a blockchain system that stores transactions in a blockchain, a contract processing unit that receives instructions for a transaction between a first contractor and a second contractor from each of the first contractor and the second contractor, a storage control unit that transmits to the blockchain system an instruction to store in the blockchain a first transaction indicating that the first contractor has performed the transaction, and an instruction to store in the blockchain a second transaction indicating that the second contractor has performed the transaction, an electronic contract system comprising the above.

11. A program for causing a computer included in an electronic contract system connected to a blockchain system that stores transactions in a blockchain to execute a contract processing step of receiving instructions for a transaction between a first contractor and a second contractor from each of the first contractor and the second contractor, and a storage control step of transmitting to the blockchain system an instruction to store in the blockchain a first transaction indicating that the first contractor has performed the transaction, and an instruction to store in the blockchain a second transaction indicating that the second contractor has performed the transaction. ​

Citation Information

Patent Citations

  • Contract agreement method, agreement verification method, contract agreement device, and agreement verification device

    JP2017220710A

  • Program, device, and method for processing information

    JP2020071810A

  • Signature server, signature method and signature program

    JP2020113085A

  • Contract agreement method, agreement verification method, contract agreement system, agreement verification device, contract agreement device, contract agreement program and agreement verification program

    WO2017010455A1

  • Transaction processing device, transaction processing method, and program for same

    WO2017170912A1