本發(fā)明屬于數(shù)據(jù)安全技術(shù)領(lǐng)域,具體涉及一種大數(shù)據(jù)安全傳輸?shù)募咏饷苣K,尤其涉及到一種在加密前對(duì)數(shù)據(jù)進(jìn)行壓縮,在解密后對(duì)數(shù)據(jù)進(jìn)行解壓縮的加解密單元。
背景技術(shù):
數(shù)據(jù)安全是信息存儲(chǔ)、處理和傳輸過程中涉及的一項(xiàng)重要內(nèi)容。像密碼、重要情報(bào)、私人信件等信息,如果使用未經(jīng)加密的明文進(jìn)行存儲(chǔ)和傳輸,在被他人竊取后,其內(nèi)容很容易被他人所識(shí)讀,從而造成信息的泄露。隨著信息技術(shù)的發(fā)展,信息的安全保護(hù)也越來越受到重視,加解密功能也成為電子信息系統(tǒng)的一個(gè)重要組成部分。
為了實(shí)現(xiàn)數(shù)據(jù)的安全可靠,很多種加密方法被人們所提出。常見的加密算法可以分成三類,即對(duì)稱加密算法、非對(duì)稱加密算法和Hash算法。對(duì)稱加密算法指加密和解密使用相同密鑰的加密算法,其特點(diǎn)在于加解密的高速度和使用長密鑰時(shí)的難破解性。非對(duì)稱加密指加密和解密使用不同密鑰的加密算法,也稱為公私鑰加密。假設(shè)兩個(gè)用戶要加密交換數(shù)據(jù),雙方交換公鑰,使用時(shí)一方用對(duì)方的公鑰加密,另一方即可用自己的私鑰解密。Hash算法特別的地方在于它是一種單向算法,用戶可以通過Hash算法對(duì)目標(biāo)信息生成一段特定長度的唯一的Hash值,卻不能通過這個(gè)Hash值重新獲得目標(biāo)信息。因此Hash算法常用在不可還原的密碼存儲(chǔ)、信息完整性校驗(yàn)等。
現(xiàn)有加密系統(tǒng)大多對(duì)原始數(shù)據(jù)直接進(jìn)行加密,而忽略了原始數(shù)據(jù)存在冗余信息的特征。以對(duì)稱加密算法為例,該類算法是將待加密數(shù)據(jù)以一定的數(shù)據(jù)長度為單位分別進(jìn)行加密。此外,高速數(shù)據(jù)傳輸場合中,當(dāng)被傳輸?shù)臄?shù)據(jù)量較大時(shí),如果直接對(duì)原始數(shù)據(jù)進(jìn)行傳輸,對(duì)占用較大帶寬。如果對(duì)原始數(shù)據(jù)進(jìn)行壓縮之后再傳輸,則會(huì)減少待傳輸?shù)臄?shù)據(jù)量,從而減少數(shù)據(jù)傳輸?shù)臅r(shí)間。
技術(shù)實(shí)現(xiàn)要素:
(一)要解決的技術(shù)問題
本發(fā)明要解決的技術(shù)問題是:如何提出一種大數(shù)據(jù)安全傳輸?shù)募咏饷苣K,該模塊能夠有效地對(duì)數(shù)據(jù)進(jìn)行安全加解密,并且在加密前對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,減少待加密和解密的數(shù)據(jù)量。
(二)技術(shù)方案
為解決上述技術(shù)問題,本發(fā)明提供一種大數(shù)據(jù)安全傳輸?shù)募咏饷苣K,所述模塊包括:
發(fā)送端的預(yù)處理單元,其用于對(duì)輸入的原始待發(fā)送數(shù)據(jù)進(jìn)行預(yù)處理,對(duì)其進(jìn)行壓縮,從而減少了待加密的數(shù)據(jù)量;
發(fā)送端的加密單元,其用于對(duì)數(shù)據(jù)進(jìn)行加密處理,以保障數(shù)據(jù)安全;
接收端的解密單元,其用于在接收端接收到加密數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行解密,使數(shù)據(jù)從密文變?yōu)槊魑牡男问剑?/p>
接收端的后處理單元,其用于對(duì)解密單元輸出的數(shù)據(jù)進(jìn)行恢復(fù)還原,對(duì)解密之后的壓縮數(shù)據(jù)進(jìn)行解壓縮。
其中,所述加密單元包括:兩個(gè)緩存器、一個(gè)雙路選擇器和一個(gè)SM4加密部分;
所述兩個(gè)緩存器分為緩存0和緩存1;經(jīng)壓縮之后的第一組數(shù)據(jù)被存儲(chǔ)在緩存0中,此時(shí)雙路選擇器選中緩存0,將其中的數(shù)據(jù)輸出到SM4加密部分,對(duì)其進(jìn)行加密;
在SM4加密部分對(duì)數(shù)據(jù)進(jìn)行加密時(shí),發(fā)送端的預(yù)處理單元壓縮輸出的數(shù)據(jù)被存儲(chǔ)到緩存1中,當(dāng)SM4對(duì)緩存0中的數(shù)據(jù)加密完成后,雙路選擇器選中緩存1中的數(shù)據(jù)輸出到SM4加密部分對(duì)其進(jìn)行加密,此時(shí)緩存0設(shè)置為可以再次被用來存儲(chǔ)經(jīng)過壓縮預(yù)處理的數(shù)據(jù);通過緩存0和緩存1的輪換,使SM4加密部分不停頓,預(yù)處理和加密能夠協(xié)調(diào)工作;
所述雙路選擇器用于交替選擇緩存0和緩存1中的數(shù)據(jù),以此輸出到后面的SM4加密部分;
所述SM4加密部分用于對(duì)雙路選擇器給出的數(shù)據(jù)進(jìn)行加密。
其中,所述發(fā)送端的加密單元對(duì)數(shù)據(jù)進(jìn)行加密所使用的密碼算法包括:AES、SM4對(duì)稱密碼算法。
其中,所述SM4加密部分中,128位密鑰經(jīng)過密鑰擴(kuò)展,以供基本輪函數(shù)使用;雙路選擇器給出的128位明文經(jīng)過基本輪函數(shù)的迭代處理形成128位的密文。
(三)有益效果
與現(xiàn)有技術(shù)相比較,本發(fā)明對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理,對(duì)其中的冗余信息進(jìn)行壓縮,就能減少待加密的數(shù)據(jù)量,從而減少加密工作量,節(jié)省傳輸帶寬和存儲(chǔ)空間。其有益效果是:
1.該結(jié)構(gòu)能夠在數(shù)據(jù)加密和解密前對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,從而減少加密和解密需要處理的數(shù)據(jù)量;
2、該結(jié)構(gòu)實(shí)現(xiàn)定向數(shù)據(jù)加密功能,可應(yīng)用于多種數(shù)據(jù)加密場景;
3、該結(jié)構(gòu)適用于多用預(yù)處理方法和加解密方法。
附圖說明
圖1是本發(fā)明的具體實(shí)施結(jié)構(gòu)框圖。
圖2是本發(fā)明加密單元組成圖。
具體實(shí)施方式
為使本發(fā)明的目的、內(nèi)容、和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。
為解決現(xiàn)有技術(shù)的問題,本發(fā)明提供一種大數(shù)據(jù)安全傳輸?shù)募咏饷苣K,如圖1所示,所述模塊包括:
發(fā)送端的預(yù)處理單元,其用于對(duì)輸入的原始待發(fā)送數(shù)據(jù)進(jìn)行預(yù)處理,對(duì)其進(jìn)行壓縮,從而減少了待加密的數(shù)據(jù)量;
發(fā)送端的加密單元,其用于對(duì)數(shù)據(jù)進(jìn)行加密處理,以保障數(shù)據(jù)安全;例如使用AES、SM4等對(duì)稱密碼算法對(duì)數(shù)據(jù)進(jìn)行加密;
接收端的解密單元,其用于在接收端接收到加密數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行解密,使數(shù)據(jù)從密文變?yōu)槊魑牡男问剑?/p>
接收端的后處理單元,其用于對(duì)解密單元輸出的數(shù)據(jù)進(jìn)行恢復(fù)還原,對(duì)解密之后的壓縮數(shù)據(jù)進(jìn)行解壓縮。
其中,如圖2所示,所述加密單元包括:兩個(gè)緩存器、一個(gè)雙路選擇器和一個(gè)SM4加密部分;
所述兩個(gè)緩存器分為緩存0和緩存1;經(jīng)壓縮之后的第一組數(shù)據(jù)被存儲(chǔ)在緩存0中,此時(shí)雙路選擇器選中緩存0,將其中的數(shù)據(jù)輸出到SM4加密部分,對(duì)其進(jìn)行加密;
在SM4加密部分對(duì)數(shù)據(jù)進(jìn)行加密時(shí),發(fā)送端的預(yù)處理單元壓縮輸出的數(shù)據(jù)被存儲(chǔ)到緩存1中,當(dāng)SM4對(duì)緩存0中的數(shù)據(jù)加密完成后,雙路選擇器選中緩存1中的數(shù)據(jù)輸出到SM4加密部分對(duì)其進(jìn)行加密,此時(shí)緩存0設(shè)置為可以再次被用來存儲(chǔ)經(jīng)過壓縮預(yù)處理的數(shù)據(jù);通過緩存0和緩存1的輪換,使SM4加密部分不停頓,預(yù)處理和加密能夠協(xié)調(diào)工作;
所述雙路選擇器用于交替選擇緩存0和緩存1中的數(shù)據(jù),以此輸出到后面的SM4加密部分;
所述SM4加密部分用于對(duì)雙路選擇器給出的數(shù)據(jù)進(jìn)行加密;128位密鑰經(jīng)過密鑰擴(kuò)展,以供基本輪函數(shù)使用;雙路選擇器給出的128位明文經(jīng)過基本輪函數(shù)的迭代處理形成128位的密文;整個(gè)過程由迭代控制單元進(jìn)行控制。
下面結(jié)合具體實(shí)施例來詳細(xì)描述本發(fā)明。
實(shí)施例
下面結(jié)合附圖1的結(jié)構(gòu)對(duì)本實(shí)施例進(jìn)行具體介紹。需要按照如下方式進(jìn)行具體實(shí)施。
1.從數(shù)據(jù)源端出入待傳輸處理的數(shù)據(jù);
2.在預(yù)處理單元對(duì)數(shù)據(jù)進(jìn)行預(yù)處理;
3.待加密數(shù)據(jù)進(jìn)入數(shù)據(jù)加密單元,對(duì)數(shù)據(jù)進(jìn)行加密;
4.接收端接收到經(jīng)過加密傳輸過來的數(shù)據(jù);
5.數(shù)據(jù)解密單元對(duì)接收到的數(shù)據(jù)進(jìn)行解密;
6.后處理單元對(duì)解密后的數(shù)據(jù)進(jìn)行后處理,從而還原出原始數(shù)據(jù)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明技術(shù)原理的前提下,還可以做出若干改進(jìn)和變形,這些改進(jìn)和變形也應(yīng)視為本發(fā)明的保護(hù)范圍。