音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

詳解CPU卡的接口特性、傳輸協(xié)議與讀寫程序設(shè)計(jì)

出處:互聯(lián)網(wǎng) 發(fā)布于:2011-09-04 13:59:39

  CPU卡也稱智能卡,卡內(nèi)的集成電路中帶有微處理器CPU、存儲(chǔ)單元(包括隨機(jī)存儲(chǔ)器RAM、程序存儲(chǔ)器ROM以及芯片操作系統(tǒng)COS。裝有COS的CPU卡相當(dāng)于一臺(tái)微型計(jì)算機(jī),不僅具有數(shù)據(jù)存儲(chǔ)功能,同時(shí)具有命令處理和數(shù)據(jù)安全保護(hù)等功能。要了解什么是CPU卡,就必須從IC卡說起。

  IC卡是集成電路卡的簡稱,是鑲嵌集成電路芯片的塑料卡片,其外形和尺寸都遵循國際標(biāo)準(zhǔn)(ISO)。芯片一般采用不易揮發(fā)性的存儲(chǔ)器(ROM、EEPROM)、保護(hù)邏輯電路、甚至帶微處理器CPU。帶有CPU的IC卡才是真正的智能卡。按照嵌入集成電路芯片的形式和芯片類型的不同IC卡大致可分為接觸式,非接觸式、雙界面卡。CPU卡既有接觸式也有非接觸式的。非加密存儲(chǔ)器卡:卡內(nèi)的集成電路芯片主要是EEPROM,具有數(shù)據(jù)存儲(chǔ)功能,不具有數(shù)據(jù)處理功能和硬件加密功能。   邏輯加密存儲(chǔ)器卡:在非加密存儲(chǔ)器卡的基礎(chǔ)上增加了加密邏輯電路,加密邏輯電路通過校驗(yàn)密碼方式來保護(hù)卡內(nèi)的數(shù)據(jù)對(duì)于外部訪問是否開放,但只是低層次的安全保護(hù),無法防范惡意性的攻擊。   由于沒有掌握關(guān)鍵的生產(chǎn)工藝,原來我國設(shè)計(jì)的CPU卡芯片一直在國外生產(chǎn)。這次我國自主設(shè)計(jì)、制造的CPU卡容量達(dá)到了128K。   CPU卡可適用于金融、保險(xiǎn)、交警、政府行業(yè)等多個(gè)領(lǐng)域,具有用戶空間大、讀取速度快、支持一卡多用等特點(diǎn),并已經(jīng)通過中國人民銀行和國家商秘委的。

  1 CPU卡的接口特性

  1.1 觸點(diǎn)定義

  觸點(diǎn)的定義遵循ISO7816-2的規(guī)定,如圖1所示。

    符號(hào)說明如表1所列。

符  號(hào) 說  明 符  號(hào) 說  明
C1 電源電壓(Vcc) C5 地(GND)
C2 復(fù)位信號(hào)(RST) C6 不使用
C3 時(shí)鐘信號(hào)(CLK) C7 輸入輸出(I/O)
C4 不使用 C8 不使用

  表1 符號(hào)說明

  1.2 字符幀

  數(shù)據(jù)在I/O上以圖2所示的字符幀方式傳輸。

  每個(gè)位寬是1個(gè)etu,etu = 372/f。在此處,f = 3.57 MHz。

  起始位由接收端通過對(duì)I/O周期采樣獲得,采樣周期應(yīng)小于0.2 etu。2個(gè)連續(xù)字符起始位上升沿之間的間隔時(shí)間等于(10±0.2)etu加上1個(gè)保護(hù)時(shí)間(少2個(gè)etu)。在保護(hù)時(shí)間內(nèi),卡與終端都應(yīng)處于接收模式(I/O為高電平狀態(tài))。如果卡或終端作為接收方檢測出奇偶錯(cuò)誤,則I/O被置為低電平,以向發(fā)送方表明出現(xiàn)錯(cuò)誤。

  1.3 卡操作

  卡操作的步驟如下:

  ① 將卡插入終端接口設(shè)備,使兩者的觸點(diǎn)相接并激活觸點(diǎn);

  ② 將卡復(fù)位,建立卡與終端間的通信;

 ?、?執(zhí)行操作;

 ?、?釋放觸點(diǎn),并從接口設(shè)備取出卡片。

  以下是除第③步(執(zhí)行操作)以外,各步的時(shí)序要求。

  (1)觸點(diǎn)激活

  時(shí)序如圖3所示。

  (2)卡復(fù)位

  卡利用低電平復(fù)位來完成異步復(fù)位應(yīng)答,隨著觸點(diǎn)的激活,終端將進(jìn)行一個(gè)冷復(fù)位并從卡獲得復(fù)位應(yīng)答。冷復(fù)位時(shí)序如圖4所示。

  冷復(fù)位過程之后,如果收到的復(fù)位應(yīng)答信號(hào)不滿足標(biāo)準(zhǔn)的規(guī)定,終端將啟動(dòng)一個(gè)熱復(fù)位并從卡獲得復(fù)位響應(yīng)。熱復(fù)位時(shí)序如圖5所示。

  在實(shí)際程序設(shè)計(jì)時(shí),由Reset子程序?qū)崿F(xiàn)觸點(diǎn)激活和卡復(fù)位。

  (3)觸點(diǎn)釋放時(shí)序

  觸點(diǎn)釋放時(shí)序過程如圖6所示。

  2 傳輸協(xié)議與卡命令處理程序

  ISO7816-4及中國金融集成電路(IC)卡規(guī)范所規(guī)定的異步半雙工傳輸協(xié)議,是關(guān)于終端為實(shí)現(xiàn)傳輸控制和特殊控制而發(fā)出的命令的結(jié)構(gòu)及其處理過程,包括了兩種協(xié)議:字符傳輸協(xié)議(T = 0)和塊傳輸協(xié)議(T = 1)。本文著重討論字符傳輸協(xié)議(T = 0)協(xié)議,它是IC卡推薦使用的通信協(xié)議。

  2.1 命 令

  命令包含1個(gè)連續(xù)4字節(jié)的命令頭,用CLA、INS、P1和P2以及1個(gè)可變長度的條件體來表示。

  命令頭定義如下:

  ◇ CLA:指令類別,除"FF"外的任何值;

  ◇ INS:在指令類別中的指令碼,當(dāng)位是"0",并且高位半字節(jié)既不是"6"也不是"9"時(shí),INS才有效;

  ◇ P1、P2完成INS的參數(shù)字節(jié)。

  條件體定義如下:

  ◇ Lc(發(fā)送數(shù)據(jù)長度)占1個(gè)字節(jié),在命令中定義為發(fā)送數(shù)據(jù)的字節(jié)數(shù),取值范圍是1~255。

  ◇ Data為將要發(fā)送的命令數(shù)據(jù)域,字節(jié)數(shù)由Lc定義。

  ◇ Le (接收數(shù)據(jù)長度)占1個(gè)字節(jié),指出命令響應(yīng)中預(yù)期的數(shù)據(jù)字節(jié)數(shù)。Le的取值范圍是0~255。如果Le=0,預(yù)期數(shù)據(jù)字節(jié)的長度是256。

  可能的命令結(jié)構(gòu)的4種情況定義如表2所列。

情  況

結(jié)  構(gòu)

1 CLA INS P1 P2
2 CLA INS P1 P2 Le
3 CLA INS P1 P2 Lc Data
4 CLA INS P1 P2 Lc Data Le

  表2

  命令全部由終端應(yīng)用層(TAL)初始化。它通過終端傳輸層(TTL)向卡發(fā)送1個(gè)由5個(gè)字節(jié)組成的命令頭,并等待一個(gè)過程字節(jié)。

  2.2 過程字節(jié)

  卡收到命令后,緊接著返回一個(gè)過程字節(jié)給TTL,指明下一步該作什么,如表3所列。

序 號(hào) 過程字節(jié)值

步    驟

(1) 與INS字節(jié)相同 所有余下的數(shù)據(jù)將由TTL傳送或TTL將準(zhǔn)備接收來自卡所剩的數(shù)據(jù)
(2) “60” TTL將提供額外工作等時(shí)間
(3) “6X”或“9X”,除“60”之外(過程字節(jié)或狀態(tài)碼SW1) TTL將等待下一個(gè)過程字節(jié)或狀態(tài)碼SW2

  表3

  在(1)、(2)情況中,TTL完成動(dòng)作后將等待另一個(gè)過程字節(jié)。在(3)情況中,第二個(gè)過程字節(jié)或狀態(tài)碼(SW2)被收到后,TTL將做以下事情:

  ◇ 如果過程字節(jié)為"61",TTL將發(fā)送一個(gè)長度(P3)為"XX"的得到響應(yīng)命令(GET RESPONSE)給卡,"XX"為SW2的值。GET RESPONSE命令僅適用于T = 0協(xié)議。命令報(bào)文的結(jié)構(gòu)如表4所列。

CLA “0x”,x指明通道號(hào)
INS “C0”
P1 “00”
P2 “00”預(yù)期
Le 預(yù)期數(shù)據(jù)的長度

  表4

  ◇ 如果過程字節(jié)為"6C",TTL將立即重發(fā)前一個(gè)命令的命令頭給卡,它的P3值用"XX"代替。"XX"是SW2的值。

  ◇ 如果過程字節(jié)是"6X"(除"60"、"61"及"6C"之外)或"9X",與前兩者TTL自己處理不同,TTL將通過命令響應(yīng)返回狀態(tài)碼給上一層--終端應(yīng)用層(TAL),由TAL處理,并等待下一個(gè)命令。

  2.3 卡命令處理程序流程圖

  圖 7 是卡命令處理程序,即終端與卡的信息交互過程的流程圖。

  以下是引腳說明。

  ECPU:決定卡的CLK觸點(diǎn)上是否有CLK信號(hào)的引腳;

  ICVCC:終端與卡的Vcc觸點(diǎn)相接觸的引腳;

  ICIO: 終端與卡的I/O觸點(diǎn)相接觸的引腳;

  ICCLK:終端與卡的CLK觸點(diǎn)相接觸的引腳;

  ICRST:終端與卡的RST觸點(diǎn)相接觸的引腳。

  以下是程序中函數(shù)介紹。

  ◇ void isr_timer1(void) interrupt 3:定時(shí)器1中斷子程序,用于按位發(fā)送和接收數(shù)據(jù)字節(jié);

  ◇ void Snd(void): 發(fā)送數(shù)據(jù)子程序,由定時(shí)器1實(shí)現(xiàn);

  ◇ void Rcv(BYTE bytenr,BYTE *Buffer):接收數(shù)據(jù)子程序(參數(shù)含義分別是:接收數(shù)據(jù)字節(jié)數(shù)、接收數(shù)據(jù)的存放處),由定時(shí)器1實(shí)現(xiàn);

  ◇ 函數(shù)1 void Reset(BYTE *len, BYTE *resp):復(fù)位子程序(參數(shù)含義分別是:返回復(fù)位響應(yīng)數(shù)據(jù)的長度、復(fù)位響應(yīng)數(shù)據(jù));

  ◇ 函數(shù)2 void Power_off(void):觸點(diǎn)釋放子程序;

  ◇ 函數(shù)3 WORD CPUC_Cmd(BYTE len,BYTE* comm, BYTE *lenr, BYTE* resp):CPU卡命令子程序(參數(shù)含義分別是:發(fā)送命令長度、發(fā)送命令、返回字節(jié)數(shù)、返回?cái)?shù)據(jù)),函數(shù)返回狀態(tài)字節(jié)SW1SW2。


  
關(guān)鍵詞:接口

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動(dòng)力!意見一經(jīng)采納,將有感恩紅包奉上哦!