歡迎您訪問鄭州興邦電子股份有限公司官方網站!
    阿里巴巴誠信通企業
    全國咨詢熱線:40000-63966
    興邦電子,中國水控機第一品牌

    聯系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

    工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

    IC卡的安全性技術及其數字簽名技術分析

    文章出處:http://www.xujuanpiju.com 作者:楊風暴 劉 星   人氣: 發表時間:2011年10月08日

    [文章內容簡介]:IC卡技術是金卡工程的主導技術,同磁卡等其它卡片相比,其具有較高的安全性。對IC卡的安全性技術進行了分析,著重探討了IC 卡安全性技術的主要研究方向之一———數字簽名技術。

        IC 卡俗稱智能卡,是將具有微處理器(CPU) 或大容量存儲器的集成電路( Integrated Circuit s) 芯片嵌裝于塑料等基片上而制成的。同磁卡等其它卡相比具有安全性高、大容量、抗干擾、讀寫方便等優點。其中安全性是IC 卡生存的基礎,也是它作為信用卡、信息卡、現金卡等得到廣泛應用的主要原因之一。本文從硬、軟件兩個角度對IC 卡的安全性技術進行分析,并且對其中的數字簽名技術進行了著重探討。

        1  IC 卡的安全性技術 

        IC 卡的安全性是其生存和發展的基礎,也是IC卡的重要特征。IC 卡的安全性必須是保證其所存儲信息的安全,否則IC 卡將無法廣泛應用。

        IC 卡的安全性技術就是針對信息的安全性而采取的措施。通常IC 卡的安全性技術可以分為硬件安全性技術和軟件安全性技術。信息的安全性一般從三個方面考慮:機密性,防止未授權的獲取;完整性,防止未授權的更改、增刪;可獲取性:防止未授權的截流。采用IC 卡安全性技術應遵循兩個原則:

        ①使最終應用的IC 卡具有較高的性能價格比。

        ②偽造和非法使用IC 卡的費用遠大于從中獲取的利益。

        1. 1  IC卡的硬件安全性技術 

        IC 卡的硬件安全性技術又可分為IC 卡用芯片的安全性技術和IC 卡卡片制造的安全性技術。
     
        1. 1. 1  IC 卡用芯片的安全性技術 
        
        IC卡用芯片是IC卡的核心部分,其安全性是IC卡的安全性基礎。在芯片的設計階段使用完善的保護措施非常重要。這主要是防止對IC 卡可能的物理攻擊(探測) 。一般典型的物理攻擊有通過掃描電子顯微鏡對存儲器進行分析讀寫、通過測試探頭讀取存儲器內容、通過廠家測試點直接對存儲器或處理器操作等?;谝陨戏治? IC 卡用芯片的安全性要從物理上防止非法讀寫,使其遭受到的攻擊可能性降至最小。采取的方法一般有:

        ①使測試功能不再被激活。測試功能是芯片制造商提供的對IC 卡用芯片進行全面檢測的功能。這一功能對IC 卡具有較大操作性,因而利用燒斷熔絲,可使測試功能不再被激活。
     
        ②存儲器的邏輯保護。在IC 卡用芯片內部設計時,可以設保護存儲器、安全存儲器,使主存儲器的內容受到保護。如西門子公司生產的IC 卡用芯片SL E4442 ,其存儲器如圖1 所示。

        通過在保護存儲器中寫入與主存儲器中前32 位相同的位,使這32 個字節被不可逆地保護起來。安全存儲器具有4 個字節。前3 個字節為參考數據和最后一個字節是錯誤計數器,只有驗證數據與參考數據相同,方可對主存儲器讀寫,否則3次驗證不成功,錯誤計數器將阻止以后的任何讀寫。其它方法還有協處理器提供加密運算、總線和存儲器設置物理保護層、高低電壓檢測、低時鐘工作頻率檢測等。
     

    SL E4442 芯片的存儲器
    圖1  SL E4442 芯片的存儲器

        1. 1. 2  IC 卡卡片制造的安全性技術 

        IC 卡的制造上也有很多安全保護方法,例如,安全背景結構:與銀行紙幣和發票上的回紋相似;微線條技術:可讀不可復制,激光雕刻簽名;熒光安全圖象:激光圖片,圖象制作難,在紫外線下可見;激光雕刻可觸摸向量字符;完全嵌入卡內,偽造圖片將永久毀壞卡片等等。
     
        1. 2  IC卡軟件安全性技術 

        除了上面的IC 卡硬件保護措施,在IC 卡的軟件方面也應提供相應的安全措施。通常有兩方面的軟件保護措施: IC 卡和終端設備通信的加密解密技術、IC卡和終端設備通信信息的認證技術。 

        1. 2. 1  IC 卡與終端設備通信的加密解密技術

        在接口設備( IFD) 和IC 卡( ICC) 之間的信息交換是命令~響應的順序結構。多數情況下,接口設備或應用終端如PC 機、工作站、服務器產生命令或執行順序, IC 卡響應不同的命令,如此在IFD 和ICC 之間傳輸信息的安全性必須得到保障,防止截獲。IC 卡操作系統(對含CPU 的芯片而言) 對此采用加密和隱含傳輸的方法,將待送的命令、響應序列進行加密處理之后再傳輸。適宜IC 卡的加密算法一般有DES、FEAL 算法。 

        1. 2. 2  IC 卡與終端設備通信信息的認證技術
     

    第1頁第2頁第3頁

        IC 卡的認證技術與存儲器的分層結構有密切聯系。IC 卡存儲器分4 層:存儲器整體、文件、區、記錄,且每一層理論上均可加鎖,以防止對其內部信息的非法讀寫。一般不設記錄鎖,如圖2 所示。下面分別討論存儲器鎖、文件鎖、區鎖采用的各種安全性技術:個人認證技術、相互認證技術、消息認證技術。 

    IC卡的鎖與存儲器分層結構
    圖2 IC卡的鎖與存儲器分層結構

        ①個人認證技術存儲器鎖對IC 卡上的所有存儲器的安全負責,為了判斷持卡人和接收卡的終端的合法性,需在IC卡的發行階段將持卡者的個人信息裝入卡中,一般使用PIN 個人標識碼。用卡時,從終端機向卡傳送個人信息,IC 卡在其內部進行比較核對,一致即開鎖。

    是IC卡的校驗規程
    圖3  IC卡的校驗規程

        由于PIN 可能被遺忘或被別人竊知,許多個人認證技術被用于IC卡,諸如指紋、筆跡、聲音識別和視網膜掃描等用來代替PIN ,如法國的相片認證系統、日本的指紋認證系統。不同的認證技術所需要的存儲空間不同,如筆跡需10 至20 個字節,指紋需300 至800 個字節。 

        ②相互認證技術 

        文件存于各個應用當中,若要打開文件鎖就應確認IC 卡的通信對象是否應用提供者認可的合法裝置,反之,后者也要確認前者。即通信雙方要進行相互確認對方的認證。相互認證根據一定長度的、不易被破譯的比特序列進行,這種比特序列在線路上傳輸和交換。相互認證的規程見圖4 。首先由IC 卡發送卡的明碼,接著相互交換隨機數(雙方的隨機數不同) ;然后對函數輸入卡的明碼ID 和隨機數以相互持有的認證函數加密,交換結果;最后將自己求出的結果與對方的運算核對,認證函數f 采用加密算法,且無需解密過程。 

    相互認證技術的規程
    圖4  相互認證技術的規程

        ③消息認證技術區鎖有一種就是消息認證的鎖,其概念由圖5 說明。發送端發送消息和由消息求得的認證子,接收端( IC 卡) 根據消息計算認證子并和發送來的認證子核對。函數g 采用加密算法。 

    圖5  消息認證的概念
    圖5  消息認證的概念

         2  數字簽名技術 

    第1頁第2頁第3頁

        2. 1  數字簽名的概念及特性

        從前面的認證技術可以看出,認證技術對于非法讀寫、更改具有重要的防止作用。嚴格講來,已認證后的雙方可以進行通信,但IC 卡不能證明對方是否規定的裝置發送地。比如甲、乙認證后,甲可以對乙讀寫,可是甲并未對乙讀寫,卻有一個非法信號使乙內信息發生變化,而乙這時仍認為是甲的操作。當然問題不僅如此。因而,人們想到了現實生活中的簽名行為,將
    簽名的特點引入安全性技術,從而產生了數字簽名技術。 

        數字簽名是指相當于現實生活中簽名的、不可偽造的、用于證明消息發送端的比特序列。它有三個特性:第三者不能偽造、接受端不能偽造、發送端不能否認本身發送的事實。由此可以看出數字簽名技術的安全性和防偽性是其它安全性技術不可企求的。 

        2. 2  采用公鑰體制的數字簽名技術 

        公鑰體制是由Diffie 和Hellman 于1976 年提出來的允許公開加密密鑰的一種體制。發送端利用公鑰對消息加密,接受端利用私鑰進行解密。這里的公鑰是指公開的加密解密方法;私鑰是指保密的不公開的加密解密方法。數字簽名技術與公鑰體制相反,利用私鑰簽名,利用公鑰將簽名信息還原。過程如下:

        發方A 用私鑰Ksa 對信息M 進行簽名:
        N = Ksa ( M )
        收方B 利用公鑰Kg 將簽名信息還原
        M = Kg ( N )
        A 用私鑰加密后形成的簽名,任何其它人都無法產生或篡改,且發方也無法否認。若第三者進行更改,因無Ksa 而無法為篡改的信息簽名,這樣篡改后的信息便沒有了法律效力。 

        這里有一個問題,簽名信息Ksa ( M ) 在傳輸中無密可保,任何人可用公鑰Kg 對其還原。為此可以對Ksa ( M ) 進行加密后傳輸。這樣,加密和簽名組合來就更安全了,見圖6 。 

     采用公鑰體制的數字簽名
    圖6  采用公鑰體制的數字簽名

        其中Ksa :用戶A 的私鑰
        Kga :用戶A 的公鑰
        Ksb :用戶B 的私鑰
        Kgb :用戶B 的公鑰
        發方A 用Ksa 對信息簽名得
      N’= Ksa ( M )
        發方A 用B 的公鑰Kgb 對簽名N ’加密
      N = Kgb ( N ’)
        收方B 用Ksb 對加密后的簽名解密
      N’= Ksb ( N )
        收方B 用A 的公鑰Kga 將簽名信息還原
      M = Kga ( N’) 

        上面的數字簽名過程仍有缺陷:如當B 方收到A方傳送的指令報文并用Ksb 解密得Ksa ( M ) ,再用C方的公鑰加密得Kgc ( Ksa ( M ) ) 發送給C 方,這樣C誤認為是A 給它下了指令,即B 冒充了A 將指令發 送給C 。若將Ksa 與Kgb , Ksb 與Kga 的順序各自互換便可彌補這個缺陷。 

        3  結束語 

        IC 卡的安全性技術對用戶來講主要是軟件安全性技術,軟件安全性技術的核心是信息的加密解密技術。研究IC 卡的安全性主要從IC 卡本身與其終端的相互認證、IC 卡與終端通信的加密解密技術、數字簽名技術等三方面進行。由于采用公鑰體制的算法還不多,數字簽名技術受到公鑰算法的影響。

    第1頁第2頁第3頁

    本文關鍵詞:數字簽名,安全性技術,IC卡技術,同磁卡
    回到頂部