Electronic contract signing method and device, equipment and storage medium

By using blockchain multi-party signing technology during the electronic contract signing process, the problem that existing technology cannot guarantee the security of electronic contract signing is solved, and higher security and reliability are achieved.

CN119599596APending Publication Date: 2025-03-11ZHENGZHOU ZHENGRAN PRESSURE ADJUSTING CONTROL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411646474.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-18
Publication Date
2025-03-11

AI Technical Summary

Technical Problem

The prior art cannot effectively guarantee the security of electronic contract signing, and there are uncertainties and risks in the network environment.

Method used

Ensure the security of electronic contract signing by creating a contract transaction table, receiving contract requests and writing a message queue, generating a contract to be signed, pushing it to an electronic signature platform for multi-party signing, and updating the contract transaction table after successful signing, ensuring the security of electronic contract signing.

Benefits of technology

The use of blockchain multi-party signing technology effectively improves the security of electronic contract signing and prevents uncertainty and risks in the network environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119599596A_ABST
    Figure CN119599596A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of electronic contracts, and discloses an electronic contract signing method and device, equipment and a storage medium. The method comprises the following steps: creating a contract transaction table to record contract information of a contract to be generated; receiving a contract request corresponding to the contract to be generated, respectively writing the contract information and the contract request into different message queues, and pushing the message queues to a contract center; responding to the contract request through the contract center, and generating a contract to be signed according to the contract information; pushing the to-be-signed contract to an electronic signature platform, and signing the to-be-signed contract through the electronic signature platform in a block chain multi-party signing mode; and after the contract is successfully signed, updating the contract transaction table, and pushing a signing success message. Through the above mode, the security of electronic contract signing can be effectively ensured by using a block chain multi-party signing technology.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of electronic contracts, and in particular to an electronic contract signing method, device, equipment and storage medium. Background Art

[0002] With the development of e-commerce, the demand for using the Internet to negotiate relatively complex business contracts is showing a growing trend, with the signing of electronic contracts being its core.

[0003] However, due to the particularity of the network environment, there are many uncertainties and risks, which lead to risks in the signing of electronic contracts. Current means cannot guarantee the security of electronic contract signing.

[0004] The above contents are only used to assist in understanding the technical solution of the present invention and do not constitute an admission that the above contents are prior art. Summary of the invention

[0005] The main purpose of the present invention is to provide an electronic contract signing method, device, equipment and storage medium, aiming to solve the technical problem that current means cannot ensure the security of electronic contract signing.

[0006] To achieve the above object, the present invention provides an electronic contract signing method, which comprises the following steps:

[0007] Create a contract transaction table to record the contract information of the contract to be generated;

[0008] Receiving a contract request corresponding to the contract to be generated, writing the contract information and the contract request into different message queues respectively, and pushing the message queues to the contract center;

[0009] Responding to the contract request through the contract center, and generating a contract to be signed according to the contract information;

[0010] Pushing the contract to be signed to the electronic signature platform, and signing the contract to be signed by the electronic signature platform using a blockchain multi-party signature method;

[0011] After the contract is successfully signed, the contract transaction table is updated and a successful signing message is pushed.

[0012] In some embodiments, the method further comprises:

[0013] Setting corresponding distributed locks for the message queues where the contract request and the contract information are located respectively;

[0014] Accordingly, before generating the contract to be signed according to the contract information, the method further includes:

[0015] Obtaining a first identifier corresponding to the message queue where the contract request is located;

[0016] Obtain a second identifier corresponding to the message queue where the contract information is located;

[0017] determining whether to generate a contract according to the first identifier and the second identifier;

[0018] If a contract is generated, the step of generating a contract to be signed based on the contract information is executed.

[0019] In some embodiments, the determining whether to generate a contract according to the first identifier and the second identifier includes:

[0020] respectively querying the first identifier and the second identifier from a database;

[0021] Determining whether the contract request is a duplicate request based on the query result, and whether the contract to be generated corresponding to the contract information is a duplicate contract;

[0022] If the contract request is not a duplicate request and the contract to be generated is not a duplicate contract, it is determined to generate a contract.

[0023] In some embodiments, the electronic signature platform includes a verification module and a blockchain, and the electronic signature platform uses a blockchain multi-party signature method to sign the contract to be signed, including:

[0024] The verification module generates public parameters and uploads the public parameters to the blockchain, so that each contract participant can download the public parameters from the blockchain, generate their own public and private keys and partial signatures, and upload the public key, identity information and partial signature tuple to the blockchain;

[0025] After the identity verification of the contract participants is successful, receiving the complete signatures uploaded to the blockchain by each contract participant;

[0026] Aggregate and verify the public key of each contract participant with the partial signature tuples of all other contract participants. After successful verification, generate a joint signature based on the complete signatures of each contract participant.

[0027] The contract to be signed is signed based on the joint signature.

[0028] In some embodiments, the expression of the aggregate verification is Among them, r i Represents the partial signature tuple of the i-th contract participant, y jrepresents the public key of the jth contract participant. The value of the expression is 1, which indicates successful verification. The value of the expression is 0, which indicates successful verification. g is a discrete logarithm.

[0029] In some embodiments, the method further comprises:

[0030] The joint signature is jointly verified, and the expression of the joint verification is: s means joint signature, y i represents the public key of the ith contract participant, the value of the expression is 1, indicating successful verification, the value of the expression is 0, indicating successful verification, and g is a discrete logarithm;

[0031] If the verification is successful, the step of signing the contract to be signed based on the joint signature is executed.

[0032] In some embodiments, the method further comprises:

[0033] After the contract signing fails, re-sign it and record the number of re-signings;

[0034] If the number of re-signings reaches a preset number, an alarm is triggered.

[0035] In addition, to achieve the above-mentioned purpose, the present invention also provides an electronic contract signing device, the electronic contract signing device comprising:

[0036] A creation module is used to create a contract transaction table to record the contract information of the contract to be generated;

[0037] A push module, used for receiving a contract request corresponding to the contract to be generated, writing the contract information and the contract request into different message queues respectively, and pushing the message queues to the contract center;

[0038] A generation module, used to respond to the contract request through the contract center and generate a contract to be signed according to the contract information;

[0039] A signing module is used to push the contract to be signed to the electronic signature platform, and sign the contract to be signed by the electronic signature platform using a blockchain multi-party signature method;

[0040] The update module is used to update the contract transaction table after the contract is successfully signed and push a signing success message.

[0041] In addition, to achieve the above-mentioned purpose, the present invention also proposes an electronic contract signing device, which includes: a memory, a processor, and an electronic contract signing program stored in the memory and executable on the processor, and the electronic contract signing program is configured to implement the steps of the electronic contract signing method described above.

[0042] In addition, to achieve the above-mentioned purpose, the present invention also proposes a storage medium, on which an electronic contract signing program is stored, and when the electronic contract signing program is executed by a processor, the steps of the electronic contract signing method described above are implemented.

[0043] In the present invention, a contract transaction table is created to record the contract information of the contract to be generated; a contract request corresponding to the contract to be generated is received, the contract information and the contract request are written into different message queues respectively, and the message queue is pushed to the contract center; the contract center responds to the contract request and generates a contract to be signed according to the contract information; the contract to be signed is pushed to the electronic signature platform, and the electronic signature platform uses the blockchain multi-party signature method to sign the contract to be signed; after the contract is successfully signed, the contract transaction table is updated and a successful signing message is pushed. In the above manner, the blockchain multi-party signature technology is used to effectively ensure the security of electronic contract signing. BRIEF DESCRIPTION OF THE DRAWINGS

[0044] Figure 1 This is a flow chart of the first embodiment of the electronic contract signing method of the present invention;

[0045] Figure 2 This is a schematic diagram of electronic contract signing in the electronic contract signing method of the present invention;

[0046] Figure 3 This is a structural block diagram of the first embodiment of the electronic contract signing device of the present invention.

[0047] The realization of the purpose, functional features and advantages of the present invention will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0048] It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.

[0049] The embodiment of the present invention provides a method for signing an electronic contract. Figure 1 , Figure 1 The figure is a flow chart of a first embodiment of an electronic contract signing method of the present invention.

[0050] In this embodiment, the electronic contract signing method includes the following steps:

[0051] Step S10: Create a contract transaction table to record the contract information of the contract to be generated.

[0052] In this embodiment, the executor of this embodiment is an electronic contract signing device, wherein the electronic contract signing device has functions such as data processing, data communication and program running. The electronic contract signing device can be a computer terminal device or other network device, and of course it can also be other devices with similar functions, and this embodiment does not limit this.

[0053] It should be noted that due to the particularity of the network environment, there are many uncertainties and risks, which lead to risks in the signing of electronic contracts. Current means cannot guarantee the security of electronic contract signing.

[0054] In order to solve the above technical problems, in this embodiment, a contract transaction table is created to record the contract information of the contract to be generated; a contract request corresponding to the contract to be generated is received, the contract information and the contract request are written into different message queues respectively, and the message queue is pushed to the contract center; the contract center responds to the contract request and generates a contract to be signed according to the contract information; the contract to be signed is pushed to the electronic signature platform, and the electronic signature platform uses the blockchain multi-party signature method to sign the contract to be signed; after the contract is successfully signed, the contract transaction table is updated and a successful signing message is pushed. In the above manner, the blockchain multi-party signature technology is used to effectively ensure the security of electronic contract signing.

[0055] The overall solution flow diagram of the electronic contract signing in this embodiment can be as follows Figure 2As shown, it mainly includes the following steps: 1. Record the contract transaction table (to be generated): First, record the contract information to be generated in the system. Message delivery to RabbitMQ: Then the contract information is transmitted through the message queue system RabbitMQ. Consume messages: After the consumer receives the message in RabbitMQ, it processes it. Generate a contract request and write it to the message queue: Then put the request to generate the contract into another message queue for further processing. Add a distributed lock (Redisson): In order to ensure the atomicity of the operation, a distributed lock is added to each operation in this process. Determine whether to generate repeatedly: Check whether there is an identical contract that has been generated to avoid repeated generation. If so, jump to "Consume messages but do not perform operations"; otherwise, continue to the next step. Generate a contract to be signed: Generate a new contract to be signed according to the received request. Push MQ message to notify the signing success: When the contract is generated successfully, notify the relevant parties through the message queue system. Release the distributed lock: After completing the operation, release the previously set distributed lock. Update the contract transaction table (successful generation): Update the contract status to generated. Electronic signature platform (E-signature): Submit the contract to the electronic signature platform for signature or stamping. Manual intervention and processing: If an abnormal situation occurs, such as generation failure, manual intervention and processing are required. Scheduled task attempt to regenerate: For failed contract generation attempts, the generation process can be retried through a scheduled task, up to three times.

[0056] In the specific implementation, in this embodiment, it is necessary to first create a contract transaction table, which is used to record contract information. The contract transaction table stores the contract information of the contract to be generated. When the contract is generated, the status is updated to the generated or to-be-signed status. Finally, after the contract is signed, the contract status is updated to the signed status again, and the contract in the signed status will be eliminated at each update.

[0057] Step S20: receiving a contract request corresponding to the contract to be generated, writing the contract information and the contract request into different message queues respectively, and pushing the message queues to the contract center.

[0058] In the specific implementation, the contract participants include the contract signatories and the contract initiator. The contract request is sent by the contract initiator. After receiving the contract request, this embodiment adopts a distributed message processing method to write the contract information and the contract request into different message queues respectively, and then push the message queue to the contract center.

[0059] Step S30: The contract center responds to the contract request and generates a contract to be signed based on the contract information.

[0060] The contract center in this embodiment is used to generate contracts, specifically to respond to the received contract request, and then generate a contract based on the contract information. The generated contract is a contract to be signed. In order to ensure that it is not generated repeatedly, corresponding distributed locks are set for the message queues where the contract request and the contract information are located. If there is no duplicate contract information and contract request, the subsequent operation of generating the contract to be signed is performed. The specific judgment process is to obtain the first identifier corresponding to the message queue where the contract request is located; obtain the second identifier corresponding to the message queue where the contract information is located; and determine whether to generate a contract based on the first identifier and the second identifier.

[0061] It should be noted that the first identifier and the second identifier are respectively unique identifiers of the message queues corresponding to them, such as the globally unique identifier UUID. Furthermore, the process of determining whether to generate a contract based on the first identifier and the second identifier is specifically to query the first identifier and the second identifier from the database respectively; based on the query results, determine whether the contract request is a duplicate request, and whether the contract to be generated corresponding to the contract information is a duplicate contract; if the contract request is not a duplicate request and the contract to be generated is not a duplicate contract, determine to generate a contract.

[0062] It should be understood that due to the uniqueness of the identifier and the corresponding binding relationship between the contract request and the contract information, it is possible to query the database whether the contract request corresponding to the first identifier and the contract information corresponding to the second identifier have appeared. In order to ensure uniqueness, security and non-repetitiveness, this embodiment needs to ensure that neither of them has been repeated.

[0063] Step S40: Push the contract to be signed to the electronic signature platform, and use the electronic signature platform to sign the contract using a blockchain multi-party signature method.

[0064] After the contract to be signed is generated, it will be pushed to the electronic signature platform. The electronic signature platform in this embodiment includes a verification module and a blockchain. The specific process of contract signing is that the verification module generates public parameters and uploads the public parameters to the blockchain so that each contract participant can download the public parameters from the blockchain, generate their own public and private keys and partial signatures, and upload the public keys, identity information and partial signature tuples to the blockchain; after the identity authentication of the contract participants is successful, receive the complete signatures uploaded to the blockchain by each contract participant; aggregate the public keys of each contract participant and the partial signature tuples of all other contract participants for verification, and after all verifications are successful, generate a joint signature based on the complete signatures of each contract participant; and sign the contract to be signed based on the joint signature.

[0065] It should be noted that the expression for verification in this embodiment is

[0066]

[0067] Among them, r i Represents the partial signature tuple of the i-th contract participant, y j represents the public key of the jth contract participant. The value of the expression is 1, which indicates successful verification. The value of the expression is 0, which indicates successful verification. g is a discrete logarithm.

[0068] Furthermore, the expression for joint verification is

[0069]

[0070] s means joint signature, y i represents the public key of the ith contract participant, the value of the expression is 1, indicating successful verification, the value of the expression is 0, indicating successful verification, and g is a discrete logarithm;

[0071] If the verification is successful, the step of signing the contract to be signed based on the joint signature is executed.

[0072] It should be further explained that the verification module generates a cyclic group G of order q = <g>, choose two collision-resistant hash functions H1: {0,1}*→{0,1} λ , and H2: {0,1}*→Zq*, and then upload the public parameters pubpara(G,g,q,H1,H2) to the blockchain. The key is generated for each contract participant u i Pick a random number x i As your own private key, calculate y i =g xi As the corresponding public key, and then use your identity information u i and public key y i Upload to the blockchain. The joint signature is generated as Among them, s i Represents the complete signature of the i-th contract participant.

[0073] Step S50: After the contract is successfully signed, the contract transaction table is updated and a signing success message is pushed.

[0074] In the specific implementation, for the successfully signed contract, this embodiment can update its status to the signed status, and remove it when the status of the contract transaction table is updated next time. If the contract signing fails, this embodiment will re-sign multiple times. If the number of re-signings reaches the preset number of times and still fails to sign successfully, a corresponding alarm will be triggered. The preset number of times can be set to 3 times or 5 times, which can be set according to actual needs, and this is not limited in this embodiment.

[0075] In this embodiment, a contract transaction table is created to record the contract information of the contract to be generated; a contract request corresponding to the contract to be generated is received, the contract information and the contract request are written into different message queues respectively, and the message queue is pushed to the contract center; the contract center responds to the contract request and generates a contract to be signed according to the contract information; the contract to be signed is pushed to the electronic signature platform, and the electronic signature platform uses the blockchain multi-party signature method to sign the contract to be signed; after the contract is successfully signed, the contract transaction table is updated and a successful signing message is pushed. In the above manner, the blockchain multi-party signature technology is used to effectively ensure the security of electronic contract signing.

[0076] In addition, an embodiment of the present invention further proposes a storage medium, on which an electronic contract signing program is stored. When the electronic contract signing program is executed by a processor, the steps of the electronic contract signing method described above are implemented.

[0077] Reference Figure 3 , Figure 3 This is a structural block diagram of the first embodiment of the electronic contract signing device of the present invention.

[0078] like Figure 3 As shown, the electronic contract signing device proposed in the embodiment of the present invention includes:

[0079] A creation module 10, used to create a contract transaction table to record the contract information of the contract to be generated;

[0080] A push module 20, configured to receive a contract request corresponding to the contract to be generated, write the contract information and the contract request into different message queues respectively, and push the message queues to the contract center;

[0081] A generation module 30, configured to respond to the contract request through the contract center and generate a contract to be signed according to the contract information;

[0082] The signing module 40 is used to push the contract to be signed to the electronic signature platform, and sign the contract to be signed by the electronic signature platform using a blockchain multi-party signing method;

[0083] The updating module 50 is used to update the contract transaction table and push a signing success message after the contract is successfully signed.

[0084] In this embodiment, a contract transaction table is created to record the contract information of the contract to be generated; a contract request corresponding to the contract to be generated is received, the contract information and the contract request are written into different message queues respectively, and the message queue is pushed to the contract center; the contract center responds to the contract request and generates a contract to be signed according to the contract information; the contract to be signed is pushed to the electronic signature platform, and the electronic signature platform uses the blockchain multi-party signature method to sign the contract to be signed; after the contract is successfully signed, the contract transaction table is updated and a successful signing message is pushed. In the above manner, the blockchain multi-party signature technology is used to effectively ensure the security of electronic contract signing.

[0085] In some embodiments, the creation module 10 is used to respectively set corresponding distributed locks for the message queues where the contract request and the contract information are located;

[0086] The electronic contract signing device also includes a judgment module;

[0087] The determination module is used to obtain a first identifier corresponding to the message queue where the contract request is located;

[0088] Obtain a second identifier corresponding to the message queue where the contract information is located;

[0089] determining whether to generate a contract according to the first identifier and the second identifier;

[0090] If a contract is generated, the step of generating a contract to be signed based on the contract information is executed.

[0091] In some embodiments, the determination module is used to query the first identifier and the second identifier from a database respectively;

[0092] Determining whether the contract request is a duplicate request based on the query result, and whether the contract to be generated corresponding to the contract information is a duplicate contract;

[0093] If the contract request is not a duplicate request and the contract to be generated is not a duplicate contract, it is determined to generate a contract.

[0094] In some embodiments, the electronic signature platform includes a verification module and a blockchain, and the signing module 40 is used for the verification module to generate public parameters and upload the public parameters to the blockchain, so that each contract participant can download the public parameters from the blockchain, generate their own public and private keys and partial signatures, and upload the public key, identity information and partial signature tuple to the blockchain;

[0095] After the identity verification of the contract participants is successful, receiving the complete signatures uploaded to the blockchain by each contract participant;

[0096] Aggregate and verify the public key of each contract participant with the partial signature tuples of all other contract participants. After successful verification, generate a joint signature based on the complete signatures of each contract participant.

[0097] The contract to be signed is signed based on the joint signature.

[0098] In some embodiments, the expression of the aggregate verification is Among them, r i Represents the partial signature tuple of the i-th contract participant, y j represents the public key of the jth contract participant. The value of the expression is 1, which indicates successful verification. The value of the expression is 0, which indicates successful verification. g is a discrete logarithm.

[0099] In some embodiments, the signing module 40 is used to perform joint verification on the joint signature, and the expression of the joint verification is: s means joint signature, y i represents the public key of the ith contract participant, the value of the expression is 1, indicating successful verification, the value of the expression is 0, indicating successful verification, and g is a discrete logarithm;

[0100] If the verification is successful, the step of signing the contract to be signed based on the joint signature is executed.

[0101] In some embodiments, the electronic contract signing device further includes an alarm module;

[0102] The alarm module is used to re-sign the contract after the contract signing fails, and record the number of re-signing times;

[0103] If the number of re-signings reaches a preset number, an alarm is triggered.

[0104] An embodiment of the present application also provides an electronic contract signing device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus, and the memory is used to store the electronic contract signing program; the processor is used to implement the above-mentioned electronic contract signing method when executing the program stored in the memory.

[0105] The communication bus mentioned in the electronic contract signing device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc.

[0106] The communication interface is used for communication between the above-mentioned electronic contract signing device and other devices.

[0107] The memory may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.

[0108] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, and discrete hardware components.

[0109] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive Solid State Disk (SSD)), etc.

[0110] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.

[0111] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0112] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

[0113] It should be understood that the above is only an example and does not constitute any limitation on the technical solution of the present invention. In specific applications, technicians in this field can make settings as needed, and the present invention does not limit this.

[0114] It should be noted that the workflow described above is merely illustrative and does not limit the scope of protection of the present invention. In practical applications, technicians in this field can select part or all of them according to actual needs to achieve the purpose of the present embodiment, and no limitation is made here.

[0115] In addition, for technical details that are not described in detail in this embodiment, reference can be made to the electronic contract signing method provided in any embodiment of the present invention, and will not be repeated here.

[0116] In addition, it should be noted that, in this article, the term "includes", "comprising" or any other variation thereof is intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or system. In the absence of further restrictions, an element defined by the sentence "comprising a ..." does not exclude the existence of other identical elements in the process, method, article or system including the element.

[0117] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages or disadvantages of the embodiments.

[0118] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as a read-only memory (ROM) / RAM, a magnetic disk, or an optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present invention.

[0119] The above are only preferred embodiments of the present invention, and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

[0120] It is understandable that the system provided by the embodiment of the present invention corresponds to the method provided by the embodiment of the present invention, and the explanation, examples and beneficial effects of the relevant contents can refer to the corresponding parts in the above method.< / g>

Claims

1. An electronic contract signing method, characterized in that: The electronic contract signing method comprises: Create a contract transaction table to record the contract information of the contract to be generated; Receiving a contract request corresponding to the contract to be generated, writing the contract information and the contract request into different message queues respectively, and pushing the message queues to the contract center; Responding to the contract request through the contract center, and generating a contract to be signed according to the contract information; Pushing the contract to be signed to the electronic signature platform, and signing the contract to be signed by the electronic signature platform using a blockchain multi-party signature method; After the contract is successfully signed, the contract transaction table is updated and a successful signing message is pushed.

2. The electronic contract signing method according to claim 1, characterized in that: The method further comprises: Setting corresponding distributed locks for the message queues where the contract request and the contract information are located respectively; Accordingly, before generating the contract to be signed according to the contract information, the method further includes: Obtaining a first identifier corresponding to the message queue where the contract request is located; Obtain a second identifier corresponding to the message queue where the contract information is located; determining whether to generate a contract according to the first identifier and the second identifier; If a contract is generated, the step of generating a contract to be signed based on the contract information is executed.

3. The electronic contract signing method according to claim 2, characterized in that: The determining whether to generate a contract according to the first identifier and the second identifier includes: respectively querying the first identifier and the second identifier from a database; Determining whether the contract request is a duplicate request based on the query result, and whether the contract to be generated corresponding to the contract information is a duplicate contract; If the contract request is not a duplicate request and the contract to be generated is not a duplicate contract, it is determined to generate a contract.

4. The electronic contract signing method according to claim 1, characterized in that: The electronic signature platform includes a verification module and a blockchain. The electronic signature platform uses a blockchain multi-party signature method to sign the contract to be signed, including: The verification module generates public parameters and uploads the public parameters to the blockchain, so that each contract participant can download the public parameters from the blockchain, generate their own public and private keys and partial signatures, and upload the public key, identity information and partial signature tuple to the blockchain; After the identity verification of the contract participants is successful, receiving the complete signatures uploaded to the blockchain by each contract participant; Aggregate and verify the public key of each contract participant with the partial signature tuples of all other contract participants. After successful verification, generate a joint signature based on the complete signatures of each contract participant. The contract to be signed is signed based on the joint signature.

5. The electronic contract signing method according to claim 4, characterized in that: The expression of the aggregate verification is: Among them, r i Represents the partial signature tuple of the i-th contract participant, y j represents the public key of the jth contract participant. The value of the expression is 1, which indicates successful verification. The value of the expression is 0, which indicates successful verification. g is a discrete logarithm.

6. The electronic contract signing method according to claim 4, characterized in that: The method further comprises: The joint signature is jointly verified, and the expression of the joint verification is: s means joint signature, y i represents the public key of the ith contract participant, the value of the expression is 1, indicating successful verification, the value of the expression is 0, indicating successful verification, and g is a discrete logarithm; If the verification is successful, the step of signing the contract to be signed based on the joint signature is executed.

7. The electronic contract signing method according to any one of claims 1 to 6, characterized in that: The method further comprises: After the contract signing fails, re-sign it and record the number of re-signings; If the number of re-signings reaches a preset number, an alarm is triggered.

8. An electronic contract signing device, characterized in that: The electronic contract signing device comprises: A creation module is used to create a contract transaction table to record the contract information of the contract to be generated; A push module, used for receiving a contract request corresponding to the contract to be generated, writing the contract information and the contract request into different message queues respectively, and pushing the message queues to the contract center; A generation module, used to respond to the contract request through the contract center and generate a contract to be signed according to the contract information; A signing module is used to push the contract to be signed to the electronic signature platform, and sign the contract to be signed by the electronic signature platform using a blockchain multi-party signature method; The update module is used to update the contract transaction table after the contract is successfully signed and push a signing success message.

9. An electronic contract signing device, characterized in that: The electronic contract signing device comprises: a memory, a processor, and an electronic contract signing program stored in the memory and executable on the processor, wherein the electronic contract signing program is configured to implement the steps of the electronic contract signing method as described in any one of claims 1 to 7.

10. A storage medium, characterized in that: The storage medium stores an electronic contract signing program, and when the electronic contract signing program is executed by the processor, the steps of the electronic contract signing method according to any one of claims 1 to 7 are implemented.