《電子技術應用》
您所在的位置:首頁 > 通信与网络 > 设计应用 > 双界面智能卡操作系统的设计与测试
双界面智能卡操作系统的设计与测试
RFID中国网
RFID世界网
摘要: 本文提出了双界面智能卡操作系统的设计方案以及测试方案。设计方案主要阐述了COS功能模块的划分,以及各个模块的功能和实现方法。测试方案包括测试中软硬件环境的选择,以及测试脚本需要覆盖的内容。目前已将开发成果应用于实际中。1.引言智能卡(smartcard又称集成电路卡)将一个集成电路芯片镶嵌于塑料基片中,封装成卡的形式,其外形与覆盖磁条的磁卡相似。笔者在利用北京市嵌入式系统重点实验室生产的智能卡进行符合中国人民银行金融卡规范的BESCOS开发过程中,针对该款芯片的硬件特性进行了COS的设计与实现,并根据规范设计了测试用例,完成了测试。2.智能卡硬件概述BE
Abstract:
Key words :

        本文提出了雙界面智能卡操作系統的設計方案以及測試方案。設計方案主要闡述了COS功能模塊的劃分,以及各個模塊的功能和實現方法。測試方案包括測試中軟硬件環境的選擇,以及測試腳本需要覆蓋的內容。目前已將開發成果應用于實際中。

        1. 引 言

        智能卡(smart card又稱集成電路卡)將一個集成電路芯片鑲嵌于塑料基片中,封裝成卡的形式,其外形與覆蓋磁條的磁卡相似。

        筆者在利用北京市嵌入式系統重點實驗室生產的智能卡進行符合中國人民銀行金融卡規范的BES COS開發過程中,針對該款芯片的硬件特性進行了COS的設計與實現,并根據規范設計了測試用例,完成了測試。

        2. 智能卡硬件概述

        BES1332EF是一款基于8051的雙界面智能卡芯片。非接觸式接口支持ISO 14443 TYPE A協議,接觸式接口支持ISO/IEC7816 T=0協議。有8K的ROM,32K的EFLASH,1K的RAM,硬件隨機數發生器,CRC模塊以及DES模塊。

        3. 智能卡操作系統

        智能卡操作系統是一個專用系統,和傳統意義上的操作系統有很大的差別,它更類似于一個監控程序。COS主要包含通信、命令解釋、文件系統以及安全四個模塊。

        3.1通信模塊

        傳輸管理器負責智能卡和接口設備之間的數據通信,接收過程中要處理對輸入數據的緩沖,響應過程控制數據的發送。通信使用的協議是ISO7816-3 所規定的T=0 的異步半雙工字符傳輸協議。當接口設備給卡上電之后,首先由卡發送一個復位應答信息(ATR)給接口設備,然后接口設備發送命令頭來啟動命令處理過程。傳輸管理器在正確地接收到命令后交給下一個功能模塊進行處理,昀后還要把該命令的執行結果返回給接口設備。

        3.2命令解釋模塊

        命令解釋器對外部輸入的每條命令做語法分析,分析和檢查命令參數是否正確,然后根據命令參數的含義執行相應的功能模塊。如果發現參數有錯,將從該模塊直接返回錯誤信息。

        3.3文件系統

        主控文件(Master File , MF)。主控文件是整個文件系統的根(可看做根目錄),每張卡有且只有一個主控文件。專用文件(Dedicated File,DF)。在MF下針對不同的應用建立起來的一種文件,是位于MF之下的含有EF的一種文件結構(可看做文件目錄),它存儲了某個應用的全部數據以及與應用操作相關的安全數據?;疚募?Elementary File,EF)?;疚募鎯α烁鞣N應用的數據和管理信息,它存在于 MF和DF下。

        3.4安全模塊

        安全模塊主要分成兩個部分。第一部分就是用于數據加密、校驗等的基礎功能模塊。包括隨機數產生、3DES加密、MAC計算模塊、 CRC計算模塊等。第二部分是文件的權限控制模塊。在BES COS中, MF、DF和EF的文件頭中保存著一個權限范圍,而系統在某一時刻都有著當前的權限值,如果權限值在權限范圍中,則可以進行相應操作,否則,則需要外部認證等手段改變系統當前的權限值。

        4. 智能卡的測試

        4.1測試環境

        智能卡的測試主要分兩個部分,一是硬件測試,二是軟件測試。從硬件測試的層面來說,選取一個功能強的專用于測試讀卡器是十分必要的。比如在IC卡的7816通信接口還沒有完全實現的時候,通過普通的讀卡器對卡片進行操作,返回值在讀卡器這邊是無法看到的,因為大多數讀卡器屏蔽了不符合7816的TPDU規定的數據,而如果每次都用示波器觀察硬件信號的話,效率又比較低。所以應該盡量選擇可以看到底層交互數據的讀卡器。

        從軟件測試的層面來說,選取一個對上層提供了友好的接口的讀卡器也是十分必要的。例如我在開發BES COS時使用的讀卡器 Collis,提供了與其配套的腳本開發環境Collis Conclusion,可以方便的設置讀卡器的電壓,頻率,等待超時時間等。還提供了設定期望返回值的功能。

        4.2測試腳本

        測試腳本主要分為功能正確情況測試,功能異常情況測試,參數測試,安全機制測試以及應用流程測試。

        功能正確情況測試是指在輸入的參數都合法,執行的條件都具備,所執行的命令應該可以正常執行的情況下,檢查所測命令是否能夠正確執行涉及的功能步驟。功能異常情況測試是指在輸入的參數都合法,但執行的條件不具備,檢測COS是否都返回了相應的錯誤代碼。參數測試是指,固定所測命令參數P1、P2、Lc和數據與正確且不變的情況下,利用窮舉法便利每一個錯誤的CLA作為輸入參數,測試COS是否都能正確響應錯誤代碼,其他的參數測試同理。安全機制測試是指在操作一個基本文件時,該文件可能有一個或者多個安全控制機制。應用流程測試,是指將命令組合起來成為一個應用流程,檢測整個流程是否都能正確執行,檢測基本命令之間是否會有影響。

        5. 結束語

        目前COS已經通過了第三方的測試,目前正在準備上金融卡檢測中心的測試平臺。COS開發中昀大的困難就是調試不便,直到后來在芯片中加入了OCI,才可實現單步調試以及存儲單元值的查看。COS的開發語言C/匯編也比較低級,影響了開發的效率以及易維護性。相信隨著IC卡成本的降低,支持java語言的java卡會更加的普及。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧美日韩国产第一页| 国产一区精品在线| 欧美日韩午夜爽爽| 国产精品永久免费视频| 欧美在线中文字幕| 国产精品美女久久久久久免费| 最新国产精品久久| 久久99精品久久久久子伦| 欧美日韩国产成人| 一本一道久久久a久久久精品91| 国产精品亚洲精品| 欧美一级电影久久| 婷婷五月色综合| 在线一区亚洲V| 在线免费一区| 久久久久久艹| 久久精品99久久香蕉国产色戒| 精品国产一区二区三区在线观看| 一区二区三区四区久久| 91精品综合久久| 欧美激情亚洲国产| 蜜桃av久久久亚洲精品| 久久久久亚洲av无码专区喷水| 欧美精品卡一卡二| 久久国产精品精品国产色婷婷| 久久久99精品视频| 国产欧美日韩视频| 丝袜美腿精品国产二区| 日韩一区二区三区国产| 日韩在线免费视频V| 日韩欧美视频第二区| 欧美日韩亚洲一| 日韩一区二区在线视频| 日韩中文字幕在线视频| 热久久99这里有精品| 欧美精品七区| 九九热精品在线| 国产在线播放一区二区| 国产精品91在线观看| 一区二区三区四区欧美| 日本一区视频在线观看免费|