An electronic signature method, system and storage medium

By leveraging cloud computing technology and a three-layer encryption/decryption mechanism, the problems of low security and slow response speed of electronic signatures have been solved, enabling secure and efficient transmission of signature information and improving user experience.

CN113658031BActive Publication Date: 2026-04-07HEBEI JILIAN HUMAN RESOURCES SERVICE GRP CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-25
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

Existing electronic signature technology suffers from low security and slow data response speed, especially when terminals are changed or multiple users log in, resulting in wasted funds and low security.

Method used

A three-layer encryption and decryption mechanism is adopted, which utilizes cloud computing technology to perform symmetric and asymmetric encryption on the signed information, combined with distributed decryption technology, and ensures the security and response speed of the signed information through a dual constraint mechanism of cloud signing center and client.

Benefits of technology

It improves the security and efficiency of electronic signatures, solves the problems of financial waste and security caused by frequent terminal replacements in existing technologies, and realizes fast and secure transmission of signature information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113658031B_ABST
    Figure CN113658031B_ABST
Patent Text Reader

Abstract

The application provides an electronic signature method, system and storage medium, adopts cloud computing technology, carries out three-layer encryption and decryption on signature information, adopts symmetric and asymmetric encryption technology and distributed decryption technology, the decryption corresponding to the third-layer encryption and the decryption corresponding to the second-layer encryption are carried out in a cloud center, and the decryption corresponding to the first-layer encryption is carried out in an electronic signature use request end, so that a center and client double constraint mechanism is formed, the signature information transmission safety is better guaranteed, the authenticity, effectiveness and safety of the electronic signature are ensured, the technical problem that a large number of signature requests cannot be concurrently processed in the prior art is solved, and the electronic signature efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The embodiment of the present application relates to the technical field of electronic signature, in particular to an electronic signature method, system and storage medium. BACKGROUND

[0002] Now the application of electronic signature technology is more and more extensive and mature, and the security of signature is more and more important.

[0003] Electronic signature is a form of electronic signature, which is to convert electronic signature operation into the same visual effect as paper document stamping operation by using image processing technology, and to ensure the authenticity and integrity of electronic information and the non-repudiation of the signer by using electronic signature technology.

[0004] However, the existing electronic signature process is based on terminal binding electronic signature, if the system deletes the application or replaces the terminal, it is necessary to reapply for a certificate and pay for the re-applied certificate, and in the use period, the user can log in to multiple devices, and one device can be logged in by multiple users, so that the users frequently change mobile terminals to reapply for a certificate, which can cause great waste of funds and low security; or the existing technology combines electronic signature and signature file, and the data amount processed is large, and the response speed is too slow. SUMMARY

[0005] The embodiment of the present application provides an electronic signature method, system and storage medium, to solve the technical problems of low security of electronic signature and slow data response speed, improve the security of electronic signature and improve the user experience.

[0006] In order to solve the above technical problems, the present application is implemented as follows:

[0007] In a first aspect, the embodiment of the present application further provides an electronic signature method, comprising:

[0008] Step S201: converting a signature picture into a signature picture string;

[0009] Step S202: encrypting the signature picture string to obtain ciphertext data;

[0010] Step S203: establishing a key matrix and obtaining a digest file of the key matrix;

[0011] Step S204: encrypting the digest file to obtain a digest key;

[0012] Step S205: establishing a transmission matrix and sending the encrypted data to a cloud signature center;

[0013] Step S206: The cloud signature center obtains encrypted data, receives electronic signature usage requests, and decrypts the encrypted data to obtain the signature image.

[0014] Furthermore, the step of converting the signature into a signature image string specifically involves creating a stream file corresponding to the signature image, creating a new image array and aligning it with the format of the stream file, reading the stream file into the image array, closing the stream file, creating the signature image string, and storing the image array into the signature image string.

[0015] Furthermore, the step of encrypting the signature image string to obtain ciphertext data specifically involves encrypting the signature image string, randomly generating a first key, formatting the signature image string and the first key to form a first array, encrypting the array using a symmetric encryption algorithm, using the encrypted signature image string as ciphertext data, and saving the ciphertext data.

[0016] Furthermore, the step of encrypting the digest file to obtain the digest key specifically involves: using the local private key of the electronic signature terminal to digitally sign and encrypt the first digest file; establishing a private key and public key generator; initializing the format of the private key and public key generator; generating a key pair; generating the decryption private key of the electronic signature terminal and the encryption public key of the electronic signature generator; encrypting the digest file and obtaining the digest key.

[0017] Furthermore, the step of establishing a transmission matrix and sending encrypted data to the cloud signature center specifically involves establishing a transmission matrix, saving the ciphertext data, the first key, the digest key, and the private key into the transmission matrix, and transmitting the transmission matrix data to the cloud signature center.

[0018] Furthermore, the cloud signature center acquires encrypted data, receives electronic signature usage requests, and decrypts the encrypted data to obtain a signature image, specifically as follows:

[0019] The cloud signature center obtains the electronic signature request, acquires the encrypted data of the electronic signature image and the digest key, calculates the digest file through the encrypted data, establishes a second key matrix, loads the encrypted data into the second key matrix, and calculates the second digest file using the digest algorithm.

[0020] Send the local private key, the second digest file, and the digest key to the cloud signature center, initiate a key comparison and verification request, and jump to the multiprocessor management module to perform the comparison. If the verification is successful, receive the first key returned by the cloud signature center.

[0021] Using the first key, the ciphertext data is decrypted to obtain the decrypted data;

[0022] Restore the decrypted data to an image.

[0023] Furthermore, the jump to the multiprocessor management module to perform the comparison specifically involves:

[0024] The processor obtains the electronic signature usage request and sends the encrypted electronic signature image data to the requesting end.

[0025] The processor obtains the local private key and second digest file sent by the electronic signature user, processes the key comparison and verification request, uses the private key to decrypt the digest key, and obtains the digest decryption result file.

[0026] Compare the strings of the second digest file and the digest decryption result file. If they are completely identical, the first key is sent to the requesting party for electronic signature verification.

[0027] Secondly, embodiments of the present invention provide an electronic signature system, including: the electronic signature system includes a cloud signature center, an electronic signature generation request terminal, and an electronic signature usage request terminal;

[0028] The cloud signature center includes an encryption / decryption algorithm module, a central database, a multiprocessor management module, and a data transmission interface;

[0029] The electronic signature generation request client executes the following process:

[0030] Convert the signature image into a signature image string;

[0031] The signature image string is encrypted to obtain ciphertext data;

[0032] Create a key matrix and obtain its digest file;

[0033] Encrypt the digest file to obtain the digest key;

[0034] Establish a transmission matrix and send encrypted data to the cloud signature center;

[0035] The electronic signature generation request client and the electronic signature usage request client interact with the cloud signature center through the data transmission interface.

[0036] Furthermore, the electronic signature is executed using the requesting end:

[0037] The cloud signature center obtains the electronic signature request, acquires the encrypted data of the electronic signature image and the digest key, calculates the digest file through the encrypted data, establishes a second key matrix, loads the encrypted data into the second key matrix, and calculates the second digest file using the digest algorithm.

[0038] Send the local private key, the second digest file, and the digest key to the cloud signature center, initiate a key comparison and verification request, and jump to the multiprocessor management module to perform the comparison. If the verification is successful, receive the first key returned by the cloud signature center.

[0039] Using the first key, the ciphertext data is decrypted to obtain the decrypted data;

[0040] Restore the decrypted data to an image.

[0041] Thirdly, embodiments of the present invention provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the electronic signature method as described in the first aspect.

[0042] This invention provides an electronic signature method, system, and storage medium. It employs cloud computing technology to perform three layers of encryption and decryption on the signature information, using symmetric and asymmetric encryption techniques as well as distributed decryption. The decryption corresponding to the third layer of encryption and the second layer of encryption is performed at the cloud center, while the decryption corresponding to the first layer of encryption is performed at the electronic signature requesting end. This forms a dual constraint mechanism between the center and the client, better ensuring the security of signature information transmission and guaranteeing the authenticity, validity, and security of the electronic signature. It solves the technical problem of existing technologies being unable to concurrently process a large number of signature requests, thus improving the efficiency of electronic signatures. Attached Figure Description

[0043] Figure 1 This is a schematic diagram of the electronic signature system of the present invention;

[0044] Figure 2 This is a flowchart of the electronic signature method of the present invention. Detailed Implementation

[0045] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0046] See Figure 1 , Figure 1 This is a schematic diagram of the system implementation of the present invention. The electronic signature system of the present invention includes a cloud signature center 10, which includes an encryption / decryption algorithm module 101, a central database 102, and a multiprocessor management module 103. The cloud signature center 10 receives electronic signature generation requests Dn (n = 1, 2, ...) and electronic signature usage requests Qn (n = 1, 2, ...).

[0047] See Figure 2 , Figure 2 This is a flowchart illustrating the electronic signature method according to Embodiment 1 of this application. The method includes:

[0048] Step S201: Convert the signature image into a signature image string;

[0049] The process involves setting the signature image as AM1, creating a FileInputStream type file named lwj corresponding to AM1, creating an image array TPSZ and aligning it with the format of lwj, using the read method of the stream file lwj to read the stream file into the array, closing the stream file, creating a string AM1Strig, and reading the image array TPSZ into the signature image string AM1Strig, thus storing the computer code corresponding to the signature image in AM1Strig. The resulting signature image string is encoded in hexadecimal. The specific implementation method is as follows:

[0050] FileInputStream lwj=new FileInputStream(AM1);

[0051] byte[]TPSZ=new byte[lwj.available()];

[0052] lwj.read(TPSZ);

[0053] lwj.close();

[0054] String AM1Strig=byte2hex(TPSZ).

[0055] Step S202: Encrypt the signature image string to obtain ciphertext data;

[0056] Specifically, an encryption algorithm is used to encrypt the signature image string AM1Strig. A first key, deskey, is randomly generated. The image string and the first key deskey are formatted and combined into an array DESSZ. A symmetric encryption algorithm is used, and the array is passed to the encode method of the BASE64Encoder object for encryption. The encrypted signature image string is the ciphertext data, which is saved to desMV. The specific implementation method is as follows:

[0057] byte[]DESSZ=encrypt(AM1Strig.getBytes(ENCODE),deskey.getBytes(ENCODE));

[0058] String desMV=new BASE64Encoder().encode(DESSZ);

[0059] return desMV.

[0060] Step 202 of the present invention performs a first layer of encryption by encrypting the computer encoding of the image to prevent information leakage during transmission and improve the security of electronic signatures.

[0061] Step S203: Establish a key matrix and obtain a digest file of the key matrix;

[0062] Specifically, a key matrix MYJ is created, the ciphertext data is loaded into MYJ(desMV), a data container of type MessageDigest (sjrq) is defined, and a digest algorithm is used to calculate the digest file ZYtext of the key matrix MYJ. The specific implementation method is as follows:

[0063] MessageDigest sjrq=MessageDigest.getInstance("MD5");

[0064] byte[]ZYtext=sjrq.digest(MYJ.getBytes()).

[0065] In step S203 of the present invention, a key matrix is ​​established, and the information encrypted by the first layer of encryption is digested and encrypted using a digest algorithm to further increase information security and compress the information for easy data transmission.

[0066] Step S204: Encrypt the digest file to obtain the digest key;

[0067] The first digest file ZYtext is digitally signed and encrypted using the local private key of the electronic signature terminal. A private and public key generator kpg is created, initialized to a 2048-bit format, and a KeyPair type key pair GSkey is generated. The electronic signature user's decryption private key SKey and the electronic signature generator's encryption public key Gkey are also generated. An encryptor RSAjmq is defined, and the public key GKey and the encryptor are used for encryption initialization to encrypt the digest file ZYtext and obtain the digest key ZYMWtxt.

[0068] KeyPairGenerator kpg=KeyPairGenerator.getInstance("RSA");

[0069] kpg.initialize(2048);

[0070] KeyPair GSkey=kpg.generateKeyPair();

[0071] RSAPublicKey Gkey=(RSAPublicKey)GSkey.getPublic();

[0072] RSAPrivateKey SKey=(RSAPrivateKey)keyPair.getPrivate();

[0073] Cipher RSAjmq=Cipher.getInstance("RSA");

[0074] RSAjmq.init(Cipher.ENCRYPT_MODE,GKey);

[0075] String ZYMWtxt =

[0076] Base64.encodeBase64String(RSAjmq.doFinal(ZYtext.getBytes("UTF-8")));

[0077] In step S204 of this invention, asymmetric encryption technology is used to perform a third layer of encryption on the information that has already undergone the second layer of encryption. This facilitates distributed decryption between the cloud center and the requesting end, enhancing the security of information transmission. The decryption corresponding to the third layer of encryption, like the decryption corresponding to the second layer of encryption, is performed at the cloud center, while the decryption corresponding to the first layer of encryption is performed at the requesting end using the electronic signature. This forms a dual constraint mechanism between the center and the client, better ensuring the security of the signed information transmission.

[0078] Step S205: Establish a transmission matrix and send encrypted data to the cloud signature center;

[0079] Establish a transmission matrix CSmatrix, save the ciphertext data desMV, the first key deskey, the digest key ZYMWtxt, and the private key Skey into CSmatrix, and send the data CSmatrix to the cloud signature center.

[0080] Step S206: The cloud signature center obtains encrypted data, receives electronic signature usage requests, and decrypts the encrypted data to obtain the signature image.

[0081] The cloud signature center 10 obtains the electronic signature from the requesting client 30 via an electronic signature request, acquiring the encrypted image data `desMV` and the digest key `ZYMWtxt`. The digest file is calculated using the encrypted image data `desMV`. A key matrix `MYJ2` is established, and the encrypted data `desMV` is loaded into `MYJ2` (`desMV`). A data container of type `MessageDigest` `sjrq2` is defined, and a digest algorithm is used to calculate the second digest file `ZYtext2` of the key matrix `MYJ2`. The specific implementation method is as follows:

[0082] MessageDigest sjrq2=MessageDigest.getInstance("MD5");

[0083] byte[]ZYtext2=sjrq2.digest(MYJ2.getBytes());

[0084] Send the local private key SKey and the second digest file ZYtext2, along with the digest key ZYMWtxt, to the cloud signature center to initiate a key comparison and verification request. The process then redirects to the multiprocessor management module 103 to perform the comparison. If the verification passes, receive the deskey returned by the cloud signature center.

[0085] Use deskey to decrypt the encrypted image data desMV.

[0086] byte[]DESSZ2=encrypt(desMV.getBytes(DECODE),deskey.getBytes(DECODE));

[0087] String JMMV=new BASE64Decoder().decode(DESSZ2);

[0088] return JMMV;

[0089] Convert JMMV to an image.

[0090] Furthermore, specifically, the cloud signature center includes an encryption / decryption algorithm module 101, a central database 102, and a multiprocessor management module 103.

[0091] The encryption / decryption algorithm module 101 updates the MD5, RSA, and DES encryption / decryption algorithms to the electronic signature generation request client 10 and the electronic signature usage request client 20. It also sends the private key of the cloud signature center 10 to each electronic signature usage request client according to their permissions.

[0092] The central database 102 is used to receive data sent by the electronic signature generation request terminal 20 and save it to the database.

[0093] The multiprocessor management module 103 allocates the computing resources of the cloud signature center, such as CPU, GPU, memory, and hard disk, into n processors. Each processor can independently handle client generation and usage requests. The multiprocessor management module 103 specifically executes the following transactions:

[0094] 1) The processor obtains the electronic signature usage request from the requesting end and sends the encrypted electronic signature image data desMV to the requesting end.

[0095] 2) The processor obtains the local private key Skey and the second digest file ZYtext2 sent by the electronic signature user, processes the key comparison and verification request, and uses the private key Skey to decrypt the digest key ZYMWtxt.

[0096] Cipher RSAjmq2=Cipher.getInstance("RSA");

[0097] RSAjmq2.init(Cipher.DECRYPT_MODE,SKey);

[0098] String JMtxt2 =

[0099] new String(RSAjmq2.doFinal(Base64.decodeBase64(ZYMWtxt)),"UTF-8");

[0100] 3) Compare the strings ZYtext2 and JMtxt2. If they are completely identical, then pass the signature verification and send the first key deskey to the electronic signature user requesting end.

[0101] Furthermore, based on the same inventive concept as Embodiment 1 of this application, the present invention also provides an electronic signature system, as shown in the appendix. Figure 1 As shown, the electronic signature system includes: a cloud signature center 10, an electronic signature generation request terminal 20, and an electronic signature usage request terminal 30;

[0102] The electronic signature generation request terminal 20 mainly performs the following functions:

[0103] 1) Convert the signature image into a signature image string;

[0104] The process involves setting the signature image as AM1, creating a FileInputStream type file named lwj corresponding to AM1, creating an image array TPSZ and aligning it with the format of lwj, using the read method of the stream file lwj to read the stream file into the array, closing the stream file, creating a string AM1Strig, and reading the image array TPSZ into the signature image string AM1Strig, thus storing the computer code corresponding to the signature image in AM1Strig. The resulting signature image string is encoded in hexadecimal. The specific implementation method is as follows:

[0105] FileInputStream lwj=new FileInputStream(AM1);

[0106] byte[]TPSZ=new byte[lwj.available()];

[0107] lwj.read(TPSZ);

[0108] lwj.close();

[0109] String AM1Strig=byte2hex(TPSZ).

[0110] 2): Encrypt the signature image string to obtain ciphertext data;

[0111] Specifically, an encryption algorithm is used to encrypt the signature image string AM1Strig. A first key, deskey, is randomly generated. The image string and the first key deskey are formatted and combined into an array DESSZ. A symmetric encryption algorithm is used, and the array is passed to the encode method of the BASE64Encoder object for encryption. The encrypted signature image string is the ciphertext data, which is saved to desMV. The specific implementation method is as follows:

[0112] byte[]DESSZ=encrypt(AM1Strig.getBytes(ENCODE),deskey.getBytes(ENCODE));

[0113] String desMV=new BASE64Encoder().encode(DESSZ);

[0114] return desMV.

[0115] 3): Establish a key matrix and obtain its digest file;

[0116] Specifically, a key matrix MYJ is created, the ciphertext data is loaded into MYJ(desMV), a data container of type MessageDigest (sjrq) is defined, and a digest algorithm is used to calculate the digest file ZYtext of the key matrix MYJ. The specific implementation method is as follows:

[0117] MessageDigest sjrq=MessageDigest.getInstance("MD5");

[0118] byte[]ZYtext=sjrq.digest(MYJ.getBytes()).

[0119] 4): Encrypt the digest file to obtain the digest key;

[0120] The first digest file ZYtext is digitally signed and encrypted using the local private key of the electronic signature terminal. A private and public key generator kpg is created, initialized to a 2048-bit format, and a KeyPair type key pair GSkey is generated. The electronic signature user's decryption private key SKey and the electronic signature generator's encryption public key Gkey are also generated. An encryptor RSAjmq is defined, and the public key GKey and the encryptor are used for encryption initialization to encrypt the digest file ZYtext and obtain the digest key ZYMWtxt.

[0121] KeyPairGenerator kpg=KeyPairGenerator.getInstance("RSA");

[0122] kpg.initialize(2048);

[0123] KeyPair GSkey=kpg.generateKeyPair();

[0124] RSAPublicKey Gkey=(RSAPublicKey)GSkey.getPublic();

[0125] RSAPrivateKey SKey=(RSAPrivateKey)keyPair.getPrivate();

[0126] Cipher RSAjmq=Cipher.getInstance("RSA");

[0127] RSAjmq.init(Cipher.ENCRYPT_MODE,GKey);

[0128] String ZYMWtxt =

[0129] Base64.encodeBase64String(RSAjmq.doFinal(ZYtext.getBytes("UTF-8")));

[0130] 5): Establish a transmission matrix and send encrypted data to the cloud signature center;

[0131] Establish a transmission matrix CSmatrix, save the ciphertext data desMV, the first key deskey, the digest key ZYMWtxt, and the private key Skey into CSmatrix, and send the data CSmatrix to the cloud signature center.

[0132] The cloud signature center 10 includes an encryption / decryption algorithm module 101, a central database 102, a multiprocessor management module 103, and a data transmission interface 104; the electronic signature generation request terminal 20 and the electronic signature usage request terminal 30 interact with each module in the cloud signature center 10 through the data transmission interface 104.

[0133] The encryption / decryption algorithm module 101 updates the MD5, RSA, and DES encryption / decryption algorithms to the electronic signature generation request client 10 and the electronic signature usage request client 20. It also sends the private key of the cloud signature center 10 to each electronic signature usage request client according to their permissions.

[0134] The central database 102 is used to receive data sent by the electronic signature generation request terminal 20 and save it to the database.

[0135] The multiprocessor management module 103 allocates the computing resources of the cloud signature center, such as CPU, GPU, memory, and hard disk, into n processors. Each processor can independently handle client generation and usage requests. The multiprocessor management module 103 specifically executes the following transactions:

[0136] 1) The processor obtains the electronic signature usage request from the requesting end and sends the encrypted electronic signature image data desMV to the requesting end.

[0137] 2) The processor obtains the local private key Skey and the second digest file ZYtext2 sent by the electronic signature user, processes the key comparison and verification request, and uses the private key Skey to decrypt the digest key ZYMWtxt.

[0138] Cipher RSAjmq2=Cipher.getInstance("RSA");

[0139] RSAjmq2.init(Cipher.DECRYPT_MODE,SKey);

[0140] String JMtxt2 =

[0141] new String(RSAjmq2.doFinal(Base64.decodeBase64(ZYMWtxt)),"UTF-8");

[0142] 3) Compare the strings ZYtext2 and JMtxt2. If they are completely identical, then pass the signature verification and send the first key deskey to the electronic signature user requesting end.

[0143] The electronic signature request client 30 performs the following functions: The cloud signature center 10 receives the electronic signature request from the electronic signature request client 30, obtains the encrypted image data (desMV) and the digest key (ZYMWtxt) of the electronic signature. It calculates the digest file using the encrypted image data (desMV). A key matrix MYJ2 is established, and the encrypted data (desMV) is loaded into MYJ2 (desMV). A data container of type MessageDigest (sjrq2) is defined, and a digest algorithm is used to calculate the second digest file (ZYtext2) of the key matrix MYJ2. The specific implementation method is as follows:

[0144] MessageDigest sjrq2=MessageDigest.getInstance("MD5");

[0145] byte[]ZYtext2=sjrq2.digest(MYJ2.getBytes());

[0146] Send the local private key SKey and the second digest file ZYtext2, along with the digest key ZYMWtxt, to the cloud signature center to initiate a key comparison and verification request. The process then redirects to the multiprocessor management module 103 to perform the comparison. If the verification passes, receive the deskey returned by the cloud signature center.

[0147] Use deskey to decrypt the encrypted image data desMV.

[0148] byte[]DESSZ2=encrypt(desMV.getBytes(DECODE),deskey.getBytes(DECODE));

[0149] String JMMV=new BASE64Decoder().decode(DESSZ2);

[0150] return JMMV;

[0151] Convert JMMV to an image.

[0152] Embodiment 4 of the present invention also provides a computer-readable storage medium storing a computer program. When executed by a processor, the computer program implements the various processes of the above-described electronic signature method embodiments and achieves the same technical effects. To avoid repetition, it will not be described again here. The computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc.

[0153] This invention provides an electronic signature method, system, and storage medium. It employs cloud computing technology to perform three layers of encryption and decryption on the signature information, using symmetric and asymmetric encryption techniques as well as distributed decryption. The decryption corresponding to the third layer of encryption and the second layer of encryption is performed at the cloud center, while the decryption corresponding to the first layer of encryption is performed at the electronic signature requesting end. This forms a dual constraint mechanism between the center and the client, better ensuring the security of signature information transmission and guaranteeing the authenticity, validity, and security of the electronic signature. It solves the technical problem of existing technologies being unable to concurrently process a large number of signature requests, thus improving the efficiency of electronic signatures.

[0154] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0155] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.

[0156] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of the present invention.

Claims

1. An electronic signature method, characterized in that, The method includes: Step S201: Convert the signature image into a signature image string; specifically, create a stream file corresponding to the signature image, create a new image array and align it with the format of the stream file, read the stream file into the image array, close the stream file, create a signature image string, and store the image array into the signature image string; Step S202: Encrypt the signature image string to obtain ciphertext data; specifically, encrypt the signature image string, randomly generate a first key, format the signature image string and the first key and form a first array, use a symmetric encryption algorithm, encrypt the array into an object, use the encrypted signature image string as ciphertext data, and save the ciphertext data. Step S203: Establish a key matrix, load the ciphertext data into the key matrix, and obtain the first digest file of the key matrix; Step S204: Encrypt the first digest file to obtain the digest key; specifically, use the local private key of the electronic signature to digitally sign and encrypt the first digest file, establish a private key and public key generator, initialize the format of the private key and public key generator, generate a key pair, and generate the decryption private key of the electronic signature user and the encryption public key of the electronic signature generator, encrypt the first digest file and obtain the digest key. Step S205: Establish a transmission matrix and send encrypted data to the cloud signature center; Step S206: The cloud signature center obtains encrypted data and receives an electronic signature usage request. The requesting end decrypts the encrypted data to obtain a signature image. Specifically, step S206 involves the cloud signature center obtaining an electronic signature request; the processor obtaining the electronic signature usage request and sending the encrypted electronic signature image data to the requesting end; the requesting end obtaining the encrypted electronic signature image data and a digest key, calculating a second digest file using the encrypted data, establishing a second key matrix, loading the encrypted data into the second key matrix, and calculating the second digest file using a digest algorithm; and sending the local private key, the second digest file, and the digest key to the cloud signature center to extract the signature. The key comparison verification request redirects to the multiprocessor management module of the cloud signature center for comparison. If the verification passes, the user receives the first key returned by the cloud signature center; the first key is used to decrypt the encrypted data to obtain decrypted data; the decrypted data is then restored to an image. Specifically, the redirection to the multiprocessor management module for comparison involves: the processor acquiring the local private key and the second digest file sent by the electronic signature user; processing the key comparison verification request; using the private key to decrypt the digest key to obtain the digest decryption result file; comparing the strings of the second digest file and the digest decryption result file; if they are identical, the signature verification passes, and the first key is sent to the electronic signature user requesting terminal.

2. The method according to claim 1, characterized in that, The establishment of the transmission matrix and the sending of encrypted data to the cloud signature center specifically involves: Establish a transmission matrix, save the encrypted data, the first key, the digest key, and the private key into the transmission matrix, and transmit the transmission matrix data to the cloud signature center.

3. An electronic signature system, characterized in that, The electronic signature system includes a cloud signature center, an electronic signature generation request terminal, and an electronic signature usage request terminal. The cloud signature center includes an encryption / decryption algorithm module, a central database, a multiprocessor management module, and a data transmission interface; The electronic signature generation request client executes the following process: Convert the signature image into a signature image string; specifically, create a stream file corresponding to the signature image, create a new image array and align it with the format of the stream file, read the stream file into the image array, close the stream file, create a signature image string, and store the image array into the signature image string; The signature image string is encrypted to obtain ciphertext data; Specifically, the signature image string is encrypted, a first key is randomly generated, the signature image string and the first key are formatted and combined into a first array, a symmetric encryption algorithm is used, the array is passed to an object for encryption, the encrypted signature image string is used as ciphertext data, and the ciphertext data is saved. Establish a key matrix, load the ciphertext data into the key matrix, and obtain the first digest file of the key matrix; The first digest file is encrypted to obtain the digest key; specifically, the first digest file is digitally signed and encrypted using the local private key of the electronic signature, a private key and public key generator is established, the format of the private key and public key generator is initialized, a key pair is generated, and the decryption private key of the electronic signature user and the encryption public key of the electronic signature generator are generated, and the first digest file is encrypted to obtain the digest key. Establish a transmission matrix and send encrypted data to the cloud signature center; The electronic signature generation request client and the electronic signature usage request client interact with the cloud signature center through a data transmission interface. This includes the cloud signature center obtaining encrypted data and receiving the electronic signature usage request; the electronic signature usage request client decrypting the encrypted data to obtain a signature image. Specifically, the cloud signature center obtains the electronic signature request; the processor obtains the electronic signature usage request and sends the encrypted data of the electronic signature image to the electronic signature usage request client; the electronic signature usage request client obtains the encrypted data of the electronic signature image and the digest key, calculates a second digest file using the encrypted data, establishes a second key matrix, loads the encrypted data into the second key matrix, calculates the second digest file using a digest algorithm, sends the local private key, the second digest file, and the digest key to the cloud signature center, initiates a key comparison verification request, and jumps to the multiprocessor management module of the cloud signature center to perform the comparison. If the verification is successful, the user client receives the first key returned by the cloud signature center. Using the first key, the encrypted data is decrypted to obtain decrypted data; the decrypted data is then restored to an image; the jump to the multiprocessor management module for comparison specifically involves: the processor obtaining the local private key and the second digest file sent by the electronic signature user, processing the key comparison verification request, using the private key to decrypt the digest key, and obtaining the digest decryption result file; comparing the strings of the second digest file and the digest decryption result file, and if they are completely identical, then the signature verification is passed, and the first key is sent to the electronic signature user requesting terminal.

4. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, which, when executed by a processor, implements the steps of the electronic signature method as described in any one of claims 1 to 2.

Citation Information

Patent Citations

  • Signature management method and device and electronic equipment

    CN112307503A

  • Electronic signature method, system and device based on blockchain and readable storage medium

    CN112507391A

  • Electronic signature method, device, device and medium

    CN109472166A