本發(fā)明屬于航電通訊的數(shù)據(jù)加密,尤其涉及一種用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法。
背景技術(shù):
1、1394b通訊協(xié)議,也被稱為ieee1394或firewire(火線),是一種高速、實(shí)時(shí)的串行通信協(xié)議。
2、目前,現(xiàn)役機(jī)型航電系統(tǒng)中廣泛采用標(biāo)準(zhǔn)1394b通訊協(xié)議進(jìn)行數(shù)據(jù)交互。1394b具有高速數(shù)據(jù)交互能力并廣泛應(yīng)用于各領(lǐng)域,載機(jī)通訊的數(shù)據(jù)安全性也因此存在較高的泄密風(fēng)險(xiǎn)。
3、現(xiàn)有航電領(lǐng)域加密方法的實(shí)現(xiàn)普遍依賴于中間密鑰的衍生保護(hù)措施,例如公開號(hào)為cn117938984a的中國(guó)專利,一種基于高速加密算法的網(wǎng)絡(luò)數(shù)據(jù)傳輸方法及裝置,需要中間單元的響應(yīng)才能提供加密計(jì)算,增加了數(shù)據(jù)傳輸負(fù)荷,由于1394b通訊協(xié)議資源占用高,機(jī)上通訊數(shù)據(jù)量龐大,額外增加數(shù)據(jù)傳輸負(fù)荷可能導(dǎo)致整體性能受到影響。
技術(shù)實(shí)現(xiàn)思路
1、鑒于現(xiàn)有技術(shù)的上述缺點(diǎn)、不足,本發(fā)明提供一種用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,目的是保護(hù)1394b通訊在機(jī)載航電系統(tǒng)環(huán)境的數(shù)據(jù)安全性,并且降低數(shù)據(jù)加密帶來的數(shù)據(jù)傳輸負(fù)荷。
2、為了達(dá)到上述目的,本發(fā)明采用的主要技術(shù)方案包括:
3、用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,包括如下步驟:
4、步驟s01、通過航電系統(tǒng)1394b接口數(shù)據(jù)文件解碼塊stof_2,解析出塊內(nèi)屬性:毫秒,將解析所得毫秒數(shù)作為一級(jí)密鑰;
5、步驟s02、采用密鑰交換協(xié)議動(dòng)態(tài)生成會(huì)話密鑰;
6、步驟s03、設(shè)置區(qū)塊字節(jié)置換與加密方法;
7、所述區(qū)塊字節(jié)置換與加密方法包括數(shù)據(jù)分塊與填充方法、塊置換方法、字節(jié)級(jí)加密方法、逆性保證方法,
8、所述數(shù)據(jù)分塊與填充包括將輸入數(shù)據(jù)分成固定大小的塊,若數(shù)據(jù)長(zhǎng)度不是塊大小的整數(shù)倍,則補(bǔ)充至塊大小的整數(shù)倍;
9、所述塊置換方法包括對(duì)分塊后數(shù)據(jù)的置換,置換規(guī)則按照基于隨機(jī)數(shù)算法生成的置換表置換;
10、字節(jié)級(jí)加密方法包括對(duì)每個(gè)塊內(nèi)的字節(jié)加密,加密使用對(duì)稱加密算法(aes)的衍生算法,其中的密鑰和初始向量iv由隨機(jī)數(shù)算法生成,并隨每個(gè)塊變化;
11、逆性保證方法包括記錄置換規(guī)則和每個(gè)塊的加密密鑰及初始向量iv。
12、進(jìn)一步地,所述步驟s02中密鑰交換協(xié)議為迪菲-赫爾曼密鑰交換協(xié)議。
13、進(jìn)一步地,所述對(duì)稱加密算法包括aes、des、sm4、blowfish、chacha20、salsa20、rc4、rc6、idea算法。
14、進(jìn)一步地,所述步驟s03包括如下步驟:
15、步驟s301、初始化,選擇一個(gè)安全的隨機(jī)數(shù)算法,并為其提供一個(gè)隨機(jī)種子,包括時(shí)間戳或環(huán)境噪聲,確定數(shù)據(jù)塊的大小;
16、步驟s302、數(shù)據(jù)分塊與填充,將輸入數(shù)據(jù)按塊大小分割,若數(shù)據(jù)長(zhǎng)度不是塊大小的整數(shù)倍,使用填充模式pkcs#7填充;
17、步驟s303、塊置換,使用隨機(jī)數(shù)算法生成一個(gè)置換表,根據(jù)置換表重新排列數(shù)據(jù)塊;
18、步驟s304、字節(jié)級(jí)加密,對(duì)每個(gè)置換后的塊,使用隨機(jī)數(shù)算法生成一個(gè)唯一密鑰和初始向量iv,使用aes-128對(duì)稱加密算法將密鑰和初始向量iv對(duì)每個(gè)塊內(nèi)的字節(jié)加密;
19、步驟s305、記錄置換規(guī)則和每個(gè)塊的加密密鑰以及初始向量iv;
20、步驟s306、將加密后的數(shù)據(jù)塊和記錄的信息一起發(fā)送給接收方。
21、進(jìn)一步地,所述數(shù)據(jù)加密與混淆方法還包括接收方還原數(shù)據(jù)方法,所述接收方還原數(shù)據(jù)方法包括如下步驟:
22、步驟s401、接收數(shù)據(jù),接收加密后的數(shù)據(jù)塊和記錄的信息;
23、步驟s402、字節(jié)級(jí)解密,使用記錄的密鑰和初始向量iv,對(duì)每個(gè)加密的數(shù)據(jù)塊解密;
24、步驟s403、塊逆置換,根據(jù)記錄的置換規(guī)則,將數(shù)據(jù)塊還原到原始數(shù)據(jù);
25、步驟s404、除填充,若數(shù)據(jù)被填充過,則除去填充數(shù)據(jù)以恢復(fù)原始數(shù)據(jù)。
26、進(jìn)一步地,所述對(duì)稱加密算法的衍生算法包括如下步驟:
27、步驟s501、導(dǎo)入數(shù)據(jù)庫(kù),所述數(shù)據(jù)庫(kù)包括用于aes加密和解密庫(kù)、數(shù)據(jù)的填充和去填充庫(kù)、生成隨機(jī)密鑰庫(kù);
28、步驟s502、定義aes塊大?。篴es算法的塊大小固定為16字節(jié);
29、步驟s503、生成密鑰:通過調(diào)用生成隨機(jī)密鑰庫(kù)接口,生成一個(gè)16字節(jié)長(zhǎng)的隨機(jī)密鑰;
30、步驟s503、加密函數(shù):輸入密鑰和待加密的數(shù)據(jù),創(chuàng)建一個(gè)aes加密器對(duì)象,將待加密的數(shù)據(jù)轉(zhuǎn)換為utf-8編碼的字節(jié)串,并使用數(shù)據(jù)填充庫(kù)的填充函數(shù)填充到aes塊大小,使用aes加密器對(duì)象對(duì)填充后的數(shù)據(jù)進(jìn)行加密,得到加密后的數(shù)據(jù),輸出加密后的數(shù)據(jù);
31、步驟s504、解密函數(shù):輸入密鑰和加密后的數(shù)據(jù),創(chuàng)建一個(gè)aes解密器對(duì)象,使用aes解密器對(duì)象對(duì)加密后的數(shù)據(jù)進(jìn)行解密,得到解密后的填充數(shù)據(jù);使用去填充庫(kù)內(nèi)去填充函數(shù)去除填充,恢復(fù)原始數(shù)據(jù)的長(zhǎng)度,并將結(jié)果轉(zhuǎn)換為utf-8解碼的字符串,輸出解密后的原始數(shù)據(jù);
32、步驟s504、打印生成的密鑰,打印待加密的原始數(shù)據(jù),調(diào)用加密函數(shù)對(duì)原始數(shù)據(jù)進(jìn)行加密,并打印加密后的數(shù)據(jù),調(diào)用解密函數(shù)對(duì)加密后的數(shù)據(jù)進(jìn)行解密,并打印解密后的數(shù)據(jù)。
33、本發(fā)明的有益效果是:
34、1、本發(fā)明的用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,可以提高算法的處理速度和效率,同時(shí)降低資源消耗和安全隱患;
35、2、本發(fā)明不用修改原有的1394b通訊協(xié)議,可復(fù)用性高;
36、3、本發(fā)明通過結(jié)合塊置換和字節(jié)級(jí)加密,增加了數(shù)據(jù)的處理步驟和復(fù)雜性,使得攻擊者難以通過簡(jiǎn)單的分析手段來預(yù)測(cè)或還原原始數(shù)據(jù);
37、4、本發(fā)明利用隨機(jī)數(shù)算法生成的置換規(guī)則和加密密鑰,確保了算法的隨機(jī)性和不可預(yù)測(cè)性,進(jìn)一步增強(qiáng)了數(shù)據(jù)的安全性;
38、5、本發(fā)明方法支持不同大小的數(shù)據(jù)塊和多種加密方式,可以根據(jù)實(shí)際需求進(jìn)行調(diào)整和優(yōu)化,以適應(yīng)不同的應(yīng)用場(chǎng)景;
39、6、本發(fā)明方法可以與其他安全機(jī)制(如數(shù)字簽名、哈希校驗(yàn))相結(jié)合,進(jìn)一步提升數(shù)據(jù)的安全性和完整性保護(hù)。
1.用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,其特征在于,包括如下步驟:
2.根據(jù)權(quán)利要求1所述的用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,其特征在于:所述步驟s02中密鑰交換協(xié)議為迪菲-赫爾曼密鑰交換協(xié)議。
3.根據(jù)權(quán)利要求1所述的用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,其特征在于:所述對(duì)稱加密算法包括aes、des、sm4、blowfish、chacha20、salsa20、rc4、rc6、idea算法。
4.根據(jù)權(quán)利要求1所述的用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,其特征在于,所述步驟s03包括如下步驟:
5.根據(jù)權(quán)利要求1所述的用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,其特征在于:所述數(shù)據(jù)加密與混淆方法還包括接收方還原數(shù)據(jù)方法,所述接收方還原數(shù)據(jù)方法包括如下步驟:
6.根據(jù)權(quán)利要求1所述的用于機(jī)載航電系統(tǒng)的1394b高速接口數(shù)據(jù)加密與混淆方法,其特征在于:所述對(duì)稱加密算法的衍生算法包括如下步驟: