Electronic contract signing method and apparatus, system
Patent Information
- Application Number
- CN202211659396.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-22
- Publication Date
- 2026-09-11
- Estimated Expiration
- 2042-12-22
Smart Images

Figure CN116233157B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of blockchain technology in one or more embodiments, and in particular to an electronic contract signing method, apparatus, and system. Background Technology
[0002] Blockchain technology (also known as distributed ledger technology) is a decentralized distributed database technology with many characteristics such as decentralization, transparency, immutability, and trustworthiness, making it suitable for many application scenarios with high requirements for data reliability.
[0003] Given the aforementioned advantages of blockchain technology, after the electronic contract is signed, the relevant technology uploads the signed electronic contract to the blockchain system to prevent the signed electronic contract from being tampered with and to ensure the security of the electronic contract. Summary of the Invention
[0004] In view of the above, one or more embodiments of this specification provide an electronic contract signing method, apparatus, and system.
[0005] To achieve the above objectives, one or more embodiments of this specification provide the following technical solutions:
[0006] According to a first aspect of one or more embodiments of this specification, an electronic contract signing system is proposed, the electronic contract signing process comprising several steps; the system includes: a terminal, a server, and a blockchain system;
[0007] During the signing of the electronic contract, the terminal records the operation information of each step the user completes and sends the operation information to the server.
[0008] Upon receiving operation information sent by the terminal, the server provides the operation information to the blockchain system.
[0009] The blockchain system stores the operational information provided by the server.
[0010] According to a second aspect of one or more embodiments of this specification, an electronic contract signing method is proposed, applied to a terminal, comprising:
[0011] During the signing of an electronic contract, whenever a user completes any step of the electronic contract, the recorded operation information of that step is provided to the blockchain system so that the blockchain system can store and verify the operation information of that step.
[0012] According to a third aspect of one or more embodiments of this specification, an electronic contract signing method is proposed, applied to a server, comprising:
[0013] In response to the operation information sent by the terminal during the signing of the electronic contract, evidence information containing the operation information is generated; wherein, the signing process includes several steps, and the operation information is initiated by the terminal when the user completes each step;
[0014] The evidence storage information is provided to the blockchain system so that the blockchain system can store the received evidence containing the operation information.
[0015] According to a fourth aspect of one or more embodiments of this specification, a method for signing an electronic contract is proposed, applied to a blockchain system. The signing process of the electronic contract includes several steps, and the method includes:
[0016] Upon receiving operation information from any step in the signing process, the operation information from that step shall be stored as evidence.
[0017] The operation information for any of the steps is sent by the terminal when the user completes any of the steps.
[0018] According to a fifth aspect of one or more embodiments of this specification, an electronic contract signing device is provided, applied to a terminal, comprising:
[0019] The unit provides the operation information of each step in the electronic contract signing process to the blockchain system, so that the blockchain system can store the operation information of each step.
[0020] According to a sixth aspect of one or more embodiments of this specification, an electronic contract signing device is provided, applied to a server, comprising:
[0021] The generation unit, in response to the operation information sent by the terminal during the signing process of the electronic contract, generates evidence information containing the operation information; wherein, the signing process includes several steps, and the operation information is initiated by the terminal each time the user completes a step;
[0022] The providing unit provides the evidence storage information to the blockchain system, so that the blockchain system can store the received evidence containing the operation information.
[0023] According to a seventh aspect of one or more embodiments of this specification, an electronic contract signing device is provided, applied to a blockchain system. The electronic contract signing process includes several steps, and the device includes:
[0024] The evidence storage unit, upon receiving operation information from any step in the signing process, stores the operation information from that step as evidence.
[0025] The operation information for any of the steps is sent by the terminal when the user completes any of the steps.
[0026] According to an eighth aspect of one or more embodiments of this specification, an electronic device is provided, comprising:
[0027] processor;
[0028] Memory used to store processor-executable instructions;
[0029] The processor implements the method described in any one of the second, third, and fourth aspects by running the executable instructions.
[0030] According to a ninth aspect of one or more embodiments of this specification, a computer-readable storage medium is provided that stores computer instructions thereon, which, when executed by a processor, implement the steps of the method as described in any one of the second, third, and fourth aspects. Attached Figure Description
[0031] Figure 1 This is a schematic diagram of an electronic contract signing system provided in an exemplary embodiment.
[0032] Figure 2 This is a flowchart of an exemplary embodiment of an electronic contract signing method.
[0033] Figure 3 This is a flowchart of another electronic contract signing method provided in an exemplary embodiment.
[0034] Figure 4 This is a flowchart of another electronic contract signing method provided in an exemplary embodiment.
[0035] Figure 5 This is an interactive diagram illustrating an exemplary method for signing an electronic contract.
[0036] Figure 6 This is an interactive diagram of another electronic contract signing method provided in an exemplary embodiment.
[0037] Figure 7 This is a schematic diagram of the structure of a device provided in an exemplary embodiment.
[0038] Figure 8 This is a block diagram of an electronic contract signing device provided in an exemplary embodiment.
[0039] Figure 9 This is a block diagram of another electronic contract signing device provided in an exemplary embodiment.
[0040] Figure 10 This is a block diagram of yet another electronic contract signing device provided in an exemplary embodiment. Detailed Implementation
[0041] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with one or more embodiments of this specification. Rather, they are merely examples of apparatuses and methods consistent with some aspects of one or more embodiments of this specification as detailed in the appended claims.
[0042] It should be noted that the steps of the corresponding methods are not necessarily performed in the order shown and described in this specification in other embodiments. In some other embodiments, the methods may include more or fewer steps than described in this specification. Furthermore, a single step described in this specification may be broken down into multiple steps in other embodiments; and multiple steps described in this specification may be combined into a single step in other embodiments.
[0043] To prevent electronic contracts from being tampered with, related technologies typically upload the signed electronic contract to a blockchain system after it has been signed. This leverages the immutability and trustworthiness of the blockchain system to ensure the security of the electronic contract.
[0044] However, after the electronic contract is signed, it is highly likely that it has been tampered with before being uploaded to the blockchain system. In other words, the electronic contract stored in the blockchain system is very likely to be a contract altered by malicious actors after the user has signed the contract but before it has been uploaded to the blockchain, rather than the original electronic contract signed by the user. Therefore, if only the signing result is uploaded to the blockchain system as in related technologies, it can only guarantee that the electronic contract will not be tampered with after it is uploaded to the blockchain, but it cannot guarantee that the stored electronic contract has not been tampered with before it was uploaded to the blockchain.
[0045] Secondly, to ensure the absolute reliability of the electronic contract content, relevant personnel also proposed the requirement of ensuring the reliability of the "electronic contract signing process." On the one hand, this ensures that the signing process is compliant and legal; on the other hand, it prevents the electronic contract from being tampered with during the signing process. However, the electronic contract signing methods in related technologies clearly cannot meet the requirement of ensuring the reliability of the signing process.
[0046] In view of this, this specification proposes an electronic contract signing system that can record the operation information of the electronic contract during the signing process in real time and upload it to the blockchain, thereby ensuring the reliability of the electronic contract itself and its signing process.
[0047] Figure 1 This is a schematic diagram illustrating an exemplary embodiment of an electronic contract signing system. The electronic contract signing process includes several steps, such as... Figure 1 As shown, the signing system includes: terminal 11, server 12 and blockchain system 13;
[0048] During the signing of the electronic contract, terminal 11 records the operation information of any step that the user completes and sends the operation information to server 12 whenever the user completes any step of the electronic contract.
[0049] Upon receiving the operation information sent by the terminal 11, the server 12 provides the operation information to the blockchain system 13;
[0050] Blockchain system 13 stores the operation information provided by server 12.
[0051] As can be seen from the above introduction, since the relevant technology only uploads the signed electronic contract to the blockchain system, it can only guarantee that the signing result has not been tampered with after being uploaded to the chain, but it cannot guarantee the reliability of the signing process of the electronic contract, nor can it guarantee that the signed electronic contract has not been tampered with before being uploaded to the chain.
[0052] In view of this, during the process of a user operating on terminal 11 to sign an electronic contract, whenever the user completes any step related to the electronic contract, terminal 11 can record the operation information of that step and send the recorded operation information to server 12, so that server 12 can provide the received operation information to blockchain system 13. Upon receiving the operation information, blockchain system 13 can then store the operation information as evidence.
[0053] In other words, the terminal 11 included in the signing system will record the operation information on the blockchain in real time during the electronic contract signing process. It should be understood that because the operation information is recorded on the blockchain in real time by terminal 11 during the signing process, the reliability of the recorded operation information itself can be guaranteed, thereby preventing the electronic contract from being tampered with during the signing process. Recording the operation information of the steps executed during the signing process on the blockchain is equivalent to recording the user's operation process during the electronic contract signing process in the blockchain system 13. Therefore, the compliance and legality of the signing process can be determined based on the recorded operation information. Furthermore, if the electronic contract is tampered with after signing, it will inevitably be reflected in the recorded operation information, avoiding the problem in related technologies where only signed electronic contracts are recorded on the blockchain, making the electronic contracts highly susceptible to tampering after signing.
[0054] In this specification, when all operation information recorded during the signing process is uploaded by terminal 11 to blockchain system 13 via server 12, and all uploaded operation information is stored by blockchain system 13, blockchain system 13 can also generate the signing process of the user during the signing process based on the stored operation information.
[0055] In this specification, the blockchain system 13 generates a signing process based on all stored operational information, which can take different forms according to actual needs.
[0056] In one embodiment, the signing process can be presented in video format. In this embodiment, the operation information recorded by the terminal 11 when the user completes any step can be: a screen recording segment of the user performing that step. Correspondingly, all operation information stored in the blockchain system 13 can be: screen recording segments recorded by the user during each step. Based on this, the blockchain system 13 can stitch together all the stored screen recording segments recorded by the user during the signing process into a video file for displaying the user performing each operation during the signing process.
[0057] In this embodiment, since the signing process is presented in the form of a video file, users can verify whether the electronic contract has been tampered with during the signing process by watching the video.
[0058] In another embodiment, the signing process can be presented in the form of an operation log. In this embodiment, the operation information recorded by the terminal 11 when the user completes any step can be: the operation record information of the user during the execution of any step. Correspondingly, all operation information stored in the blockchain system 13 can be: the operation record information recorded by the user during the execution of each step. Based on this, the blockchain system 13 can generate a log file representing the user's execution of each operation during the signing process based on all the stored operation record information recorded by the user during the signing process.
[0059] In this embodiment, since the signing process is presented in the form of a log file, users can determine whether the electronic contract has been tampered with during the signing process by viewing the operation record information contained in the log file.
[0060] It should be noted that the above-described signing process is merely illustrative. The purpose of generating the signing process in this specification is to create a carrier representing the user's operational process during the signing process, so as to verify whether the signing process of the electronic contract is compliant and legal, and whether the electronic contract has been tampered with before being uploaded to the blockchain. The specific type of operational information recorded by terminal 11 during the signing process, and the form in which the signing process generated by blockchain system 13 is presented, can be determined by those skilled in the art according to actual needs, and this specification does not impose any restrictions on this.
[0061] In this specification, terminal 11 can also send the electronic contract signing page to server 12, so that server 12 can provide the signing page to blockchain system 13. Based on this, blockchain system 13 can generate a signing process for the user during the signing process, using the signing page and the stored operation information. For example, when the recorded operation information is operation record information, blockchain system 13 can simulate and generate a video file of the user signing the electronic contract on the signing page, based on all stored operation record information and the signing page. In this specification, the process of generating the signing process is equivalent to retrospectively reviewing the process of the user signing the electronic contract; therefore, the operation of generating the signing process can also be called signing retrospective.
[0062] In this specification, the timing of the above-mentioned signing process can also be determined according to the actual situation.
[0063] In one embodiment, execution can begin immediately once all operation information recorded during the electronic contract signing process has been stored in the blockchain system 13. For example, if all operation information recorded during the signing process has been uploaded to the blockchain system 13, the server 12 can send an instruction message to the blockchain system 13 indicating that all steps in the signing process have been completed. Upon receiving this instruction message, the blockchain system 13 can generate the signing process based on the stored operation information and store the signing process. It should be noted that the instruction message in this embodiment can be sent separately after the last operation information recorded during the signing process has been uploaded, or it can be uploaded to the blockchain system 13 along with the last operation information; this embodiment does not impose any restrictions on this.
[0064] In this embodiment, since the signing process is executed immediately after all operation information is stored in the blockchain system 13, when a verification request for an electronic contract is received, the electronic contract contained in the verification request can be verified directly based on the stored signing process.
[0065] In another embodiment, the aforementioned signing process can be generated upon receiving a contract verification request for the electronic contract. For example, when any user obtains an electronic contract, they can initiate a contract verification request for that electronic contract to the blockchain system 13. In response to the contract verification request, the blockchain system 13 can generate the aforementioned signing process of the user during the signing process based on the stored operation information, and verify the electronic contract contained in the contract verification request based on the generated signing process.
[0066] In this specification, to ensure the reliability of the generated signing process, a trusted execution environment can be constructed within the blockchain system 13. Based on this, the already stored operation information can be input into this trusted execution environment to generate the user's signing process within it. It should be noted that this specification allows for the construction of this trusted execution environment in any manner; for example, it can utilize ARM TrustZone technology or Intel's SGX technology, or it can be constructed using hardware structures such as FPGA chips. This specification does not impose any limitations on this approach.
[0067] In this specification, the blockchain system 13 typically needs to store a large amount of operational information recorded during the signing process of electronic contracts. Based on this, if any user needs to verify an electronic contract, they can add the unique identifier information of the corresponding electronic contract to the contract verification request. Then, when the blockchain system 13 receives a contract verification request, it can retrieve the operational information of the corresponding contract from several operational information sources based on the unique identifier information contained in the request, generate the signing process of the contract during the signing process, and verify the corresponding contract according to the signing process; alternatively, it can find the signing process corresponding to the contract from several stored signing processes based on the unique identifier information contained in the request, for use in verifying the corresponding contract. Of course, this is only illustrative; the specific method of verifying electronic contracts can be determined by those skilled in the art according to actual needs, and this specification does not impose any restrictions on this.
[0068] It should be noted that the verification of electronic contracts in this specification can refer to three things: First, verification operations to "verify whether the signing process of the electronic contract is compliant and legal." For example, given the aforementioned signing process, the compliance and legality of the signing process can be determined based on the signing process. Second, verification operations to "verify whether the electronic contract has been tampered with before being uploaded to the blockchain." For example, upon receiving a signed contract awaiting notarization, it can be determined whether the aforementioned signing process matches the received signed contract. If they match, it proves that the received signed contract awaiting notarization is the original contract obtained based on the aforementioned signing operation and has not been tampered with. Third, verification operations to "verify whether the electronic contract submitted by the user and obtained off-chain is the original contract obtained through the aforementioned signing operation." For example, if a user obtains the aforementioned electronic contract off-chain, they can generate a contract verification request and send it to the blockchain system 13. Upon receiving the request, the blockchain system 13 can verify the electronic contract contained in the request based on the aforementioned signing process to determine whether the electronic contract contained in the request has been tampered with by illegal elements and return the verification result. Of course, the examples here are merely illustrative. The specific verification operations described in this specification can be determined by those skilled in the art based on actual needs, and this specification does not impose any restrictions on this.
[0069] In this specification, the blockchain system 13 can also generate a hash value corresponding to any operation information received, in order to prevent the corresponding operation information from being tampered with. For example, if it is necessary to determine whether the operation information has been tampered with in the future, the operation information can be hashed again, and the hash value obtained can be compared with the previously generated hash value. If they match, it is determined that the operation information has not been tampered with.
[0070] In this specification, the blockchain system 13 can also return the generated hash value to the server 12. Based on this, the server 12 can generate evidence storage information based on the hash value of the previous operation information already on the chain and the received operation information when it receives operation information sent by the terminal 11, and provide the evidence storage information to the blockchain system 13 so that the blockchain system 13 can associate and store the operation information and hash value contained in the evidence storage information.
[0071] In other words, the blockchain system 13 in this specification can associate and store the hash value of the "previous operation information that was prioritized for on-chain storage" with the "operation information that needs to be on-chain this time." Based on this, once the notarization of all operation information recorded during the signing process of the electronic contract is completed, the blockchain system 13 can determine the execution order between the operations corresponding to each operation information based on the hash value associated with each operation information, and generate the signing process for the user during the signing process based on the determined execution order.
[0072] In this specification, when terminal 11 completes the signing operation of an electronic contract, it can send the generated signed contract to server 12, which then provides the signed contract to blockchain system 13. Blockchain system 13 can then store the signed contract provided by server 12. Based on this, as with related technologies, when any user needs to verify the signed contract obtained through the above signing operation, the signed contract maintained on-chain can be retrieved from blockchain system 13 to verify whether the signing result has been tampered with. Of course, upon receiving the signed contract, blockchain system 13 can also, as described above, verify the received signed contract based on the stored operation information. If the verification result shows that the signed contract matches the stored operation information, it can be determined that the signed contract has not been tampered with, and the signed contract is then stored. For example, in the actual verification process, a signing process can be generated as described above, and the signed contract can be verified based on this signing process.
[0073] It should be noted that terminal 11 in this specification can be any type of electronic device, as long as it enables users to sign electronic contracts. This can be determined by those skilled in the art based on actual needs, and this specification does not impose any restrictions. Similarly, server 12 in this specification can also be any type of electronic device. Server 12 is essentially a platform used to provide users with on-chain functionality, and its specific form can be set by those skilled in the art based on actual circumstances. This specification does not impose any restrictions.
[0074] It should also be noted that the blockchain system 13 in this specification can be deployed using the traditional architecture of blockchain technology, that is, all nodes in the blockchain system 13 are formed by deploying blockchain code on corresponding physical devices, and in most cases, each node corresponds to one physical device; the blockchain system 13 in this specification can also be deployed using the BaaS (Blockchain as a Service) architecture in blockchain technology, that is, all nodes in the blockchain system 13 are formed by deploying blockchain code on virtual machines implemented in the cloud through cloud services, and the blockchain nodes do not need to correspond to corresponding physical devices one by one.
[0075] As can be seen from the above technical solution, this specification divides the electronic contract signing process into several steps. The terminal included in the signing system can send the recorded operation information of any step to the server upon completion of that step, so that the server can upload it to the blockchain system for evidence storage. In other words, the signing system in this specification uploads the recorded operation information to the blockchain in real time during the user's electronic contract signing process.
[0076] It should be understood that the blockchain system stores the operation information uploaded in real time during the signing process, reflecting the user's actions during the signing process. If the signed contract generated through the signing operation is tampered with, a contradiction with the stored operation information will inevitably occur. Therefore, the signing system described in this specification avoids the problem in related technologies where only the signing result of the electronic contract is recorded, leading to undetected tampering of the electronic contract before it is uploaded to the blockchain.
[0077] This specification also proposes an electronic contract signing method, which is applied to a terminal. It should be noted that most of the operational methods in this electronic contract signing method, such as how to record and upload operation information, are consistent with the electronic contract signing system described above. The only difference is that the description focuses on the terminal as the executing entity. Related content can be found in the description of the signing system above and will not be repeated below.
[0078] Figure 2 This is a flowchart illustrating an exemplary embodiment of an electronic contract signing method described in this specification. The method is applied to a terminal, such as... Figure 2 As shown, the method may include the following steps:
[0079] Step 202: During the signing of the electronic contract, whenever the user completes any step of the electronic contract, the recorded operation information of that step is provided to the blockchain system so that the blockchain system can store the operation information of that step.
[0080] As described above, the terminal uploads the operation information recorded during the electronic contract signing process to the blockchain system, and after the blockchain system stores the evidence, the blockchain system can generate the electronic contract signing process based on the stored operation information of the user's various steps in executing the electronic contract.
[0081] As mentioned above, the generated signing process can be used to verify the signing process of electronic contracts to determine whether the signing process of electronic contracts is compliant and legal.
[0082] As described above, the terminal can record screen recordings of the user performing each step during the signing of an electronic contract. Once any screen recording is completed, it can be provided to the blockchain system for evidence storage. Based on this, the blockchain system can generate a signing video of the electronic contract based on the evidenced screen recordings of each step, which serves as the signing process described above.
[0083] As described above, the terminal can record the user's operation record information when performing each step during the process of signing an electronic contract. Once the recording of any operation record information is completed, the operation record information can be provided to the blockchain system for the blockchain system to store and prove the operation record information. Based on this, the blockchain system can generate a log file for signing the corresponding electronic contract based on the stored operation record information of each step, which serves as the aforementioned signing process.
[0084] It is important to emphasize that in this method, the terminal can either upload the recorded operation information to the blockchain system through the server, as described in the electronic contract signing system above; or, unlike the electronic contract signing system described above, the terminal can directly upload the recorded operation information to the blockchain system.
[0085] Specifically, when uploading operation information through the server, as described above, the server can upload the currently received operation information based on the hash value of the previous operation information, so that the blockchain system can associate and store the received operation information and the hash value. In addition, upon receiving any operation information, the server can return a temporary key to the terminal, allowing the terminal to encrypt and transmit the next operation information based on this temporary key.
[0086] As can be seen from the above technical solution, the terminal in this specification can upload the recorded operation information of any step in the signing process to the blockchain system for evidence storage. After the terminal uploads all the operation information recorded in the signing process to the blockchain system, it is equivalent to recording the signing process of the electronic contract in the blockchain system. On the one hand, the reliability of the electronic contract signing process can be determined based on the evidence-stored operation information, such as whether the signing process is compliant and legal. On the other hand, the signed contract stored on the chain can be verified based on the evidence-stored operation information to see if it has been tampered with before being uploaded to the chain, avoiding the problem in related technologies where only the signing result is uploaded to the chain, which may lead to the signed contract being tampered with before being uploaded to the chain.
[0087] This specification also proposes another method for signing electronic contracts, which is applied to a server. It should be noted that most of the operations in this method, such as how to upload operational information to the blockchain system, are consistent with the electronic contract signing system described above. The only difference is that the description focuses on the server as the executing entity. All relevant details can be found in the description of the electronic contract signing system above, and will not be repeated below.
[0088] Figure 3 This is a flowchart illustrating another method for signing an electronic contract, as shown in an exemplary embodiment of this specification. The method is applied to a server, such as... Figure 3 As shown, the method may include the following steps:
[0089] Step 302: In response to the operation information sent by the terminal during the signing process of the electronic contract, generate evidence information containing the operation information; wherein, the signing process includes several steps, and the operation information is initiated by the terminal when the user completes each step.
[0090] As described above, when a user needs to verify an electronic contract obtained through the aforementioned signing process, they can initiate a contract verification request to the server. Upon receiving the verification request, the server can initiate a contract verification transaction with the blockchain system based on the electronic contract included in the verification request. The blockchain system will then verify the electronic contract included in the contract verification transaction based on the stored operational information.
[0091] It is worth noting that when verifying based on the stored operation information, it is possible to verify whether the electronic contract included in the transaction is an electronic contract obtained through the aforementioned signing process, i.e., to verify whether the electronic contract uploaded by the user has been tampered with; it is also possible to verify whether the signing process of the electronic contract is compliant and legal.
[0092] Step 304: Provide the evidence storage information to the blockchain system so that the blockchain system can store the received evidence containing the operation information.
[0093] As described above, the blockchain system can generate a hash value for any operation information after it has been stored as evidence, and return the hash value to the server. Based on this, when the server receives the next operation information uploaded by the terminal for that operation information, it can generate evidence information based on the hash value of the previous operation information and the received next operation information, and provide this evidence information to the blockchain system, so that the blockchain system can associate and store the received hash value with the operation information.
[0094] As described above, upon receiving any operation information, the server can generate a temporary key corresponding to that operation information and return it to the terminal. The terminal, when recording the next operation information for that operation information, can then encrypt the next operation information based on the received temporary key and upload the encrypted operation information to the server. In other words, the server can generate a temporary key for uploading the next operation information each time it receives it, thus achieving encrypted transmission of operation information between the terminal and the server.
[0095] As can be seen from the above technical solution, the terminal in this specification can upload the recorded operation information of any step in the signing process to the server, so that the server can upload the operation information to the blockchain system for storage.
[0096] It should be understood that after uploading all the operational information recorded during the signing process to the blockchain system, it is equivalent to recording the signing process of the electronic contract in the blockchain system. On the one hand, the reliability of the signing process of the electronic contract can be verified based on the stored operational information. For example, it can be determined whether the signing process is compliant and legal. On the other hand, it can be verified based on the stored operational information whether the signed contract stored on the chain has been tampered with before being uploaded to the chain. This avoids the problem in related technologies where only the signing result is uploaded to the chain, which may lead to the signed contract being tampered with before being uploaded to the chain.
[0097] This specification also proposes another method for signing electronic contracts, which is applied to a blockchain system. It should be noted that most of the operational procedures in this method, such as how to store received operational information and how to verify the electronic contract, are consistent with the electronic contract signing system described above. The only difference is that the blockchain system is used as the execution entity in this description. All relevant details can be found in the description of the electronic contract signing system above and will not be repeated below.
[0098] Figure 4 This is a flowchart illustrating another electronic contract signing method as an exemplary embodiment of this specification. The method is applied to a blockchain system, and the electronic contract signing process includes several steps, such as... Figure 4 As shown, the method may include the following steps:
[0099] Step 402: Upon receiving operation information of any step recorded during the signing process, the operation information of any step is stored as evidence; wherein, the operation information of any step is sent by the terminal when the user completes the any step.
[0100] As described above, once the blockchain system has completed the notarization of all operational information recorded during the signing process, it can generate the signing process of the user based on the notarized operational information.
[0101] As described above, the signing process generated by the blockchain system may include at least one of the following: a log file representing the various operations performed by the user during the signing process; or a video file showing the various operations performed by the user during the signing process.
[0102] As described above, when a blockchain system receives a contract verification request for the aforementioned electronic contract, it can verify the electronic contract contained in the request based on the generated signing process. The generation of this signing process can be performed either by the blockchain system after all the notarization of operation information recorded during the signing process has been completed, or by the blockchain system based on the notarized operation information upon receiving the contract verification request.
[0103] As mentioned above, upon receiving any operation information, the blockchain system can generate a hash value corresponding to that operation information to prevent tampering. Furthermore, the blockchain system can return the generated hash value to the server. Upon receiving the next operation information from the terminal, the server can generate evidence-keeping information based on the hash value of the previous operation information already on the blockchain and the received next operation information, and then provide this information to the blockchain system. Alternatively, if the terminal does not upload operation information through the server, the blockchain system can directly return the hash value to the terminal. The terminal, after recording the next operation information, can then provide the hash value of the previous operation information already on the blockchain along with the next operation information to the blockchain system for association and evidence storage.
[0104] As mentioned above, the blockchain system can determine the execution order of operations corresponding to each piece of operational information based on the hash value stored in association with each piece of operational information, and generate the signing process when a user signs an electronic contract based on the determined execution order.
[0105] As can be seen from the above technical solution, through this electronic contract signing method, the blockchain system can store evidence of the operation information uploaded by the terminal in real time. After the terminal uploads all the operation information recorded during the signing process, it is equivalent to recording the electronic contract signing process in the blockchain system. This allows the blockchain system to verify whether the electronic contract signing process is reliable based on the stored operation information, and to verify whether the signed electronic contract has been tampered with before being uploaded to the blockchain.
[0106] The following section will use the example of "preserving electronic contracts signed by users on the terminal" to introduce the technical solution in this manual.
[0107] Figure 5 This is an interactive diagram illustrating an exemplary embodiment of an electronic contract signing method described in this specification. Figure 5 As shown, the method may include the following steps:
[0108] Step 501: Access the electronic contract signing page on your smartphone.
[0109] In this embodiment, the smartphone can prioritize detecting its own network environment to ensure the security of the electronic contract signing environment. If the detection indicates a secure network environment, a connection request can be sent to the server to establish a network link between the smartphone and the server for real-time information transmission.
[0110] In this embodiment, a smartphone can obtain the electronic contract signing page in various ways. For example, it can receive a signing page sent by another user via the network; or, for example, the user can copy the signing page contained in another storage device to the smartphone. Of course, this is only illustrative, and how a smartphone specifically obtains the electronic contract signing page can be determined by those skilled in the art based on the actual situation. This embodiment does not limit this.
[0111] Step 502: The smartphone uploads the signing page to the server.
[0112] In this embodiment, when a smartphone obtains a signing page, it can send the signing page to a server, which will then provide it to a blockchain system for storage.
[0113] Step 503: The server uploads the signing page to the blockchain system.
[0114] Step 504: The blockchain system stores the evidence of the signed page.
[0115] Step 505: The smartphone displays the signing page to the user.
[0116] In this embodiment, in addition to storing the signing page in the blockchain system, the operation of recording operation information can also be performed asynchronously. The smartphone can display the signing page on the screen so that the user can perform the signing operation on the signing page.
[0117] Step 506: The smartphone monitors the user's actions on the signing page and sends the action information to the server each time an action is recorded.
[0118] In this embodiment, users need to perform several signing operations on the signing page to complete the signing of the electronic contract. During the signing process, each time a user completes a signing operation of the electronic contract, the smartphone can record the corresponding operation information and send the recorded operation information to the server.
[0119] Step 507: Each time the server receives an operation message, it provides that operation message to the blockchain system.
[0120] In this embodiment, upon receiving any operation information, the server can provide the operation information to the blockchain system for storage and verification.
[0121] Step 508: The blockchain system stores the received operation information as evidence.
[0122] It is worth noting that after receiving the operation information and storing the operation information, the blockchain system can, as... Figure 5 Wait for the next operation information, or you can... Figure 6 As shown, the hash value of the operation information is generated and returned to the server. When the server receives the next operation information, it can generate evidence storage information based on the received operation information and the hash value of the previous operation information, and submit the evidence storage information to the blockchain system so that the blockchain system can associate and store the two.
[0123] Step 509: Once the signing process is complete, the smartphone uploads the signed contract to the server.
[0124] In this embodiment, once the smartphone completes the signing process, it uploads the signed contract to the server, which then provides it to the blockchain system. Based on this, the blockchain system can store the received signed contract as evidence.
[0125] Step 510: The server provides the received signed contract to the blockchain system.
[0126] Step 511: The blockchain system stores the signed contract as evidence.
[0127] In this embodiment, upon receiving a signed contract, the blockchain system can verify the contract based on stored operation information. If the verification result indicates that the signed contract is the original contract obtained through the aforementioned signing operation, the signed contract is stored as evidence. For example, the process of signing an electronic contract can be simulated based on the stored signing page and the stored operation information. If the simulated signed electronic contract matches the received signed contract, it indicates that the signed contract is the original contract. It is easy to understand that this process is equivalent to proving that the received signed contract was not tampered with before being uploaded to the blockchain.
[0128] Of course, since the stored operational information can be used to simulate the process of signing an electronic contract, it is also possible to verify whether the signing process is compliant and legal, thereby meeting the regulatory requirements for signed contracts. It should be noted that the simulated process of signing an electronic contract can be presented in different forms, such as video, and this embodiment does not limit this.
[0129] In addition, as mentioned above, when a user obtains an electronic contract through off-chain channels after the aforementioned signing process, if they have doubts about the reliability of the electronic contract, they can initiate a verification request to the blockchain system. The blockchain system can then verify the electronic contract included in the request based on the already stored operational information. The specific verification methods have been described above and will not be repeated here.
[0130] As can be seen from the above technical solution, through the technical solution of this embodiment, the smartphone records the operations performed by the user on the signing page during the process of signing an electronic contract. Each time an operation is recorded, the operation information is uploaded to the blockchain system via the server. Based on this, after all the operation information recorded during the signing process has been uploaded to the blockchain, the blockchain system can verify the electronic contract based on the stored operation information.
[0131] It should be understood that putting the operation information on the blockchain is equivalent to recording the signing process of the electronic contract in the blockchain system. This can verify whether the signing process is compliant and legal, and can also verify whether the signed electronic contract has been tampered with before being put on the blockchain. This avoids the problem that related technologies cannot guarantee the reliability of the signing process, as well as the problem that the signed contract may be tampered with before being put on the blockchain because only the signing result is put on the blockchain.
[0132] Figure 7 This is a schematic structural diagram of a device provided in an exemplary embodiment. Please refer to... Figure 7 At the hardware level, the device includes a processor 702, an internal bus 704, a network interface 706, memory 708, and non-volatile memory 710, and may also include other hardware required for business operations. One or more embodiments of this specification can be implemented in software, such as the processor 702 reading the corresponding computer program from the non-volatile memory 710 into memory 708 and then running it. Of course, in addition to software implementation, one or more embodiments of this specification do not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0133] Please refer to Figure 8 Electronic contract signing devices can be applied to, for example... Figure 7 The device shown implements the technical solution described in this specification. The electronic contract signing device, applied to a terminal, may include:
[0134] The providing unit 801, during the process of signing an electronic contract, provides the recorded operation information of any step to the blockchain system whenever the user completes any step of the electronic contract, so that the blockchain system can store the operation information of any step.
[0135] Optionally, the operation information of the user for each step of the electronic contract, which is stored in the blockchain system, is used to generate the signing process of the electronic contract.
[0136] Optionally, the providing unit 801 is further used for:
[0137] Record screen recordings of the user performing any of the steps, and provide these recordings to the blockchain system; wherein, the screen recordings of each step stored in the blockchain system are used to generate the signing video of the electronic contract; or...
[0138] The system records the user's operation log information when performing any of the steps; and provides the operation log information to the blockchain system; wherein, the operation log information of each step stored in the blockchain system is used to generate a log file for signing the electronic contract.
[0139] Please refer to Figure 9 Electronic contract signing devices can be applied to, for example... Figure 7 The device shown implements the technical solution described in this specification. The electronic contract signing device, applied to a server, may include:
[0140] The generation unit 901 generates evidence information containing the operation information in response to the operation information sent by the terminal during the signing process of the electronic contract; wherein the signing process includes several steps, and the operation information is initiated by the terminal each time the user completes a step;
[0141] The providing unit 902 provides the evidence storage information to the blockchain system so that the blockchain system can store the received evidence containing the operation information.
[0142] Optional, also includes:
[0143] Initiating unit 903, in response to a contract verification request for the electronic contract, initiates a contract verification transaction to the blockchain system based on the electronic contract included in the contract verification request, so that the blockchain system can verify the electronic contract included in the contract verification transaction based on the stored operation information.
[0144] Optional, also includes:
[0145] The receiving unit 904 receives the hash value generated by the blockchain system based on any stored operation information;
[0146] The generation unit 901 is further configured to: generate evidence storage information based on the hash value and the next operation information when receiving the next operation information of any operation information sent by the terminal.
[0147] Please refer to Figure 10 Electronic contract signing devices can be applied to, for example... Figure 7 The device shown implements the technical solution described in this specification. The electronic contract signing device is applied to a blockchain system, and the electronic contract signing process includes several steps, which may include:
[0148] The evidence storage unit 1001, upon receiving operation information from any step in the signing process, stores the operation information from that step as evidence.
[0149] The operation information for any of the steps is sent by the terminal when the user completes any of the steps.
[0150] Optional, also includes:
[0151] The generation unit 1002, after completing the evidence storage operation of all operation information recorded in the signing process, generates the signing process of the user in the signing process based on the stored operation information.
[0152] Optionally, the signing process includes at least one of the following:
[0153] Log files used to characterize the various operations performed by the user during the signing process;
[0154] Video files used to demonstrate the various operations performed by the user during the signing process.
[0155] Optional, also includes:
[0156] Verification unit 1003, in response to a contract verification request for the electronic contract, verifies the electronic contract contained in the contract verification request based on the signing process.
[0157] The generation operation of the signing process is performed by the blockchain system after the notarization operation of all operation information recorded in the signing process has been completed, or by the blockchain system based on the notarized operation information when it receives the contract verification request.
[0158] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, which can take the form of a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email sending and receiving device, game console, tablet computer, wearable device, or any combination of these devices.
[0159] In a typical configuration, a computer includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0160] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0161] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, disk storage, quantum memory, graphene-based storage media or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0162] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0163] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0164] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of one or more embodiments of this specification. The singular forms “a,” “described,” and “the” used in one or more embodiments of this specification and in the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more associated listed items.
[0165] It should be understood that although the terms first, second, third, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of one or more embodiments of this specification, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "in response to a determination," or "when," or "in the event of a determination."
[0166] The above description is merely a preferred embodiment of one or more embodiments of this specification and is not intended to limit the scope of one or more embodiments of this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of one or more embodiments of this specification should be included within the scope of protection of one or more embodiments of this specification.
Claims
1. An electronic contract signing system, wherein the electronic contract signing process includes several steps; the system includes: Terminals, servers, and blockchain systems; During the signing of the electronic contract, the terminal records the operation information of each step the user completes and sends the operation information to the server; wherein, the operation information of each step includes screen recordings or operation records of the user during the execution of the step. Upon receiving operation information sent by the terminal, the server provides the operation information to the blockchain system in real time. The blockchain system stores the operational information provided by the server as evidence. The blockchain system is also used to: generate the user's signing process based on the stored operation information after completing the notarization operation of all operation information recorded in the signing process.
2. The signing system according to claim 1, The terminal records operation information for any of the steps, including: Record screen recording segments of the user performing any of the steps; The blockchain system generates a signing process for the user during the signing process based on the stored operation information, including: splicing together all the screen recordings of the user during the signing process into a video file to display the user performing various operations during the signing process.
3. The signing system according to claim 1, The terminal records operation information for any of the steps, including: Record the user's operation log information during the execution of any of the steps; The blockchain system generates a signing process for the user during the signing process based on the stored operation information, including: generating a log file to represent the user's execution of each operation during the signing process based on all the stored operation records of the user during the signing process.
4. The signing system according to claim 1, The terminal is also used to: send the signing page of the electronic contract to the server, so that the server can provide the signing page to the blockchain system; The blockchain system, based on the stored operation information, generates the signing process for the user during the signing process, including: Based on the signing page and the stored operation information, the signing process for the user during the signing process is generated.
5. The signing system according to claim 4, wherein the operation information recorded by the blockchain system for each step is: the operation record information of the user during the execution of the corresponding step; The blockchain system, based on the signing page and the stored operation information, generates the signing process for the user during the signing process, including: Based on all the stored operation records and the signing page, a video file is generated simulating the user signing an electronic contract on the signing page.
6. The signing system according to claim 1, The blockchain system, after completing the notarization of all operation information recorded during the signing process, generates the signing process for the user based on the notarized operation information, including: In response to the contract verification request for the electronic contract, a signing process for the user during the signing process is generated based on the stored operation information, and the electronic contract included in the contract verification request is verified based on the generated signing process.
7. The signing system according to claim 1, The blockchain system, after completing the notarization of all operation information recorded during the signing process, generates the signing process for the user based on the notarized operation information, including: In response to an indication message sent by the server indicating that all of the steps have been completed, a signing process for the user during the signing process is generated based on the stored operation information, and the signing process is stored. The blockchain system is also used to: in response to a contract verification request for the electronic contract, verify the electronic contract included in the contract verification request based on the notarized signing process.
8. The signing system according to claim 1, The blockchain system, based on the stored operation information, generates the signing process for the user during the signing process, including: The stored operation information is input into the trusted execution environment to generate the user's signing process in the trusted execution environment.
9. The signing system according to claim 1, The blockchain system is also used to: upon receiving any operation information provided by the server, generate a hash value corresponding to the operation information, and return the generated hash value to the server; Upon receiving operation information from the terminal, the server provides the operation information to the blockchain system, including: Upon receiving operation information from the terminal, evidence storage information is generated based on the hash value of the previous operation information already on the blockchain and the received operation information. The generated evidence storage information is then provided to the blockchain system, so that the blockchain system can associate and store the hash value and operation information contained in the evidence storage information.
10. The signing system according to claim 9, The blockchain system is also used to: after completing the notarization of all operation information recorded during the signing process, determine the execution order between the operations corresponding to each operation information based on the hash value associated with the notarization of each operation information, so as to generate the signing process of the user during the signing process based on the determined execution order.
11. The signing system according to claim 1, The terminal is also used to: when the user completes the signing operation of the electronic contract, send the generated signed contract to the server, so that the server can provide the signed contract to the blockchain system; The blockchain system is also used to: verify the signed contract provided by the server based on the stored operation information, and if the verification result shows that the signed contract has not been tampered with, then store the signed contract as evidence.
12. An electronic contract signing method, applied to a terminal, comprising: During the signing of an electronic contract, whenever a user completes any step of the electronic contract, the recorded operation information of that step is provided to the blockchain system in real time, so that the blockchain system can store the operation information of that step; the operation information of that step includes screen recordings or operation records of the user during the execution of that step. The operation information of the user for each step of the electronic contract, which is stored in the blockchain system, is used to generate the signing process of the electronic contract.
13. The method according to claim 12, wherein providing the recorded operation information of any of the steps to the blockchain system comprises: Record screen recordings of the user performing any of the steps, and provide these recordings to the blockchain system; wherein, the screen recordings of each step stored in the blockchain system are used to generate the signing video of the electronic contract; or... The system records the user's operation log information when performing any of the steps; and provides the operation log information to the blockchain system; wherein, the operation log information of each step stored in the blockchain system is used to generate a log file for signing the electronic contract.
14. An electronic contract signing method, applied to a server, comprising: In response to the operation information sent by the terminal during the signing of the electronic contract, evidence information containing the operation information is generated; wherein, the signing process includes several steps, and the operation information is initiated by the terminal when the user completes each step; the operation information of any step includes screen recording clips or operation record information of the user during the execution of any step; The evidence storage information is provided to the blockchain system in real time, so that the blockchain system can store the received evidence containing the operation information; wherein, the operation information of the user for each step of the electronic contract executed by the user stored in the blockchain system is used to generate the signing process of the electronic contract.
15. The method of claim 14, further comprising: In response to a contract verification request for the electronic contract, a contract verification transaction is initiated to the blockchain system based on the electronic contract included in the contract verification request, so that the blockchain system can verify the electronic contract included in the contract verification transaction based on the stored operation information.
16. The method according to claim 14, Also includes: Receive the hash value generated by the blockchain system based on any stored operation information; The step of generating evidence storage information containing the operation information in response to the operation information sent by the terminal during the signing of the electronic contract includes: generating evidence storage information based on the hash value and the next operation information when receiving the next operation information of any operation information sent by the terminal.
17. A method for signing an electronic contract, applied to a blockchain system, wherein the signing process of the electronic contract includes several steps, and the method includes: Upon receiving operation information from any step recorded during the signing process, the operation information from any step is stored as evidence; wherein, the operation information from any step is sent in real time by the terminal when the user completes the step; the operation information from any step includes screen recordings or operation records of the user during the execution of the step. If the notarization of all operation information recorded during the signing process is completed, the signing process of the user during the signing process is generated based on the notarized operation information.
18. The method of claim 17, wherein the signing process includes at least one of the following: Log files used to characterize the various operations performed by the user during the signing process; Video files used to demonstrate the various operations performed by the user during the signing process.
19. The method of claim 17, further comprising: In response to the contract verification request for the electronic contract, the electronic contract contained in the contract verification request is verified based on the signing process; The generation operation of the signing process is performed by the blockchain system after all the notarization operations of the operation information recorded during the signing process have been completed, or by the blockchain system based on the notarized operation information when it receives the contract verification request.
20. An electronic contract signing device, applied to a terminal, comprising: The providing unit, during the signing of an electronic contract, provides the recorded operation information of each step to the blockchain system in real time whenever the user completes any step of the electronic contract, so that the blockchain system can store the operation information of each step; the operation information of each step includes screen recordings or operation records of the user during the execution of each step. The operation information of the user for each step of the electronic contract, which is stored in the blockchain system, is used to generate the signing process of the electronic contract.
21. An electronic contract signing device, applied to a server, comprising: The generation unit, in response to the operation information sent by the terminal during the signing process of the electronic contract, generates evidence information containing the operation information; wherein, the signing process includes several steps, and the operation information is initiated by the terminal when the user completes each step; the operation information of any step includes screen recording clips or operation record information of the user during the execution of any step; The providing unit provides the evidence storage information to the blockchain system in real time, so that the blockchain system can store the received evidence containing the operation information; wherein, the operation information of the user for each step of the electronic contract executed by the user stored in the blockchain system is used to generate the signing process of the electronic contract.
22. An electronic contract signing device, applied to a blockchain system, wherein the electronic contract signing process includes several steps, and the device comprises: The evidence storage unit, upon receiving operation information for any step in the signing process, stores the operation information for that step; wherein, the operation information for any step is sent in real time by the terminal when the user completes the step; the operation information for any step includes screen recording clips or operation records of the user during the execution of the step. If the notarization of all operation information recorded during the signing process is completed, the signing process of the user during the signing process is generated based on the notarized operation information.
23. An electronic device, comprising: processor; Memory used to store processor-executable instructions; The processor implements the method as described in any one of claims 12-19 by executing the executable instructions.
24. A computer-readable storage medium having stored thereon computer instructions that, when executed by a processor, implement the steps of the method as claimed in any one of claims 12-19.
Citation Information
Patent Citations
Electronic contract full-link real-time notarization system and method
CN110677259A
Service leasing method and device based on block chain and electronic equipment
CN113596113A
Electronic contract system and contract signing method based on block chain evidence storage
CN115065480A