CPU卡與M1卡不同, 他不是一種邏輯存儲卡,一張空白的CPU卡就類似于一個空白的硬盤, 什么也做不了.CPU卡使用之前必須對CPU卡進行文件系統(tǒng)的創(chuàng)建.就是建立目錄和各種類型的文件.
友我科技IC卡讀卡器web插件支持CPU卡的web操作,支持的瀏覽器有IE,Chrome,Firefox,safari,Opera以及以這些為內(nèi)核的瀏覽器,在web上CPU卡的操作分為兩種, 一個是CPU卡復(fù)位, 一個是發(fā)送APDU指令.

在CPU卡操作之前必須對CPU卡復(fù)位, CPU卡復(fù)位的web接口如下:
不需要任何參數(shù), 復(fù)位后通過回調(diào)函數(shù)返回復(fù)位字符串
回調(diào)函數(shù)返回結(jié)果:
FunctionID=17,
Result:數(shù)字,函數(shù)執(zhí)行后的返回值,
UID:自定義的序號,
CardNo:所操作的卡的卡號,16進制正常順序,
strData:復(fù)位后的返回的16進制字符串
ValData:無
參數(shù):COSHexString:要執(zhí)行的COS指令,16進制字符串。
回調(diào)函數(shù)返回執(zhí)行后的結(jié)果
回調(diào)函數(shù)返回結(jié)果:
FunctionID=19,
Result:數(shù)字,函數(shù)執(zhí)行后的返回值,
UID:自定義的序號,
CardNo:無
strData:執(zhí)行COS后的返回的16進制字符串
ValData:執(zhí)行COS指令返回的狀態(tài),10進制顯示,如:9000顯示為36864
如果多次執(zhí)行APDU指令, 需要等到上一次apdu執(zhí)行并在回調(diào)函數(shù)中返回結(jié)果后方可執(zhí)行下一條,這是可以借助UID參數(shù)來區(qū)分執(zhí)行的adpu.
如果已經(jīng)安裝了友我科技IC卡讀卡器web插件系統(tǒng),操作CPU卡,執(zhí)行APDU就非常簡單, 我們已取CPU卡隨機數(shù)為例:
首先還是復(fù)位:
function CPUReset()
{
rfidreader.Repeat=0;
rfidreader.HaltAfterSuccess=0;
rfidreader.ACPUReset();
}
回調(diào)函數(shù)返回結(jié)果:
rfidreader.onResult(function(resultdata)
{
var str;
switch(resultdata.FunctionID)
{
case 17:
if(resultdata.Result>0)
{
Resetstr =resultdata.strData;
}
else
{
str= "Error";
}
break;
}
}
);
Resetstr為復(fù)位獲得復(fù)位字符串ATR
function CPUCos()
{
rfidreader.Repeat=0;
rfidreader.HaltAfterSuccess=0;
rfidreader.CPUCOS("0084000008");
}
rfidreader.onResult(function(resultdata)
{
var str;
switch(resultdata.FunctionID)
{
case 19:
str="COS:";
if(resultdata.Result>0)
{
COSReturn=resultdata.strData;
}
else
{
str= "Error";
}
break;
}
}
);