Electronic contract signing method and device, server and storage medium

By generating a contract seal and signing an electronic contract with an electronic signature, the problem of insufficient security of the electronic seal is solved, the security and legal effectiveness of the contract are improved, and the uniqueness and interactivity of the contract are realized.

CN119295028APending Publication Date: 2025-01-10JD DIGITS HAIYI INFORMATION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411320594.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2025-01-10

AI Technical Summary

Technical Problem

The existing electronic seals are not very safe and are difficult to resist the risks of forgery and tampering.

Method used

By generating the information code for the contract to be signed and fusing it with the user seal, generating the contract seal, and signing the contract using electronic signature after the user terminal receives the signing confirmation request to ensure the uniqueness, interaction and security of the contract.

Benefits of technology

It improves the security and legal effectiveness of electronic contract signing, provides higher uniqueness and user interaction with the contract seal, and ensures the immutability and traceability of the contract.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119295028A_ABST
    Figure CN119295028A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses an electronic contract signing method and device, a server and a storage medium, and relates to the technical field of computers, and the method comprises the steps: generating a to-be-signed contract according to a business contract and user information, and transmitting the to-be-signed contract to a user terminal; determining an information code corresponding to the contract to be signed, and generating a contract seal according to the information code and a user seal corresponding to the user information; and after a signing confirmation request triggered by the user terminal based on the to-be-signed contract is received, signing the to-be-signed contract according to the user information and the contract seal to obtain a signed contract. According to the technical scheme, the information code uniquely corresponding to the contract to be signed and the user seal corresponding to the user information are fused to obtain the contract seal, the uniqueness and interactivity of the contract seal are improved, the contract to be signed is signed according to the user information and the contract seal, the security of the contract is improved, and meanwhile the legal efficacy of the contract is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to the field of computer technology, and in particular to a method, device, server and storage medium for signing an electronic contract. Background Art

[0002] Electronic signature technology simulates stamping on paper documents to achieve digital conversion of physical seals, providing users with an electronic seal that has a visual effect similar to a paper seal. Since electronic signature technology integrates the authenticity and integrity of information ensured by modern cryptography and the non-repudiation of signatures ensured by electronic signature technology, electronic seals have the same legal effect as physical seals under certain rules and standards.

[0003] In the prior art, image processing technology is usually used to simulate the stamping effect of a physical seal on a paper document, so as to realize the electronic signature of an electronic document based on an electronic seal.

[0004] In the process of implementing the present invention, the inventors found that there are at least the following technical problems in the prior art:

[0005] Electronic seals are not very secure and cannot resist potential risks of forgery and tampering. Summary of the invention

[0006] The present invention provides an electronic contract signing method, device, server and storage medium to improve the security of electronic contract signing.

[0007] In a first aspect, an embodiment of the present invention provides a method for signing an electronic contract, comprising:

[0008] Generate a contract to be signed based on the business contract and user information, and send the contract to be signed to the user terminal;

[0009] Determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information;

[0010] After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract.

[0011] In a second aspect, an embodiment of the present invention further provides an electronic contract signing device, including:

[0012] A generation module, used to generate a contract to be signed according to the business contract and user information, and send the contract to be signed to the user terminal;

[0013] A determination module, used to determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information;

[0014] The signing module is used to sign the contract to be signed according to the user information and the contract seal after receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, so as to obtain a signed contract.

[0015] In a third aspect, an embodiment of the present invention further provides a server, the server comprising:

[0016] one or more processors;

[0017] a storage device for storing one or more programs,

[0018] When the one or more programs are executed by the one or more processors, the one or more processors implement the electronic contract signing method as described in any one of the first aspects.

[0019] In a fourth aspect, an embodiment of the present invention further provides a storage medium comprising computer executable instructions, wherein the computer executable instructions, when executed by a computer processor, are used to execute the electronic contract signing method as described in any one of the first aspects.

[0020] The embodiments of the above invention have the following advantages or beneficial effects:

[0021] An embodiment of the present invention provides a method for signing an electronic contract, comprising: generating a contract to be signed based on a business contract and user information, and sending the contract to be signed to a user terminal; determining an information code corresponding to the contract to be signed, and generating a contract seal based on the information code and a user seal corresponding to the user information; after receiving a signing confirmation request triggered by the user terminal based on the contract to be signed, signing the contract to be signed based on the user information and the contract seal to obtain a signed contract. The above technical scheme can, firstly, generate a contract to be signed by the user when providing business services to the user based on the business contract corresponding to the business service and the user information corresponding to the user, and send the contract to be signed to the user terminal, so that the user can view the contract to be signed based on the user terminal. Secondly, the information code uniquely corresponding to the contract to be signed can be determined, and the contract seal can be obtained by integrating the information code uniquely corresponding to the contract to be signed with the user seal corresponding to the user information, thereby improving the uniqueness of the contract seal. In addition, the information code provides a way to view the contract to be signed, and the user can view the contract to be signed by scanning the information code through the user terminal, thereby improving the interactivity of the contract seal. After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract, thereby improving the security of the contract and ensuring the legal effect of the contract. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 A flowchart of a method for signing an electronic contract provided by an embodiment of the present invention;

[0023] Figure 2 A flowchart of another electronic contract signing method provided by an embodiment of the present invention;

[0024] Figure 3 A schematic diagram of the structure of an electronic contract signing device provided by an embodiment of the present invention;

[0025] Figure 4 A schematic diagram of the structure of a server provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0026] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only the parts related to the present invention, rather than all structures, are shown in the accompanying drawings.

[0027] It should be mentioned before discussing exemplary embodiments in more detail that some exemplary embodiments are described as processes or methods depicted as flow charts. Although the flow charts describe various operations (or steps) as sequential processes, many operations therein can be implemented in parallel, concurrently or simultaneously. In addition, the order of various operations can be rearranged. The process can be terminated when its operation is completed, but can also have additional steps not included in the accompanying drawings. The process can correspond to methods, functions, procedures, subroutines, subprograms, etc. In addition, the embodiments in the present invention and the features in the embodiments can be combined with each other without conflict.

[0028] Figure 1 The flowchart of a method for signing an electronic contract provided by an embodiment of the present invention is applicable to situations where an electronic contract needs to be signed. The method can be executed by an electronic contract signing device, which can be implemented by software and / or hardware. Figure 1 The method specifically comprises the following steps:

[0029] Step 110: Generate a contract to be signed based on the business contract and user information, and send the contract to be signed to the user terminal.

[0030] Among them, the business contract can be understood as a blank contract that needs to be signed for the business service. For example, when the business service is a health service, the business contract can be a health information confirmation contract. By signing the business contract, the user ensures that the health service provided based on the business contract is targeted at the user's health information.

[0031] The user may be an individual user or a corporate user. When the user is an individual user, the user information may include name, identity identification, personal contact information, personal financial account, etc. When the user is a corporate user, the user information may include company name, company logo, company address, company contact information, company financial account, etc.

[0032] Specifically, when providing business services to users, it is first necessary to generate a contract to be signed based on the business contract corresponding to the business service and the user information corresponding to the user. Specifically, the user information can be filled into the corresponding position of the business contract to obtain the contract to be signed. In order to facilitate the user to view the contract to be signed, after the contract to be signed is generated, the contract to be signed can be sent to the user terminal. Then, the user terminal can display the contract to be signed based on a preset interface.

[0033] In an embodiment of the present invention, a contract to be signed that a user needs to sign when providing business services to the user is generated based on the business contract corresponding to the business service and the user information corresponding to the user, and the contract to be signed is sent to the user terminal, so that the user can view the contract to be signed based on the user terminal.

[0034] Step 120: determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information.

[0035] Specifically, the information code is the information code uniquely corresponding to the contract to be signed, and can be a two-dimensional code containing the encrypted information and storage address of the contract to be signed. In order to determine the information code corresponding to the contract to be signed, the basic information of the contract to be signed can be determined first, and the basic information can at least include the contract name, contract identifier and contract hash value. The contract identifier can be understood as the contract ID. Secondly, the basic information of the contract to be signed can be hashed to obtain a hash value, and the contract identifier and hash value can be encrypted again to obtain the encrypted information of the contract to be signed. Then, the information code of the contract to be signed can be generated based on the encrypted information and storage address of the contract to be signed. In order to ensure the security of the contract, the storage address can be a server or blockchain and other environments with high credibility and non-tamperability.

[0036] In order to improve the uniqueness and interactivity of the electronic seal, the information code corresponding to the contract to be signed and the user seal corresponding to the user information can be integrated to generate the contract seal required for signing the contract to be signed. Therefore, the user seal corresponding to the user information can be generated according to the user information, and then the information code corresponding to the contract to be signed can be embedded in the user seal corresponding to the user information to obtain the contract seal.

[0037] In an embodiment of the present invention, an information code uniquely corresponding to the contract to be signed is determined, and a contract seal is obtained by merging the information code uniquely corresponding to the contract to be signed with a user seal corresponding to user information, thereby improving the uniqueness of the contract seal. In addition, the information code provides a way to view the contract to be signed, and the user can scan the information code through the user terminal to view the contract to be signed, thereby improving the interactivity of the contract seal.

[0038] Step 130: After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract.

[0039] Specifically, after the contract to be signed is sent to the user terminal, the user terminal can display the contract to be signed based on a preset interface. The preset interface is provided with a signing confirmation control. After the user clicks the signing confirmation control, a signing confirmation request can be triggered. Of course, the user terminal can send the signing confirmation request to the server.

[0040] After receiving the signing confirmation request sent by the user terminal, the server can first obtain the electronic signature corresponding to the user information according to the user information contained in the signing confirmation request. After stamping the contract seal on the signature area of ​​the contract to be signed, the contract to be signed can be signed based on the electronic signature to obtain a signed contract. Signing the contract to be signed based on the electronic signature ensures the security and legal effect of the contract. Furthermore, the electronic signature and the contract to be signed can be packaged into a file package, which can be understood as a signed contract.

[0041] In actual applications, the server can send the encrypted signed contract to the user terminal.

[0042] In the embodiment of the present invention, after receiving the signing confirmation request, the server can sign the contract to be signed based on the electronic signature to obtain a signed contract, thereby improving the security of the contract and ensuring the legal effect of the contract.

[0043] The electronic contract signing method provided by the embodiment of the present invention includes: generating a contract to be signed based on a business contract and user information, and sending the contract to be signed to a user terminal; determining an information code corresponding to the contract to be signed, and generating a contract seal based on the information code and a user seal corresponding to the user information; after receiving a signing confirmation request triggered by the user terminal based on the contract to be signed, signing the contract to be signed based on the user information and the contract seal to obtain a signed contract. The above technical scheme can, firstly, generate a contract to be signed by the user when providing business services to the user based on the business contract corresponding to the business service and the user information corresponding to the user, and send the contract to be signed to the user terminal, so that the user can view the contract to be signed based on the user terminal. Secondly, the information code uniquely corresponding to the contract to be signed can be determined, and the contract seal can be obtained by integrating the information code uniquely corresponding to the contract to be signed with the user seal corresponding to the user information, thereby improving the uniqueness of the contract seal. In addition, the information code provides a way to view the contract to be signed, and the user can view the contract to be signed by scanning the information code through the user terminal, thereby improving the interactivity of the contract seal. After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract, thereby improving the security of the contract and ensuring the legal effect of the contract.

[0044] Figure 2 This is a flowchart of another electronic contract signing method provided by an embodiment of the present invention. The embodiment of the present invention is applicable to situations where electronic contracts need to be signed. Based on the above embodiment, the embodiment of the present invention adds the steps of storing and viewing the electronic contract. The explanations of the terms that are the same or corresponding to the above embodiments are not repeated here. Figure 2 The electronic contract signing method provided by the embodiment of the present invention includes:

[0045] Step 210: Generate a contract to be signed based on the business contract and user information, and send the contract to be signed to the user terminal.

[0046] Specifically, after receiving the user information sent by the user terminal, the server can first verify the user information based on the identity authentication service. After determining that the user information is valid, the contract to be signed can be generated based on the name, identity identifier, personal contact information, personal financial account, etc. contained in the business contract and user information. The user information also includes biometric information. The server can use liveness detection technology to determine whether the user information corresponding to the biometric information is consistent with the user information corresponding to the contract to be signed, and determine that the contract to be signed is valid if it is determined that the user information corresponding to the biometric information is consistent with the user information corresponding to the contract to be signed.

[0047] It should be noted that after the contract to be signed is generated, it can be solidified based on encryption technology to prevent the contract content from being tampered with.

[0048] Of course, after generating the contract to be signed, the server can send the contract to be signed to the user terminal, and the user terminal can display the contract to be signed based on a preset interface, so that the user can view the contract to be signed.

[0049] In an embodiment of the present invention, after determining that the user information is valid, a contract to be signed is generated based on the business contract and the user information, and the validity of the contract to be signed is verified based on the user information, thereby realizing the generation and validity verification of the contract to be signed, and sending the contract to be signed to the user terminal, so that the user can view the contract to be signed based on the user terminal.

[0050] Step 220: Determine the information code corresponding to the contract to be signed.

[0051] In one implementation, step 220 may specifically include:

[0052] Determine the encrypted information of the contract to be signed according to the basic information of the contract to be signed; determine the storage address of the contract to be signed, and generate the information code according to the storage address and the encrypted information.

[0053] Further, the encrypted information of the contract to be signed is determined according to the basic information of the contract to be signed, including:

[0054] The basic information is hashed and converted to obtain a hash value, which is then encrypted to obtain the encrypted information.

[0055] Specifically, the basic information of the contract to be signed may include at least the contract name, contract identifier and contract hash value. The hash value of the basic information can be obtained by performing hash conversion on the basic information of the contract to be signed. Specifically, a hash-based message authentication code (HMAC) algorithm can be used to perform HMAC-SHA256 (an HMAC implementation based on SHA-256) on the basic information of the contract to be signed to obtain the hash value of the basic information.

[0056] The HMAC algorithm can combine the key and the message to generate a fixed-size authentication code, which is usually used to verify whether the message has been tampered with during transmission or storage. Therefore, an authentication code can be generated based on the preset key and the basic information of the contract to be signed, and the authentication code is the hash value of the basic information. The security of HMAC depends on the hash algorithm it uses. The hash algorithm used by HMAC-SHA256 is SHA-256. SHA-256 can generate a 256-bit (32-byte) hash value, usually expressed as a 64-bit hexadecimal string. SHA-256 can resist many known cryptographic attacks and ensure the security of basic information.

[0057] Furthermore, the contract identifier of the contract to be signed and the hash value of the basic information of the contract to be signed can be encrypted to obtain the encrypted information of the contract to be signed. Specifically, the contract identifier and the hash value can be asymmetrically encrypted based on the preset public key to obtain the signature value of the contract to be signed, that is, the encrypted information of the contract to be signed.

[0058] Asymmetric encryption can encrypt data using a preset public key, and asymmetric decryption corresponding to asymmetric encryption can decrypt data using a preset private key corresponding to the preset public key. The preset public key can be shared publicly and used to encrypt data, and the preset private key must be kept confidential and used to decrypt data. Asymmetric encryption and decryption provide strong security for data by using different public and private keys to encrypt and decrypt data.

[0059] Furthermore, the information code of the contract to be signed can be generated based on the encrypted information and storage address of the contract to be signed. Specifically, the encrypted information and storage address of the contract to be signed can be processed based on the information code generation technology to store the encrypted information and storage address of the contract to be signed into the information code, and the information code containing the encrypted information and storage address of the contract to be signed can be obtained. When the information code is a QR code, the encrypted information and storage address of the contract to be signed can be processed based on the QR code generation technology to store the encrypted information and storage address of the contract to be signed into the QR code, and the QR code containing the encrypted information and storage address of the contract to be signed can be obtained.

[0060] In an embodiment of the present invention, after determining the hash value of the basic information of the contract to be signed based on the HMAC algorithm, the hash value of the basic information of the contract to be signed is encrypted based on asymmetric encryption to obtain the encrypted information of the contract to be signed, thereby generating more secure encrypted information uniquely corresponding to the contract to be signed, and storing the encrypted information and storage address of the contract to be signed in the information code through the information code generation technology, thereby generating an information code containing the encrypted information and storage address of the contract to be signed.

[0061] Step 230: Generate a contract seal according to the information code and the user seal corresponding to the user information.

[0062] In one implementation, step 230 may specifically include:

[0063] The user seal is constructed according to the user information; the information code is embedded in the user seal to obtain the contract seal.

[0064] Specifically, when the user is an individual user, the user seal can be an image generated according to the name, and when the user is an enterprise user, the user seal can be an image generated according to the enterprise name. Therefore, the user seal corresponding to the user information can be generated according to the name or enterprise name in the user information. For example, when the user is an individual user, the user seal can be generated based on the seal font and the name, and when the user is an enterprise user, the user seal can be generated based on the seal style and the enterprise name. Furthermore, the information code can be embedded in the user seal to obtain a contract seal. For example, when the user is an individual user, the information code corresponding to the contract to be signed can be embedded in the first preset position of the user seal corresponding to the individual user to obtain a contract seal, and the first preset position can be the upper end, the lower end or the right end, and the preset position does not block the user seal. When the user is an enterprise user, the information code corresponding to the contract to be signed can be embedded in the center of the user seal corresponding to the enterprise user to obtain a contract seal. Of course, the information code corresponding to the contract to be signed can also be embedded in the second preset position of the user seal corresponding to the enterprise user to obtain a contract seal, and the second preset position can also be the upper end, the lower end or the right end, and the preset position does not block the user seal.

[0065] In an embodiment of the present invention, a contract seal is obtained by fusing an information code uniquely corresponding to the contract to be signed with a user seal corresponding to the user information, thereby improving the uniqueness and visual recognition of the contract seal and enhancing the security and anti-counterfeiting properties of the contract seal. In addition, the contract seal provides a way to view the contract to be signed, thereby improving the interactivity of the contract seal, so that the user can view the contract to be signed by scanning the information code in the contract seal through the user terminal, thereby creating a new interactive mode, allowing the user to view the contract to be signed more intuitively and conveniently, and greatly optimizing the user experience.

[0066] Step 240: After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract.

[0067] In one implementation, signing the contract to be signed according to the user information and the contract seal to obtain a signed contract includes:

[0068] Obtaining a digital certificate corresponding to the user information; stamping the contract seal on the signature area of ​​the contract to be signed, and then signing the contract to be signed based on the digital certificate to obtain the signed contract.

[0069] Among them, the signature area is a preset space in the business contract that is specifically used to carry signature data and has security protection functions. It is a key component for achieving secure signing of business contracts. It can be understood that the signature area is a specific area specially reserved in the business contract for receiving electronic signatures or electronic seals. It can also be called an electronic signature field, a sub-signature field, or an empty signature field.

[0070] The signature area is pre-set when creating a business contract, which is used to clearly specify the location of the electronic signature or electronic seal, and has location certainty; the signature area is not only a blank location space, but also contains a data structure for storing information generated when signing a contract, such as the user information of the signing user, the signature timestamp, the encryption algorithm used, etc., which has data nature; the signature area is usually isolated from the rest of the business contract and protected by encryption and hash algorithms to ensure that the business contract is not tampered with before and after the electronic signature or electronic seal is added to the business contract, and has security; in order to ensure cross-platform and software interoperability, the design of the signature area needs to follow international or industry-recognized standards, such as PKCS#7 or PAdES standards in PDF documents, to ensure the validity and verifiability of the signature, and have compatibility and standard compliance. Specifically, after receiving the signing confirmation request sent by the user terminal, the server can first obtain the digital certificate corresponding to the user information according to the user information contained in the signing confirmation request, and after stamping the contract seal on the signature area of ​​the contract to be signed, the contract to be signed can be signed based on the digital certificate to obtain a signed contract.

[0071] The process of signing a contract based on a digital certificate combines cryptography and the use of digital certificates to ensure the security and legal validity of the contract. When signing a contract based on a digital certificate, first, a secure hash algorithm (for example, SHA-256) is used to calculate the contract to be signed to obtain a hash value of a fixed length. This process ensures that even if there is a slight change in the contract to be signed, the hash value will be completely different. Secondly, the hash value is encrypted based on the digital certificate corresponding to the user information to generate an electronic signature. This process ensures that only users holding the corresponding digital certificate can generate a valid electronic signature. The electronic signature contains both the information of the hash value and its uniqueness and unforgeability are guaranteed by digital certificate encryption.

[0072] Furthermore, the electronic signature and the contract to be signed can be packaged into a file package, which can be understood as a signed contract. Of course, the file package can be further encrypted to ensure the security of the signed contract during transmission. It is understandable that the server can send the encrypted signed contract to the user terminal through a secure channel.

[0073] In an embodiment of the present invention, after receiving the signing confirmation request, the server can sign the contract to be signed based on the digital certificate and contract seal corresponding to the user information to obtain a signed contract, thereby improving the security of the contract and ensuring the legal effect of the contract.

[0074] Step 250: Determine the record information of the signed contract, and solidify and store the record information.

[0075] The recorded information at least includes the user information, the sending time of the signing confirmation information, and the signing time of the signed contract.

[0076] The recorded information can be understood as key data in the contract signing process, for example, it may include user information, the time of sending the signing confirmation information, the signing time of the signed contract, and it may also include the user information real-name authentication results, authentication time, basic contract information, etc.

[0077] During the contract signing process, the user's identity information, contact information, etc. can be collected, and the authenticity of this information can be verified through the real-name authentication service to achieve real-name authentication of the user and ensure the authenticity of the user's identity. The timestamp when the user completes the real-name authentication can also be recorded to prove the specific time when the real-name authentication operation occurs. The timestamp is usually provided by a trusted timestamp service to ensure the accuracy and non-tamperability of the time. The timestamp when the user clicks the signing confirmation control and the timestamp when the user terminal sends the signing confirmation information can also be recorded to prove the specific time when the user expresses his willingness to sign. The timestamp when the contract is signed can also be recorded to prove the specific time when the contract is signed.

[0078] Furthermore, the key data collected and recorded above can be integrated together to form a complete electronic evidence chain, and the electronic evidence chain can be determined as the record information of the signed contract. When integrating key data, encryption technology and digital signature technology can be used to ensure the integrity and authenticity of all data.

[0079] In practical applications, the electronic evidence chain can be sent to a storage and access server, and all data in the electronic evidence chain can be electronically solidified based on the storage and access server. Specifically, the electronic evidence chain can be encrypted and stored in the cloud or blockchain to ensure that the data cannot be tampered with and is traceable. Of course, it is necessary to ensure that the electronic evidence chain and the electronic solidification process of the electronic evidence chain comply with relevant laws and regulations and have legal effect.

[0080] The evidence storage server is a legal service platform based on Internet technology, which is used to provide users with services such as electronic data collection, storage, management and use. The evidence storage server ensures the authenticity, legality and validity of electronic evidence by using technical means such as blockchain, timestamps and digital authentication to meet the diverse needs of users.

[0081] In the embodiment of the present invention, the recorded information of the signed contract is solidified and stored, which ensures the security and non-tamperability of the recorded information and provides data evidence for contract tracing.

[0082] Step 260: After receiving the acquisition request triggered by the user terminal scanning the target information code, the target contract identifier and the target hash value are obtained by decrypting the target encrypted information carried by the target information code contained in the acquisition request.

[0083] Specifically, after the user terminal scans the target information code, it can send an acquisition request containing the target information code to the server. After receiving the acquisition request, the server can first determine the information contained in the target information code by parsing the target information code contained in the acquisition request, and specifically obtain the user information contained in the target information code and the target storage address of the target encrypted information. Secondly, the target encrypted information can be decrypted based on asymmetric decryption, and specifically the preset private key corresponding to the user information can be used to decrypt the target encrypted information to obtain the target contract identifier and the target hash value.

[0084] In an embodiment of the present invention, after receiving an acquisition request sent by a user terminal, the target encrypted information carried by the target information code contained in the acquisition request is decrypted by using a preset private key corresponding to the user information contained in the acquisition request to determine the target contract identifier and the target hash value.

[0085] Step 270: After determining the existence of the target contract according to the target contract identifier, determine the verification result of the target information code according to the target hash value and the standard hash value corresponding to the target contract identifier.

[0086] In one implementation, determining the verification result of the target information code according to the target hash value and the standard hash value corresponding to the target contract identifier includes:

[0087] Determine the target basic information of the target contract corresponding to the target contract identifier, and obtain the standard hash value by performing hash conversion on the target basic information; when it is determined that the target hash value and the standard hash value are consistent, determine that the verification result is that the information code is valid; otherwise, determine that the verification result is that the information code is invalid.

[0088] Specifically, the target contract identifier can be used to search the target storage address contained in the target information code. If the corresponding target contract is found, it is determined that the target contract exists. Then, the target basic information of the target contract can be determined, that is, the contract name, contract identifier and contract hash value of the target contract can be determined. The target basic information can be converted into a standard hash value of the target contract by performing a hash conversion. The target hash value determined by the information code and the standard hash value determined by the hash conversion are compared. If the target hash value and the standard hash value are consistent, the verification result of the target information code is determined to be valid; otherwise, the verification result of the target information code is determined to be invalid.

[0089] In an embodiment of the present invention, the existence of the target contract is determined based on the target contract identifier to achieve the determination of the authenticity and validity of the target contract, and the verification result of the target information code is determined based on the target hash value and the standard hash value corresponding to the target contract identifier to achieve the determination of the validity verification result of the target information code.

[0090] Step 280: When it is determined that the verification result is that the information code is valid, the target contract and the record information corresponding to the target contract are obtained according to the target contract identifier.

[0091] Specifically, after determining that the validity verification result of the target information code is valid, the target contract can be obtained based on the target storage address. The target contract signing process can also be obtained by accessing the storage and access evidence server to trace the signing of the target contract.

[0092] Of course, the validity of the recorded information can also be verified, specifically by decrypting and verifying digital signatures to confirm that the data in the electronic evidence chain has not been tampered with and that it has indeed occurred in chronological order.

[0093] In actual applications, after obtaining the target contract, text content verification parameters can be generated based on the contract content of the target contract. Specifically, keywords can be randomly extracted from the target contract and the position of the keywords in the target contract can be determined.

[0094] In the embodiment of the present invention, it is achieved to obtain the target contract and the record information corresponding to the target contract according to the target contract identifier.

[0095] Step 290: Send the verification result, the target contract and the record information to the user terminal.

[0096] Specifically, the verification result of the target information code, the target contract and the recorded information can be sent to the user terminal, so that the user can view the target contract and the recorded information, thereby realizing a transparent and traceable contract verification function.

[0097] Of course, while sending the verification results of the target information code, the target contract and the recorded information to the user terminal, the body content verification parameters can also be sent to the user terminal so that the user can compare the body content verification parameters with the content at the corresponding position in the target contract to determine the integrity and consistency of the target contract.

[0098] In the embodiment of the present invention, by sending the verification result, the target contract and the record information to the user terminal, it is convenient for the user to track and verify the flow status and historical information of the contract in real time, thereby improving the transparency and judicial effectiveness of the contract flow process.

[0099] The electronic contract signing method provided by the embodiment of the present invention includes: generating a to-be-signed contract according to a business contract and user information, and sending the to-be-signed contract to a user terminal; determining an information code corresponding to the to-be-signed contract; generating a contract seal according to the information code and a user seal corresponding to the user information; after receiving a signing confirmation request triggered by the user terminal based on the to-be-signed contract, signing the to-be-signed contract according to the user information and the contract seal to obtain a signed contract; determining the record information of the signed contract, and solidifying and storing the record information; after receiving an acquisition request triggered by the user terminal by scanning a target information code, decrypting the target encrypted information carried by the target information code contained in the acquisition request to obtain target basic information and a target hash value; after determining that a target contract exists according to the target basic information, determining a verification result of the target information code according to the target hash value and a standard hash value corresponding to the target basic information; when determining that the verification result is that the information code is valid, acquiring a target contract and the record information corresponding to the target contract according to the target basic information; and sending the verification result, the target contract and the record information to the user terminal. The above technical scheme can generate a contract to be signed by the user when providing business services to the user according to the business contract corresponding to the business service and the user information corresponding to the user, and send the contract to be signed to the user terminal, so that the user can view the contract to be signed based on the user terminal. After determining the hash value of the basic information of the contract to be signed based on the HMAC algorithm, the hash value of the basic information of the contract to be signed is encrypted based on asymmetric encryption to obtain the encrypted information of the contract to be signed, thereby generating more secure encrypted information uniquely corresponding to the contract to be signed, storing the encrypted information and storage address of the contract to be signed in the information code through the information code generation technology, thereby generating an information code containing the encrypted information and storage address of the contract to be signed, and The contract seal is obtained by fusing the unique information code corresponding to the user information with the user seal corresponding to the user information, which improves the uniqueness and visual recognition of the contract seal and enhances the security and anti-counterfeiting properties of the contract seal. In addition, the contract seal provides a viewing method for the contract to be signed, which improves the interactivity of the contract seal, allowing users to view the contract to be signed by scanning the information code in the contract seal through the user terminal, creating a new interactive method, allowing users to view the contract to be signed more intuitively and conveniently, greatly optimizing the user experience. After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract, thereby improving the security of the contract and ensuring the legal effect of the contract.

[0100] In addition, the recorded information of the signed contract is solidified and stored through the evidence storage server, ensuring the security and non-tamperability of the recorded information, and providing data evidence for contract traceability.

[0101] After receiving the acquisition request sent by the user terminal, the target encrypted information carried by the target information code contained in the acquisition request is decrypted by using the preset private key corresponding to the user information contained in the acquisition request to obtain the target contract identifier and target hash, and the existence of the target contract is determined according to the target contract identifier to determine the authenticity and validity of the target contract. The verification result of the target information code is determined according to the target hash value and the standard hash value corresponding to the target contract identifier to determine the validity verification result of the target information code. When the verification result is that the information code is valid, the target contract and the corresponding record information of the target contract are obtained according to the target contract identifier. By sending the verification result, the target contract and the record information to the user terminal, it is convenient for the user to track and verify the circulation status and historical information of the contract in real time, thereby improving the transparency and judicial effectiveness of the contract circulation process. In addition, this real-time updated and detailed circulation record greatly improves the transparency of the contract life cycle management, and provides strong data support and technical guarantee for subsequent audit review and dispute resolution.

[0102] Figure 3 A schematic diagram of the structure of an electronic contract signing device provided in an embodiment of the present invention. The device and the electronic contract signing methods of the above-mentioned embodiments belong to the same inventive concept. For details not fully described in the embodiment of the electronic contract signing device, reference can be made to the above-mentioned electronic contract signing method embodiments.

[0103] The specific structure of the electronic contract signing device is as follows: Figure 3 As shown, including:

[0104] A generating module 310, configured to generate a contract to be signed according to the business contract and user information, and send the contract to be signed to the user terminal;

[0105] A determination module 320, for determining an information code corresponding to the contract to be signed, and generating a contract seal according to the information code and a user seal corresponding to the user information;

[0106] The signing module 330 is used to sign the contract to be signed according to the user information and the contract seal after receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, so as to obtain a signed contract.

[0107] Based on the above embodiment, the determination module 320 is specifically used for:

[0108] Determine the encrypted information of the contract to be signed according to the basic information of the contract to be signed; determine the storage address of the contract to be signed, and generate the information code according to the storage address and the encrypted information; construct the user seal according to the user information; embed the information code into the user seal to obtain the contract seal.

[0109] In one implementation, determining the encrypted information of the contract to be signed according to the basic information of the contract to be signed includes:

[0110] The basic information is hashed and converted to obtain a hash value, which is then encrypted to obtain the encrypted information.

[0111] Based on the above embodiment, the signing module 330 is specifically used for:

[0112] After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the digital certificate corresponding to the user information is obtained; after stamping the contract seal on the signature area of ​​the contract to be signed, the contract to be signed is signed based on the digital certificate to obtain the signed contract.

[0113] Based on the above embodiment, the device further includes:

[0114] A storage module is used to determine the record information of the signed contract and solidify and store the record information, wherein the record information at least includes the user information, the sending time of the signing confirmation information, and the signing time of the signed contract.

[0115] Based on the above embodiment, the device further includes:

[0116] An acquisition module is used to, after receiving an acquisition request triggered by the user terminal scanning a target information code, decrypt the target encrypted information carried by the target information code contained in the acquisition request to obtain target basic information and a target hash value; after determining that a target contract exists based on the target basic information, determine a verification result of the target information code based on the target hash value and a standard hash value corresponding to the target basic information; when it is determined that the verification result is that the information code is valid, obtain the target contract and the record information corresponding to the target contract based on the target basic information; and send the verification result, the target contract and the record information to the user terminal.

[0117] In one implementation, determining the verification result of the target information code according to the target hash value and the standard hash value corresponding to the target basic information includes:

[0118] The standard hash value is obtained by performing hash conversion on the target basic information; when it is determined that the target hash value and the standard hash value are consistent, the verification result is determined to be that the information code is valid; otherwise, the verification result is determined to be that the information code is invalid.

[0119] The electronic contract signing device provided in the embodiment of the present invention can execute the electronic contract signing method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects for executing the electronic contract signing method.

[0120] It is worth noting that in the embodiment of the above-mentioned electronic contract signing device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of the present invention.

[0121] Figure 4 A schematic diagram of the structure of a server provided in an embodiment of the present invention. Figure 4 A block diagram of an exemplary server 4 suitable for use in implementing embodiments of the present invention is shown. Figure 4 The server 4 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0122] like Figure 4 As shown, the server 4 is in the form of a general purpose computing electronic device. The components of the server 4 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 connecting different system components (including the system memory 28 and the processing unit 16).

[0123] Bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or a local bus using any of a variety of bus architectures. By way of example, these architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MAC) bus, an Enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.

[0124] The server 4 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by the server 4, including volatile and non-volatile media, removable and non-removable media.

[0125] The system memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache memory 32. The server 4 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 34 may be used to read and write non-removable, non-volatile magnetic media ( Figure 4 not shown, usually called a "hard drive"). Although Figure 4 Not shown in the figure, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, a DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to the bus 18 via one or more data medium interfaces. The system memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of the various embodiments of the present invention.

[0126] A program / utility 40 having a set (at least one) of program modules 42 may be stored, for example, in system memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment. Program modules 42 generally perform the functions and / or methods of the embodiments described herein.

[0127] The server 4 may also communicate with one or more external devices 14 (e.g., keyboards, pointing devices, displays 24, etc.), one or more devices that enable a user to interact with the server 4, and / or any device that enables the server 4 to communicate with one or more other computing devices (e.g., network cards, modems, etc.). Such communication may be performed via an input / output (I / O) interface 22. Furthermore, the server 4 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) via a network adapter 20. Figure 4 As shown, the network adapter 20 communicates with other modules of the server 4 via the bus 18. It should be understood that although Figure 4 Not shown, other hardware and / or software modules may be used in conjunction with server 4, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0128] The processing unit 16 executes various functional applications and page displays by running the programs stored in the system memory 28, for example, implementing the electronic contract signing method provided in the embodiment of the present invention, which includes:

[0129] Generate a contract to be signed based on the business contract and user information, and send the contract to be signed to the user terminal;

[0130] Determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information;

[0131] After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract.

[0132] Of course, those skilled in the art can understand that the processor can also implement the technical solution of the electronic contract signing method provided by any embodiment of the present invention.

[0133] An embodiment of the present invention provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, for example, a method for signing an electronic contract provided by an embodiment of the present invention is implemented. The method includes:

[0134] Generate a contract to be signed based on the business contract and user information, and send the contract to be signed to the user terminal;

[0135] Determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information;

[0136] After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract.

[0137] The computer storage medium of the embodiment of the present invention can adopt any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, but not limited to: an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this document, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it.

[0138] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0139] The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0140] Computer program code for performing the operations of the present invention may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0141] It should be understood by those skilled in the art that the modules or steps of the present invention described above can be implemented by a general-purpose computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, optionally, they can be implemented by a program code executable by a computer device, so that they can be stored in a storage device and executed by the computing device, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present invention is not limited to any specific combination of hardware and software.

[0142] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims

1. A method for signing an electronic contract, characterized in that: include: Generate a contract to be signed based on the business contract and user information, and send the contract to be signed to the user terminal; Determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information; After receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, the contract to be signed is signed according to the user information and the contract seal to obtain a signed contract.

2. The electronic contract signing method according to claim 1, characterized in that: Determine the information code corresponding to the contract to be signed, including: Determining the encrypted information of the contract to be signed according to the basic information of the contract to be signed; The storage address of the contract to be signed is determined, and the information code is generated according to the storage address and the encrypted information.

3. The electronic contract signing method according to claim 2, characterized in that: Determining the encrypted information of the contract to be signed according to the basic information of the contract to be signed includes: The basic information is hashed and converted to obtain a hash value, which is then encrypted to obtain the encrypted information.

4. The electronic contract signing method according to claim 1, characterized in that: Generating a contract seal according to the information code and the user seal corresponding to the user information, including: Constructing the user seal according to the user information; The information code is embedded in the user seal to obtain the contract seal.

5. The electronic contract signing method according to claim 1, characterized in that: The contract to be signed is signed according to the user information and the contract seal to obtain a signed contract, including: Obtaining a digital certificate corresponding to the user information; After the contract seal is stamped on the signature area of ​​the contract to be signed, the contract to be signed is signed based on the digital certificate to obtain the signed contract.

6. The electronic contract signing method according to claim 1, characterized in that: Also includes: Determine the record information of the signed contract, and solidify and store the record information, wherein the record information at least includes the user information, the sending time of the signing confirmation information, and the signing time of the signed contract.

7. The electronic contract signing method according to claim 6, characterized in that: Also includes: After receiving the acquisition request triggered by the user terminal scanning the target information code, the target contract identifier and the target hash value are obtained by decrypting the target encrypted information carried by the target information code contained in the acquisition request; After determining the existence of the target contract according to the target contract identifier, determining the verification result of the target information code according to the target hash value and the standard hash value corresponding to the target contract identifier; When it is determined that the verification result is that the information code is valid, acquiring the target contract and the record information corresponding to the target contract according to the target contract identifier; The verification result, the target contract and the record information are sent to the user terminal.

8. The electronic contract signing method according to claim 7, characterized in that: Determining a verification result of the target information code according to the target hash value and a standard hash value corresponding to the target contract identifier includes: Determine the target basic information of the target contract corresponding to the target contract identifier, and obtain the standard hash value by performing hash conversion on the target basic information; When it is determined that the target hash value is consistent with the standard hash value, the verification result is determined to be that the information code is valid; otherwise, the verification result is determined to be that the information code is invalid.

9. An electronic contract signing device, characterized in that: include: A generation module, used to generate a contract to be signed according to the business contract and user information, and send the contract to be signed to the user terminal; A determination module, used to determine the information code corresponding to the contract to be signed, and generate a contract seal according to the information code and the user seal corresponding to the user information; The signing module is used to sign the contract to be signed according to the user information and the contract seal after receiving the signing confirmation request triggered by the user terminal based on the contract to be signed, so as to obtain a signed contract.

10. A server, characterized in that: The server comprises: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the electronic contract signing method as described in any one of claims 1-8.

11. A storage medium containing computer executable instructions, characterized in that: The computer executable instructions are used to execute the electronic contract signing method as described in any one of claims 1-8 when executed by a computer processor.