專利名稱:一種基于pki技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及物聯(lián)網(wǎng),尤其涉及一種物聯(lián)網(wǎng)認(rèn)證方法及系統(tǒng)。
背景技術(shù):
公鑰基礎(chǔ)設(shè)施(Public Key hfrastructure,簡(jiǎn)稱H(I)是指用公鑰概念和技術(shù)來(lái)實(shí)施和提供安全服務(wù)的具有普適性的安全基礎(chǔ)設(shè)施。完整的PKI系統(tǒng)必須具有權(quán)威認(rèn)證機(jī)構(gòu)(CA)、數(shù)字證書庫(kù)、密鑰備份及恢復(fù)系統(tǒng)、 證書作廢系統(tǒng)、應(yīng)用接口(API)等基本構(gòu)成部分,構(gòu)建PKI也將圍繞著這五大系統(tǒng)來(lái)著手構(gòu)建。PKI技術(shù)是信息安全技術(shù)的核心,也是電子商務(wù)的關(guān)鍵和基礎(chǔ)技術(shù)。PKI的基礎(chǔ)技術(shù)包括加密、數(shù)字簽名、數(shù)據(jù)完整性機(jī)制、數(shù)字信封、雙重?cái)?shù)字簽名等。一個(gè)典型、完整、有效的PKI應(yīng)用系統(tǒng)至少應(yīng)具有以下部分公鑰密碼證書管理、黑名單的發(fā)布和管理、密鑰的備份和恢復(fù)、自動(dòng)更新密鑰、自動(dòng)管理歷史密鑰,以及支持交叉認(rèn)證。認(rèn)證機(jī)構(gòu)(CA)即數(shù)字證書的申請(qǐng)及簽發(fā)機(jī)關(guān),CA必須具備權(quán)威性的特征;數(shù)字證書庫(kù)用于存儲(chǔ)已簽發(fā)的數(shù)字證書及公鑰,用戶可由此獲得所需的其他用戶的證書及公鑰;密鑰備份及恢復(fù)系統(tǒng)如果用戶丟失了用于解密數(shù)據(jù)的密鑰,則數(shù)據(jù)將無(wú)法被解密,這將造成合法數(shù)據(jù)丟失。為避免這種情況,PKI提供備份與恢復(fù)密鑰的機(jī)制。但須注意, 密鑰的備份與恢復(fù)必須由可信的機(jī)構(gòu)來(lái)完成。并且,密鑰備份與恢復(fù)只能針對(duì)解密密鑰,簽名私鑰為確保其唯一性而不能夠作備份。證書作廢系統(tǒng)證書作廢處理系統(tǒng)是HQ的一個(gè)必備的組件。與日常生活中的各種身份證件一樣,證書有效期以內(nèi)也可能需要作廢,原因可能是密鑰介質(zhì)丟失或用戶身份變更等。為實(shí)現(xiàn)這一點(diǎn),PKI必須提供作廢證書的一系列機(jī)制。應(yīng)用接口(API) =PKI的價(jià)值在于使用戶能夠方便地使用加密、數(shù)字簽名等安全服務(wù),因此一個(gè)完整的PKI必須提供良好的應(yīng)用接口系統(tǒng),使得各種各樣的應(yīng)用能夠以安全、 一致、可信的方式與PKI交互,確保安全網(wǎng)絡(luò)環(huán)境的完整性和易用性。通常來(lái)說(shuō),CA是證書的簽發(fā)機(jī)構(gòu),它是PKI的核心。眾所周知,構(gòu)建密碼服務(wù)系統(tǒng)的核心內(nèi)容是如何實(shí)現(xiàn)密鑰管理。公鑰體制涉及到一對(duì)密鑰(即私鑰和公鑰),私鑰只由用戶獨(dú)立掌握,無(wú)須在網(wǎng)上傳輸,而公鑰則是公開的,需要在網(wǎng)上傳送,故公鑰體制的密鑰管理主要是針對(duì)公鑰的管理問(wèn)題,目前較好的解決方案是數(shù)字證書機(jī)制。證書證書是PKI中最重要的、最基本的數(shù)據(jù)要素。PKI提供的各種服務(wù)(機(jī)密性、 完整性、非否認(rèn)等等),都要通過(guò)證書來(lái)實(shí)現(xiàn)。數(shù)字證書一般包括內(nèi)容;版本、序列號(hào);簽發(fā)者(Issuer);證書主體(Subject), 即訂戶;有效期;訂戶公鑰;算法標(biāo)識(shí)和密鑰;簽發(fā)者(即CA)的簽名;簽名算法標(biāo)識(shí);簽名結(jié)果等等,具體可參見X. 509證書格式。物聯(lián)網(wǎng)(Internet of Things),從狹義的理解來(lái)說(shuō),就是傳感網(wǎng),把各種傳感器聯(lián)結(jié)起來(lái),形成一個(gè)網(wǎng)絡(luò)。底層感知主要分為四類身份感知,狀態(tài)感知,圖像感知,位置感知。 而無(wú)線傳感器網(wǎng)絡(luò)是一個(gè)自組織的網(wǎng)絡(luò),非常適合底層感知數(shù)據(jù)的搜集。物聯(lián)網(wǎng)其實(shí)是互聯(lián)網(wǎng)向底層延伸。物聯(lián)網(wǎng)的構(gòu)成分為幾個(gè)層級(jí)底層是數(shù)據(jù)采集層,也就是感知層,共有四類感知。往上是傳輸層,傳輸感知的數(shù)據(jù),傳輸方式分為有線、無(wú)線等方式。第三,傳輸以后要對(duì)數(shù)據(jù)進(jìn)行計(jì)算、數(shù)據(jù)挖掘,這部分可以使用云計(jì)算技術(shù)。然后,使用有效數(shù)據(jù)支撐應(yīng)用。包括城管管理、安全管控、應(yīng)急處置等各類應(yīng)用。為避免重復(fù)投資,政府的各個(gè)部門都在考慮進(jìn)行物聯(lián)網(wǎng)的統(tǒng)一建設(shè)。但是如何利用現(xiàn)有的資源,來(lái)實(shí)現(xiàn)物聯(lián)網(wǎng)節(jié)點(diǎn)的統(tǒng)一安全認(rèn)證,提供一個(gè)方便、快捷、高性能、高效率的認(rèn)證方式是當(dāng)今政府部門考慮的難題。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是,提供一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法及系統(tǒng), 能夠?qū)ξ锫?lián)網(wǎng)節(jié)點(diǎn)進(jìn)行統(tǒng)一認(rèn)證,便捷、高效。為了解決上述技術(shù)問(wèn)題,本發(fā)明提出一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法,包括傳感器節(jié)點(diǎn)按照預(yù)設(shè)的上報(bào)周期向上位機(jī)發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù); 所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;上位機(jī)接收到所述心跳數(shù)據(jù)后,使用上位機(jī)私鑰進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送給認(rèn)證機(jī)構(gòu) CA ;所述CA接收到節(jié)點(diǎn)證書和隨機(jī)數(shù)后,對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證,將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送至所述上位機(jī);所述上位機(jī)根據(jù)接收到的認(rèn)證結(jié)果和隨機(jī)數(shù)獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果。進(jìn)一步地,上述方法還可具有以下特點(diǎn)所述心跳數(shù)據(jù)中還包括心跳有效時(shí)間;所述上位機(jī)在解密心跳數(shù)據(jù)后,先判斷得到的心跳數(shù)據(jù)中的心跳有效時(shí)間是否仍然有效,如果有效,才解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。進(jìn)一步地,上述方法還可具有以下特點(diǎn)所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)認(rèn)證通過(guò)后,啟動(dòng)定時(shí)器,定時(shí)時(shí)間為一預(yù)設(shè)的臨時(shí)有效期,在所述定時(shí)器到時(shí)之前,不對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,在所述定時(shí)器到時(shí)時(shí),繼續(xù)對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理;所述預(yù)設(shè)的臨時(shí)有效期大于所述預(yù)設(shè)的上報(bào)周期。進(jìn)一步地,上述方法還可具有以下特點(diǎn)所述上位機(jī)使用上位機(jī)私鑰進(jìn)行解密時(shí),如果解密失敗,則進(jìn)行告警處理;和/或所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果為認(rèn)證失敗時(shí),則進(jìn)行告警處理。進(jìn)一步地,上述方法還可具有以下特點(diǎn)
所述節(jié)點(diǎn)證書包括版本號(hào)、序列號(hào)、簽名、頒發(fā)者、有效期、主體和主體公鑰信息。為了解決上述技術(shù)問(wèn)題,本發(fā)明還提出一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證系統(tǒng),包括傳感器節(jié)點(diǎn),按照預(yù)設(shè)的上報(bào)周期發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù);所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;上位機(jī),接收所述心跳數(shù)據(jù),使用上位機(jī)私鑰對(duì)其進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送出去;以及接收認(rèn)證結(jié)果和隨機(jī)數(shù),據(jù)以獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果;認(rèn)證機(jī)構(gòu)CA,接收所述節(jié)點(diǎn)證書和所述隨機(jī)數(shù),對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證,將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送出去。進(jìn)一步地,上述系統(tǒng)還可具有以下特點(diǎn)所述心跳數(shù)據(jù)中還包括心跳有效時(shí)間;所述上位機(jī),在解密心跳數(shù)據(jù)后,先判斷得到的心跳數(shù)據(jù)中的心跳有效時(shí)間是否仍然有效,如果有效,才解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。進(jìn)一步地,上述系統(tǒng)還可具有以下特點(diǎn)所述上位機(jī),還在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)認(rèn)證通過(guò)后,啟動(dòng)定時(shí)器,定時(shí)時(shí)間為一預(yù)設(shè)的臨時(shí)有效期,在所述定時(shí)器到時(shí)之前,不對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,在所述定時(shí)器到時(shí)時(shí),繼續(xù)對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理;所述預(yù)設(shè)的臨時(shí)有效期大于所述預(yù)設(shè)的上報(bào)周期。進(jìn)一步地,上述系統(tǒng)還可具有以下特點(diǎn)所述上位機(jī),在使用上位機(jī)私鑰進(jìn)行解密時(shí),如果解密失敗,還進(jìn)行告警處理;和 /或所述上位機(jī),在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果為認(rèn)證失敗時(shí),還進(jìn)行告
警處理。進(jìn)一步地,上述系統(tǒng)還可具有以下特點(diǎn)所述節(jié)點(diǎn)證書包括版本號(hào)、序列號(hào)、簽名、頒發(fā)者、有效期、主體和主體公鑰信息。本發(fā)明提供的一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法及系統(tǒng),能夠?qū)ξ锫?lián)網(wǎng)節(jié)點(diǎn)進(jìn)行統(tǒng)一認(rèn)證,便捷、高效。
圖1是本發(fā)明實(shí)施例一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證系統(tǒng)方框圖;圖2是本發(fā)明實(shí)施例一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法流程圖。
具體實(shí)施例方式下面將結(jié)合附圖來(lái)詳細(xì)說(shuō)明本發(fā)明實(shí)施方案。參見圖1,該圖示出了本發(fā)明實(shí)施例一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證系統(tǒng),包括一個(gè)或者多個(gè)傳感器節(jié)點(diǎn)、上位機(jī)和認(rèn)證機(jī)構(gòu)CA,其中
所述傳感器節(jié)點(diǎn),按照預(yù)設(shè)的上報(bào)周期發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù);所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。所述上位機(jī),接收所述心跳數(shù)據(jù),使用上位機(jī)私鑰對(duì)其進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送至所述 CA ;以及接收所述CA返回的認(rèn)證結(jié)果和隨機(jī)數(shù),據(jù)以獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果。所述CA,接收所述上位機(jī)發(fā)送來(lái)的節(jié)點(diǎn)證書和隨機(jī)數(shù),對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證, 將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送至所述上位機(jī)。其中,每個(gè)傳感器節(jié)點(diǎn)具有自己的證書,所述證書可以由CA簽發(fā)。具體可以按照區(qū)域類型簽發(fā),或者按照行業(yè)類型簽發(fā),本發(fā)明在此不做限制。所述上位機(jī)在獲知傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果后,即可根據(jù)認(rèn)證結(jié)果進(jìn)行數(shù)據(jù)處理, 例如,可以只接收認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的數(shù)據(jù),從而確保數(shù)據(jù)的可靠性。本發(fā)明實(shí)施例巧妙地通過(guò)傳感器節(jié)點(diǎn)向上位機(jī)發(fā)送認(rèn)證請(qǐng)求,即心跳數(shù)據(jù),并在上位機(jī)與傳感器節(jié)點(diǎn)之間增加密鑰保護(hù)機(jī)制,上位機(jī)在確定心跳數(shù)據(jù)的正確性后,再將其上報(bào)CA,進(jìn)行認(rèn)證,并返回認(rèn)證結(jié)果給上位機(jī),從而針對(duì)物聯(lián)網(wǎng)的特點(diǎn),巧妙地應(yīng)用PKI技術(shù)建立物聯(lián)網(wǎng)認(rèn)證體系,確保物聯(lián)網(wǎng)數(shù)據(jù)的可靠性。較佳地,為了有效節(jié)約上位機(jī)的資源,所述心跳數(shù)據(jù)中還可以包括心跳有效時(shí)間。 所述上位機(jī)在解密心跳數(shù)據(jù)后,還會(huì)得到所述心跳數(shù)據(jù)的心跳有效時(shí)間,在對(duì)所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書進(jìn)行解密前,先判斷所述心跳有效時(shí)間是否仍然有效,如果有效,才解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。如果無(wú)效,則認(rèn)為所述心跳數(shù)據(jù)已經(jīng)過(guò)期,不再準(zhǔn)確, 可以丟棄,無(wú)需再執(zhí)行對(duì)節(jié)點(diǎn)證書的解密步驟。較佳地,為了節(jié)約上位機(jī)的資源,所述上位機(jī)還可以在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)認(rèn)證通過(guò)后,啟動(dòng)定時(shí)器,定時(shí)時(shí)間為一預(yù)設(shè)的臨時(shí)有效期,在所述定時(shí)器到時(shí)之前,不對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,在所述定時(shí)器到時(shí)時(shí),繼續(xù)對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理。所述預(yù)設(shè)的臨時(shí)有效期大于所述預(yù)設(shè)的上報(bào)周期。較佳地,本發(fā)明基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證系統(tǒng)還可以增加報(bào)警機(jī)制。具體來(lái)說(shuō), 可以是,所述上位機(jī)在使用上位機(jī)私鑰進(jìn)行解密時(shí),如果解密失敗,進(jìn)行告警處理。還可以是,所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果為認(rèn)證失敗時(shí),進(jìn)行告警處理??紤]到傳感器節(jié)點(diǎn)的傳輸能力較低,傳輸速度較低,較佳地,本發(fā)明實(shí)施例對(duì) X. 509證書中的信息進(jìn)行裁剪,保留其中的關(guān)鍵信息,從而減少傳輸數(shù)據(jù)量,使之更適用于物聯(lián)網(wǎng)特點(diǎn)。本發(fā)明實(shí)施例在此提供一種節(jié)點(diǎn)證書,其可以包含版本號(hào)、序列號(hào)、簽名、頒發(fā)者、有效期、主體和主體公鑰信息。其中所述版本號(hào),用于標(biāo)識(shí)證書的版本(版本1、版本2或者版本3)。所述序列號(hào),是由證書頒發(fā)者分配的本證書的唯一標(biāo)識(shí)。所述簽名,是簽名算法標(biāo)識(shí)符,由對(duì)象標(biāo)識(shí)符加上相關(guān)的參數(shù)組成,用于說(shuō)明本證書所用的數(shù)字簽名算法。例如,SHA-I和RSA的對(duì)象標(biāo)識(shí)符就用來(lái)說(shuō)明該數(shù)字簽名是利用 RSA對(duì)SHA-I雜湊加密。
所述頒發(fā)者,是證書頒發(fā)者的可識(shí)別名(DN)。所述有效期,是證書有效期的時(shí)間段。其字段可以由“Not Before”和“NotAfter” 兩項(xiàng)組成,它們分別由UTC時(shí)間或一般的時(shí)間表示(在RFC2459中有詳細(xì)的時(shí)間表示規(guī)則)。所述主體,是證書擁有者的可識(shí)別名,這個(gè)字段為非空,除非在證書擴(kuò)展中有別名。所述主體公鑰信息,是主體的公鑰(以及算法標(biāo)識(shí)符)。較佳地,本發(fā)明實(shí)施例一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證系統(tǒng)可以靈活地對(duì)證書進(jìn)行管理,以進(jìn)一步確保認(rèn)證的安全性。例如,可以提供證書更新功能,在具體實(shí)現(xiàn)時(shí),可以是上位機(jī)在每次認(rèn)證過(guò)程之后,即接收到認(rèn)證結(jié)果后,提示用戶及時(shí)更新證書。也可以按照不同的要求撤銷證書。還可以使用例如OCSP在線查詢的方式實(shí)現(xiàn)證書撤銷列表的發(fā)布。等寸。本發(fā)明實(shí)施例還提供了一種利用上述系統(tǒng)實(shí)現(xiàn)物聯(lián)網(wǎng)認(rèn)證的方法,如圖2所示, 包括步驟步驟S201 傳感器節(jié)點(diǎn)按照預(yù)設(shè)的上報(bào)周期向上位機(jī)發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù);所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;步驟S202 上位機(jī)接收到所述心跳數(shù)據(jù)后,使用上位機(jī)私鑰進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送給認(rèn)證機(jī)構(gòu)CA ;步驟S203 所述CA接收到節(jié)點(diǎn)證書和隨機(jī)數(shù)后,對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證,將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送至所述上位機(jī);步驟S204 所述上位機(jī)根據(jù)接收到的認(rèn)證結(jié)果和隨機(jī)數(shù)獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果。其中,每個(gè)傳感器節(jié)點(diǎn)具有自己的證書,所述證書可以由CA簽發(fā)。具體可以按照區(qū)域類型簽發(fā),或者按照行業(yè)類型簽發(fā),本發(fā)明在此不做限制。所述上位機(jī)在獲知傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果后,即可根據(jù)認(rèn)證結(jié)果進(jìn)行數(shù)據(jù)處理, 例如,可以只接收認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的數(shù)據(jù),從而確保數(shù)據(jù)的可靠性。本發(fā)明實(shí)施例巧妙地通過(guò)傳感器節(jié)點(diǎn)向上位機(jī)發(fā)送認(rèn)證請(qǐng)求,即心跳數(shù)據(jù),并在上位機(jī)與傳感器節(jié)點(diǎn)之間增加密鑰保護(hù)機(jī)制,上位機(jī)在確定心跳數(shù)據(jù)的正確性后,再將其上報(bào)CA,進(jìn)行認(rèn)證,并返回認(rèn)證結(jié)果給上位機(jī),從而針對(duì)物聯(lián)網(wǎng)的特點(diǎn),巧妙地應(yīng)用PKI技術(shù)建立物聯(lián)網(wǎng)認(rèn)證體系,從而確保物聯(lián)網(wǎng)數(shù)據(jù)的可靠性。。在執(zhí)行步驟S201時(shí),所述傳感器節(jié)點(diǎn)上報(bào)的心跳數(shù)據(jù)中還可以包括心跳有效時(shí)間。相應(yīng)地,在執(zhí)行步驟S202時(shí),所述上位機(jī)在解密心跳數(shù)據(jù)后還會(huì)得到心跳有效時(shí)間。所述上位機(jī)在對(duì)所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書進(jìn)行解密前,先判斷所述心跳有效時(shí)間是否仍然有效,如果有效,才解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。如果無(wú)效,則認(rèn)為所述心跳數(shù)據(jù)已經(jīng)過(guò)期,不再準(zhǔn)確,可以丟棄,無(wú)需再執(zhí)行對(duì)節(jié)點(diǎn)證書的解密步驟,從而有效節(jié)約上位機(jī)的資源。在執(zhí)行步驟S204時(shí),所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)認(rèn)證通過(guò)后,還可以啟動(dòng)定時(shí)器,定時(shí)時(shí)間為一預(yù)設(shè)的臨時(shí)有效期,在所述定時(shí)器到時(shí)之前,不對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,在所述定時(shí)器到時(shí)時(shí),繼續(xù)對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,從而有效節(jié)約上位機(jī)的資源。其中,所述預(yù)設(shè)的臨時(shí)有效期大于所述預(yù)設(shè)的上報(bào)周期。較佳地,還可以增加報(bào)警機(jī)制。例如,在執(zhí)行步驟S202時(shí),所述上位機(jī)使用上位機(jī)私鑰進(jìn)行解密時(shí),如果解密失敗,則可進(jìn)行告警處理。再例如,在執(zhí)行步驟S204時(shí),所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果為認(rèn)證失敗時(shí),則可進(jìn)行告警處理??紤]到傳感器節(jié)點(diǎn)的傳輸能力較低,傳輸速度較低,較佳地,本發(fā)明實(shí)施例對(duì) X. 509證書中的信息進(jìn)行裁剪,保留其中的關(guān)鍵信息,從而減少傳輸數(shù)據(jù)量,使之更適用于物聯(lián)網(wǎng)特點(diǎn)。本發(fā)明實(shí)施例在此提供一種節(jié)點(diǎn)證書,其可以包含版本號(hào)、序列號(hào)、簽名、頒發(fā)者、有效期、主體和主體公鑰信息。其中所述版本號(hào),用于標(biāo)識(shí)證書的版本(版本1、版本2或者版本3)。所述序列號(hào),是由證書頒發(fā)者分配的本證書的唯一標(biāo)識(shí)。所述簽名,是簽名算法標(biāo)識(shí)符,由對(duì)象標(biāo)識(shí)符加上相關(guān)的參數(shù)組成,用于說(shuō)明本證書所用的數(shù)字簽名算法。例如,SHA-I和RSA的對(duì)象標(biāo)識(shí)符就用來(lái)說(shuō)明該數(shù)字簽名是利用 RSA對(duì)SHA-I雜湊加密。所述頒發(fā)者,是證書頒發(fā)者的可識(shí)別名(DN)。所述有效期,是證書有效期的時(shí)間段。其字段可以由“Not Before”和“NotAfter” 兩項(xiàng)組成,它們分別由UTC時(shí)間或一般的時(shí)間表示(在RFC2459中有詳細(xì)的時(shí)間表示規(guī)則)。所述主體,是證書擁有者的可識(shí)別名,這個(gè)字段為非空,除非在證書擴(kuò)展中有別名。所述主體公鑰信息,是主體的公鑰(以及算法標(biāo)識(shí)符)。較佳地,本發(fā)明實(shí)施例還可以靈活地對(duì)證書進(jìn)行管理,以進(jìn)一步確保認(rèn)證的安全性。例如,可以提供證書更新功能,在具體實(shí)現(xiàn)時(shí),可以是上位機(jī)在每次認(rèn)證過(guò)程之后,即接收到認(rèn)證結(jié)果后,提示用戶及時(shí)更新證書。也可以按照不同的要求撤銷證書。還可以使用例如OCSP在線查詢的方式實(shí)現(xiàn)證書撤銷列表的發(fā)布。等等。當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,本領(lǐng)域技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法,其特征在于,包括傳感器節(jié)點(diǎn)按照預(yù)設(shè)的上報(bào)周期向上位機(jī)發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù);所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;上位機(jī)接收到所述心跳數(shù)據(jù)后,使用上位機(jī)私鑰進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送給認(rèn)證機(jī)構(gòu)CA ;所述CA接收到節(jié)點(diǎn)證書和隨機(jī)數(shù)后,對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證,將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送至所述上位機(jī);所述上位機(jī)根據(jù)接收到的認(rèn)證結(jié)果和隨機(jī)數(shù)獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果。
2.如權(quán)利要求1所述的方法,其特征在于 所述心跳數(shù)據(jù)中還包括心跳有效時(shí)間;所述上位機(jī)在解密心跳數(shù)據(jù)后,先判斷得到的心跳數(shù)據(jù)中的心跳有效時(shí)間是否仍然有效,如果有效,才解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。
3.如權(quán)利要求1或2所述的方法,其特征在于,還包括所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)認(rèn)證通過(guò)后,啟動(dòng)定時(shí)器,定時(shí)時(shí)間為一預(yù)設(shè)的臨時(shí)有效期,在所述定時(shí)器到時(shí)之前,不對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,在所述定時(shí)器到時(shí)時(shí),繼續(xù)對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理; 所述預(yù)設(shè)的臨時(shí)有效期大于所述預(yù)設(shè)的上報(bào)周期。
4.如權(quán)利要求1所述的方法,其特征在于,還包括所述上位機(jī)使用上位機(jī)私鑰進(jìn)行解密時(shí),如果解密失敗,則進(jìn)行告警處理;和/或所述上位機(jī)在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果為認(rèn)證失敗時(shí),則進(jìn)行告警處理。
5.如權(quán)利要求1所述的方法,其特征在于所述節(jié)點(diǎn)證書包括版本號(hào)、序列號(hào)、簽名、頒發(fā)者、有效期、主體和主體公鑰信息。
6.一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證系統(tǒng),其特征在于,包括傳感器節(jié)點(diǎn),按照預(yù)設(shè)的上報(bào)周期發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù);所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;上位機(jī),接收所述心跳數(shù)據(jù),使用上位機(jī)私鑰對(duì)其進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送出去;以及接收認(rèn)證結(jié)果和隨機(jī)數(shù),據(jù)以獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果;認(rèn)證機(jī)構(gòu)CA,接收所述節(jié)點(diǎn)證書和所述隨機(jī)數(shù),對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證,將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送出去。
7.如權(quán)利要求6所述的系統(tǒng),其特征在于 所述心跳數(shù)據(jù)中還包括心跳有效時(shí)間;所述上位機(jī),在解密心跳數(shù)據(jù)后,先判斷得到的心跳數(shù)據(jù)中的心跳有效時(shí)間是否仍然有效,如果有效,才解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書。
8.如權(quán)利要求6或7所述的系統(tǒng),其特征在于所述上位機(jī),還在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)認(rèn)證通過(guò)后,啟動(dòng)定時(shí)器,定時(shí)時(shí)間為一預(yù)設(shè)的臨時(shí)有效期,在所述定時(shí)器到時(shí)之前,不對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理,在所述定時(shí)器到時(shí)時(shí),繼續(xù)對(duì)所述認(rèn)證通過(guò)的傳感器節(jié)點(diǎn)的心跳數(shù)據(jù)進(jìn)行處理;所述預(yù)設(shè)的臨時(shí)有效期大于所述預(yù)設(shè)的上報(bào)周期。
9.如權(quán)利要求6所述的系統(tǒng),其特征在于所述上位機(jī),在使用上位機(jī)私鑰進(jìn)行解密時(shí),如果解密失敗,還進(jìn)行告警處理;和/或所述上位機(jī),在獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果為認(rèn)證失敗時(shí),還進(jìn)行告警處理。
10.如權(quán)利要求6所述的系統(tǒng),其特征在于所述節(jié)點(diǎn)證書包括版本號(hào)、序列號(hào)、簽名、頒發(fā)者、有效期、主體和主體公鑰信息。
全文摘要
本發(fā)明提供了一種基于PKI技術(shù)的物聯(lián)網(wǎng)認(rèn)證方法及系統(tǒng),該方法包括傳感器節(jié)點(diǎn)按照預(yù)設(shè)的上報(bào)周期向上位機(jī)發(fā)送使用上位機(jī)公鑰加密的心跳數(shù)據(jù);所述心跳數(shù)據(jù)包括節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;上位機(jī)接收到所述心跳數(shù)據(jù)后,使用上位機(jī)私鑰進(jìn)行解密,得到節(jié)點(diǎn)公鑰和用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書;使用所述節(jié)點(diǎn)公鑰解密所述用節(jié)點(diǎn)私鑰加密的節(jié)點(diǎn)證書,得到節(jié)點(diǎn)證書;生成本次認(rèn)證過(guò)程的隨機(jī)數(shù),將所述隨機(jī)數(shù)與所述節(jié)點(diǎn)證書一起發(fā)送給認(rèn)證機(jī)構(gòu)CA;所述CA接收到節(jié)點(diǎn)證書和隨機(jī)數(shù)后,對(duì)所述節(jié)點(diǎn)證書進(jìn)行認(rèn)證,將認(rèn)證結(jié)果和所述隨機(jī)數(shù)一起發(fā)送至所述上位機(jī);所述上位機(jī)根據(jù)接收到的認(rèn)證結(jié)果和隨機(jī)數(shù)獲知發(fā)起認(rèn)證的傳感器節(jié)點(diǎn)的認(rèn)證結(jié)果。
文檔編號(hào)H04L9/32GK102571338SQ201010603710
公開日2012年7月11日 申請(qǐng)日期2010年12月23日 優(yōu)先權(quán)日2010年12月23日
發(fā)明者朱學(xué)鋒, 樊勇, 魏劍平, 黃孝斌 申請(qǐng)人:北京時(shí)代凌宇科技有限公司