亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于CK01模型的物聯(lián)網(wǎng)節(jié)點(diǎn)密鑰交換和更新算法研究

        2018-08-24 11:15:06歐志球王錚
        現(xiàn)代計(jì)算機(jī) 2018年21期
        關(guān)鍵詞:會(huì)話口令密鑰

        歐志球,王錚

        (浙江機(jī)電職業(yè)技術(shù)學(xué)院計(jì)算機(jī)工程學(xué)院,杭州310053)

        0 引言

        隨著物聯(lián)網(wǎng)的發(fā)展,安全高效的物聯(lián)網(wǎng)網(wǎng)絡(luò)設(shè)備管理成為研究熱點(diǎn)[1][11][14],當(dāng)前研究協(xié)議包括簡(jiǎn)單網(wǎng)管協(xié)議(Simple Network Management Protocol,SNMP)、用戶終端廣域網(wǎng)管理協(xié)議TR069(Technical Report)和私有管理協(xié)議等[14]。文獻(xiàn)[11]提出一種基于SM4密碼算法的私有管理協(xié)議,可針對(duì)智能家居網(wǎng)絡(luò)的惡意攻擊、及時(shí)發(fā)現(xiàn)入侵并報(bào)警;文獻(xiàn)[14]提出一種基于TR069協(xié)議的無(wú)線傳感器網(wǎng)絡(luò)網(wǎng)關(guān)管理方案。與另外兩種協(xié)議相比,SNMP協(xié)議作為事實(shí)上的計(jì)算機(jī)網(wǎng)絡(luò)管理協(xié)議標(biāo)準(zhǔn),得到眾多廠家的支持和廣泛的應(yīng)用[11],開始廣泛應(yīng)用于物聯(lián)網(wǎng)的節(jié)點(diǎn)[1-2]。但SNMP的V1和V2C安全性考慮不多,引入安全模式的SNMPv3也存在安全隱患[8]。因此,實(shí)現(xiàn)基于SNMPv3的安全高效密鑰生成、交換與管理具有極強(qiáng)的現(xiàn)實(shí)意義和應(yīng)用價(jià)值。

        目前國(guó)內(nèi)針對(duì)SNMPv3在物聯(lián)網(wǎng)領(lǐng)域的安全研究不多,文獻(xiàn)[8-9]提出了一些啟發(fā)式的密鑰交換算法,但缺乏形式化的安全證明以及密鑰更新處理;安全研究主要來自SNMP項(xiàng)目組,其在最新的RFC5590中擴(kuò)充定義了三種安全模型的解決方案:基于原有RFC3414的用戶安全模型(User-based Security Model,USM)模型[2];基于傳輸層安全的 TSM(Transport Security Model)模型[3-6];基于原有USM模型,但引入其他安全協(xié)議增強(qiáng)其安全性。目前USM在SNMPv3中得到廣泛應(yīng)用,但該模型中密鑰生成與更新算法存在安全漏洞,同時(shí)沒有定義如何進(jìn)行安全的密鑰交換。本文首先簡(jiǎn)要說明SNMPv3的體系結(jié)構(gòu)和安全機(jī)制,并分析USM密鑰生成算法的在無(wú)線網(wǎng)絡(luò)管理中的漏洞,提出安全的密鑰交換方法并予以證明,最后提出相應(yīng)的方案設(shè)計(jì)和實(shí)現(xiàn)。

        1 SNMPv3的體系結(jié)構(gòu)和安全機(jī)制

        SNMPv3的體系結(jié)構(gòu)如圖1所示,它的安全性主要由USM和視圖訪問控制模型(View Access Control Model,VACM)提供[3],包括:

        (1)密鑰產(chǎn)生、交換與更新。定義了密鑰的產(chǎn)生、本地化和更新的機(jī)制;

        (2)認(rèn)證。認(rèn)證包括數(shù)據(jù)完整性和數(shù)據(jù)源認(rèn)證。USM認(rèn)證通過哈希消息驗(yàn)證代碼(Hash Message Au-thentication Codes,HMAC)算法實(shí)現(xiàn),標(biāo)準(zhǔn)推薦使用MD5或SHA算法;

        (3)加解密。對(duì)消息的內(nèi)容進(jìn)行加密,避免泄漏。標(biāo)準(zhǔn)推薦使用DES算法;

        (4)訪問控制。SNMPv3通過VACM實(shí)現(xiàn)對(duì)于具體用戶基于組(視圖)的訪問權(quán)限控制;

        (5)實(shí)體間時(shí)間同步以及消息合時(shí)性檢查。標(biāo)準(zhǔn)通過消息頭中的engineBoot和engineTime實(shí)現(xiàn)實(shí)體間的時(shí)間同步與消息的合時(shí)性檢查,從而防止消息重發(fā)、復(fù)制和延遲。

        圖1 SNMPv3的體系結(jié)構(gòu)

        2 密鑰安全交換與更新算法設(shè)計(jì)

        密鑰安全交換與管理SNMPv3協(xié)議的核心,包括密鑰生成、交換和更新等部分。

        2.1 現(xiàn)有協(xié)議密鑰生成與交換

        SNMPv3推薦的密鑰生成算法如圖2所示[3]。

        圖2 標(biāo)準(zhǔn)定義的密鑰生成算法

        該算法存在以下問題:

        (1)USM密鑰來源于engineID和用戶口令。其中engineID在鏈路上采用明文傳輸,而用戶口令一般都比較簡(jiǎn)單,容易被猜解,因此密鑰安全性存在漏洞;

        (2)巨大的網(wǎng)絡(luò)規(guī)模,不同的設(shè)備如果都采用不同的口令,則口令的維護(hù)十分繁雜;這使得用戶傾向于使用同一個(gè)口令應(yīng)用于所有網(wǎng)絡(luò)節(jié)點(diǎn),因此如果一個(gè)設(shè)備被破解,會(huì)波及到其他設(shè)備;

        (3)算法沒有定義如何進(jìn)行安全的口令或密鑰交換。

        2.2 安全密鑰生成與交換理論證明

        密鑰交換常用的算法是迪菲-赫爾曼密鑰交換算法(Diffie-Hellman,DH)算法,可以解決上面提到問題,但DH算法無(wú)法抵御中間人攻擊,因此引入形式化的安全模型CK01,在該模型下有如下定義和定理[10]:

        定義1:認(rèn)證鏈路模型(AM)下會(huì)話密鑰(SK)安全。如果對(duì)于允許詢問TestSession查詢的AM敵手A(不允許SessionExpiration查詢),協(xié)議P能滿足以下條件則稱其在AM下SK安全的密鑰協(xié)商協(xié)議:

        (1)如果兩個(gè)未被攻陷的參與者完成了匹配會(huì)話,則它們輸出相同的會(huì)話密鑰;

        (2)A區(qū)分P產(chǎn)生的會(huì)話密鑰和隨機(jī)數(shù)的概率不超過0.5+ε,其中ε為一個(gè)與安全參數(shù)k有關(guān)的可忽略函數(shù)。

        定理1:如果判定性Diffie-Hellman(DDH)假設(shè)是困難的,則DH協(xié)議在AM中是會(huì)話密鑰安全的。

        定理2:設(shè)P在AM中是SK安全密鑰交換協(xié)議,λ是一個(gè)消息傳輸認(rèn)證器,則P'=Cλ(P)在非認(rèn)證鏈路模型(UM)中是SK安全密鑰交換協(xié)議。

        其中UM是非認(rèn)證鏈路模型,即真實(shí)的網(wǎng)絡(luò)模型;AM是認(rèn)證鏈路模型。

        推論:如果DDH假設(shè)是困難的,通過采用基于公鑰基礎(chǔ)設(shè)施(Public Key Infrastructure,PKI)的證書管理機(jī)構(gòu)(Certificate Authority,CA)認(rèn)證方式,可以使用DH協(xié)議實(shí)現(xiàn)SNMPv3在UM中的會(huì)話密鑰安全交換。

        證明:根據(jù)定理1,因?yàn)镈DH是困難的,所以P=DH在AM中是會(huì)話密鑰安全的;

        設(shè)λ為基于PKI的CA認(rèn)證方式消息傳輸認(rèn)證器,則根據(jù)定理2,P'=Cλ(P)在UM中是SK安全的密鑰交換協(xié)議;

        因此,可使用DH協(xié)議實(shí)現(xiàn)SNMPv3在UM中的會(huì)話密鑰安全交換。

        2.3 新的安全密鑰生成與交換算法

        根據(jù)推論以及文獻(xiàn)[10]的SIG-DH密鑰交換協(xié)議,設(shè)p,q為大素?cái)?shù),q|p-1,g為階是素?cái)?shù)q的數(shù)域G的一個(gè)生成元,代理實(shí)體A和管理實(shí)體M共享g和p,s是會(huì)話標(biāo)識(shí)。A和M各有一個(gè)用于簽名的證書CertA和CertB,Sig為簽名算法。流程如下:

        (1)A發(fā)送申請(qǐng)密鑰消息(A,s,req,Sigi(A,s,req,M))給M;

        (2)M收到消息(A,s,req,Sigi(A,s,req,M))后,驗(yàn)證簽名以及包含簽名信息的消息的正確性,如果驗(yàn)證通過,則任意選擇 xM∈,并發(fā)送消息(M,s,ym=gxM,Sigj(M,s,ym,A))給 A;

        (3)A收到消息(M,s,ym=gxM,Sigj(M,s,ym,A))后,驗(yàn)證簽名以及包含簽名信息的消息,如果驗(yàn)證通過,任意選擇xA∈,發(fā)送消息(A,s,yA=gxA,Sigk(A,s,ym,yA,M))給M,計(jì)算會(huì)話標(biāo)識(shí)s的會(huì)話密鑰K=K=gxAxM,移除 x;

        AMA

        (4)M收到消息(A,s,yA=gxA,Sigk(A,s,ym,yA,M))后,驗(yàn)證簽名以及包含簽名信息的消息,如果驗(yàn)證通過,計(jì)算會(huì)話標(biāo)識(shí)s的會(huì)話密鑰K=KMA=gxMxA,移除xM。

        綜上所述,新的密鑰生成與交換算法與其他算法安全性能比較如表1所示。

        表1 密鑰交換生成算法安全性能比較

        2.4 現(xiàn)有協(xié)議密鑰更新

        圖3 標(biāo)準(zhǔn)定義的密鑰更新算法

        SNMPv3推薦的密鑰更新算法如圖3所示[3]:該算法通過差量方式計(jì)算并更新新的Key,但如果原有Key已經(jīng)泄露,則新的Key將也被泄露。

        2.5 新的密鑰更新算法

        根據(jù)2.2的證明,可采用同樣基于PKI的CA認(rèn)證方式,使用DH實(shí)現(xiàn)密鑰的在UM中安全更新。流程如下:

        (1)M發(fā)送更新密鑰消息(M,s,req,Sigi(M,s,req,A))給A;

        (2)A收到消息(M,s,req,Sigj(M,s,req,A))后,驗(yàn)證簽名以及包含簽名信息的消息,如果驗(yàn)證通過,發(fā)送申請(qǐng)密鑰消息(A,s,req,Sigi(A,s,req,M))給M;

        (3)后續(xù)流程與密鑰生成與交換算法流程(2)~(4)相同。

        綜上所述,新的密鑰生成與交換算法與其他算法安全性能比較如表2所示。

        表2 密鑰更新算法安全性能比較

        3 實(shí)現(xiàn)和驗(yàn)證

        圖4為算法實(shí)驗(yàn)與驗(yàn)證環(huán)境,管理實(shí)體安裝和使用Apache 2.2 Web服務(wù)器、Tomcat7.0 Java Web容器,SNMP4J1.8和JDK1.6運(yùn)行環(huán)境;代理實(shí)體應(yīng)安裝和使用SNMP-Agent2.0和JDK1.6運(yùn)行環(huán)境,如圖4所示:

        圖4 算法運(yùn)行環(huán)境

        該算法的實(shí)現(xiàn)包括:證書生成與部署、會(huì)話密鑰生成與交換、密鑰更新以及密鑰使用。核心的密鑰生成與交換實(shí)現(xiàn)如圖5所示,密鑰更新算法類似。核心偽代碼如下:

        //生成yM

        KeyPairGenerator keyGen=KeyPairGenerator.getInstance("DH");

        keyGen.initialize(dhParamSpec);

        privKeyPair=keyGen.generateKeyPair();

        privAgreement=KeyAgreement.getInstance("DH");

        privAgreement.init(privKeyPair.getPrivate());

        byte[]pubPrivKeyEnc=privKeyPair.getPublic().getEncoded(); //生成 xA和yA

        DHParameterSpecdhParamSpec= ((DHPublicKey)mgrPubKey).getParams();

        KeyPairGenerator agtKpairGen= KeyPairGenerator.getInstance("DH");

        agtKpairGen.initialize(dhParamSpec);

        KeyPair agtKpair=agtKpairGen.generateKeyPair();

        KeyAgreement agtKeyAgree=KeyAgreement.getInstance("DH");

        agtKeyAgree.init(agtKpair.getPrivate());

        agtKeyBuf=agtKpair.getPublic().getEncoded();

        agtKeyAgree.doPhase(mgrPubKey,true);

        agtPrivKey=agtKeyAgree.generateSecret(PRIV_ALGORITHM);

        //生成管理端Key

        X509EncodedKeySpec x509KeySpec=new X509EncodedKeySpec(agtKeyBuf);

        PublicKey agtPubKey = mgtKeyFac.generatePublic(x509KeySpec);

        privAgreement.doPhase(agtPubKey,true);

        mgtPrivKey=privAgreement.generateSecret(algorithm);

        管理者與代理兩端使用OpenSSL生成認(rèn)證證書,在密鑰交換或更新完成后,在SNMP4J中,可以通過USM.addLocalizedUser()方法設(shè)置本地化的Key。

        圖6為測(cè)試系統(tǒng)在密鑰交換過程中的數(shù)據(jù)包情況,從91~97完成會(huì)話協(xié)商,第98個(gè)包開始密鑰申請(qǐng)請(qǐng)求,到第107個(gè)包完成密鑰的交換。

        表3為該算法在各個(gè)階段的時(shí)間開銷統(tǒng)計(jì),在測(cè)試局域網(wǎng)中,實(shí)際網(wǎng)絡(luò)傳輸時(shí)間在毫秒內(nèi),因此表中后面兩項(xiàng)可以視為DH算法實(shí)質(zhì)計(jì)算所需時(shí)間。從表中數(shù)據(jù)分析,新的算法相比純粹的DH算法增加了~22%的時(shí)間開銷。考慮到密鑰的生成、交換與更新實(shí)質(zhì)不是頻繁操作,該性能開銷可以接受。而且在實(shí)際工作環(huán)境中,該部分開銷還可以通過拓展帶寬與提升機(jī)器硬件減少。

        圖5 密鑰生成與交換實(shí)現(xiàn)

        圖6 實(shí)際系統(tǒng)運(yùn)行結(jié)果

        表3 算法時(shí)間開銷(單位ms)

        4 結(jié)語(yǔ)

        對(duì)于大規(guī)模的物聯(lián)網(wǎng)無(wú)線網(wǎng)絡(luò),基于USM模型的SNMPv3標(biāo)準(zhǔn)安全性不能很好地滿足其安全性和易部署維護(hù)的要求,尤其是密鑰交換過程更為關(guān)鍵,采用CK01安全模型可以設(shè)計(jì)可信的密鑰交換協(xié)議解決上述問題。另外,新的SNMPv3協(xié)議引入了TSM安全模型,也可以從傳輸層控制的角度進(jìn)一步增強(qiáng)SNMPv3 協(xié)議的安全性。

        猜你喜歡
        會(huì)話口令密鑰
        探索企業(yè)創(chuàng)新密鑰
        密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
        高矮胖瘦
        口 令
        一種對(duì)稱密鑰的密鑰管理方法及系統(tǒng)
        好玩的“反口令”游戲
        基于ECC的智能家居密鑰管理機(jī)制的實(shí)現(xiàn)
        有意冒犯性言語(yǔ)的會(huì)話含義分析
        漢語(yǔ)教材中的會(huì)話結(jié)構(gòu)特征及其語(yǔ)用功能呈現(xiàn)——基于85個(gè)會(huì)話片段的個(gè)案研究
        SNMP服務(wù)弱口令安全漏洞防范
        体验区试看120秒啪啪免费| 最近更新中文字幕一区二区| 国产免费人成视频在线观看 | 欧美精品videosex极品| 激性欧美激情在线| 少妇无码一区二区三区| 无码人妻一区二区三区在线视频 | 人妻无码一区二区三区四区 | 国产成人一区二区三中文| 久久一日本道色综合久久大香| 日本精品视频一视频高清| 美女露屁股无内裤视频| 亚洲一区二区三区在线高清中文 | 日本高清中文字幕二区在线| 日产一区二区三区的精品| 人妻少妇-嫩草影院| 性无码免费一区二区三区在线| 依依成人精品视频在线观看 | 极品成人影院| 娇妻玩4p被三个男人伺候电影| 国产日产精品久久久久久| 国产一区二区a毛片色欲| 人妻少妇偷人精品久久人妻| 色婷婷久久综合中文蜜桃| 一区二区三区美女免费视频| 先锋中文字幕在线资源| 欧美猛男军警gay自慰| 亚洲精品成人专区在线观看| 久久久精品免费国产四虎| 国产黑色丝袜在线观看网站91 | 国产精品国产自线拍免费| 男女激情视频网站免费在线| 国产大屁股视频免费区| 亚洲乱码av中文一区二区| 韩国主播av福利一区二区| 国产精品视频白浆免费视频| 成人丝袜激情一区二区| 久精品国产欧美亚洲色aⅴ大片| 99精品视频69V精品视频| 人妻少妇一区二区三区| 人妻精品久久久一区二区|