胡祥義 徐冠寧 杜麗萍
北京市科技情報研究所網(wǎng)絡(luò)密碼認(rèn)證北京市重點實驗室 北京 100044
在物聯(lián)網(wǎng)認(rèn)證中心端由認(rèn)證服務(wù)器和加密卡硬件設(shè)備組成,在認(rèn)證服務(wù)器的PCI接口上插入加密卡,物聯(lián)網(wǎng)數(shù)據(jù)中心與物聯(lián)網(wǎng)認(rèn)證中心連接,物聯(lián)網(wǎng)數(shù)據(jù)中心與物聯(lián)網(wǎng)認(rèn)證中心之間的數(shù)據(jù)是雙向傳輸,在加密卡的芯片里,建立物聯(lián)網(wǎng)認(rèn)證中心端的加密系統(tǒng),即寫入輕量級密碼算法、摘要算法。物聯(lián)網(wǎng)認(rèn)證中心端的安全協(xié)議包括:物聯(lián)網(wǎng)認(rèn)證中心端的傳感設(shè)備認(rèn)證協(xié)議、解密和簽名驗證協(xié)議,且寫入數(shù)據(jù):一組存儲密鑰。在物聯(lián)網(wǎng)認(rèn)證中心端的傳輸密鑰數(shù)據(jù)庫里,寫入數(shù)據(jù):對應(yīng)全體傳感設(shè)備端智能芯片的標(biāo)識、傳感設(shè)備的標(biāo)識和傳輸密鑰SKi(i=1~n,n為傳感設(shè)備數(shù)量的總和)的密文。
采用安全單鑰管理技術(shù)來建立物聯(lián)網(wǎng)感知層的設(shè)備認(rèn)證協(xié)議、數(shù)字簽名和加/解密協(xié)議。
設(shè):認(rèn)證或簽名密鑰為 CK,在傳感設(shè)備端的傳感設(shè)備認(rèn)證協(xié)議、或簽名和加密協(xié)議運行過程時,由傳感設(shè)備端智能卡芯片里的隨機數(shù)發(fā)生器實時產(chǎn)生一組NN比特(NN=密鑰的長度)的隨機數(shù),用該組隨機數(shù)作為認(rèn)證或簽名密鑰CK,當(dāng)CK作為認(rèn)證密鑰時,用CK來加密另一組隨機數(shù)S產(chǎn)生認(rèn)證口令,當(dāng)CK作為簽名密鑰時,用CK對傳感設(shè)備端的傳感信息進行簽名和加密。同時,將CK還作為RFID內(nèi)基本信息的簽名密鑰。
設(shè):傳輸密鑰為SKi(i=1~n,n為對應(yīng)認(rèn)證中心端全體傳感設(shè)備總和),在密鑰初始化過程中,由認(rèn)證中心端加密卡芯片里的隨機數(shù)發(fā)生器,生成一組NN比特(NN=密鑰的長度)的隨機數(shù),將該組隨機數(shù)作為一組傳輸密鑰SKi(i=1~n),分別輸入到對應(yīng)的各個傳感設(shè)備端智能卡芯片里,同時,在認(rèn)證中心端加密卡的芯片里,使用一組存儲密鑰,將全體對應(yīng)傳感設(shè)備端的每組傳輸密鑰 SKi(i=1~n)分別加密生成密文即:SKi’(i=1~n)后輸出加密卡芯片,并將傳輸密鑰SKi(i=1~n)以密文即:SK1’、SK2’SKn’的形式,分別與對應(yīng)傳輸密鑰SKi(i=1~n)的傳感設(shè)備端智能卡芯片的標(biāo)識、及其傳感設(shè)備的標(biāo)識,一起存儲在認(rèn)證中心端認(rèn)證服務(wù)器的傳輸密鑰數(shù)據(jù)庫中。
設(shè):存儲密鑰為K,在密鑰初始化過程中,存儲密鑰事先由認(rèn)證中心端加密卡芯片里的隨機數(shù)發(fā)生器,產(chǎn)生一組NN比特(NN=密鑰的長度)的隨機數(shù),將該組隨機數(shù)作為一組存儲密鑰K,并存儲在加密卡芯片里,存儲密鑰K是一組固定的單鑰,用存儲密鑰K分別將全體對應(yīng)傳感設(shè)備端的傳輸密鑰 SKi(i=1~n)加密成密文即: SK1’、SK2’、……、SKn’(i=1~n)后,存儲在認(rèn)證中心端的傳輸密鑰數(shù)據(jù)庫中。且用存儲密鑰 K 分別將加密各個 RFID內(nèi)傳感信息的簽名密鑰CK,加密成密文即:CK’后,存儲在認(rèn)證中心端的簽名密鑰數(shù)據(jù)庫中。
當(dāng)傳感設(shè)備端和認(rèn)證中心端進行認(rèn)證或簽名密鑰CK交換時,在認(rèn)證中心端加密卡芯片里,使用存儲密鑰K將認(rèn)證中心端對應(yīng)加密CK的傳輸密鑰的密文SKi’(i=1~n)解密成明文,再用解密后的傳輸密鑰SKi(i=1~n),將收到傳感設(shè)備端發(fā)送來的認(rèn)證或簽名密鑰的密文CK’解密成明文即:CK。
若對 RFID內(nèi)傳感信息的密文進行解密和簽名驗證時,在認(rèn)證中心端加密卡芯片里,使用存儲密鑰K將認(rèn)證中心端對應(yīng)RFID簽名密鑰的密文即:CK’解密成明文即:CK,再使用CK對RFID內(nèi)傳感信息的密文進行解密和簽名驗證。
(1)傳感設(shè)備端的傳感設(shè)備認(rèn)證協(xié)議
傳感設(shè)備端的傳感設(shè)備認(rèn)證協(xié)議,由傳感設(shè)備產(chǎn)生另一組隨機數(shù),設(shè):該組隨機數(shù)為S,將隨機數(shù)S輸入傳感設(shè)備端智能卡芯片里,智能卡芯片里的隨機數(shù)發(fā)生器,產(chǎn)生一組NN比特(NN=密鑰的長度)的隨機數(shù),將該隨機數(shù)作為認(rèn)證密鑰CK,用CK來加密隨機數(shù)S,得到隨機數(shù)S的密文即:認(rèn)證口令 1,之后,在傳感設(shè)備端智能卡芯片里,用傳輸密鑰SKi(i=1~n)將認(rèn)證密鑰CK加密成密文即:CK’,最后,將傳感設(shè)備端智能卡芯片的標(biāo)識、傳感設(shè)備的標(biāo)識、隨機數(shù)S、認(rèn)證口令1和認(rèn)證密鑰的密文CK’這5組認(rèn)證數(shù)據(jù),一并發(fā)送給認(rèn)證中心端。
(2)物聯(lián)網(wǎng)認(rèn)證中心端的傳感設(shè)備認(rèn)證協(xié)議
物聯(lián)網(wǎng)認(rèn)證中心端的傳感設(shè)備認(rèn)證協(xié)議,當(dāng)認(rèn)證中心端收到傳感設(shè)備端發(fā)送來的認(rèn)證數(shù)據(jù)后,認(rèn)證中心端根據(jù)傳感設(shè)備端智能卡芯片的標(biāo)識,在傳輸密鑰數(shù)據(jù)庫中定位對應(yīng)該標(biāo)識的記錄,再將記錄中的傳輸密鑰的密文即:SKi’(i=1~n),輸入認(rèn)證中心端的加密卡芯片中,并在加密卡芯片里,使用存儲密鑰K將 SKi’(i=1~n)解密成明文即:SKi(i=1~n),用SKi(i=1~n)將接收到的認(rèn)證密鑰的密文CK’解密成明文,即:CK,用CK加密隨機數(shù)S生成認(rèn)證口令2,通過對比認(rèn)證口令1和認(rèn)證口令2是否相同?來判別傳感設(shè)備是否可信。
(1)傳感信息的簽名和加密協(xié)議
在傳感設(shè)備端,將傳感設(shè)備采集的傳感信息輸入傳感設(shè)備端智能卡芯片中,在傳感設(shè)備端智能卡芯片里,使用摘要算法對傳感信息進行“摘要”得到傳感信息的“摘要”信息L1,由傳感設(shè)備端智能卡芯片里的隨機數(shù)發(fā)生器,產(chǎn)生一組NN比特(NN=密鑰的長度)的隨機數(shù),將該隨機數(shù)作為簽名密鑰CK,來加密傳感信息和“摘要”信息L1,得到傳感信息的密文和 L1的密文即:數(shù)字簽名,之后,用傳感設(shè)備端智能卡芯片里的傳輸密鑰,將簽名密鑰 CK加密成密文即:CK’,最后,將傳感設(shè)備端智能卡芯片的標(biāo)識、傳感設(shè)備的標(biāo)識、傳感信息的密文、傳感信息的數(shù)字簽名和簽名密鑰的密文CK’這5組簽名數(shù)據(jù),一并發(fā)送給認(rèn)證中心端。
(2)物聯(lián)網(wǎng)認(rèn)證中心端的傳感信息解密和簽名驗證協(xié)議
當(dāng)物聯(lián)網(wǎng)認(rèn)證中心端收到傳感設(shè)備端發(fā)送來的5組簽名數(shù)據(jù)后,首先,根據(jù)傳感設(shè)備端智能卡芯片的標(biāo)識,在傳輸密鑰數(shù)據(jù)庫中定位對應(yīng)該標(biāo)識的記錄,再將記錄中的傳輸密鑰的密文即:SKi’(i=1~n)輸入認(rèn)證中心端的加密卡芯片中,并在加密卡芯片里,使用存儲密鑰K將 SKi’(i=1~n)解密成明文即:SKi(i=1~n),用SKi(i=1~n)將接收到的簽名密鑰的密文CK’解密成明文即:CK,用CK解密傳感信息的密文和傳感信息的數(shù)字簽名,得到傳感信息的明文和傳感信息的“摘要”信息L1,再用摘要算法對傳感信息進行“摘要”,得到傳感信息的“摘要”信息L2,通過對比L1和L2是否相同?來確認(rèn)從傳感設(shè)備端傳輸來的傳感信息是否可信、完整。
(3)RFID的簽名和加密協(xié)議
RFID是一種電子標(biāo)簽,內(nèi)無CPU芯片,也無工作電源,RFID中的數(shù)據(jù)為事先寫入,并由 RFID讀卡器進行讀取。RFID內(nèi)主要存放的數(shù)據(jù)為:RFID的標(biāo)識B1、對應(yīng)物品的基本信息LL(如:一袋奶粉的重要信息:生產(chǎn)工廠、生產(chǎn)時間、奶粉的成分配料等)。
RFID的簽名和加密協(xié)議,事先由物聯(lián)網(wǎng)認(rèn)證中心端加密卡芯片里的隨機數(shù)發(fā)生器,產(chǎn)生一組NN比特(NN=密鑰的長度)的隨機數(shù),將該隨機數(shù)作為RFID的簽名密鑰CKK,來加密B1和LL,同時,加密B1和LL的“摘要”信息Q1,得到Q1的密文即:數(shù)字簽名,用物聯(lián)網(wǎng)認(rèn)證中心端的存儲密鑰K,將RFID的簽名密鑰CKK加密成密文即:CKK’,并將CKK’與對應(yīng)RFID的標(biāo)識B1一起存放在物聯(lián)網(wǎng)認(rèn)證中心的簽名密鑰數(shù)據(jù)庫中,最后,將 RFID的標(biāo)識 B1、B1和LL的密文、Q1的密文和CKK’個4組數(shù)據(jù)寫入RFID內(nèi)。
RFID內(nèi)存放的數(shù)據(jù)有四組:① RFID的標(biāo)識B1、②B1和LL的密文,③B1和LL的“摘要”信息Q1的密文即:數(shù)字簽名,④簽名密鑰CKK的密文即:CKK’,將這4組數(shù)據(jù)設(shè)為:RFID的傳感信息CL,事先將CL寫入RFID中。
RFID讀卡器端傳感信息的簽名和加密協(xié)議,與其它傳感設(shè)備端傳感信息的簽名和加密協(xié)議相同。只是RFID讀卡器讀取的RFID傳感信息CL,是事先寫入RFID里的固定信息。
(4)物聯(lián)網(wǎng)認(rèn)證中心端的 RFID傳感信息解密和簽名驗證協(xié)議
當(dāng)認(rèn)證中心端收到RFID讀卡器發(fā)送來的5組簽名數(shù)據(jù)后,首先,根據(jù)RFID讀卡器智能卡芯片的標(biāo)識,在傳輸密鑰數(shù)據(jù)庫中定位對應(yīng)該標(biāo)識的記錄,再將記錄中的傳輸密鑰的密文即:SKi’(i=1~n)輸入認(rèn)證中心端的加密卡芯片中,并在加密卡芯片里,使用存儲密鑰K將 SKi’(i=1~n)解密成明文即:SKi(i=1~n),用SKi(i=1~n)將接收到的簽名密鑰的密文CK’解密成明文,即:CK,用CK解密傳感信息的密文和傳感信息的數(shù)字簽名,得到傳感信息的明文(即:CL)和傳感信息的“摘要”信息L1,再用摘要算法對CL進行“摘要”,得到CL的“摘要”信息L2,通過對比L1和L2是否相同?來確認(rèn)RFID讀卡器端傳輸來的RFID傳感信息CL是否可信、完整,若L1≠L2,則RFID傳感信息CL不可信,不完整。
若L1=L2,RFID讀卡器端傳輸來的CL可信、完整,則在物聯(lián)網(wǎng)認(rèn)證中心端,再根據(jù)CL中RFID的標(biāo)識B1,在物聯(lián)網(wǎng)認(rèn)證中心的簽名密鑰數(shù)據(jù)庫中定位,取出對應(yīng) RFID的簽名密鑰的密文即:CKK’,并輸入加密卡芯片里,用存儲密鑰K將CKK’解密成明文即:CKK,用CKK將RFID基本信息LL的密文,以及B1和LL的數(shù)字簽名解密,得到LL的明文,同時,得到B1和LL的“摘要”信息Q1,再用摘要算法對B1和LL進行“摘要”,得到“摘要”信息Q2,通過對比Q1和Q2是否相同?來確認(rèn)RFID內(nèi)的標(biāo)識B1和RFID的基本信息LL是否完整,未被篡改。
(1)本安全協(xié)議都是在傳感設(shè)備端和物聯(lián)網(wǎng)認(rèn)證中心端兩端的芯片硬件里完成,是一種“芯片級”的安全協(xié)議,且密碼算法、密鑰和安全協(xié)議軟件和數(shù)據(jù)都存放在兩端的芯片硬件里,從而,提高了物聯(lián)網(wǎng)感知層加密系統(tǒng)和安全協(xié)議的安全等級。
(2)在智能芯片里,由于單鑰密碼算法加、解密速度比雙鑰密碼算法快 1000倍,采用安全單鑰管理技術(shù),解決了單鑰密碼算法在傳感設(shè)備認(rèn)證、或簽名和加密協(xié)議中密鑰更新管理的難題,降低了單鑰更新維護的成本,同時,發(fā)揮了單鑰密碼算法加、解密速度快的優(yōu)勢,有效提高物聯(lián)網(wǎng)感知層安全協(xié)議的運行效率。
(3)由于物聯(lián)網(wǎng)傳感設(shè)備數(shù)量較大,是互聯(lián)網(wǎng)用戶量的32倍,在物聯(lián)網(wǎng)認(rèn)證中心端,用存儲密鑰分別來加密各個傳感設(shè)備端的傳輸密鑰,或各個RFID的簽名密鑰(用于對RFID內(nèi)基本信息LL進行簽名的簽名密鑰CKK),保證存放在物聯(lián)網(wǎng)認(rèn)證中心端全體對應(yīng)傳感設(shè)備端傳輸密鑰的存儲安全,保證存放在物聯(lián)網(wǎng)認(rèn)證中心端全體對應(yīng)RFID的簽名密鑰的存儲安全,不需要購置大量的加密卡設(shè)備來存儲大量的傳輸密鑰和RFID的簽名密鑰,能大大節(jié)約認(rèn)證中心的建設(shè)成本。同時,對應(yīng)傳感設(shè)備端傳輸密鑰或RFID的簽名密鑰,都僅占16字節(jié)(根據(jù)密鑰長度而定)左右存儲空間,單一物聯(lián)網(wǎng)認(rèn)證中心能管理海量(3億以上)傳感設(shè)備。
(4)安全單鑰管理技術(shù)保證三種密鑰的安全使用
① 認(rèn)證或簽名密鑰的明文不出傳感設(shè)備端智能卡芯片硬件。在傳感設(shè)備端智能卡芯片里,用傳輸密鑰SKi(i=1~n)來加密認(rèn)證或簽名密鑰 CK,生成認(rèn)證或簽名密鑰密文即:CK’,并將 CK’發(fā)送給認(rèn)證中心端,保證認(rèn)證/簽名密鑰傳輸交換安全。
認(rèn)證或簽名密鑰在傳感設(shè)備端智能卡芯片里隨機數(shù)發(fā)生器產(chǎn)生,具有隨機性,一次一變,屬于一組的亂碼,用傳輸密鑰將每次產(chǎn)生的認(rèn)證或簽名密鑰,分別加密后生成的密文也具有隨機性,一次一變,也都屬于一組亂碼,無規(guī)律性。破譯者無法將 CKj(j=1~M,M 為自然數(shù))作為破譯條件——“重復(fù)報”(使用相同的單鑰將多份不同的明文報文加密成密文報文),來破譯認(rèn)證或簽名密鑰CKj(j=1~M,M為自然數(shù)),或破譯傳輸密鑰SKi(i=1~n)。
② 每個傳感設(shè)備端對應(yīng)的傳輸密鑰 SKi(i=1~n)都存儲在傳感設(shè)備端智能卡芯片里。在認(rèn)證中心端,全體傳感設(shè)備端對應(yīng)的傳輸密鑰SKi(i=1~n),是以密文形式存放在認(rèn)證中心的傳輸密鑰數(shù)據(jù)庫中,保證全體傳感設(shè)備端對應(yīng)的傳輸密鑰在認(rèn)證中心端的存儲安全。全體對應(yīng)RFID的簽名密鑰,是以密文形式存放在認(rèn)證中心的簽名密鑰數(shù)據(jù)庫中,保證全體對應(yīng)RFID的簽名密鑰在認(rèn)證中心端的存儲安全。
③ 存儲密鑰K在加密卡的芯片里產(chǎn)生,并存儲在加密卡芯片,保證存儲密鑰K的存儲和運行安全。
每組傳輸密鑰SKi(i=1~n)是在密鑰初始化時,由隨機數(shù)發(fā)生器產(chǎn)生,都具有隨機性,且都屬于一組亂碼,用存儲密鑰 K分別來加密每一組傳輸密鑰 SKi(i=1~n)生成的傳輸密鑰密文SKi’(i=1~n),也具有隨機性,一次一變,也都屬于一組亂碼。破譯者無法將SKi’(i=1~n),作為破譯條件——“重復(fù)報”來破譯傳輸密鑰:SKi(i=1~n),或者來破譯存儲密鑰K。
④ 在感知層傳輸?shù)腞FID的基本信息LL,被進行兩次簽名和加密,第一次是將基本信息 LL簽名和加密后,生成的傳感信息CL并寫入RFID里,防止RFIDli的數(shù)據(jù)外泄,被篡改或被克隆。當(dāng)RFID內(nèi)的傳感信息CL被RFID讀卡器讀出后,再被RFID讀卡器里的智能卡芯片的簽名和加密協(xié)議,簽名并加密成密文后傳輸給物聯(lián)網(wǎng)認(rèn)證中心,在加密卡芯片里,對RFID的密文數(shù)據(jù)進行兩次解密和簽名驗證,從而,防止RFID讀卡器讀取的傳感信息被篡改。
本方案通過對智能芯片的性能進行分析,提出在物聯(lián)網(wǎng)傳感設(shè)備上嵌入的智能芯片里,只能采用輕量級加密技術(shù)來建立物聯(lián)網(wǎng)感知層的安全協(xié)議,并采用安全單鑰管理技術(shù)來解決輕量級密碼的密鑰更新難題,實現(xiàn)在物聯(lián)網(wǎng)傳感設(shè)備端的智能芯片里,建立傳感設(shè)備端傳感設(shè)備認(rèn)證協(xié)議、簽名和加密協(xié)議,在物聯(lián)網(wǎng)認(rèn)證中心端加密卡芯片里,建立認(rèn)證中心端的傳感設(shè)備認(rèn)證協(xié)議、解密和簽名驗證協(xié)議,保證物聯(lián)網(wǎng)感知層的傳感設(shè)備可信、真實,未被替換。保證傳感信息可靠、完整、未被篡改和安全保密,從而,建立物聯(lián)網(wǎng)感知層的信息安全系統(tǒng),為我國“智慧城市”的建設(shè)保駕護航。
[1]胡祥義.一種物聯(lián)網(wǎng)的設(shè)備認(rèn)證、數(shù)據(jù)完整和保密傳輸實現(xiàn)方法.中國.201010517919X[P].2010.
[2]雷吉成.物聯(lián)網(wǎng)安全技術(shù)[M].北京:電子工業(yè)出版社.2012.
[3]李微.淺析物聯(lián)網(wǎng)安全[J].信息與電腦.2001.
[4]陳庚,許建.物聯(lián)網(wǎng)安全特征與關(guān)鍵技術(shù)[J].南京郵電大學(xué)學(xué)報.2010.
[5]孫建華,陳昌祥.物聯(lián)網(wǎng)安全初探[J].通信技術(shù).2012.
[6]臧勁松.物聯(lián)網(wǎng)安全性能分析[J].計算機安全.2011.
[7]肖毅.物聯(lián)網(wǎng)安全管理技術(shù)研究[J].通信技術(shù).2011.
[8]張橫云.物聯(lián)網(wǎng)感知層的信息安全防護研究[J].電腦知識與技術(shù).2011.
[9]孫夢夢,劉元安,劉凱明.物聯(lián)網(wǎng)中的安全問題分析及其安全機制研究[J].保密科學(xué)技術(shù).2011.