• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于SM2智能安全芯片的高檔酒防偽系統(tǒng)設(shè)計(jì)

      2019-02-25 13:21:50左黎明陳祚松湯鵬志易傳佳
      關(guān)鍵詞:防偽公鑰瓶蓋

      左黎明,陳祚松,湯鵬志,易傳佳

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

      0 引 言

      隨著國民經(jīng)濟(jì)的高速發(fā)展和人民生活水平的不斷提高,人們對于商品的檔次有了更高的追求。但由于受到暴利的驅(qū)使,高檔商品的假冒偽劣行為屢禁不止。其中高檔酒類的仿冒行為極其嚴(yán)重。1998年的“山西朔州假酒案”,造成27人死亡,200多人住院治療[1]。2016年6月,湖南常德警方破獲涉案金額逾兩千萬元的特大假酒案。2017年6月,南陽市警方偵破的特大制售假酒案,涉案總價值2.8億元。這些假冒偽劣產(chǎn)品不僅嚴(yán)重影響著國家的經(jīng)濟(jì)發(fā)展,還危及著合法企業(yè)和消費(fèi)者的切身利益[2]。這也不斷地推動著防偽技術(shù)的發(fā)展。

      目前大多數(shù)防偽技術(shù)主要分為結(jié)構(gòu)防偽和防偽標(biāo)志認(rèn)證兩種形式。其中結(jié)構(gòu)防偽如1996年付正華[3]提出的防偽瓶蓋注射模的設(shè)計(jì),公開了一種結(jié)構(gòu)型的防偽技術(shù),但因?yàn)榻Y(jié)構(gòu)無法還原的特性使得瓶中酒沒有及時飲用而導(dǎo)致酒精揮發(fā)后影響酒的品質(zhì)。通過防偽標(biāo)志進(jìn)行認(rèn)證防偽的如1993年Tirkel等[4]提出的數(shù)字水印技術(shù)[5-7]。1994年,日本Denso-Wave公司發(fā)明了二維條碼技術(shù)[8-9]。2010年,法國Prooftag公司推出氣泡防偽技術(shù)[10]以及一些其他的印刷防偽技術(shù)[11-12]。但由于這些信息都是靜態(tài)的,每次防偽識別時都是相同的內(nèi)容,所以很難做到完全防止被惡意復(fù)制。而隨著高級印刷技術(shù)的普及,以及電子信息技術(shù)的進(jìn)步,這些靜態(tài)的防偽標(biāo)志的仿造變得非常容易。

      針對這些問題,文中提出了一種基于SM2智能安全芯片的高檔酒防偽系統(tǒng),以智能安全芯片為核心,通過智能安全芯片與防偽認(rèn)證服務(wù)系統(tǒng)之間的雙向數(shù)字簽名認(rèn)證,并且每次認(rèn)證后都更新產(chǎn)品防偽信息保證防偽信息的新鮮性,以實(shí)現(xiàn)產(chǎn)品防偽的安全性、可靠性和易用性。

      1 SM2公鑰密碼算法

      1.1 SM2算法簡介

      SM2橢圓曲線公鑰密碼算法(elliptic curve cryptography,ECC)是國內(nèi)于2010年12月公開的商用密碼算法標(biāo)準(zhǔn)[13-14]。ECC的求解是基于求解橢圓曲線離散對數(shù)問題(elliptic curve discrete logarithm problem,ECDLP),而將橢圓曲線應(yīng)用于公鑰密碼系統(tǒng)的思想是由Koblitz[15]和Miller[16]各自獨(dú)立提出的。ECDLP與大數(shù)分解和有限域上離散對數(shù)問題相比求解難度大得多。

      因此,ECC在密鑰規(guī)模小得多的情況下能夠達(dá)到其他公鑰密碼算法相同的安全程度。正是由于ECC的密鑰規(guī)模小、安全程度高的優(yōu)勢,使其在國內(nèi)商用密碼行業(yè)得到了大規(guī)模的應(yīng)用和推廣。

      1.2 SM2簽名算法

      1.2.1 系統(tǒng)參數(shù)

      元素?cái)?shù)目為q的有限域Fq;橢圓曲線E(Fq),屬于方程E(Fq)的兩個元素a和b(a,b∈Fq);E(Fq)上的無窮遠(yuǎn)點(diǎn)或零點(diǎn)O;E(Fq)上階為n的基點(diǎn)G=(xG,yG)(G!= 且xG,yG∈Fq)。

      1.2.2 用戶公/私鑰的建立

      用戶A隨機(jī)選取整數(shù)dA(1≤sA≤n-1),并計(jì)算pA=dAG=(xA,yA)。其中dA作為用戶私鑰,pA作為用戶公鑰對外公開。

      1.2.3 簽名生成

      對于消息M的簽名生成過程如下:

      (1)使用雜湊函數(shù)對待簽名消息M進(jìn)行處理得到e;

      (2)選擇隨機(jī)數(shù)k∈[1,n-1],然后計(jì)算橢圓曲線點(diǎn)(x1,y1)=kG;

      (3)計(jì)算r=(e+x1)modn,若r=0或r+k=n則返回第二步;

      (4)計(jì)算s=((1+dA)-1(k-r.dA))modn,若s=0則返回第二步;

      (5)將(r,s)作為消息M的數(shù)字簽名輸出。

      1.2.4 簽名驗(yàn)證

      對于簽名信息(r,s)進(jìn)行以下驗(yàn)證:

      (1)驗(yàn)證r∈[1,n-1]和s∈[1,n-1]是否成立,若不成立則驗(yàn)證不過;

      (2)使用雜湊函數(shù)對待簽名消息M進(jìn)行處理得到e';

      (3)計(jì)算t=(r+s)modn,若t=0,則驗(yàn)證不通過;

      2 系統(tǒng)架構(gòu)設(shè)計(jì)

      如圖1所示,整個防偽系統(tǒng)由三部分組成:內(nèi)嵌SM2智能安全芯片的瓶蓋體、配套驗(yàn)證器、防偽認(rèn)證服務(wù)系統(tǒng)。首先使用配套驗(yàn)證器讀取瓶蓋體上內(nèi)嵌的SM2智能安全芯片中的產(chǎn)品身份標(biāo)識碼的簽名信息及其他基本信息;然后通過配套驗(yàn)證器間接發(fā)送到防偽認(rèn)證服務(wù)系統(tǒng)進(jìn)行簽名驗(yàn)證,簽名驗(yàn)證通過后,防偽認(rèn)證服務(wù)系統(tǒng)產(chǎn)生新的產(chǎn)品身份標(biāo)識碼和該產(chǎn)品身份標(biāo)識碼的簽名信息,并通過配套驗(yàn)證器間接發(fā)送到瓶蓋上的SM2智能安全芯片上進(jìn)行簽名驗(yàn)證。通過雙向簽名信息的驗(yàn)證過程來達(dá)到產(chǎn)品防偽的效果。每一次防偽驗(yàn)證后,SM2智能安全芯片和防偽認(rèn)證服務(wù)系統(tǒng)都會更新防偽認(rèn)證信息以保證防偽信息的新鮮性。

      圖1 防偽系統(tǒng)架構(gòu)

      2.1 瓶蓋結(jié)構(gòu)設(shè)計(jì)

      防偽瓶蓋的結(jié)構(gòu)如圖2所示。SM2智能安全芯片內(nèi)嵌在瓶蓋頂部中心,用于射頻感應(yīng)供電的線圈兩端連接芯片的同時以芯片為中心向外繞圈,并且與瓶蓋的下端連通。在瓶蓋開啟時瓶蓋體與下端分離,線圈也隨之?dāng)嚅_,智能芯片受損從而無法進(jìn)行防偽認(rèn)證。這種設(shè)計(jì)的目的是防止不法分子回收瓶蓋進(jìn)行產(chǎn)品仿冒行為,但在輕微結(jié)構(gòu)損壞的情況下仍然保證了瓶蓋原有的密封產(chǎn)品的功能。

      圖2 防偽瓶蓋結(jié)構(gòu)

      該方案中的SM2智能安全芯片采用深圳華視微電子有限公司設(shè)計(jì)的型號為CVF1040D的安全芯片。其擁有唯一的ID,可重復(fù)擦寫10萬次,最大可達(dá)8 MB程序存儲器映射和8 MB數(shù)據(jù)存儲器映射,并且含了SM2協(xié)處理器,支持ISO/IEC 7816和ISO/IEC 14443接口。

      2.2 配套驗(yàn)證器

      配套驗(yàn)證器主要分為兩類:一類是由顯示屏模塊、用于網(wǎng)絡(luò)連接的無線模塊和GPRS模塊組成的配套讀卡器;另一類是含有NFC功能并安裝了配套APP的移動終端[17-18]。

      2.3 防偽認(rèn)證服務(wù)系統(tǒng)

      防偽認(rèn)證服務(wù)系統(tǒng)由數(shù)據(jù)中心、簽名服務(wù)模塊和產(chǎn)品管理模塊組成,并通過防火墻保證對外數(shù)據(jù)交互的安全。數(shù)據(jù)中心存儲了產(chǎn)品防偽認(rèn)證所需的關(guān)鍵信息(如表1所示)和其他產(chǎn)品信息,為產(chǎn)品防偽認(rèn)證和產(chǎn)品管理提供了數(shù)據(jù)支持。

      簽名服務(wù)模塊包括了SM2系列算法的插件,提供了密鑰對生成、簽名信息生成、簽名信息驗(yàn)證等功能,并為其他應(yīng)用提供了遠(yuǎn)程接口調(diào)用服務(wù)。

      產(chǎn)品管理模塊對外提供產(chǎn)品信息查詢服務(wù),對內(nèi)提供產(chǎn)品信息新增、修改、刪除、出入庫管理以及各類報(bào)表統(tǒng)計(jì)服務(wù)。

      3 防偽認(rèn)證流程

      防偽認(rèn)證流程主要分為兩個階段:SM2智能安全芯片的防偽信息初始化階段;產(chǎn)品流通和消費(fèi)者購買時的產(chǎn)品防偽認(rèn)證階段。

      3.1 防偽認(rèn)證協(xié)議

      在防偽認(rèn)證協(xié)議中C(Client)為待防偽認(rèn)證產(chǎn)品,S(Server)為防偽認(rèn)證服務(wù)器,V(Validator)為配套驗(yàn)證器,該協(xié)議的具體過程如下:

      (1)V→C:{APDUCommand};

      (2)C→V:{SM2_Sign(SystemPKey||CardID),CardID,SystemID,SM2_Sign(CardID)};

      (3)V→S:{SM2_Sign(SystemPKey||CardID),CardID,SystemID,SM2_Sign(CardCode)};

      (4)S→V:{SM2_Sign(NewCardCode),NewCardCode};

      (5)V→C:{APDUCommand,SM2_Sign(NewCardCode),NewCardCode};

      (6)C→V:{Result};

      3.2 SM2智能安全芯片初始化階段

      當(dāng)一個產(chǎn)品生產(chǎn)完成時,生產(chǎn)廠商在防偽認(rèn)證服務(wù)系統(tǒng)中為該產(chǎn)品生成相應(yīng)的產(chǎn)品防偽認(rèn)證關(guān)鍵信息及其他基本信息,其中產(chǎn)品唯一ID、產(chǎn)品公鑰、產(chǎn)品私鑰、產(chǎn)品身份標(biāo)識碼存儲到數(shù)據(jù)中心,而系統(tǒng)唯一ID、產(chǎn)品唯一ID、產(chǎn)品公鑰、產(chǎn)品簽名信息、系統(tǒng)簽名信息則通過配套工具寫入到智能安全芯片中。

      3.3 產(chǎn)品防偽認(rèn)證階段

      如圖3所示,在產(chǎn)品流通或者消費(fèi)者購買后需要驗(yàn)證產(chǎn)品的真?zhèn)螘r可以通過以下步驟進(jìn)行防偽認(rèn)證:

      步驟1:使用配套驗(yàn)證器靠近瓶蓋體向SM2智能安全芯片發(fā)送APDU指令,SM2智能安全芯片響應(yīng)指令,將基本信息返回給配套驗(yàn)證器,然后配套驗(yàn)證器將該基本信息發(fā)送到防偽認(rèn)證服務(wù)系統(tǒng)的簽名服務(wù)模塊。

      步驟2:簽名服務(wù)模塊接收到產(chǎn)品基本信息后,根據(jù)系統(tǒng)唯一ID從數(shù)據(jù)中心獲得系統(tǒng)公鑰,并使用系統(tǒng)公鑰、產(chǎn)品唯一ID、系統(tǒng)公鑰驗(yàn)證系統(tǒng)簽名信息,驗(yàn)證通過則進(jìn)行下一步驗(yàn)證,否則返回驗(yàn)證失敗并結(jié)束防偽認(rèn)證;根據(jù)產(chǎn)品唯一ID從數(shù)據(jù)中心查找產(chǎn)品身份標(biāo)識碼、產(chǎn)品公鑰和產(chǎn)品私鑰,使用產(chǎn)品公鑰、產(chǎn)品身份標(biāo)識碼驗(yàn)證產(chǎn)品簽名信息,驗(yàn)證通過則簽名服務(wù)模塊產(chǎn)生一個新的產(chǎn)品身份標(biāo)識碼并使用產(chǎn)品私鑰對新的產(chǎn)品身份標(biāo)識碼簽名后得到新的產(chǎn)品簽名信息,將新的產(chǎn)品身份標(biāo)識碼和新的產(chǎn)品簽名信息返回,同時將新的產(chǎn)品身份標(biāo)識碼更新到數(shù)據(jù)中心,驗(yàn)證失敗則直接返回驗(yàn)證失敗并結(jié)束防偽認(rèn)證。

      步驟3:配套驗(yàn)證器接收到防偽認(rèn)證服務(wù)系統(tǒng)的簽名服務(wù)模塊返回認(rèn)證信息后,如果驗(yàn)證失敗則結(jié)果直接顯示給用戶并結(jié)束認(rèn)證,如果接收到的是新的產(chǎn)品身份標(biāo)識碼和新的產(chǎn)品簽名信息則結(jié)合相應(yīng)的APDU指令發(fā)送給SM2智能安全芯片。

      步驟4:SM2智能安全芯片接收到新的產(chǎn)品身份標(biāo)識碼和新的產(chǎn)品簽名信息后使用產(chǎn)品公鑰、新的產(chǎn)品身份標(biāo)識碼、新的產(chǎn)品簽名信息進(jìn)行簽名驗(yàn)證,并將驗(yàn)證結(jié)果返回到配套驗(yàn)證器中同時將新的產(chǎn)品簽名信息更新到SM2智能安全芯片中。

      步驟5:配套驗(yàn)證器根據(jù)SM2智能安全芯片返回的驗(yàn)證結(jié)果顯示防偽認(rèn)證結(jié)果。

      4 實(shí)驗(yàn)仿真與效率分析

      4.1 智能安全芯片初始化

      根據(jù)系統(tǒng)設(shè)計(jì),需要對產(chǎn)品內(nèi)嵌的智能安全芯片進(jìn)行初始化,這個過程中將產(chǎn)品基本信息寫入到智能安全芯片中,其部分核心代碼如下:

      public staticSmartSecurityChip CardInit()

      {

      SmartSecurityChip ssc=new SmartSecurityChip();//生成芯片對象

      ssc.SystemID=SystemID;//將系統(tǒng)唯一ID初始化

      ssc.CardID=GetCardID();//讀取產(chǎn)品唯一ID

      ssc.CardCode=GenerateCardCode();//生成產(chǎn)品身份標(biāo)識碼

      SM2.TanGenSM2KeyPair(out ssc.CardPublicKey, out CardPrivateKey);//生成公鑰/私鑰

      SM2.TanSM2Sign(ssc.CardCode, out ssc.CardSign);//生成產(chǎn)品身簽名信息

      SM2.TanSM2Sign(ssc.CardID+ssc.CardPublicKey,SystemSKey,out ssc.InfoSign);//生成系統(tǒng)簽名信息

      WirteToCard(ssc);//基本信息寫入智能安全芯片中

      returnssc;

      }

      圖4所示為智能安全芯片初始化過程生成的基本信息,同時將基本信息寫入到智能安全芯片中。

      圖4 智能安全芯片初始化產(chǎn)生的基本信息

      4.2 產(chǎn)品防偽認(rèn)證模擬

      在產(chǎn)品防偽認(rèn)證時,服務(wù)器接收到產(chǎn)品基本信息后分別對InfoSign和CardSign進(jìn)行驗(yàn)證,然后生成NewCardCode、NewCardSign,其部分核心代碼如下:

      //服務(wù)端根據(jù)System、CardID、CardPublicKey驗(yàn)證InfoSign

      SCServiceSystem.VerifyInfoSign(ssc.CardID+ssc.CardPublicKey,ssc.InfoSign,SCServiceSystem.SystemPKey);

      //服務(wù)端根據(jù)CardPublicKey、CardCode驗(yàn)證CardSign

      SCServiceSystem.VerifyCardSign (ssc.CardCode,ssc.CardSign, ssc.CardPublicKey);

      stringNewCardCode=string.Empty;

      stringNewCardSign=string.Empty;

      //服務(wù)端生成NewCardCode和NewCardSign;

      SCServiceSystem.GenNewCardCodeAndSign(out NewCardCode, out NewCardSign);

      圖5所示為產(chǎn)品認(rèn)證模擬中服務(wù)端根據(jù)產(chǎn)品發(fā)送的認(rèn)證信息進(jìn)行InfoSign和CardSign驗(yàn)證的具體過程和內(nèi)容,以及生成的NewCardCode和NewCardSign。

      圖5 防偽認(rèn)證階段各認(rèn)證步驟結(jié)果

      防偽認(rèn)證服務(wù)器端對產(chǎn)品基本信息認(rèn)證通過后,通過配套驗(yàn)證器間接發(fā)送NewCardCode和NewCardSign至產(chǎn)品內(nèi)嵌的智能安全芯片中,智能安全芯片根據(jù)CardPublicKey和NewCardCode驗(yàn)證NewCardSign,其部分核心代碼如下:

      //根據(jù)newCardCode、CardPublicKey驗(yàn)證newCardSign

      publicbool Verify(string newCardCode,string newCardSign)

      {

      bool result=SM2.TanSM2Verify (newCardCode,this.CardPublicKey,newCardSign);

      ShowDetails(newCardCode,newCardSign,result);

      return result;

      }

      圖6所示為智能安全芯片根據(jù)CardPublicKey和NewCardCode驗(yàn)證NewCardSign的具體過程及結(jié)果。

      圖6 智能安全芯片簽名認(rèn)證信息及結(jié)果

      4.3 效率分析

      經(jīng)過20組防偽認(rèn)證仿真后,得到智能安全芯片的初始化平均耗時為0.239 518 8 s,防偽認(rèn)證服務(wù)系統(tǒng)的認(rèn)證平均耗時為0.339 992 9 s,智能安全芯片的簽名認(rèn)證平均耗時為0.142 21 s。智能安全芯片的0.239 518 8 s的產(chǎn)品初始化時間相較于整個產(chǎn)品生產(chǎn)流程而言是非??焖俚?,而模擬的整個產(chǎn)品防偽認(rèn)證過程時間合計(jì)為0.482 202 9 s,對于消費(fèi)者和經(jīng)銷商而言產(chǎn)品的防偽認(rèn)證過程可以實(shí)現(xiàn)“所見即所得”的效果。

      5 結(jié)束語

      基于SM2智能安全芯片的高檔酒防偽系統(tǒng)是一個由防偽瓶蓋、配套驗(yàn)證器、防偽認(rèn)證服務(wù)系統(tǒng)組成的防偽解決方案。采用SM2智能安全芯片內(nèi)嵌瓶蓋頂部,線圈連通開蓋結(jié)構(gòu)的設(shè)計(jì),在瓶蓋開啟時的結(jié)構(gòu)輕微損壞,既保證了瓶蓋原有的封口功能又使智能安全芯片因結(jié)構(gòu)損壞而失去防偽功能,從而杜絕了不法商家回收瓶蓋來制造偽冒產(chǎn)品的行為。以SM2系列算法為防偽認(rèn)證核心并通過防偽產(chǎn)品與防偽認(rèn)證服務(wù)系統(tǒng)之間的雙向身份認(rèn)證保證了防偽認(rèn)證的安全性和可靠性。并且每次防偽驗(yàn)證后SM2智能安全芯片和防偽認(rèn)證服務(wù)系統(tǒng)都會更新防偽認(rèn)證信息,充分保證了認(rèn)證信息的新鮮性。通過仿真模擬證明了防偽認(rèn)證在高安全性的前提下保證了防偽驗(yàn)證的高效性。

      猜你喜歡
      防偽公鑰瓶蓋
      瓶蓋配對
      幼兒100(2022年23期)2022-12-27 04:48:55
      設(shè)計(jì)巧妙的瓶蓋
      INTEGRITYTM ECO100再生縫紉線引入防偽技術(shù)
      你知道古代圣旨和紙鈔是怎樣防偽的嗎
      一種基于混沌的公鑰加密方案
      開瓶蓋
      快樂語文(2017年27期)2017-11-15 03:46:14
      民國時期紙鈔上的防偽暗記
      HES:一種更小公鑰的同態(tài)加密算法
      SM2橢圓曲線公鑰密碼算法綜述
      一種具有防偽功能的卷煙紙
      天津造紙(2015年2期)2015-01-04 08:18:15
      金坛市| 铜山县| 上栗县| 阿巴嘎旗| 塔城市| 公安县| 永平县| 台州市| 花莲县| 西昌市| 阿拉善右旗| 淄博市| 石阡县| 连南| 张家口市| 房山区| 安远县| 三穗县| 三门县| 怀安县| 江津市| 民和| 铜山县| 崇文区| 溧水县| 青铜峡市| 三明市| 静宁县| 定襄县| 枣庄市| 弥渡县| 饶平县| 北海市| 连州市| 东方市| 马尔康县| 巴青县| 南部县| 江川县| 错那县| 辉县市|