A multi-factor encryption method for bidding documents based on master-slave data alignment

By adding mixed codes to bid documents and using self-destruct programs for multi-factor verification encryption and decryption, the problem of insufficient security of bid documents in the prior art is solved, and efficient identity verification and file transfer security is achieved.

CN115834225BActive Publication Date: 2025-04-22STATE GRID ZHEJIANG ZHEDEN BIDDING CONSULTING CO LTD +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202211559074.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-06
Publication Date
2025-04-22
Estimated Expiration
2042-12-06

AI Technical Summary

Technical Problem

The prior art is difficult to effectively protect the security of bid documents during transmission, especially in the lack of applicable two-factor encryption algorithms and attribute-based encryption algorithms in offline bid documents.

Method used

The multi-factor encryption method of bid files based on master-slave data alignment is adopted. By adding mixed codes to the data file and using a self-destruct program to perform multi-factor verification encryption and decryption, including verification of the first secret key, bidder identification code, start code and mixed code generation program hash value.

Benefits of technology

It significantly improves the security of bid documents, prevents abnormal decryption behavior, ensures the security of the commercial information of bid suppliers, and improves identity verification efficiency and file transfer efficiency through continuous verification codes and dynamic compression algorithms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115834225B_ABST
    Figure CN115834225B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of information technology, and in particular to a multi-factor encryption method for bidding documents based on master-slave data alignment, comprising the following steps: packaging the bidding documents into data files, adding a hash code; encrypting using a first secret key, recording as a ciphertext file; adding a self-destruction program, packaging the self-destruction program and the ciphertext file into a compressed package, recording as a bidding document package; agreeing on a continuous verification code; receiving the bidding document package, and periodically verifying the continuous verification code; if the verification is passed, continuing; receiving the first secret key, the digital fingerprint of the data file and the start code, and receiving the hash code generation program; the tenderer inputs the first secret key, the digital fingerprint of the data file, the tenderer identification code, the start code and the hash value of the hash code generation program into the self-destruction program, and if they are all consistent, the self-destruction program decrypts the ciphertext file, otherwise, the self-destruction program generates garbled code to cover the ciphertext file. The beneficial technical effect of the present invention is: effectively improving the security of the bidding documents and ensuring the commercial information security of the bidding suppliers.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of information technology, and in particular to a bidding document multi-factor encryption method based on master-slave data alignment. Background Art

[0002] Tendering is a form of business cooperation that can effectively promote competition. Generally, several suppliers participate in the bidding, and the tenderer selects the best one. Usually, the supplier's price, quality, delivery time and service are considered. As a mature transaction method, the importance and superiority of tendering are increasingly recognized by various countries and various international economic organizations in domestic and international economic activities, and then it is legislated and promoted in quite a few countries and international organizations. Suppliers participating in the bidding need to submit bidding documents in a specified format within a specified period. The bidding documents contain information such as the supplier's qualifications, relevant certification documents, historical cooperation projects and the quotation of this bid. It contains a large amount of privacy and commercial secret information. Therefore, during the bidding process, not only does the tenderer need to strictly abide by the confidentiality agreement, but it is also necessary to take technical measures to prevent the bidding documents from being leaked during the transmission process. In the bidding process, there are two main leakage risks: the bidding documents are stolen and the identity is hijacked during the transmission process. Once the bidding documents are leaked, it is difficult for ordinary encryption technology to ensure that the bidding documents are not cracked. Although the two-factor encryption algorithm and attribute-based encryption algorithm that have emerged recently can improve the security of encryption and decryption, there is currently a lack of encryption solutions that can apply the two-factor encryption algorithm and attribute-based encryption algorithm to offline bidding documents. During the bidding process, the bidding documents are usually large, and the security of relying solely on login token verification is low. Therefore, it is necessary to increase the number of identity authentications during the bidding document upload process to ensure security. However, frequent acquisition of verification information and information verification processes will cause greater additional performance pressure. Therefore, it is necessary to study technologies to improve login verification.

[0003] For example, Chinese patent CN210691318U, published on June 5, 2020, discloses a bidding document encryption machine, including a housing, an interface unit, a control unit and a storage unit; the control unit is electrically connected to the storage unit and the interface unit respectively; it also includes: at least two encryption and decryption units and a marking device; each encryption and decryption unit uses different encryption rules for encryption and decryption; the encryption and decryption units are arranged in the housing and are respectively connected to the control unit; the marking device is electrically connected to the control unit; the control unit, the storage unit and the interface unit are arranged in the housing, and the marking device marks the storage medium, marking the encryption and decryption unit that encrypts the bidding documents in the storage medium. Its technical solution adopts different encryption and decryption rules for different bidding documents, and uses a marking device to mark the storage medium storing the bidding documents, so as to identify which encryption rules are used for the bidding documents. However, its encryption basis is single. If the encryption machine is lost, it will lead to the leakage of the bidding documents, and the security is still insufficient. Summary of the invention

[0004] The technical problem to be solved by the present invention is: a multi-factor encryption method for bidding documents based on master-slave data alignment,

[0005] To solve the above technical problems, the present invention adopts the following technical solution: a multi-factor encryption method for bidding documents based on master-slave data alignment, comprising the following steps:

[0006] The bidding documents are packaged into a data file, and a number of mixed codes are added to the data file. The mixed codes are generated by inputting the initial code into the mixed code generation program;

[0007] The data file after adding the hash code is encrypted using the first secret key and recorded as a ciphertext file;

[0008] Add a self-destruction program, and package the self-destruction program and the ciphertext file into a compressed package, which is recorded as a bidding document package. The self-destruction program records the first secret key, the tenderer identification code, the initial code, and the hash value of the mixed code generation program;

[0009] Receive the login request from the bidder, establish a communication connection with the bidder, and agree on a continuous verification code with the bidder;

[0010] Receive the bidding document packages transmitted by the bidder in segments and periodically verify the continuous verification codes sent by the bidder together with the bidding document packages;

[0011] If the continuous verification code is verified, the bidding document package will continue to be received. If the continuous verification code is not verified, the bidding document package will stop being received.

[0012] Receive the first secret key and initial code sent by the bidder, and receive the mixed code generation program provided by the bidder offline;

[0013] The tenderer inputs the first secret key, the tenderer identification code, the starting code and the hash value of the mixed code generation program into the self-destruction program. If the first secret key, the tenderer identification code, the starting code and the hash value of the mixed code generation program all match, the self-destruction program decrypts the ciphertext file, removes the mixed code, and restores the bidding document. Otherwise, if the first secret key, the tenderer identification code, the starting code or the hash value of the mixed code generation program do not match, the self-destruction program generates garbled code to overwrite the ciphertext file.

[0014] Preferably, the method for generating a promiscuous code by a promiscuous code generating program comprises:

[0015] Generate a polynomial function F(x), the degree of the polynomial function F(x) is n;

[0016] Generate a code line y=G*x+c, where c is a constant and G is equal to the starting code;

[0017] Calculate the intersection point of the code line and the polynomial function F(x) closest to the origin, record it as the code intersection point, remove the decimal point and take the absolute value of the first m significant digits of the horizontal coordinate of the code intersection point as the mixed code, remove the decimal point and take the absolute value of the first k significant digits of the vertical coordinate of the code intersection point as the mixed code position offset;

[0018] Let G equal the hash code, and execute the previous step again to continuously generate the hash code.

[0019] Preferably, a constant G0 is set, G0 is a positive integer, and after the slope G of the coding line is assigned, G=G mod G0 is set, and then the intersection point of the coding line and the polynomial function F(x) closest to the origin is calculated.

[0020] Preferably, when G is equal to the constant G0, the coding line and the polynomial function F(x) have more than Q intersection points;

[0021] After the slope G of the coding line is assigned, the Q intersection points of the coding line and the polynomial function F(x) on the positive half axis of the x-axis closest to the origin are calculated;

[0022] Arrange the Q intersection points in ascending order according to the x-coordinates, select any one of the Q intersection points as the code-taking intersection point, and record the order j of the code-taking intersection point;

[0023] The order j of all the code-taking intersections constitutes a sequence file, and the sequence file is sent to the tenderer through a preset channel.

[0024] As a preference, the order j of all the code intersections is pre-agreed by the tenderer and the bidder, and the method for pre-agreing on the order j is:

[0025] The tendering party generates a sequence j candidate file for each bidder, the sequence j candidate file records a number of sequences j, and cyclically reads the sequence j from the candidate file as the sequence of the code intersection.

[0026] Preferably, the mixed code generation program is burned into a portable device or printed on a paper carrier, and the portable device or paper carrier is sent to the tenderer.

[0027] Preferably, the method further includes verifying the digital fingerprint of the data file, and the method of verifying the digital fingerprint of the data file includes:

[0028] Use hash functions to extract digital fingerprints of data files;

[0029] Send the digital fingerprint to the tenderer through a preset channel;

[0030] After the tendering party restores the data file, it extracts the digital fingerprint of the restored data file and compares it with the received digital fingerprint. If the two are consistent, the verification is successful and the data file is accepted. Otherwise, if the two are inconsistent, the verification fails and the data file is discarded.

[0031] Preferably, the method for generating a continuous verification code comprises the following steps:

[0032] The equipment sending the bidding documents and the equipment receiving the bidding documents are recorded as the sender and the receiver respectively;

[0033] The sender and the receiver agree on a verification code generation function R(x) and an integer B, and the value range of the verification code generation function R(x) covers the interval [0, B];

[0034] The verification code is an integer, and the verification code belongs to the interval [0, B]. The initial value of the verification code V is V0;

[0035] Periodically calculate the horizontal coordinate vx of the first intersection point between the straight line y=V and the verification code generating function R(x) on the positive half axis of the x-axis;

[0036] Let the verification code V = floor(vx*10^s) mod B, where the function floor() is a floor function and s is a preset positive integer.

[0037] Preferably, the verification code generating function R(x) is a cosine function with a coefficient of B, the verification code V is a 6-bit positive integer, the value of s is 6, and the value of B is 10^6.

[0038] Preferably, when the bidding document package is transmitted in segments, the segmented bidding document package is recorded as a bidding document segment, and the bidding document segment is compressed into a compressed package. The method for compressing the bidding document segment includes:

[0039] Preset several compression algorithms;

[0040] Compress the bidding document segments using several compression algorithms respectively;

[0041] Compare the sizes of the compressed files and select the compressed package with the smallest file size as the compressed package of the bidding document segment to send;

[0042] Several compression algorithms are sorted, and the serial numbers of the compression algorithms corresponding to each bidding document segment constitute a feature sequence, which is sent to the tendering party through a preset channel.

[0043] The beneficial technical effects of the present invention include: 1) multi-factor verification encryption and decryption are performed through a self-destruction program in combination with a hash code, a first secret key, a tenderer identification code, a start code and a hash value of a hash code generation program. If any factor fails to be verified, the self-destruction program will use garbled code to cover the bidding document, effectively improving the security of the bidding document and ensuring the commercial information security of the bidding supplier; 2) a hash code and a position offset are generated by a hash code generation program, and the hash code is added to the bidding document according to the position offset, so that the hash code does not have exclusive characteristics and cannot be cracked by feature screening, thereby improving the security of the bidding document encryption; 3) multiple online and offline verification factors are formed, which can effectively resist abnormal decryption behavior and ensure the security of the bidding document; 4) periodic identity authentication is performed through continuous verification codes, effectively defending against identity hijacking attacks, while having little impact on performance burden; 5) with the help of a dynamic compression algorithm, the compression ratio of the bidding document is improved, which helps to improve the transmission efficiency of the bidding document.

[0044] Other features and advantages of the present invention will be disclosed in detail in the following specific embodiments and drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] The present invention will be further described below in conjunction with the accompanying drawings:

[0046] Figure 1 The present invention is a flowchart of a multi-factor encryption method for bidding documents according to an embodiment of the present invention.

[0047] Figure 2 The figure is a flow chart of a method for generating a promiscuous code according to an embodiment of the present invention.

[0048] Figure 3 The figure is a flow chart of a method for generating a mixed code sequence according to an embodiment of the present invention.

[0049] Figure 4 The figure is a flow chart of a method for verifying a digital fingerprint of a data file according to an embodiment of the present invention.

[0050] Figure 5 The present invention is a flowchart of a method for generating continuous verification codes according to an embodiment of the present invention.

[0051] Figure 6 The present invention is a flowchart of a method for compressing bidding document segments according to an embodiment of the present invention. DETAILED DESCRIPTION

[0052] The technical solutions of the embodiments of the present invention are explained and described below in conjunction with the drawings of the embodiments of the present invention, but the following embodiments are only preferred embodiments of the present invention, not all. Based on the embodiments in the implementation mode, other embodiments obtained by those skilled in the art without creative work are all within the protection scope of the present invention.

[0053] In the following description, terms such as "inside", "outside", "up", "down", "left", "right", etc. that indicate directions or positional relationships are only used to facilitate the description of the embodiments and simplify the description, and do not indicate or imply that the referred device or element must have a specific direction, be constructed and operate in a specific direction. Therefore, it should not be understood as a limitation of the present invention.

[0054] Before introducing the technical solution of this embodiment, the application scenario of this embodiment is described first. Bidding is an industry-oriented means of recruiting partners that can fully and comprehensively induce healthy competition among suppliers. Through a comprehensive comparison of product quality, price, delivery period and related services among multiple suppliers participating in the bidding, the best suppliers are selected to become bidding business partners, which effectively promotes high-quality suppliers to establish business cooperation with the tendering party and promotes economic development. At the same time, during the bidding process, suppliers not only need to determine the price calculation method, but also need to make detailed research and planning on the implementation plan of the project, which is also conducive to the smooth implementation of the project. It is precisely because of the beneficial role of bidding that it has gradually been widely promoted and applied.

[0055] During the bidding process, suppliers need to prepare detailed bid documents. Bidding documents generally include three parts: economic, technical and commercial. The economic part mainly refers to the bid quotation, and the technical part mainly includes the construction organization business bid, including enterprise qualifications, business licenses, relevant award certificates and relevant documents proving the company's performance. It is also necessary to include drawing design instructions, technical solutions, construction schedules and personnel, and the qualification certificates of relevant personnel may need to be provided according to the requirements of the tenderer. For example, construction projects need to include construction deployment, construction site layout drawings, construction plans, construction technical measures, construction organization and construction schedule plans, including the division of construction sections, main processes and labor arrangements, as well as the composition of construction management organizations or project management departments, the equipment of construction machinery and equipment, quality assurance measures, construction schedule assurance measures, safe construction measures and civilized construction measures.

[0056] It can be seen that the bid documents produced during the bidding process will involve a large amount of commercial data of the bidder and the tenderer, including commercial secrets that need to be strictly kept confidential. For example, the construction plan in the bid document, once the bid document is finally awarded, the tenderer will adopt the construction plan and related personnel configuration. Therefore, in the bidding process, strict and reliable confidentiality measures need to be taken for the contents of the bid documents of all suppliers. Currently, more and more biddings are conducted online. Online bidding means that the entire process of bidding announcement, qualification review, bid opening, bid evaluation, and bid winning announcement is conducted online. Online bidding can not only effectively reduce various transaction costs of market entities, but also improve the quality and efficiency of bidding supervision services, and curb illegal and irregular behaviors such as bid rigging, fraud, etc. In the online bidding process, there are mainly two leakage risks: the theft of bidding documents and the hijacking of identities during transmission. Once the bidding documents are leaked, it is difficult for ordinary encryption technology to ensure that the bidding documents are not cracked. Although the two-factor encryption algorithm and attribute-based encryption algorithm that have emerged recently can improve the security of encryption and decryption, there is currently a lack of encryption solutions that can apply the two-factor encryption algorithm and attribute-based encryption algorithm to offline bidding documents. During the bidding process, the bidding documents are usually large, and the security of relying solely on login token verification is low. Therefore, it is necessary to increase the number of identity authentications during the bidding document upload process to ensure security. However, frequent acquisition of verification information and information verification processes will cause greater additional performance pressure.

[0057] This embodiment provides a multi-factor encryption method that can significantly improve the security and reliability of bid document encryption. Through multiple factor verification, if any factor verification fails, it is determined to be an abnormal decryption operation, and the built-in self-destruction program will overwrite the bid document with garbled code. A multi-factor encryption method for bid documents based on master-slave data alignment, please refer to the attached Figure 1 , including the following steps:

[0058] Step A01) The bidding documents are packaged into a data file, a digital fingerprint of the data file is extracted, and a number of hash codes are added to the data file. The hash codes are generated by inputting the initial code into a hash code generation program;

[0059] Step A02) The data file after adding the hash code is encrypted using the first secret key and recorded as a ciphertext file;

[0060] Step A03) Add a self-destruction program, package the self-destruction program and the ciphertext file into a compressed package, recorded as a bidding file package, and the self-destruction program records the first secret key, the digital fingerprint of the data file, the bidding party identification code, the initial code and the hash value of the mixed code generation program;

[0061] Step A04) receiving the login request from the bidder, establishing a communication connection with the bidder, and agreeing on a continuous verification code with the bidder;

[0062] Step A05) receiving the bidding document package transmitted by the bidder in segments, and periodically verifying the continuous verification code sent by the bidder together with the bidding document package;

[0063] Step A06) If the continuous verification code is verified, the bidding document package continues to be received; if the continuous verification code is not verified, the bidding document package is stopped;

[0064] Step A07) Receive the first secret key, data file digital fingerprint and initial code sent by the bidder, and receive the mixed code generation program provided by the bidder offline;

[0065] Step A08) The tenderer inputs the first secret key, the digital fingerprint of the data file, the tenderer identification code, the initial code and the hash value of the mixed code generation program into the self-destruction program. If the first secret key, the tenderer identification code, the initial code and the hash value of the mixed code generation program are consistent, the self-destruction program decrypts the ciphertext file, removes the mixed code, and restores the bidding document. On the contrary, if the first secret key, the tenderer identification code, the initial code or the hash value of the mixed code generation program do not match, the self-destruction program generates garbled code to overwrite the ciphertext file.

[0066] Master-slave data alignment specifically includes: after the supplier prepares the bid locally, a data file is generated. At this time, the data file is the master data, and the hash value of the data file is extracted, that is, the digital fingerprint of the data file. The data file received by the tenderer is the slave data. The digital fingerprint of the slave data is extracted and compared with the digital fingerprint of the master data. If they are consistent, it means that the data file received by the tenderer is original and complete. After the supplier's local bid is completed, in order to prevent interception and tampering during the upload process, and partial reception of the server causing incomplete files, before the file is transmitted, the digital fingerprint of the data file is generated by an algorithm, and this information is synchronously written to the file itself to form a unique signature information. After the server receives it, the digital fingerprint of the data file is verified, and the consistency is verified to ensure that the data file is original and complete, thereby ensuring that the bidding document is original and complete.

[0067] Two-factor encryption technology in the existing technology, namely two-factor authentication technology (2FA, two-factor authentication), refers to a method of authenticating users by combining a password and a physical object, such as a credit card, SMS mobile phone, token or biometric marker such as a fingerprint. This method has been adopted by enterprises, especially in remote access, but its application in other fields is still limited. The promotion of two-factor authentication is mainly hindered by the need to use additional tools and the burden it brings to IT and technical support personnel.

[0068] The TOTP technology that has emerged in this field effectively solves the obstacles of additional tools such as USB shield. The full name of TOTP is "Time-based One-time Password". TOTP technology includes the following steps: Step 1. After the user turns on two-factor authentication, the server generates a key. Step 2: The server prompts the user to scan the QR code and save the key to the user's mobile phone. Step 3. When the user logs in, the mobile client uses this key and the current timestamp to generate a hash, and the validity period defaults to 30 seconds. The user submits this hash to the server within the validity period. Step 4. The server also uses the key and the current timestamp to generate a hash and compares it with the hash submitted by the user. As long as the two are inconsistent, the login is rejected. TOTP technology combines the verification information of the two dimensions of the user's login password and the verification code, which improves the security of the user's login. However, the decryption verification of the bidding document is an offline verification. Due to the lack of interaction between the server and the user, there are technical difficulties in using 2FA technology.

[0069] After the bidding document is added with a promiscuous code and encrypted, the present embodiment is bound to a self-destruction program, which completes the verification of the first secret key, the tenderer identification code, the initial code, and the hash value of the promiscuous code generation program, thereby realizing a four-factor decryption verification. If any of the four factors does not match, the verification will fail and will be judged as illegal decryption, and the self-destruction program will overwrite the bidding document with garbled code. The first secret key and initial code are generally published online, the tenderer identification code is determined by the tender document, and the promiscuous code generation program is provided to the tenderer offline or through other channels. Therefore, only the tenderer can correctly concentrate the factors obtained through these channels to ensure that the bidding document is decrypted by the tenderer, thereby ensuring the security of the bidding document.

[0070] Please see attached Figure 2 , the method of generating a mixed code by a mixed code generation program includes:

[0071] Step B01) generating a polynomial function F(x), the degree of the polynomial function F(x) is n;

[0072] Step B02) Generate a code line y=G*x+c, where c is a constant and G is equal to the initial code;

[0073] Step B03) Calculate the intersection point of the code line and the polynomial function F(x) closest to the origin, record it as the code intersection point, remove the decimal point and take the absolute value of the first m significant digits of the horizontal coordinate of the code intersection point as the mixed code, remove the decimal point and take the absolute value of the first k significant digits of the vertical coordinate of the code intersection point as the mixed code position offset;

[0074] Step B04) Let G equal the hash code, and execute the previous step again to continuously generate the hash code.

[0075] For example, the polynomial function F(x) generated by the mixed code generation program is 12*x^3-20*x^2+15*x+6, and the degree n of the polynomial function F(x) is 3. Take the code line y=G*x+3, and the initial value of G is 40, that is, the starting code is 40. G is represented as a numerical value of a preset length. When the preset length is 4, the initial value of G is represented as 0040. 0040 can be directly added to the bidding document as a mixed code, or 0040 can be converted to ASCII code and inserted into the bidding document as a character. Convert every two digits of G into 1 ASCII character. When the value of G exceeds the decimal range corresponding to the displayable ASCII code, you can find the remainder of 126. If the remainder is less than 32, add 32 to the remainder. 0040 is converted to the character " (". To further increase the obfuscation of the hash code, the ASCII code range can be limited to letters and numbers. That is, G modulo 43 plus 48. For example, the first two digits of 0040 will be converted to the character "0", and the last two digits will be converted to "X", that is, 0040 will be converted to the character "0X".

[0076] On the other hand, this embodiment also provides a solution to further improve the obfuscation of the promiscuous code. That is, a promiscuous code dictionary is prepared, which includes a number of characters or words intercepted from the bidding documents, and the intercepted characters or words are sorted and the total number is counted. The total number is modulo the value of G, and the characters or words in the corresponding order are the promiscuous code.

[0077] The polynomial function F(x) and the code line y=40*x+3 have three intersection points, namely (2.469345,101.7738), (-0.9135062, -33.540248) and (0.1108272, 7.433088). The intersection point closest to the origin is (0.1108272, 7.433088), which is the code intersection point. Let m and k be 4 and 6 respectively. The first 4 significant digits of the horizontal coordinate of the code intersection point are 1108, that is, the mixed code G=1108. The first 6 significant digits of the vertical coordinate of the code intersection point are 7.43308. After removing the decimal point, the mixed code position offset is 743308, that is, after shifting 743308 digits backward, 1108 is inserted into the bidding document. Since the offset of 743308 bits will disrupt the byte division, directly reading the bidding document will result in garbled characters, thus achieving a one-time encryption of the bidding document.

[0078] Then the coding line becomes y=1108*x+3, and the intersection of the polynomial function F(x) and the coding line is calculated again, and the intersection point closest to the origin is (0.002744602, 6.041019), that is, the coding point is (0.002744602,6.041019), and the mixed code G=2744 is obtained respectively, and the mixed code position offset is 604101. Repeating this process, the mixed code and offset will be continuously obtained until the end of the bidding document is reached, and the addition of the mixed code of the bidding document is completed.

[0079] Set the constant G0, G0 is a positive integer, and after the slope G of the coding line is assigned, let G = G mod G0, and then calculate the intersection point of the coding line and the polynomial function F(x) closest to the origin. To avoid the slope of the coding line being too large and almost parallel to the y-axis, resulting in the intersection point with the polynomial function always being near a region, causing the mixed code to lose randomness, the maximum slope of the coding line is limited.

[0080] This embodiment also provides an alternative method for generating a promiscuous code. In this promiscuous code generation method, the promiscuous code is associated with an order. Figure 3 , comprising the following steps: Step C01) when G is equal to a constant G0, there are more than Q intersection points between the code line and the polynomial function F(x);

[0081] Step C02) After the slope G of the coding line is assigned, calculate the Q intersection points of the coding line and the polynomial function F(x) on the positive half axis of the x-axis that are closest to the origin;

[0082] Step C03) Arrange the Q intersection points in ascending order according to the x coordinates, select any one of the Q intersection points as a code-taking intersection point, and record the order j of the code-taking intersection point;

[0083] Step C04) The order j of all the coded intersection points constitutes a sequence file, and the sequence file is sent to the tenderer through a preset path.

[0084] The order j of all code-taking intersection points is agreed upon in advance by the tendering party and the bidders. The method for agreeing upon the order j in advance is as follows: the tendering party generates an order j candidate file for each bidder, the order j candidate file records several orders j, and the order j is cyclically read from the candidate file as the order of the code-taking intersection points.

[0085] The polynomial function F(x) and the code line y=40*x+3 have three intersection points, namely (2.469345,101.7738), (-0.9135062, -33.540248) and (0.1108272, 7.433088). In the above scheme, the intersection point closest to the origin is directly taken as the code intersection point. In this alternative scheme, one of the three intersection points is selected and the order of selection is recorded. For example, (-0.9135062, -33.540248) is selected as the code intersection point, and the order j=2 is recorded, the corresponding mixed code G=9135, and the mixed code position offset is 335402. The order of all code points constitutes a sequence file, which is provided to the tenderer through a preset channel. If the sequence file is missing, the mixed code cannot be removed normally, resulting in failure of decryption of the bidding document.

[0086] In this embodiment, the mixed code generation program is burned into a portable device or printed on a paper carrier, and the portable device or paper carrier is sent to the tenderer. The offline method can provide more dimensional security guarantees.

[0087] This embodiment also provides a digital fingerprint for verifying the data file. Figure 4 , the method for generating and verifying the digital fingerprint of a data file includes:

[0088] Step D01) using a hash function to extract a digital fingerprint of the data file;

[0089] Step D02) sending the digital fingerprint to the tenderer through a preset channel;

[0090] Step D03) After the bidder recovers the data file, it extracts the digital fingerprint of the recovered data file and compares it with the received digital fingerprint. If the two are consistent, the verification is passed and the data file is accepted. Otherwise, if the two are inconsistent, the verification fails and the data file is discarded. In this embodiment, the hash function used is SM3 or SHA256 to obtain the corresponding digital fingerprint.

[0091] Please see attached Figure 5 , the method for generating a continuous verification code comprises the following steps:

[0092] Step E01) The device sending the bidding document and the device receiving the bidding document are respectively recorded as the sender and the receiver;

[0093] Step E02) The sender and the receiver agree on a verification code generation function R(x) and an integer B, and the value range of the verification code generation function R(x) covers the interval [0, B];

[0094] Step E03) the verification code is an integer, the verification code belongs to the interval [0, B], and the initial value V0 of the verification code V is agreed upon;

[0095] Step E04) Periodically calculate the horizontal coordinate vx of the first intersection point between the straight line y=V and the verification code generation function R(x) on the positive half axis of the x-axis;

[0096] Step E05) Let the verification code V = floor(vx*10^s) mod B, where the function floor() is a floor rounding function, and s is a preset positive integer.

[0097] The verification code generation function R(x) is a cosine function, the verification code V is a 3-digit positive integer, the value of s is 3, and the value of B is 10^3. Get R(x)=1000*cos(x), the initial value V0=060, the straight line is y=60, and the first intersection of the straight line y=60 and the function R(x) on the positive half axis of the x-axis is (1.5107602,60), that is, vx=1.5107602. Calculate and get the verification code V=floor(vx*10^s) mod B=floor(1.5107602*10^3) ​​mod 1000=510, that is, the next verification code is 510. Then calculate the verification code of the next cycle. The first intersection point of the straight line y=510 and the function R(x)=1000*cos(x) on the positive half axis of the x-axis is (1.0356115,510), and the corresponding verification code is 035. Repeating this cycle, you can continuously obtain the verification code required for continuous verification.

[0098] More advantageously, the verification code generation function R(x) is a cosine function with coefficient B, the verification code V is a 6-digit positive integer, the value of s is 6, and the value of B is 10^6. The 6-digit verification code can provide higher security. The generation process of the 6-digit verification code is the same as the generation process of the 3-digit verification code, and will not be repeated here.

[0099] When the bidding document package is transmitted in segments, the segmented bidding document package will be recorded as bidding document segment, and the bidding document segment will be compressed into a compressed package. Please refer to the attached Figure 6 , methods for compressing bidding document segments include:

[0100] Step F01) preset several compression algorithms;

[0101] Step F02) using several compression algorithms to compress the bidding document segments respectively;

[0102] Step F03) Compare the sizes of the compressed files, and select the compressed package with the smallest file size as the compressed package of the bidding document segment to send;

[0103] Step F04) Sort several compression algorithms, and the serial number of the compression algorithm corresponding to each bidding document segment constitutes a feature sequence, which is sent to the tenderer through a preset path. For example, zip, rar, lzss, lzma and lz77 are preset, and these compression algorithms compress the bidding document segment respectively, compare the compressed file sizes, and select the compressed package with the smallest file size as the compressed package of the bidding document segment for sending. At the same time, the serial number of the corresponding compression algorithm in the preset sorting is sent. This can maximize the reduction of the size of the bidding document segment and help speed up the transmission of the bidding document.

[0104] The beneficial technical effects of this embodiment include: 1) multi-factor authentication encryption and decryption are performed through a self-destruction program in combination with a hash code, a first secret key, a bidder identification code, a start code and a hash value of a hash code generation program. If any factor fails to be verified, the self-destruction program will use garbled code to overwrite the bidding document, effectively improving the security of the bidding document and ensuring the commercial information security of the bidding supplier; 2) a hash code and a position offset are generated by a hash code generation program, and the hash code is added to the bidding document according to the position offset, so that the hash code does not have exclusive characteristics and cannot be cracked by feature screening, thereby improving the security of the bidding document encryption; 3) multiple online and offline verification factors are formed, which can effectively resist abnormal decryption behavior and ensure the security of the bidding document; 4) periodic identity authentication is performed through continuous verification codes to effectively defend against identity hijacking attacks while having little impact on performance burden; 5) with the help of a dynamic compression algorithm, the compression ratio of the bidding document is improved, which helps to improve the transmission efficiency of the bidding document.

[0105] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Those skilled in the art should understand that the present invention includes but is not limited to the contents described in the drawings and the above specific embodiments. Any modification that does not deviate from the functional and structural principles of the present invention will be included in the scope of the claims.

Claims

1. A multi-factor encryption method for bidding documents based on master-slave data alignment, characterized in that: The following steps are involved: The bidding documents are packaged into data files, the digital fingerprint of the data files is extracted, and a number of hash codes are added to the data files. The hash codes are generated by inputting the initial code into the hash code generation program. The data file after adding the hash code is encrypted using the first secret key and recorded as a ciphertext file; Add a self-destruction program, and package the self-destruction program and the ciphertext file into a compressed package, which is recorded as a bidding document package. The self-destruction program records the first secret key, the digital fingerprint of the data file, the bidding party identification code, the initial code, and the hash value of the mixed code generation program; Receive the login request from the bidder, establish a communication connection with the bidder, and agree on a continuous verification code with the bidder; Receive the bidding document packages transmitted by the bidder in segments and periodically verify the continuous verification codes sent by the bidder together with the bidding document packages; If the continuous verification code is verified, the bidding document package will continue to be received. If the continuous verification code is not verified, the bidding document package will stop being received. Receive the first secret key, digital fingerprint of the data file and the initial code sent by the bidder, and receive the mixed code generation program provided by the bidder; The tenderer inputs the first secret key, the digital fingerprint of the data file, the tenderer identification code, the starting code and the hash value of the mixed code generation program into the self-destruction program. If the first secret key, the tenderer identification code, the starting code and the hash value of the mixed code generation program all match, the self-destruction program decrypts the ciphertext file, removes the mixed code, and restores the bidding document. Conversely, if the first secret key, the tenderer identification code, the starting code or the hash value of the mixed code generation program do not match, the self-destruction program generates garbled code to overwrite the ciphertext file.

2. According to claim 1, a bidding document multi-factor encryption method based on master-slave data alignment is characterized in that: The method of generating a mixed code by a mixed code generation program includes: Generate a polynomial function F(x), the degree of the polynomial function F(x) is n; Generate a code line y=G*x+c, where c is a constant and G is equal to the starting code; Calculate the intersection point of the code line and the polynomial function F(x) closest to the origin, record it as the code intersection point, remove the decimal point and take the absolute value of the first m significant digits of the horizontal coordinate of the code intersection point as the mixed code, remove the decimal point and take the absolute value of the first k significant digits of the vertical coordinate of the code intersection point as the mixed code position offset; Let G equal the hash code, and execute the previous step again to continuously generate the hash code.

3. The multi-factor encryption method for bidding documents based on master-slave data alignment according to claim 2 is characterized in that: Set the constant G0, G0 is a positive integer, after the slope G of the coding line is assigned, let G = G mod G0, and then calculate the intersection point of the coding line and the polynomial function F(x) closest to the origin.

4. The method for multi-factor encryption of bidding documents based on master-slave data alignment according to claim 3 is characterized in that: When G is equal to the constant G0, there are more than Q intersection points between the code line and the polynomial function F(x); After the slope G of the coding line is assigned, the Q intersection points of the coding line and the polynomial function F(x) on the positive half axis of the x-axis closest to the origin are calculated; Arrange the Q intersection points in ascending order according to the x-coordinates, select any one of the Q intersection points as the code-taking intersection point, and record the order j of the code-taking intersection point; The order j of all the code-taking intersections constitutes a sequence file, and the sequence file is sent to the tenderer through a preset channel.

5. The method for multi-factor encryption of bidding documents based on master-slave data alignment according to claim 4 is characterized in that: The order j of all code intersection points shall be agreed upon in advance by the tenderer and the bidder. The method for agreeing on the order j in advance is: The tendering party generates a sequence j candidate file for each bidder. The sequence j candidate file records a number of sequences j and cyclically reads the sequence j from the candidate file as the sequence of the code intersection.

6. A bidding document multi-factor encryption method based on master-slave data alignment according to any one of claims 1 to 4, characterized in that: The mixed code generation program is burned into a portable device or printed on a paper carrier, and the portable device or paper carrier is sent to the tenderer.

7. A bidding document multi-factor encryption method based on master-slave data alignment according to any one of claims 1 to 4, characterized in that: The method of generating and verifying the digital fingerprint of a data file includes: Use hash functions to extract digital fingerprints of data files; Send the digital fingerprint to the tenderer through a preset channel; After the tendering party restores the data file, it extracts the digital fingerprint of the restored data file and compares it with the received digital fingerprint. If the two are consistent, the verification is successful and the data file is accepted. Otherwise, if the two are inconsistent, the verification fails and the data file is discarded.

8. A bidding document multi-factor encryption method based on master-slave data alignment according to any one of claims 1 to 4, characterized in that: The method for generating a continuous verification code comprises the following steps: The equipment sending the bidding documents and the equipment receiving the bidding documents are recorded as the sender and the receiver respectively; The sender and the receiver agree on a verification code generation function R(x) and an integer B, and the value range of the verification code generation function R(x) covers the interval [0, B]; The verification code is an integer, and the verification code belongs to the interval [0, B]. The initial value of the verification code V is V0; Periodically calculate the horizontal coordinate vx of the first intersection point between the straight line y=V and the verification code generating function R(x) on the positive half axis of the x-axis; Let the verification code V = floor(vx*10^s) mod B, where the function floor() is a floor function and s is a preset positive integer.

9. A bidding document multi-factor encryption method based on master-slave data alignment according to claim 8, characterized in that: The verification code generation function R(x) is a cosine function with a coefficient of B, the verification code V is a 6-bit positive integer, the value of s is 6, and the value of B is 10^6.

10. A bidding document multi-factor encryption method based on master-slave data alignment according to any one of claims 1 to 4, characterized in that: When the bidding document package is transmitted in segments, the segmented bidding document package is recorded as a bidding document segment, and the bidding document segment is compressed into a compressed package. The method of compressing the bidding document segment includes: Preset several compression algorithms; Compress the bidding document segments using several compression algorithms respectively; Compare the sizes of the compressed files, and select the compressed package with the smallest file size as the compressed package of the bidding document segment to send; Several compression algorithms are sorted, and the serial numbers of the compression algorithms corresponding to each bidding document segment constitute a feature sequence, which is sent to the tendering party through a preset channel.

Citation Information

Patent Citations

  • Bidding document encryption machine

    CN210691318U

  • Multi-factor identity authentication method and system

    CN104660605A

  • Device access authentication system and method based on block chain

    CN112311537A