Student examination data processing method based on examination information system
By using an equivalence list encryption method based on 16 four-bit binary numbers, the security and tamper-proof issues of existing encryption methods in examination information systems are solved, achieving high security and anti-cracking capabilities for answer sheet image data.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-01
- Publication Date
- 2026-03-31
AI Technical Summary
In existing examination information systems, the encryption methods for student examination data rely on a single key or a fixed encryption algorithm, which has the problems of weak security, easy cracking, and inability to effectively prevent tampering.
It adopts an equidistant list encryption method based on 16 four-bit binary numbers, and generates a dynamic ciphertext sequence through scanning, digitization description, character block matching and left/right end truncation determination, thereby improving the anti-cracking and anti-tampering capabilities.
It achieves high security and anti-hacking capabilities for answer sheet image data during transmission, ensuring that tampering renders the data invalid, thus improving data integrity and reliability.
Smart Images

Figure CN121239498B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data protection technology, specifically to a method for processing student examination data based on an examination information system. Background Technology
[0002] Against the backdrop of the rapid development of educational informatization, the processing of student examination data based on examination information systems has become a core part of the organization and management of various examinations. Among them, the secure transmission and storage of key examination data such as answer sheet images is particularly important. Currently, the encryption processing of student answer sheet data in examination information systems mostly relies on a single key or a fixed encryption algorithm. For example, a preset string key is used to uniformly encrypt the binary data of the entire answer sheet image, or ciphertext is generated through fixed logical rules.
[0003] This approach has significant security limitations: Firstly, once a single key system is leaked or cracked, all encrypted data will face the risk of loss, and fixed encryption logic is easily reverse-engineered by attackers through pattern analysis, making it relatively weak in resistance to cracking. Secondly, the ciphertext sequences generated by existing encryption methods often have fixed lengths or regular structures, lacking dynamic change characteristics. Attackers can increase the probability of cracking by statistically analyzing ciphertext patterns. Furthermore, for possible tampering during data transmission, existing technologies mostly rely on comparing the decrypted content to detect anomalies, making it difficult to directly identify tampering during the decryption stage. In other words, it cannot achieve proactive defense of "tampering is invalidation," which may lead to the misprocessing of tampered erroneous data, seriously threatening the integrity and reliability of examination data.
[0004] To address the above problems, this invention proposes a solution. Summary of the Invention
[0005] The purpose of this invention is to provide a method for processing student examination data based on an examination information system, in order to solve the problems mentioned in the background art.
[0006] This invention provides a method for processing student examination data based on an examination information system, comprising the following steps:
[0007] Step 1: The scanning device scans the answer sheets of all candidates for the target test paper, obtains the answer sheet image of the corresponding candidate, and transmits the converted answer sheet images of all candidates to the encryption processing module;
[0008] Step 2: After receiving the transmitted answer sheet images of all candidates, the encryption processing module extracts 16 four-bit binary numbers contained in the preset base text in order from left to right. Each extracted binary number is used as a positional parameter, and its digitization is described to determine the positional list of the positional parameters, thus obtaining a positional list of 16 positional parameters.
[0009] Step 3: After obtaining the list of 16 equivalence parameters, perform an encryption operation on the answer sheet image of any one of the received candidates to obtain an encrypted document of the corresponding candidate's answer sheet image, and transmit the encrypted document to the cloud examination processing platform;
[0010] Step 4: After receiving an encrypted document of a candidate's answer sheet image, the cloud-based examination processing platform reverses the encryption operation to restore the candidate's answer sheet image and stores the answer sheet image.
[0011] Furthermore, in step one, complete image information of both sides of the test paper answer sheet is captured during the scanning process.
[0012] Furthermore, in step two, the binary text is created and uploaded by the administrator. During the creation of the binary text, the administrator enters four binary numbers from 0 to 15 into the binary text in sequence.
[0013] Furthermore, in step two, the steps for determining the list of all equal parameters are as follows:
[0014] S11: Read each character that constitutes the equiposition parameter in order from left to right, and divide the consecutively occurring identical arrays into 1 independent group;
[0015] S12: Each independent group obtained by dividing the equipotential parameters is converted into a string according to the format of the number of characters constituting the independent group + the number itself to obtain the translated string of each independent group;
[0016] S13: According to the order in which each independent group is divided, all the independent groups obtained by the equipotential parameters are concatenated to obtain the equipotential sequence of the equipotential parameters;
[0017] S14: Specify a cutting step size of 2 characters, and cut the positional sequence of the positional parameter from left to right to obtain several positional codes. After each cut, add the positional code to an empty list. All subsequent positional codes obtained based on the positional sequence are added to the list. After the cutting is completed, the positional list of the positional parameter is obtained.
[0018] Furthermore, in step two, when the four-bit binary number based on the number 0 is used as the equivalence parameter, the equivalence code in its equivalence list is 20, 20; when the four-bit binary number based on the number 15 is used as the equivalence parameter, the equivalence code in its equivalence list is 21, 21.
[0019] Furthermore, in step three, an encryption operation is performed on the answer sheet image of any candidate to obtain the content of the encrypted document of the answer sheet image as follows:
[0020] S21: Convert the answer sheet image into a binary string using an image binary converter, wherein the image binary converter can convert the answer sheet image into a string in binary form;
[0021] S22: Cut the binary string from left to right with a cutting step of 4 characters to obtain several groups of character blocks; number all the obtained groups of character blocks from left to right according to their positions in the binary string before cutting, with the numbering starting from 1 and continuing sequentially.
[0022] S23: In ascending order of number, first obtain the equivalence list that matches the character block numbered 1. Here, matching refers to the equivalence parameter that is consistent with the character block. Obtain the equivalence codes located at the leftmost and rightmost ends of the equivalence list from left to right, and mark them as B1 and B2 respectively.
[0023] S24: Left-end truncation determination of the character block based on the equivalence code B1: The equivalence code B1 is compared with the strings 00, 01, 10, and 11 respectively. If the equivalence code B1 is inconsistent with any of the strings 00, 01, 10, and 11, it is determined that the character block needs to be truncated on the left. At this time, a ciphertext sequence is generated based on the equivalence code B1 and the equivalence code B2, and number 1 is selected as the node number of the ciphertext sequence.
[0024] If it is determined that the character block does not need to be truncated on the left, then the character block is further truncated on the right based on the equivalence code B2: the equivalence code B2 is compared with the strings 00, 01, 10, and 11 respectively. If the equivalence code B2 does not match any of the strings 00, 01, 10, and 11, then the character block needs to be truncated on the right. At this time, a ciphertext sequence is generated based on the equivalence code B2 and the equivalence code B1, and the number 1 is selected as the node number of the ciphertext sequence. If it is determined that the character block does not need to be truncated on the right, then several consecutively numbered character blocks are selected starting from the character block with the number 1 to generate a ciphertext sequence and a node number is selected for the ciphertext sequence.
[0025] S26: Generate several ciphertext sequences in sequence according to S25. Any ciphertext sequence generated starts from the character block corresponding to the node number + 1 of the previously generated ciphertext sequence.
[0026] S27: Create the encrypted text of the answer sheet image, and fill in all the generated encrypted sequences into the encrypted text in the order they were generated to obtain the encrypted document of the answer sheet image. In the encrypted document, the two encrypted sequences filled in sequentially are separated by a comma.
[0027] Furthermore, in S24, it is determined that the character block needs to be truncated at the left end. Based on the positional code B1 and positional code B2, a ciphertext sequence is generated as follows:
[0028] S31: Convert the two characters that constitute the equiposition code B1 into two-bit binary numbers respectively, and concatenate the two-bit binary numbers to obtain the conversion code of the equiposition code B1;
[0029] S32: In the 16 pairs of pairs, obtain the pair of all pairs whose leftmost pair code matches the pair code B2. Randomly select one pair of pairs from all the obtained pair of pairs as the conversion code of the pair code B2.
[0030] S33: Concatenate the conversion codes of equivalence codes B1 and B2 in the order of equivalence codes B1 and B2, and add the character "1" to the rightmost end of the concatenated data to obtain a ciphertext sequence. The concatenated character "1" is the marker character for left-end truncation, which is used to determine whether the left end truncation is determined by whether the rightmost character of the ciphertext sequence is 1 during decryption.
[0031] Furthermore, in S24, it is determined that the character block needs to be truncated at the right end. Based on the positional code B2 and the positional code B1, a ciphertext sequence is generated as follows:
[0032] S41: In the 16 pairs of pairs, obtain the pair of all pairs whose leftmost pair code matches the pair code B1. Randomly select one pair of pairs from all the obtained pair of pairs as the conversion code of the pair code B1.
[0033] S42: Convert the two characters that make up the equiposition code B2 into two-bit binary numbers respectively, and concatenate the two-bit binary numbers to obtain the conversion code of equiposition code B2;
[0034] S43: Concatenate the conversion codes of equivalence codes B1 and B2 in the order of equivalence codes B1 and B2, and add the character "0" to the rightmost end of the concatenated data to obtain a ciphertext sequence. The concatenated character "0" is the marker character for right-end truncation, which is used to determine whether the right-end truncation is determined by whether the rightmost character of the ciphertext sequence is 0 during decryption.
[0035] Furthermore, in S24, if it is determined that the character block does not need to be truncated at the right end, then starting from the character block numbered 1, several consecutively numbered character blocks are selected to generate a ciphertext sequence, and the content of selecting node numbers for the ciphertext sequence is as follows:
[0036] The equivalence codes B1 and B2 are concatenated in the order of B1 and B2, and the concatenated data is used as the conversion code of the character block numbered 1.
[0037] Continue to obtain the leftmost and rightmost digit codes in the digit list that match the character block numbered 2, in the order of 2, 3, ..., a, and mark them as C1 and C2 respectively;
[0038] According to S24, the left-end truncation determination is performed on the character block numbered 2 based on the equiposition code C1. If the determination requires left-end truncation, then the conversion codes C1 and C2 are generated according to S31 to S32. After concatenating the conversion code of the character block numbered 1 with the conversion codes of C1 and C2, the character "1" is concatenated at the rightmost end to obtain a ciphertext sequence. At this time, the node number of the ciphertext sequence is selected as 2.
[0039] If it is determined that the character block does not need to be truncated on the left, then the character block is further determined to be truncated on the right based on the equivalence code C2. If it is determined that the right side needs to be truncated, then the conversion codes of C1 and C2 are generated according to S41 to S42. Similarly, the conversion code of the character block numbered 1 is concatenated with the conversion codes of C1 and C2, and the character "0" is concatenated at the rightmost end to obtain the ciphertext sequence. The node number is still selected as 2. If it is determined that the right side does not need to be truncated, then the leftmost and rightmost equivalence codes in the equivalence list that match the next numbered character block are obtained in sequence and the above determination process is repeated until the equivalence code of a certain character block is determined to need to be truncated on the left or right, where a is the total number of character blocks obtained by cutting the binary string.
[0040] Compared with existing technologies, it has the following advantages:
[0041] This invention uses a 16-group equivalence list, based on four-bit binary numbers from 0 to 15 and generated through independent group division, translation, and cutting, as the encryption core. Combined with layered encryption logic involving character block matching and left and right end truncation, it breaks through the security limitations of existing single-key encryption and improves the anti-cracking capability and security of answer sheet image data during transmission.
[0042] In this invention, the encryption of each character block first requires matching the corresponding equivalence list of equivalence parameters. Based on the equivalence codes at the leftmost and rightmost ends of the equivalence list, the equivalence codes are truncated. If truncation at the left or right end is required, when generating the ciphertext sequence, the equivalence parameters corresponding to the equivalence list that match the equivalence codes at the leftmost or rightmost end are randomly selected as components of the ciphertext sequence. This process, on the one hand, gives the length of the ciphertext sequence a dynamic change characteristic, and on the other hand, the random selection mechanism gives the ciphertext sequence a randomness in its composition, greatly improving the anti-cracking ability of the ciphertext sequence. At the same time, if a certain ciphertext sequence is tampered with, it will be unable to be decrypted correctly, achieving an active anti-tampering effect of failure upon tampering. Attached Figure Description
[0043] Figure 1This is a flowchart of the method of the present invention. Detailed Implementation
[0044] 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 embodiments of the present invention, and not all embodiments. 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.
[0045] Please see Figure 1 This application provides a method for processing student examination data based on an examination information system, including the following steps:
[0046] Step 1: The scanning device scans the answer sheets of all candidates answering the target test paper. During the scanning process, the complete image information of the front and back of the answer sheet is captured and converted into the answer sheet image of the corresponding candidate. The converted answer sheet images of all candidates are transmitted to the encryption processing module. The operation of capturing complete image information is completed by a dedicated image scanning device. In this application, the target test paper is a Chinese language test paper.
[0047] Step 2: After receiving the transmitted answer sheet images of all candidates, the encryption processing module reads the contents of the preset binary text, extracts the 16 binary numbers contained in the binary text in order from left to right, uses each extracted binary number as an equivalence parameter, digitizes it, and determines the equivalence list of the equivalence parameters.
[0048] The binary text is created and uploaded by the administrator. During the creation of the binary text, the administrator enters four binary numbers from 0 to 15 into the binary text. The four binary numbers from 0 to 15 are 0000, 0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111.
[0049] In this application, the binary numbers 0, 1, ..., 15 are arranged from left to right in the base text.
[0050] The steps to determine the list of allelements for any given allelement parameter are as follows:
[0051] S11: Read each character that constitutes the equiposition parameter in order from left to right, and divide the consecutively appearing identical arrays into 1 independent group. Here, consecutive means that the characters are uninterrupted. If a character is different from both the previous and next characters, the array is regarded as a consecutive independent group.
[0052] For example, if the equivalence parameter is 1010, the characters that make up 1010 from left to right are 1, 0, 1, 0. Each character is different from the previous and next digits, so it can be divided into 4 independent groups: "1", "0", "1", "0", and each group consists of "one consecutive character".
[0053] The equivalence parameter is 1100, which can be divided into two independent groups of 11 and 00. The equivalence parameter is 0000, which can be divided into one independent group of 0000.
[0054] S12: Each independent group that can be divided by the equiposition parameter is converted into a string according to the format of the number of characters constituting the independent group + the number itself to obtain the translated string of each independent group;
[0055] For example: If the equal position parameter is 1010, then according to step S11, the independent groups are divided into 1,0,1,0 in sequence. Each independent group is converted into a string corresponding to 11,10,11,10 according to the number of characters constituting the independent group plus the format of the array itself. Then, the translated string of independent group 1,0,1,0 is 11,10,11,10.
[0056] S13: According to the order in which each independent group is divided, all the independent groups obtained by the equipotential parameters are concatenated to obtain the equipotential sequence of the equipotential parameters;
[0057] For example, if the equivalence parameter is 1010, the characters read from left to right according to S11 are 1, 0, 1, 0. Based on the reading order, the characters can be divided into independent groups 11, 10, 11, 10. Therefore, the characters are concatenated according to the order of division, and the equivalence sequence of the equivalence parameter 1010 is 11101110.
[0058] S14: Specify a cutting step size of 2 characters, and cut the equiposition sequence of the equiposition parameter from left to right to obtain several equiposition codes. After each equiposition code is obtained, add the equiposition code to an empty list. All equiposition codes obtained by cutting the equiposition sequence in the future are added to the list. After the cutting is completed, the equiposition list of the equiposition parameter is obtained.
[0059] When the four-bit binary number based on the number 0 is used as the equivalence parameter, the elements in its equivalence list are 20, 20; when the four-bit binary number based on the number 15 is used as the equivalence parameter, the elements in its equivalence list are 21, 21.
[0060] Step 3: Based on the 16 rank lists, encrypt each answer sheet image to obtain the encrypted text of the answer sheet image, and transmit the encrypted text to the cloud-based examination processing platform. The steps are as follows:
[0061] S21: Convert the answer sheet image into a binary string using an image binary converter, wherein the image binary converter can convert the answer sheet image into a string in binary form;
[0062] S22: Cut the binary string from left to right with a cutting step of 4 characters to obtain several groups of character blocks; number all the obtained groups of character blocks from left to right according to their positions in the binary string before cutting, with the numbering starting from 1 and continuing sequentially.
[0063] It should be noted that if there are fewer than 4 characters remaining during the cutting process, all remaining characters will be temporarily stored as a reserved array of the answer sheet image.
[0064] S23: In ascending order of number, first obtain the equivalence list that matches the character block numbered 1. Here, matching refers to the equivalence parameter that is consistent with the character block. Obtain the equivalence codes located at the leftmost and rightmost ends of the equivalence list from left to right, and mark them as B1 and B2 respectively.
[0065] It should be noted here that consistency refers to both the content and the order of the characters being consistent;
[0066] S24: Perform a left-end truncation determination on the equivalence code B1. If left-end truncation is required, generate a ciphertext sequence based on equivalence code B1 and equivalence code B2, and select number 1 as the node number of the ciphertext sequence. If left-end truncation is not required, perform a right-end truncation determination on the equivalence code B2. If right-end truncation is required, generate a ciphertext sequence based on equivalence code B2 and equivalence code B1, and select number 1 as the node number of the ciphertext sequence. If right-end truncation is not required, select several consecutively numbered character blocks starting from character block number 1 to generate a ciphertext sequence and obtain the node number of the ciphertext sequence.
[0067] The criteria for determining left-end truncation are as follows:
[0068] The digit code B1 is compared with the strings 00, 01, 10, and 11 respectively. If the digit code B1 does not match any of the strings 00, 01, 10, and 11, then the first sequence needs to be truncated from the left. The steps to generate a ciphertext sequence based on the digit code B1 and the digit code B2 are as follows:
[0069] S31: Convert the two characters that constitute the equiposition code B1 into two-bit binary numbers respectively, and concatenate the two-bit binary numbers to obtain the conversion code of the equiposition code B1. The two-bit binary numbers of the two characters are concatenated in order from left to right according to the position of each character in the equiposition code B1.
[0070] For example, if the position code B1 is 31, the two characters that make up 31 are 3 and 1. 3 is converted to a two-bit binary number 11, and 1 is converted to a two-bit binary number 01. Therefore, the conversion code of position code B1 is 1101.
[0071] S32: In the 16 pairs of pairs, obtain the pair of all pairs whose leftmost pair code matches the pair code B2. Randomly select one pair of pairs from all the obtained pair of pairs as the conversion code of the pair code B2.
[0072] S33: Concatenate the conversion codes of equivalence codes B1 and B2 in the order of equivalence codes B1 and B2, and add the character "1" to the rightmost end of the concatenated data to obtain a ciphertext sequence. The concatenated character "1" is the identifier character for left-end truncation, which is used to determine whether the left end truncation is determined by whether the rightmost character of the ciphertext sequence is 1 during decryption.
[0073] The criteria for determining right-end truncation are as follows:
[0074] The digit code B2 is compared with the strings 00, 01, 10, and 11 respectively. If the digit code B2 does not match any of the strings 00, 01, 10, and 11, then the first sequence needs to be truncated from the right. At this time, a ciphertext sequence is generated by combining the digit code B2 with the digit code B1. The generation steps are as follows:
[0075] S41: In the 16 pairs of pairs, obtain the pair of all pairs whose leftmost pair code matches the pair code B1. Randomly select one pair of pairs from all the obtained pair of pairs as the conversion code of the pair code B1.
[0076] S42: Convert the two characters that constitute the equiposition code B2 into two-bit binary numbers respectively, and concatenate the two-bit binary numbers to obtain the conversion code of the equiposition code B2. The two-bit binary numbers of the two characters are concatenated in order from left to right according to the position of each character in the equiposition code B2.
[0077] S43: Concatenate the conversion codes of equivalence codes B1 and B2 in the order of equivalence codes B1 and B2, and append the character "0" to the rightmost end of the concatenated data to obtain a ciphertext sequence. The appended character "0" is a marker character for right-end truncation, which is used to determine whether the right-end truncation is detected by checking whether the rightmost character of the ciphertext sequence is 0 during decryption.
[0078] The steps for selecting several consecutively numbered character blocks starting from character block number 1 to generate a ciphertext sequence and obtaining the node numbers of the ciphertext sequence are as follows:
[0079] S51: Concatenate the equivalence codes B1 and B2 in the order of equivalence codes B1 and B2, and use the concatenated data as the conversion code of the character block numbered 1.
[0080] S52: Continue to obtain the leftmost and rightmost digit codes in the digit list that match the character block numbered 2, in the order of 2, 3, ..., a, and mark them as C1 and C2 respectively;
[0081] According to S24, the left-end truncation determination is performed on the character block numbered 2 based on the equiposition code C1. If the determination requires left-end truncation, then the conversion codes C1 and C2 are generated according to S31 to S32. After concatenating the conversion code of the character block numbered 1 with the conversion codes of C1 and C2, the character "1" is concatenated at the rightmost end to obtain a ciphertext sequence. At this time, the node number of the ciphertext sequence is selected as 2.
[0082] If it is determined that the character block does not need to be truncated on the left, then the character block is further determined to be truncated on the right based on the equivalence code C2. If it is determined that the right side needs to be truncated, then the conversion codes of C1 and C2 are generated according to S41 to S42. Similarly, the conversion code of the character block numbered 1 is concatenated with the conversion codes of C1 and C2, and the character "0" is concatenated at the rightmost end to obtain the ciphertext sequence. The node number is still selected as 2. If it is determined that the right side does not need to be truncated, then the leftmost and rightmost equivalence codes in the equivalence list that match the next number (i.e., 3) are obtained in sequence and the above determination process is repeated until the equivalence code of a certain character block is determined to need to be truncated on the left or right and a ciphertext sequence is generated. Here, a is the total number of character blocks obtained by cutting the binary string.
[0083] S26: Generate several ciphertext sequences in sequence according to S25. Any ciphertext sequence generated starts from the character block corresponding to the node number + 1 of the previously generated ciphertext sequence.
[0084] S27: Create the encrypted text of the answer sheet image, and fill in all the generated encrypted sequences into the encrypted text in the order of generation to obtain the encrypted document of the answer sheet image. In the encrypted document, the two encrypted sequences filled in sequentially are separated by ",". In this application, the content of the encrypted text is empty when it is created.
[0085] It should be noted here that if a reserved array of the answer sheet image is temporarily stored, the reserved array is filled into the encrypted document and separated from the ciphertext sequence by ",".
[0086] The cloud-based examination processing platform is used to receive encrypted documents of the answer sheets of all candidates' test papers and restore them into corresponding answer sheet images for storage.
[0087] After receiving an encrypted document of a candidate's answer sheet image, the cloud-based examination processing platform reverses the encryption operation to restore the answer sheet image and stores it. Specifically, after receiving the encrypted document of the first candidate's answer sheet image, the platform determines the equivalence list of 16 equivalence parameters according to the pre-stored hexadecimal text within it, following steps S11 to S14.
[0088] After receiving an encrypted document of a candidate's answer sheet image, the cloud-based examination processing platform reverses the encryption process to restore the content of the answer sheet image, as follows:
[0089] Using "," as the delimiter, obtain all ciphertext sequences within the encrypted document. For any given ciphertext sequence, first extract the character at the rightmost end of the ciphertext sequence. If it is 1, it is determined to be left-end truncated; otherwise, it is determined to be right-end truncated.
[0090] The ciphertext sequence is cut into several cutting arrays from left to right, with a specified cutting step size of 4. If the number of remaining characters is 9, the cutting stops. The remaining 9 characters are restored based on the rightmost character of the extracted ciphertext sequence to obtain a character block.
[0091] For any cut array obtained by cutting, two equiposition codes are determined. Based on the two determined equiposition codes, the equiposition parameters corresponding to the equiposition lists located at the leftmost and rightmost ends of the 16 equiposition lists that are consistent with the two determined equiposition codes are used as the character blocks of the cut array.
[0092] The restored character blocks are concatenated to obtain the restored sequence of the ciphertext sequence, and the answer sheet image is restored based on all the restored sequences.
[0093] It should be noted that the hexadecimal text pre-stored in the cloud-based examination processing platform and the hexadecimal text pre-stored in the encryption processing module are the same.
[0094] Some of the data in the above formulas are numerical calculations with dimensions removed, and the contents not described in detail in this specification are all prior art known to those skilled in the art.
[0095] The above embodiments are only used to illustrate the technical methods of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical methods of the present invention without departing from the spirit and scope of the technical methods of the present invention.
Claims
1. A student examination data processing method based on an examination information system, characterized by, The method comprises the following steps: Step one: scanning the answer sheet of the target test paper of all examinees, obtaining the corresponding examinee's answer sheet image, and transmitting all the converted examinee's answer sheet images to the encryption processing module; Step two: after receiving the transmitted answer sheet images of all examinees, the encryption processing module extracts 16 four-bit binary numbers contained in the pre-set binary text in sequence from left to right, takes each extracted binary number as an equal parameter, digitizes the description of the equal parameter, determines the equal list of the equal parameter, obtains the equal list of 16 equal parameters, and determines the equal list of any equal parameter as follows: S11: read each character constituting the equal parameter in sequence from left to right, and divide the same number appearing continuously into an independent group; S12: convert each independent group obtained by dividing the equal parameter into a string according to the number of characters constituting the independent group + the format of the number itself to obtain the translation string of each independent group; S13: according to the order of division of each independent group, splice all the independent groups obtained by dividing the equal parameter to obtain the equal sequence of the equal parameter; S14: specify the cutting step as 2 characters, cut the equal sequence of the equal parameter in sequence from left to right to obtain a number of equal codes, add the equal code to an empty list after cutting each equal code, and cut to obtain the equal list of the equal parameter; Step three: after obtaining the equal list of 16 equal parameters, perform encryption operation on the answer sheet image of any examinee received to obtain the encrypted document of the corresponding examinee's answer sheet image, and transmit the encrypted document to the cloud examination processing platform; Step four: after receiving the encrypted document of the answer sheet image of each examinee, the cloud examination processing platform reverses the encryption operation to restore the answer sheet image of the examinee, and stores the answer sheet image.
2. The student examination data processing method based on an examination information system according to claim 1, characterized by, In step one, the complete image information of the front and back of the answer sheet is captured during the scanning process.
3. The student examination data processing method based on an examination information system according to claim 1, characterized by, In step two, the binary text is created and uploaded by the administrator. During the creation of the binary text, the administrator enters four-bit binary numbers of digits 0~15 in sequence in the binary text.
4. The student examination data processing method based on an examination information system according to claim 1, characterized by, In step two, based on the four-bit binary number of digit 0 as the equal parameter, the equal code in the equal list is 20, 20. Based on the four-bit binary number of digit 15 as the equal parameter, the equal code in the equal list is 21, 21.
5. The student examination data processing method based on an examination information system according to claim 1, characterized by, In step three, the encryption operation is performed on the answer sheet image of any examinee to obtain the content of the encrypted document of the answer sheet image as follows: S21: convert the answer sheet image into a binary string through a picture binary converter, wherein the picture binary converter can convert the answer sheet image into a binary string; S22: cutting the binary string from left to right with a cutting step of 4 characters to obtain a plurality of character blocks; numbering all the character blocks obtained from left to right according to their positions in the binary string before cutting, starting from 1 and continuing sequentially; S23: in ascending order of the number, first obtaining the parity list matched with the character block numbered 1, wherein the matched refers to the parity parameters consistent with the character block, obtaining the parity codes located at the leftmost and rightmost ends of the parity list from left to right, corresponding to B1 and B2; S24: based on the parity code B1, performing left-end truncation judgment on the character block: comparing the parity code B1 with the strings 00, 01, 10, 11 respectively for consistency, if the parity code B1 is inconsistent with any of the strings 00, 01, 10, 11, it is determined that the character block needs left-end truncation, at this time, a ciphertext sequence is generated according to the parity code B1 combined with the parity code B2, and the number 1 is selected as the node number of the ciphertext sequence; if it is determined that the character block does not need left-end truncation, at this time, based on the parity code B2, right-end truncation judgment is performed on the character block: comparing the parity code B2 with the strings 00, 01, 10, 11 respectively for consistency, if the parity code B2 is inconsistent with any of the strings 00, 01, 10, 11, it is determined that the character block needs right-end truncation, at this time, a ciphertext sequence is generated according to the parity code B2 combined with the parity code B1, and the number 1 is selected as the node number of the ciphertext sequence, if it is determined that the character block does not need right-end truncation, at this time, a plurality of character blocks numbered consecutively are selected from the character block numbered 1 to generate a ciphertext sequence and select a node number for the ciphertext sequence; S26: generating a plurality of ciphertext sequences in turn according to S25, wherein any one of the generated ciphertext sequences starts from the character block corresponding to the node number +1 of the previous generated ciphertext sequence; S27: creating a ciphertext text of the answer sheet image, filling all the generated ciphertext sequences into the ciphertext text in the order of generation to obtain an encrypted document of the answer sheet image, and the two ciphertext sequences filled in the encrypted document are separated by ",".
6. The student examination data processing method based on an examination information system according to claim 5, characterized by, In S24, when it is determined that the character block needs left-end truncation, the content of generating a ciphertext sequence according to the parity code B1 combined with the parity code B2 is as follows: S31: converting the two characters constituting the parity code B1 into a two-bit binary number respectively, and splicing the two-bit binary numbers obtained by conversion to obtain the conversion code of the parity code B1; S32: obtaining all the parity parameters corresponding to the parity list in which the parity code located at the leftmost end is consistent with the parity code B2 from the 16 parity lists, and randomly selecting one parity parameter from all the obtained parity parameters as the conversion code of the parity code B2; S33: concatenating the conversion codes of the two parity codes B1 and B2 in the order of B1 and B2, and concatenating a character "1" at the right end of the concatenated data to obtain a ciphertext sequence, wherein the concatenated character "1" is a left end truncation identification character, and is used to determine whether the ciphertext sequence is left end truncated by checking whether the character at the right end of the ciphertext sequence is 1.
7. The student examination data processing method based on an examination information system according to claim 5, characterized by, In S24, if it is determined that the character block needs right end truncation, a ciphertext sequence is generated based on the parity code B2 and the parity code B1 as follows: S41: obtaining all parity parameters corresponding to the parity lists in which the parity code at the left end is consistent with the parity code B1 from the 16 parity lists, and randomly selecting one parity parameter from the obtained parity parameters as the conversion code of the parity code B1; S42: converting the two characters constituting the parity code B2 into two binary numbers respectively, and concatenating the two binary numbers to obtain the conversion code of the parity code B2; S43: concatenating the conversion codes of the two parity codes B1 and B2 in the order of B1 and B2, and concatenating a character "0" at the right end of the concatenated data to obtain a ciphertext sequence, wherein the concatenated character "0" is a right end truncation identification character, and is used to determine whether the ciphertext sequence is right end truncated by checking whether the character at the right end of the ciphertext sequence is 0.
8. The student examination data processing method based on an examination information system according to claim 5, characterized by, In S24, if it is determined that the character block does not need right end truncation, a ciphertext sequence is generated based on a plurality of character blocks numbered consecutively from the character block numbered 1 as follows: concatenating the two parity codes B1 and B2 in the order of B1 and B2, and using the concatenated data as the conversion code of the character block numbered 1; continuing to obtain the parity codes at the left end and the right end in the parity list matched with the character block numbered 2 in the order of 2, 3,..., a; performing left end truncation determination on the character block numbered 2 based on the parity code C1 according to S24, if it is determined that left end truncation is needed, generating the conversion codes of C1 and C2 according to S31 to S32, concatenating the conversion code of the character block numbered 1 with the conversion codes of C1 and C2, and concatenating a character "1" at the right end to obtain a ciphertext sequence, wherein the node number of the ciphertext sequence is selected as 2; if it is determined that the character block does not need left end truncation, further performing right end truncation determination on the character block based on the parity code C2, if it is determined that right end truncation is needed, generating the conversion codes of C1 and C2 according to S41 to S42, concatenating the conversion code of the character block numbered 1 with the conversion codes of C1 and C2, and concatenating a character "0" at the right end to obtain a ciphertext sequence, wherein the node number is still selected as 2; if it is determined that right end truncation is not needed, continuing to obtain the parity codes at the left end and the right end in the parity list matched with the next numbered character block in the order and repeating the above determination process until the parity code of a character block is determined to need left end truncation or right end truncation, wherein a is the total number of the character blocks obtained by cutting the binary string.
Citation Information
Patent Citations
Data encryption method, data verification method and electronic apparatus
US20130315394A1
Method and apparatus for encrypting and decrypting data
WO2019000652A1