Abstract generation method and apparatus, computing device, and storage medium

By employing error-correcting coding theory and custom key partitioning technology in message digest algorithms, the problem of insufficient security in existing message digest algorithms is solved, and a digest generation method with customizable digest information length and improved security is realized.

CN116388964BActive Publication Date: 2025-11-25UNIONTECH SOFTWARE TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202310341621.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-31
Publication Date
2025-11-25
Estimated Expiration
2043-03-31

AI Technical Summary

Technical Problem

Existing message digest algorithms such as MD5 are vulnerable to attacks and cannot be configured with key parameters, resulting in insufficient security and failing to meet practical needs.

Method used

By employing error-correcting coding theory, customizing the digest information length and initial key, the original information is divided into multiple data blocks and encrypted in multiple key boxes to generate a digest information of a predetermined digest length.

Benefits of technology

It enables the customization of the summary information length according to actual needs, improving the security and flexibility of the summary generation method.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116388964B_ABST
    Figure CN116388964B_ABST
Patent Text Reader

Abstract

The application discloses a kind of abstract generation method, device, computing device and storage medium, method is executed in computing device, the method includes: receiving original information, the original information is divided into multiple data blocks, and multiple data blocks are assigned to multiple key boxes;In each key box, based on the key block in the key box, the data block in the key box is encrypted, and encrypted data block is obtained;Based on the encrypted data block in the multiple key boxes, abstract information of predetermined abstract length is generated.According to the technical scheme of the application, the length of abstract information can be customized according to actual needs, and the security is higher.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network security technology, and in particular to a digest generation method, digest generation device, computing device, and storage medium. Background Technology

[0002] Currently, with the development of network technology, network security and information security are receiving increasing attention. Message digest algorithms, as a crucial part of cryptography, are widely used in internet application systems. Message digest algorithms are primarily applied in scenarios such as digital signatures and message integrity verification. Typically, messages are sent from one terminal to another. To verify the consistency of files on the two terminals, message digest operations are usually performed on both files on each terminal, and the calculated results are then compared to determine if the file transmission was complete and error-free.

[0003] However, since Professor Wang Xiaoyun proposed an attack method for the MD5 message digest algorithm in 2010 and effectively collided with it, the security of the MD5 algorithm has become a concern. Because the MD5 output digest is only 128 bits, it is vulnerable to birthday paradox attacks. Consequently, other more secure message digest algorithms have gradually replaced MD5. Furthermore, currently commonly used message digest algorithms do not provide key parameter configuration, making it impossible to configure key parameters according to actual needs.

[0004] Therefore, a more secure digest generation method that supports key configuration is needed to address the problems existing in the above schemes. Summary of the Invention

[0005] Therefore, the present invention provides a method and apparatus for generating abstracts to solve or at least alleviate the problems mentioned above.

[0006] According to one aspect of the present invention, a digest generation method is provided, executed in a computing device, the method comprising: receiving raw information; dividing the raw information into multiple data blocks and allocating the multiple data blocks to multiple key boxes; in each key box, encrypting the data blocks in the key box based on the key blocks in the key box to obtain encrypted data blocks; and generating digest information of a predetermined digest length based on the encrypted data blocks in the multiple key boxes.

[0007] Optionally, in the digest generation method according to the present invention, allocating multiple data blocks to multiple key boxes includes: writing each data block sequentially to each key box based on the order of the multiple key boxes.

[0008] Optionally, in the digest generation method according to the present invention, after encrypting the data blocks in the key box to obtain encrypted data blocks, the method further includes: sequentially performing an XOR operation between the encrypted data blocks in each key box and the encrypted data blocks in the next key box to obtain an XOR encrypted data block and writing it into the next key box.

[0009] Optionally, in the digest generation method according to the present invention, generating digest information of a predetermined digest length based on the encrypted data blocks in the plurality of key boxes includes: generating digest information of a predetermined digest length based on the encrypted data blocks in the first key box and the XOR encrypted data blocks in each of the remaining key boxes.

[0010] Optionally, in the digest generation method according to the present invention, generating digest information of a predetermined digest length based on the encrypted data blocks in the plurality of key boxes includes: performing an XOR operation on the encrypted data blocks in the plurality of key boxes to obtain digest information of a predetermined digest length.

[0011] Optionally, in the digest generation method according to the present invention, before receiving the original information, the method includes: initializing the plurality of key boxes; randomly combining keys based on a plurality of linear block codes; dividing the keys into a plurality of key blocks and writing them sequentially into each key box.

[0012] Optionally, in the digest generation method according to the present invention, the predetermined digest length is 2k, and the key length is: n = ck, where n represents the key length and c represents the number of key boxes.

[0013] Optionally, the summary generation method according to the present invention further includes: obtaining a pre-configured predetermined summary length.

[0014] According to one aspect of the present invention, a digest generation apparatus residing in a computing device is provided, the apparatus comprising: a receiving module adapted to receive raw information, divide the raw information into multiple data blocks, and allocate the multiple data blocks to multiple key boxes; a computing module adapted to, in each key box, encrypt a data block in the key box based on a key block in the key box to obtain an encrypted data block; and a digest generation module adapted to generate digest information of a predetermined digest length based on the encrypted data blocks in the multiple key boxes.

[0015] According to one aspect of the present invention, a computing device is provided, comprising: at least one processor; and a memory storing program instructions, wherein the program instructions are configured to be executed by the at least one processor, the program instructions including instructions for performing the summary generation method as described above.

[0016] According to one aspect of the present invention, a readable storage medium storing program instructions is provided, which, when read and executed by a computing device, causes the computing device to perform the summary generation method as described above.

[0017] According to the technical solution of the present invention, a digest generation method is provided. This method utilizes error-correcting coding theory, allowing for a pre-configured digest length. Upon receiving original information, the original information is divided into multiple data blocks, which are then sequentially filled into multiple key boxes. Within each key box, the data blocks are encrypted based on the key blocks in that key box, resulting in encrypted data blocks. Finally, digest information of the predetermined digest length is generated based on the encrypted data blocks from the multiple key boxes. Thus, the digest generation method of the present invention allows for customized configuration of the digest information length according to actual needs, thereby balancing practical requirements and security in adjusting the digest information length, resulting in higher security.

[0018] Furthermore, in this invention, an initial key can be generated in a custom way, the generated key can be divided into multiple key blocks, and each key block can be written into each key box in sequence. Thus, this invention can configure key blocks for each key box according to the custom key, thereby improving the security of the digest generation method.

[0019] The above description is merely an overview of the technical solution of the present invention. In order to better understand the technical means of the present invention and to implement it in accordance with the contents of the specification, and in order to make the above and other objects, features and advantages of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description

[0020] To achieve the foregoing and related objectives, certain illustrative aspects are described herein in conjunction with the following description and accompanying drawings. These aspects indicate various ways in which the principles disclosed herein may be practiced, and all aspects and their equivalents are intended to fall within the scope of the claimed subject matter. The foregoing and other objectives, features, and advantages of this disclosure will become more apparent from the following detailed description, taken in conjunction with the accompanying drawings. Throughout this disclosure, the same reference numerals generally refer to the same parts or elements.

[0021] Figure 1 A schematic diagram of a computing device 100 according to an embodiment of the present invention is shown;

[0022] Figure 2 , Figure 3 The following are schematic flowcharts of a summary generation method 200 according to an embodiment of the present invention;

[0023] Figure 4 A schematic diagram of a summary generation apparatus 400 according to an embodiment of the present invention is shown. Detailed Implementation

[0024] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.

[0025] The digest generation scheme of the present invention utilizes error correction coding theory, supports custom configuration of digest information length and initial key, and has higher security.

[0026] Figure 1 A schematic diagram of a computing device 100 according to an embodiment of the present invention is shown. Figure 1 As shown, in a basic configuration, computing device 100 includes at least one processing unit 102 and system memory 104. According to one aspect, depending on the configuration and type of the computing device, the processing unit 102 may be implemented as a processor. System memory 104 includes, but is not limited to, volatile memory (e.g., random access memory), non-volatile memory (e.g., read-only memory), flash memory, or any combination of such memories. According to one aspect, system memory 104 includes an operating system 105.

[0027] According to one aspect, operating system 105 is, for example, suitable for controlling the operation of computing device 100. Furthermore, examples are practiced in conjunction with graphics libraries, other operating systems, or any other applications, and are not limited to any particular application or system. Figure 1 The basic configuration is illustrated by the components within the dashed lines. According to one aspect, the computing device 100 has additional features or functions. For example, according to one aspect, the computing device 100 includes additional data storage devices (removable and / or non-removable), such as disks, optical discs, or magnetic tapes. This additional storage... Figure 1 The middle part is shown by removable storage device 109 and non-removable storage device 110.

[0028] As stated above, according to one aspect, a program module 103 is stored in system memory 104. According to one aspect, program module 103 may include one or more applications. The invention does not limit the type of application; for example, applications may include: email and contact applications, word processing applications, spreadsheet applications, database applications, slideshow applications, drawing or computer-aided applications, web browser applications, etc. In an embodiment of the invention, the applications in program module 103 may include a summary generation device 400, which is configured to perform the summary generation method 200 of the invention.

[0029] According to one aspect, examples can be practiced on circuits including discrete electronic components, packaged or integrated electronic chips containing logic gates, circuits utilizing microprocessors, or on a single chip containing electronic components or a microprocessor. For example, it can be practiced via wherein... Figure 1 Each or many of the components shown can be implemented as an example by integrating a System-on-a-Chip (SOC) on a single integrated circuit. According to one aspect, such an SOC device may include one or more processing units, graphics units, communication units, system virtualization units, and various application functions, all integrated (or “burned in”) as a single integrated circuit onto a chip substrate. When operating via the SOC, the functions described herein can be operated via dedicated logic integrated on a single integrated circuit (chip) with other components of the computing device 100. Embodiments of the invention can also be implemented using other techniques capable of performing logical operations (e.g., AND, OR, and NOT), including but not limited to mechanical, optical, fluid, and quantum technologies. Additionally, embodiments of the invention can be implemented within a general-purpose computer or in any other circuit or system.

[0030] According to one aspect, computing device 100 may also have one or more input devices 112, such as a keyboard, mouse, pen, voice input device, touch input device, etc. It may also include output devices 114, such as a display, speaker, printer, etc. The foregoing devices are examples and other devices may also be used. Computing device 100 may include one or more communication connections 116 that allow communication with other computing devices 118. Examples of suitable communication connections 116 include, but are not limited to: RF transmitter, receiver and / or transceiver circuitry; Universal Serial Bus (USB), parallel and / or serial ports.

[0031] As used herein, the term computer-readable medium includes computer storage medium. Computer storage medium can include volatile and non-volatile, removable and non-removable media implemented using any method or technology for storing information (e.g., computer-readable instructions, data structures, or program module 103). System memory 104, removable storage device 109, and non-removable storage device 110 are examples of computer storage media (i.e., memory storage). Computer storage media can include random access memory (RAM), read-only memory (ROM), electrically erasable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical storage, magnetic tape, magnetic tape, disk storage or other magnetic storage devices, or any other article of manufacture that can be used to store information and is accessible by computing device 100. According to one aspect, any such computer storage medium can be part of computing device 100. Computer storage media does not include carrier waves or other transmitted data signals.

[0032] According to one aspect, the communication medium is implemented by computer-readable instructions, data structures, program modules 103, or other data in a modulated data signal (e.g., a carrier wave or other transmission mechanism), and includes any information transmission medium. According to one aspect, the term "modulated data signal" describes a signal having one or more sets of characteristics or altered in a manner that encodes information in the signal. By way of example and not limitation, the communication medium includes wired media such as wired networks or direct wired connections, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.

[0033] In an embodiment of the invention, a computing device 100 is configured to perform a digest generation method 200 according to the invention. The computing device 100 includes one or more processors and one or more readable storage media storing program instructions that, when configured to be executed by the one or more processors, cause the computing device to perform the digest generation method 200 of the present invention.

[0034] According to one embodiment of the present invention, the digest generation apparatus 400 of the computing device 100 is configured to execute the digest generation method 200 according to the present invention. The digest generation apparatus 400 includes a plurality of program instructions for executing the digest generation method 200 of the present invention, which can instruct a processor to execute the digest generation method 200 according to the present invention.

[0035] Figure 2 , Figure 3Flowcharts of a digest generation method 200 according to an embodiment of the present invention are shown. Method 200 is adapted to be executed in a digest generation apparatus 400 of a computing device (the aforementioned computing device 100). The digest generation method 200 according to the present invention can be applied to application scenarios such as digital integrity checks and data verification.

[0036] It should be noted that the computing device 100 includes multiple key boxes, and each key box may include a key block. Here, the present invention does not impose a specific limit on the number of key boxes.

[0037] In one embodiment, before executing method 200, multiple key boxes can be initialized by configuring key blocks for each key box according to a custom-defined initial key. Specifically, a key (i.e., a custom-defined initial key) can be generated based on a random combination of multiple linear block codes. The generated key can then be divided into multiple key blocks, and each key block is sequentially written into each key box, so that each key box contains one key block. Here, the number of key blocks obtained by dividing the key is equal to the number of key boxes.

[0038] For example, such as Figure 3 As shown, assuming the number of key boxes is c, that is, the digest generation device 400 of computing device 100 includes c key boxes. The multiple key boxes are arranged in sequential order as key box S1, key box S2, ..., key box S... c A key is pre-generated, then divided into c equal parts to obtain c key blocks, which are then sequentially written into c key boxes. Thus, each key box contains one key block. Here, the key block in each key box can be represented, for example, as g. i , where i represents the ordinal number of the key box.

[0039] like Figure 2 and Figure 3 As shown, method 200 includes steps 210 to 230.

[0040] In step 210, the original information is received, divided into multiple data blocks, and then distributed to multiple key boxes. Here, the data blocks can be written sequentially to each key box based on their order. It should be noted that the original information is the data stream from which digest information is to be generated; specifically, the data stream can be a binary stream.

[0041] In one embodiment, each data block is sequentially retrieved from the original information, and each retrieved data block is written into a corresponding key box (for encryption operations using that key), until all the original information is retrieved in the form of data blocks and written into the corresponding key boxes. This achieves the division of the original information into multiple data blocks and the allocation of these multiple data blocks to multiple key boxes.

[0042] Here, each data block is, for example, k bits of data. A data block (k bits of data) can be represented as m.

[0043] In step 220, in each key box, the data block in the key box is encrypted based on the key block in the key box to obtain the encrypted data block.

[0044] Here, the encrypted data block generated in each key box can be represented as h, for example. i Let i represent the ordinal number of the key box. For example, the encrypted data block generated in the first key box S1 can be represented as h1, the encrypted data block generated in the second key box S2 can be represented as h2, ..., the c-th key box S1... c The encrypted data block generated in can be represented as h c .

[0045] Here, within each keybox, the implementation can be based on a hash function (denoted as f) to determine the key block g. i Encrypt the data block m. That is, in each keybox, encrypt the data block m in the keybox and the key block g in the keybox. i The f operation is performed. Here, the hash function f is a hash function based on error-correcting coding theory. Therefore, the method 200 of this invention utilizes error-correcting coding theory for information mixing, resulting in higher security.

[0046] For example, in one implementation, the f operation can be implemented as: f(m, g i )=mG i +h i Among them, G i Represents key block g i The generating matrix.

[0047] In step 230, a digest of a predetermined digest length is generated based on the encrypted data blocks in multiple key boxes. Here, the generated digest of the predetermined digest length is the digest of the original information generated according to method 200 of the present invention.

[0048] Here, the generated digest information can be represented as H. Specifically, the encrypted data blocks in multiple (e.g., c) keyboxes can be XORed to obtain digest information of a predetermined digest length. That is, H = h1 + h2 + ... + hc .

[0049] It should be noted that the length of the digest information finally generated by method 200 according to the present invention is a pre-configured predetermined digest length. The pre-configured predetermined digest length can be obtained before executing method 200 of the present invention. In this way, the present invention enables the custom configuration of the digest information length according to actual needs, and can balance actual needs and security in allocating the digest information length.

[0050] According to one embodiment of the present invention, after executing step 220, which encrypts the data block in the key box based on the key block in the key box to obtain the encrypted data block, a shift scrambling operation can be performed in multiple key boxes.

[0051] Specifically, starting from key box S1 to key box S c-1 The encrypted data blocks (h) in each key box are sequentially... i The middle part of ) and the encrypted data block (h) in the next key box i+1 Perform an XOR operation to obtain an XOR encrypted data block, and write the XOR encrypted data block into the next key box as the final encrypted data block in the next key box.

[0052] It is understandable that after the XOR operation, the encrypted data block in the first key box remains unchanged and is still the initial encrypted data block before the XOR operation.

[0053] In this embodiment, when performing step 230, a digest information of a predetermined digest length can be generated based on the encrypted data block in the first key box S1 (i.e., the initial encrypted data block before the XOR operation) and the XOR encrypted data blocks in each of the remaining key boxes.

[0054] In one embodiment, the key can be generated before performing step 210 by the following method:

[0055] A key is generated by randomly combining multiple linear block ciphers. Specifically, codeword information from multiple linear block ciphers can be randomly selected to generate the key. Specifically, codeword information from c binary linear block ciphers can be selected and randomly combined to generate the key. In one embodiment, c ≥ 32.

[0056] For example, assuming the predetermined digest length is 2k, the corresponding selected linear block good code is (2k,k). The key s is generated by randomly selecting codeword information from all linear block good codes (2k,k) and combining them. n , where n represents the length of the key. The key s of length n... nDivide the key into c equal parts (the number of key boxes), and write the key code g into each key box sequentially. i In the linear grouping good code space search, it was found that:

[0057] In (64,32,d), d can reach 12, and there are a total of 9,598,048 such good codewords.

[0058] In (66,33,d), d can reach 12, and there are a total of 37,064,406 such good codewords.

[0059] In (70,35,d), d can reach 13, and there are a total of 18,384 such good codewords.

[0060] In (72,36,d), d can reach 14, and there are a total of 4,032 such good codewords.

[0061] Therefore, when initializing the key box, it is recommended to use (64,32,12), (66,33,12), (70,35,13), and (72,36,14) as the random selection set for combining and generating keys. In this way, the high Hamming distance of the linear block good code can be used to ensure that the calculated digest information has a high degree of balance.

[0062] Additionally, if the predetermined digest length is 2k, the key length can be calculated using the following formula: n = ck. Here, n represents the key length, and c represents the number of key boxes. It can be understood that the key length is determined by the number of key boxes and the predetermined digest length (pre-configured).

[0063] In one embodiment, the value of k can be in the range of 32≤k≤36, and k is an integer.

[0064] It should be noted that error-correcting codes are tools for error detection and correction during information transmission. The following sections will explain linear error-correcting codes and linear block good codes respectively.

[0065] Linear error-correcting code: represented as C b (n,k,d), where b represents the binary code, n is the code length, k is the information bit length, d is the minimum Hamming distance, and G is the system matrix of the linear error-correcting code. (G) cyclic |I] obtained, G cyclic Let I be a k×k identity matrix obtained by cyclic shifting of codewords. The minimum Hamming distance is represented as the minimum Hamming distance between any two codewords after all information has been encoded by linear error correction codes.

[0066]

[0067] Linear block good code: In linear error-correcting codes represented as (n,k,d), the codewords with the largest possible d are linear block good codes.

[0068] Figure 4 A schematic diagram of a digest generation apparatus 400 according to an embodiment of the present invention is shown. The digest generation apparatus 400 resides in a computing device (e.g., the aforementioned computing device 100). The digest generation apparatus 400 is adapted to perform the digest generation method 200 of the present invention. The computing device 100 includes a plurality of key boxes, for example including key box S1, key box S2…, key box S… c .

[0069] like Figure 4 As shown, the summary generation device 400 includes a receiving module 410, a calculation module 420, and a summary generation module 430 connected in sequence.

[0070] The receiving module 410 is adapted to receive raw information, divide the raw information into multiple data blocks, and distribute the multiple data blocks to multiple key boxes. The calculation module 420 is adapted to encrypt the data blocks in each key box based on the key blocks in the key box to obtain encrypted data blocks. The digest generation module 430 is adapted to generate digest information of a predetermined digest length based on the encrypted data blocks in the multiple key boxes.

[0071] It should be noted that the receiving module 410 is used to execute the aforementioned step 210, the calculation module 420 is used to execute the aforementioned step 220, and the digest generation module 430 is used to execute the aforementioned step 230. Here, the specific execution logic of the receiving module 410, the calculation module 420, and the digest generation module 430 can be found in the description of steps 210 to 230 in the preceding method 200, and will not be repeated here.

[0072] The digest generation method of the present invention utilizes error-correcting coding theory, allowing for a pre-configured digest length. Upon receiving the original information, the original information is divided into multiple data blocks, which are then sequentially filled into multiple key boxes. Within each key box, the data blocks are encrypted based on the key blocks in that key box, resulting in encrypted data blocks. Finally, a digest of the predetermined length is generated based on the encrypted data blocks from the multiple key boxes. Thus, the digest generation method of the present invention allows for customized configuration of the digest length according to actual needs, balancing practical requirements and security to achieve higher security.

[0073] Furthermore, in this invention, an initial key can be generated in a custom way, the generated key can be divided into multiple key blocks, and each key block can be written into each key box in sequence. Thus, this invention can configure key blocks for each key box according to the custom key, thereby improving the security of the digest generation method.

[0074] The various techniques described herein can be implemented in combination with hardware or software, or a combination thereof. Thus, the methods and apparatus of the present invention, or certain aspects or portions thereof, can take the form of program code (i.e., instructions) embedded in a tangible medium, such as a removable hard disk, USB flash drive, floppy disk, CD-ROM, or any other machine-readable storage medium, wherein when the program is loaded into and executed by a machine such as a computer, the machine becomes an apparatus for practicing the present invention.

[0075] When the program code is executed on a programmable computer, the mobile terminal generally includes a processor, a processor-readable storage medium (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device. The memory is configured to store program code; the processor is configured to execute the summary generation method of the present invention according to instructions in the program code stored in the memory.

[0076] By way of example, and not limitation, readable media include readable storage media and communication media. Readable storage media stores information such as computer-readable instructions, data structures, program modules, or other data. Communication media generally embodies computer-readable instructions, data structures, program modules, or other data in the form of modulated data signals such as carrier waves or other transmission mechanisms, and includes any information delivery medium. Any combination of the above is also included within the scope of readable media.

[0077] In the specification provided herein, the algorithms and displays are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used with the examples of this invention. The required structure for constructing such systems is apparent from the above description. Furthermore, this invention is not directed to any particular programming language. It should be understood that the contents of the invention described herein can be implemented using various programming languages, and the above description of specific languages ​​is for the purpose of disclosing the best mode of implementation of the invention.

[0078] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.

[0079] Similarly, it should be understood that, in order to streamline this disclosure and aid in understanding one or more of the various aspects of the invention, in the above description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof.

[0080] Those skilled in the art will understand that modules, units, or components of the devices disclosed in the examples herein can be arranged in the devices described in this embodiment, or alternatively, can be located in one or more devices different from the devices in this example. The modules in the foregoing examples can be combined into a single module or, in addition, can be divided into multiple sub-modules.

[0081] Those skilled in the art will understand that the modules in the device of the embodiment can be adaptively changed and placed in one or more devices different from that embodiment. Modules, units, or components in the embodiment can be combined into a single module, unit, or component, and further, they can be divided into multiple sub-modules, sub-units, or sub-components.

[0082] Furthermore, those skilled in the art will understand that although some embodiments described herein include certain features included in other embodiments but not others, combinations of features from different embodiments are meant to be within the scope of the invention and form different embodiments.

[0083] Furthermore, some of the embodiments described herein are methods or combinations of method elements that can be implemented by a processor of a computer system or by other means of performing the functions. Therefore, a processor having the necessary instructions for implementing the methods or method elements forms means for implementing the methods or method elements. Furthermore, the elements described herein in the apparatus embodiments are examples of means for implementing the functions performed by elements for the purposes of carrying out the invention.

[0084] As used herein, unless otherwise specified, the use of ordinal numbers such as “first,” “second,” “third,” etc., to describe ordinary objects merely indicates different instances of similar objects and is not intended to imply that the objects being described must have a given order in time, space, ordering, or any other manner.

[0085] Although the invention has been described with respect to a limited number of embodiments, those skilled in the art will understand from the foregoing description that other embodiments are conceivable within the scope of the invention described herein. Furthermore, it should be noted that the language used in this specification has been chosen primarily for readability and edibility purposes, and not for the purpose of explaining or limiting the subject matter of the invention.

Claims

1. A method for generating a summary, executed in a computing device, the method comprising: Multiple key boxes are initialized, and a key is generated by randomly combining multiple linear block codes. The key is divided into multiple key blocks and written into each key box in turn, so that each key box is configured with a key block. Receive the original information, divide the original information into multiple data blocks, and write each data block into each key box in sequence based on the order of the multiple key boxes, so as to distribute the multiple data blocks to the multiple key boxes. In each key box, the data block in the key box is encrypted based on the key block in the key box to obtain an encrypted data block; The encrypted data block in each key box is XORed with the encrypted data block in the next key box in turn to obtain the XOR encrypted data block, which is then written into the next key box as the final encrypted data block in the next key box. Based on the encrypted data blocks in the plurality of key boxes, a digest information of a predetermined digest length is generated, including: generating a digest information of a predetermined digest length based on the encrypted data block in the first key box and the XOR encrypted data block in each of the remaining key boxes.

2. The method as described in claim 1, wherein, Based on the encrypted data blocks in the multiple key boxes, a digest information of a predetermined digest length is generated, including: The encrypted data blocks in the multiple key boxes are XORed to obtain digest information of a predetermined digest length.

3. The method as described in claim 1, wherein, The predetermined digest length is 2k, and the key length is: n = ck, where n represents the length of the key and c represents the number of key boxes.

4. The method according to any one of claims 1-3, wherein, Also includes: Get the pre-configured scheduled summary length.

5. A digest generation apparatus, residing in a computing device, the apparatus being adapted to initialize multiple key boxes, generate a key based on a random combination of multiple linear block codes, divide the key into multiple key blocks, and write them sequentially into each key box, such that each key box contains one key block; the apparatus comprising: The receiving module is adapted to receive raw information, divide the raw information into multiple data blocks, and write each data block sequentially into each key box based on the front-to-back order of the multiple key boxes, so as to distribute the multiple data blocks to the multiple key boxes. The calculation module is adapted to encrypt a data block in each key box based on the key block in the key box to obtain an encrypted data block, and to sequentially XOR the encrypted data block in each key box with the encrypted data block in the next key box to obtain an XOR encrypted data block and write it into the next key box as the final encrypted data block in the next key box. The digest generation module is adapted to generate digest information of a predetermined digest length based on the encrypted data blocks in the plurality of key boxes, and is further adapted to generate digest information of a predetermined digest length based on the encrypted data blocks in the first key box and the XOR encrypted data blocks in each of the remaining key boxes.

6. A computing device, comprising: At least one processor; as well as A memory storing program instructions, wherein the program instructions are configured to be executed by the at least one processor, the program instructions including instructions for performing the method as described in any one of claims 1-4.

7. A readable storage medium storing program instructions that, when read and executed by a computing device, cause the computing device to perform the method as described in any one of claims 1-4.

Citation Information

Patent Citations

  • QR code encryption method

    CN103378967A

  • Positional information based dynamic token and encryption method thereof

    CN103401689A

  • Information encrypted communication method and device, computing equipment and storage medium

    CN108234466A