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

        ?

        鐵路物流實時監(jiān)控系統(tǒng)中具有消息恢復(fù)的身份認證方案

        2023-04-07 03:04:46易傳佳左黎明陳藝琳
        計算機應(yīng)用與軟件 2023年3期
        關(guān)鍵詞:物流系統(tǒng)

        易傳佳 左黎明 陳藝琳

        (華東交通大學(xué)理學(xué)院 江西 南昌 330013) (華東交通大學(xué)系統(tǒng)工程與密碼學(xué)研究所 江西 南昌 330013)

        0 引 言

        隨著現(xiàn)代物流業(yè)迅猛發(fā)展,鐵路物流憑借運量大、輻射廣、安全可靠等特點成為了現(xiàn)代物流業(yè)中的主要方式之一[1]。近年來,鐵路交通事故頻發(fā),僅2020年,我國已經(jīng)發(fā)生了三起鐵路交通事故[2],造成了重大的人員和財產(chǎn)損失。“6·13”溫嶺槽罐車爆炸事故造成20人死亡,172人受傷[3]。鐵路物流要防范上述事故的發(fā)生,必須建立有效的智能監(jiān)控平臺,實時保證鐵路運輸?shù)陌踩?。依托新興的大數(shù)據(jù)、云計算、人工智能等互聯(lián)網(wǎng)技術(shù),鐵路物流實時監(jiān)控系統(tǒng)的設(shè)計已經(jīng)成為當(dāng)前的研究熱點[4-6]。在復(fù)雜的互聯(lián)網(wǎng)環(huán)境下,物流實時監(jiān)控系統(tǒng)的數(shù)據(jù)交互過程存在信息泄露和信息篡改的網(wǎng)絡(luò)安全隱患,這會嚴重威脅到整個監(jiān)控系統(tǒng)的穩(wěn)定運行。物流監(jiān)控系統(tǒng)存在風(fēng)險的根本主要在于數(shù)據(jù)來源缺乏安全性認證,數(shù)據(jù)傳輸缺乏完整性保護。針對鐵路物流實時監(jiān)控系統(tǒng)存在的信息安全問題,需要一種高效安全的簽名方案來解決。在網(wǎng)絡(luò)傳輸帶寬受限環(huán)境中,具有短的消息簽名長度的簽名方案很適用。目前縮短簽名長度有兩種方式:(1) 設(shè)計短簽名方案,短簽名的概念由Boneh等[7]首次提出,在同等安全條件下,其簽名長度與DSA簽名相比縮短一半;(2) 直接壓縮傳輸?shù)南?該方法源于Nyberg等[8]首次提出的具有消息恢復(fù)功能的簽名方案,該方案不需要將消息同簽名一起傳送給驗證者,而是將原始消息嵌入到簽名,驗證者可以自行從簽名中恢復(fù)原始消息。本文主要研究第二種具有消息恢復(fù)功能的簽名方案并應(yīng)用到鐵路物流實時監(jiān)控系統(tǒng)中。

        Shamir[9]在1984年提出了基于身份的密碼體制,用戶私鑰通過一個可信的私鑰生成器(Private Key Generator,PKG)利用系統(tǒng)主密鑰和用戶身份信息生成。Ma[10]構(gòu)造了一種高效的基于身份的群簽名方案。Li[11]提出了一種具有消息恢復(fù)的基于身份的強指定驗證者簽名方案。Rao等[12]針對表達型線性秘密共享方案的可實現(xiàn)訪問結(jié)構(gòu),設(shè)計了兩個基于密鑰策略及屬性的具有消息恢復(fù)的密鑰隔離簽名方案。Chande等[13]應(yīng)用自認證密鑰和消息恢復(fù)的概念提出了一個有效的多代理簽名方案,該方案可以同時執(zhí)行公鑰驗證、多代理簽名驗證和消息恢復(fù)。Verma等[14]給出了一種可證明安全的、高效的基于身份的消息恢復(fù)盲簽名方案。James等[15]利用盲簽名和消息恢復(fù)特性,提出了一種基于身份的具有消息恢復(fù)的無配對盲簽名方案。闞元平[16]在格密碼基礎(chǔ)上提出了一種具有消息恢復(fù)功能的身份簽名方案,該方案能夠抵抗偽造攻擊。針對鐵路物流實時監(jiān)控系統(tǒng)存在的信息安全問題,本文提出一種高效的基于身份的帶消息恢復(fù)功能的簽名方案,并以該簽名方案為核心設(shè)計一種身份認證方案,整個方案交互過程計算量小、數(shù)據(jù)傳輸少,可以有效保障物流監(jiān)控系統(tǒng)數(shù)據(jù)來源的可靠性和安全性。

        1 基礎(chǔ)知識

        1.1 物流實時監(jiān)控系統(tǒng)設(shè)計

        物流實時監(jiān)控系統(tǒng)整體架構(gòu)如圖1所示,主要由電子標簽、數(shù)據(jù)采集裝置和云服務(wù)平臺三部分組成。

        圖1 整體架構(gòu)

        電子標簽內(nèi)嵌有密碼芯片,數(shù)據(jù)采集裝置以樹莓派為控制中心,通過傳感器實時采集當(dāng)前的數(shù)據(jù),并通過網(wǎng)絡(luò)通信模塊實現(xiàn)與云服務(wù)平臺的通信。數(shù)據(jù)采集裝置中傳感器包括定位模塊、溫度傳感器、濕度傳感器、振動傳感器、壓力傳感器。

        在該物流實時監(jiān)控系統(tǒng)中,貨物封箱完畢后,電子標簽粘貼于貨物的啟封處,當(dāng)電子標簽激活后,如果沒有收到云服務(wù)平臺的授權(quán),電子標簽的損壞將會導(dǎo)致數(shù)據(jù)采集裝置向云服務(wù)平臺發(fā)送警告信息。在物流過程中,數(shù)據(jù)采集裝置通過傳感器實時采集貨物當(dāng)前的狀態(tài)數(shù)據(jù)并傳輸?shù)诫娮訕撕炛?然后電子標簽對狀態(tài)數(shù)據(jù)進行數(shù)字簽名,再由數(shù)據(jù)采集裝置將簽名信息發(fā)送給云服務(wù)平臺,云服務(wù)平臺接收簽名信息并驗證簽名,簽證成功后恢復(fù)數(shù)據(jù)信息,然后將數(shù)據(jù)保存在云服務(wù)器中。

        1.2 基于身份具有消息恢復(fù)功能的簽名方案

        基于身份的具有消息恢復(fù)功能的簽名方案[17]由系統(tǒng)初始化、私鑰解析、簽名和驗證簽名四個算法組成,具體描述如下:

        1) 系統(tǒng)初始化:給定安全參數(shù),輸出系統(tǒng)參數(shù)和主密鑰,PKG秘密保存主密鑰,公開系統(tǒng)參數(shù)。

        2) 私鑰解析:輸入用戶身份ID,計算用戶私鑰,并通過一個安全的通道發(fā)送給用戶。

        3) 簽名:輸入系統(tǒng)參數(shù)、身份ID和用戶私鑰,輸出簽名,并發(fā)給驗證者。

        4) 驗證簽名:輸入系統(tǒng)參數(shù)、簽名,輸出驗證結(jié)果:“TRUE”或者“FALSE”,輸出恢復(fù)的完整消息。

        在物流實時監(jiān)控系統(tǒng)中,云服務(wù)平臺中有私鑰生成器(PKG),每個電子標簽有唯一的ID,PKG通過電子標簽ID生成簽名私鑰,在電子標簽初始化時,向電子標簽內(nèi)注入系統(tǒng)參數(shù)以及PKG生成的私鑰。當(dāng)云服務(wù)器對簽名信息進行驗證時,驗證成功則輸出恢復(fù)的完整消息,驗證失敗則發(fā)出警告信息。

        2 簽名方案構(gòu)造

        基于橢圓曲線上離散對數(shù)問題的難解性,提出一種基于身份的具有消息恢復(fù)功能的簽名方案。

        H3:{0,1}*×G×G→{0,1}l1+l2,

        F1:{0,1}l1→{0,1}l2,

        F2:{0,1}l2→{0,1}l1。

        最后PKG掌握并保密系統(tǒng)主密鑰s,公開系統(tǒng)參數(shù)params={q,P,e,Ppub,H1,H2,H3,F1,F2,l1,l2}。

        3) 簽名:對任意給定的消息m∈{0,1}l1進行簽名,過程如下:

        T=tP

        (1)

        h2=H2(ID,R,T)

        (2)

        u=t+xIDh2

        (3)

        (2) 計算:

        h3=H3(ID,R,uP)∈{0,1}l1+l2

        (4)

        h4=F1(m)‖(F2(F1(m))⊕m)∈{0,1}l1+l2

        (5)

        h=h3⊕h4

        (6)

        則σ=(h,T)為電子標簽對消息m的簽名。

        4) 簽名驗證:對給定消息m的簽名σ=(h,T),云服務(wù)端可以驗證簽名合法性并恢復(fù)出原始消息,驗證過程如下:

        (1) 依次計算:

        h1=H1(ID)

        (7)

        h2=H2(ID,R,T)

        (8)

        h3=H3(ID,R,T+h2R+h1h2Ppub)

        (9)

        (2) 計算h4=h3⊕h,從h4的二進制串表示中分離出長度為l2的串f1和長度為l1的串f2,恢復(fù)消息m′=F2(f1)⊕f2。

        (3) 驗證等式f1=F1(m′)是否成立,若成立則接受簽名σ=(h,T)為合法簽名,并輸出1,否則輸出0。正確情況下f1=F1(m)和f2=(F2(F1(m))⊕m),因此我們不難看出消息恢復(fù)過程的正確性。

        整個簽名驗證和消息恢復(fù)過程正確性證明如下:

        h3=H3(ID,R,uP)=

        H3(ID,R,(t+(r+sh1)h2)P)=

        H3(ID,R,(t+xIDh2)P)=

        H3(ID,R,T+h2R+h1h2Ppub)

        (10)

        h4=h3⊕h

        (11)

        由于:

        h4=F1(m)‖(F2(F1(m))⊕m)

        (12)

        f1=F1(m)

        (13)

        f2=(F2(F1(m))⊕m)

        (14)

        可得:

        m′=F2(f1)⊕f2=

        (F2(F1(m)))⊕(F2(F1(m))⊕m=m

        (15)

        3 具有消息恢復(fù)的身份認證方案設(shè)計

        圖2為具有消息恢復(fù)的身份認證方案數(shù)據(jù)交互原理圖,其中:Sign表示簽名;Verify表示驗證簽名。方案具體的交互流程如下:

        (1) 數(shù)據(jù)采集端采集數(shù)據(jù)。數(shù)據(jù)采集端通過傳感器采集實時數(shù)據(jù)data,然后將實時數(shù)據(jù)data傳輸?shù)诫娮訕撕灐?/p>

        (2) 電子標簽生成簽名。電子標簽接收數(shù)據(jù)采集端傳輸?shù)臄?shù)據(jù)data后,然后調(diào)用簽名算法對data進行簽名處理,最后電子標簽將簽名結(jié)果和電子標簽ID以ID#Sig的封包格式傳輸?shù)綌?shù)據(jù)采集端。

        (3) 數(shù)據(jù)采集端將簽名結(jié)果傳輸?shù)椒?wù)端。數(shù)據(jù)采集端將ID與簽名結(jié)果以ID#Sig的封包格式通過網(wǎng)絡(luò)通信模塊傳輸?shù)椒?wù)端。

        (4) 服務(wù)端身份驗證。服務(wù)端接收數(shù)據(jù)采集端傳輸?shù)南⒎獍?對消息封包解析,得到ID和Sig,通過ID檢索對應(yīng)的主公鑰Ppub對簽名進行驗證,如果驗證成功,恢復(fù)出消息得到data并保存到云服務(wù)器中,如果驗證失敗則提示異常警告。

        圖2 數(shù)據(jù)交互

        4 方案實現(xiàn)與效率分析

        4.1 方案實現(xiàn)

        在Windows 7 64位操作系統(tǒng)Microsoft Visual Studio 2012微軟平臺下,采用C#輕量級密碼術(shù)包(bouncy castle)實現(xiàn)了本文方案,實驗結(jié)果顯示本方案簽名所消耗時間為0.057 s,驗證所消耗時間為0.054 s,表明該簽名方案效率較高。實現(xiàn)結(jié)果如圖3所示,核心代碼如下:

        //簽名算法

        BigInteger t=new BigInteger("8");

        //計算T=tP

        ECPoint T=myecc.ecc_point_g.Multiply(t);

        string RR=R.X.ToBigInteger().ToString()+

        R.Y.ToBigInteger().ToString();

        string TT=T.X.ToBigInteger().ToString()+

        T.Y.ToBigInteger().ToString();

        string IDRT=ID+RR+TT;

        BigInteger uu=new BigInteger(

        myhash.TanGetDigestByteArray(IDRT));

        //計算u=H2(ID,R,T)

        BigInteger u=uu.Mod(myecc.ecc_n);

        //計算U=t+xID*u

        BigInteger U=

        t.Add(xID.Multiply(u)).Mod(myecc.ecc_n);

        ECPoint UP=myecc.ecc_point_g.Multiply(U);

        string strUP=UP.X.ToBigInteger().ToString()+

        UP.Y.ToBigInteger().ToString();

        string IDRUP=ID+RR+strUP;

        //計算h1=H3(ID,R,UP)

        byte[]h_1=

        myhash.TanGetDigestByteArray(IDRUP);

        byte[]h1=new byte[64];

        Array.Copy(h_1,0,h1,0,32);

        Array.Copy(h_1,0,h1,32,32);

        //計算h2

        byte[]F1=myhash.TanGetDigestByteArray(m);

        byte[]F2=myhash.TanGetDigestByteArray(F1);

        byte[]F2Xorm=HexXorByte(F2,m);

        byte[]h2=new byte[64];

        Array.Copy(F1,0,h2,0,32);

        Array.Copy(F2Xorm,0,h2,32,32);

        //計算h等于h1與h2的“異或”

        byte[]h=HexXorByte(h1,h2);

        //(4)簽名驗證

        //計算R+l*Pub

        ECPoint TRu=T.Add(xID_rignt.Multiply(u));

        string TRu_xy=TRu.X.ToBigInteger().ToString()+

        TRu.Y.ToBigInteger().ToString();

        string IDRTRu=ID+RR+TRu_xy;

        //計算h1=H3(ID,R,T+(R+l*Pub)u)

        byte[]h1_1=

        myhash.TanGetDigestByteArray(IDRTRu);

        byte[]h11=new byte[64];

        Array.Copy(h1_1,0,h11,0,32);

        Array.Copy(h1_1,0,h11,32,32);

        //計算h2=h與h1的“異或”

        byte[]h21=HexXorByte(h,h11);

        byte[]h21l2=new byte[32];

        byte[]h21l1=new byte[32];

        //截取h2的前l(fā)1長度的字節(jié)

        Array.Copy(h21,0,h21l2,0,32);

        //截取h2的后l2長度的字節(jié)

        Array.Copy(h21,32,h21l1,0,32);

        byte[]F21=myhash.TanGetDigestByteArray(h21l2);

        //恢復(fù)消息m

        byte[]m1=HexXorByte(h21l1,F21);

        //消息恢復(fù)比較

        byte[]left=myhash.TanGetDigestByteArray(m1);

        byte[]right=h21l2;

        if (ByteEquals(left,right)){

        Console.WriteLine("消息恢復(fù)成功,簽名驗證通過!");

        }

        else{

        Console.WriteLine("消息恢復(fù)失敗,簽名驗證失敗!");

        }

        Console.WriteLine("原消息:{0}",msg);

        Console.WriteLine("恢復(fù)的消息:{0}",

        Encoding.UTF8.GetString(m1));

        圖3 方案實現(xiàn)結(jié)果

        4.2 效率分析

        表1為本文方案與其他基于身份的簽名方案的性能比較,其中:M表示標量乘運算;P表示雙線性對運算;E表示指數(shù)運算;|G1|是G1中的元素長度;|q|是Zq中元素的長度;n是一個常數(shù);“√”表示具有可恢復(fù)消息功能;“×”表示不具有可恢復(fù)消息功能。

        表1 本文方案與現(xiàn)有方案性能比較

        由表1可得,與其他方案相比,本文方案簽名長度是最短的,與文獻[14]方案接近。在計算量方面,文獻[14]使用了3次雙線性運算,文獻[18]使用了2次雙線性運算,文獻[19]使用了3次雙線性運算,文獻[20]使用了1次雙線性運算,本文方案沒有使用雙線性運算,由于雙線性對的計算消耗是最大的,因此本文方案相比其他簽名方案計算量較小,所需的傳輸帶寬更低、性能更優(yōu)、運算效率更高。

        5 結(jié) 語

        針對鐵路物流實時監(jiān)控系統(tǒng)存在的信息安全問題,本文結(jié)合基于身份密碼體制和消息恢復(fù)功能,提出基于身份具有消息恢復(fù)功能的簽名方案。并以此方案為基礎(chǔ),設(shè)計一種鐵路物流實時監(jiān)控系統(tǒng)中具有消息恢復(fù)的身份認證方案。使用C#語言版輕量級密碼包對方案進行實驗仿真,與幾種基于身份的簽名方案進行了效率比較。該方案可以減少通信量、降低通信代價,能很好地用于鐵路物流實時監(jiān)控系統(tǒng)中。

        猜你喜歡
        物流系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        本刊重點關(guān)注的物流展會
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        “智”造更長物流生態(tài)鏈
        汽車觀察(2018年12期)2018-12-26 01:05:44
        企業(yè)該怎么選擇物流
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        基于低碳物流的公路運輸優(yōu)化
        色诱视频在线观看| 成人无码免费一区二区三区| 欧洲成人午夜精品无码区久久| 韩国19禁主播深夜福利视频| 国产精品天堂avav在线| 亚洲免费毛片网| 免费大学生国产在线观看p| 亚洲素人av在线观看| 日日高潮夜夜爽高清视频| 在线观看一级黄片天堂| 久久不见久久见免费影院国语| 国产福利视频一区二区| 日本少妇被黑人xxxxx| 国产在线无码制服丝袜无码| 国产免费又色又爽又黄软件| 国产一毛片| 中国精品久久久久国产| 亚洲国产大胸一区二区三区| 草青青视频手机免费观看| 中文字幕色资源在线视频| 最新在线观看免费的a站国产| 成熟人妻换xxxx| 久久成人影院精品777| 午夜福利院电影| 好爽…又高潮了毛片免费看 | 日本a级免费大片网站| 亚洲自偷精品视频自拍| 亚洲无线一二三四区手机| 国产高清在线精品一区二区三区| 亚洲男同志网站| 欧美亚洲综合激情在线| 亚洲av激情久久精品人| 热门精品一区二区三区| 日本九州不卡久久精品一区| 国产精品久久久久久av| 99久久国产综合精品五月天| 99爱这里只有精品| 国产精品无码无片在线观看3D | 日本一区二区三区视频免费观看| 职场出轨的人妻中文字幕| 99国产精品自在自在久久|