1.一種大文件的加密方法,其特征為采用如下步驟:1)、讀取文件,獲得內(nèi)容,根據(jù)需要對數(shù)據(jù)或者內(nèi)容進(jìn)行分塊;
2)、根據(jù)需要選擇是否加密,以及何種加密方式;
3)、選擇已有密鑰或者產(chǎn)生密鑰,根據(jù)選擇的方法對各個數(shù)據(jù)塊需加密內(nèi)容進(jìn)行加密;
4)、將每一個數(shù)據(jù)塊加密得到的密文,如果需要,進(jìn)行必要的適應(yīng)性的編碼轉(zhuǎn)換,并且根據(jù)相應(yīng)的文件格式要求連接為一個密文文件,進(jìn)行必要的處理讓數(shù)據(jù)符合保存的格式,采用相應(yīng)的格式保存在最后的密文文件中,并且將數(shù)據(jù)是否加密,如果加密,則對相應(yīng)的解密所需要的信息和參數(shù)進(jìn)行存儲。
2.如權(quán)利要求1所述的大文件的加密方法,其特征為:在前面分段的基礎(chǔ)上進(jìn)一步將需要進(jìn)行委托計算的數(shù)值與非數(shù)值的數(shù)據(jù)進(jìn)行繼續(xù)分段,分段后依然要維持相應(yīng)的格式,數(shù)值加密的時候在采用同態(tài)加密,其他數(shù)據(jù)采用非同態(tài)加密,并且記錄分塊的位置信息。
3.如權(quán)利要求1所述的大文件的加密方法,其特征為:在加密算法的選擇上,根據(jù)數(shù)據(jù)需要進(jìn)行計算的所有函數(shù)來判斷需要的加密方法,在可以滿足所有函數(shù)計算需要的前提下優(yōu)先選用加密算法順序為:一般加密、半同態(tài)加密、全同態(tài)加密。
4.如權(quán)利要求2所述的大文件的加密方法,其特征為:對稱密碼算法加密的密鑰由單向函數(shù)生成,單個分段的對稱加密密鑰由唯一確定這個分段的位置信息A和初始密碼K的不可逆函數(shù)M(F(K,A))產(chǎn)生,F(xiàn)為一個函數(shù),一些誤導(dǎo)功能的加密,有時候還需要兩層的加密,需要較長的密鑰,該函數(shù)產(chǎn)生一個流密碼的密鑰,通過這個密鑰產(chǎn)生密鑰流,在密鑰流中截取需要的誤導(dǎo)加密的各層密鑰。
5.如權(quán)利要求4所述的大文件的加密方法,其特征為:存在多個用戶對應(yīng)多個初始密碼Ki,不同用戶加密和解密自己負(fù)責(zé)的數(shù)據(jù)塊,加密信息也存放在加密信息表中,加密信息表中應(yīng)該包含初始的密碼Ki或者Ki的信息;當(dāng)單個塊密鑰泄漏時,采用新的初始密碼產(chǎn)生密鑰去加密泄漏密鑰的塊,并且更新加密信息表中的密碼信息。
6.如權(quán)利要求4所述的大文件的加密方法,其特征為:計算塊密鑰的時候,增加一個信息更改密鑰次數(shù)的信息,用單向的函數(shù)M(F(K,A,f(N)))產(chǎn)生塊密鑰,f(N)初值為空,M(F(K,A,f(N)))在初值為空的情況下,函數(shù)形式簡化為M(F(K,A)),在密鑰信息表中也必須同樣對應(yīng)更改密鑰次數(shù)的信息。
7.如權(quán)利要求4所述的大文件的加密方法,其特征為:當(dāng)有多級用戶的時候,確定好各級用戶的權(quán)限,首先最高級用戶產(chǎn)生一個初始密碼K1,有高級用戶產(chǎn)生下一級用戶的密碼,下一級用戶的初始密碼Kr+1產(chǎn)生單向的函數(shù)為M(F(Kr,B),B為用戶的編號,以此類推逐級地產(chǎn)生多級用戶的初始密碼,直至產(chǎn)生最低級用戶的密碼,然后利用這些最低級用戶的密碼產(chǎn)生該用戶具有加解密權(quán)限的數(shù)據(jù)塊的對稱加密的塊加密密鑰。
8.如權(quán)利要求7所述的大文件的加密方法,其特征為:計算用戶密碼和塊密鑰的時候,增加一個信息更改密鑰次數(shù)的信息,用單向的函數(shù)M(F(K,A,f(N)))產(chǎn)生塊密鑰,用單向的函數(shù)M(F(K,B,f(N)))產(chǎn)生下級用戶密碼,f(N)初值為空,M(F(K,A,f(N)))在初值為空的情況下,函數(shù)形式簡化為M(F(K,A)),在密鑰信息表中也必須同樣對應(yīng)更改密鑰次數(shù)的信息,A為文件的確定信息,如果某一級用戶的初始密碼泄漏,從該用戶的上一級用戶的初始密碼產(chǎn)生該用戶的新密碼, N在原來的基礎(chǔ)上加1。