A source joint coding encryption method, device and equipment and storage medium
By using a source joint coding encryption method, multi-party secret shared data and source joint coding are generated. After encryption, the data is decrypted and verified at the destination. This solves the problem that communication systems in existing technologies are easily cracked, and achieves a highly secure and easy-to-implement encryption scheme.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SUN YAT SEN UNIV
- Filing Date
- 2023-03-21
- Publication Date
- 2026-05-01
AI Technical Summary
In existing technologies, key-based encoding encryption methods are easily cracked by high computing power or by unauthorized access, and one-time pad encryption based on information theory is difficult to implement, resulting in poor security of communication systems.
The method employs a source co-coding encryption approach. It generates multi-party secret shared data and source co-coding encrypted data, combines them with a key algorithm for encryption, and performs decryption verification at the destination end. This ensures that only channel data exceeding a preset security threshold can be decrypted from the source. The method utilizes real-time changes in the source to hide the key, increasing the difficulty of cracking.
It effectively resists powerful computing attacks and unauthorized access attacks, improves the security of communication systems, reduces key length and algorithm requirements, and is easy to implement.
Smart Images

Figure CN116436600B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of information security technology, and in particular to a source joint coding encryption method, apparatus, device and storage medium. Background Technology
[0002] In multilevel diversity coding systems, the design of the coding scheme determines the security and speed performance of the system. Secure coding schemes are generally based on key design or information theory. However, implementing a "one-time pad" based on information theory is very difficult in practical engineering applications: In stream ciphers, a one-time pad requires a random key of the same length as the message, which consumes significant computational and storage resources, and the key length cannot be determined before the plaintext is determined; furthermore, the one-time pad restricts a key to being used only once, greatly complicating the design of random key generation algorithms.
[0003] Secure coding schemes based on key design are vulnerable to high-computing-power cracking: With the improvement of computing power and the development of quantum computing, the security of keys designed based on computational complexity is gradually being threatened. If a quantum algorithm that factorizes large numbers (Short number factorization) is implemented in practice, classic key security protocols such as RSA and Elgamal will no longer be secure; moreover, if there are dishonest participants within the communication system who possess partial key information and algorithms, they have the opportunity to analyze and crack the encrypted information of other participants, thereby gaining unauthorized access to their information.
[0004] Therefore, existing technologies suffer from poor security because key-based encoding encryption methods are easily cracked by high computing power or unauthorized access, and one-time pad encryption methods designed based on information theory are difficult to implement. Summary of the Invention
[0005] This application provides a source joint coding encryption method, apparatus, device and storage medium that is resistant to strong computing power cracking and unauthorized cracking, and is easy to implement, which can effectively improve the security of communication systems.
[0006] In a first aspect, embodiments of this application provide a source joint coding encryption method, which is applied to a communication system, and the method includes:
[0007] The number of source security levels S is calculated based on the preset security threshold and the number of encoders L in the communication system;
[0008] Generate multi-party secret-shared data based on the lowest security level information source X1;
[0009] Get without encoder E iFor multiple encoder sets (1≤i≤L) with a number of encoders greater than a preset security threshold, calculate the decryption level of each encoder set and store each decryption level in array A_E. i ;
[0010] Based on multiple security levels of information sources X1,…,X k (1≤k≤S) and array A_E i Multiple decryption levels generate source encrypted data corresponding to each decryption level;
[0011] Multiple encrypted data sources are concatenated to form the source joint coding encrypted data M_E. i ;
[0012] The multi-party secretly shared data and the information source jointly encoded and encrypted the data M_E i After concatenation, the data is encrypted using a key algorithm to obtain channel data, which is then input into encoder E. i The corresponding channel.
[0013] Furthermore, the method also includes a decryption method applied to the receiver of the communication system, the decryption method comprising:
[0014] Based on the received channel data, determine the source encoder corresponding to each channel data, put each source encoder into the source encoder set, and check whether the number of source encoders is less than or equal to a preset safety threshold.
[0015] If the value is less than or equal to the preset security threshold, decryption will fail.
[0016] If it exceeds the preset security threshold, then the source X1 with the lowest security level is recovered based on the multi-party secret sharing data in the channel data, the decryption level of the source encoder set is calculated, and it is checked whether the decryption level is greater than 1.
[0017] If the decryption level is equal to 1, then the decryption ends; if the decryption level is greater than 1, then multiple source encrypted data are obtained based on the source joint coding encryption data in each channel data, and multiple sources with security levels greater than 1 and less than or equal to the decryption level are obtained based on the multiple source encrypted data and the source X1 with the lowest security level.
[0018] Furthermore, the aforementioned multi-party secret-sharing data generated based on the lowest security level source X1 includes:
[0019] A multi-party secret distribution algorithm is used to generate L copies of multi-party secret shared data from the lowest security level information source X1.
[0020] Furthermore, the above-mentioned information sources X1,…,X are based on multiple security levels. k (1≤k≤S) and array A_E iMultiple decryption levels generate source encrypted data corresponding to each decryption level, including:
[0021] array A_E i Sort the multiple decryption levels in the array to obtain array A_E i =[l1,l2,…,l n ];
[0022] According to the source He Xinyuan Obtain the encrypted source data corresponding to decryption level l1. According to the source He Xinyuan Obtain the source encrypted data corresponding to decryption level l2 And so on, according to the source He Xinyuan Decryption level l n Corresponding encrypted data from the source
[0023] Furthermore, the above is based on the source. He Xinyuan Obtain the encrypted source data corresponding to decryption level l1. According to the source He Xinyuan Obtain the source encrypted data corresponding to decryption level l2 And so on, according to the source He Xinyuan Decryption level l n Corresponding encrypted data from the source Including: the source of information He Xinyuan Perform linear operations to obtain encrypted source data. Source of information He Xinyuan Perform linear operations to obtain encrypted source data. And so on, the source of information He Xinyuan Perform linear operations to obtain encrypted source data.
[0024] Furthermore, linear operations are modulo-2 addition operations.
[0025] Furthermore, the method also includes:
[0026] Before generating multi-party secret-sharing data based on the lowest security level source X1, a pseudo-random bit sequence is used to separate the multiple security levels of sources X1,…,X… k The low-rate information sources in (k=S) are expanded into high-rate information sources so that multiple security level information sources X1,…,X are made available.k The speeds of (k=S) are equal.
[0027] Secondly, embodiments of this application provide a source joint coding encryption device, which is applied to a communication system. The device includes:
[0028] The source security level calculation module is used to calculate the source security level S based on the preset security threshold and the number of encoders N in the communication system;
[0029] The shared data generation module is used to generate multi-party secret shared data based on the lowest security level information source X1;
[0030] The decryption level calculation module is used to obtain the decryption level without encoder E. i For multiple encoder sets (1≤i≤L) with a number of encoders greater than a preset security threshold, calculate the decryption level of each encoder set and store each decryption level in array A_E. i ;
[0031] The source encryption data generation module is used to generate encrypted data based on multiple security levels of source X1,…,X k (1≤k≤S) and array A_E i Multiple decryption levels generate source encrypted data corresponding to each decryption level;
[0032] The joint coding module is used to concatenate multiple encrypted data sources to form the joint encoded encrypted data M_E. i ;
[0033] The channel data generation module is used to jointly encode and encrypt multi-party secret shared data and source data M_E. i After concatenation, the data is encrypted using a key algorithm to obtain channel data, which is then input into encoder E. i The corresponding channel.
[0034] Thirdly, embodiments of this application provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it performs the steps of a source joint coding encryption method as described in any of the above embodiments.
[0035] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of a source joint coding encryption method as described in any of the above embodiments.
[0036] In summary, compared with the prior art, the beneficial effects of the technical solution provided in this application include at least the following:
[0037] First, the source joint coding encryption method provided in this application uses the multi-party secret shared data generated by the lowest-level source X1 as the prefix of each channel data. The nature of the multi-party secret shared data determines that the source X1 can only be decrypted based on a sufficient amount of multi-party secret shared data after obtaining channel data exceeding a preset security threshold. This avoids the possibility that some dishonest eavesdroppers can obtain a small portion of channel data and then decrypt it without authorization. Furthermore, this application uses key encryption for the multi-party secret shared data, making it difficult for eavesdroppers to decrypt the source X1 even if they obtain a sufficient amount of channel data.
[0038] Secondly, this application makes the key and source data mutually hidden and obfuscated: the source changes over time, so from the perspective of an eavesdropper, even if two channel data are encrypted with the same key, the real-time changes in the source will make the two channel data appear to use two different keys; and the two keys that appear to be exactly the same from the eavesdropper's perspective are actually likely to be obtained by superimposing different keys with different sources, which greatly increases the difficulty of cracking the encrypted information and improves the ability of the encryption method of this application to resist strong computing power cracking.
[0039] Finally, compared with the strict "one-time pad" security coding scheme designed based on information theory, this application effectively reduces the required key length and the requirements for the key algorithm at the cost of minimal security sacrifice of the lowest level information source X1. That is, the key used for encryption does not necessarily have to be the same length as the sum of the lengths of all transmitted data, and the same key can be reused, further reducing the stringent requirements of the entire communication system on the key algorithm, making the encryption algorithm of this application very easy to implement.
[0040] Therefore, the source joint coding encryption method provided in this application is resistant to strong computing power cracking and unauthorized cracking, and is easy to implement, effectively improving the security of the communication system. Attached Figure Description
[0041] Figure 1 A flowchart of a source joint coding encryption method provided as an exemplary embodiment of this application.
[0042] Figure 2 This is a partial structural diagram of a communication system provided for an exemplary embodiment of this application.
[0043] Figure 3 A flowchart of the decryption steps provided for an exemplary embodiment of this application.
[0044] Figure 4 This is a structural diagram of a source joint coding encryption device provided as an exemplary embodiment of this application. Detailed Implementation
[0045] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0046] Please see Figure 1 and Figure 2 This application provides a source joint coding encryption method, which is applied to a communication system. Taking the communication system as the execution subject as an example, the method specifically includes the following steps:
[0047] Step S1: Calculate the number of source security levels S based on the preset security threshold and the number of encoders L in the communication system.
[0048] Specifically, assuming the preset security threshold is m, the formula for calculating the number S of source security levels is:
[0049]
[0050] Step S2: Generate multi-party secret sharing data based on the lowest security level information source X1.
[0051] Multi-party secret sharing is a secret partitioning and storage technique, a cryptographic tool. A (p,q) multi-party secret sharing scheme is defined as follows: using a multi-party secret distribution algorithm, the secret information to be hidden is split into q shared data and distributed to q participating parties. To recover the secret, the shared data of at least p participating parties must be collected. For a multi-level diversity coding system with L encoders and a preset security threshold of m, when the number of source encoders accessible at the sink exceeds m, the information of the lowest security level source X1 can be decoded.
[0052] Therefore, this application considers the lowest security level information source X1 as the secret information that needs to be shared by multiple parties in the (m+1,L) secret sharing scheme, and generates L pieces of multi-party secret sharing data (SS1,SS2,...,SS1) about X1 through a multi-party secret distribution algorithm. L The data is distributed across L channels as a data prefix for each channel, thereby achieving threshold confidentiality for the lowest security level source X1. The multi-party secret sharing scheme can be the Shamir secret sharing scheme; this application does not specifically limit it.
[0053] Step S3, obtain the encoder E without encoder E iFor multiple encoder sets (1≤i≤L) with a number of encoders greater than a preset security threshold, calculate the decryption level of each encoder set and store each decryption level in array A_E. i .
[0054] Specifically, suppose a set of encoders is The number of encoders n>m (exceeding the preset safety threshold), and the encoder number satisfies a1 <a2<…<a n Then the decryption level of this encoder set is defined as level (in the following formula, a0 = 0 is defined; a0 is only used to simplify the calculation and has no practical meaning):
[0055]
[0056] Where: f1(n) and f2(k) are defined as follows:
[0057]
[0058]
[0059] Step S4, based on multiple security level information sources X1,…,X k (1≤k≤S) and array A_E i Multiple decryption levels generate source encrypted data corresponding to each decryption level.
[0060] Step S5: Concatenate multiple encrypted data sources together to form the jointly encoded encrypted data M_E. i .
[0061] Step S6: Encrypt the multi-party secret shared data and the information source jointly encoded and encrypted the data M_E. i After concatenation, the data is encrypted using a key algorithm to obtain channel data, which is then input into encoder E. i The corresponding channel.
[0062] The key algorithms mentioned in the above embodiments are any key algorithms in the prior art, and will not be elaborated further here.
[0063] The above embodiment provides a source joint coding encryption method in which the multi-party secret shared data generated by the lowest-level source X1 is used as the prefix of each channel data. The nature of the multi-party secret shared data determines that the source X1 can only be decrypted based on a sufficient amount of multi-party secret shared data after obtaining channel data exceeding a preset security threshold. This avoids the possibility that some dishonest eavesdroppers can obtain a small portion of channel data and then decrypt it without authorization. Furthermore, this application further uses key encryption for the multi-party secret shared data, making it difficult for eavesdroppers to decrypt the source X1 even if they steal a sufficient amount of channel data.
[0064] Secondly, this application makes the key and source data mutually hidden and obfuscated: the source changes over time, so from the perspective of an eavesdropper, even if two channel data are encrypted with the same key, the real-time changes in the source will make the two channel data appear to use two different keys; and the two keys that appear to be exactly the same from the eavesdropper's perspective are actually likely to be obtained by superimposing different keys with different sources, which greatly increases the difficulty of cracking the encrypted information and improves the ability of the encryption method of this application to resist strong computing power cracking.
[0065] Finally, compared with the strict "one-time pad" security coding scheme designed based on information theory, this application effectively reduces the required key length and the requirements for the key algorithm at the cost of minimal security sacrifice of the lowest level information source X1. That is, the key used for encryption does not necessarily have to be the same length as the sum of the lengths of all transmitted data, and the same key can be reused, further reducing the stringent requirements of the entire communication system on the key algorithm, making the encryption algorithm of this application very easy to implement.
[0066] Therefore, the source joint coding encryption method provided in this application is resistant to strong computing power cracking and unauthorized cracking, and is easy to implement, effectively improving the security of the communication system.
[0067] Please see Figure 3 In some embodiments, the method further includes a decryption method applied to the sink end of the communication system, which specifically includes the following steps:
[0068] Step S71: Determine the source encoder corresponding to each channel data according to the received channel data, put each source encoder into the source encoder set, and check whether the number of source encoders is less than or equal to a preset safety threshold.
[0069] Step S72: If the value is less than or equal to the preset security threshold, decryption fails.
[0070] Step S73: If the security threshold is greater than the preset security threshold, the source X1 with the lowest security level is recovered based on the multi-party secret sharing data in the channel data, the decryption level of the source encoder set is calculated, and the decryption level is checked to see if it is greater than 1.
[0071] Specifically, at the receiving end, using the corresponding secret recovery algorithm, X1 can be recovered based on any m+1 pieces of multi-party secret shared data. That is, the set of source encoders whose number of source encoders exceeds the preset security threshold can definitely recover X1.
[0072] Step S74: If the decryption level is equal to 1, then the decryption ends.
[0073] Step S75: If the decryption level is greater than 1, then multiple source encrypted data are obtained based on the source joint coding encryption data in each channel data, and multiple sources with security levels greater than 1 and less than or equal to the decryption level are obtained based on the multiple source encrypted data and the source X1 with the lowest security level.
[0074] Specifically, if the decryption level is greater than 1, it means that among the received channel data, there are other sources with a security level higher than 1. Then, a higher-level source is obtained based on the decrypted source X1 with a security level of 1.
[0075] The above embodiments illustrate the decryption process at the receiving end under the encryption method of this application. Considering the existence of "dishonest" participants within the system who possess partial key information and algorithms, and have the opportunity to analyze and crack the encrypted information of other participants, thus exceeding their authority to decrypt the information of other participants, this application sets that only when the number of source encoders of the channel data obtained by the receiving end exceeds a preset security threshold can the lowest security level source X1 be decrypted, and other sources with higher security levels be decrypted based on source X1. This effectively prevents some eavesdroppers from decrypting the information by only stealing a small portion of the information, thereby exceeding their authority to crack the information of other recipients, and thus ensuring the security of the communication system.
[0076] In some embodiments, the generation of multi-party secret-sharing data based on the lowest security level source X1 includes:
[0077] A multi-party secret distribution algorithm is used to generate L copies of multi-party secret shared data from the lowest security level information source X1.
[0078] The multi-party secret distribution algorithm and the secret recovery algorithm used at the destination are existing technologies, and the specific details of these algorithms will not be elaborated upon in this application.
[0079] The above embodiment uses a multi-party secret distribution algorithm to generate L copies of multi-party secret shared data from source X1, which are then sent as data prefixes for L copies of channel data. This ensures that source X1 can only be decrypted when the destination receives channel data exceeding a preset security threshold, thus preventing dishonest eavesdroppers from unauthorized decryption based on a small portion of the data and improving the security of the communication system.
[0080] In some embodiments, the above-mentioned information sources X1,…,X based on multiple security levels k (1≤k≤S) and array A_E i Multiple decryption levels generate source encrypted data corresponding to each decryption level, which may specifically include:
[0081] array A_E i Sort the multiple decryption levels in the array to obtain array A_E i=[l1,l2,…,l n ].
[0082] The sorting can be from smallest to largest, i.e., l1. <l2<…<l n .
[0083] According to the source He Xinyuan Obtain the encrypted source data corresponding to decryption level l1. According to the source He Xinyuan Obtain the source encrypted data corresponding to decryption level l2 And so on, according to the source He Xinyuan Decryption level l n Corresponding encrypted data from the source
[0084] Among them, the source of information For a source with security level L1, the source... For a source with a security level of l1+1, and so on, the source... For a security level of l n The source of information, the source of information For a security level of l n +1 source, l n +1≤S.
[0085] Specifically, assuming the number of encoders L = 5 and the preset security threshold m = 2, the specific encryption method of this application is implemented as follows:
[0086] First, calculate the number S of source security levels:
[0087]
[0088] Then, according to the (3, 5) secret sharing scheme, using the lowest security level information source X1 as the multi-party shared secret information, L copies of multi-party secret shared data (SS1, SS2, SS3, SS4) are generated. 4, SS5) is used as a data prefix in each of the five encoders.
[0089] For each E i Find all cases that do not contain E i A set of elements with number j (m+1≤j≤L-1).
[0090] The following is a set of encoders that do not contain E1 and whose number of elements exceeds the preset safety threshold of 2:
[0091] {E2,E3,E4},{E2,E3,E5},{E2,E4,E5},{E3,E4,E5},{E2,E3,E4,E5}.
[0092] The following is a set of encoders that do not contain E2 and whose number of elements exceeds the preset safety threshold of 2:
[0093] {E1,E3,E4},{E1,E3,E5},{E1,E4,E5},{E3,E4,E5},{E1,E3,E4,E5}.
[0094] The following is a set of encoders that do not contain E3 and whose number of elements exceeds the preset safety threshold of 2:
[0095] {E1,E2,E4},{E1,E2,E5},{E1,E4,E5},{E2,E4,E5},{E1,E2,E4,E5}.
[0096] The following is a set of encoders that do not contain E4 and whose number of elements exceeds the preset safety threshold of 2:
[0097] {E1,E2,E3},{E1,E2,E5},{E1,E3,E5},{E2,E3,E5},{E1,E2,E3,E5}.
[0098] The following is a set of encoders that do not contain E5 and whose number of elements exceeds the preset safety threshold of 2:
[0099] {E1,E2,E3},{E1,E2,E4},{E1,E3,E4},{E2,E3,E4},{E1,E2,E3,E4}.
[0100] For each E i Calculate the decryption level for each encoder set, sort them in ascending order, and record them in A_E. i Then, the source-coordinated encrypted data M_E is generated. i :
[0101] A_E1={7,8,9,10,15},M_E1=M8||M9||M 10 ||M 11 ||M 16
[0102] A_E2={4,5,6,10,14},M_E2=M5||M6||M7||M 11 ||M 15
[0103] A_E3={2,3,6,9,13},M_E3=M3||M4||M7||M10 ||M 14
[0104] A_E4={1,3,5,8,12},M_E4=M2||M4||M6||M9||M 13
[0105] A_E5={1,2,4,7,11},M_E5=M2||M3||M5||M8||M 12
[0106] The symbol || indicates concatenation. After completing the above steps, SS1 and M_E1 are concatenated together, encrypted with the key, and then input into the first channel via E1. SS2 and M_E2 are concatenated together, encrypted with the key, and then input into the second channel via E2. This process is repeated until SS5 and M_E5 are concatenated together, encrypted with the key, and then input into the fifth channel via E5.
[0107] The above embodiment includes two sources with adjacent security levels within a single encrypted data source. This ensures that decryption must proceed sequentially: source X1 decrypts source X2, which is bound to source X1, and then source X2 decrypts source X3, which is bound to source X2. If any source's encrypted data is missing, decryption cannot continue. This encryption method guarantees successful decryption by a legitimate receiver, while preventing eavesdroppers from unauthorizedly decrypting sources with different security levels based on partial or fragmented information. This enhances the confidentiality of channel data and the security of the communication system.
[0108] In some embodiments, the above is based on the information source He Xinyuan Obtain the encrypted source data corresponding to decryption level l1. According to the source He Xinyuan Obtain the source encrypted data corresponding to decryption level l2 And so on, according to the source He Xinyuan Decryption level l n Corresponding encrypted data from the source Including: the source of information He Xinyuan Perform linear operations to obtain encrypted source data. Source of information He Xinyuan Perform linear operations to obtain encrypted source data. And so on, the source of information He Xinyuan Perform linear operations to obtain encrypted source data.
[0109] In some embodiments, the above linear operation is a modulo-2 addition operation.
[0110] Right now And so on,
[0111] Specifically, at the receiving end, assuming a receiver receives channel data from the third, fourth, and fifth channels, the source encoders are determined to be E3, E4, and E5 based on these three channel data, and the set of source encoders is [E3, E4, E5].
[0112] First, the source X1 is recovered using a multi-party secret recovery algorithm, combined with SS3, SS4, and SS5.
[0113] Then, the encrypted data of each source contained in the jointly encoded encrypted data is extracted as follows:
[0114] M2, M3, M4, M5, M6, M7, M8, M9, M 10 M 12 M 13 M 14
[0115] Calculations show that the decryption level of the source encoder set [E3, E4, E5] is 10. Therefore, based on the encrypted source data and source X1, sources X2 to X can be recovered. 10 ,according to And so on, until X is deciphered. 10 Due to the lack of M 11 Therefore, it is impossible to decrypt X. 11 Therefore, it is impossible to decrypt X. 12 X 13 X 14 This satisfies the decryption level restrictions for this set.
[0116] In this application, M n With the encrypted source X n Equal length, when source X n When M is uniformly random within its range, n No information related to source X will be disclosed. n The relevant content, that is, satisfying H(X) n |M n )=H(X n ), H(X) n-1 |M n )=H(X n-1 If and only if M is acquired simultaneously n and lower-level information source X n-1 X can be solved at this time. n , satisfying H(X)n |M n ,X n-1 ) = 0.
[0117] Generally, analyzing a key can begin with understanding the statistical patterns of the information encrypted by the key. However, as can be seen from the above embodiments, the encrypted information is the XOR of two source contents, and its statistical patterns are fuzzy. This greatly increases the difficulty for eavesdroppers to crack the key, enhances the ability of this application to resist strong computing power cracking, and improves the security of the communication system.
[0118] In some embodiments, the method may further include:
[0119] Before generating multi-party secret-sharing data based on the lowest security level source X1, a pseudo-random bit sequence is used to separate the multiple security levels of sources X1,…,X… k The low-rate information sources in (k=S) are expanded into high-rate information sources so that multiple security level information sources X1,…,X are made available. k The speeds of (k=S) are equal.
[0120] Among them, the pseudo-random bit sequence can be identified and eliminated by a specific algorithm. This is to avoid the padding content being eliminated when two information sources are used in a linear operation, and to avoid leaking the true length of the information.
[0121] The reason for making each source rate equal is that secure joint encoding of sources can be achieved in a working scenario where the source rates are equal. Otherwise, if the longer source is not fully encrypted, for example, if two sources of different lengths perform a bitwise modulo-2 addition operation, a portion of the longer source will not be added to the other source and will remain unencrypted, posing a risk of information leakage.
[0122] The optimal application scenario for this application is when all information sources already have the same rate, since there is no need to add redundancy to the information sources. In this scenario, applying this application achieves optimal coding efficiency, and the relevant proof is as follows:
[0123] When the rates of all information sources are equal, it is used to solve for X. n Encrypted information M n (2≤n≤S) The distribution of the encrypted source data generated by each encoder has the following lower bound: If any source encoder set at the sink end has k elements (k>m+1), it can necessarily convert X... n Solve for M, then n M must exist in the source-coordinated encrypted data of at least L-k+1 encoders to ensure that M is included in any k encoders. n X that meets the above conditions n The total number is Iterate through k (from m+2 to L), sum the results to solve for X. n Encrypted information M n The minimum total amount of data for (2≤n≤S) is:
[0124]
[0125] Dividing by L, we get the minimum total data volume for a single encoder:
[0126]
[0127] In array A_E i During the generation process, all variables that do not contain E should be selected. i A set of elements j has a total of There are several ways to choose an array (m+1≤j≤L-1). Array A_E i The length is calculated as follows:
[0128]
[0129] ArrayA_E i The length is M, which is the encrypted information in the data generated by a single encoder. n Total amount of data.
[0130] Let j = k-1, then:
[0131]
[0132] According to the formula for combinations, we can obtain:
[0133]
[0134]
[0135] It is evident that, given the same data rate, the encryption algorithm requires the least amount of data, thus achieving optimal efficiency.
[0136] The above-mentioned use of pseudo-random bit sequences to fill low-rate information sources ensures that the information source rates are equal for all security levels. The use of pseudo-random bit sequences instead of other fillers is to prevent the filler content from being removed when generating encrypted information source data, which would lead to the leakage of the true length of the information and ensure the confidentiality of the encrypted information source data and the security of the communication system.
[0137] Please see Figure 4 Another embodiment of this application provides a source joint coding encryption device, which is applied to a communication system. Specifically, the device may include:
[0138] The source security level calculation module 101 is used to calculate the source security level number S based on the preset security threshold and the number of encoders N in the communication system.
[0139] The shared data generation module 102 is used to generate multi-party secret shared data based on the information source X1 with the lowest security level.
[0140] Decryption level calculation module 103 is used to obtain the decryption level without encoder E. i For multiple encoder sets (1≤i≤L) with a number of encoders greater than a preset security threshold, calculate the decryption level of each encoder set and store each decryption level in array A_E. i .
[0141] The source encryption data generation module 104 is used to generate encrypted data based on multiple security levels of source X1,…,X k (1≤k≤S) and array A_E i Multiple decryption levels generate source encrypted data corresponding to each decryption level.
[0142] The joint coding module 105 is used to concatenate multiple encrypted data sources to form the joint encoded encrypted data M_E. i .
[0143] Channel data generation module 106 is used to encode and encrypt multi-party secret shared data and source jointly encoded encrypted data M_E. i After concatenation, the data is encrypted using a key algorithm to obtain channel data, which is then input into encoder E. i The corresponding channel.
[0144] The above embodiment provides a source joint coding encryption device in which the multi-party secret shared data generated by the lowest-level source X1 is used as the prefix of each channel data. The nature of the multi-party secret shared data determines that the source X1 can only be decrypted based on a sufficient amount of multi-party secret shared data after obtaining channel data exceeding a preset security threshold. This avoids the possibility that some dishonest eavesdroppers can obtain a small portion of channel data and then decrypt it without authorization. Furthermore, this application further uses key encryption for the multi-party secret shared data, making it difficult for eavesdroppers to decrypt the source X1 even if they steal a sufficient amount of channel data.
[0145] Secondly, this application makes the key and source data mutually hidden and obfuscated: the source changes over time, so from the perspective of an eavesdropper, even if two channel data are encrypted with the same key, the real-time changes in the source will make the two channel data appear to use two different keys; and from the perspective of an eavesdropper, two keys that appear to be exactly the same are actually likely to be obtained by superimposing different keys with different sources, which greatly increases the difficulty of cracking encrypted information and improves the ability of the encryption device of this application to resist strong computing power cracking.
[0146] Finally, compared with the strict "one-time pad" security coding scheme designed based on information theory, this application effectively reduces the required key length and the requirements for the key algorithm at the cost of minimal security sacrifice of the lowest level information source X1. That is, the key used for encryption does not necessarily have to be the same length as the sum of the lengths of all transmitted data, and the same key can be reused, further reducing the stringent requirements of the key algorithm for the entire communication system, making the encryption device of this application very easy to implement.
[0147] Therefore, the source joint coding encryption device provided in this application is resistant to strong computing power cracking and unauthorized cracking, and is easy to implement, effectively improving the security of the communication system.
[0148] The specific limitations of the source joint coding encryption device provided in this embodiment can be found in the embodiment of the source joint coding encryption method described above, and will not be repeated here. Each module in the above-described source joint coding encryption device can be implemented entirely or partially through software, hardware, or a combination thereof. Each module can be embedded in or independent of the processor in a computer device in hardware form, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0149] This application provides a computer device that may include a processor, memory, network interface, and database connected via a system bus. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The network interface communicates with external terminals via a network connection. When the computer program is executed by the processor, it causes the processor to perform the steps of a source joint encoding encryption method as described in any of the above embodiments.
[0150] The working process, working details, and technical effects of the computer device provided in this embodiment can be found in the embodiment of a source joint coding encryption method described above, and will not be repeated here.
[0151] This application provides a computer-readable storage medium storing a computer program thereon. When the computer program is executed by a processor, it implements the steps of a source joint coding encryption method as described in any of the above embodiments. The computer-readable storage medium refers to a carrier for storing data, and may include, but is not limited to, floppy disks, optical disks, hard disks, flash memory, USB flash drives, and / or memory sticks. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
[0152] The working process, working details, and technical effects of the computer-readable storage medium provided in this embodiment can be found in the embodiment of a source joint coding encryption method described above, and will not be repeated here.
[0153] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0154] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0155] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.
Claims
1. A source joint coding encryption method, characterized in that, The method includes: Based on the preset safety threshold and the number of encoders in the communication system The number of information source security levels was calculated. ; According to the lowest security level of the source Generate secret shared data among multiple parties; Get without encoder (1≤ ≤ For multiple encoder sets where the number of encoders exceeds the preset security threshold, the decryption level of each encoder set is calculated, and each decryption level is placed into an array. ; Based on multiple security levels of information sources (1≤ ≤ ) and the array Multiple decryption levels in the array generate source encrypted data corresponding to each decryption level; specifically, the array... The array is obtained by sorting the multiple decryption levels in the array. According to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source According to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source And so on, according to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source ; The encrypted data from multiple sources are concatenated to form jointly encoded encrypted data from the sources. ; The multi-party secret shared data and the source data are jointly encoded and encrypted. After concatenation, the data is encrypted using a key algorithm to obtain channel data, which is then input into the encoder. The corresponding channel.
2. The method according to claim 1, characterized in that, The method further includes a decryption method applied to the receiver of the communication system, the decryption method comprising: Based on the received channel data, determine the source encoder corresponding to each channel data, put each source encoder into the source encoder set, and detect whether the number of source encoders is less than or equal to the preset security threshold; If the value is less than or equal to the preset security threshold, decryption fails. If the value exceeds the preset security threshold, then the source with the lowest security level is recovered based on the multi-party secret sharing data in the channel data. Calculate the decryption level of the source encoder set and detect whether the decryption level is greater than 1; If the decryption level is equal to 1, then decryption is complete; If the decryption level is greater than 1, then multiple source encrypted data are obtained based on the source joint coding encryption data in each of the channel data, and the multiple source encrypted data and the source with the lowest security level are then used to obtain the source encrypted data. Multiple information sources with security levels greater than 1 and less than or equal to the decryption level are obtained.
3. The method according to claim 1, characterized in that, The source based on the lowest security level Generate secret shared data among multiple parties, including: The lowest security level information source is distributed using a multi-party secret distribution algorithm. generate Multiple parties secretly share data.
4. The method according to claim 1, characterized in that, According to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source According to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source And so on, according to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source ,include: The source of information and the aforementioned information source Perform linear operations to obtain the encrypted source data. The source of information and the aforementioned information source Perform linear operations to obtain the encrypted source data. ; and so on, the information source and the aforementioned information source Perform linear operations to obtain the encrypted source data. .
5. The method according to claim 4, characterized in that, The linear operation is a modulo-2 addition operation.
6. The method according to claim 1, characterized in that, The method further includes: Based on the source of the minimum security level Before generating the multi-party secret shared data, a pseudo-random bit sequence is used to separate the information sources with multiple security levels. ( = The low-rate information source in the above-mentioned information source is expanded into a high-rate information source to enable multiple security levels of the information source. ( = The rates are equal.
7. A source joint coding encryption device, characterized in that, The device, used in a communication system, includes: The source security level calculation module is used to calculate the security level based on a preset security threshold and the number of encoders in the communication system. The number of information source security levels was calculated. ; The shared data generation module is used to generate data based on sources with the lowest security level. Generate secret shared data among multiple parties; The decryption level calculation module is used to obtain the decryption level without the encoder. (1≤ ≤ For multiple encoder sets where the number of encoders exceeds the preset security threshold, the decryption level of each encoder set is calculated, and each decryption level is placed into an array. ; The source encryption data generation module is used to generate data based on sources with multiple security levels. (1≤ ≤ ) and the array Multiple decryption levels in the array generate source encrypted data corresponding to each decryption level; specifically, the array... The array is obtained by sorting the multiple decryption levels in the array. According to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source According to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source And so on, according to the source He Xinyuan Obtain the decryption level Corresponding encrypted data from the source ; The joint encoding module is used to concatenate multiple encrypted data sources to form jointly encoded encrypted data. ; The channel data generation module is used to jointly encode and encrypt the multi-party secret shared data and the source data. After concatenation, the data is encrypted using a key algorithm to obtain channel data, which is then input into the encoder. The corresponding channel.
8. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 6.