CN104883257B - A kind of big data encryption method - Google Patents

A kind of big data encryption method Download PDF

Info

Publication number
CN104883257B
CN104883257B CN201410258583.8A CN201410258583A CN104883257B CN 104883257 B CN104883257 B CN 104883257B CN 201410258583 A CN201410258583 A CN 201410258583A CN 104883257 B CN104883257 B CN 104883257B
Authority
CN
China
Prior art keywords
temp
seed
array
encrypted
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410258583.8A
Other languages
Chinese (zh)
Other versions
CN104883257A (en
Inventor
梁庆生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201410258583.8A priority Critical patent/CN104883257B/en
Publication of CN104883257A publication Critical patent/CN104883257A/en
Application granted granted Critical
Publication of CN104883257B publication Critical patent/CN104883257B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

The invention discloses a kind of encryption method of big data, first to first grouping plaintext N1It is encrypted;Then to second grouping plaintext N2It is encrypted;Then to the 3rd grouping plaintext N3It is encrypted;Second is carried out to intermediate ciphertext M to encrypt;The encryption method of offer can accomplish one-time pad simultaneously, add encryption intensity;Solves the problems, such as enciphering rate.

Description

A kind of big data encryption method
Technical field
The present invention relates to the encryption methods of data, and in particular to a kind of encryption method of big data.
Background technology
Traditional encryption method, such as encryption of (3DES, AES or SM2 scheduling algorithm) for big data quantity, all there is encryptions Slow-footed shortcoming.
The content of the invention
It is an object of the invention to:For the drawbacks described above of the prior art, a kind of fast big data of enciphering rate is provided Encryption method.
Encryption method is as follows:
1. new encryption method uses block encryption, per group encryption length for a byte or two bytes and more than, lead to Often use a byte;
2. the cipher mode of each grouped data is each grouped data and numerical value XnAnd Yn(Hereafter referred to collectively as password XN,And Yn)Carry out exclusive or
3. the password X with each grouped data exclusive ornAnd YnAll it is different
4. the password X of two adjacent groupsnAnd X(n+1)There are uncertainty relations
5. the password Y of two adjacent groupsnAnd Y(n+1)There are uncertainty relations
6. password XnAnd YnValue determine that this group of data are referred to as to exchange key by one group of data
7. it exchanges key to be made of seed one (s1), seed two (s2), interchange box one (A) and interchange box two (B)
8. every time during encryption, exchange what key was all randomly generated, i.e. seed one (s1), seed two (s2), interchange box one (A) and the data in interchange box two (B) are all random, all random generations of encryption every time
9. interchange box A and B can be the long shaping matrixes of a j*1, j>=256, it is usually 256, which can also see Work is an one-dimension array for having j long shaping elements, is mathematically referred to as array A and array B below
10. seed one (s1), seed two (s2) are typically sized to a long shaping
11. password XnIt is determined by seed one (s1) and interchange box one (A)
12. after seed one (s1) often carries out a block encryption, all carrying out linear transformation, mapping mode can be linear same Remaining mode or nonlinear mode, are introduced in a manner of linear congruence below
After 13. interchange box one (A) often carries out Z block encryption, all elements in interchange box all carry out linear transformation, become The mode of changing can be the mode or nonlinear way of linear congruence, be introduced below in a manner of linear congruence(Z>=1, Z<=A's Element number is usually 256)
14. it is placed into after the data remainder in interchange box one (A) in an interim interchange box(temp_A);
15. XnIt is the value of the s1 element in temp_A
16. password YnIt is determined by seed two (s2) and interchange box two (B)
17. after seed two (s2) often carries out a block encryption, all carrying out linear transformation, mapping mode can be linear same Remaining mode
After 18. interchange box two (B) often carries out Z block encryption, all elements in interchange box all carry out linear transformation, become The mode of changing can be the mode of linear congruence,(Z>=1, Z<The element number of=B is usually 256)
19. it is placed into after the data remainder in interchange box two (B) in an interim interchange box(temp_B);
20.YnIt is the s in temp_B2The value of a element
21. the mode that the transmission for exchanging key generates whens being transmitted or waited using encryption.
The advantages of the method for the present invention:
Encryption method provided by the invention can accomplish one-time pad simultaneously, add encryption intensity;Solves encryption speed The problem of spending.
Description of the drawings
Fig. 1 is encryption principle figure of the present invention.
Specific embodiment
The encryption principle figure of this method is as shown in Figure 1:
" ^ " in figure represents XOR operation
Af1 (x) calculating processes are as follows:
1st, s1=Af2 (s1) generates next random number according to s1
2nd, temp_s1=Af3 (s1) takes the remainder of s1 divided by A array sizes
3rd, the value of temp_s1 lower target elements in temp_A arrays is returned
Af2 (x) calculating processes are as follows:For purpose for generating next random number, method can be linear congruence, and citing is such as Under:
#define RANDOM_MAX 0x7FFFFFFF
static long do_rand(unsigned long *value)
{
long quotient, remainder, t;
quotient = *value / 127773L;
remainder = *value % 127773L;
t = 16807L * remainder - 2836L * quotient;
if (t <= 0)
t += 0x7FFFFFFFL;
return ((*value = t) % ((unsigned long)RANDOM_MAX + 1));
}
Af3 (x) calculating processes are as follows:Purpose is used for remainder
temp_x=(BYTE)x;It removes with the remainder after 256, it is assumed that the size of A arrays is 256
The generation of temp_A arrays:
Temp_A is generated according to A, after often carrying out Z block encryption, just generates a temp_A according to A, method is:
1st, A [n]=Af2 (A [n]) generates next random number according to A [n] and is assigned to A [n]
2nd, temp_A [n]=Af3 (A [n]) takes A [n] divided by the remainder of A array sizes
Bf1 (x) calculating processes are as follows:
3rd, s2=Bf2 (s2) generates next random number according to s2
4th, temp_s2=Bf3 (s2) takes the remainder of s2 divided by B array sizes
5th, the value of temp_s2 lower target elements in temp_B arrays is returned
Bf2 (x) calculating processes are as follows:For purpose for generating next random number, method can be linear congruence
x=(((x * 1103515245 + 12345)) & 0x7fffffff);,
Bf3 (x) calculating processes are as follows:Purpose is used for remainder
temp_x=(BYTE)x;It removes with the remainder after 256, it is assumed that the size of B arrays is 256
The generation of temp_B arrays:
Temp_B is generated according to B, after often carrying out Z block encryption, just generates a temp_B according to B, method is:
1st, B [n]=Bf2 (B [n]) generates next random number according to B [n] and is assigned to B [n]
2nd, temp_B [n]=Bf3 (B [n]) takes B [n] divided by the remainder of B array sizes
Ciphering process:
Equipped with a certain big grouping clear data N1 , N2 , N3 ... ... Nx, the length of each grouped data is a word Section, encryption method are as follows:
First, first time encryption is carried out to plaintext N
1st, first to first grouping plaintext N1It is encrypted
Array A is converted, generates new random array A:A [i]=Af2 (A [i]), method can be linear congruence Method, wherein i are from 1 to Z, are not repeated below.
Array temp_A is generated, A [n] divided by the remainder of A array sizes is taken, is then placed into temp_A:temp_A[i] =Af3(A[i])
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method can be linear Congruence method
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1)
Obtain Crypted password X1 , i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X1 = temp_A[temp_s1]
By plaintext N1With X1Xor operation is carried out, draws intermediate ciphertext M1
2nd, then to second grouping plaintext N2It is encrypted
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method can be linear Congruence method
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1)
Obtain Crypted password X2 , i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X2 = temp_A[temp_s1]
By plaintext N2With X2Xor operation is carried out, draws intermediate ciphertext M2
3rd, then to the 3rd grouping plaintext N3It is encrypted
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method can be linear Congruence method
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1)
Obtain Crypted password X3 , i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X3 = temp_A[temp_s1]
By plaintext N3With X3Xor operation is carried out, draws intermediate ciphertext M3
4th, when being encrypted into the Z grouping(Z>=1, Z<The element number of=A is usually 256)First carry out array A's Conversion, then be encrypted, as soon as being often encrypted into a size for Z groupings, carry out the conversion of an array A.
5th, and so on, until being encrypted into NxDraw intermediate ciphertext MX
2nd, second is carried out to intermediate ciphertext M to encrypt
1st, first to first intermediate ciphertext M1It is encrypted
Array B is converted, generates new random array B:B [i]=Bf2 (B [i]), method can be linear congruence Method, wherein i are from 1 to Z, are not repeated below.
Array temp_B is generated, B [i] divided by the remainder of B array sizes is taken, is then placed into temp_B:temp_B[i] =Bf3(B[i])
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method can be linear Congruence method
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by A array sizes, and method is temp_s2=Bf3 (s2)
Obtain Crypted password Y1 , i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y1 = temp_B[temp_s2]
By plaintext N1With Y1Xor operation is carried out, draws ciphertext C1
2nd, then to second intermediate ciphertext M2It is encrypted
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method can be linear Congruence method
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by B array sizes, and method is temp_s2=Bf3 (s2)
Obtain Crypted password Y2 , i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y2 = temp_B[temp_s2]
By plaintext N2With Y2Xor operation is carried out, draws ciphertext C2
Then to the 3rd intermediate ciphertext M3It is encrypted
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method can be linear Congruence method
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by B array sizes, and method is temp_s2=Bf3 (s2)
Obtain Crypted password Y3 , i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y3 = temp_B[temp_s2]
By plaintext N3With Y3Xor operation is carried out, draws ciphertext C3
3. when being encrypted into the Z grouping(Z>=1, Z<The element number of=B is usually 256)First carry out array B's Conversion, then be encrypted, as soon as being often encrypted into a size for Z groupings, carry out the conversion of an array B;
4. and so on, until being encrypted into MxDraw ciphertext CX
Decrypting process:
Equipped with a certain big grouping ciphertext data C1 , C2 , C3 ... ... Cx, the length of each grouped data is a word Section, decryption method are as follows:
One, which is obtained, exchanges key, i.e. one (s of random seed1), two (s of random seed2), interchange box one (A) and interchange box two (B)
Due to one (s of random seed1), two (s of seed2), interchange box one (A) and interchange box two (B)(Exchange key)Every time All it is random, so exchange key will be obtained when decrypting every time, obtains exchange key, method is as follows:
1. encryption transmission, encryption side sends solution to using symmetry algorithm or asymmetric arithmetic to exchanging after key is encrypted Close side
It is so-called to generate whens waiting identical 2. generate identical exchange key whens using etc., refer to that encryption side and decryption side are all deposited In identical such a equipment(Hereafter referred to collectively as key generation device), the two equipment can generate identical in synchronization It is random exchange key and record in a period of time these exchange keys, the key generation device of use encryption side of encryption side At a time the exchange key of (t) generation is sent to decryption side to being encrypted in plain text, while by (t), decryption side according to(t) Identical exchange key is found in the key generation device of decryption side corresponding ciphertext is decrypted.
2nd, first time decryption first is carried out to ciphertext:
1. first to first grouping ciphertext C1It is decrypted, draws intermediate ciphertext
Array B is converted, generates new random array B:B [i]=Bf2 (B [i]), method can be linear congruence Method, wherein i are from 1 to Z, are not repeated below.
Array temp_B is generated, B [i] divided by the remainder of B array sizes is taken, is then placed into temp_B:temp_B[i] =Bf3(B[i])
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method can be linear Congruence method
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by A array sizes, and method is temp_s2=Bf3 (s2)
Obtain clear crytpographic key Y1 , i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y1 = temp_B[temp_s2]
By ciphertext C1With Y1Xor operation is carried out, draws intermediate ciphertext M1
2nd, then to second grouping ciphertext C2It is encrypted
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method can be linear Congruence method
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by B array sizes, and method is temp_s2=Bf3 (s2)
Obtain clear crytpographic key Y2 , i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y2 = temp_B[temp_s2]
By ciphertext C2With Y2Xor operation is carried out, draws intermediate ciphertext M2
Then to the 3rd grouping ciphertext C3It is encrypted
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method can be linear Congruence method;
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by B array sizes, and method is temp_s2=Bf3 (s2)
Obtain clear crytpographic key Y3 , i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y3 = temp_B[temp_s2];
By ciphertext C3With Y3Xor operation is carried out, draws intermediate ciphertext M3
3. when decryption is to during the Z grouping(Z>=1, Z<The element number of=B is usually 256)First carry out array B's Conversion, then be decrypted, as soon as often decrypting to a size for Z groupings, carry out the conversion of an array B;
4. and so on, until C is arrived in decryptionxDraw intermediate ciphertext MX
3rd, second is carried out to intermediate ciphertext M to decrypt
1st, is first to first intermediate ciphertext M1It is decrypted
Array A is converted, generates new random array A:A [i]=Af2 (A [i]), method can be linear congruence Method, wherein i are from 1 to Z, are not repeated below.
Array temp_A is generated, A [n] divided by the remainder of A array sizes is taken, is then placed into temp_A:temp_A[i] =Af3(A[i])
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method can be linear Congruence method
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1)
Obtain clear crytpographic key X1 , i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X1 = temp_A[temp_s1]
By intermediate ciphertext M1With X1Xor operation is carried out, draws plaintext C1
2. then to second intermediate ciphertext M2It is decrypted
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method can be linear Congruence method
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1)
Obtain clear crytpographic key X2 , i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X2 = temp_A[temp_s1]
By intermediate ciphertext M2With X2Xor operation is carried out, draws plaintext C2
3. then to the 3rd intermediate ciphertext M3It is decrypted
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method can be linear Congruence method
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1)
Obtain clear crytpographic key X3 , i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X3 = temp_A[temp_s1]
By intermediate ciphertext M3With X3Xor operation is carried out, draws plaintext C3
4. when decryption is to during the Z grouping(Z>=1, Z<The element number of=A is usually 256)First carry out array A's Conversion, then be decrypted, as soon as often decrypting to a size for Z groupings, carry out the conversion of an array A
5. and so on, until M is arrived in decryptionxDraw plaintext CX
Principle proves:
Theorem one, it is known that ciphertext is asked in plain text, it is necessary to seek XnAnd YnAccording to the principle of front, ciphertext CnIt is Nn^Xn^Yn Go out, i.e. Cn=Nn^Xn^YnIf Kn= Cn^ Nn, draw formula Kn=Xn^YN,
Theorem two, when ciphertext length is less than Z, Z is usually 256, the X between each groupingnWith each YnWithout certainty Contact.
It proves as follows:Known X n =temp_A [temp_s1], temp_s1=Af3 (s1), and known temp_A [i]=Af3 (A [i]), draws X n =Af3 (A [Af3 (s1)]), it is seen that each X n It is determined by random number s1 and random array A.It is so each A XnBetween there is no inevitable contact.Same principle can be with each YnBetween there is no inevitable contact.
Theorem three, it is known that ciphertext C and plaintext Nn can not release temp_s1 and temp_s2.
It proves as follows:According to theorem one:Kn=Xn^Yn, temp_s1 and temp_s2 do not participate in computing directly, so According to Kn or Xn or Yn, ignorant releases temp_s1 and temp_s2.
Theorem four, it is known that temp_s1 counter can not release s1,
It proves as follows:Temp_s1=Af3 (s1), i.e. temp_s1+P*256=s1, P and s1 are unknown number, so known Temp_s1 counter can not release s1.
Theorem five, it is known that multiple temp_s1 counter can not release s1,
It proves as follows:According to theorem four, temp_s11 +P1 *256=s11 , temp_s12 +P2 *256=s12,, again According to principle above:s11 With s12 It is congruence relations, therefore s11 =Q *s12 + R, it is seen that have in three equations 6 it is unknown Number, so known multiple temp_s1, counter can not release s1.
Theorem six, it is known that multiple Xn counter can not release A,
Method of proof is same as above.
Theorem seven, it is known that multiple Yn counter can not release B,
Method of proof theorem five.
Theorem eight, when ciphertext number is less than Z, Z is usually 256, can not be released in plain text according to ciphertext is counter.
It proves as follows:Described in root encryption principle 8:Every time during encryption, exchange what key was all randomly generated, further according to theorem Two:When ciphertext length is less than Z, Z is usually 256, the X between each groupingnWith each YnWithout inevitable contact, it is fixed to draw Equation K in reason onen=Xn^YN,It is an independent equation, and by one K of theoremn=Xn^YN,It understands, it is known that KN,It can not be obtained XnAnd Yn
Theorem nine, temp_s1n With temp_s1 (n+1) Between relation only it is related to random seed s1.
It proves as follows:Known temp_s1n=Af3 (s1), new_s1==Af2 (s1), temp_s1 (n+1) = Af3(new_ s1), temp_s1 (z+1) =Af3 (Af2 (s1)), it is seen that temp_s1n With temp_s1 (n+1) Between relation only with it is random Seed s1 is related
Theorem ten, XnWith X(n+1)Between relation only it is related to random array A and random seed s1.
Prove that principle is same as above.
Theorem 11, YnWith Y(n+1)Between relation only it is related to random array B random seeds s2.
Prove principle with theorem nine.
Theorem 12, using enumerating the corresponding X of a certain ciphertextnAnd Yn, the method for tem_A, temp_B can not draw another The corresponding plaintext of ciphertext.
It proves as follows:According to quantitative two, each X nAnd YnBy random number s1, s2 and random array A, B determine, and root According to theorem four, theorem five, theorem six, theorem seven understands, it is known that a certain X n And YnRandom number s1, s2 and random number can not be released Group A, B, so using enumerating the corresponding X of a certain ciphertextnAnd Yn, the method for tem_A, temp_B can not draw another ciphertext pair The plaintext answered.
Theorem 13, when ciphertext number is Z+1, Z is usually 256, can not be released in plain text according to ciphertext is counter.
It proves as follows:According to theorem 12, theorem nine, theorem ten, theorem 11, it is desirable that go out XnWith X(n+1) Between pass System, it is necessary to know random array A, B and random seed s1, s2, and A, B, s1, s2 are unknown and random, so in A, It, can be by the equation K in theorem one in the case that B, s1, s2 are unknown and randomn=Xn^YnRegard an independent side as Formula, and by one K of theoremn=Xn^YN,It understands, it is known that KN,X can not be obtainednAnd Yn

Claims (1)

1. a kind of encryption method of big data, it is characterised in that:This method is encrypted based on following principle:Data are used and are divided The mode of group is encrypted, and every group of data encryption length is a byte;The cipher mode of each grouped data is each grouping Data carry out the password Xn and Yn of exclusive or and each grouped data exclusive or with password Xn and Yn (hereafter referred to collectively as password Xn and Yn) All it is different;There are uncertainty relations by the password Xn and X (n+1) of two adjacent groups;Password Yn and the Y (n+ of two adjacent groups 1) there are uncertainty relations;The value of password Xn and Yn are determined that this group of data are referred to as to exchange key by one group of data:
The exchange key is made of seed one (s1), seed two (s2), interchange box one (A) and interchange box two (B);Encryption every time When, exchange what key was all randomly generated, i.e., in seed one (s1), seed two (s2), interchange box one (A) and interchange box two (B) Data be all random, all random generation of encryption every time;Interchange box A and B are the long shaping matrixes of a j*1, j>=256, The matrix can also regard an one-dimension array for having j long shaping elements as, mathematically be referred to as array A and array below B;Seed one (s1), the size of seed two (s2) are a long shaping;
The password XnIt is determined by seed one (s1) and interchange box one (A);After seed one (s1) often carries out a block encryption, all Linear transformation is carried out, mapping mode is the mode of linear congruence or nonlinear mode;
After the interchange box one (A) often carries out Z block encryption, all elements in interchange box all carry out linear transformation, conversion Mode is the mode or nonlinear way of linear congruence, is introduced below in a manner of linear congruence, Z>=1, Z<The element of=A Number, element number 256;
It is placed into after data remainder in the interchange box one (A) in an interim interchange box (temp_A);
Wherein:XnIt is the value of the s1 element in temp_A;Password YnIt is determined by seed two (s2) and interchange box two (B);Seed After two (s2) often carry out a block encryption, linear transformation is all carried out, mapping mode is the mode of linear congruence;
After interchange box two (B) often carries out Z block encryption, all elements in interchange box all carry out linear transformation, mapping mode It is the mode of linear congruence, Z>=1, Z<The element number of=B, element number 256;
It is placed into after data remainder in interchange box two (B) in an interim interchange box (temp_B);Wherein:YnIt is in temp_B The S2 element value;Exchange the mode that the transmission of key is generated using encryption transmission or whens waiting;
Based on above-mentioned principle, encryption method step of the present invention is as follows:Equipped with a certain big grouping clear data N1, N2, N3... ... Nx, The length of each grouped data is a byte, and encryption method is as follows:First)
Plaintext N is carried out encryption 1 for the first time) first to first grouping plaintext N1It is encrypted:
Array A is converted, generates new random array A:A [i]=Af2 (A [i]), method is linear congruential method, wherein i It is from 1 to Z, is not repeated below;
Array temp_A is generated, A [n] divided by the remainder of A array sizes is taken, is then placed into temp_A:Temp_A [i]= Af3(A[i])
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method are linear congruential methods;
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is temp_s1=Af3 (s1);
Obtain Crypted password X1, i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X1=temp_A [temp_s1];
By plaintext N1With X1Xor operation is carried out, draws intermediate ciphertext M1
2), then to second grouping plaintext N2It is encrypted
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method are linear congruential methods;
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is
Temp_s1=Af3 (s1);
Obtain Crypted password X2, i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X2=temp_A [temp_s1];
By plaintext N2With X2Xor operation is carried out, draws intermediate ciphertext M2;3), then to the 3rd grouping plaintext N3It is encrypted
One s1 of random seed is converted, generates new random seed s1:S1=Af2 (s1), method are linear congruential methods;
It is interim seed temp_s1 to take, and takes the remainder of s1 divided by A array sizes, and method is
Temp_s1=Af3 (s1);
Obtain Crypted password X3, i.e., the values of temp_s1 in temp_A arrays lower target elements, method is:X3=temp_A [temp_s1];
By plaintext N3With X3Xor operation is carried out, draws intermediate ciphertext M3
When be encrypted into the Z grouping when (Z>=1, Z<The element number of=A, element number 256) first carry out array A's Conversion, then be encrypted, as soon as being often encrypted into a size for Z groupings, carry out the conversion of an array A;
And so on, until being encrypted into NxDraw intermediate ciphertext MX;Two), intermediate ciphertext M is carried out second encryption 1), it is right first First intermediate ciphertext M1It is encrypted:
Array B is converted, generates new random array B:B [i]=Bf2 (B [i]), method is linear congruential method, wherein i It is from 1 to Z, is not repeated below;
Array temp_B is generated, B [i] divided by the remainder of B array sizes is taken, is then placed into temp_B:Temp_B [i]= Bf3(B[i]);
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method are linear congruential methods;
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by A array sizes, and method is
Temp_s2=Bf3 (s2);
Obtain Crypted password Y1, i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y1=temp_B [temp_s2];
By plaintext N1With Y1Xor operation is carried out, draws ciphertext C1;2) it is, then right
Second intermediate ciphertext M2It is encrypted
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method are linear congruential methods;
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by B array sizes, and method is
Temp_s2=Bf3 (s2);
Obtain Crypted password Y2, i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y2=temp_B [temp_s2];
By plaintext N2With Y2Xor operation is carried out, draws ciphertext C23)
Then to the 3rd intermediate ciphertext M3It is encrypted
Two s2 of random seed is converted, generates new random seed s2:S2=Bf2 (s2), method are linear congruential methods;
It is interim seed temp_s2 to take, and takes the remainder of s2 divided by B array sizes, and method is
Temp_s2=Bf3 (s2);
Obtain Crypted password Y3, i.e., the values of temp_s2 in temp_B arrays lower target elements, method is:Y3=temp_B [temp_s2];
By plaintext N3With Y3Xor operation is carried out, draws ciphertext C3
When be encrypted into the Z grouping when (Z>=1, Z<The element number of=B, element number 256) first carry out array B's Conversion, then be encrypted, as soon as being often encrypted into a size for Z groupings, carry out the conversion of an array B;
4), and so on, until being encrypted into MxDraw ciphertext CX
CN201410258583.8A 2014-06-12 2014-06-12 A kind of big data encryption method Active CN104883257B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410258583.8A CN104883257B (en) 2014-06-12 2014-06-12 A kind of big data encryption method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410258583.8A CN104883257B (en) 2014-06-12 2014-06-12 A kind of big data encryption method

Publications (2)

Publication Number Publication Date
CN104883257A CN104883257A (en) 2015-09-02
CN104883257B true CN104883257B (en) 2018-05-25

Family

ID=53950597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410258583.8A Active CN104883257B (en) 2014-06-12 2014-06-12 A kind of big data encryption method

Country Status (1)

Country Link
CN (1) CN104883257B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107292197B (en) * 2017-06-29 2020-02-07 北京京东尚科信息技术有限公司 Data encryption method, data decryption method, encryption device and decryption device
CN107800534A (en) * 2017-10-16 2018-03-13 北京连山时代科技有限公司 A kind of data ciphering method and decryption method based on multi-chain circuit transmission
CN109787750A (en) * 2019-03-12 2019-05-21 广州合众互联信息技术有限公司 Decoding method, device, equipment and the storage medium of communication message
CN110489978A (en) * 2019-07-09 2019-11-22 中国人民解放军国防科技大学 A kind of file encryption-decryption method
CN116894273B (en) * 2023-09-11 2023-11-21 四川建设网有限责任公司 File encryption method, decryption method, equipment and medium based on exclusive or sum remainder

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025484A (en) * 2010-12-17 2011-04-20 北京航空航天大学 Block cipher encryption and decryption method
CN102469344A (en) * 2010-11-16 2012-05-23 腾讯科技(深圳)有限公司 Video stream encryption and decryption method, video stream encryption and decryption device, communication terminal and storage terminal
CN103684761A (en) * 2013-12-25 2014-03-26 广西宝恒电子科技有限公司 Coding and decoding method
CN103716157A (en) * 2013-12-13 2014-04-09 厦门市美亚柏科信息股份有限公司 Grouped multiple-key encryption method and grouped multiple-key encryption device
CN103825699A (en) * 2014-02-13 2014-05-28 南京邮电大学 Storage file parallel chaotic encryption method in cloud computing environment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011150693A (en) * 2009-12-22 2011-08-04 Tani Electronics Corp Information management system, information management method and apparatus, and encryption method and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469344A (en) * 2010-11-16 2012-05-23 腾讯科技(深圳)有限公司 Video stream encryption and decryption method, video stream encryption and decryption device, communication terminal and storage terminal
CN102025484A (en) * 2010-12-17 2011-04-20 北京航空航天大学 Block cipher encryption and decryption method
CN103716157A (en) * 2013-12-13 2014-04-09 厦门市美亚柏科信息股份有限公司 Grouped multiple-key encryption method and grouped multiple-key encryption device
CN103684761A (en) * 2013-12-25 2014-03-26 广西宝恒电子科技有限公司 Coding and decoding method
CN103825699A (en) * 2014-02-13 2014-05-28 南京邮电大学 Storage file parallel chaotic encryption method in cloud computing environment

Also Published As

Publication number Publication date
CN104883257A (en) 2015-09-02

Similar Documents

Publication Publication Date Title
CN104883257B (en) A kind of big data encryption method
EP3688921B1 (en) Method for faster secure multiparty inner product computation with spdz
CN1989726B (en) Method and device for executing cryptographic calculation
CN107005404B (en) Processor apparatus implementing executable white-box mask implementations of cryptographic algorithms
JP6499519B2 (en) Cryptographic scheme for securely exchanging messages and apparatus and system for implementing the scheme
CN109361507A (en) A kind of data ciphering method and encryption equipment
JP2012203182A5 (en)
EP3770751B1 (en) High speed encryption key generating engine
CN107770405A (en) Image encryption method and device
CN106598882A (en) Secure memory data protection method and device
TW201251412A (en) Encryption processing device, encryption processing method, and programme
ITGE20110091A1 (en) METHOD OF ENCRYPTION AND DRAWING
CN102394746B (en) Data transmission method of weighing system based on digital sensor
CN104954362B (en) The encryption and decryption approaches and its device of sequence number
CN104219045B (en) RC4 stream cipher generators
JP5689826B2 (en) Secret calculation system, encryption apparatus, secret calculation apparatus and method, program
CN106921486A (en) The method and apparatus of data encryption
CN111314270B (en) Data encryption and decryption method based on validity period uniform distribution symmetric algorithm
CN102484589A (en) Cryptography by parameterizing on elliptic curve
CN111314053B (en) Data encryption and decryption method
Chugunkov et al. Issues of increasing the efficiency of replacement blocks for cryptoalgorithms round functions
CN108133444A (en) A kind of method of chaos Digital Image Scrambling
Acharya et al. Invertible, involutory and permutation matrix generation methods for hill cipher system
CN102394747A (en) Method for rapidly embedding plaintext on one point of elliptic curve
CN109104270B (en) Untrusted cloud center resource sharing method based on Hill operation and chaos

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant