中國文獻查重檢測系統

多語種 圖文 指定高校抄襲檢測系統

智能卡COS測試方案的研究

2019-06-04 閱讀(190)

以下內容由知網查重網站收集整理!知網查重提醒大家,畢業論文是考驗大家大學四年的成果,應當認真應對!切勿剽竊他人的學術成果。專科本科重復率30以上將不能順利畢業延遲答辯!碩士及以上學歷重復率不能超出百分之20,個別學校需要百分之十以下!

摘 要:操作系統的穩定和可靠是智能卡正常工作的基礎。在COS開發過程中,對COS充分全面的測試是非常重要的。本文在介紹智能卡操作系統的體系結構的基礎上,給出了智能卡COS的測試方案。對于同一應用類型的COS,測試具有一定的重用性。

關鍵詞:智能卡;COS;測試用例;安全性

引言

隨著科學技術的發展,智能卡的應用已經越來越廣泛。智能卡操作系統(Chip Operating System, COS)是根據行業標準,及智能卡的硬件結構及應用設計和開發的。為保證COS的穩定性和可靠性,須遵循軟件工程及協議一致性的要求,對COS進行充分全面的測試。

本文基于北京嵌入式重點實驗室的智能卡芯片BES2415進行符合ISO7918,ISO14443及PBOC2.0規范的COS開發中,針對硬件結構、規范和COS特點,設計測試用例,完成測試。

智能卡操作系統

1. COS體系結構

COS的主要功能是控制智能卡同外界的信息交換,分析接收到的指令進行處理。管理文件,執行加密及安全狀態的管理。功能模塊如圖1主要分為:通信管理模塊、命令解析模塊、安全管理模塊和文件管理模塊。

1) 通信管理模塊:對輸入緩沖區中收到的數據進行奇偶校驗,對分組長度進行正確性判斷,但不對信息的內容進行判斷;發送經過命令處理、文件管理處理、安全認證后的數據,并按照ISO/IEC 7816-4中有關命令結構要求打包成完整的結果報文,放入到輸出緩沖區,發送結果報文。

2)安全管理模塊:接受通信管理模塊的數據,對其進行安全驗證,并將處理后的信息返回給通信管理模塊;若安全驗證失敗,則直接返回驗證失敗。

3) 命令解析模塊:作數據內容上的鑒別(檢查命令的各項參數是否正確),然后執行相應的操作,完成對卡內有關數據的操作,若對數據內容鑒別未通過,則直接返回錯誤碼給通信管理模塊。

4)文件管理模塊:數據在卡內是以文件形式存在的,文件管理模塊須提供文件的建立、修改、刪除等基本操作,文件訪問的安全控制等。

2. 智能卡通信過程

智能卡與終端之間的通信是通過命令--響應對實現的。終端主動向卡發送命令(C-APDU),卡接收到命令后,由COS對命令進行處理,生成響應報文(R-APDU)并回送給終端。

C-APDU由兩部分組成:一個必備4字節命令頭(CLA INS P1 P2),及可選可變長的條件體,其中Lc表示數據域的長度,Le表示期待響應報文數據字段的最大長度。格式如圖2

3. COS安全結構

(1)安全狀態

安全狀態表明當前卡片的狀態,會在復位應答(ATR)或執行完認證命令或一組命令后設置。

(2)安全屬性

安全屬性定義了需要完成某項操作需要的安全權限。每一文件有與其相聯系的安全屬性,應滿足一定的安全條件,才允許對文件進行相應操作。

(3)安全機制

安全機制是基于安全狀態和安全屬性的。一種安全狀態經過安全機制的轉移方法轉移到另一安全狀態,將當前狀態和安全屬性相比較,如果相符合則可以進行相應的操作。安全機制主要有三種方式:數據加密解密、鑒別和核實、文件訪問控制。

COS測試方案

COS的測試主要包括協議測試、基本功能測試和防插拔測試。協議測試即檢測智能卡與ISO7918,ISO14443的符合程度。基本功能測試主要包括命令解釋功能測試、安全功能測試和基本交易功能測試。防插拔旨在檢測COS與終端交互過程中意外掉電時對數據完整性的保護和自動恢復的能力。

智能卡測試方案的設計方法如下:1)對測試需要進行分析;2)針對不同的測試項目采用不同的測試方法;3)利用colis公司的conclusion編寫測試腳本。

測試用例設計

在測試中,主要針對以下幾個方面進行測試用例的設計:命令解釋功能、安全功能、基本交易功能和防插拔。

1. 命令解釋功能測試用例設計

智能卡與終端的通信單元是APDU,對命令解釋功能的測試是通過白盒方法分析邏輯路徑,以及相應命令的響應數據進行黑盒測試。針對標準中每條指令的APDU設計測試用例,由于命令解釋模塊首先對接收緩沖中APDU的前5個字節進行處理,因此利用劃分等價類組成測試用例樹:

2. 安全功能測試用例

安全功能測試主要測試智能卡的權限控制、安全鎖定。測試用例使用推斷的方法針對不同的情況進行設計。

權限控制的測試:在不滿足操作權限的安全狀態下,對文件進行操作。例如:EF文件的讀權限為0x15,外部認證密鑰的使用權限為0x0F,后續狀態為0x03。在選擇文件后,發送讀命令,由于此時的安全狀態為初始狀態0,而文件的讀權限為0x15,0不在1~5之間,所以應返回0x6982表示安全狀態不滿足。然后發送外部認證命令,提高安全狀態,再發送讀命令,應該能夠正確返回。

安全鎖定:安全鎖定包括發卡商密鑰錯誤時超過最大嘗試次數,是否能將卡鎖住,并返回錯誤代碼,提示還可嘗試次數;超過PIN校驗最大次數是否能鎖住PIN,返回0x6983。

3. 基本交易功能測試用例

基本交易功能主要測試智能卡能否按照協議規定的交易流程完成正常交易。根據協議規定的交易流程,畫出交易測試流程圖,采用基本路徑的方法設計測試用例。以圈存交易為例:

4. 防插拔測試用例

防插拔是在正常交易的過程中,意外掉電,智能卡能否保證數據完整性急自動恢復的能力。例如上圖圈存交易,在返回確認前的任何時刻掉電,在卡片再次上電后應能將數據恢復到交易前的狀態,編寫測試腳本,在任意兩條指令間插入掉電指令,再次上電后通過讀取余額推斷數據是否恢復。

結語

根據COS 的特點給出了COS 的測試方案,對于每個測試項給出了其測試的方法并完成測試用例。在測試中,結合對測試結果的分析,進一步補充測試用例。這些測試用例,還需要進一步的優化和歸并,使測試用例具有一定的重用性。

參考文獻

[1] 王愛英,智能卡技術 第三版,清華大學出版社,2010

[2] 趙斌,軟件測試技術經典教程,科學出版社,2010

[3] 張志檁,加油IC卡技術與應用,中國石化出版社,2007

[4] 雙接口智能卡C0S軟件的設計與實現,尉永清,劉培德,山東師范大學學報(自然科學版)2006年6月

[5] 張李靜,張秋燕,智能卡COS芯片層模塊設計與測試方案研究,現代電子技術,2009年第4期

高校知網查詢

相關文章

11选五赚钱方法