两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

加密函數(shù)和解密函數(shù)生成方法、加密和解密方法以及相關(guān)裝置與流程

文檔序號(hào):11161236閱讀:612來(lái)源:國(guó)知局
加密函數(shù)和解密函數(shù)生成方法、加密和解密方法以及相關(guān)裝置與制造工藝
本發(fā)明涉及信息技術(shù)的領(lǐng)域,且具體來(lái)說(shuō),涉及加密函數(shù)和解密函數(shù)生成方法、加密和解密方法以及相關(guān)裝置。
背景技術(shù)
:白盒模型是現(xiàn)有密碼攻擊模型中的典型模型。在白盒模型中,可以認(rèn)為攻擊者已進(jìn)入用于加密和解密計(jì)算的計(jì)算模塊的系統(tǒng)并且已完全控制所述系統(tǒng)。也就是說(shuō),計(jì)算模塊F()對(duì)攻擊者完全透明且攻擊者可以在任何時(shí)候查看或修改所有數(shù)據(jù)的值,并且還可以查看和修改任何計(jì)算步驟的中間結(jié)果。因?yàn)橐淹耆刂葡到y(tǒng),所以白盒攻擊者可以查看存儲(chǔ)器中的所有數(shù)據(jù)。在常規(guī)密碼算法中,密鑰在計(jì)算過(guò)程期間直接存儲(chǔ)在存儲(chǔ)器中。攻擊者可以通過(guò)僅定位存儲(chǔ)器中相對(duì)隨機(jī)的數(shù)據(jù)而以較高概率找到密鑰。因此,常規(guī)密碼算法非常易受白盒攻擊者的攻擊。為了防止攻擊者竊取白盒模型中的密鑰,喬等人在2002年提出白盒密碼術(shù)的概念并且設(shè)計(jì)用于高級(jí)加密標(biāo)準(zhǔn)(AdvancedEncryptionStandard,AES)和數(shù)據(jù)加密標(biāo)準(zhǔn)(DataEncryptionStandard,DES)的白盒實(shí)施方法。白盒密碼算法C一般包含兩個(gè)部分:一個(gè)部分是白盒加密和解密函數(shù)生成算法G,以及另一部分是生成的白盒加密函數(shù)E,和白盒解密函數(shù)D,。如圖1中所示,白盒加密和解密函數(shù)生成算法G接收兩個(gè)輸入:原始密鑰K和隨機(jī)種子,并且生成白盒加密函數(shù)E,和白盒解密函數(shù)D,。白盒密碼算法C=E,(P)將明文P加密成密文C,并且白盒密碼算法P=D'(C)將密文C解密成明文P。在E,和D,的數(shù)據(jù)段中并且在計(jì)算過(guò)程期間,原始密鑰K本身完全隱藏并且因此可以防止黑客竊取密鑰。目前,白盒加密和解密函數(shù)生成算法的設(shè)計(jì)想法類(lèi)似并且一般實(shí)踐具有以下兩點(diǎn):首先,計(jì)算改變成表查找并且隨機(jī)仿射掩碼層被添加到表的輸入和輸出。輸出掩碼將在下一輪中通過(guò)輸入掩碼倒轉(zhuǎn)。因此,最終輸出值保持不變。第二,考慮到查找表的大小,如果原始表格需要分成若干子表,單獨(dú)計(jì)算出子表并且將計(jì)算結(jié)果XOR運(yùn)算為原始表格的輸出,其中掩碼層必須進(jìn)行仿射變換。然而,目前白盒加密和解密函數(shù)生成算法的設(shè)計(jì)是不完美的,因?yàn)榘缀蠥ES中的加密和解密函數(shù)一般可以分成若干8位至8位預(yù)計(jì)算表T。表T可以被認(rèn)為分別在AES中的S盒之前和之后添加未知的仿射掩碼層和未知的仿射掩碼層F1,其中輸入掩碼層包含密鑰的1字節(jié)信息。目前,在已知S和T的情況下存在可以恢復(fù)輸入和輸出掩碼層的算法。在恢復(fù)兩個(gè)連續(xù)連接輪中的T盒的掩碼層之后,攻擊者可以獲得密鑰的1字節(jié)信息。隨后,通過(guò)重復(fù)前述過(guò)程,可以恢復(fù)整個(gè)密鑰。因此,實(shí)際上可以低攻擊復(fù)雜性破解所有所揭示的白盒加密和解密函數(shù)生成算法。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的實(shí)施例提供加密和解密函數(shù)生成方法、加密和解密方法以及相關(guān)裝置,這可以在揭示白盒加密和解密函數(shù)生成算法時(shí)確保用于白盒加密和解密函數(shù)中的密鑰的機(jī)密性并且增加攻擊者恢復(fù)密鑰的攻擊復(fù)雜性。以下技術(shù)方案用于本發(fā)明的實(shí)施例中。根據(jù)第一方面,提供一種加密函數(shù)生成方法,其中所述方法包括:接收用戶輸入的隨機(jī)種子和原始密鑰;根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R;通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼以及R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù);以及生成加密函數(shù),其中加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)以及第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。在第一方面的第一可能實(shí)施方式中,參考第一方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第一方面的第二可能實(shí)施方式中,參考第一方面或第一方面的第一可能實(shí)施方式,第r輪的仿射擴(kuò)張掩碼包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。在第一方面的第三可能實(shí)施方式中,參考第一方面或第一方面的第二可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第二方面,提供加密方法,其中所述方法包括:接收用戶輸入的明文;根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和明文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),其中m和n是預(yù)設(shè)正整數(shù)并且n>m;使用預(yù)存儲(chǔ)的加密函數(shù)根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中預(yù)存儲(chǔ)的加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)加密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù);以及根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于明文的密文。在第二方面的第一可能實(shí)施方式中,參考第二方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第二方面的第二可能實(shí)施方式中,參考第二方面或第二方面的第一可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;以及根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第三方面,提供解密函數(shù)生成方法,其中所述方法包括:接收用戶輸入的隨機(jī)種子和原始密鑰;根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R;通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù);以及生成解密函數(shù),其中解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。在第三方面的第一可能實(shí)施方式中,參考第三方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定是,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第三方面的第二可能實(shí)施方式中,參考第三方面或第三方面的第一可能實(shí)施方式,第r輪的仿射擴(kuò)張掩碼包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。在第三方面的第三可能實(shí)施方式中,參考第三方面或第三方面的第二可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第四方面,提供解密方法,其中所述方法包括:接收用戶輸入的密文;根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和密文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),其中m和n是預(yù)設(shè)正整數(shù)并且n>m;使用預(yù)存儲(chǔ)的加密函數(shù)根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中預(yù)存儲(chǔ)的解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)解密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,并且R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù);以及根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于密文的明文。在第四方面的第一可能實(shí)施方式中,參考第四方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第四方面的第二可能實(shí)施方式中,參考第四方面或第四方面的第一可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第五方面,提供加密函數(shù)生成裝置,其中所述裝置包含隨機(jī)種子接收單元、密鑰接收單元、密鑰生成單元、隨機(jī)數(shù)生成單元和加密函數(shù)生成單元;隨機(jī)種子接收單元用于接收用戶輸入的隨機(jī)種子;密鑰接收單元用于接收用戶輸入的原始密鑰;密鑰生成單元用于根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R;隨機(jī)數(shù)生成單元用于通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù);以及加密函數(shù)生成單元用于生成加密函數(shù),其中加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。在第五方面的第一可能實(shí)施方式中,參考第五方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第五方面的第二可能實(shí)施方式中,參考第五方面或第五方面的第一可能實(shí)施方式,第r輪的仿射擴(kuò)張掩碼包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。在第五方面的第三可能實(shí)施方式中,參考第五方面或第五方面的第二可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第六方面,提供加密裝置,其中所述加密裝置包含明文接收單元、輸入掩碼數(shù)據(jù)計(jì)算單元、搜索單元和密文計(jì)算單元;明文接收單元用于接收用戶輸入的明文;輸入掩碼數(shù)據(jù)計(jì)算單元用于根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和明文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),其中m和n是預(yù)設(shè)正整數(shù)并且n>m;搜索單元用于使用預(yù)存儲(chǔ)的加密函數(shù)根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中所述預(yù)存儲(chǔ)的加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)加密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,并且R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù);以及密文計(jì)算單元用于根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于明文的密文。在第六方面的第一可能實(shí)施方式中,參考第六方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第六方面的第二可能實(shí)施方式中,參考第六方面或第六方面的第一可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第七方面,提供解密函數(shù)生成裝置,其中所述裝置包含隨機(jī)種子接收單元、密鑰接收單元、密鑰生成單元、隨機(jī)數(shù)生成單元和解密函數(shù)生成單元;隨機(jī)種子接收單元用于接收用戶輸入的隨機(jī)種子;密鑰接收單元用于接收用戶輸入的原始密鑰;密鑰生成單元用于根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R;隨機(jī)數(shù)生成單元用于通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù);以及解密函數(shù)生成單元用于生成解密函數(shù),其中解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。在第七方面的第一可能實(shí)施方式中,參考第七方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第七方面的第二可能實(shí)施方式中,參考第七方面或第七方面的第一可能實(shí)施方式,第r輪的仿射擴(kuò)張掩碼包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。在第七方面的第三可能實(shí)施方式中,參考第七方面或第七方面的第二可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。根據(jù)第八方面,提供解密裝置,其中所述解密裝置包含密文接收單元、輸入掩碼數(shù)據(jù)計(jì)算單元、搜索單元和明文計(jì)算單元;密文接收單元用于接收用戶輸入的密文;輸入掩碼數(shù)據(jù)計(jì)算單元用于根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和密文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),其中m和n是預(yù)設(shè)正整數(shù)并且n>m;搜索單元用于使用預(yù)存儲(chǔ)的加密函數(shù)根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中預(yù)存儲(chǔ)的解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)解密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,并且R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù);以及明文計(jì)算單元用于根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于密文的明文。在第八方面的第一可能實(shí)施方式中,參考第八方面,仿射擴(kuò)張掩碼是根據(jù)F(x)=A*x+b確定的,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。在第八方面的第二可能實(shí)施方式中,參考第八方面或第八方面的第一可能實(shí)施方式,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同;根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。本發(fā)明的實(shí)施例提供加密函數(shù)和解密函數(shù)生成方法、加密和解密方法以及相關(guān)裝置。加密函數(shù)生成方法包括:接收用戶輸入的隨機(jī)種子和原始密鑰;根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成加密函數(shù)所需的迭代計(jì)算輪數(shù),R是正整數(shù)并且1≤r≤R;通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù);以及生成加密函數(shù),其中加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。解密函數(shù)生成方法包括:接收用戶輸入的隨機(jī)種子和原始密鑰;根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R;通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù);以及生成解密函數(shù),其中解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。因?yàn)榇罅侩S機(jī)干擾數(shù)據(jù)添加在對(duì)應(yīng)于加密函數(shù)和解密函數(shù)的預(yù)計(jì)算表中,所以在攻擊者找到現(xiàn)實(shí)預(yù)計(jì)算表之前,攻擊者無(wú)法使用現(xiàn)有技術(shù)來(lái)以225的計(jì)算復(fù)雜性恢復(fù)包含在預(yù)計(jì)算表中的密鑰字節(jié)。因此,攻擊者必須嘗試所有可能的仿射子集。也就是說(shuō),攻擊者需要窮盡性地嘗試所有N(n,m)個(gè)不同的m維仿射子集且隨后嘗試恢復(fù)密鑰,其中計(jì)算復(fù)雜性是這顯著增加攻擊的復(fù)雜性并且在揭示白盒加密函數(shù)或解密函數(shù)生成方法的情況下確保用于白盒加密函數(shù)或解密函數(shù)中的密鑰的機(jī)密性。附圖說(shuō)明為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單介紹。顯而易見(jiàn)地,下面描述中的附圖僅僅示出本發(fā)明的一些實(shí)施例,并且對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)說(shuō),在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它附圖。圖1是根據(jù)本發(fā)明的實(shí)施例的白盒加密的示意圖;圖2-1是根據(jù)本發(fā)明的實(shí)施例的在AES-128加密過(guò)程中的AK操作的示意圖;圖2-2是根據(jù)本發(fā)明的實(shí)施例的在AES-128加密過(guò)程中的SB操作的示意圖;圖2-3是根據(jù)本發(fā)明的實(shí)施例的在AES-128加密過(guò)程中的SR操作的示意圖;圖2-4是根據(jù)本發(fā)明的實(shí)施例的在AES-128加密過(guò)程中的MC操作的示意圖;圖3是根據(jù)本發(fā)明的實(shí)施例的在未拆分列計(jì)算的情況下生成預(yù)計(jì)算表的示意圖;圖4是根據(jù)本發(fā)明的實(shí)施例的拆分列計(jì)算且生成預(yù)計(jì)算表的示意圖;圖5是根據(jù)本發(fā)明的實(shí)施例的在拆分列計(jì)算之后在連續(xù)兩輪迭代輸入和輸出數(shù)據(jù)之間的關(guān)系的示意圖;圖6是根據(jù)本發(fā)明的實(shí)施例的在拆分列計(jì)算之后在連續(xù)兩輪迭代輸入和輸出數(shù)據(jù)之間的另一關(guān)系的示意圖;圖7是根據(jù)本發(fā)明的實(shí)施例的加密和解密系統(tǒng)的架構(gòu)的示意圖;圖8是根據(jù)本發(fā)明的實(shí)施例的加密函數(shù)生成方法的示意性流程圖;圖9是根據(jù)本發(fā)明的實(shí)施例的預(yù)計(jì)算表的示意性組成圖;圖10是根據(jù)本發(fā)明的實(shí)施例的加密方法的示意性流程圖;圖11是根據(jù)本發(fā)明的實(shí)施例的明文的示意性組成圖;圖12是根據(jù)本發(fā)明的實(shí)施例的解密函數(shù)生成方法的示意性流程圖;圖13是根據(jù)本發(fā)明的實(shí)施例的解密方法的示意性流程圖;圖14是根據(jù)本發(fā)明的實(shí)施例的加密函數(shù)生成裝置的第一示意性結(jié)構(gòu)圖;圖15是根據(jù)本發(fā)明的實(shí)施例的加密裝置的第一示意性結(jié)構(gòu)圖;圖16是根據(jù)本發(fā)明的實(shí)施例的解密函數(shù)生成裝置的第一示意性結(jié)構(gòu)圖;圖17是根據(jù)本發(fā)明的實(shí)施例的解密裝置的第一示意圖;圖18是根據(jù)本發(fā)明的實(shí)施例的加密函數(shù)生成裝置的第二示意性結(jié)構(gòu)圖;圖19是根據(jù)本發(fā)明的實(shí)施例的加密裝置的第二示意性結(jié)構(gòu)圖;圖20是根據(jù)本發(fā)明的實(shí)施例的解密函數(shù)生成裝置的第二示意性結(jié)構(gòu)圖;以及圖21是根據(jù)本發(fā)明的實(shí)施例的解密裝置的第二示意圖。具體實(shí)施方式首先,為了清楚且簡(jiǎn)潔地描述每個(gè)實(shí)施例,下文簡(jiǎn)單描述若干概念:二進(jìn)制字段(GF2):界定加法和乘法的二進(jìn)制集合{0,1},其中加法等效于按位XOR并且乘法等效于按位AND。在表1和表2中示出二進(jìn)制字段GF2上的運(yùn)算規(guī)則:表1加法01001110表2乘法01000101仿射變換:仿射變換等效于線性變換加上轉(zhuǎn)換,并且可以通過(guò)使用矩陣運(yùn)算表達(dá)為F(x)=A*x+b,其中x是m維度列向量,A是n*m矩陣,b是n維列向量并且輸出值是n維列向量。在位長(zhǎng)度擴(kuò)張的情況下,n>m。示例性地,用于將3維列向量映射到4維列向量的仿射變換可以表達(dá)為:應(yīng)注意,線性變換L(x)=A*x和仿射變換F(x)=A*x+b兩者滿足線性關(guān)系L(x)+L(y)=L(x+y)=A*(x+y)。此專(zhuān)利中的仿射變換默認(rèn)地包含線性變換(也就是說(shuō),當(dāng)轉(zhuǎn)換量b=0時(shí)的特定仿射變換)。另外,此專(zhuān)利中提及的仿射變換都界定在多維二進(jìn)制字段空間中。仿射子集:仿射子集是指借助于從m維二進(jìn)制字段空間到n維二進(jìn)制字段空間的仿射變換F(x)Ax+b通過(guò)將m維二進(jìn)制字段空間的通用集合映射到目標(biāo)n維空間中形成的m維子集,其定義為如下:Y={y=A·x+b|x∈(GF2)m}白盒密碼術(shù):一般是指在標(biāo)準(zhǔn)對(duì)稱(chēng)密碼算法中的特定實(shí)施方法,并且功能上等效于使用特定密鑰的加密或解密函數(shù)。所生成的加密和解密函數(shù)將所使用的密鑰整合到計(jì)算過(guò)程中,而不是直接顯示密鑰。即使攻擊者檢查白盒加密或解密計(jì)算過(guò)程中的任何中間值,攻擊者也無(wú)法直接看到密鑰。因此,白盒密碼術(shù)可以用于保護(hù)用于密碼算法中的密鑰。S盒:通常用于密碼算法中的基本模塊和計(jì)算單元,其一般是具有固定長(zhǎng)度輸入和固定長(zhǎng)度輸出的固定函數(shù)。例如,用于AES中的S盒是具有8位輸入和8位輸出的固定函數(shù);并且用于DES中的S盒是具有6位輸入和4位輸出的固定函數(shù)。DES:國(guó)際塊密碼標(biāo)準(zhǔn)聯(lián)邦信息處理標(biāo)準(zhǔn)(FederalInformationProcessingStandards,F(xiàn)IPS)公開(kāi)案(公開(kāi)案,PUB)46-2,其中塊長(zhǎng)度是64位并且密鑰是64位(僅56位是有效的),其目前已被破解。AES:國(guó)際塊密碼標(biāo)準(zhǔn)FIPSPUB127,其支持三種長(zhǎng)度的密鑰:128位、122位和256位,其中三個(gè)版本的所有明文和密文長(zhǎng)度是128位(16字節(jié))。例如,下文通過(guò)使用AES-128闡述AES:AES-128處理16字節(jié)明文(4*4字節(jié)矩陣)并且迭代10輪,其中每一輪包含四個(gè)操作:(1)添加輪密鑰(AddRoundKey,AK):將輪密鑰XOR運(yùn)算到當(dāng)前狀態(tài)。(2)替代字節(jié)(SubBytes,SB);以S盒替代所有當(dāng)前字節(jié)。(3)移位行(ShiftRow,SR):將第i行周期性地向左移位i字節(jié),0<=i<=3。(4)混合列(MixColumn,MC):將每個(gè)列的4字節(jié)乘以有限域GF256上的矩陣,其中示例性地,矩陣可為如下:假設(shè)在一輪迭代期間的四個(gè)操作的過(guò)程中,AK過(guò)程的輸入是并且密鑰是則可以執(zhí)行圖2-1中所示的AK過(guò)程以產(chǎn)生第一運(yùn)算結(jié)果第一運(yùn)算結(jié)果用作SB過(guò)程的輸入并且可以執(zhí)行圖2-2中所示的SB過(guò)程以產(chǎn)生第二運(yùn)算結(jié)果第二運(yùn)算結(jié)果用作SR過(guò)程的輸入并且可以執(zhí)行圖2-3中所示的SR過(guò)程以產(chǎn)生第三運(yùn)算結(jié)果并且第三運(yùn)算結(jié)果用作MC過(guò)程的輸入并且有限域GF256上的矩陣設(shè)定成C(x),則可以執(zhí)行圖2-4中所示的MC過(guò)程以產(chǎn)生第四運(yùn)算結(jié)果應(yīng)注意,最后一輪迭代不包含MC操作,但包含又一個(gè)AK,即,AK->SB->SR->AK。應(yīng)注意,因?yàn)镾B和SR操作兩者與單個(gè)字節(jié)有關(guān),所以順序可以改變,使得AES加密操作為:(AKSRSBMC)(AKSRSBMC)(AKSRMC)……(AKSRSBMC);此外,因?yàn)锳K將在迭代狀態(tài)下將每一輪的密鑰的字節(jié)XOR運(yùn)算到每個(gè)字節(jié)上,所以可以打亂密鑰的字節(jié),并且隨后AK與SR交換,使得AES等效地表達(dá)為SR(AK'SBMC)SR(AK'SBMC)SR(AK'SBMC)……SR(AK'SBMC)。類(lèi)似地,AES的設(shè)計(jì)精密并且還可以用類(lèi)似等效形式寫(xiě)出解密過(guò)程:SR-1(AK'SB-1MC-1)SR-1(AK'SB-1MC-1)……SR-1(AK'SB-1MC-1),本文不再進(jìn)一步對(duì)其進(jìn)行詳細(xì)描述。AES的實(shí)施方式如下:如
背景技術(shù)
中所提及,可以借助于表查找實(shí)施AES的加密和解密過(guò)程,并且可以逐列計(jì)算(AKSBMC)。然而,考慮到表大小,列(4字節(jié)輸入和4字節(jié)輸出)中的一者的計(jì)算過(guò)程可以分成表查找的4次嘗試。所述過(guò)程如下;首先,布置若干符號(hào)。在預(yù)計(jì)算表的計(jì)算過(guò)程期間,每個(gè)中間狀態(tài)值用對(duì)應(yīng)符號(hào)表示:其中是第r輪的輸入仿射掩碼并且Fr是第r輪的輸出仿射掩碼。在拆分計(jì)算過(guò)程之前,如圖3中所展示,假設(shè)根據(jù)輸入列(y0,y1,y2,y3)計(jì)算此列的第一輪的輸出值(z0,z1,z2,z3),隨后從圖3中可以看出,yi經(jīng)受輸入仿射掩碼的仿射變換以產(chǎn)生xi,并且xi經(jīng)受AKSBMC過(guò)程的變換以產(chǎn)生wi,并且wi經(jīng)受輸出仿射掩碼F1i的仿射變換以產(chǎn)生輸出結(jié)果zi,其中0≤i≤3。在此過(guò)程中,主要表格需要從整個(gè)操作中形成并且占據(jù)4n*24n位的空間。在表查找中,可以通過(guò)使用yi來(lái)在第i預(yù)計(jì)算表中查找而獲得zi。在前述計(jì)算過(guò)程分成圖4中所示的4個(gè)計(jì)算子過(guò)程之后,圖3可以與圖4比較以示出MC分成MC0、MC1、MC2和MC3,F(xiàn)1i分成F1i[0]、F1i[1]、F1i[2]和F1i[3],并且zi分成zi0、zi1、zi2和zi3。因?yàn)镸C是線性運(yùn)算且MC等效于單獨(dú)地將S盒的輸出值的特定行乘以不同常數(shù),并且將乘積用作輸出列向量的不同行的元素。示例性地,使用圖4中所示的第一示意性子圖作為實(shí)例,假設(shè)S盒的輸出值是t0并且MC運(yùn)算所需的有限域GF256上的矩陣是則因此,圖的計(jì)算結(jié)果可以細(xì)分成具有最小單元的4個(gè)預(yù)計(jì)算表。每個(gè)預(yù)計(jì)算表的輸入長(zhǎng)度和輸出長(zhǎng)度相同,并且獲得預(yù)計(jì)算表的方式的數(shù)據(jù)如下:在拆分此列的運(yùn)算之后,每個(gè)運(yùn)算可以用于形成具有n*2n位大小的4個(gè)子表,其僅占用4n*2n位,并且因此顯著節(jié)省了存儲(chǔ)空間。在表查找中,通過(guò)使用yi來(lái)在第j預(yù)計(jì)算表中查找,可以獲得zij(0≤j≤3)。下文描述前述拆分過(guò)程的合理性,使用i=0作為實(shí)例:在不添加輸入或輸出仿射掩碼的情況下,本領(lǐng)域的普通技術(shù)人員可以容易地證明通過(guò)對(duì)當(dāng)前輪(第1輪)的同一列中的w0j(0≤j≤3)執(zhí)行XOR運(yùn)算獲得下一輪(第2輪)的現(xiàn)實(shí)數(shù)據(jù)w0,即,w0=w00+w01+w02+w03,并且當(dāng)前輪(第1輪)的輸出w0用作下一輪的輸入x0以繼續(xù)進(jìn)行下一輪(第2輪)的表查找。所述過(guò)程在圖5中示出。在添加輸入和輸出仿射掩碼之后,假設(shè)i=0,第1輪的輸入仿射掩碼是F00-1,第1輪的輸出掩碼F10(x)=A*x+b分成4個(gè)等式:F10[j](x)=A*x+b[j](0≤j≤3),其中b=b[0]+b[1]+b[2]+b[3]。因?yàn)閦0j=F10[j](w0j),所以z0=z00+z01+z02+z03=F10[0](w00)+F10[1](w01)+F10[2](w02)+F10[3](w03)=(A*w00+b[0])+(A*w01+b[1])+(A*w02+b[2])+(A*w03+b[3])=A*(w00+w01+w02+w03)+(b[0]+b[1]+b[2]+b[3])=A(w0)+b=F10(w0)也就是說(shuō),計(jì)算出z0=F10(L*S(x0+k0)),其中L是MCj運(yùn)算引入的乘數(shù),并且k0是在此輪運(yùn)算中對(duì)應(yīng)于x0的密鑰字節(jié)。當(dāng)前輪(第1輪)的輸出z0用作下一輪的輸入y0以繼續(xù)進(jìn)行下一輪(第2輪)的表查找。在生成下一輪(第2輪)的表的過(guò)程期間,輸入仿射掩碼是F10-1并且輸出掩碼是F10-1。因此,根據(jù)F10-1的變換,z0可以被正確地映射回現(xiàn)實(shí)數(shù)據(jù)x0。所述過(guò)程如圖6中所示。z1=z10+z11+z12+z13z2=z20+z21+z22+z23類(lèi)似地,z3=z30+z31+z32+z33。出于前述等式的合理性,可以參考z0的描述,并且此處不再給出非詳盡描述。下文參考本發(fā)明的實(shí)施例中的附圖清楚地描述本發(fā)明的實(shí)施例中的技術(shù)方案。顯然,所描述的實(shí)施例僅是本發(fā)明的實(shí)施例的一部分,而不是全部的實(shí)施例。本領(lǐng)域的普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的前提下基于本發(fā)明的實(shí)施例獲得的所有其它實(shí)施例應(yīng)處于本發(fā)明的保護(hù)范圍內(nèi)。為了有助于清楚地描述本發(fā)明的實(shí)施例中的技術(shù)方案,例如“第一”和“第二”的詞語(yǔ)用于本發(fā)明的實(shí)施例中以區(qū)分提供基本上相同功能或目的的相同項(xiàng)或類(lèi)似項(xiàng)。本領(lǐng)域的普通技術(shù)人員應(yīng)理解,例如“第一”和“第二”的詞語(yǔ)并未限制數(shù)目和實(shí)施順序。首先,簡(jiǎn)單地描述提供于本發(fā)明的實(shí)施例中的加密和解密系統(tǒng)架構(gòu)。如圖7中所示,加密和解密系統(tǒng)700包含加密函數(shù)生成裝置1400、加密裝置1500、解密函數(shù)生成裝置1600和解密裝置1700。在接收用戶輸入的隨機(jī)種子和原始密鑰之后,加密函數(shù)生成裝置1400生成加密函數(shù)701,并且隨后將加密函數(shù)701發(fā)送到加密模塊部署節(jié)點(diǎn)的加密裝置1500。在接收用戶輸入的隨機(jī)種子和原始密鑰之后,解密函數(shù)生成裝置1600生成解密函數(shù)702,并且隨后將解密函數(shù)702發(fā)送到解密模塊部署節(jié)點(diǎn)的解密裝置1700。加密裝置1500存儲(chǔ)加密函數(shù)701。解密裝置1700存儲(chǔ)解密函數(shù)702。加密函數(shù)701和解密函數(shù)702兩者包含R輪迭代計(jì)算的預(yù)計(jì)算表,其中R是正整數(shù)。在接收用戶輸入的明文之后,加密裝置1500根據(jù)存儲(chǔ)于加密裝置1500中的輸入仿射擴(kuò)張掩碼和輸出仿射擴(kuò)張掩碼借助于在對(duì)應(yīng)于加密函數(shù)701的輪迭代計(jì)算的預(yù)計(jì)算表中的查找而獲得對(duì)應(yīng)于輸入明文的密文。在接收用戶輸入的密文之后,解密裝置1700根據(jù)存儲(chǔ)于解密裝置1700中的輸入仿射擴(kuò)張掩碼和輸出仿射擴(kuò)張掩碼借助于在對(duì)應(yīng)于解密函數(shù)702的R輪迭代計(jì)算的預(yù)計(jì)算表中的查找而獲得對(duì)應(yīng)于輸入密文的明文。具體來(lái)說(shuō),對(duì)于用于通過(guò)加密函數(shù)生成裝置1400生成加密函數(shù)的詳細(xì)方法,在加密函數(shù)生成裝置接收用戶輸入的隨機(jī)種子和原始密鑰之后,可以參考實(shí)施例1中的解決方案;對(duì)于由加密裝置1500執(zhí)行的加密方法,在加密裝置接收用戶輸入的明文之后,可以參考實(shí)施例2中的解決方案;對(duì)于用于通過(guò)解密函數(shù)生成裝置1600生成解密函數(shù)的詳細(xì)方法,在解密函數(shù)生成裝置接收用戶輸入的隨機(jī)種子和原始密鑰之后,可以參考實(shí)施例3中的解決方案;以及對(duì)于由解密裝置1700執(zhí)行的解密方法,在解密裝置接收用戶輸入的密文之后,可以參考實(shí)施例4中的解決方案,并且此處不再闡述。應(yīng)注意,預(yù)計(jì)算表是在根據(jù)所有可能輸入值預(yù)計(jì)算出所有輸出結(jié)果之后相應(yīng)地存儲(chǔ)的數(shù)據(jù)表。示例性地:為了計(jì)算例如f(x)=x'2+3x+2的函數(shù),可以首先計(jì)算x的平方,隨后可以逐步計(jì)算3x,且最后將三項(xiàng)相加?;蛘?,可以執(zhí)行例如f(0)=2,f(1)=6,…的預(yù)計(jì)算。x,f(x)置于表格中作為記錄,并且f(x)的值置于表的第x行中。當(dāng)需要計(jì)算f(x)時(shí),僅需要查詢對(duì)應(yīng)于第x列的值,并且不需要根據(jù)前述詳細(xì)步驟執(zhí)行逐步計(jì)算。因?yàn)樵诒砀裰袌?zhí)行預(yù)計(jì)算,所以表格稱(chēng)為預(yù)計(jì)算表。實(shí)施例1本發(fā)明實(shí)施例提供一種加密函數(shù)生成方法。具體來(lái)說(shuō),如圖8中所示,所述方法包括以下步驟:801。加密函數(shù)生成裝置獲得隨機(jī)種子和原始密鑰。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中提供的加密函數(shù)生成方法中,加密函數(shù)生成裝置首先需要獲得隨機(jī)種子和原始密鑰。隨機(jī)種子是固定長(zhǎng)度位串,并且可以用于通過(guò)使用隨機(jī)數(shù)產(chǎn)生器產(chǎn)生隨機(jī)數(shù)。隨機(jī)數(shù)產(chǎn)生器可以被認(rèn)為是函數(shù)g(x),其中輸入是例如k位串的固定長(zhǎng)度隨機(jī)種子并且輸出是具有任何數(shù)目位的長(zhǎng)度的隨機(jī)數(shù)序列且用作隨后使用的隨機(jī)數(shù)源;以及密鑰是一組信息碼并且密鑰參與密碼術(shù)的“運(yùn)算”且對(duì)密碼術(shù)的“運(yùn)算”施加特定控制影響。DES支持64位長(zhǎng)度的密鑰,并且AES支持具有三種類(lèi)型的長(zhǎng)度的密鑰:128位、122位和256位。802。加密函數(shù)生成裝置根據(jù)原始密鑰生成R輪迭代所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示加密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R。具體來(lái)說(shuō),對(duì)于其中加密函數(shù)生成裝置生成R輪迭代計(jì)算所需的輪密鑰的方法,在獲得原始密鑰之后,可以參考AES標(biāo)準(zhǔn)并且在本發(fā)明的此實(shí)施例不描述細(xì)節(jié)。803。加密函數(shù)生成裝置通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中,仿射擴(kuò)張掩碼用于將m比特?cái)?shù)據(jù)變換成n比特?cái)?shù)據(jù),m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù)。本領(lǐng)域的普通技術(shù)人員可以理解,第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。優(yōu)選地,在本發(fā)明實(shí)施例中,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是二進(jìn)制字段上的具有n*m大小的列滿秩矩陣,換句話說(shuō),A是(n*m)大小的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。應(yīng)注意,在本發(fā)明實(shí)施例中,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,矩陣A的行數(shù)n大于列數(shù)m,并且因此借助于仿射變換,x可以從m維列向量擴(kuò)張成n維列向量。特別地,為了防止在仿射變換之后的信息損耗,矩陣A需要是列滿秩矩陣(也就是說(shuō),所有列向量是線性獨(dú)立的,秩(A)=m);對(duì)于列向量b,不強(qiáng)加任何要求并且其值是任意的。本領(lǐng)域的普通技術(shù)人員可以理解,在生成第r輪的預(yù)計(jì)算表的過(guò)程期間,如果第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第(r-1)輪的掩碼數(shù)據(jù),即,如果第r輪的預(yù)設(shè)輸入數(shù)據(jù)是0-(2n-1),為了確保對(duì)應(yīng)于彼此的串列的掩碼層之間的相互抵消,第r輪的迭代計(jì)算所需的輸入仿射擴(kuò)張掩碼相反地為第(r-1)輪迭代計(jì)算所需的輸出仿射擴(kuò)張掩碼的逆函數(shù),并且1≤r≤R。示例性地,假設(shè)r=1,第1輪迭代計(jì)算所需的輸入仿射擴(kuò)張掩碼是并且F0是加密過(guò)程中的輸入仿射擴(kuò)張掩碼;假設(shè)r=3,第3輪迭代計(jì)算所需的輸入仿射擴(kuò)張掩碼是并且F2是第2輪迭代計(jì)算所需的輸出仿射擴(kuò)張掩碼。本領(lǐng)域的普通技術(shù)人員可以理解,根據(jù)隨機(jī)種子,實(shí)際上通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成A和b。在確定A和b之后,可以確定F(x)=A*x+b,并且還可以確定其逆函數(shù)。因此,根據(jù)隨機(jī)種子,可以通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成上文所列的所有仿射擴(kuò)張掩碼。另外,在本發(fā)明實(shí)施例中,與現(xiàn)有技術(shù)相比較,進(jìn)一步需要根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),使得隨機(jī)干擾數(shù)據(jù)用于隨后的步驟804。應(yīng)注意,不存在執(zhí)行步驟802和步驟803的特定順序;可以在步驟803之前執(zhí)行步驟802;或可以在步驟802之前執(zhí)行步驟803,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。804。加密函數(shù)生成裝置生成加密函數(shù),其中加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。掩碼數(shù)據(jù)是在現(xiàn)實(shí)數(shù)據(jù)經(jīng)受仿射擴(kuò)張變換之后產(chǎn)生的數(shù)據(jù)。優(yōu)選地,m可以預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。應(yīng)注意,輸入長(zhǎng)度與輸出長(zhǎng)度相同的S盒可以是AES中的S盒,并且還可以是中國(guó)商業(yè)加密標(biāo)準(zhǔn)4(SM標(biāo)準(zhǔn)4,SMS4)中的S盒,其具體來(lái)說(shuō)不受本發(fā)明限制。具體來(lái)說(shuō),對(duì)于用于獲得掩碼數(shù)據(jù)的方法,可以參考現(xiàn)有技術(shù)中的白盒掩碼數(shù)據(jù)獲得方法,并且本文不再描述細(xì)節(jié)。應(yīng)注意,在本發(fā)明實(shí)施例中的預(yù)設(shè)初始值是所有可能表查找輸入值的例舉例舉。例如,預(yù)設(shè)初始值可以是0-(2n-1)的例舉,或預(yù)設(shè)初始值可以是0-(2m-1)的例舉,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制??梢詮膶?shí)施例的描述的前言內(nèi)容中獲悉,每一輪迭代計(jì)算可以包含具有最小單元的多個(gè)預(yù)計(jì)算表。在本發(fā)明實(shí)施例中,在生成具有最小單元的每個(gè)預(yù)計(jì)算表的過(guò)程期間執(zhí)行輸出仿射擴(kuò)張掩碼的仿射變換。因此,具有最小單元的預(yù)計(jì)算表可以包含2n個(gè)記錄,但是對(duì)應(yīng)于現(xiàn)實(shí)數(shù)據(jù)的掩碼數(shù)據(jù)實(shí)際上僅占據(jù)2m個(gè)記錄,使得在具有最小單元的預(yù)計(jì)算表中的(2n-2m)個(gè)記錄可用于填寫(xiě)隨機(jī)干擾數(shù)據(jù)。特別地,在本發(fā)明實(shí)施例中的加密函數(shù)可以具體來(lái)說(shuō)是白盒AES加密函數(shù),這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。示例性地,對(duì)于AES中的特定輪的迭代計(jì)算中的特定S盒以及對(duì)應(yīng)輪密鑰字節(jié)k,隨機(jī)地選擇其輸入和輸出仿射擴(kuò)張掩碼。此處,輸入仿射擴(kuò)張掩碼用作實(shí)例:假設(shè)F0(x)=A*x+b,其中x是8維列向量,A是(n*m)的二元域上的列滿秩矩陣,這表示A是二進(jìn)制字段上的列滿秩矩陣并且A是具有n×m大小的矩陣;b是n維列向量,并且每個(gè)矩陣元素的運(yùn)算是二進(jìn)制字段上的運(yùn)算。在選擇F0(x)和F1(x)之后,假設(shè)對(duì)應(yīng)于仿射變換F0(x)=A*x+b的仿射子集是Y。Y定義為:Y={y=A·x+b|x∈(GF2)8},隨后可以通過(guò)以下方式計(jì)算圖9中所示的預(yù)計(jì)算表T,(y):(1)如果n位輸入值是子集Y中的元素,也就是說(shuō),存在使F0(x)=y(tǒng)的x,假設(shè)T,(y)為F1(L*S(x+k)),其中F1(x)是輸出仿射擴(kuò)張掩碼,L是通過(guò)MCj運(yùn)算引入的乘數(shù),并且T,(y)是掩碼數(shù)據(jù);(2)如果n位輸入值是子集Y之外的元素,也就是說(shuō),不存在使F0(x)=y(tǒng)的x,T,(y)設(shè)定成隨機(jī)干擾數(shù)據(jù),其隨機(jī)性來(lái)自隨機(jī)種子和隨機(jī)數(shù)產(chǎn)生器。參考前述加密函數(shù)生成方法,以下提供通過(guò)加密函數(shù)生成裝置生成加密函數(shù)的整個(gè)過(guò)程的實(shí)例。假設(shè)m=8、n=16、R=10以及I=16,其中I是每一輪迭代計(jì)算所需的輪密鑰的字節(jié)數(shù),則:首先,接收用戶輸入的隨機(jī)種子和原始密鑰K;第二,原始密鑰K擴(kuò)張到1016字節(jié)輪密鑰RK[r],其中RK[r][i]表示第r輪的第i輪密鑰字節(jié),1≤r≤10且0≤i≤15;第三,通過(guò)使用通過(guò)隨機(jī)數(shù)產(chǎn)生器產(chǎn)生的隨機(jī)流,產(chǎn)生10輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和10輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù);其中隨機(jī)流是包括多個(gè)隨機(jī)數(shù)的隨機(jī)數(shù)序列或位流;以及第四,產(chǎn)生加密函數(shù):假設(shè)預(yù)計(jì)算表Table[round][col][row_in][row_out](y)表示第round輪和第col列的預(yù)計(jì)算表,其中輸入字節(jié)在第row_in行中并且輸出字節(jié)在第row_out行中,并且所述預(yù)計(jì)算表包含216個(gè)記錄。輸入值y是16位,并且輸出值也是16位。(a)檢查以下參數(shù),并且隨后執(zhí)行后續(xù)步驟:i.round:輪數(shù);ii.col:當(dāng)前輪的列數(shù);ii.row_in:其中定位當(dāng)前列的輸入字節(jié)的行的行數(shù);以及iv.row_out:其中定位當(dāng)前列的輸出字節(jié)的行的行數(shù);清空預(yù)計(jì)算表Table[round][col][row_in][row_out](216個(gè)空位)(b)預(yù)計(jì)算掩碼數(shù)據(jù)首先,布置若干符號(hào)。在預(yù)計(jì)算表中的掩碼數(shù)據(jù)的計(jì)算過(guò)程期間,每個(gè)中間狀態(tài)值用對(duì)應(yīng)符號(hào)表示:其中是第r輪的輸入仿射擴(kuò)張掩碼,并且Fr是第r輪的輸出仿射擴(kuò)張掩碼。具體來(lái)說(shuō),假設(shè)對(duì)應(yīng)于仿射變換Fr(x)=A*x+b的仿射子集為Y。Y定義為:Y={y=A·x+b|x∈(GF2)8}。根據(jù)y的例舉值0000-FFFF,如果y的16位輸入值是子集Y={y=A·x+b|x∈(GF2)8}中的元素,也就是說(shuō),存在使Fr(x)=y(tǒng)的x,x可經(jīng)受(AK'SB,MCj)運(yùn)算以產(chǎn)生w,并且w經(jīng)受輸出仿射擴(kuò)張掩碼Fr(x)的仿射變換以產(chǎn)生掩碼數(shù)據(jù)T,(y),其中T,(y)=Fr(L*S(x+k)),并且L是通過(guò)MCj運(yùn)算引入的乘數(shù)。示例性地,生成預(yù)計(jì)算表Table[1][1][1][1]中的掩碼數(shù)據(jù)的過(guò)程如下:對(duì)于所有例舉的數(shù)據(jù)(y=0-FFFF):如果存在使F0(x)=y(tǒng)的x,z=F1(MC1(SB(AK(x)))并且預(yù)計(jì)算表Table[1][1][1][1]的第y個(gè)空位寫(xiě)有值z(mì),并且因此當(dāng)使用表格時(shí),可以通過(guò)Table[1][1][1][1](y)獲得z的值。當(dāng)然,x的例舉值還可以是00-FF,以便獲得預(yù)計(jì)算表中的掩碼數(shù)據(jù)。在計(jì)算掩碼數(shù)據(jù)的過(guò)程期間,每個(gè)中間狀態(tài)值用對(duì)應(yīng)符號(hào)表示:x-->AKSBMCj-->w-->Fr-->z、x-->Fr-1-->y,其中Fr-1是第r輪的輸入仿射擴(kuò)張掩碼并且也是第(r-1)輪的輸出仿射擴(kuò)張掩碼;并且Fr是第r輪的輸出仿射擴(kuò)張掩碼并且也是第(r+1)輪的輸入仿射擴(kuò)張掩碼。示例性地,生成預(yù)計(jì)算表Table[0][1][1][1]中的掩碼數(shù)據(jù)的過(guò)程如下:對(duì)于所有現(xiàn)實(shí)數(shù)據(jù)(x=0-FF):y=F0(x)、z=F1(MC1(SB(AK(x)))預(yù)計(jì)算表Table[0][1][1][1]的第y個(gè)空位寫(xiě)有值z(mì),并且因此當(dāng)使用表格時(shí),可以通過(guò)Table[0][1][1][1](y)獲得z的值。(c)寫(xiě)有隨機(jī)干擾數(shù)據(jù)預(yù)計(jì)算表Table[round][col][row_in][row_out]的所有其余空位(216-28)寫(xiě)有通過(guò)隨機(jī)數(shù)產(chǎn)生器生成的16位值的隨機(jī)干擾數(shù)據(jù)。以下測(cè)量本發(fā)明的安全性,并且下文分析安全性:因?yàn)榇罅侩S機(jī)干擾數(shù)據(jù)添加在加密函數(shù)的預(yù)計(jì)算表中,所以在攻擊者找到現(xiàn)實(shí)預(yù)計(jì)算表之前,攻擊者無(wú)法使用現(xiàn)有技術(shù)來(lái)以225的計(jì)算復(fù)雜性恢復(fù)包含在預(yù)計(jì)算表中的密鑰字節(jié)。因此,攻擊者必須嘗試所有可能的仿射子集,其中嘗試的次數(shù)取決于仿射子集的數(shù)目。在n維二進(jìn)制字段空間(GF2)n中的m維仿射子空間的數(shù)目N(n,m)是其在下文中提供:考慮仿射變換y=Ax+b,其中A是(n*m)的二元域上的列滿秩矩陣,換句話說(shuō),A是二進(jìn)制字段上的具有n*m大小的列滿秩矩陣;b是n維向量,并且n>=m。存在n*n可逆矩陣P和m*m可逆矩陣Q,其使得:其中Im是具有m*m大小的單位矩陣并且代入y=Ax+b中以產(chǎn)生因?yàn)镼x可以具有任何值,等式等于P2y=P2b=b,,其中P2是秩為n-m的(n-m)*n矩陣(P2是A的對(duì)偶矩陣),并且b,是(n-m)維列向量。此外,可以看出,y屬于仿射子集Y={y=A·x+b|x∈(GF2)m}并且等于P2y=b,。因此,通過(guò)P2的值和b,,可以唯一地確定仿射子集Y。另外,考慮到對(duì)于具有任何(n-m)*(n-m)大小的可逆矩陣R,由P2y=b,定義的仿射子集與由(RP2)y=Rb,的仿射子集相同,并且因此,當(dāng)計(jì)算仿射子集的數(shù)目時(shí)需要去除復(fù)制計(jì)數(shù)。因此,可以獲悉,n維二進(jìn)制字段空間中的m維仿射子集的數(shù)目N(n,m)等于:因?yàn)閚維二進(jìn)制字段空間(GF2)n中的m維仿射子空間的數(shù)目N(n,m)是以便破解n位仿射擴(kuò)張后的加密函數(shù)的生成算法,所以攻擊者必須窮盡性地嘗試所有N(n,m)個(gè)不同的m維仿射子集且隨后嘗試恢復(fù)密鑰,其中計(jì)算復(fù)雜性是其在下文中證明:攻擊者必須逐個(gè)地嘗試所有N(n,m)個(gè)可能的仿射子集。當(dāng)選擇仿射子集時(shí),攻擊者可以使用以下方法來(lái)確定選定仿射子集是否正確:根據(jù)生成預(yù)計(jì)算表的過(guò)程,可以獲悉仿射子集Y中的所有元素的表查找和XOR求和的結(jié)果必須等于0。假設(shè)X是原始m維二進(jìn)制字段空間,則對(duì)于擴(kuò)張后的輸入字節(jié)y,存在四個(gè)此類(lèi)預(yù)計(jì)算表T,,并且因此,四個(gè)預(yù)計(jì)算表提供4n位確定條件。通過(guò)隨機(jī)值,所有四個(gè)預(yù)計(jì)算表的總和為0的可能性是2-4n。在選擇仿射子集之后,如果攻擊者發(fā)現(xiàn)預(yù)計(jì)算表的XOR總和為非零,可以確定仿射子集肯定不正確。當(dāng)N(n,m)<24n并且當(dāng)找到XOR總和是0的仿射子集時(shí),攻擊者幾乎可以唯一地確定這是正確子集,并且隨后執(zhí)行密鑰恢復(fù)的第二步驟。當(dāng)N(n,m)>=24n并且當(dāng)攻擊者找到XOR總和是0的仿射子集時(shí),子集未必正確。因此,攻擊者必須嘗試密鑰恢復(fù)的第二步驟,并且所需嘗試的總數(shù)目是N(n,8)/24n。因此,此攻擊方法的總計(jì)算復(fù)雜性是除了嘗試恢復(fù)密鑰的第二步驟之外檢查所有仿射子集的復(fù)雜性,其可以表達(dá)為:并且證明完成。示例性地,根據(jù)前述公式,以下展示當(dāng)m=8并且n在9至23的范圍內(nèi)時(shí)在本發(fā)明實(shí)施例中的安全性和存儲(chǔ)器占用,如表3中所示:表3因?yàn)橹鳈C(jī)計(jì)算機(jī)的極值計(jì)算能力當(dāng)前適當(dāng)?shù)貫?60,所以可以從表3中看出,當(dāng)n≥15時(shí),此解決方案的安全性可以滿足大部分應(yīng)用情形的安全需求。另外,在揭示白盒加密函數(shù)生成方法的情況下,即使攻擊者已破解預(yù)計(jì)算表,我們也可以改變隨機(jī)種子以防止攻擊者破解隨后產(chǎn)生的新預(yù)計(jì)算表。因此,在本發(fā)明實(shí)施例中,可以通過(guò)保護(hù)隨機(jī)種子進(jìn)一步減小攻擊范圍。因此,基于在本發(fā)明實(shí)施例中提供的前述加密函數(shù)生成方法,可以從前述分析中獲悉,本發(fā)明可以在揭示白盒加密函數(shù)生成方法時(shí)確保用于白盒加密函數(shù)中的密鑰的機(jī)密性。實(shí)施例2本發(fā)明實(shí)施例提供一種加密方法。具體來(lái)說(shuō),如圖10中所示,所述方法包括以下步驟:1001.加密裝置接收用戶輸入的明文。1002.加密裝置根據(jù)預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和明文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù)。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中,仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,其中m和n是預(yù)設(shè)正整數(shù),并且n>m。以此方式,在執(zhí)行步驟1002中的仿射擴(kuò)張變換之后,明文可以從m維列向量擴(kuò)張到n維列向量。示例性地,假設(shè)在本發(fā)明實(shí)施例中的明文輸入是128位,則輸入明文可以借助于輸入仿射擴(kuò)張掩碼的仿射變換從128位長(zhǎng)度擴(kuò)張到16n位長(zhǎng)度。1003.加密裝置使用預(yù)存儲(chǔ)的加密函數(shù)的預(yù)計(jì)算表根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù)。預(yù)存儲(chǔ)的加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)加密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù)。本領(lǐng)域的普通技術(shù)人員可以理解,第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。優(yōu)選地,在本發(fā)明實(shí)施例中,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中的加密過(guò)程中所需的預(yù)存儲(chǔ)的加密函數(shù)是在實(shí)施例1中生成的加密函數(shù)。對(duì)于特定生成方法,可以參考實(shí)施例1中的描述并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。1004.加密裝置根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于明文的密文。參考前述加密方法,以下提供其中加密裝置對(duì)輸入明文進(jìn)行加密的實(shí)例。假設(shè)m=8、n=16、R=10以及I=16,其中I是每一輪迭代計(jì)算所需的輪密鑰的字節(jié)數(shù),則:首先,加密裝置接收用戶輸入的明文。假設(shè)給定明文是總共包含16字節(jié)的P。如圖13中所示,P[i]用于表示第i字節(jié)。也就是說(shuō),P=P[0]||P[1]||…||P[15],其中a||b是指連接二進(jìn)制串a(chǎn)和b。第二,假設(shè)預(yù)存儲(chǔ)的輸入仿射擴(kuò)張掩碼是F[0],如果F[0][i](x)表示第i字節(jié)的輸入仿射擴(kuò)張掩碼,F(xiàn)[0][i](x)=A[0][i](x)+b[0][i]。因此,加密計(jì)算根據(jù)輸入仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于輸入明文的輸入掩碼數(shù)據(jù)P,=F[0][P],其中P,[i]=F[0][i](P[i])是指借助于仿射擴(kuò)張映射將明文的第i字節(jié)P[i]改變成具有2字節(jié)(16位)長(zhǎng)度的P[i]。因此,P,的總長(zhǎng)度是32字節(jié),即256位,其為明文P的長(zhǎng)度的兩倍。第三,加密過(guò)程(迭代表查找)可以從實(shí)施例1中的描述獲悉,加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),并且輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù)。因此,加密裝置可以使用以下方法來(lái)使用預(yù)存儲(chǔ)的加密函數(shù)根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù):假設(shè)預(yù)計(jì)算表Table[r][col][row_in][row_out](y)表示第r輪和第col列的預(yù)計(jì)算表,其中輸入字節(jié)在第row_in行中并且輸出字節(jié)在第row_out行中,并且所述預(yù)計(jì)算表包含216個(gè)記錄。輸入值y是16位,并且輸出值也是16位。a.假設(shè)初始迭代狀態(tài)S[0]為P,,并且使用S[r][k]來(lái)表示第r輪迭代狀態(tài)S[r]的第k子塊(每個(gè)子塊具有2字節(jié))。b.循環(huán)迭代r個(gè)輪、從S[r]執(zhí)行表查找并且計(jì)算S[r+1];對(duì)于r=1…10(輪數(shù))對(duì)于col=0…3(目前計(jì)算出的輸入字節(jié)的列數(shù))對(duì)于row_in=0…3(目前計(jì)算出的輸入字節(jié)的行數(shù))對(duì)于row_out=0…3(目前計(jì)算出的列的哪個(gè)行中的輸出字節(jié))也就是說(shuō),表格分成用于單獨(dú)計(jì)算的4個(gè)子表格,并且最后,對(duì)結(jié)果進(jìn)行XOR運(yùn)算,其中表示XOR。示例性地,假設(shè)col=0并且row_out=3,在子塊k=4*col+row_out=3經(jīng)受10輪表查找之后,對(duì)應(yīng)掩碼數(shù)據(jù)是輸出掩碼數(shù)據(jù)是=s[10][0]||s[10][1]||......||s[10][15]。第四,輸出掩碼數(shù)據(jù)的逆運(yùn)算過(guò)程。在獲得輸出掩碼數(shù)據(jù)之后,加密裝置獲得狀態(tài)S[10],其為256位二進(jìn)制串。在這種情況下,S[10]通過(guò)使用最后一輪的仿射擴(kuò)張掩碼的逆函數(shù)映射回密文C=F[10]-1(S[10])。具體來(lái)說(shuō),每個(gè)密文字節(jié)C[i]的計(jì)算過(guò)程是C[i]=F[10][i]-1(S[10][i])?;谠诒景l(fā)明實(shí)施例中提供的加密方法,因?yàn)楸景l(fā)明實(shí)施例使用在實(shí)施例1中生成的加密函數(shù)來(lái)對(duì)明文進(jìn)行加密,所以考慮到實(shí)施例1中的加密函數(shù)安全分析示出加密函數(shù)可以在揭示白盒加密函數(shù)生成方法時(shí)確保用于白盒加密函數(shù)中的密鑰的機(jī)密性,則在本發(fā)明實(shí)施例中提供的加密函數(shù)也可以在揭示白盒加密函數(shù)生成方法時(shí)確保用于白盒加密函數(shù)中的密鑰的機(jī)密性。實(shí)施例3本發(fā)明實(shí)施例提供一種解密函數(shù)生成方法。具體來(lái)說(shuō),如圖12中所示,所述方法包括以下步驟:1201.解密函數(shù)生成裝置獲得隨機(jī)種子和原始密鑰。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中提供的解密函數(shù)生成方法中,解密函數(shù)生成裝置首先需要獲得隨機(jī)種子和原始密鑰。隨機(jī)種子是固定長(zhǎng)度位串,并且可以用于通過(guò)使用隨機(jī)數(shù)產(chǎn)生器產(chǎn)生隨機(jī)數(shù)。隨機(jī)數(shù)產(chǎn)生器可以被視為函數(shù)g(x),其中輸入是固定長(zhǎng)度隨機(jī)種子,例如k位串,并且輸出是具有任何數(shù)目位的長(zhǎng)度的隨機(jī)數(shù)序列并且用作隨后使用的隨機(jī)數(shù)源;并且密鑰是一組信息碼,并且密鑰參與密碼術(shù)的“運(yùn)算”且對(duì)密碼術(shù)的“運(yùn)算”施加特定控制影響。DES支持64位長(zhǎng)度的密鑰,并且AES支持具有三種類(lèi)型的長(zhǎng)度的密鑰:128位、192位和256位。1202.解密函數(shù)生成裝置根據(jù)原始密鑰生成R輪迭代所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示解密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R。具體來(lái)說(shuō),對(duì)于用于在獲得原始密鑰之后通過(guò)解密函數(shù)生成裝置生成R輪迭代計(jì)算所需的輪密鑰的方法,可以參考AES標(biāo)準(zhǔn)算法并且在本發(fā)明實(shí)施例中不描述細(xì)節(jié)。1203.解密函數(shù)生成裝置通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)。在本發(fā)明實(shí)施例中,仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)仿射地變換成n比特?cái)?shù)據(jù)的仿射變換矩陣,m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù)。本領(lǐng)域的普通技術(shù)人員可以理解,第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。優(yōu)選地,在本發(fā)明實(shí)施例中,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。應(yīng)注意,在本發(fā)明實(shí)施例中,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,矩陣A的行數(shù)n大于列數(shù)m,并且因此,借助于仿射變換,x可以從m維列向量擴(kuò)張成n維列向量。特別地,為了防止在仿射變換之后的信息損耗,矩陣A需要是列滿秩矩陣(也就是說(shuō),所有列向量是線性獨(dú)立的,秩(A)=m);對(duì)于列向量b,不強(qiáng)加任何要求并且其值是任意的。本領(lǐng)域的普通技術(shù)人員可以理解,在生成第r輪的預(yù)計(jì)算表的過(guò)程期間,如果第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第(r-1)輪的掩碼數(shù)據(jù),即,如果第r輪的預(yù)設(shè)輸入數(shù)據(jù)是0-(2n-1),為了確保對(duì)應(yīng)于彼此的串列的掩碼層之間的相互抵消,第r輪的迭代計(jì)算所需的輸入仿射擴(kuò)張掩碼相反地為第(r-1)輪迭代計(jì)算所需的輸出仿射擴(kuò)張掩碼的逆函數(shù),并且1≤r≤R。示例性地,假設(shè)r=1,第1輪迭代計(jì)算所需的輸入仿射擴(kuò)張掩碼是并且F0是解密過(guò)程中的輸入仿射擴(kuò)張掩碼;假設(shè)r=3,第3輪迭代計(jì)算所需的輸入仿射擴(kuò)張掩碼是并且F2是第2輪迭代計(jì)算所需的輸出仿射擴(kuò)張掩碼。本領(lǐng)域的普通技術(shù)人員可以理解,根據(jù)隨機(jī)種子,實(shí)際上通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成A和b。在確定A和b之后,可以確定F(x)=A*x+b,并且還可以確定其逆函數(shù)。因此,根據(jù)隨機(jī)種子,可以通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成上文所列的所有仿射擴(kuò)張掩碼。另外,在本發(fā)明實(shí)施例中,與現(xiàn)有技術(shù)相比較,進(jìn)一步需要根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),使得隨機(jī)干擾數(shù)據(jù)用于隨后的步驟1204。應(yīng)注意,不存在執(zhí)行步驟1202和步驟1203的特定順序;可以在步驟1203之前執(zhí)行步驟1202;或可以在步驟1202之前執(zhí)行步驟1203,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。1204.解密函數(shù)生成裝置生成解密函數(shù),其中解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。掩碼數(shù)據(jù)是在現(xiàn)實(shí)數(shù)據(jù)經(jīng)受仿射擴(kuò)張變換之后產(chǎn)生的數(shù)據(jù)。優(yōu)選地,m可以預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。應(yīng)注意,輸入長(zhǎng)度與輸出長(zhǎng)度相同的S盒可以是AES中的S盒,并且還可以是SMS4中的S盒,這具體來(lái)說(shuō)不受本發(fā)明的限制。具體來(lái)說(shuō),對(duì)于用于獲得掩碼數(shù)據(jù)的方法,可以參考現(xiàn)有技術(shù)中的白盒掩碼數(shù)據(jù)獲得方法,并且本文不再描述細(xì)節(jié)。應(yīng)注意,在本發(fā)明實(shí)施例中的預(yù)設(shè)初始值是所有可能表查找輸入值的例舉。例如,預(yù)設(shè)初始值可以是0-(2n-1)的例舉,或預(yù)設(shè)初始值可以是0-(2m-1)的例舉,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制??梢詮膶?shí)施例的描述的前言內(nèi)容中獲悉,每一輪迭代計(jì)算可以包含具有最小單元的多個(gè)預(yù)計(jì)算表。在本發(fā)明實(shí)施例中,在生成具有最小單元的每個(gè)預(yù)計(jì)算表的過(guò)程期間執(zhí)行輸出仿射擴(kuò)張掩碼的仿射變換。因此,具有最小單元的預(yù)計(jì)算表可以包含2n個(gè)記錄,但是對(duì)應(yīng)于現(xiàn)實(shí)數(shù)據(jù)的掩碼數(shù)據(jù)實(shí)際上僅占據(jù)2m個(gè)記錄,使得在具有最小單元的預(yù)計(jì)算表中的(2n-2m)個(gè)記錄可用于填寫(xiě)隨機(jī)干擾數(shù)據(jù)。示例性地,對(duì)于AES中的特定輪的迭代計(jì)算中的特定S盒以及對(duì)應(yīng)輪密鑰字節(jié)k,隨機(jī)地選擇其輸入和輸出仿射擴(kuò)張掩碼。此處,輸入仿射擴(kuò)張掩碼用作實(shí)例:假設(shè)F0(x)=A*x+b,其中x是8維列向量,A是二進(jìn)制字段上具有n*8大小的列滿秩矩陣,b是n維列向量,并且每個(gè)矩陣元素的運(yùn)算是二進(jìn)制字段上的運(yùn)算。在選擇F0(x)和F1(x)之后,假設(shè)對(duì)應(yīng)于仿射變換F0(x)=A*x+b的仿射子集為Y。Y定義為:Y={y=A·x+b|x∈(GF2)8},隨后可以通過(guò)以下方式計(jì)算圖8中所示的預(yù)計(jì)算表T,(y):(1)如果n位輸入值是子集Y中的元素,也就是說(shuō),存在使F0(x)=y(tǒng)的x,假設(shè)T,(y)為F1(L*S(x+k)),其中F1(x)是輸出仿射擴(kuò)張掩碼,L是通過(guò)MCj運(yùn)算引入的乘數(shù),并且T,(y)是掩碼數(shù)據(jù);(2)如果n位輸入值是子集Y之外的元素,也就是說(shuō),不存在使F0(x)=y(tǒng)的x,T,(y)設(shè)定成隨機(jī)干擾數(shù)據(jù),其隨機(jī)性來(lái)自隨機(jī)種子和隨機(jī)數(shù)產(chǎn)生器。應(yīng)注意,如在實(shí)施例的描述的前言部分中所提及,由于AES的精密設(shè)計(jì),還可以類(lèi)似于SR-1(AK'SB-1MC-1)SR-1(AK'SB-1MC-1)......SR-1(AK'SB-1MC-1)的等效形式寫(xiě)出解密過(guò)程。因此,對(duì)于參考前述解密函數(shù)生成方法使用解密函數(shù)生成裝置來(lái)生成解密函數(shù)的實(shí)例,可以參考使用加密函數(shù)生成裝置來(lái)生成實(shí)施例1中的加密函數(shù)的實(shí)例,并且此處本發(fā)明實(shí)施例不再提供生成解密函數(shù)的實(shí)例。具體來(lái)說(shuō),對(duì)于本發(fā)明的安全性分析,可以參考用于通過(guò)實(shí)施例1中的加密函數(shù)生成裝置生成加密函數(shù)的方法中的安全性分析,并且本文不再描述細(xì)節(jié)。因此,基于在本發(fā)明實(shí)施例中提供的前述解密函數(shù)生成方法,可以從安全性分析中獲悉,本發(fā)明可以在揭示白盒解密函數(shù)生成方法的情況下保持白盒解密函數(shù)中的密鑰的安全性。實(shí)施例4本發(fā)明實(shí)施例提供一種解密方法。具體來(lái)說(shuō),如圖13中所示,所述方法包括以下步驟:1301.解密裝置接收用戶輸入的密文。1302.解密裝置根據(jù)預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和密文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù)。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中,仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,其中m和n是預(yù)設(shè)正整數(shù),并且n>m。以此方式,在執(zhí)行步驟1302中的仿射擴(kuò)張變換之后,密文可以從m維列向量擴(kuò)張到n維列向量。示例性地,假設(shè)在本發(fā)明實(shí)施例中的密文輸入是128位,則輸入密文可以借助于輸入仿射擴(kuò)張掩碼的仿射變換從128位長(zhǎng)度擴(kuò)張到16n位長(zhǎng)度。1303.解密裝置使用預(yù)存儲(chǔ)的加密函數(shù)的預(yù)計(jì)算表根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù)。預(yù)存儲(chǔ)的解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)解密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù)。本領(lǐng)域的普通技術(shù)人員可以理解,第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼,這具體來(lái)說(shuō)在本發(fā)明實(shí)施例中不受限制。優(yōu)選地,在本發(fā)明實(shí)施例中,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。具體來(lái)說(shuō),在本發(fā)明實(shí)施例中的解密過(guò)程中所需的預(yù)存儲(chǔ)的解密函數(shù)是在實(shí)施例3中生成的解密函數(shù)。對(duì)于特定生成方法,可以參考實(shí)施例3中的描述并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。1304.解密裝置根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于密文的明文。具體來(lái)說(shuō),對(duì)于使用解密裝置來(lái)解密密文的實(shí)例,可以參考使用加密裝置來(lái)對(duì)實(shí)施例2中的明文進(jìn)行加密的實(shí)例,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)?;谠诒景l(fā)明實(shí)施例中提供的解密方法,因?yàn)楸景l(fā)明實(shí)施例使用在實(shí)施例3中生成的解密函數(shù)來(lái)對(duì)密文進(jìn)行解密,所以考慮到解密函數(shù)安全性分析示出解密函數(shù)可以在揭示白盒解密函數(shù)生成方法的情況下保持白盒解密函數(shù)中的密鑰的安全性,則在本發(fā)明實(shí)施例中提供的解密函數(shù)也可以在揭示白盒解密函數(shù)生成方法的情況下保持白盒解密函數(shù)中的密鑰的安全性。實(shí)施例5本發(fā)明實(shí)施例提供一種加密函數(shù)生成裝置1400。具體來(lái)說(shuō),如圖14中所示,裝置1400包含隨機(jī)種子接收單元1401、密鑰接收單元1402、密鑰生成單元1403、隨機(jī)數(shù)生成單元1404和加密函數(shù)生成單元1405。隨機(jī)種子接收單元1401用于接收用戶輸入的隨機(jī)種子。密鑰接收單元1402用于接收用戶輸入的原始密鑰。密鑰生成單元1403用于根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示用于生成加密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R。隨機(jī)數(shù)生成單元1404用于通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù)。加密函數(shù)生成單元1405用于生成加密函數(shù),其中加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包含第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定的F(x)。具體來(lái)說(shuō),第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。特別地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用加密函數(shù)生成裝置1400生成加密函數(shù)的方法,可以參考實(shí)施例1中的描述,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的加密函數(shù)生成裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果,并且本文不再描述細(xì)節(jié)。實(shí)施例6本發(fā)明實(shí)施例提供一種加密裝置1500。具體來(lái)說(shuō),如圖15中所示,加密裝置1500包含明文接收單元1501、輸入掩碼數(shù)據(jù)計(jì)算單元1502、搜索單元1503和密文計(jì)算單元1504。明文接收單元1501用于接收用戶輸入的明文;輸入掩碼數(shù)據(jù)計(jì)算單元1502用于根據(jù)包含于預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和明文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,其中m和n是預(yù)設(shè)正整數(shù)并且n>m。搜索單元1503用于使用預(yù)存儲(chǔ)的加密函數(shù)的預(yù)計(jì)算表根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中所述預(yù)存儲(chǔ)的加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)加密函數(shù)生成裝置1500并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,并且R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù)。密文計(jì)算單元1504用于根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于明文的密文。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。特別地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用加密裝置1500對(duì)明文進(jìn)行加密的方法,可以參考實(shí)施例2中的描述并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的加密裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果并且本文不再描述細(xì)節(jié)。實(shí)施例7本發(fā)明實(shí)施例提供一種解密函數(shù)生成裝置1600。具體來(lái)說(shuō),如圖16中所示,裝置1600包含隨機(jī)種子接收單元1601、密鑰接收單元1602、密鑰生成單元1603、隨機(jī)數(shù)生成單元1604和解密函數(shù)生成單元1605。隨機(jī)種子接收單元1601用于接收用戶輸入的隨機(jī)種子。密鑰接收單元1602用于接收用戶輸入的原始密鑰。密鑰生成單元1603用于根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R。隨機(jī)數(shù)生成單元1604用于通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù)。解密函數(shù)生成單元1605用于生成解密函數(shù),其中解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包含第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。具體來(lái)說(shuō),第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。特別地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用解密函數(shù)生成裝置1600生成解密函數(shù)的方法,可以參考實(shí)施例3中的描述,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的解密函數(shù)生成裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果,并且本文不再描述細(xì)節(jié)。實(shí)施例8本發(fā)明實(shí)施例提供一種解密裝置1700。具體來(lái)說(shuō),如圖17中所示,解密裝置1700包含密文接收單元1701、輸入掩碼數(shù)據(jù)計(jì)算單元1702、搜索單元1703和明文計(jì)算單元1704。密文接收單元1701用于接收用戶輸入的密文。輸入掩碼數(shù)據(jù)計(jì)算單元1702用于根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和密文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,其中m和n是預(yù)設(shè)正整數(shù)并且n>m。搜索單元1703用于使用預(yù)存儲(chǔ)的加密函數(shù)的預(yù)計(jì)算表根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中預(yù)存儲(chǔ)的解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)解密函數(shù)生成裝置1700并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤r≤R,并且R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù)。明文計(jì)算單元1704用于根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于密文的明文。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。特別地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用解密裝置1700對(duì)密文進(jìn)行解密的方法,可以參考實(shí)施例4這噢乖的描述,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的解密裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此處產(chǎn)生的技術(shù)效果,并且本文不再描述細(xì)節(jié)。實(shí)施例9本發(fā)明實(shí)施例提供一種加密函數(shù)生成裝置1800。具體來(lái)說(shuō),如圖18中所示,裝置1800包含:接收器1801、處理器1802和隨機(jī)數(shù)產(chǎn)生器1803。接收器1801用于接收用戶輸入的隨機(jī)種子。接收器1801進(jìn)一步用于接收用戶輸入的原始密鑰。處理器1802用于根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R。隨機(jī)數(shù)產(chǎn)生器1803用于根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù)。處理器1802用于生成加密函數(shù),其中所述加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。具體來(lái)說(shuō),第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。特別地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用加密函數(shù)生成裝置1800生成加密函數(shù)的方法,可以參考實(shí)施例1中的描述,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的加密函數(shù)生成裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果,并且本文不再描述細(xì)節(jié)。實(shí)施例10本發(fā)明實(shí)施例提供一種加密裝置1900。具體來(lái)說(shuō),如圖19中所示,加密裝置1900包含接收器1901和處理器1902。接收器1901用于接收用戶輸入的明文。處理器1902用于根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和明文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,其中m和n是預(yù)設(shè)正整數(shù)并且n>m。處理器1902進(jìn)一步用于使用預(yù)存儲(chǔ)的加密函數(shù)的預(yù)計(jì)算表根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中所述預(yù)存儲(chǔ)的加密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)加密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤rR,并且R表示生成加密函數(shù)所需的迭代計(jì)算的輪數(shù)。處理器1902進(jìn)一步用于根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于明文的密文。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。優(yōu)選地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用加密裝置1900對(duì)明文進(jìn)行加密的方法,可以參考實(shí)施例2中的描述并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的加密裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果,并且本文不再描述細(xì)節(jié)。實(shí)施例11本發(fā)明實(shí)施例提供一種解密函數(shù)生成裝置。具體來(lái)說(shuō),如圖20中所示,裝置2000包含:接收器2001、處理器2002和隨機(jī)數(shù)產(chǎn)生器2003。接收器2001用于接收用戶輸入的隨機(jī)種子。接收器2001進(jìn)一步用于接收用戶輸入的原始密鑰。處理器2002用于根據(jù)原始密鑰生成R輪迭代計(jì)算所需的輪密鑰,其中R輪迭代計(jì)算所需的輪密鑰包含第r輪的輪密鑰,R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù),R是正整數(shù)并且1≤r≤R。隨機(jī)數(shù)產(chǎn)生器2003用于根據(jù)隨機(jī)種子生成R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼和R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,m和n是預(yù)設(shè)正整數(shù),n>m,R輪迭代計(jì)算所需的仿射擴(kuò)張掩碼包含第r輪的仿射擴(kuò)張掩碼,并且R輪迭代計(jì)算所需的隨機(jī)干擾數(shù)據(jù)包含第r輪的隨機(jī)干擾數(shù)據(jù)。處理器2002用于生成解密函數(shù),其中解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。具體來(lái)說(shuō),第r輪的仿射擴(kuò)張掩碼可以包含第r輪的輸入仿射擴(kuò)張掩碼和第r輪的輸出仿射擴(kuò)張掩碼。特別地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用解密函數(shù)生成裝置2000生成解密函數(shù)的方法,可以參考實(shí)施例3中的描述,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的解密函數(shù)生成裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果并且本文不再描述細(xì)節(jié)。實(shí)施例12本發(fā)明實(shí)施例提供一種解密裝置2100。具體來(lái)說(shuō),如圖21中所示,解密裝置2100包含接收器2101和處理器2102。接收器2101用于接收用戶輸入的密文。處理器2102用于根據(jù)包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼和密文中的輸入仿射擴(kuò)張掩碼計(jì)算輸入掩碼數(shù)據(jù),其中仿射擴(kuò)張掩碼是用于將m比特?cái)?shù)據(jù)映射到n比特?cái)?shù)據(jù)的仿射變換矩陣,其中m和n是預(yù)設(shè)正整數(shù)并且n>m。處理器2102進(jìn)一步用于使用預(yù)存儲(chǔ)的加密函數(shù)的預(yù)計(jì)算表根據(jù)輸入掩碼數(shù)據(jù)獲得輸出掩碼數(shù)據(jù),其中所述預(yù)存儲(chǔ)的解密函數(shù)包含R輪迭代計(jì)算的預(yù)計(jì)算表,R輪迭代計(jì)算的預(yù)計(jì)算表中的第r輪的預(yù)計(jì)算表包括第r輪的預(yù)設(shè)輸入數(shù)據(jù)與對(duì)應(yīng)于輸入數(shù)據(jù)的輸出數(shù)據(jù)之間的一對(duì)一映射關(guān)系,第r輪的預(yù)設(shè)輸入數(shù)據(jù)包含第r輪的預(yù)設(shè)輸入掩碼數(shù)據(jù),輸出數(shù)據(jù)包含第r輪的輸出掩碼數(shù)據(jù)和第r輪的隨機(jī)干擾數(shù)據(jù),并且根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù),根據(jù)接收到的隨機(jī)種子通過(guò)解密函數(shù)生成裝置并且通過(guò)使用隨機(jī)數(shù)產(chǎn)生器生成第r輪的仿射擴(kuò)張掩碼和第r輪的隨機(jī)干擾數(shù)據(jù),1≤rR,并且R表示生成解密函數(shù)所需的迭代計(jì)算的輪數(shù)。處理器2102進(jìn)一步用于根據(jù)輸出掩碼數(shù)據(jù)和包含在預(yù)存儲(chǔ)的仿射擴(kuò)張掩碼中的輸出仿射擴(kuò)張掩碼計(jì)算對(duì)應(yīng)于密文的明文。優(yōu)選地,根據(jù)F(x)=A*x+b確定仿射擴(kuò)張掩碼,其中x是m維列向量,A和b是通過(guò)使用隨機(jī)數(shù)產(chǎn)生器并且根據(jù)隨機(jī)種子生成的矩陣,A是(n*m)的二元域上的列滿秩矩陣,b是n維列向量,并且可以根據(jù)A和b確定F(x)。優(yōu)選地,m預(yù)設(shè)為S盒的輸入/輸出長(zhǎng)度,所述S盒的輸入長(zhǎng)度與輸出長(zhǎng)度相同。根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼計(jì)算第r輪的輸出掩碼數(shù)據(jù)包含:根據(jù)預(yù)設(shè)初始值、第r輪的輪密鑰和第r輪的仿射擴(kuò)張掩碼參考S盒計(jì)算第r輪的輸出掩碼數(shù)據(jù)。具體來(lái)說(shuō),對(duì)于用于通過(guò)使用解密裝置2100對(duì)密文進(jìn)行解密的方法,可以參考實(shí)施例4中的描述,并且在本發(fā)明實(shí)施例中不再描述細(xì)節(jié)。因?yàn)樵诖藢?shí)施例中提供的解密裝置可以用于實(shí)施前述方法,所以可以通過(guò)參考前述方法實(shí)施例中的描述獲悉從此產(chǎn)生的技術(shù)效果并且本文不再描述細(xì)節(jié)。本領(lǐng)域的普通技術(shù)人員可以清楚地理解,出于描述的簡(jiǎn)易性和簡(jiǎn)潔性,在前述裝置中,前述功能模塊的劃分用作說(shuō)明的實(shí)例。在實(shí)際應(yīng)用中,前述功能可以分配到不同模塊并且根據(jù)需求實(shí)施,也就是說(shuō),裝置的內(nèi)部結(jié)構(gòu)分成不同功能模塊以實(shí)施全部或部分上述功能。對(duì)于前述系統(tǒng)、裝置和單元的詳細(xì)工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程并且本文不再描述細(xì)節(jié)。在本申請(qǐng)案中提供若干實(shí)施例中,應(yīng)理解,所揭示的系統(tǒng)、裝置和方法可以通過(guò)其它方式實(shí)現(xiàn)。例如,所描述的裝置實(shí)施例僅僅是示例性的。例如,模塊或單元?jiǎng)澐謨H僅是邏輯功能劃分并且可以是實(shí)際實(shí)施方案中的其它劃分。例如,可以將多個(gè)單元或組件組合或整合到另一系統(tǒng)中,或可以忽略或不執(zhí)行一些特征。另外,所顯示或所論述的相互耦合或直接耦合或通信連接可以通過(guò)某一接口實(shí)施。裝置或單元之間的間接耦合或通信連接可以通過(guò)電氣、機(jī)械或其它形式實(shí)施。作為單獨(dú)部分描述的單元可以或可以不物理分離,并且作為單元顯示的部分可以為或可以不為物理單元、可以位于一個(gè)位置或可以在多個(gè)網(wǎng)絡(luò)單元上分布??梢愿鶕?jù)實(shí)際需要選擇部分或全部單元以實(shí)現(xiàn)實(shí)施例的解決方案的目的。另外,本發(fā)明的實(shí)施例中的功能單元可以集成到一個(gè)處理單元中,或每個(gè)單元可以物理上單獨(dú)存在,或兩個(gè)或更多單元集成到一個(gè)單元中。集成單元可以硬件的形式實(shí)施,或可以軟件功能單元的形式實(shí)施。當(dāng)集成單元以軟件功能單元的形式實(shí)施以及作為單獨(dú)產(chǎn)品銷(xiāo)售或使用時(shí),所述集成單元可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)媒體中?;诖死斫猓緦?shí)質(zhì)上發(fā)明的技術(shù)方案,或促進(jìn)現(xiàn)有技術(shù)的部分,或全部或部分技術(shù)方案可以軟件產(chǎn)品的形式實(shí)施。軟件產(chǎn)品存儲(chǔ)于存儲(chǔ)媒體中并且包含用于指示計(jì)算機(jī)裝置(可以是個(gè)人計(jì)算機(jī)、服務(wù)器或網(wǎng)絡(luò)裝置)或處理器執(zhí)行本發(fā)明的實(shí)施例中所描述的方法步驟的全部或部分的若干指令。前述存儲(chǔ)媒體包含:可以存儲(chǔ)程序代碼的任何媒體,例如USB閃存盤(pán)、可拆卸硬盤(pán)、只讀存儲(chǔ)器(Read-OnlyMemory,ROM)、隨機(jī)存取存儲(chǔ)器(RandomAccessMemory,RAM)、磁盤(pán)或光學(xué)光盤(pán)。上述描述僅是本發(fā)明的具體實(shí)施方式但并非旨在限制本發(fā)明的保護(hù)范圍。本領(lǐng)域的普通技術(shù)人員容易想到的在本發(fā)明所揭示的技術(shù)范圍內(nèi)的任何變化或替代應(yīng)處于本發(fā)明的保護(hù)范圍內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)受制于權(quán)利要求書(shū)的保護(hù)范圍。當(dāng)前第1頁(yè)1 2 3 
當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
欧美乱码精品一区二区三区| 18禁裸乳无遮挡动漫免费视频| 纵有疾风起免费观看全集完整版| 男女之事视频高清在线观看| 最近最新中文字幕大全免费视频| 欧美xxⅹ黑人| 汤姆久久久久久久影院中文字幕| 一区二区三区精品91| av视频免费观看在线观看| 黑人巨大精品欧美一区二区蜜桃| 亚洲少妇的诱惑av| 精品人妻1区二区| 日韩欧美国产一区二区入口| av在线老鸭窝| 久久精品aⅴ一区二区三区四区| 亚洲视频免费观看视频| 男女床上黄色一级片免费看| 久久精品人人爽人人爽视色| 日本a在线网址| 午夜福利在线观看吧| 亚洲人成电影免费在线| 一本色道久久久久久精品综合| 法律面前人人平等表现在哪些方面 | 日日夜夜操网爽| 99国产精品一区二区三区| 国产高清视频在线播放一区 | 黄色毛片三级朝国网站| 18禁观看日本| 精品国产一区二区三区久久久樱花| 国产成人av教育| 欧美大码av| 两个人看的免费小视频| 国产亚洲欧美在线一区二区| a级片在线免费高清观看视频| 欧美老熟妇乱子伦牲交| 久久毛片免费看一区二区三区| 亚洲国产欧美一区二区综合| 两性夫妻黄色片| 极品人妻少妇av视频| 高清av免费在线| 精品第一国产精品| 午夜日韩欧美国产| netflix在线观看网站| 亚洲一区中文字幕在线| 中文字幕制服av| 精品亚洲成国产av| 91精品三级在线观看| 国产精品成人在线| 在线观看免费高清a一片| 久久久久久久国产电影| 人人妻人人澡人人爽人人夜夜| 免费在线观看黄色视频的| 看免费av毛片| 国产野战对白在线观看| 亚洲黑人精品在线| 欧美另类一区| 丝袜在线中文字幕| 国产精品自产拍在线观看55亚洲 | 少妇裸体淫交视频免费看高清 | 自线自在国产av| 91成年电影在线观看| 久久精品久久久久久噜噜老黄| 久久青草综合色| 超碰97精品在线观看| 人人妻人人爽人人添夜夜欢视频| 麻豆国产av国片精品| 久久青草综合色| 三上悠亚av全集在线观看| 国产精品九九99| 亚洲欧美成人综合另类久久久| 91精品伊人久久大香线蕉| 伊人久久大香线蕉亚洲五| 女性生殖器流出的白浆| 久久久久视频综合| 真人做人爱边吃奶动态| 一级黄色大片毛片| 精品视频人人做人人爽| 人人妻人人爽人人添夜夜欢视频| 99久久国产精品久久久| 老司机亚洲免费影院| 男人添女人高潮全过程视频| 嫁个100分男人电影在线观看| 丰满迷人的少妇在线观看| 另类精品久久| 成在线人永久免费视频| 国产激情久久老熟女| 国产精品一区二区精品视频观看| 美女高潮喷水抽搐中文字幕| 久久精品久久久久久噜噜老黄| 99久久综合免费| 极品少妇高潮喷水抽搐| 国产精品 国内视频| av天堂久久9| 在线观看www视频免费| 日本精品一区二区三区蜜桃| 69精品国产乱码久久久| 女人爽到高潮嗷嗷叫在线视频| 免费黄频网站在线观看国产| 国产免费福利视频在线观看| 午夜久久久在线观看| 又紧又爽又黄一区二区| 美女高潮到喷水免费观看| bbb黄色大片| 丰满少妇做爰视频| 欧美在线黄色| 亚洲色图 男人天堂 中文字幕| 人人妻人人添人人爽欧美一区卜| 亚洲精品一区蜜桃| 麻豆av在线久日| 国产精品一区二区免费欧美 | 精品欧美一区二区三区在线| 日韩中文字幕欧美一区二区| 久久久水蜜桃国产精品网| 国产国语露脸激情在线看| 91九色精品人成在线观看| av在线老鸭窝| 成人手机av| 日日摸夜夜添夜夜添小说| 国产高清视频在线播放一区 | 欧美精品一区二区免费开放| 国产91精品成人一区二区三区 | 成人国产一区最新在线观看| 日韩欧美一区二区三区在线观看 | 淫妇啪啪啪对白视频 | 国产一卡二卡三卡精品| 美女脱内裤让男人舔精品视频| 91国产中文字幕| 欧美另类亚洲清纯唯美| 美女福利国产在线| 不卡一级毛片| 亚洲视频免费观看视频| 亚洲激情五月婷婷啪啪| 成年女人毛片免费观看观看9 | 国产高清videossex| 国产亚洲一区二区精品| 精品久久久久久久毛片微露脸 | 亚洲精品一区蜜桃| 欧美激情 高清一区二区三区| 久久久水蜜桃国产精品网| 亚洲国产毛片av蜜桃av| 欧美精品亚洲一区二区| 狂野欧美激情性bbbbbb| 亚洲精品一区蜜桃| www.av在线官网国产| 波多野结衣一区麻豆| 欧美少妇被猛烈插入视频| 美国免费a级毛片| 午夜两性在线视频| 欧美变态另类bdsm刘玥| 国产成人精品无人区| 在线av久久热| 国产免费视频播放在线视频| 黄色 视频免费看| av欧美777| 国产亚洲欧美在线一区二区| 国产欧美日韩一区二区精品| 男女国产视频网站| 黄色视频在线播放观看不卡| 日本欧美视频一区| 免费观看av网站的网址| 老司机午夜十八禁免费视频| av国产精品久久久久影院| 亚洲成人免费电影在线观看| 另类亚洲欧美激情| 国产精品 国内视频| 各种免费的搞黄视频| 真人做人爱边吃奶动态| 狠狠精品人妻久久久久久综合| 精品人妻熟女毛片av久久网站| 桃红色精品国产亚洲av| www.精华液| 亚洲国产精品成人久久小说| tube8黄色片| 国产有黄有色有爽视频| 午夜老司机福利片| 久久国产亚洲av麻豆专区| 天堂俺去俺来也www色官网| 国产精品久久久人人做人人爽| 人成视频在线观看免费观看| 国产区一区二久久| 男男h啪啪无遮挡| 女人被躁到高潮嗷嗷叫费观| 亚洲,欧美精品.| 久久久久国内视频| 多毛熟女@视频| 精品福利观看| 少妇精品久久久久久久| 免费高清在线观看日韩| 大香蕉久久成人网| 欧美精品av麻豆av| 一本大道久久a久久精品| 99国产极品粉嫩在线观看| 女人久久www免费人成看片| 男人操女人黄网站| 精品第一国产精品| 又紧又爽又黄一区二区| 欧美黑人精品巨大| 国产成人精品久久二区二区91| 日韩中文字幕视频在线看片| 中文字幕精品免费在线观看视频| 男女午夜视频在线观看| 在线看a的网站| 欧美日韩亚洲国产一区二区在线观看 | 亚洲成人手机| 纯流量卡能插随身wifi吗| 日本黄色日本黄色录像| 精品国产乱码久久久久久小说| 国精品久久久久久国模美| 老司机靠b影院| 在线天堂中文资源库| 中文字幕人妻熟女乱码| 啦啦啦中文免费视频观看日本| 亚洲精品国产区一区二| 美女高潮喷水抽搐中文字幕| 又大又爽又粗| 777米奇影视久久| 热99国产精品久久久久久7| 搡老岳熟女国产| 亚洲欧美一区二区三区黑人| 成年女人毛片免费观看观看9 | 90打野战视频偷拍视频| 操出白浆在线播放| 黄色怎么调成土黄色| 一级黄色大片毛片| 80岁老熟妇乱子伦牲交| 久久久久久久久久久久大奶| 免费久久久久久久精品成人欧美视频| 热99国产精品久久久久久7| 亚洲国产看品久久| 性色av乱码一区二区三区2| 最新在线观看一区二区三区| 亚洲欧美清纯卡通| 久久久国产欧美日韩av| 丝袜美腿诱惑在线| 亚洲成国产人片在线观看| 色婷婷久久久亚洲欧美| 搡老岳熟女国产| 大型av网站在线播放| 性少妇av在线| 黑人操中国人逼视频| 久久精品国产a三级三级三级| 99精国产麻豆久久婷婷| 在线av久久热| 欧美精品啪啪一区二区三区 | 国产精品久久久久久人妻精品电影 | 亚洲精品日韩在线中文字幕| 国产高清国产精品国产三级| 亚洲精品一卡2卡三卡4卡5卡 | 久久久精品区二区三区| 国产又色又爽无遮挡免| 亚洲精品日韩在线中文字幕| 国产精品一区二区在线不卡| 亚洲三区欧美一区| 久久中文看片网| 日本av免费视频播放| 国产免费视频播放在线视频| 亚洲专区中文字幕在线| 免费高清在线观看日韩| 一区二区av电影网| 中文字幕精品免费在线观看视频| 啦啦啦免费观看视频1| 国产成人精品无人区| 亚洲国产中文字幕在线视频| 亚洲精品第二区| 老汉色av国产亚洲站长工具| 免费观看a级毛片全部| 美女福利国产在线| 在线观看人妻少妇| 欧美在线一区亚洲| av网站在线播放免费| 亚洲精品成人av观看孕妇| 人妻一区二区av| 国产精品成人在线| 99久久99久久久精品蜜桃| 欧美日韩亚洲国产一区二区在线观看 | 一级黄色大片毛片| 日本精品一区二区三区蜜桃| 99热国产这里只有精品6| 亚洲精品av麻豆狂野| 国产在线一区二区三区精| 欧美日韩亚洲综合一区二区三区_| 中文字幕色久视频| 欧美激情久久久久久爽电影 | 国产亚洲一区二区精品| 成年人免费黄色播放视频| 久久这里只有精品19| 高清欧美精品videossex| 精品国产一区二区三区四区第35| av超薄肉色丝袜交足视频| 青春草亚洲视频在线观看| 丝袜在线中文字幕| 岛国毛片在线播放| 菩萨蛮人人尽说江南好唐韦庄| 欧美精品啪啪一区二区三区 | 国产精品成人在线| 真人做人爱边吃奶动态| 精品亚洲成a人片在线观看| 欧美日韩亚洲综合一区二区三区_| 首页视频小说图片口味搜索| 在线 av 中文字幕| 久久天堂一区二区三区四区| 欧美成狂野欧美在线观看| 国产1区2区3区精品| 91成人精品电影| 99国产精品一区二区蜜桃av | 免费女性裸体啪啪无遮挡网站| 18禁裸乳无遮挡动漫免费视频| 久久久久国产精品人妻一区二区| 国产在线视频一区二区| 菩萨蛮人人尽说江南好唐韦庄| 老司机亚洲免费影院| 久久精品国产亚洲av香蕉五月 | 午夜福利视频在线观看免费| 国产精品久久久久久人妻精品电影 | 国产色视频综合| 精品卡一卡二卡四卡免费| 少妇精品久久久久久久| 一级片免费观看大全| 国产精品一区二区免费欧美 | 欧美人与性动交α欧美精品济南到| 美女福利国产在线| 国产又爽黄色视频| 男女下面插进去视频免费观看| 欧美另类一区| 午夜视频精品福利| 性色av乱码一区二区三区2| 国产片内射在线| 婷婷成人精品国产| 老司机影院毛片| 亚洲精品国产一区二区精华液| 亚洲精品第二区| 99精品欧美一区二区三区四区| 日韩有码中文字幕| 国产成+人综合+亚洲专区| h视频一区二区三区| 两性夫妻黄色片| 午夜福利视频精品| 在线观看一区二区三区激情| 国产黄色免费在线视频| 久久人人爽av亚洲精品天堂| 老熟妇仑乱视频hdxx| 肉色欧美久久久久久久蜜桃| 伦理电影免费视频| 老熟妇仑乱视频hdxx| 国产免费福利视频在线观看| 青春草亚洲视频在线观看| 精品人妻一区二区三区麻豆| 久久久久国内视频| 少妇猛男粗大的猛烈进出视频| 男女无遮挡免费网站观看| 国产熟女午夜一区二区三区| 高清欧美精品videossex| 深夜精品福利| 各种免费的搞黄视频| 99热全是精品| 精品久久久久久久毛片微露脸 | 男人爽女人下面视频在线观看| 欧美黄色片欧美黄色片| 亚洲伊人久久精品综合| 免费日韩欧美在线观看| 午夜福利,免费看| 大码成人一级视频| 久久久久网色| 热99久久久久精品小说推荐| 国产欧美日韩综合在线一区二区| 夜夜骑夜夜射夜夜干| 高清视频免费观看一区二区| 首页视频小说图片口味搜索| 一级a爱视频在线免费观看| 国产精品九九99| 欧美中文综合在线视频| 三上悠亚av全集在线观看| 大型av网站在线播放| 国精品久久久久久国模美| 亚洲国产看品久久| 久久香蕉激情| 无限看片的www在线观看| 男人添女人高潮全过程视频| 中文欧美无线码| 中文字幕精品免费在线观看视频| 在线观看一区二区三区激情| 人人妻人人澡人人爽人人夜夜| 自拍欧美九色日韩亚洲蝌蚪91| 欧美国产精品va在线观看不卡| 波多野结衣av一区二区av| 久久性视频一级片| 丰满少妇做爰视频| 亚洲精品一二三| 亚洲欧美成人综合另类久久久| 国产精品1区2区在线观看. | av一本久久久久| 伊人久久大香线蕉亚洲五| 伊人亚洲综合成人网| 中文字幕高清在线视频| 国产欧美日韩一区二区三 | 男男h啪啪无遮挡| 国产精品久久久人人做人人爽| 性少妇av在线| 亚洲欧美精品综合一区二区三区| 日韩熟女老妇一区二区性免费视频| 91麻豆av在线| 成年av动漫网址| 十八禁人妻一区二区| 99久久99久久久精品蜜桃| 少妇被粗大的猛进出69影院| 亚洲欧美成人综合另类久久久| 亚洲五月色婷婷综合| 丰满人妻熟妇乱又伦精品不卡| 天天躁夜夜躁狠狠躁躁| 日韩大码丰满熟妇| a级毛片黄视频| 国产精品.久久久| 久久影院123| 亚洲第一av免费看| 久久久精品国产亚洲av高清涩受| 侵犯人妻中文字幕一二三四区| 精品久久久久久久毛片微露脸 | 欧美成人午夜精品| 免费女性裸体啪啪无遮挡网站| 一级毛片女人18水好多| 欧美av亚洲av综合av国产av| 国产一区二区三区av在线| 欧美人与性动交α欧美软件| 日韩三级视频一区二区三区| www.精华液| av在线app专区| 欧美精品一区二区免费开放| 曰老女人黄片| 午夜福利免费观看在线| 免费久久久久久久精品成人欧美视频| 999久久久国产精品视频| 18在线观看网站| 国产成+人综合+亚洲专区| 97人妻天天添夜夜摸| 久久av网站| 成人三级做爰电影| 老熟女久久久| 91国产中文字幕| 成年人午夜在线观看视频| 欧美黄色片欧美黄色片| 91麻豆av在线| 人人妻,人人澡人人爽秒播| 大香蕉久久成人网| 亚洲国产精品成人久久小说| 国产精品一区二区在线观看99| 青春草亚洲视频在线观看| 男人添女人高潮全过程视频| 极品人妻少妇av视频| 亚洲精品国产区一区二| 最近最新中文字幕大全免费视频| 少妇猛男粗大的猛烈进出视频| 蜜桃在线观看..| 欧美一级毛片孕妇| 黑人巨大精品欧美一区二区蜜桃| 国产一区二区三区av在线| 亚洲精品一卡2卡三卡4卡5卡 | 亚洲欧美成人综合另类久久久| 欧美亚洲日本最大视频资源| 母亲3免费完整高清在线观看| 一区二区三区乱码不卡18| 日韩,欧美,国产一区二区三区| 国产激情久久老熟女| 亚洲少妇的诱惑av| 中文字幕人妻熟女乱码| 激情视频va一区二区三区| 午夜福利在线观看吧| 亚洲欧美清纯卡通| 国产成人精品在线电影| av在线播放精品| 欧美黄色片欧美黄色片| 国产亚洲午夜精品一区二区久久| 天天躁狠狠躁夜夜躁狠狠躁| 18禁黄网站禁片午夜丰满| 韩国高清视频一区二区三区| 啪啪无遮挡十八禁网站| 一本综合久久免费| 一个人免费在线观看的高清视频 | 悠悠久久av| 汤姆久久久久久久影院中文字幕| 色老头精品视频在线观看| 中文字幕另类日韩欧美亚洲嫩草| 国产免费视频播放在线视频| 午夜福利,免费看| 亚洲欧洲精品一区二区精品久久久| 精品视频人人做人人爽| 亚洲精品乱久久久久久| 日本五十路高清| 国产精品秋霞免费鲁丝片| 午夜精品国产一区二区电影| 波多野结衣一区麻豆| 婷婷色av中文字幕| 国产黄色免费在线视频| 9热在线视频观看99| 久久精品国产亚洲av高清一级| 91九色精品人成在线观看| 香蕉丝袜av| 咕卡用的链子| 国产三级黄色录像| 日日摸夜夜添夜夜添小说| 岛国毛片在线播放| 黄色a级毛片大全视频| 久久亚洲国产成人精品v| www.精华液| 美女中出高潮动态图| 18禁裸乳无遮挡动漫免费视频| 新久久久久国产一级毛片| 欧美人与性动交α欧美精品济南到| 少妇 在线观看| 视频在线观看一区二区三区| 男人爽女人下面视频在线观看| 久久中文字幕一级| 精品少妇内射三级| 成人免费观看视频高清| 黄色怎么调成土黄色| 亚洲,欧美精品.| 精品一区在线观看国产| 久久毛片免费看一区二区三区| 男女国产视频网站| 91麻豆精品激情在线观看国产 | 老司机深夜福利视频在线观看 | 国产精品久久久久成人av| 免费观看av网站的网址| 超碰成人久久| 亚洲精品中文字幕一二三四区 | 亚洲欧美日韩另类电影网站| 电影成人av| 黑人巨大精品欧美一区二区mp4| 一级片免费观看大全| 亚洲精品一卡2卡三卡4卡5卡 | 91大片在线观看| 日韩欧美一区二区三区在线观看 | 午夜影院在线不卡| 成人国产av品久久久| 亚洲五月色婷婷综合| 中亚洲国语对白在线视频| 九色亚洲精品在线播放| 1024视频免费在线观看| 亚洲精品一卡2卡三卡4卡5卡 | 国产精品一区二区免费欧美 | 亚洲av电影在线观看一区二区三区| 亚洲成人国产一区在线观看| 制服人妻中文乱码| 免费在线观看完整版高清| 亚洲精品久久午夜乱码| 黄色视频不卡| 国产1区2区3区精品| 午夜福利免费观看在线| 色播在线永久视频| 国产男女超爽视频在线观看| 精品卡一卡二卡四卡免费| 90打野战视频偷拍视频| 搡老熟女国产l中国老女人| 肉色欧美久久久久久久蜜桃| 两性午夜刺激爽爽歪歪视频在线观看 | 亚洲国产看品久久| 老司机午夜福利在线观看视频 | 精品福利观看| 永久免费av网站大全| 老熟妇乱子伦视频在线观看 | 91麻豆av在线| 国产主播在线观看一区二区| 一级毛片电影观看| 他把我摸到了高潮在线观看 | 少妇猛男粗大的猛烈进出视频| 五月开心婷婷网| 亚洲欧美一区二区三区久久| 国产亚洲精品久久久久5区| www日本在线高清视频| 电影成人av| 黄网站色视频无遮挡免费观看| 免费人妻精品一区二区三区视频| 亚洲精品中文字幕在线视频| 在线观看免费午夜福利视频| 国产日韩欧美亚洲二区| 91麻豆av在线| 久久久欧美国产精品| 亚洲欧美日韩高清在线视频 | 亚洲性夜色夜夜综合| 无限看片的www在线观看| 人成视频在线观看免费观看| 国产视频一区二区在线看| 国产av又大| av线在线观看网站| 日韩中文字幕视频在线看片| 亚洲精品久久成人aⅴ小说| 搡老乐熟女国产| 捣出白浆h1v1| 精品高清国产在线一区| 日韩欧美免费精品| www日本在线高清视频| 国产黄色免费在线视频| 在线观看www视频免费| 亚洲一卡2卡3卡4卡5卡精品中文| 欧美+亚洲+日韩+国产| 最新在线观看一区二区三区| 日韩电影二区| 一级毛片电影观看| 国产精品二区激情视频| 少妇猛男粗大的猛烈进出视频| 精品久久久久久久毛片微露脸 | 99国产极品粉嫩在线观看| 亚洲精品乱久久久久久| 人妻 亚洲 视频| 久久影院123| 日韩熟女老妇一区二区性免费视频| 夜夜骑夜夜射夜夜干| av网站免费在线观看视频| 97人妻天天添夜夜摸| 午夜精品久久久久久毛片777| av在线老鸭窝| 天堂8中文在线网| 99精国产麻豆久久婷婷| 侵犯人妻中文字幕一二三四区| 99热国产这里只有精品6| 一个人免费看片子|