<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 深入理解7816(4)---關(guān)于T=1

深入理解7816(4)---關(guān)于T=1

發(fā)布人:電子禪石 時(shí)間:2023-03-16 來(lái)源:工程師 發(fā)布文章

本文轉自:https://www.bbsmax.com/A/l1dyxrEA5e/  ,支持原創(chuàng ),傳播知識,僅供學(xué)習自用。

之前說(shuō)過(guò)的T=0協(xié)議,基本上相當于是透明的數據,也就是說(shuō)從應用的角度看,通過(guò)T=0傳遞的TPDU數據信息大都可以直接轉換為對應的APD命令響應數據,“字節”是T=0協(xié)議最小的數據傳輸單元。

  對于T=1協(xié)議而言,最小的數據傳輸單元是“數據塊”,這個(gè)數據塊由若干個(gè)字節組成,其中有些字節是必須的,有些字節是可選的。每個(gè)數據塊最多可以包含多少個(gè)字節(也就是數據塊的大?。┛梢酝ㄟ^(guò)三種途徑確定:

1)ATR中對應協(xié)議T=1的專(zhuān)有接口字節指出;

2)使用默認的值;

3)在數據傳輸過(guò)程中協(xié)商。

  一個(gè)數據塊其實(shí)就是一個(gè)“數據包”,其中包頭的3個(gè)字節(NAD 1字節 + PCB 1字節 + LEN 1字節)包尾1個(gè)或者2個(gè)字節(如果采用LRC校驗就是 1字節,采用CRC校驗就是 2字節)是必須的,中間的信息數據域INF則是可選的。其中NAD代表節點(diǎn)地址,基本不用,可以設置為“00”;PCB代表協(xié)議控制字節,用來(lái)指明數據塊的類(lèi)型(分為:傳遞信息域數據的I-塊,應答響應的R-塊,負責通訊參數協(xié)商的S-塊)、序列號、是否存在后續的鏈接塊、是否有校驗錯誤、額外超時(shí)等待請求、信息數據域大小的協(xié)商等。

  和T=0協(xié)議最明顯的不同是,T=1協(xié)議按照OSI的參考模型進(jìn)行了分層,分別是:物理層、數據鏈路層和應用層。物理層主要是數據字符的傳輸,數據鏈路層主要是數據塊的傳輸,而應用層主要是APDU的交互傳輸。APDU的交互與數據字符的傳輸,這些和T=0協(xié)議里面描述的大體相同,關(guān)鍵的就是數據鏈路層定義的數據塊傳輸。因為這個(gè)數據鏈路層的定義,使得T=1協(xié)議基本具備了可以實(shí)現復雜網(wǎng)絡(luò )數據傳輸的全部特征,相比而言T=0協(xié)議簡(jiǎn)直就等同于“裸傳”了。

  數據鏈路層主要進(jìn)行的是3類(lèi)數據塊的交互傳輸,基本的原則是:第一個(gè)數據塊一定是從終端發(fā)給卡片的I-塊或者S-塊;I-塊可以用R-塊或者I-塊來(lái)應答,而S-塊的請求只能用S-塊的響應來(lái)應答;I塊和R-塊會(huì )包含有“0”和“1”的序列號,序列號的初始值為“0”,重新同步之后也是再次從“0”開(kāi)始,之后在“0”和“1”之間交替切換;如果一條應用數據大于數據塊信息域的最大長(cháng)度,則需要分割為若干個(gè)鏈接的數據塊來(lái)傳輸;和T=0協(xié)議卡片發(fā)送“0x60”類(lèi)似,如果卡片需要較長(cháng)時(shí)間進(jìn)行命令處理,可以用延長(cháng)等待時(shí)間的WTX請求S-塊讓終端繼續等待;一旦傳輸過(guò)程中出現錯誤,可以通過(guò)數據塊重發(fā)、重新同步、卡片復位等動(dòng)作來(lái)進(jìn)行糾錯。

  對于各種正常和異常數據傳輸的處理,7816定義了若干的規則(rules)明確而詳細地說(shuō)明了終端和卡片在數據塊傳輸過(guò)程中應該遵循的流程。

  在實(shí)際應用中,接觸式卡片遵循7816 T=1協(xié)議的不是很多,但是非接觸的14443 T=CL協(xié)議,在數據傳輸方面和7816的T=1協(xié)議如出一轍,而且在檢測過(guò)程中,最容易出現軟件問(wèn)題的地方也正是非接觸協(xié)議這部分。


*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。



關(guān)鍵詞: 7816

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>