<strike id="tpvd9"><dfn id="tpvd9"></dfn></strike>

        <em id="tpvd9"></em>

          <address id="tpvd9"></address>
            <dfn id="tpvd9"><sub id="tpvd9"></sub></dfn>

            <thead id="tpvd9"><noframes id="tpvd9">
            <ruby id="tpvd9"></ruby>

                  <thead id="tpvd9"></thead>
                  歡迎您訪(fǎng)問(wèn)鄭州興邦電子股份有限公司官方網(wǎng)站!
                  阿里巴巴誠信通企業(yè)
                  全國咨詢(xún)熱線(xiàn):40000-63966
                  興邦電子,中國水控機第一品牌

                  聯(lián)系興邦電子

                  全國咨詢(xún)熱線(xiàn):40000-63966

                  售后:0371-55132951/55132952

                  工廠(chǎng):河南省 鄭州市 高新區蓮花街電子電器產(chǎn)業(yè)園

                  一種新的“一卡多用”智能卡模型

                  文章出處:http://psychicreadingswithdeb.com 作者:徐中華,劉玉珍, 張煥國&nbsp;&nbsp; 人氣: 發(fā)表時(shí)間:2011年10月07日

                  [文章內容簡(jiǎn)介]:提出了一種新的“一卡多用” 的智能卡的模型,并提出了適合一卡多用的新的硬件體系結構,著(zhù)重探討了基于這種模型的芯片操作系統的結構以及有關(guān)的安全管理方法。

                      1、問(wèn)題的提出

                      智能卡(Smart Card)又稱(chēng)CPU卡,是一種鑲嵌有單片機芯片的IC卡??ㄉ系膯纹瑱C芯片包含中央處理器CPU、隨機存儲器RAM 、電擦除可編程存儲器EEPROM 或FlashMemory、只讀存儲器ROM和I/O接口。COS (ChipOperating System)為芯片操作系統,它是掩膜在IC卡內單片機ROM中的可執行代碼,是芯片資源的管理者和安全保密的基礎。

                      傳統的COS基本操作方式為:從接口設備接收到一條命令,然后經(jīng)過(guò)加工處理返回應答信息給接口設備。處理過(guò)程如圖1所示。 

                      每個(gè)命令都要經(jīng)過(guò)其中4個(gè)模塊,如果其中任意一個(gè)模塊在處理中發(fā)現錯誤都將返回相應的出錯信息。傳輸管理負責卡和接口設備之間的數據通信,通信使用的協(xié)議一般是1SO7816-3所規定的T=O的異步半雙工字符傳輸協(xié)議豉T=1異步半雙工塊傳輸協(xié)議。數據在傳輸方式上一般有3種不同的類(lèi)型:明文方式、明文校驗方式和密文方式。對于以明文方式進(jìn)行傳輸的數據由傳輸管理器直接送給命令處理模塊。當數據以明文校驗方式或密文方式傳輸時(shí)需要加密運算器對數據進(jìn)行相應的處理。命令解釋器只是對外部輸入的每條命令作語(yǔ)法分析,分析和檢查命令參數是否正確,然后根據命令參數的含義執行相應的功能模塊。如果發(fā)現參數有錯,直接返回出錯的信息。文件管理器控制對文件的操作和訪(fǎng)問(wèn)。在做數據操作前,文件管理器將根據文件的安全屬性來(lái)檢查卡的安全狀態(tài),以確定操作的可行性。文件的安全屬性和文件結構一旦產(chǎn)生便處于文件管理器的控制之下。對文件數據的操作和管理將按如下的規則:對某個(gè)文件做操作之前,必須先選擇該文件;文件系統有三層結構,并且操作系統不支持以路徑的方式選擇文件,所以在選擇某個(gè)文件之前必須先選擇它的上一層文件,不允許跨層選擇??ㄆ想姾笞詣?dòng)選擇主控文件;訪(fǎng)問(wèn)文件中的數據要受文件的安全屬性的控制;對文件的建立受該文件所屬上層文件的安全屬性的控制。

                      綜上所述,對于傳統的卡和COS,由于在卡的生命周期內不能更新卡上的COS,并采用了相應的訪(fǎng)問(wèn)控制措施和加密傳輸方式,從而可以保證卡上數據的安全和完整。智能卡的發(fā)展趨勢之一是“一卡多用” ,即在一張智能卡上集成多個(gè)應用。這不僅可以有效地降低單個(gè)應用的使用成本,而且也便于用戶(hù)的攜帶。對單應用智能卡來(lái)說(shuō),由于應用的提供者通常就是卡的發(fā)行者,因此卡上的數據安全通常就由卡的發(fā)行者負責。支持“一卡多用” 的智能卡應允許用戶(hù)下載其特定的應用程序,允許用戶(hù)擴充或修改部分COS命令。每一應用只能訪(fǎng)問(wèn)其自己的數據和程序,而不能訪(fǎng)問(wèn)其它應用的數據或程序。由于一張智能卡同時(shí)存在多個(gè)應用,應用可能由于本身的缺陷或出于惡意攻擊的目的,訪(fǎng)問(wèn)其他應用的數據或程序。數據安全性無(wú)法只由卡片發(fā)行商、應用的提供商或者用戶(hù)來(lái)單獨保證。因此如何保證卡上的數據安全是支持”一卡多用”智能卡系統應解決的核心問(wèn)題。

                      COS中與安全最相關(guān)的部分就是文件的管理,也就是存儲器的管理(包括RAM、ROM、EEPROM和Flashmemory等)。對于傳統的COS而言,COS中的命令可以對所有的存儲空間進(jìn)行操作, 由于COS不可以更新,所有對存儲器的操作都要通過(guò)相應的COS命令來(lái)進(jìn)行,所以存儲器都處于COS的控制之下,而在COS命令中采用了相應的控制方法就可以保證存儲器上的數據安全。利用有關(guān)的指令就可以讀取所有的存儲器的數據和寫(xiě)所有能寫(xiě)的存儲區(除ROM外)。在“一卡多用”的系統中,顯然,可以利用添加新的應用的方法來(lái)對系統進(jìn)行攻擊(讀出所有數據進(jìn)行分析、改寫(xiě)一些系統關(guān)鍵數據等),這些攻擊方法可以繞過(guò)COS的文件控制模塊直接進(jìn)行,使得文件控制模塊形同虛設。同時(shí),添加的應用如果存在缺陷也可能會(huì )存在破壞系統的問(wèn)題。因此,如何實(shí)施有效地存儲管理來(lái)防止這類(lèi)問(wèn)題的發(fā)生就成為系統安全的關(guān)鍵問(wèn)題。

                      特定用戶(hù)下載的程序可以對其他用戶(hù)的程序和數據進(jìn)行訪(fǎng)問(wèn)?,F有智能卡硬件設計不能對多個(gè)用戶(hù)區進(jìn)行隔離保護,即限制特定用戶(hù)命令的訪(fǎng)問(wèn)范圍。本文提出了一種一卡多用智能卡的安全模型,它能支持一卡多用的安全使用,允許多個(gè)應用在智能卡中下載其特殊命令,并實(shí)現多個(gè)應用的隔離。每一應用只能訪(fǎng)問(wèn)其自身的數據或用戶(hù)命令,不能訪(fǎng)問(wèn)其他應用的數據或命令。

                      2 、“一卡多用”智能卡的硬件模型

                      在Intel 8086/8088系統中,由于硬件的限制,系統程序和用戶(hù)程序同屬于一個(gè)安全級別(即系統程序和用戶(hù)程序在執行上沒(méi)有任何區別,例如DOS系統),因此用戶(hù)特定應用程序的執行可能破壞系統從而導致整個(gè)系統崩潰或者存取其它用戶(hù)的數據,顯然這種模型是非常不安全的,而現在的智能卡系統幾乎都是基于這種模型的,利用現有的智能卡來(lái)實(shí)現“一卡多用” 就難以保證整個(gè)系統的安全。借鑒Intel80386中利用硬件建立4個(gè)特權級來(lái)保證系統程序和用戶(hù)程序分離以實(shí)現多任務(wù)及任務(wù)切換和對各個(gè)任務(wù)環(huán)境進(jìn)行保護的方法,可以在智能卡芯片中增添一個(gè)特權級,使得這樣的智能卡芯片具備兩個(gè)特權級,即內核級和用戶(hù)級。為了支持這種功能,在智能卡芯片中必須提供相應的硬件支持(這里假定智能卡中所用的CPU至少是l6位的,因為8位CPU的智能卡功能太弱)。智能卡中需要增加標志位flag來(lái)決定CPU當前處于內核級還是處于用戶(hù)級。需要添加數據地址界限寄存器、應用地址界限寄存器、內核級堆棧和異常寄存器。增加這些寄存器的目的主要是用來(lái)從硬件上對存儲空間的管理提供更強的支持。數據地址界限寄存器用于限定特定應用的數據地址空間(允許存放數據的地址空間范圍)。應用地址界限寄存器用于限定特定應用的程序地址空間(執行程序時(shí)使用的地址空間范圍)。同時(shí),需要把COS中的核心模塊和一般應用程序區分開(kāi)來(lái)。只有當CPU處于內核級時(shí)才能執行COS的核心模塊,而應用程序只能在CPU處于應用級時(shí)執行。當應用程序執行時(shí),若應用程序試圖訪(fǎng)問(wèn)比較寄存器范圍以外的地址空間,則程序被異常終止,并引起中斷。內核級堆棧只能是當CPU處于核心級時(shí)才能被訪(fǎng)問(wèn),異常寄存器用于發(fā)生異常時(shí)保存發(fā)生異常的地址。針對這種安全模型,還需要增加新的指令或擴充諸如JMP、CALL、IRET之類(lèi)的指令執行功能。

                      “一卡多用”智能卡中的控制轉移分為從內核級到用戶(hù)級的控制轉移、從用戶(hù)級到內核級的控制轉移和無(wú)級別變化的控制轉移3種??ㄆ迦牒?,系統首先進(jìn)入內核級,芯片操作系統產(chǎn)生復位應答,并等待接收命令。若接收的命令是用戶(hù)自定義命令,則系統將進(jìn)入用戶(hù)級。為實(shí)現從內核級到用戶(hù)級的控制轉移,系統根據應用索引文件為當前應用設置相應的地址界限寄存器,保存返回地址并將控制切換到相應的應用程序并把flag取反。當應用程序從調用系統功能函數返回時(shí),也需要將控制從內核級轉移到用戶(hù)級,此時(shí)只需將返回地址等出棧并把flag取反即可。若應用程序需要使用COS提供的功能函數時(shí),則需要將控制從用戶(hù)級轉移到內核級。為了實(shí)現這種轉移,系統首先判斷是否符合轉移的條件,如果符合,則把當前應用的執行地址、調用函數使用的參數放入內核級堆棧中,以便應用程序返回時(shí)使用,同時(shí)把flag取反。應用程序執行完成后返回系統時(shí),也需要將控制從用戶(hù)級轉移到內核級,這時(shí)系統就不用保存當前應用所執行的地址,只需將返回地址等出棧并把flag~反即可。任務(wù)中無(wú)特權級變換轉移包括內核中的轉移和應用中的轉移兩種情況,這種控制轉移與當前使用的智能卡中的實(shí)現方式相似,只是在應用中執行轉移指令和存取器存取指令前,系統會(huì )自動(dòng)利用界限寄存器判斷地址是否越界,如果越界則轉入中斷和異常處理。

                      系統給每種可能的中斷賦予一個(gè)中斷號,并在系統初始化時(shí),安排好相應的中斷向量表。當中斷發(fā)生時(shí),系統根據一定的規則決定是否響應該中斷。若需要響應,則先保存好當前的系統狀態(tài),然后根據中斷寄存器中保存的中斷向量號轉移到相應的中斷響應程序執行。當中斷執行完后,返回到斷點(diǎn)繼續執行。當CPU處于用戶(hù)態(tài)和內核態(tài)下,對中斷的響應規則可能是不一樣的,如CPU處在內核態(tài)下可能需要屏蔽某些中斷,而CPU在系統態(tài)下就不需要屏蔽這些中斷了。系統給每個(gè)可能的異常賦予一個(gè)異常號,并在系統初始化時(shí),安排好相應的異常向量表。當異常發(fā)生時(shí),系統根據異常號轉移到相應的異常處理程序進(jìn)行相應的處理。但是處理完后,要進(jìn)行報錯,并中斷當前程序的執行。

                      3 、芯片操作系統COS

                      傳統COS一般由傳輸管理、文件管理、安全管理、命令處理4個(gè)功能模塊組成。傳統COS中所有命令的執行方式是相同的。系統調用命令時(shí),就把執行權限交給了命令程序,此時(shí),命令程序對卡上的所有的硬軟件資源擁有完全的控制權,當應用程序完成了相應的處理后,就返回系統。如上文所述,在新的模型中,所有命令應被分為兩個(gè)部分:核心命令和用戶(hù)命令。核心命令應由以下幾個(gè)部分組成:與密碼運算有關(guān)的命令、與存儲管理有關(guān)的命令、與身份驗證有關(guān)的命令、與通信傳輸有關(guān)的命令、與硬件資源管理有關(guān)的命令等。這些命令一般是獨立于具體的應用的,在執行時(shí)對所有的硬軟件資源擁有完全的控制權。用戶(hù)命令是與具體的應用相聯(lián)系的所有命令的集合,在執行時(shí)只能使用特定的硬軟件資源,否則就會(huì )出錯。

                      卡上電后,COS首先發(fā)送復位應答給終端來(lái)建立雙方的通信并設置好相應的通信參數,接著(zhù)就等待接收終端的命令,當接到終端的命令時(shí),COS將從索引文件中來(lái)查找該命令,并區分它是系統核心命令還是一般的用戶(hù)命令,如果是系統核心命令,COS按要求處理完后就返回給終端相應的結果;如果是一般的用戶(hù)命令,COS將從索引文件中查找出該命令所對應的應用,找到后將系統切換到該應用的環(huán)境下進(jìn)行相應的處理,處理完并返回處理結果后,系統就在切換的COS環(huán)境下等待新的命令;如果COS不能從索引文件中找到該命令,則返回給終端出錯標志。值得注意的是:這些命令應該有一系列的權限驗證方式來(lái)保障系統的安全。

                      為適應上面提出的“一卡多用”智能卡的安全模型,我們將對COS的一般模型進(jìn)行改造。在文件管理中,需要建立應用索引文件,用于存儲所有應用的索引、應用中的命令以及相應的數據地址空間范圍和應用地址空間范圍,并把這個(gè)文件存儲在系統存儲區,因此,只有COS系統才能夠存取該文件。在技術(shù)實(shí)現上,可用圖2描述該文件系統模型的實(shí)現。 

                  圖2文件系統邏輯圖

                      在卡的生命周期內,卡上的硬件資源在一般情況下不會(huì )改變,因此對于硬件資源管理功能和通信傳輸管理功能一般不需要更新。作為系統安全核心的安全控制管理功能則可能隨時(shí)間的推移而需要進(jìn)行部分更新以適應新的應用環(huán)境。如一些傳統加密算法經(jīng)過(guò)一段時(shí)問(wèn)的使用后可能需要替換成新的加密算法,因此需要考慮安全管理模塊的更新問(wèn)題。由于安全管理模塊屬于COS核心模塊部分,安全模塊的更新就涉及到了COS的更新,因此,需要建立相應的機制以適應這樣情況。由于安全控制模塊一般由COS的提供者提供,當需要更新時(shí),應該使用COS提供者提供的特定的更新驗證程序后才能更新。當原有的DES需要升級至AES時(shí),可以通過(guò)把COS提供者提供的相應的AES模塊下載到卡中來(lái)實(shí)現更新,而不必換卡,這樣可提高智能卡的使用壽命。

                      命令分為核心命令和用戶(hù)命令。如果要更新或添加核心命令,則涉及到對COS的更新。如果更新或添加用戶(hù)命令,則涉及到對應用的管理。為了便于COS的更新,我們將COS的存儲分為以下幾個(gè)部分:將COS提供的核心管理功能模塊和一些在卡的生命期內不需要改變的模塊掩膜到ROM中;對于可能需要更新的模塊, 寫(xiě)到EEPROM 或FLASHMEMORY中以方便今后的更新操作;考慮到COS自身的擴充以及x,tcos中某些模塊的更新可能需要的更大的存儲空間,同時(shí)還在EEPROM或FLASHMEMORY預留出部分空間。COS自身的存儲主要由以上的3部分組成,其存儲邏輯圖如圖3。 

                  圖3 COS存儲邏輯圖

                      4、應用管理

                      系統中另一個(gè)重要的方面是對應用的管理,它包括應用的添加、刪除、更新和執行4個(gè)方面。

                      當需要添加一個(gè)新的應用時(shí),系統順序地給該應用分配一個(gè)標志號,并在應用索引文件中添加一項,把允許該應用使用的地址空間范圍和起始地址存于其中,同時(shí)根據有關(guān)規則建立起一個(gè)DF文件分配給該應用。在應用索引文件中還應該包括該應用所使用的所有命令。

                      對于應用刪除有3種方式:(1)應用一旦被添加就不再允許被刪除。(2)允許用戶(hù)刪除所有的應用,這種方式實(shí)現比前一種要復雜,當某個(gè)應用有使用的時(shí)間限制或者不需要再使用時(shí),就可以考慮將該應用從卡上刪除,以便回收存儲空間。刪除方法是:將該應用在應用索引文件中所對應的索引項刪除就行了?;厥盏拇鎯臻g可以分配新添加的應用,但是新添加的應用所要求的存儲空間大小不得超過(guò)回收的存儲空間的大小,否則不得分配。(3)允許刪除部分應用,某些應用在卡上起著(zhù)非常重要的作用,這些應用只允許更新,而不能被刪除,在這種方式下,在添加應用時(shí)就應該確定哪些應用可以被刪除,哪些應用不能被刪除。對可以刪除的應用,刪除方式同上,對不能刪除的應用,刪除時(shí)就要報錯。

                      比較這3種實(shí)現方式,第1種方式實(shí)現容易,缺點(diǎn)是不夠靈活,浪費有限的存儲資源,第2種方式稍難一些,可以節約一些存儲資源,但仍不夠靈活,第3種方式實(shí)現比較困難,但相對而言比較靈活一些。但就技術(shù)實(shí)現而言,一般采用第2種方式為宜。

                      當一個(gè)應用中的某些內容需更新時(shí),可用系統中有關(guān)的命令來(lái)更新相應的內容,但是更新后該應用所占的空間不能超出分配給該應用的地址空間,否則將拒絕更新。在更新過(guò)程中,一般是用更新的內容覆蓋掉原有的內容。如果原有的內容仍有很大的價(jià)值,那么就應該考慮是否執行更新操作。提供更新操作的主要優(yōu)點(diǎn)是可以延長(cháng)卡的使用壽命。

                      當執行應用中的命令時(shí),系統自動(dòng)將應用索引文件的地址范圍裝入界限寄存器,一旦應用在執行中的地址越界,就需進(jìn)行異常處理,并中斷應用程序。采用這種方式就可以保證應用不會(huì )在執行過(guò)程中非法訪(fǎng)問(wèn)其他應用的數據或破壞系統資源。

                      5、小結

                      從理論上來(lái)說(shuō)這種系統中可以添加無(wú)限個(gè)應用。但是到底能夠添加多少個(gè)應用是受硬件和軟件條件的限制的,應根據系統具體情況來(lái)決定。 “一卡多用”智能卡的應用范圍是極其廣泛的,它可以應用于金融財務(wù)(現金卡、信用卡、預付卡、電子支票、證券卡等)、社會(huì )安全(人壽和意外保險卡、社會(huì )保障卡等)、醫療(健康檢查卡、捐血卡、病歷卡等)、交通(交通卡等)等方面。本文從卡的硬件模型和軟件模型方面討論了一種“一卡多用”智能卡模型,著(zhù)重討論了它和傳統智能卡模型的不同之處,并給出了一些實(shí)現的方法。使用上述“一卡多用”智能卡,能在硬件上提供物理隔離,可以實(shí)現真正的一卡多用并保證卡上多個(gè)應用及其數據的安全。

                      (文/武漢大學(xué)計算機科學(xué)學(xué)院,徐中華,劉玉珍, 張煥國)

                  本文關(guān)鍵詞:信息安全,智能卡,COS,一卡多用
                  回到頂部
                  99久热只有精品视频在线17_精品一区二区三区自拍图片_最新国产v亚洲_久久综合九色综合久
                  <strike id="tpvd9"><dfn id="tpvd9"></dfn></strike>

                        <em id="tpvd9"></em>

                          <address id="tpvd9"></address>
                            <dfn id="tpvd9"><sub id="tpvd9"></sub></dfn>

                            <thead id="tpvd9"><noframes id="tpvd9">
                            <ruby id="tpvd9"></ruby>

                                  <thead id="tpvd9"></thead>