999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

關于智能卡的自動化測試平臺設計

2010-04-12 00:00:00王景存
現(xiàn)代電子技術 2010年4期

摘 要:傳統(tǒng)的智能卡測試平臺需要人工干預,嚴重影響測試效率,因此難以滿足智能卡行業(yè)的測試需求。針對這個問題,在此提出一種新的解決方案。該方案以PC/SC為編程接口,實現(xiàn)了測試平臺與智能卡的通信,利用擴展的TCL解釋器定義了一種新的測試語言ATP,它包含TCL內置命令和應用程序的相關命令。測試人員可以利用ATP語言編寫測試用例,在此平臺上完成對智能卡的自動化測試。該方案已經得到實際驗證。

關鍵詞:PC/SC;讀/寫器;智能卡;TCL命令;ATP語言;應用協(xié)議數(shù)據(jù)單元

中圖分類號:TP274文獻標識碼:B

文章編號:1004-373X(2010)04-089-03

Design of Automated Test Platform for Smartcard

WANG Jingcun1,2,SU Peng1,2

(1.Engineering Research Center of Metallurgical Automation and Meas.Tech.Ministry of Education,Wuhan University of Sci.and,Wuhan,430081,China;

2.School of Information Science and Technology,Wuhan University of Science and Technology,Wuhan,430081,China)

Abstract:Traditional test platform for smartcard requires human intervention,seriously affects test proficiency.So,it has difficulty meeting the test needs in the smartcard industry.To solve this problem,a new method is developed and presented.Using the programming interfaces of PC/SC to communicate from test platform to smartcard.A new test language ATP,including TCL built-in commands and application-specific commands,which is defined by extended TCL interpreter.Software testers may create test cases in ATP language to test smartcard almost completely automatic on the platform.The method has been verified in practice.

Keywords:PC/SC;IFD;smart card;TCL command;ATP language;APDU

0 引 言

隨著智能卡在金融、電信、移動通信、醫(yī)療保險、付費電視等領域應用的迅速增長,其可靠性要求越來越高,而針對智能卡模塊的測試已經成為必不可少的質量保證手段。自動化測試不需要人工干預,能提高測試效率,受到更多重視和應用。在發(fā)展自動化測試的過程中,一個高效的自動化測試平臺是其基本保障。

根據(jù)智能卡的應用現(xiàn)狀和市場需求,本設計用TCL語言和C語言聯(lián)合編程的方法,以PC/SC為編程接口,實現(xiàn)了智能卡的測試平臺,能夠對智能卡進行質量和性能的測試。

1 測試系統(tǒng)結構

具有測試功能的系統(tǒng)結構如圖1所示。

測試系統(tǒng)一般由測試平臺、讀/寫器和智能卡三個部分組成。測試平臺運行測試腳本,并對從智能卡返回的結果進行處理。智能卡內部有被測程序,響應測試平臺發(fā)來的命令,返回測試數(shù)據(jù)。讀/寫器提供測試平臺和智能卡的接口。這里的研究重點是測試平臺。

圖1 測試系統(tǒng)結構圖

2 測試平臺的設計思路

測試平臺軟件由兩個部分組成,即界面程序和通信軟件程序,如圖2所示。界面程序提供一個友好的圖形畫面,接受用戶指令,如腳本輸入,按鈕響應等。界面將用戶的任務轉換為內部指令,然后由通信軟件程序具體實施,而通信軟件程序負責與USB讀卡器通信。

下面分別介紹界面程序和通信軟件程序的實現(xiàn)原理。圖2是測試平臺的軟件結構。

2.1 界面程序

界面程序分為三層,如圖3所示。

圖2 測試平臺的軟件結構

圖3 界面程序

頂層為腳本層,用于支持ATP語言。ATP并不是一種全新的語言,是從TCL語言[1,2]擴展而來,針對ATP開辟的命令集,它包括TCL基本命令和應用程序相關的擴展命令。TCL基本指令的使用方法可以參考文獻[1,2],擴展命令是TCL專門針對智能卡的測試而擴展的。

中間層是根據(jù)應用需求而擴展的TCL解釋器,它包含TCL標準庫和與底層接口程序有關的TCL擴展庫。ATP的基本部分由TCL語言解釋器調用TCL標準庫來執(zhí)行;ATP的擴展部分由擴展的TCL解釋器調用TCL擴展庫執(zhí)行。

頂層和中間層說明了TCL即是一種腳本語言也是一個解釋器。底層是接口程序,提供與通信軟件程序的接口,負責發(fā)送命令和返回狀態(tài)。

圖4顯示了TCL與應用程序的調用關系。

TCL的標準命令[3,4]是TCL自帶的,而與應用程序相關的特殊命令需要用C代碼去擴展,下面詳細介紹如何擴展TCL命令。使用TCL之前,應用程序必須首先創(chuàng)建TCL解釋器創(chuàng)建標準的命令解釋器,然后可以調用Tcl _CreateCommand 過程使用用戶自定義命令來擴展解釋器,它的原型是:

Tcl_CreateCommand (interp,cmdName,proc,clientData,deleteProc)

其中:interp為創(chuàng)建的解釋器;cmdName為創(chuàng)建的命令名字;proc為與命令相對應的函數(shù);clientData為一個字長的值,通常指向一個專用數(shù)據(jù)結構;deleteProc為注銷命令的函數(shù)名,如果其為空,則在注銷命令前不調用任何函數(shù)。

調用Tcl _CreateCommand時,擴展命令name就會和name_tcl聯(lián)系起來;執(zhí)行name命令時,會進入name_tcl函數(shù)處理name命令。

創(chuàng)建完程序自定義命令后,應用程序進入死循環(huán),等到命令后就傳遞給解釋器。調用Tcl_Eval(interp,script),通過script的內容知道命令的類型后,選擇在相應的過程函數(shù)中進行計算。

通信軟件程序的執(zhí)行就是在過程函數(shù)里面被調用,這樣就實現(xiàn)了界面程序與通信軟件程序的接口。

2.2 通信軟件程序

通信軟件程序遵循PC/SC規(guī)范[5-8]。PC/SC 規(guī)范是由 PC/SC 工作組提出的。PC/SC工作組是一個主要由智能卡廠商和計算機廠商組成的委員會,主要成員有微軟、蘋果、雅斯拓、金普斯、英飛凌、菲利普等。PC/SC 規(guī)范是一個基于Windows平臺的標準用戶接口(API)。它獨立于硬件設備,使得應用程序的開發(fā)人員不必考慮由于硬件改變而引起的應用程序變更,從而降低了軟件開發(fā)成本。

PC/SC規(guī)范包含大量Scard為前綴的API,可以在winscard.h中找到其原型。應用程序需要包含winscard.lib,所有函數(shù)的正常返回值都是SCARD_S_SUCCESS,在這些函數(shù)中常用的只有幾個。與智能卡的訪問流程如下:

(1) 初始化函數(shù)中調用SCardEstablishContext,建立資源管理器的上下文,獲得設備的連接句柄,若返回SCARD_S_SUCCESS,則調用成功;調用ScardListReaders獲得系統(tǒng)中安裝的讀卡器列表,調用成功則獲取聯(lián)機的讀卡器名字。

(2) 在響應函數(shù)中調用ScardConnect與卡片建立連接,此時能與卡片通信。

(3) 與卡片連接后通過調用SCardTransmit來發(fā)送命令,得到由卡片返回的數(shù)據(jù)。

(4) 卡片處于連接狀態(tài)時,可以調用SCardReconnect函數(shù)使卡片復位。

(5) 完成了與卡片的命令發(fā)收后,調用SCardDisconnect函數(shù)斷開與智能卡的連接。

項目已經實現(xiàn)以上功能的編程接口,而且利用類的方法進行了封裝。

3 測試平臺的使用

3.1 測試流程

腳本的制定還是使用人工方式,測試人員通過測試平臺完成測試。自動化測試不需要人工干預,縮短了測試時間。因而測試過程采用人工測試和自動化測試相結合的方法進行。

用戶可以編寫測試腳本,快速發(fā)送測試命令和收集測試數(shù)據(jù),可以單次執(zhí)行或者循環(huán)執(zhí)行,當滿足終止條件時,腳本執(zhí)行結束,生成測試報告。圖5為測試流程圖。

3.2 功能測試

測試平臺能夠以APDU為基本單元完成針對智能卡的功能測試,下面分別對其進行介紹。

3.2.1 測試基本單元

測試平臺與智能卡通信的基本單元是APDU[9,10]。應用層以APDU為單位進行有序的數(shù)據(jù)交換,應用層交換的每一步都以命令應答對組成。APDU的命令應答對由以下部分組成:

命令APDU包含一個必備的四字節(jié)頭(CLA,INS,P1,P2)和可選的命令體(Lc,Data,Le)。命令頭為命令的編碼,Lc為體內數(shù)據(jù)(data)長度,Data為發(fā)送的數(shù)據(jù),Le為應答APDU數(shù)據(jù)字段的最大字節(jié)數(shù)。

應答APDU由可選長度體和兩字節(jié)狀態(tài)字SW1-SW2組成。其中,體內的字節(jié)數(shù)由命令APDU的Le指出。Data為卡片接受命令APDU后返回的數(shù)據(jù)。尾部狀態(tài)字指出卡的處理狀態(tài)。其中,61xx和9000為正常處理,61xx的含義SW2指出仍然有效的應答字節(jié)數(shù),9000代表正常處理。

圖4 TCL與應用程序的聯(lián)系

圖5 測試流程圖

3.2.2 單元測試

同樣,智能卡內部程序也是以APDU為單位實現(xiàn)的,因此單元測試的對象就是APDU。

發(fā)送一個APDU給智能卡,通過智能卡內部程序執(zhí)行完后返回狀態(tài)字,判斷執(zhí)行結果的正確與否。命令之間存在著相互依賴關系,因此命令之間通常要相互配合才能完成測試任務。

3.2.3 集成測試

集成測試主要是通過命令之間有序地執(zhí)行完成智能卡的功能測試,根據(jù)不同的測試需要可以對測試腳本進行分類,例如FLASH的讀/寫,加密模塊的測試等。按照需要整理好相應的測試腳本后就可以在測試平臺上運行,通過腳本與智能卡程序的互測,達到測試目的。測試平臺支持自動化測試,所以可以在測試平臺上不間斷地執(zhí)行測試腳本,測試人員不需要實時跟蹤,只需要關心最后的測試結果,通過測試結果可以發(fā)現(xiàn)問題,解決問題。

4 結 語

該系統(tǒng)已經通過測試,并且得到初步驗證。由于針對智能卡的測試項很多,通常需要多種測試工具的軟件和硬件設備交互使用,測試人員要熟悉各種軟件工具,相應地降低了工作效率。如果能將各種工具軟件集成在一起,形成一個多功能的測試平臺,支持多種通信接口的讀卡器,支持多種腳本格式,那么這將是下一步的工作重點。

參考文獻

[1]Brent Welch.Practical Programming in TCL and Tk[M].Prentice Hall,1995.

[2]Brent B Welch.TCL/TK編程權威指南[M].北京:中國電力出版社,2002.

[3]崔鴻,余雪麗,馮秀芳.TCL與C++聯(lián)合編程[J].太原理工大學學報,2003,34(1):83-86.

[4]崔鴻,李全福.基于TCL語言的外殼語言實現(xiàn)方法[J].計算機工程,2005,31(7):133-134,137.

[5]PC/SC Workgroup.Interoperability Specification for ICCs and Personal Computer Systems:Part 2.Interface Requirements for Compatible IC Cards and Readers.

[6]PC/SC Workgroup.Interoperability Specification for ICCs and Personal Computer Systems:Part 3.Requirements for PC-Connected Interface.

[7]劉祝生.基于PC/SC智能卡的應用與安全研究[D].長沙:湖南大學,2008.

[8]游代安,何久田,蔣遂平,等.Java卡應用的設計與實現(xiàn)[J].計算機工程與應用,2006,42(4):299-302.

[9]ISO/IEC7816-3[Z].2004.

[10]王愛英.智能卡技術:IC卡[M].北京:清華大學出版社,2004.

主站蜘蛛池模板: 在线免费亚洲无码视频| 国产喷水视频| 在线日本国产成人免费的| 免费a级毛片视频| 综合色在线| 91在线激情在线观看| 91九色国产porny| 国产精品亚洲а∨天堂免下载| 天堂中文在线资源| 中文字幕人妻av一区二区| 国产欧美视频在线| 国产免费怡红院视频| 日韩午夜福利在线观看| 国产成人精品视频一区二区电影| 久久免费精品琪琪| 国产精品污污在线观看网站| 亚洲天堂精品视频| 國產尤物AV尤物在線觀看| 欧美福利在线观看| 精品久久久久无码| 久久99热这里只有精品免费看| 99久久精品免费看国产电影| 亚洲天堂久久| 香蕉eeww99国产精选播放| 亚洲综合久久一本伊一区| 亚洲自偷自拍另类小说| 重口调教一区二区视频| 青青青视频蜜桃一区二区| 亚洲精品成人7777在线观看| 欧美精品1区| 亚洲乱强伦| 国产一级精品毛片基地| 亚洲天堂网在线观看视频| 欧美午夜精品| 超碰aⅴ人人做人人爽欧美| 狠狠ⅴ日韩v欧美v天堂| 中文字幕在线观| 91青草视频| 91久久偷偷做嫩草影院| 国产精品亚欧美一区二区| 91久久国产综合精品| 性网站在线观看| 日韩精品久久久久久久电影蜜臀| 91麻豆国产在线| 国产麻豆精品手机在线观看| 又大又硬又爽免费视频| 老司机午夜精品视频你懂的| 国产又大又粗又猛又爽的视频| 亚洲精品色AV无码看| 91久久夜色精品国产网站| 国产女人18毛片水真多1| 国产亚洲欧美日韩在线观看一区二区| 欧美色视频在线| 久久无码高潮喷水| 国产女同自拍视频| 欧美精品v| 成人综合久久综合| 欧美性天天| 亚洲区视频在线观看| 精品無碼一區在線觀看 | 无码高潮喷水在线观看| 72种姿势欧美久久久久大黄蕉| 91精品情国产情侣高潮对白蜜| 97国产精品视频自在拍| 亚洲成人网在线播放| 亚洲精品卡2卡3卡4卡5卡区| 1级黄色毛片| 欧美国产菊爆免费观看 | 国产成人狂喷潮在线观看2345| 国产激情影院| 中文字幕免费视频| 国产成人精品高清不卡在线| 一级毛片高清| 97av视频在线观看| 色偷偷av男人的天堂不卡| 最新国产你懂的在线网址| 在线无码av一区二区三区| 国产专区综合另类日韩一区| 视频一区视频二区中文精品| 午夜啪啪网| 国产精品不卡片视频免费观看| 好吊色国产欧美日韩免费观看|