CN104009835A - File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system - Google Patents

File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system Download PDF

Info

Publication number
CN104009835A
CN104009835A CN201410210132.7A CN201410210132A CN104009835A CN 104009835 A CN104009835 A CN 104009835A CN 201410210132 A CN201410210132 A CN 201410210132A CN 104009835 A CN104009835 A CN 104009835A
Authority
CN
China
Prior art keywords
matrix
cipher key
key matrix
data
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.)
Pending
Application number
CN201410210132.7A
Other languages
Chinese (zh)
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.)
Nanjing Post and Telecommunication University
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing Post and Telecommunication University
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 Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201410210132.7A priority Critical patent/CN104009835A/en
Publication of CN104009835A publication Critical patent/CN104009835A/en
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

The invention provides a file encrypting and decrypting method allowing parallel computing to be conducted in a cloud storage system. According to the method, through a parallel computing mechanism of a cloud computing environment, such as a MapReduce parallel computing technology, grouped encryption is conducted on plaintext data, and through a partitioned matrix multiplication algorithm, encryption of a whole file is finally achieved and the encrypted file is uploaded to the storage system of the cloud computing environment. The method includes five steps of generating an involutory secret key matrix, calculating a computing secret key, partitioning a data file, encrypting data and decrypting the data. In an encryption system initialization process, a modular arithmetic method is adopted, a random secret key matrix is constructed, and the matrix has the characteristic that the matrix is equal to the inverse matrix of the matrix. In a matrix partitioning process, through a boundary division method, each block of parallel computing is determined. In a data encrypting process, through the partition multiplication of the secret key matrix and a plaintext matrix, encryption of the plaintext data is finally achieved. In a decrypting process, according to the property of an involutory matrix, a ciphertext matrix is multiplied by the secret key matrix, mocking up is conducted, and the final encrypted file is obtained.

Description

File encryption decryption method that can parallel computation in a kind of cloud storage system
Technical field
The present invention is directed to the data file safety problem that needs storage in cloud computing environment, a kind of encrypting and decrypting scheme that is applicable to cloud computing environment has been proposed, its thinking is: the file that the owner of data file will be stored in cloud environment is first encrypted, upload to again in the memory space of renting, for user, realize the confidentiality requirement to data.The present invention relates to matrix computations, parallel computing and cloud computing technology, belong to information security field.
Background technology
Large data security field is the hot issue receiving much concern in recent years.On the one hand, data owner is stored in a large amount of data in cloud computing environment, accesses for user.But in these mass data, there are a lot of sensitive datas need to ensure its confidentiality, as privacy information such as positional information, personal identification etc., how to realize the information encryption to data file in this class memory module, realization safety, effective, simple data access control are that the problem that practical application need to solve is moved towards in cloud computing.On the other hand, because file data quantity is large, need to build a kind of fast encryption scheme for large data, and in cloud computing environment, will solve and how can utilize the feature that cloud computing environment can parallel computation, realize the fast parallel encryption of large data.The present invention is exactly for the confidentiality of file data and can concurrency, has proposed a kind of parallel encryption decryption technology that can be applicable to cloud computing environment, and this scheme can effectively improve the enciphering rate of big data quantity.
Method has comprised key submatrix and has generated, computation key matrix, data file piecemeal, the five steps such as data encryption, data deciphering.In encryption system initialization, method adopts modular arithmetic method, has constructed a random key matrix, and this matrix has matrix and equal the feature of its inverse matrix; In deblocking process, the data that will encrypt are divided into matrix form.In data encryption process, by cipher key matrix and plaintext block multiplication of matrices, finally realize the encryption to clear data.Decrypting process is the feature according to involutory matrix, by the product of ciphertext matrix and cipher key matrix, then carries out modulo operation acquisition.
Owing to adopting the computing such as block encryption, make the method proposing can utilize the concurrent technique in cloud computing environment, that realizes encryption method can parallel computation.
Summary of the invention
Goal of the invention: the object of this invention is to provide the parallel encryption decryption method to storage file in a kind of cloud computing environment, realize a kind of parallel encrypting and decrypting scheme by the concurrent technique in conjunction with cloud computing environment and matrix in block form multiplication encryption technology, to improve the encryption/decryption speed of big data quantity.
Technical scheme: the present invention for achieving the above object, adopts following technical scheme:
Step 1: generate the sub-key matrix in scrambled matrix
The exponent number of note cipher key matrix K is N, the integral number power that N is 2, the total N of cipher key matrix 2individual element, is divided into 4 by this cipher key matrix: K 11, K 12, K 21, K 22, the square formation that wherein each order of matrix number is N/2.
K = K 11 K 12 K 21 K 22 N × N - - - ( 1 )
First calculate sub-key matrix K 22in element x ij, 1≤i, j≤N/2, concrete grammar is in integer range (0,127), to get random number as entry of a matrix element x ij, have:
≤ x ij ≤ 127 ( 1 ≤ i , j ≤ N 2 ) - - - ( 2 )
Step 2: computation key matrix K
By antithetical phrase cipher key matrix K 22computing can to generate cipher key matrix be K, computational methods are as follows:
K 11 = - K 22 mod 127 K 12 = ( I + K 22 ) × 2 mod 127 K 21 = ( I + K 11 ) × 1 2 mod 127 - - - ( 3 )
Wherein I is that exponent number is the unit matrix of N/2, K 11be that the inverse operation of submatrix process mould obtains, mould inverse operation concrete grammar is as follows:
Y ij=127-x ij%127, wherein x ij ∈ K 22 , y ij ∈ K 11 , 1 ≤ i , j ≤ N 2 - - - ( 4 )
K 12first to ask unit matrix and K 22and, then to matrix with carry out modulo operation and obtain.
K 21first to ask unit matrix and K 11and, then to matrix with carry out Modulo division and obtain, computing concrete grammar is as follows:
wherein x ij ∈ K 11 + I z ij ∈ K 21 , 1 ≤ i , j ≤ N 2 - - - ( 5 )
By calculating the value of each element in each piece submatrix that can calculate respectively cipher key matrix.Four sub-matrix group can be obtained to cipher key matrix K altogether.
Step 3: data file encryption is carried out to piecemeal
The source data file that will encrypt is carried out to the partitioning of matrix, make each piece can be independently and cipher key matrix carry out parallel encryption computing, ensure the concurrency of ciphering process.The matrix P that the data file row that will encrypt is M × N for dimension, if length is not expressly the integral multiple of N, fills with 0 element.Data file to be encrypted is read in to expressly matrix P with corresponding ASCII character.
Step 4: data file is encrypted
To being expressly encrypted.Encryption method is:
C=PKmodm (6)
Expressly Matrix Multiplication, with cipher key matrix, each element is wherein carried out to m modulo operation, finally obtains ciphertext Matrix C.
Step 5: ciphertext matrix is decrypted
Can be by obtaining expressly matrix with the calculating of cipher key matrix to the ciphertext matrix generating.Due to cipher key matrix be to and matrix, i.e. K=K -1, we have:
C=PK
CK -1=PKK -1 (7)
CK -1=P
, expressly matrix P is:
P=CKmodm (8)
Carry out product by ciphertext matrix and cipher key matrix, then get m modular arithmetic.Because ciphertext is matrix structure, each piece can be independently and cipher key matrix carry out multiplication calculating, to ensure the concurrency of decrypting process.
Beneficial effect: the parallel encryption scheme that the present invention designs has solved two problems that will solve in cloud computing actual application, the one, the confidentiality requirement of data owner to data file, by the block encryption to clear text file, upload and be stored in cloud environment, ensure that data owner's sensitive information is protected; The 2nd, for large data high-speed calculation requirement, employing block encryption etc. is seen parallel computing technique, make the ciphering process of data file can utilize the parallel computing in cloud computing environment, realize the high-speed parallel that large data files is encrypted and calculate, finally meet the secure high-speed access of large data in cloud computing environment.
Brief description of the drawings
Fig. 1 is the flow process of encipherment scheme.
Embodiment
Below the enforcement of technical scheme is described in further detail:
Step 1: generate the sub-key matrix in scrambled matrix
The exponent number of getting cipher key matrix is N=4 (integral number power that N is 2), i.e. the total N of cipher key matrix 2=16 elements, need the accidental enciphering sequence x producing ifor
0 ≤ x i ≤ 127 ( 1 ≤ i ≤ N 2 4 ) - - - ( 1 )
Need to produce individual stochastic ordering train value, establishes the accidental enciphering sequence (0,1,2,3) of generation, for the sub-key order of matrix number generating is N/2=2, i.e. and the total N of cipher key matrix 2/ 4=4 element.The sub-key matrix generating is
K 22 = 0 1 3 2 - - - ( 2 )
Step 2: generate cipher key matrix
Computing by antithetical phrase cipher key matrix can generate involutory cipher key matrix K, and note cipher key matrix is divided into four and is respectively K 11, K 12, K 21, K 22.We have:
K 22 = 0 1 3 2 K 11 = - K 22 mod 127 K 12 = ( I + K 22 ) × 2 mod 127 K 21 = ( I + K 11 ) × 1 2 mod 127 - - - ( 3 )
Wherein I is that exponent number is the unit matrix of N/2, K 11be that the inverse operation of submatrix process mould obtains, mould inverse operation concrete grammar is as follows:
y ij = 127 - x ij % 127 y 11 = 127 - 0 % 127 = 127 y 12 = 127 - 1 % 127 = 126 y 21 = 127 - 3 % 127 = 124 y 22 = 127 - 2 % 127 = 125 K 11 = 127 126 124 125 - - - ( 4 )
K 12first to ask unit matrix and K 22and, then to matrix with do that modulo operation obtains.
K 12 = 2 2 6 6
K 21first to ask unit matrix and K 11and, then to matrix with do that Modulo division obtains, computing concrete grammar is as follows:
K 12 = 64 63 62 63 By calculating the value of each element in each piece submatrix that can calculate respectively cipher key matrix.Four sub-matrix group can be obtained to cipher key matrix K altogether.
K = 127 126 2 2 124 125 6 6 64 63 0 1 62 63 3 2
Step 3: the data file that encrypt is carried out to piecemeal
The data file that will encrypt is carried out to piecemeal, to ensure the concurrency of ciphering process.The plaintext sequence that summary is encrypted is (0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31)
Expressly the dimension of matrix is M × N=8 × 4.The ASC II code for the treatment of close file is read in to expressly matrix, with the storage of one-dimension array form.When the element number of matrix stores is greater than file size, not enough position is by 0 polishing.Expressly matrix P is
P = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Step 4: data file is encrypted
After to plaintext matrix and cipher key matrix piecemeal, to being expressly encrypted.Cryptographic algorithm is as follows:
C=PKmodm (6)
Expressly Matrix Multiplication is with cipher key matrix, and wherein each element finally obtains ciphertext Matrix C to m modulo operation.Have:
C = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 31 32 × 127 126 2 2 124 125 6 6 64 63 0 1 62 63 3 2 mod 127 = 57 59 15 14 41 43 59 58 25 27 103 102 9 11 20 19 120 122 64 63 104 106 108 107 88 90 25 24 72 74 69 68
Step 5: ciphertext matrix is decrypted
Obtaining after ciphertext and cipher key matrix, according to Xi Er deciphering principle, to being expressly decrypted.Due to cipher key matrix be to and matrix, i.e. K=K -1, can obtain expressly matrix and be
P=CKmodm (7)
P = CK mod 127 = 57 59 15 14 41 43 59 58 25 27 103 102 9 11 20 19 120 122 64 63 104 106 108 107 88 90 25 24 72 74 69 68 · 127 126 2 2 124 125 6 6 64 63 0 1 62 63 3 2 mod 127 = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Claims (1)

1. a file encryption decryption method that can parallel computation in cloud storage system, is characterized in that the method comprises the following steps:
Step 1: generate the sub-key matrix in scrambled matrix
The exponent number of note cipher key matrix K is N, the integral number power that N is 2, the total N of cipher key matrix 2individual element, is divided into 4 by this cipher key matrix: K 11, K 12, K 21, K 22, the square formation that wherein each order of matrix number is N/2,
K = K 11 K 12 K 21 K 22 N × N - - - ( 1 )
First calculate sub-key matrix K 22in element x ij, 1≤i, j≤N/2, concrete grammar is in integer range (0,127), to get random number as entry of a matrix element x ij, have:
≤ x ij ≤ 127 ( 1 ≤ i , j ≤ N 2 ) - - - ( 2 )
Step 2: computation key matrix K
By antithetical phrase cipher key matrix K 22computing can to generate cipher key matrix be K, computational methods are as follows:
K 11 = - K 22 mod 127 K 12 = ( I + K 22 ) × 2 mod 127 K 21 = ( I + K 11 ) × 1 2 mod 127 - - - ( 3 )
Wherein I is that exponent number is the unit matrix of N/2, K 11be that the inverse operation of submatrix process mould obtains, mould inverse operation concrete grammar is as follows:
Y ij=127-x ij%127, wherein x ij ∈ K 22 , y ij ∈ K 11 , 1 ≤ i , j ≤ N 2 - - - ( 4 )
K 12first to ask unit matrix and K 22and, then to matrix with carry out modulo operation and obtain;
K 21first to ask unit matrix and K 11and, then to matrix with carry out Modulo division and obtain, computing concrete grammar is as follows:
wherein x ij ∈ K 11 + I z ij ∈ K 21 , 1 ≤ i , j ≤ N 2 - - - ( 5 )
By calculating the value of each element in each piece submatrix that can calculate respectively cipher key matrix, four sub-matrix group can be obtained to cipher key matrix K altogether;
Step 3: data file encryption is carried out to piecemeal
The source data file that will encrypt is carried out to the partitioning of matrix, make each piece can be independently and cipher key matrix be encrypted computing, ensure the concurrency of ciphering process, the matrix P that the data file row that will encrypt is M × N for dimension, if length is not expressly the integral multiple of N, fill with 0 element, data file to be encrypted is read in to expressly matrix P with corresponding ASCII character;
Step 4: data file is encrypted
To being expressly encrypted, encryption method is:
C=PKmodm (6)
Expressly Matrix Multiplication, with cipher key matrix, each element is wherein carried out to m modulo operation, finally obtains ciphertext Matrix C;
Step 5: ciphertext matrix is decrypted
Can be by obtaining expressly matrix with the calculating of cipher key matrix to the ciphertext matrix generating, due to cipher key matrix be to and matrix, i.e. K=K -1, we have:
C=PK
CK -1=PKK -1 (7)
CK -1=P
, expressly matrix P is:
P=CKmodm (8)
Carry out product by ciphertext matrix and cipher key matrix, then get m modular arithmetic, because ciphertext is matrix structure, each piece can independently carry out multiplication calculating with cipher key matrix, to ensure the concurrency of decrypting process.
CN201410210132.7A 2014-05-16 2014-05-16 File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system Pending CN104009835A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410210132.7A CN104009835A (en) 2014-05-16 2014-05-16 File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410210132.7A CN104009835A (en) 2014-05-16 2014-05-16 File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system

Publications (1)

Publication Number Publication Date
CN104009835A true CN104009835A (en) 2014-08-27

Family

ID=51370331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410210132.7A Pending CN104009835A (en) 2014-05-16 2014-05-16 File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system

Country Status (1)

Country Link
CN (1) CN104009835A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017000726A1 (en) * 2015-07-02 2017-01-05 中兴通讯股份有限公司 Key transformation method, apparatus, and terminal
CN107124273A (en) * 2017-05-10 2017-09-01 成都课迪科技有限公司 A kind of platform data encryption method and device based on dynamic authorization code
CN107222488A (en) * 2017-06-16 2017-09-29 康美健康云服务有限公司 A kind of image ciphering storage method
CN107733904A (en) * 2017-10-24 2018-02-23 郑州云海信息技术有限公司 A kind of method, apparatus and platform of virtual-machine data encryption and decryption
CN109698812A (en) * 2017-10-23 2019-04-30 中国电信股份有限公司 Information ciphering method and device, information decryption method and device and security system
CN109902498A (en) * 2019-02-27 2019-06-18 南京师范大学 Data ciphering method, data decryption method and corresponding device and equipment
CN110519039A (en) * 2019-07-29 2019-11-29 北京多思安全芯片科技有限公司 A kind of Homomorphic processing of data
CN110519038A (en) * 2019-07-29 2019-11-29 北京多思安全芯片科技有限公司 A kind of Homomorphic Processing device and system of data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BIBHUDENDRA ACHARYA等: "Image Encryption by Novel Cryptosystem Using Matrix Transformation", 《FIRST INTERNATIONAL CONFERENCE ON EMERGING TRENDS IN ENGINEERING AND TECHNOLOGY》 *
BIBHUDENDRA ACHARYA等: "Image Encryption Using Advanced Hill Cipher Algorithm", 《INTERNATIONAL JOURNAL OF RECENT TRENDS IN ENGINEERING AND TECHNOLOGY》 *
SAROJ KUMAR PANIGRAHY等: "Image Encryption Using Self-Invertible Key Matrix of Hill Cipher Algorithm", 《FIRST INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTING》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017000726A1 (en) * 2015-07-02 2017-01-05 中兴通讯股份有限公司 Key transformation method, apparatus, and terminal
CN107124273A (en) * 2017-05-10 2017-09-01 成都课迪科技有限公司 A kind of platform data encryption method and device based on dynamic authorization code
CN107222488A (en) * 2017-06-16 2017-09-29 康美健康云服务有限公司 A kind of image ciphering storage method
CN109698812A (en) * 2017-10-23 2019-04-30 中国电信股份有限公司 Information ciphering method and device, information decryption method and device and security system
CN107733904A (en) * 2017-10-24 2018-02-23 郑州云海信息技术有限公司 A kind of method, apparatus and platform of virtual-machine data encryption and decryption
CN109902498A (en) * 2019-02-27 2019-06-18 南京师范大学 Data ciphering method, data decryption method and corresponding device and equipment
CN109902498B (en) * 2019-02-27 2023-08-18 南京师范大学 Data encryption method, data decryption method, and corresponding devices and equipment
CN110519039A (en) * 2019-07-29 2019-11-29 北京多思安全芯片科技有限公司 A kind of Homomorphic processing of data
CN110519038A (en) * 2019-07-29 2019-11-29 北京多思安全芯片科技有限公司 A kind of Homomorphic Processing device and system of data
CN110519038B (en) * 2019-07-29 2022-10-21 北京多思安全芯片科技有限公司 Homomorphic processing device and system for data

Similar Documents

Publication Publication Date Title
CN104009835A (en) File encrypting and decrypting method allowing parallel computing to be conducted in cloud storage system
CN102546181B (en) Cloud storage encrypting and deciphering method based on secret key pool
CN102025484B (en) Block cipher encryption and decryption method
CN1993922B (en) Stream cipher combining system and method
CN102624522B (en) A kind of key encryption method based on file attribute
CN101692636B (en) Data element and coordinate algorithm-based method and device for encrypting mixed data
CN105324956B (en) The method and apparatus of encrypting plaintext data
CN105743645B (en) Stream code key generating means, method and data encryption, decryption method based on PUF
Chatterjee et al. A new Symmetric key Cryptography Algorithm using extended MSA method: DJSA symmetric key algorithm
CN105490802A (en) Improved SM4 parallel encryption and decryption communication method based on GPU (Graphics Processing Unit)
CN104202145A (en) Plaintext or ciphertext selection based side channel power analysis attack method on round function output of SM4 cipher algorithm
CN102006300A (en) Method, device and system for encrypting cloud storage data
CN110022309B (en) Safe and efficient data sharing method in mobile cloud computing system
CN103916248A (en) Fully homomorphic encryption public key space compression method
CN105100083A (en) Attribute-based encryption method and attribute-based encryption system capable of protecting privacy and supporting user Undo
CN101651543A (en) Creditable calculation platform key migration system and key migration method thereof
CN104751065A (en) Encryption method for geographic information product file
CN106788963A (en) A kind of full homomorphic cryptography method of identity-based on improved lattice
CN105162590A (en) Parallel homomorphic data encryption method in cloud computation environment
CN104486068A (en) Stream cipher algorithm SNRR based on nonlinear circulating shift register
CN101321058A (en) Method and system for encoding and decoding digital message
CN104410489B (en) Cipher processing method based on multiple chaos systems
CN102456114A (en) Two-dimensional CAD (Computer Aided Design) engineering drawing content variable-strength encrypting method and device
CN103336920B (en) Security system for wireless sensor network SOC chip
CN104954362B (en) The encryption and decryption approaches and its device of sequence number

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140827