趙奕捷
中國電信天翼智慧家庭科技有限公司
從1933年芝加哥世博會(huì)上AI機(jī)器人回答人們的問題,到比爾·蓋茨1995年著作的《The Road Ahead》描繪“智能家居”場景,科技的進(jìn)步和人類對(duì)美好生活的向往開啟了智能家居的發(fā)展里程。當(dāng)前隨著數(shù)字經(jīng)濟(jì)的發(fā)展,智能家居市場飛速增長。根據(jù)中國電信發(fā)布的《智慧家庭白皮書》,目前中國電信家庭寬帶已經(jīng)擁有1.7億用戶,智能網(wǎng)關(guān)擁有8000萬戶,IPTV用戶有1.27億戶,4K機(jī)頂盒擁有8000萬戶,家庭云用戶擁有4000萬戶,智能組網(wǎng)達(dá)到4000萬次。2020年《物聯(lián)網(wǎng)行業(yè)深度報(bào)告》預(yù)計(jì)2025年全球物聯(lián)網(wǎng)設(shè)備(包括蜂窩及非蜂窩)聯(lián)網(wǎng)數(shù)量將達(dá)到252億個(gè)。然而,隨著家庭監(jiān)控,智能音箱等智能家居設(shè)備的廣泛普及,智能家居設(shè)備采集了大量用戶隱私信息,智能家居服務(wù)的信息安全問題日益突出。2019年末,作為全球最火的家庭安防硬件產(chǎn)品之一亞馬遜旗下的Ring曝出安全漏洞,黑客可以監(jiān)控用戶家庭,而且Ring還會(huì)暴露用戶的WiFi密碼。大量用戶投訴自己的私生活被黑客傳到網(wǎng)上。
使用基于非對(duì)稱秘鑰的算法進(jìn)行身份認(rèn)證和加密傳輸可以較好地保障設(shè)備通信安全,但智能家居等物聯(lián)網(wǎng)設(shè)備規(guī)模巨大,如果采用傳統(tǒng)基于CA證書的RSA公鑰加密,對(duì)每個(gè)設(shè)備都要安裝CA證書以確保通信安全,將帶來巨額成本,且對(duì)于功耗敏感和運(yùn)算力較小的智能家居等物聯(lián)網(wǎng)智能設(shè)備來說,CA證書校驗(yàn)的過程復(fù)雜,功耗增加。采用標(biāo)識(shí)密碼算法將省去CA證書的購買和持有費(fèi)用,同時(shí)省去CA證書校驗(yàn)的通信流程,在確保安全性的同時(shí)降低成本和功耗。
以色列著名的密碼學(xué)專家Adi Shamir教授在1984年提出了標(biāo)識(shí)密碼(IBC)的概念,在標(biāo)識(shí)密碼系統(tǒng)中,用戶的私鑰由密鑰生成中心(KGC)根據(jù)主密鑰和用戶標(biāo)識(shí)計(jì)算得出,用戶的公鑰由用戶標(biāo)識(shí)唯一確定,由標(biāo)識(shí)管理者保證標(biāo)識(shí)的真實(shí)性。與基于CA證書的公鑰密碼系統(tǒng)相比,標(biāo)識(shí)密碼系統(tǒng)中的密鑰管理環(huán)節(jié)可以得到適當(dāng)簡化。1999年,K.Ohgishi、R.Sakai和M.Kasahara提出了用橢圓曲線對(duì)(pairing)構(gòu)造基于標(biāo)識(shí)的密鑰共享方案;2001年,D.Boneh和M.Franklin,以及R.Sakai、K.Ohgishi和M.Kasahara等人獨(dú)立提出了用橢圓曲線對(duì)構(gòu)造標(biāo)識(shí)公鑰加密算法。這些工作引發(fā)了標(biāo)識(shí)密碼的新發(fā)展,出現(xiàn)了一批用橢圓曲線對(duì)實(shí)現(xiàn)的標(biāo)識(shí)密碼算法,其中包括數(shù)字簽名算法、密鑰交換協(xié)議、密鑰封裝機(jī)制和公鑰加密算法等。
2020年4月28日發(fā)布的中華人民共和國國家標(biāo)準(zhǔn)《GB/T38635.2-2020 信息安全技術(shù) SM9標(biāo)識(shí)密碼算法》,規(guī)定了用橢圓曲線對(duì)實(shí)現(xiàn)的基于標(biāo)識(shí)的數(shù)字簽名算法、用橢圓曲線對(duì)實(shí)現(xiàn)的基于標(biāo)識(shí)的密鑰交換協(xié)議、用橢圓曲線對(duì)實(shí)現(xiàn)的基于標(biāo)識(shí)的密鑰封裝機(jī)制、用橢圓曲線對(duì)實(shí)現(xiàn)的基于標(biāo)識(shí)的公鑰加密算法。該算法標(biāo)準(zhǔn)明確了標(biāo)識(shí)密碼算法的中國標(biāo)準(zhǔn),處于國際領(lǐng)先水平。
然而,真正保證信息安全的除了加密算法外,更重要的是密鑰的安全。加密算法如果無法解決密鑰安全的問題將無安全性可言。公元20世紀(jì)初,第一次世界大戰(zhàn)進(jìn)行到關(guān)鍵時(shí)刻,英國破譯密碼的專門機(jī)構(gòu)“40號(hào)房間”利用繳獲的德國密碼本破譯了著名的“齊默爾曼電報(bào)”,促使美國放棄中立參戰(zhàn),改變了戰(zhàn)爭進(jìn)程。1943年,美國通過破譯日本電報(bào)密碼得知山本五十六到中途島視察的行程,決定截?fù)羯奖?,山本機(jī)毀人亡,日本海軍從此一蹶不振。密碼學(xué)的發(fā)展直接影響了兩次世界大戰(zhàn)的戰(zhàn)局。
國密SM9標(biāo)識(shí)密碼算法標(biāo)準(zhǔn)中所規(guī)定的流程的前提均是通信雙方擁有各自的加密私鑰。對(duì)于非對(duì)稱加密和認(rèn)證,私鑰的安全是整個(gè)流程安全性的核心,私鑰的安全分發(fā)是實(shí)際應(yīng)用中的挑戰(zhàn)。而該標(biāo)準(zhǔn)中并未對(duì)如何安全地分發(fā)私鑰給出流程方案。
在實(shí)際應(yīng)用場景中,智能設(shè)備和用戶App的加密私鑰應(yīng)由密鑰生成中心生成,對(duì)于如何安全地將設(shè)備的加密私鑰由密鑰生成中心分發(fā)給新初始化的智能設(shè)備和用戶App,本文將基于國密SM9標(biāo)識(shí)密碼算法和國密SM4對(duì)稱密鑰算法(SM4密碼算法數(shù)據(jù)解密和數(shù)據(jù)加密算法結(jié)構(gòu)相同,優(yōu)點(diǎn)是軟件和硬件實(shí)現(xiàn)容易,運(yùn)算速度快)對(duì)如何安全地分發(fā)私鑰給出具體解決方案。
在智能家居場景中,模塊包括智能設(shè)備、用戶手機(jī)App,智能家居平臺(tái)(SM9標(biāo)識(shí)密鑰生成中心集成于平臺(tái)服務(wù)器中)。其中,智能設(shè)備和用戶手機(jī)App的加密私鑰都是由平臺(tái)服務(wù)器產(chǎn)生,并在初始化時(shí)從平臺(tái)分發(fā)給智能設(shè)備或用戶App。如圖1所示。
圖1 場景模塊
本文以下流程給出了從SM9標(biāo)識(shí)密鑰生成中心(集成于平臺(tái)服務(wù)器中)安全分發(fā)至智能家居物聯(lián)網(wǎng)設(shè)備和用戶手機(jī)App客戶端的設(shè)計(jì)方案。
圖2 用戶手機(jī)App的SM9加密私鑰分發(fā)和雙向認(rèn)證流程設(shè)計(jì)
(1)用戶使用手機(jī)號(hào)注冊(cè)App,App向平臺(tái)發(fā)送請(qǐng)求驗(yàn)證碼。
(2)平臺(tái)生成并下發(fā)短信驗(yàn)證碼。
(3)用戶手機(jī)收取短信驗(yàn)證碼,用戶輸入短信驗(yàn)證碼(本機(jī)登錄時(shí)App自動(dòng)獲取短信驗(yàn)證碼,用戶無需輸入)。
(4)App隨機(jī)生成一個(gè)SM4對(duì)稱密鑰和一個(gè)隨機(jī)數(shù),并使用平臺(tái)SM9標(biāo)識(shí)公鑰加密該SM4對(duì)稱密鑰、隨機(jī)數(shù)、用戶手機(jī)號(hào)、短信驗(yàn)證碼。
(5)平臺(tái)使用自己的SM9私鑰解密出該SM4對(duì)稱密鑰、隨機(jī)數(shù)、用戶手機(jī)號(hào),短信驗(yàn)證碼。
(6)平臺(tái)通過驗(yàn)證短信驗(yàn)證碼驗(yàn)證用戶的合法性。
(7)平臺(tái)使用用戶手機(jī)號(hào)作為用戶標(biāo)識(shí),生成用戶APP的SM9私鑰,使用第5步解密出的SM4對(duì)稱密鑰加密用戶的SM9私鑰,發(fā)送給用戶App。
(8)App使用第4步生成的SM4對(duì)稱密鑰解密出用戶App的SM9加密私鑰和隨機(jī)數(shù)。
(9)APP通過對(duì)比收到的隨機(jī)數(shù)和第4步生成的隨機(jī)數(shù)來驗(yàn)證平臺(tái)合法性,完成雙向認(rèn)證。
(10)此時(shí)APP得到了自己的SM9私鑰,保存在本地硬件存儲(chǔ)芯片中。
安全性說明:
App使用了平臺(tái)的SM9標(biāo)識(shí)公鑰加密信息,只有合法平臺(tái)(擁有平臺(tái)SM9私鑰)才能解密出信息得到SM4對(duì)稱密鑰,使用該SM4對(duì)稱密鑰來加密分發(fā)SM9私鑰是安全的。
同時(shí),APP生成的隨機(jī)數(shù)通過平臺(tái)的SM9標(biāo)識(shí)公鑰加密信息,只有合法平臺(tái)(擁有平臺(tái)SM9私鑰)才能解密出該隨機(jī)數(shù),平臺(tái)在通過短信驗(yàn)證碼驗(yàn)證APP后在用對(duì)稱秘鑰加密發(fā)回該隨機(jī)數(shù),APP就可以通過對(duì)比生成的隨機(jī)數(shù)和收到平臺(tái)發(fā)回的隨機(jī)數(shù)來驗(yàn)證平臺(tái)合法性,如果是相同的說明連接上的是合法平臺(tái),完成了雙向認(rèn)證。
圖3 智能設(shè)備的SM9加密私鑰分發(fā)流程設(shè)計(jì)
(1)當(dāng)智能設(shè)備初始化時(shí),隨機(jī)生成一個(gè)SM4對(duì)稱密鑰和一個(gè)隨機(jī)數(shù),并使用平臺(tái)的SM9標(biāo)識(shí)公鑰加密該SM4對(duì)稱密鑰和隨機(jī)數(shù)以及設(shè)備PIN碼,和設(shè)備硬件碼一起發(fā)送給平臺(tái)服務(wù)器。
(2)平臺(tái)收到該加密信息后使用自己的SM9私鑰解密出SM4對(duì)稱密鑰和隨機(jī)數(shù)以及設(shè)備PIN碼。
(3)平臺(tái)通過設(shè)備PIN碼來驗(yàn)證設(shè)備的真?zhèn)巍?/p>
(4)平臺(tái)為設(shè)備分配唯一標(biāo)識(shí)ID并生成對(duì)應(yīng)的該智能設(shè)備的SM9標(biāo)識(shí)私鑰,并使用第2步解密出的SM4對(duì)稱密鑰加密設(shè)備SM9私鑰和第2步解密出的隨機(jī)數(shù),發(fā)送給設(shè)備。
(5)設(shè)備使用第1步生成的SM4對(duì)稱密鑰解密出設(shè)備SM9私鑰和隨機(jī)數(shù)。
(6)設(shè)備通過對(duì)比第1步生成的隨機(jī)數(shù)和解密出的隨機(jī)數(shù)是否相同來驗(yàn)證平臺(tái)的合法性,完成雙向認(rèn)證。
(7)此時(shí)設(shè)備得到了自己的SM9私鑰,保存在本地硬件存儲(chǔ)芯片中。
安全性說明:
設(shè)備使用了平臺(tái)的SM9標(biāo)識(shí)公鑰加密信息,只有合法平臺(tái)(擁有平臺(tái)SM9私鑰)才能解密出信息得到SM4對(duì)稱密鑰,使用該SM4對(duì)稱密鑰來加密分發(fā)SM9私鑰是安全的。
同時(shí),設(shè)備生成的隨機(jī)數(shù)通過平臺(tái)的SM9標(biāo)識(shí)公鑰加密信息,只有合法平臺(tái)(擁有平臺(tái)SM9私鑰)才能解密出該隨機(jī)數(shù),平臺(tái)在通過設(shè)備PIN碼驗(yàn)證設(shè)備后在用對(duì)稱秘鑰加密發(fā)回該隨機(jī)數(shù),設(shè)備就可以通過對(duì)比生成的隨機(jī)數(shù)和收到平臺(tái)發(fā)回的隨機(jī)數(shù)來驗(yàn)證平臺(tái)合法性,如果是相同的說明連接上的是合法平臺(tái),完成了雙向認(rèn)證。
本文所設(shè)計(jì)的流程是智能設(shè)備的私鑰是由集成在平臺(tái)服務(wù)器中的加密運(yùn)算服務(wù)器產(chǎn)生的,再從平臺(tái)服務(wù)器安全地傳輸給智能設(shè)備。這樣設(shè)計(jì)的好處是節(jié)省智能設(shè)備初始化的時(shí)間和功耗,同時(shí)便于智能設(shè)備加密私鑰更新。
由于智能設(shè)備構(gòu)架簡單且終端分布廣,相比平臺(tái)服務(wù)器端其密鑰更易泄露。據(jù)BBC新聞報(bào)道,在英國銷售的LIFX智能燈泡其存儲(chǔ)在內(nèi)部的加密密碼曾大范圍泄露。一旦發(fā)生智能設(shè)備自身加密私鑰泄露事件,如果在初始化流程中加密私鑰是出廠時(shí)寫入設(shè)備的則給加密私鑰更新帶來困難,如果加密私鑰在智能設(shè)備端生成對(duì)于智能設(shè)備來說生成非對(duì)稱密鑰的運(yùn)算量大,將大幅影響初始化和加密私鑰更新的時(shí)耗與能耗。
而本文提出的方案流程中,智能設(shè)備初始化和私鑰更新場景中都是智能設(shè)備側(cè)產(chǎn)生一個(gè)對(duì)稱密鑰,相比產(chǎn)生非對(duì)稱密鑰來說,大幅降低所用時(shí)間和能耗。根據(jù)2017年《國際高級(jí)計(jì)算機(jī)科學(xué)與應(yīng)用期刊(IJACSA)》刊登的論文對(duì)非對(duì)稱密鑰和對(duì)稱密鑰生成時(shí)間的研究,使用Java Eclipse平臺(tái)在2.34GHz的因特爾處理器和1GB內(nèi)存環(huán)境下測試了非對(duì)稱密鑰生成時(shí)間和對(duì)稱密鑰生成時(shí)間,對(duì)各密鑰常用長度生成的測試時(shí)間如表1所示。
表1 密鑰生成時(shí)間比較
從上表的測試時(shí)間看出,對(duì)于常用密鑰長度,生成對(duì)稱密鑰的時(shí)間遠(yuǎn)低于生成非對(duì)稱密鑰的時(shí)間。在運(yùn)算力小于該測試環(huán)境的智能家居智能設(shè)備上,兩者的時(shí)間差異將更為明顯。所以本文提出的私鑰分發(fā)方案采用在運(yùn)算力小的智能家居設(shè)備側(cè)僅生成國密SM4對(duì)稱密鑰,而在運(yùn)算力大的平臺(tái)服務(wù)器端生成國密SM9非對(duì)稱密鑰的方案,適用于智能家居設(shè)備初始化和私鑰更新場景。
同時(shí),本文創(chuàng)造性地將私鑰分發(fā)流程與雙向認(rèn)證流程融合,并且沒有采用傳統(tǒng)的私鑰簽名公鑰驗(yàn)簽的方法。因?yàn)榉菍?duì)稱加解密運(yùn)算消耗的時(shí)長和功耗遠(yuǎn)高于對(duì)稱加解密運(yùn)算,而傳統(tǒng)的簽名驗(yàn)簽方式在設(shè)備側(cè)需至少使用2次非對(duì)稱加解密運(yùn)算,對(duì)于智能家居物聯(lián)網(wǎng)低算力低功耗設(shè)備來說,消耗時(shí)間和能耗較大。
本文的方案在智能設(shè)備側(cè)僅使用1次非對(duì)稱加密運(yùn)算和1次對(duì)稱解密運(yùn)算即可同時(shí)完成雙向認(rèn)證和私鑰分發(fā)流程。相比傳統(tǒng)的簽名驗(yàn)簽失敗流程來說大幅降低所用時(shí)間和能耗。
《國際科學(xué)與研究期刊》2013年發(fā)表的論文對(duì)不同加密算法使用不同大小的數(shù)據(jù)包進(jìn)行了實(shí)驗(yàn),具體實(shí)驗(yàn)數(shù)據(jù)見表2。
表2 對(duì)稱算法和非對(duì)稱算法對(duì)不同大小數(shù)據(jù)包加解密時(shí)間對(duì)比實(shí)驗(yàn)
數(shù)據(jù)包(KB) 算法 加密時(shí)間(秒) 解密時(shí)間(秒)4 5 868 312 DES 4.0 1.8 AES 2.0 1.2 RSA 8.2 5.1 DES 3.0 1.6 AES 1.8 1.3 RSA 7.8 5.1
根據(jù)表2的實(shí)驗(yàn)數(shù)據(jù)可以看出,非對(duì)稱加密算法RSA加解密所用時(shí)長是對(duì)稱算法加密算法AES的4倍左右。
由此可見,本文方案使用相比于傳統(tǒng)的簽名驗(yàn)簽的雙向認(rèn)證方式將大幅降低智能設(shè)備進(jìn)行雙向認(rèn)證所需的時(shí)間。同時(shí),本文創(chuàng)造性地將私鑰分發(fā)與雙向認(rèn)證合并為一步完成,大幅優(yōu)化了智能設(shè)備私鑰分發(fā)與雙向認(rèn)證流程。
本文從智能家居服務(wù)場景入手,基于中華人民共和國國家標(biāo)準(zhǔn)《GB/T38635.2-2020 信息安全技術(shù) SM9標(biāo)識(shí)密碼算法》中未給出實(shí)際應(yīng)用中如何進(jìn)行安全的私鑰分發(fā)方案的問題給出具體解決方案,該方案創(chuàng)造性地將私鑰分發(fā)與雙向認(rèn)證合并為一步完成,大幅優(yōu)化了智能設(shè)備私鑰分發(fā)與雙向認(rèn)證流程。
同時(shí),本文對(duì)非對(duì)稱算法和對(duì)稱算法的秘鑰生成時(shí)間、對(duì)不同數(shù)據(jù)大小數(shù)據(jù)包的加解密時(shí)間進(jìn)行了研究,并創(chuàng)造性地設(shè)計(jì)出在智能家居智能設(shè)備側(cè)僅生成對(duì)稱密鑰而在平臺(tái)服務(wù)器側(cè)生成非對(duì)稱密鑰,安全地進(jìn)行密鑰分發(fā)的同時(shí)完成雙向認(rèn)證的方案,且相較于傳統(tǒng)雙向認(rèn)證方案可大幅降低所需時(shí)長。
本方案可用于信息安全領(lǐng)域各種場景下的私鑰分發(fā)和雙向認(rèn)證,為國密SM9標(biāo)準(zhǔn)的實(shí)際應(yīng)用提供安全的私鑰分發(fā)和雙向認(rèn)證方案,為智能家居智能設(shè)備初始化、雙向認(rèn)證、私鑰更新場景提供優(yōu)化解決方案。
隨著5G時(shí)代的到來,5G將支持海量的機(jī)器通信,以智能家居為代表的典型應(yīng)用場景與移動(dòng)通信深度融合,預(yù)期千億量級(jí)的設(shè)備將接入5G網(wǎng)絡(luò)。智能家居設(shè)備產(chǎn)生的數(shù)據(jù)與用戶生活聯(lián)系極為緊密,用戶敏感數(shù)據(jù)信息安全問題非常重要。而智能設(shè)備的加密私鑰的安全分發(fā)是信息安全的關(guān)鍵所在,確保密鑰的安全才能確保信息安全,讓智能家居真正融入生活,為生活服務(wù)。