本發(fā)明涉及智能卡領(lǐng)域,尤其是涉及一種智能卡測(cè)試方法以及實(shí)現(xiàn)這種方法的測(cè)試設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
智能卡又稱為芯片、ic卡或者cpu卡,智能卡內(nèi)通常集成一個(gè)芯片,芯片可以運(yùn)行智能卡的操作系統(tǒng)cos,并且在智能卡的操作系統(tǒng)上可以運(yùn)行各種各樣的應(yīng)用模塊,如支付的應(yīng)用模塊,從而使得智能卡具備支付功能。由于智能卡生產(chǎn)過(guò)程中需要向智能卡寫入多種數(shù)據(jù),如需要寫入初始化數(shù)據(jù)、預(yù)個(gè)人化數(shù)據(jù)以及個(gè)人化數(shù)據(jù),因此智能卡的生產(chǎn)過(guò)程包括制造卡基的過(guò)程,還包括向智能卡寫入數(shù)據(jù)的過(guò)程。
向智能卡寫入數(shù)據(jù)后,需要對(duì)智能卡寫入的數(shù)據(jù)進(jìn)行測(cè)試,以測(cè)試智能卡是否實(shí)現(xiàn)所設(shè)定的功能。目前對(duì)進(jìn)行測(cè)試時(shí),通常使用一個(gè)測(cè)試設(shè)備對(duì)智能卡進(jìn)行測(cè)試,例如使用計(jì)算機(jī)作為測(cè)試設(shè)備,在計(jì)算機(jī)上運(yùn)行測(cè)試軟件,并且,由于計(jì)算機(jī)不能直接讀取智能卡的數(shù)據(jù),通常需要通過(guò)諸如讀卡器等讀卡設(shè)備讀取智能卡的數(shù)據(jù)。
例如,傳統(tǒng)的智能卡測(cè)試設(shè)備通常是計(jì)算機(jī),并且在計(jì)算機(jī)上運(yùn)行有由某種開發(fā)語(yǔ)言編程而成的測(cè)試軟件,并且通過(guò)調(diào)用winscard庫(kù)函數(shù)的方式與智能卡進(jìn)行數(shù)據(jù)交互。然而,由于現(xiàn)有的測(cè)試軟件都是封閉的,也就是只能跟特定的一種或者幾種讀卡設(shè)備連接,并且測(cè)試軟件上運(yùn)行的代碼復(fù)用性不強(qiáng)。由于需要測(cè)試的智能卡是多種多樣的,需要使用不同的讀卡設(shè)備進(jìn)行讀取,而且智能卡的封裝方法也是多種多樣的,如果測(cè)試軟件僅僅局限于pc/sc模式這類單一的讀卡設(shè)備,而不能訪問(wèn)密鑰介質(zhì),則不能靈活地提取智能卡中的制卡數(shù)據(jù)或變量數(shù)據(jù),限制了對(duì)智能卡的訪問(wèn)操作,無(wú)法實(shí)現(xiàn)智能卡的測(cè)試需求。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述的問(wèn)題,本發(fā)明的第一目的是提供一種可以對(duì)多種智能卡進(jìn)行測(cè)試的智能卡測(cè)試方法。
本發(fā)明的第二目的是提供一種兼容不同讀卡設(shè)備的智能卡測(cè)試設(shè)備。
本發(fā)明的第三目的是提供一種實(shí)現(xiàn)上述智能卡測(cè)試方法的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
為實(shí)現(xiàn)上述的第一目的,本發(fā)明提供的智能卡測(cè)試方法包括獲取選取第一讀卡設(shè)備的指令,并且,判斷是否存儲(chǔ)有與第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,如沒有存儲(chǔ)與第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,則加載讀卡設(shè)備動(dòng)態(tài)庫(kù),通過(guò)動(dòng)態(tài)庫(kù)調(diào)用第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,通過(guò)接口數(shù)據(jù)文件與第一讀卡設(shè)備進(jìn)行數(shù)據(jù)交互;通過(guò)第一讀卡設(shè)備與待測(cè)試的智能卡進(jìn)行數(shù)據(jù)交互,并且生成測(cè)試報(bào)告。
由上述方案可見,在判斷沒有存儲(chǔ)第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件時(shí),測(cè)試設(shè)備可以通過(guò)動(dòng)態(tài)庫(kù)調(diào)用第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件并通過(guò)接口數(shù)據(jù)文件與第一讀卡設(shè)備進(jìn)行數(shù)據(jù)交互,也就是實(shí)現(xiàn)了對(duì)新的讀卡設(shè)備的兼容。這樣,智能卡的測(cè)試設(shè)備可以連接多種讀卡設(shè)備,滿足不同智能卡的測(cè)試要求。
一個(gè)優(yōu)選的方案是,通過(guò)動(dòng)態(tài)庫(kù)調(diào)用第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件后,還執(zhí)行:獲取選取密鑰介質(zhì)的指令;判斷是否存儲(chǔ)與所選取的密鑰介質(zhì)對(duì)應(yīng)的操作函數(shù),如沒有存儲(chǔ)所選取的密鑰介質(zhì)對(duì)應(yīng)的操作函數(shù),則加載與所選取的密鑰介質(zhì)對(duì)應(yīng)的操作函數(shù)的關(guān)鍵字,根據(jù)函數(shù)關(guān)鍵字調(diào)用對(duì)應(yīng)的操作函數(shù)。
由此可見,測(cè)試設(shè)備不但能夠加載新的讀卡設(shè)備,還可以針對(duì)新的密鑰介質(zhì)加載新的函數(shù)關(guān)鍵字,從而調(diào)取新的操作函數(shù),滿足新的密鑰介質(zhì)的測(cè)試要求。
進(jìn)一步的方案是,如密鑰介質(zhì)為卡類密鑰介質(zhì),則獲取選取密鑰介質(zhì)的指令前,還執(zhí)行:通過(guò)第二讀卡設(shè)備與密鑰介質(zhì)進(jìn)行數(shù)據(jù)交互。
由此可見,針對(duì)采用卡類密鑰介質(zhì)的情況,通過(guò)第二讀卡設(shè)備讀取卡類密鑰介質(zhì)的數(shù)據(jù),從而完成對(duì)智能卡的測(cè)試工作。
更進(jìn)一步的方案是,所調(diào)用的操作函數(shù)中,腳本命令行關(guān)鍵字函數(shù)設(shè)置在apdu命令行之后。也就是采用的是關(guān)鍵字函數(shù)后置方式,即腳本命令行關(guān)鍵字函數(shù)的前面放置與ic卡交互的關(guān)鍵apdu命令和命令內(nèi)容中的變量字段,這樣能夠最大程度地利于對(duì)腳本的糾錯(cuò)檢查,也有利于對(duì)腳本文件的排版工作。
為實(shí)現(xiàn)上述的第二目的,本發(fā)明提供的智能卡測(cè)試設(shè)備包括處理器,處理器執(zhí)行計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如下步驟:獲取選取第一讀卡設(shè)備的指令;判斷是否存儲(chǔ)有與第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,如沒有存儲(chǔ)與第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,則加載讀卡設(shè)備動(dòng)態(tài)庫(kù),通過(guò)動(dòng)態(tài)庫(kù)調(diào)用第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,通過(guò)接口數(shù)據(jù)文件與第一讀卡設(shè)備進(jìn)行數(shù)據(jù)交互;通過(guò)第一讀卡設(shè)備與待測(cè)試的智能卡進(jìn)行數(shù)據(jù)交互,并且生成測(cè)試報(bào)告。
由上述方案可見,測(cè)試設(shè)備在判斷沒有存儲(chǔ)與第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件時(shí),可以通過(guò)動(dòng)態(tài)庫(kù)調(diào)用第一讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件的方式,在通過(guò)接口數(shù)據(jù)文件與第一讀卡設(shè)備進(jìn)行數(shù)據(jù)交互,也就是實(shí)現(xiàn)了對(duì)新的讀卡設(shè)備的兼容。這樣,智能卡的測(cè)試設(shè)備可以連接多種讀卡設(shè)備,滿足不同智能卡的測(cè)試要求。
為實(shí)現(xiàn)上述的第三目的,本發(fā)明提供的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述的智能卡測(cè)試方法中的各個(gè)步驟。
附圖說(shuō)明
圖1是本發(fā)明智能卡測(cè)試設(shè)備實(shí)施例與讀卡設(shè)備、智能卡連接的結(jié)構(gòu)框圖。
圖2是本發(fā)明智能卡測(cè)試方法實(shí)施例的流程圖。
圖3是本發(fā)明智能卡測(cè)試方法實(shí)施例中連接讀卡設(shè)備的流程圖。
圖4是本發(fā)明智能卡測(cè)試方法實(shí)施例中調(diào)用操作函數(shù)的流程圖。
以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
具體實(shí)施方式
本發(fā)明的智能卡測(cè)試方法用于對(duì)智能卡進(jìn)行測(cè)試,例如,對(duì)寫入到智能卡的數(shù)據(jù)進(jìn)行測(cè)試,確定是否將數(shù)據(jù)準(zhǔn)確寫入到智能卡中,并且測(cè)試智能卡是否正確執(zhí)行所寫入的數(shù)據(jù)。本發(fā)明的智能卡測(cè)試設(shè)備可以是計(jì)算機(jī)等設(shè)備,并且運(yùn)行有測(cè)試軟件程序,用于實(shí)現(xiàn)對(duì)智能卡的測(cè)試。本發(fā)明的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)是智能卡測(cè)試設(shè)備上的存儲(chǔ)介質(zhì),并且存儲(chǔ)有用于實(shí)現(xiàn)對(duì)智能卡測(cè)試的程序代碼。
智能卡測(cè)試方法實(shí)施例:
對(duì)智能卡進(jìn)行測(cè)試時(shí),需要使用測(cè)試設(shè)備讀取智能卡的數(shù)據(jù),并且對(duì)讀取的數(shù)據(jù)進(jìn)行分析,從而確定智能卡中的數(shù)據(jù)是否存在異常情況。參見圖1,本實(shí)施例中所使用的測(cè)試設(shè)備可以是計(jì)算機(jī)10,在計(jì)算機(jī)10上運(yùn)行有測(cè)試軟件程序,例如集成開發(fā)環(huán)境(ide)平臺(tái)11,并且在集成開發(fā)環(huán)境平臺(tái)11上設(shè)置動(dòng)態(tài)庫(kù)12,動(dòng)態(tài)庫(kù)12包含可由多個(gè)程序同時(shí)使用的代碼和數(shù)據(jù)的庫(kù),并且提供動(dòng)態(tài)鏈接,使進(jìn)程可以調(diào)用不屬于其可執(zhí)行代碼的函數(shù)。
另外,在計(jì)算機(jī)10上還設(shè)置有接口數(shù)據(jù)文件13,計(jì)算機(jī)10通過(guò)接口數(shù)據(jù)文件13實(shí)現(xiàn)與不同的讀卡設(shè)備連接。例如,如果讀卡設(shè)備是支持api接口的讀卡設(shè)備,則計(jì)算機(jī)10需要使用api接口數(shù)據(jù)文件與讀卡設(shè)備進(jìn)行數(shù)據(jù)交互,如果讀卡設(shè)備是支持hid接口的讀卡設(shè)備,則計(jì)算機(jī)10需要使用hid的接口數(shù)據(jù)文件與讀卡設(shè)備進(jìn)行數(shù)據(jù)交互。因此,接口數(shù)據(jù)文件13可以是一個(gè)數(shù)據(jù)庫(kù),包含有支持多種不同類型的讀卡設(shè)備的接口數(shù)據(jù)文件。
操作函數(shù)14是針對(duì)不同的密鑰介質(zhì)使用的函數(shù),當(dāng)計(jì)算機(jī)10需要對(duì)其密鑰介質(zhì)上的數(shù)據(jù)時(shí),需要在集成開發(fā)環(huán)境平臺(tái)11上設(shè)置包含有函數(shù)關(guān)鍵字的指令,當(dāng)運(yùn)行這些指令時(shí)可以根據(jù)函數(shù)關(guān)鍵字調(diào)用對(duì)應(yīng)的操作函數(shù)34,從而執(zhí)行對(duì)密鑰介質(zhì)的數(shù)據(jù)交互工作。
需要測(cè)試的智能卡25放置在讀卡設(shè)備21上,讀卡設(shè)備21與計(jì)算機(jī)10連接,計(jì)算機(jī)10上的集成開發(fā)環(huán)境平臺(tái)11通過(guò)接口數(shù)據(jù)文件13實(shí)現(xiàn)與讀卡設(shè)備21的連接,從而實(shí)現(xiàn)與智能卡25的數(shù)據(jù)交互,例如向智能卡發(fā)送指令,讀取智能卡25所存儲(chǔ)的數(shù)據(jù)等。
另外,卡類密鑰介質(zhì)26需要放置在讀卡設(shè)備26上,讀卡設(shè)備26也是通過(guò)接口數(shù)據(jù)文件13實(shí)現(xiàn)與計(jì)算機(jī)10的數(shù)據(jù)交互,計(jì)算機(jī)10通過(guò)讀卡設(shè)備22讀取卡類密鑰介質(zhì)10所存儲(chǔ)的數(shù)據(jù),或者向卡類密鑰介質(zhì)26發(fā)送數(shù)據(jù)。當(dāng)然,其他的密鑰介質(zhì),例如加密硬盤27則通過(guò)操作函數(shù)14實(shí)現(xiàn)與計(jì)算機(jī)10的數(shù)據(jù)交換。
下面結(jié)合圖2介紹對(duì)智能卡進(jìn)行測(cè)試的流程。首先,執(zhí)行步驟s1,將第一讀卡設(shè)備連接至計(jì)算機(jī),并將待測(cè)試的智能卡放置在第一讀卡設(shè)備上。此時(shí),測(cè)試人員需要實(shí)現(xiàn)計(jì)算機(jī)與讀卡設(shè)備的連接,如圖3所示,測(cè)試人員首先需要在計(jì)算機(jī)上發(fā)出選擇讀卡設(shè)備的指令,例如,在集成開發(fā)環(huán)境平臺(tái)的界面上發(fā)出選擇讀卡設(shè)備的指令,計(jì)算機(jī)則執(zhí)行步驟s11,獲取選取讀卡設(shè)備的指令。例如,在集成開發(fā)環(huán)境平臺(tái)上顯示多種不同讀卡設(shè)備的名稱,測(cè)試人員可以根據(jù)讀卡設(shè)備的名稱選取一個(gè)讀卡設(shè)備。
在獲取測(cè)試人員發(fā)出的選取讀卡設(shè)備的指令后,執(zhí)行步驟s12,判斷集成開發(fā)環(huán)境平臺(tái)上是否存儲(chǔ)有被選取的讀卡設(shè)備的對(duì)應(yīng)的接口數(shù)據(jù)文件,如果沒有存儲(chǔ)對(duì)應(yīng)的接口數(shù)據(jù)文件,則執(zhí)行步驟s13,集成開發(fā)環(huán)境平臺(tái)加載動(dòng)態(tài)庫(kù),動(dòng)態(tài)庫(kù)中包含有多種讀卡設(shè)備的使用的代碼和數(shù)據(jù)的庫(kù),并且提供動(dòng)態(tài)鏈接,集成開發(fā)環(huán)境平臺(tái)可以執(zhí)行步驟s14,使用動(dòng)態(tài)庫(kù)提供的鏈接調(diào)用接口數(shù)據(jù)文件,如基于pc/sc模式的讀卡設(shè)備或者使用api接口的讀卡設(shè)備、使用hid接口的讀卡設(shè)備等。
如果步驟s12中,判斷集成開發(fā)環(huán)境平臺(tái)上存儲(chǔ)有被選取的讀卡設(shè)備對(duì)應(yīng)的接口數(shù)據(jù)文件,則直接執(zhí)行步驟s14,調(diào)用相應(yīng)的接口數(shù)據(jù)文件??梢姡谶B接讀卡設(shè)備時(shí),首先需要判斷讀卡設(shè)備屬于哪種類型,是基于pc/sc模式的讀卡設(shè)備、使用api接口的讀卡設(shè)備還是使用hid接口的讀卡設(shè)備,如果集成開發(fā)環(huán)境平臺(tái)不支持該類設(shè)備或該讀卡設(shè)備的具體型號(hào)暫時(shí)不支持,則需要通過(guò)計(jì)算機(jī)的外接接口獲取對(duì)應(yīng)的接口數(shù)據(jù)文件,以實(shí)現(xiàn)計(jì)算機(jī)與讀卡設(shè)備的連接。這樣,集成開發(fā)環(huán)境平臺(tái)可以方便的擴(kuò)展兼容的讀卡設(shè)備的類型,從而滿足不同類型的智能卡的檢查需求。
執(zhí)行步驟s1后,執(zhí)行步驟s2,進(jìn)行密鑰介質(zhì)的連接配置。本實(shí)施例中,密鑰介質(zhì)是存儲(chǔ)有智能卡密鑰的介質(zhì),例如,智能卡是具有網(wǎng)銀功能的銀行卡,則密鑰介質(zhì)可以是存儲(chǔ)有網(wǎng)銀密碼的u盾,也就是加密硬盤,因此步驟s2中需要實(shí)現(xiàn)計(jì)算機(jī)與加密硬盤之間的連接配置并實(shí)現(xiàn)與密鑰介質(zhì)之間的數(shù)據(jù)交互。
參見圖4,與密鑰介質(zhì)進(jìn)行連接配置時(shí),首先執(zhí)行步驟s21,獲取選取密鑰介質(zhì)的指令,例如在集成開發(fā)環(huán)境平臺(tái)上顯示多個(gè)備選的密鑰介質(zhì)的名稱,由測(cè)試人員選擇其中一個(gè)密鑰介質(zhì)。然后,執(zhí)行步驟s22,判斷集成開發(fā)環(huán)境平臺(tái)上是存儲(chǔ)有該密鑰介質(zhì)對(duì)應(yīng)的操作函數(shù),如果不存儲(chǔ)有相應(yīng)的操作函數(shù),則執(zhí)行步驟s23,加載相應(yīng)的函數(shù)關(guān)鍵字,例如,在集成開發(fā)環(huán)境平臺(tái)的相應(yīng)指令上添加新的操作函數(shù)的關(guān)鍵字,本實(shí)施例中,函數(shù)的關(guān)鍵字可以是函數(shù)名或者函數(shù)類型名稱等表征函數(shù)特征的信息。一個(gè)具體的方案是,如果密鑰介質(zhì)是加密機(jī)類設(shè)備,則需要在集成開發(fā)環(huán)境平臺(tái)的配置環(huán)境中設(shè)置加密機(jī)的端口和ip地址、加密機(jī)延時(shí)時(shí)間、長(zhǎng)鏈接或短鏈接等配置內(nèi)容。
最后,執(zhí)行步驟s24,根據(jù)加載的函數(shù)關(guān)鍵字調(diào)用相應(yīng)的操作函數(shù),例如,集成開發(fā)環(huán)境平臺(tái)執(zhí)行程序指令時(shí),根據(jù)程序指令調(diào)用包含有函數(shù)關(guān)鍵字的函數(shù),則可以執(zhí)行調(diào)用相應(yīng)函數(shù)的操作。如果步驟s22中,判斷集成開發(fā)環(huán)境平臺(tái)上保存有對(duì)應(yīng)的操作函數(shù),則執(zhí)行步驟s24,直接調(diào)用相應(yīng)的操作函數(shù)。
優(yōu)選的,調(diào)用的操作函數(shù)中,腳本命令行關(guān)鍵字函數(shù)設(shè)置在apdu命令行之后,也就是采用的是關(guān)鍵字函數(shù)后置方式,即腳本命令行關(guān)鍵字函數(shù)的前面放置與ic卡交互的關(guān)鍵apdu命令和命令內(nèi)容中的變量字段,這樣能夠最大程度地利于對(duì)腳本的糾錯(cuò)檢查,也有利于對(duì)腳本文件的排版工作。
當(dāng)然,上述情況只是針對(duì)密鑰介質(zhì)是加密硬盤的情況,如果密鑰介質(zhì)不是加密硬盤,而是卡類密鑰介質(zhì),也就是密鑰介質(zhì)是另一張智能卡,則需要增加一個(gè)讀卡設(shè)備用于連接該卡類密鑰介質(zhì)。通常,卡類密鑰介質(zhì)也被稱為母卡,母卡上存儲(chǔ)有待測(cè)試的智能卡的密鑰,集成開發(fā)環(huán)境平臺(tái)需要先從母卡上獲取待測(cè)試的智能卡的密鑰后才能讀取待測(cè)試的智能卡的數(shù)據(jù)。
因此,針對(duì)使用母卡作為密鑰介質(zhì)的情況,計(jì)算機(jī)上需要連接多一個(gè)讀卡設(shè)備,也就是讀卡設(shè)備22,作為密鑰介質(zhì)26的母卡將放置在讀卡設(shè)備22上。此時(shí),集成開發(fā)環(huán)境平臺(tái)11需要判斷是否存儲(chǔ)有讀卡設(shè)備22對(duì)應(yīng)的接口數(shù)據(jù)文件,如果沒有,則需要拓展動(dòng)態(tài)庫(kù)12的接口,并且加載讀卡設(shè)備22對(duì)應(yīng)的接口數(shù)據(jù)文件,并且加載支持該母卡操作函數(shù)的函數(shù)關(guān)鍵字。
在建立與待測(cè)試的智能卡的連接以及密鑰介質(zhì)的連接以后,執(zhí)行步驟s3,運(yùn)行集成開發(fā)環(huán)境平臺(tái),并且執(zhí)行步驟s4,選擇需要測(cè)試的智能卡所在的讀卡設(shè)備,也就是選擇相應(yīng)的讀卡設(shè)備的名稱。接著,集成開發(fā)環(huán)境將執(zhí)行步驟s5,加載測(cè)試腳本文件以及所需要的測(cè)試數(shù)據(jù),然后,執(zhí)行步驟s6,在集成開發(fā)環(huán)境平臺(tái)中選擇不同的操作模式運(yùn)行腳本任務(wù)。如果在腳本運(yùn)行過(guò)程中出現(xiàn)異常,可以靈活修改腳本內(nèi)容,已到達(dá)預(yù)期的測(cè)試目的。最后,執(zhí)行步驟s7,根據(jù)與待測(cè)試的智能卡的數(shù)據(jù)交互結(jié)果完成對(duì)智能卡的測(cè)試操作,并生成測(cè)試報(bào)告。
智能卡測(cè)試設(shè)備實(shí)施例:
智能卡的測(cè)試設(shè)備可以是計(jì)算機(jī),并且,計(jì)算機(jī)上設(shè)置有處理器,處理可以執(zhí)行運(yùn)行集成開發(fā)環(huán)境平臺(tái)的程序指令,并且可以通過(guò)動(dòng)態(tài)庫(kù)調(diào)用多種不同的接口數(shù)據(jù)文件,從而擴(kuò)展集成開發(fā)環(huán)境平臺(tái)所兼容的讀卡設(shè)備的類型。此外,集成開發(fā)環(huán)境平臺(tái)還可以加載函數(shù)關(guān)鍵字等,拓展所兼容的密鑰介質(zhì)的類型。
因此,智能卡的測(cè)試設(shè)備上的處理器執(zhí)行程序指令后,可以實(shí)現(xiàn)上述的智能卡測(cè)試方法,即執(zhí)行圖2的步驟s1至步驟s7,并且能夠執(zhí)行圖3的步驟s11至步驟s14,還能夠執(zhí)行圖4的步驟s21至步驟s24。
計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)實(shí)施例:
本實(shí)施例的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是非易失性存儲(chǔ)器,如eeprom或者flash存儲(chǔ)器、鐵電存儲(chǔ)器等,也可以是移動(dòng)硬盤等,且存儲(chǔ)介質(zhì)上存儲(chǔ)有程序指令,這些程序指令被處理器執(zhí)行后,可以實(shí)現(xiàn)上述的智能卡測(cè)試方法。
可見,應(yīng)用本發(fā)明對(duì)智能卡進(jìn)行測(cè)試,可以讓智能卡測(cè)試設(shè)備連接多款讀卡設(shè)備實(shí)現(xiàn)對(duì)智能卡的訪問(wèn)交互,當(dāng)出現(xiàn)一款新的讀卡設(shè)備時(shí),可以通過(guò)加載升級(jí)動(dòng)態(tài)庫(kù)的方式實(shí)現(xiàn)對(duì)新的讀卡設(shè)備的兼容。此外,本發(fā)明的方法還可以實(shí)現(xiàn)對(duì)不同密鑰介質(zhì)的訪問(wèn),例如可以訪問(wèn)加密機(jī)、遠(yuǎn)程訪問(wèn)vpn連接、訪問(wèn)本地密鑰母卡、psam卡、認(rèn)證卡等類型的密鑰介質(zhì),如果出現(xiàn)新類型的密鑰介質(zhì),也可以通過(guò)加載函數(shù)關(guān)鍵字的方式兼容新的密鑰介質(zhì)。
同時(shí),本發(fā)明的方法可以靈活訪問(wèn)不同格式的制卡測(cè)試數(shù)據(jù),而不是只能通過(guò)集成開發(fā)環(huán)境平臺(tái)調(diào)用固定的腳本命令來(lái)操作智能卡,還可以通過(guò)編輯腳本命令靈活動(dòng)態(tài)地訪問(wèn)變量數(shù)據(jù),實(shí)現(xiàn)對(duì)不同數(shù)據(jù)的測(cè)試和智能卡的測(cè)試。
對(duì)智能卡的操作模式也設(shè)計(jì)了多種方式,包含手動(dòng)觸發(fā)、自動(dòng)觸發(fā)、調(diào)用批量腳本操作或收到單步腳本調(diào)制的操作方式。在集成開發(fā)環(huán)境平臺(tái)中的腳本設(shè)計(jì)架構(gòu),由于采用了關(guān)鍵字函數(shù)后置的方式,即腳本命令行關(guān)鍵字函數(shù)的前面放置與智能卡交互的關(guān)鍵apdu命令和命令內(nèi)容中的變量字段,最大程度地利于對(duì)腳本的糾錯(cuò)檢查和對(duì)腳本的排版。
最后,本發(fā)明采用靈活的錯(cuò)誤分析機(jī)制,在測(cè)試結(jié)果上,進(jìn)行了簡(jiǎn)明扼要的顯示,同時(shí)可以通過(guò)報(bào)錯(cuò)信息關(guān)聯(lián)到對(duì)應(yīng)的交互運(yùn)行日志和運(yùn)行腳本,能快速對(duì)測(cè)試報(bào)錯(cuò)情況進(jìn)行分析。
當(dāng)然,上述實(shí)施例僅僅是本發(fā)明優(yōu)選的實(shí)施方式,實(shí)際應(yīng)用時(shí),本發(fā)明還有更多的改變,例如,兼容的讀卡設(shè)備的類型的改變、加載的函數(shù)關(guān)鍵字的改變等,這樣的改變也能實(shí)現(xiàn)本發(fā)明的目的。