Online contract signing method and system based on intelligent contract
By using smart contracts to execute and record electronic contract signing on the blockchain network, the existing contract signing methods are solved, and an efficient, secure and traceable online contract signing process is achieved.
Patent Information
- Application Number
- CN202411835712.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-13
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2044-12-13
AI Technical Summary
The existing contract signing methods are cumbersome and time-consuming and cannot be traced, resulting in poor user experience.
The online contract signing method based on smart contracts is adopted to implement and record the electronic contract signing process on the blockchain network to achieve electronic and traceability of contracts.
It simplifies the contract signing process, improves signing efficiency, ensures reliable transmission and data security of contracts, and provides contract traceability functions, improving user experience.
Smart Images

Figure CN120013548A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, specifically to technical fields such as blockchain and collaborative remote office, and in particular to an online contract signing method and system based on smart contracts. Background Art
[0002] Currently, contract signing is generally done offline. After the contract drafter drafts the contract, it is printed on paper. After printing, multiple copies are distributed to the corresponding contracting parties. After the contracting parties confirm that the contract content is correct, the contracting parties seal and sign to complete the signing of a contract.
[0003] However, the signing of existing offline contracts requires paper printing, which consumes paper; and the signing and stamping require the contracting personnel to go to the site or confirm the signing by mail, which is a cumbersome and time-consuming offline confirmation operation. Most importantly, the existing contract signing method cannot trace the source after the contract is signed, so when faced with contract disputes, it is impossible to resolve disputes based on traceability information, resulting in a poor user experience. Summary of the invention
[0004] The present application provides an online contract signing method and system based on smart contracts to solve the problem that existing contract signing solutions are cumbersome, time-consuming and cannot be traced, which leads to poor user experience.
[0005] The technical solution is as follows:
[0006] In a first aspect, a method for online contract signing based on a smart contract is provided, which is applied to a blockchain network deployed with a smart contract, and the smart contract can be used to execute and record the signing of an electronic contract; the method comprises:
[0007] The contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract. The smart contract verifies the contract initiating node that submitted the information and saves the submitted information after verifying its legality.
[0008] After the signing node checks and confirms that the electronic contract is correct and the first signature is verified, it submits its second signature of the electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information and saves the latest submitted information after verification of legality;
[0009] The contract initiation node reads the electronic contract from the smart contract, adds the text signature and the first electronic seal of the contract initiator, and submits the latest electronic contract signed by the contract initiator and its third signature on the latest electronic contract to the smart contract; the smart contract verifies the contract initiation node that has submitted the latest information, and saves the latest information after verifying its legality; the first electronic seal is related to the electronic contract;
[0010] After the signing node verifies the latest submitted information in the smart contract, it adds the text signature and the second electronic seal of the signing party to the latest electronic contract, and submits the latest electronic contract signed by the signing party and its fourth signature on the latest electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information, and saves the latest submitted information after verification of legality; the second electronic seal is related to the electronic contract signed by the contract initiator;
[0011] The contract initiating node verifies the latest submitted information in the smart contract, and after the verification is passed, determines that the online contract is signed.
[0012] In a possible implementation, before the contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract, the method further includes:
[0013] The contract initiation node and the signing node respectively send a contract signing request to the smart contract; based on the contract signing request, the smart contract is deployed on the blockchain network to execute and record the contract content of the electronic contract signing, and added to the address of the smart contract; wherein, only the contract initiation node and the signing node can perform related write operations based on the contract content.
[0014] In one possible implementation, the first signature is the result of encrypting the encoded information of the electronic contract based on the private key of the contract initiator; and / or; the second signature is the result of encrypting the encoded information of the electronic contract based on the private key of the contracting party; and / or; the third signature is the result of encrypting the encoded information of the latest electronic contract signed by the contract initiator based on the private key of the contract initiator; and / or; the fourth signature is the result of encrypting the encoded information of the latest electronic contract signed by the contracting party based on the private key of the contracting party.
[0015] In one possible implementation, the first electronic signature is a barcode or QR code generated by encrypting the encoded information and current time of the electronic contract based on the private key of the contract initiator; and / or; the second electronic signature is a barcode or QR code generated by encrypting the encoded information and current time of the electronic contract signed by the contract initiator based on the private key of the contracting party.
[0016] In a possible implementation, the signing node reads the latest submitted information in the smart contract to verify the signature, which specifically includes:
[0017] The signing node uses the public key of the contract initiator to decrypt the third signature submitted by the contract initiator in the smart contract; if the decryption is successful, the public key of the contract initiator is used to further decrypt the first electronic signature; if the decryption is successful, the signature verification is passed.
[0018] In a possible implementation, the contract initiating node verifies the latest submitted information in the smart contract, specifically including:
[0019] The contract initiating node uses the public key of the contracting party to decrypt the fourth signature submitted by the contracting party in the smart contract; if the decryption is successful, the public key of the contracting party is used to further decrypt the second electronic signature; if the decryption is successful, the signature verification is passed.
[0020] In the second aspect, an online contract signing system based on a smart contract is provided, which is applied to a blockchain network deployed with a smart contract, and the smart contract can be used to execute and record the signing of an electronic contract; the online contract signing system includes: a contract initiation node, a signing node, and a smart contract; wherein,
[0021] The contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract. The smart contract verifies the contract initiating node that submitted the information and saves the submitted information after verifying its legality.
[0022] After the signing node checks and confirms that the electronic contract is correct and the first signature is verified, it submits its second signature of the electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information and saves the latest submitted information after verification of legality;
[0023] The contract initiation node reads the electronic contract from the smart contract, adds the text signature and the first electronic seal of the contract initiator, and submits the latest electronic contract signed by the contract initiator and its third signature on the latest electronic contract to the smart contract; the smart contract verifies the contract initiation node that has submitted the latest information, and saves the latest information after verifying its legality; the first electronic seal is related to the electronic contract;
[0024] After the signing node verifies the latest submitted information in the smart contract, it adds the text signature and the second electronic seal of the signing party to the latest electronic contract, and submits the latest electronic contract signed by the signing party and its fourth signature on the latest electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information, and saves the latest submitted information after verification of legality; the second electronic seal is related to the electronic contract signed by the contract initiator;
[0025] The contract initiating node verifies the latest submitted information in the smart contract, and after the verification is passed, determines that the online contract is signed.
[0026] In a third aspect, a computer-readable storage medium is provided, wherein at least one instruction is stored in the storage medium, and the at least one instruction is loaded and executed by a processor to implement the method of the above-mentioned aspect and any possible implementation manner.
[0027] In a fourth aspect, an electronic device is provided, including:
[0028] at least one processor; and
[0029] a memory communicatively connected to the at least one processor; wherein,
[0030] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method of any possible implementation manner and the aspects described above.
[0031] According to a fifth aspect, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements the above-mentioned aspects and any possible implementation method.
[0032] The beneficial effects of the technical solution provided by this application include at least:
[0033] It can be seen from the above technical solution that the electronic contract is generated and signed by the contract initiator, submitted to the smart contract, and the submission information is saved after the smart contract passes the identity verification of the submitter. After that, the contracting party checks and confirms the content of the contract from the smart contract through the web link, verifies the electronic contract, and after the verification is passed, the electronic contract is signed and submitted to the smart contract. After the smart contract passes the identity verification of the submitter, the submission information is saved. Then, the contract initiator and the contracting party respectively verify the latest electronic contract in the smart contract, and after the verification is passed, the text signature and the corresponding electronic seal are added to the electronic contract based on the web link, and the signature is submitted to the smart contract. Finally, the contract initiator verifies the latest electronic contract in the smart contract, and after the verification is passed, it is determined that the online contract is signed. Therefore, the online electronic contract replaces the offline paper contract, simplifies the contract signing process, and is convenient and fast; moreover, each initiation or reception of the electronic contract will be verified to ensure the reliable transmission of the electronic contract between the contracting party and the contract initiator. At the same time, each confirmation and modification data of the electronic contract is saved in the smart contract, which can prevent the electronic contract from being modified manually and ensure data security. Moreover, as the recorder of the electronic contract signing process, the smart contract records the relevant data of the electronic contract in detail and accurately, which is convenient for tracing.
[0034] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0036] Figure 1 It is a schematic diagram of the steps of an online contract signing method based on a smart contract provided in an embodiment of the present application.
[0037] Figure 2 It is a schematic diagram of the online contract signing process based on smart contracts provided in an embodiment of the present application.
[0038] Figure 3 It is a structural diagram of an online contract signing system based on smart contracts provided in an embodiment of the present application.
[0039] Figure 4 It is a block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0040] The following is a description of exemplary embodiments of the present application in conjunction with the accompanying drawings, including various details of the embodiments of the present application to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present application. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.
[0041] Obviously, the described embodiments are only part of the embodiments of the present application, but not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.
[0042] It should be noted that the terminal devices involved in the embodiments of the present application may include but are not limited to mobile phones, personal digital assistants (PDAs), wireless handheld devices, tablet computers and other smart devices; display devices may include but are not limited to personal computers, televisions and other devices with display functions.
[0043] In addition, the term "and / or" in this article is only a description of the association relationship between the associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.
[0044] The existing contract signing methods are almost all implemented offline, but the confirmation operation is cumbersome and time-consuming. And after the contract is signed, it cannot be traced, and the user experience is poor. In view of this, the present application provides an online contract signing scheme based on smart contracts, and its inventive concept is: the electronic contract is generated and signed by the contract initiator, submitted to the smart contract, and the submission information is saved after the smart contract passes the identity verification of the submitter. After that, the contracting party checks and confirms that the content of the contract is correct from the smart contract through a web link, verifies the electronic contract, and after the verification is passed, the electronic contract is signed and submitted to the smart contract. After the smart contract passes the identity verification of the submitter, the submission information is saved. Then, the contract initiator and the contracting party respectively verify the latest electronic contract in the smart contract, and after the verification is passed, the text signature and the corresponding electronic seal are added to the electronic contract based on the web link, and submitted to the smart contract after signing. Finally, the contract initiator verifies the latest electronic contract in the smart contract, and after the verification is passed, it is determined that the online contract is signed. Therefore, the online electronic contract replaces the offline paper contract, which simplifies the contract signing process and is convenient and quick. Moreover, each initiation or receipt of the electronic contract will be verified to ensure the reliable transmission of the electronic contract between the contracting party and the contract initiator. At the same time, the confirmation data and modification data of each electronic contract are saved in the smart contract, which can prevent the electronic contract from being modified manually and ensure data security. Moreover, as the recorder of the electronic contract signing process, the smart contract records the relevant data of the electronic contract in detail and accurately, which is convenient for traceability.
[0045] Reference Figure 1 As shown, it is a schematic diagram of the steps of an online contract signing method based on smart contracts provided by an embodiment of the present application. The online contract signing scheme is applied to a blockchain network deployed with smart contracts, and the smart contract can be used to execute and record the signing of electronic contracts. The executor of the online contract signing method is the node device participating in the online contract signing scheme based on smart contracts, that is, the contract initiation node and the signing node in the blockchain network, and the smart contract in the blockchain network. Among them, the contract initiation node and the signing node each have their own public key, private key and account address, and the account address can be derived from the public key.
[0046] like Figure 1 As shown, the online contract signing method based on smart contract may include the following steps:
[0047] Step 102: The contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract. The smart contract verifies the contract initiating node that submitted the information and saves the submitted information after verifying its legality.
[0048] Before the contract initiation node submits the electronic contract and its first signature on the electronic contract to the smart contract, the contract initiation node and the signing node respectively send a contract signing request to the smart contract; based on the contract signing request, the smart contract is deployed on the blockchain network to execute and record the contract content of the electronic contract signing, and added to the address of the smart contract; wherein, only the contract initiation node and the signing node can perform related write operations based on the contract content.
[0049] Before signing a contract, the contract initiator and the contracting party will apply to the smart contract publisher (similar to a third-party security agency to ensure the security and compliance of the smart contract) through their respective node devices. After that, the smart contract publisher will deploy a smart contract for data maintenance for online electronic contract signing on the blockchain based on the application content, and publish the address of the smart contract. It should be understood that after the deployment of the smart contract, only the contract initiator and the contracting party can access and execute the write function of the smart contract, that is, they can write data on the smart contract.
[0050] The contract initiation node generates an electronic contract in the form of an image based on the contract content drafted by the contract initiator. Afterwards, the contract initiator signs the electronic contract with its own private key and submits the electronic contract and the first signature to the smart contract according to the contract address of the smart contract.
[0051] After receiving the submission information, the smart contract verifies the contract initiating node that submitted the information, ensures that it is a node device with write function permissions, and saves the submission information received this time. Specifically, the smart contract can decrypt and verify the first signature based on the public key of the contract initiating node stored locally. If the verification passes, it means that the contract initiating node that submitted the information is a node device with permissions.
[0052] Step 104: After the signing node checks and confirms that the electronic contract is correct and the first signature is verified, it submits its second signature on the electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information, and saves the latest submitted information after verification of its legality.
[0053] The signing node can find the electronic contract from the smart contract based on the web link, and after verifying the content of the electronic contract, use the public key of the contract initiator to verify the first signature. After the verification is passed, use its own private key to sign the electronic contract, and submit the electronic contract and the second signature to the smart contract corresponding to the contract address. The smart contract authenticates the signing node that submitted the information, ensures that it is a node device with write function permissions, and saves the submitted information received this time. Specifically, the smart contract can decrypt and verify the second signature based on the public key of the signing node stored locally. If the verification is passed, it means that the signing node that submitted the information is a node device with permission.
[0054] Step 106: The contract initiating node reads the electronic contract from the smart contract, adds the text signature and the first electronic signature of the contract initiator, and submits the latest electronic contract signed by the contract initiator and its own third signature on the latest electronic contract to the smart contract; the smart contract verifies the contract initiating node of the latest submitted information, and saves the latest submitted information after verification of legality; the first electronic signature is related to the electronic contract.
[0055] The contract initiation node can find the electronic contract in the latest submitted information from the smart contract based on the web link, and perform an online text signature on the electronic contract. At the same time, add the first electronic signature to obtain the latest electronic contract signed by the contract initiator. After that, the contract initiator uses its own private key to sign the latest electronic contract (third signature), and submits the latest electronic contract and the third signature to the smart contract corresponding to the contract address. After the smart contract receives the latest submitted information, it uses the local public key of the contract initiation node to decrypt and verify the third signature in the submitted information. If the verification passes, it means that the contract initiation node that submitted the information is a node device with write permission, and the submitted information received this time is saved. Among them, the first electronic signature is the result of encrypting the encoded information and current time of the electronic contract based on the private key of the contract initiator, and generating a barcode or QR code.
[0056] Step 108: After the signing node verifies the latest submitted information in the smart contract, it adds the text signature and the second electronic signature of the signing party to the latest electronic contract, and submits the latest electronic contract signed by the signing party and its own fourth signature on the latest electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information, and saves the latest submitted information after verification of its legality; the second electronic signature is related to the electronic contract signed by the contract initiator.
[0057] Specifically, when the signing node reads the latest submitted information in the smart contract for signature verification, it can use the public key of the contract initiator to decrypt the third signature submitted by the contract initiator in the smart contract; if the decryption is successful, the public key of the contract initiator is used to further decrypt the first electronic signature; if the decryption is successful, the signature verification is passed.
[0058] Afterwards, the signing node signs the electronic contract online based on the web link, and at the same time, adds the second electronic signature to obtain the latest electronic contract signed by the contracting party. Then, the contracting party uses its own private key to sign the latest electronic contract (the fourth signature), and submits the latest electronic contract and the fourth signature to the smart contract corresponding to the contract address. After receiving the latest submission information, the smart contract uses the public key of the signing node stored locally to decrypt and verify the fourth signature in the submission information. If the verification passes, it means that the signing node that submitted the information is a node device with write permission, and the latest submission information received this time is saved. Among them, the second electronic signature is the result of encrypting the coded information and current time of the electronic contract signed by the contract initiator based on the private key of the contracting party, and generating a barcode or QR code.
[0059] Step 110: The contract initiating node verifies the latest submitted information in the smart contract, and after the verification is passed, determines that the online contract is signed.
[0060] Specifically, when the contract initiating node verifies the latest submitted information in the smart contract, it can use the public key of the contracting party to decrypt the fourth signature submitted by the contracting party in the smart contract; if the decryption is successful, the public key of the contracting party is used to further decrypt the second electronic signature; if the decryption is successful, the verification is successful. After the contract initiating node verifies the latest submitted information in the smart contract, it is determined that the online contract signing plan is completed.
[0061] It should be understood that in the present application scheme, each time the smart contract saves new submission information, the saving time can be recorded in each submission information, or each submission information can carry the time information of the current signature. In this way, when reading data from the smart contract, it is convenient to accurately find the required data according to the time information.
[0062] In the present application scheme, the first signature is the result of encrypting the coded information of the electronic contract based on the private key of the contract initiator; and / or; the second signature is the result of encrypting the coded information of the electronic contract based on the private key of the contracting party; and / or; the third signature is the result of encrypting the coded information of the latest electronic contract signed by the contract initiator based on the private key of the contract initiator; and / or; the fourth signature is the result of encrypting the coded information of the latest electronic contract signed by the contracting party based on the private key of the contracting party. Therefore, by signing and verifying the electronic contract multiple times at different times, the electronic contract processor can be effectively verified to ensure the reliability of the electronic contract.
[0063] Reference Figure 2 As shown in FIG. 1 , a schematic diagram of the online contract signing process based on smart contracts provided in an embodiment of the present application is provided. Figure 2 As shown in the figure, the contract initiation node is the terminal device used by company A, which is marked as company A here; the contracting party is the terminal device used by employee B, which is marked as employee B here. The private key a1 and public key a2 on the company A side; the private key b1 and public key b2 on the employee B side; and the public key a2 of company A and the public key b2 of employee B are all stored in the smart contract. All data generated by the electronic contract signing process is stored in the smart contract. In the actual signing plan, when company A or employee B views the data in the smart contract, they can access it online through a web link.
[0064] The following signing process only shows the important steps. Other steps not shown can be referred to Figure 1 The relevant content of the embodiment shown.
[0065] Step 202: Company A drafts and generates an electronic contract, signs the electronic contract using private key a1, and submits the electronic contract and the first signature to the smart contract.
[0066] Step 204: The smart contract uses the locally stored public key a2 of company A to verify the first signature, and after the verification is passed, saves the submitted information.
[0067] Step 206: After employee B checks and confirms that the electronic contract is correct from the smart contract, he uses company A's public key a2 to verify the first signature.
[0068] Step 208: After the signature verification is passed, employee B uses private key b1 to sign the electronic contract and submits the electronic contract and the second signature to the smart contract.
[0069] Step 210: The smart contract uses the locally stored public key b2 of employee B to verify the second signature, and after the verification is passed, saves the submitted information.
[0070] Step 212: Company A reads the latest submitted electronic contract from the smart contract, adds the company name and the QR code signature generated based on private key a1 to the electronic contract, and uses private key a1 to sign the electronic contract (third signature), and submits the electronic contract with the company name and QR code signature, the third signature, and the signing time to the smart contract.
[0071] Specifically, Company A can use the canvas technology of the web page to sign online to achieve the purpose of adding the company name. Use canvas technology to add the QR code signature to the electronic contract and save it as an electronic contract image. After that, the electronic contract image signed by Company A, the signing time, and the third signature are submitted to the smart contract at the same time.
[0072] Step 214: The smart contract uses the locally stored public key a2 of company A to verify the third signature, and after the verification is passed, saves the submitted information.
[0073] Step 216: Employee B uses company A's public key a2 to verify the third signature and QR code signature of the latest electronic contract in the smart contract.
[0074] Step 218: After the signature verification is passed, employee B adds the employee name and the QR code signature generated based on the private key b1 to the latest electronic contract, and uses the private key b1 to sign the electronic contract (the fourth signature), and submits the electronic contract with the employee name and QR code signature, the fourth signature, and the signing time to the smart contract.
[0075] Similarly, employee B can also use the canvas technology of the web page to add the employee name and QR code signature.
[0076] Step 220: Company A uses employee B's public key b2 to verify the fourth signature and QR code signature of the latest electronic contract in the smart contract. After the verification is passed, it is determined that the online contract is signed.
[0077] The electronic contract signing method is convenient and fast. You only need to operate online to complete the contract signing. At the same time, the form of the previous contract is preserved to the maximum extent, and it can be printed into paper if necessary. In addition, the principles of blockchain and cryptography are used to ensure security. Every step of the contract signing can be traced, which is convenient for tracking and tracing. At the same time, the restrictions on the submission account of the smart contract are used. Even if the signature content is leaked, it cannot be submitted to the smart contract, which strengthens security protection.
[0078] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.
[0079] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0080] Figure 3 The structure diagram of an online contract signing system based on smart contracts provided by an embodiment of the present application is shown as follows: Figure 3As shown. The online contract signing system 300 based on smart contracts in this embodiment is applied to a blockchain network deployed with smart contracts, and the smart contracts can be used to execute and record the signing of electronic contracts; the online contract signing system 300 may include: a contract initiation node 301, a signing node 302, and a smart contract 303; wherein, there may be one or more signing nodes 302, and this application does not limit this. The contract initiation node 301 submits the electronic contract and its first signature on the electronic contract to the smart contract 303. The smart contract 303 verifies the contract initiation node 301 that submitted the information and saves the submitted information after the verification is legal. The signing node 302 checks and confirms that the electronic contract is correct from the smart contract 303 and the first signature is verified, and then submits its second signature on the electronic contract to the smart contract 303. The smart contract 303 verifies the signing node 302 that has submitted the latest information and saves the latest submitted information after the verification is legal. The contract initiation node 301 reads the electronic contract from the smart contract 303, adds the text signature and the first electronic seal of the contract initiator, and submits the latest electronic contract signed by the contract initiator and its third signature on the latest electronic contract to the smart contract. About 303; the smart contract 303 verifies the contract initiation node 301 of the latest submitted information, and saves the latest submitted information after verification is legal; the first electronic signature is related to the electronic contract; the signing node 302 verifies the latest submitted information in the smart contract 303, adds the text signature and the second electronic signature of the signing party to the latest electronic contract, and submits the latest electronic contract signed by the signing party and its own fourth signature on the latest electronic contract to the smart contract 303; the smart contract 303 verifies the signing node of the latest submitted information, and saves the latest submitted information after verification is legal; the second electronic signature is related to the electronic contract signed by the contract initiator; the contract initiation node 301 verifies the latest submitted information in the smart contract 303, and after the verification is passed, it is determined that the online contract is signed.
[0081] It should be noted that part or all of the online contract signing system based on smart contracts in this embodiment may be an application located in a local terminal, or may also be a functional unit such as a plug-in or software development kit (SDK) set in an application located in a local terminal, or may also be a processing engine located in a network-side server, or may also be a distributed system located on the network side.
[0082] It is understandable that the application may be a local program (nativeApp) installed on the local terminal, or may be a webpage program (webApp) of a browser on the local terminal, which is not limited in this embodiment.
[0083] Optionally, in a possible implementation of this embodiment, before the contract initiation node 301 submits the electronic contract and its first signature on the electronic contract to the smart contract 303, the contract initiation node 301 and the signing node 302 respectively send a contract signing request to the smart contract 303; based on the contract signing request, the smart contract 303 is deployed on the blockchain network to execute and record the contract content of the electronic contract signing, and added to the address of the smart contract 303; wherein, only the contract initiation node 301 and the signing node 302 can perform related write operations based on the contract content.
[0084] Optionally, in a possible implementation of this embodiment, the first signature is the result of encrypting the encoded information of the electronic contract based on the public key of the contract initiator; and / or; the second signature is the result of encrypting the encoded information of the electronic contract based on the public key of the contracting party; and / or; the third signature is the result of encrypting the encoded information of the latest electronic contract signed by the contract initiator based on the private key of the contract initiator; and / or; the fourth signature is the result of encrypting the encoded information of the latest electronic contract signed by the contracting party based on the private key of the contracting party.
[0085] Optionally, in a possible implementation of this embodiment, the first electronic signature is a barcode or QR code generated by encrypting the encoded information and current time of the electronic contract based on the private key of the contract initiator; and / or; the second electronic signature is a barcode or QR code generated by encrypting the encoded information and current time of the electronic contract signed by the contract initiator based on the private key of the contracting party.
[0086] Optionally, in a possible implementation of this embodiment, when the signing node 302 reads the latest submitted information in the smart contract 303 for signature verification, it is specifically used to use the public key of the contract initiator to decrypt the third signature submitted by the contract initiator in the smart contract 303; if the decryption is successful, the public key of the contract initiator is used to further decrypt the first electronic signature; if the decryption is successful, the signature verification is passed.
[0087] Optionally, in a possible implementation of this embodiment, when the contract initiating node 301 verifies the latest submitted information in the smart contract 303, it is specifically used to use the public key of the contracting party to decrypt the fourth signature submitted by the contracting party in the smart contract; if the decryption is successful, the public key of the contracting party is used to further decrypt the second electronic signature; if the decryption is successful, the verification is successful.
[0088] In this embodiment, the electronic contract can be generated and signed by the contract initiator, submitted to the smart contract, and the submitted information can be saved after the smart contract passes the identity verification of the submitter. After that, the contracting party checks and confirms the contract content from the smart contract through the web link, verifies the electronic contract, and after the verification is passed, signs the electronic contract and submits it to the smart contract. After the smart contract passes the identity verification of the submitter, the submitted information is saved. Then, the contract initiator and the contracting party respectively verify the latest electronic contract in the smart contract, and after the verification is passed, add a text signature and a corresponding electronic seal to the electronic contract based on the web link, and submit it to the smart contract after signing. Finally, the contract initiator verifies the latest electronic contract in the smart contract, and after the verification is passed, it is determined that the online contract is signed. Thus, the online electronic contract replaces the offline paper contract, simplifies the contract signing process, and is convenient and fast; moreover, each initiation or reception of the electronic contract will be verified to ensure the reliable transmission of the electronic contract between the contracting party and the contract initiator. At the same time, the confirmation data and modification data of each electronic contract are saved in the smart contract, which can prevent the electronic contract from being modified manually and ensure data security. Moreover, as the recorder of the electronic contract signing process, the smart contract records the relevant data of the electronic contract in detail and accurately, which is convenient for tracing.
[0089] An embodiment of the present application provides a computer-readable storage medium, in which at least one instruction is stored. The at least one instruction is loaded and executed by a processor to implement the online contract signing method based on smart contracts as described above.
[0090] An embodiment of the present application provides an electronic device, which includes a processor and a memory, wherein the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the online contract signing method based on the smart contract as described above.
[0091] An embodiment of the present application provides a computer program product, including a computer program, which implements the online contract signing method based on smart contracts when executed by a processor.
[0092] In the technical solution of this application, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the relevant laws and regulations and do not violate public order and good morals.
[0093] Figure 4 A schematic block diagram of an example electronic device 400 that can be used to implement an embodiment of the present application is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or required herein.
[0094] like Figure 4 As shown, the electronic device 400 includes a computing unit 401, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 402 or a computer program loaded from a storage unit 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data required for the operation of the electronic device 400 can also be stored. The computing unit 401, the ROM 402, and the RAM 403 are connected to each other via a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.
[0095] Multiple components in the electronic device 400 are connected to the I / O interface 405, including: an input unit 406, such as a keyboard, a mouse, etc.; an output unit 407, such as various types of displays, speakers, etc.; a storage unit 408, such as a disk, an optical disk, etc.; and a communication unit 409, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 409 allows the electronic device 400 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0096] The computing unit 401 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 401 performs the various methods and processes described above, such as an online contract signing method based on a smart contract. For example, in some embodiments, the method for online contract signing based on a smart contract may be implemented as a computer software program, which is tangibly included in a machine-readable medium, such as a storage unit 408. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 400 via the ROM 402 and / or the communication unit 409. When the computer program is loaded into the RAM 403 and executed by the computing unit 401, one or more steps of the method for online contract signing based on a smart contract described above may be executed. Alternatively, in other embodiments, the computing unit 401 may be configured to execute the method for online contract signing based on a smart contract in any other appropriate manner (for example, by means of firmware).
[0097] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0098] The program code for implementing the method of the present application can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, implements the functions / operations specified in the flow chart and / or block diagram. The program code can be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0099] In the context of the present application, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0100] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0101] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.
[0102] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.
[0103] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps disclosed in this application can be performed in parallel, sequentially or in different orders, as long as the desired results of the technical solution disclosed in this application can be achieved, and this document does not limit this.
[0104] The above specific implementations do not constitute a limitation on the protection scope of this application. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of this application should be included in the protection scope of this application.
Claims
1. An online contract signing method based on smart contracts, characterized in that: Applied to a blockchain network deployed with a smart contract, the smart contract can be used to execute and record the signing of an electronic contract; the method comprises: The contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract. The smart contract verifies the contract initiating node that submitted the information and saves the submitted information after verifying its legality. After the signing node checks and confirms that the electronic contract is correct and the first signature is verified, it submits its second signature of the electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information and saves the latest submitted information after verification of legality; The contract initiation node reads the electronic contract from the smart contract, adds the text signature and the first electronic seal of the contract initiator, and submits the latest electronic contract signed by the contract initiator and its third signature on the latest electronic contract to the smart contract; the smart contract verifies the contract initiation node that has submitted the latest information, and saves the latest information after verifying its legality; the first electronic seal is related to the electronic contract; After the signing node verifies the latest submitted information in the smart contract, it adds the text signature and the second electronic seal of the signing party to the latest electronic contract, and submits the latest electronic contract signed by the signing party and its fourth signature on the latest electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information, and saves the latest submitted information after verification of legality; the second electronic seal is related to the electronic contract signed by the contract initiator; The contract initiating node verifies the latest submitted information in the smart contract, and after the verification is passed, determines that the online contract is signed.
2. The method according to claim 1, characterized in that Before the contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract, the method further includes: The contract initiation node and the signing node respectively send a contract signing request to the smart contract; The smart contract is deployed on the blockchain network based on the contract signing request to execute and record the contract content of the electronic contract signing, and is added to the address where the smart contract is located; Among them, only the contract initiating node and the signing node can perform relevant write operations based on the contract content.
3. The method according to claim 1, characterized in that The first signature is the result of encrypting the encoded information of the electronic contract based on the private key of the contract initiator; and / or; The second signature is the result of encrypting the coded information of the electronic contract based on the private key of the contracting party; and / or; The third signature is the result of encrypting the coded information of the latest electronic contract signed by the contract initiator based on the private key of the contract initiator; and / or; The fourth signature is the result of encrypting the encoded information of the latest electronic contract signed by the contracting party based on the private key of the contracting party.
4. The method according to any one of claims 1 to 3, characterized in that: The first electronic signature is a barcode or a QR code generated by encrypting the coded information and current time of the electronic contract based on the private key of the contract initiator; and / or; The second electronic signature is a barcode or a QR code generated by encrypting the coded information and current time of the electronic contract signed by the contract initiator based on the private key of the contracting party.
5. The method according to claim 4, characterized in that The signing node reads the latest submitted information in the smart contract to verify the signature, specifically including: The signing node uses the public key of the contract initiator to decrypt the third signature submitted by the contract initiator in the smart contract; If the decryption is successful, the first electronic signature is further decrypted using the public key of the contract initiator; If the decryption is successful, the signature verification is successful.
6. The method according to claim 4, characterized in that The contract initiating node verifies the latest submitted information in the smart contract, specifically including: The contract initiating node uses the public key of the contracting party to decrypt the fourth signature submitted by the contracting party in the smart contract; If the decryption is successful, the second electronic signature is further decrypted using the public key of the contracting party; If the decryption is successful, the signature verification is successful.
7. An online contract signing system based on smart contracts, characterized in that: Applied to blockchain networks that deploy smart contracts that can be used to execute and record the signing of electronic contracts; The online contract signing system includes: a contract initiation node, a signing node, and a smart contract; wherein, The contract initiating node submits the electronic contract and its first signature on the electronic contract to the smart contract. The smart contract verifies the contract initiating node that submitted the information and saves the submitted information after verifying its legality. After the signing node checks and confirms that the electronic contract is correct and the first signature is verified, it submits its second signature of the electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information and saves the latest submitted information after verification of legality; The contract initiation node reads the electronic contract from the smart contract, adds the text signature and the first electronic seal of the contract initiator, and submits the latest electronic contract signed by the contract initiator and its third signature on the latest electronic contract to the smart contract; the smart contract verifies the contract initiation node that has submitted the latest information, and saves the latest information after verifying its legality; the first electronic seal is related to the electronic contract; After the signing node verifies the latest submitted information in the smart contract, it adds the text signature and the second electronic seal of the signing party to the latest electronic contract, and submits the latest electronic contract signed by the signing party and its fourth signature on the latest electronic contract to the smart contract; the smart contract verifies the signing node of the latest submitted information, and saves the latest submitted information after verification of legality; the second electronic seal is related to the electronic contract signed by the contract initiator; The contract initiating node verifies the latest submitted information in the smart contract, and after the verification is passed, determines that the online contract is signed.
8. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 6.
9. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-6.
10. A computer program product, comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Intelligent contract credible storage method and system with an access control function
CN109493042A
Signing method and equipment for realizing encrypted electronic contract based on blockchain intelligent contract
CN112307125A
Identity authorization method and system based on block chain
CN114584324A
Electronic signature system and method based on block chain
CN115688191A
Identity management method and device based on smart contract
CN116074126A