智能卡數(shù)據(jù)傳輸T=0傳輸協(xié)議
發(fā)布時(shí)間:2008/11/22 0:00:00 訪問(wèn)次數(shù):1467
這個(gè)傳輸協(xié)議在智能卡發(fā)展之初首先用于法國(guó),它也是第1個(gè)智能卡協(xié)議的國(guó)際標(biāo)準(zhǔn)。它開(kāi)創(chuàng)于智能卡技術(shù) 的早期,因而它的設(shè)計(jì)使用了最少量的存儲(chǔ)器并具有簡(jiǎn)單性。這項(xiàng)協(xié)議被在世界范圍內(nèi)用于gsm卡,并在所 有的智能卡協(xié)議中享有最廣泛的流行。t=0協(xié)議在iso/iec 7816-3中被標(biāo)準(zhǔn)化,另外的相容規(guī)范被包含在 csm 11.11和emv規(guī)范中。
t=0協(xié)議是面向字節(jié)的,這就是說(shuō)協(xié)議所處理的最小單位是單個(gè)字節(jié)。傳送的數(shù)據(jù)單元中含有一個(gè)頭標(biāo)、類 字節(jié)、命令字節(jié)和三個(gè)參數(shù)字節(jié)構(gòu)成。它可能跟隨著一個(gè)可選的數(shù)據(jù)部分,和被iso/iec 7816-4標(biāo)準(zhǔn)化的 apdu相反,長(zhǎng)度信息僅由參數(shù)p3提供。它或是指明命令數(shù)據(jù)或是應(yīng)答的長(zhǎng)度,它也由iso/iec 7816-3標(biāo)準(zhǔn)中 規(guī)定,參見(jiàn)圖1
圖1 t=0的一條命令的結(jié)構(gòu)
由于t=0協(xié)議是面向字節(jié)的,如果檢測(cè)到一個(gè)傳輸錯(cuò)誤,則對(duì)錯(cuò)誤字節(jié)的重傳必須立即請(qǐng)求。而字組協(xié)議 則相反,如果發(fā)現(xiàn)了差錯(cuò)則整個(gè)字組(一系列字節(jié))都必須重傳。
t=0差錯(cuò)檢測(cè)采用附在每一被傳送的字節(jié)后的奇偶校驗(yàn)位。
如果接收方檢測(cè)出一個(gè)傳輸差錯(cuò),它必須從出錯(cuò)字節(jié)的保護(hù)時(shí)間的第1位區(qū)間的中間開(kāi)始,把i/0線在一個(gè) etu持續(xù)期內(nèi)置為低電平。這樣向通信的另一方表示最近的一個(gè)字節(jié)必須重新傳送。這種字節(jié)重復(fù)的機(jī)制是 十分簡(jiǎn)單的,而其好處在于它的選擇性,只有不正確的字節(jié)才被重復(fù)。遺憾地是,這個(gè)方法也存在一個(gè)嚴(yán)重 的缺'點(diǎn),大多數(shù)ic卡接口把etu區(qū)間當(dāng)做是最小的可檢測(cè)單元,所以它們不能識(shí)別從停止位中間設(shè)定的i/0 線上的低電平。因此,標(biāo)準(zhǔn)的ic卡接口不適于t=0協(xié)議。然而,如果每1位用軟件分別接收,就不會(huì)有這個(gè)問(wèn) 題。圖2和圖3分別表明了用t=0傳輸協(xié)議,在無(wú)差錯(cuò)和有差錯(cuò)時(shí),i/0接口的信號(hào)時(shí)序圖。
圖2 用t=0傳輸協(xié)議(一字節(jié)無(wú)差錯(cuò)地經(jīng)i/0接口傳送)
圖3 t=0傳輸協(xié)議(一個(gè)數(shù)據(jù)傳輸差錯(cuò),在保護(hù)時(shí)間用i/0接口的低電平來(lái)指示)
t=0協(xié)議也允許eeprom或eprom的外部可編程電壓接通或斷開(kāi)。這可用在接收的命令字節(jié)附加個(gè)“1”并把它 作為確認(rèn)字節(jié)回送給終端。這就是為什么只允許偶數(shù)值的命令字節(jié),否則這個(gè)機(jī)制就無(wú)法工作。然而,接通 一外部可編程電壓現(xiàn)在技術(shù)上已經(jīng)廢棄,所有現(xiàn)代的智能卡微控制器都在芯片上自己產(chǎn)生編程電壓,因此我 們無(wú)需更深人討論這一主題。
保護(hù)時(shí)間的主要作用是在傳輸時(shí)把各個(gè)字節(jié)分開(kāi),使得發(fā)送者和接收者雙方有充裕的時(shí)間去執(zhí)行傳輸協(xié)議 的功能。
為了解釋t=0命令-應(yīng)答序列,讓我們假定終端發(fā)送給卡一條帶有數(shù)據(jù)部分的命令,而卡則應(yīng)答以數(shù)據(jù)和 回送代碼。終端首先發(fā)送給卡以5字節(jié)的命令頭標(biāo)、類字節(jié)、命令字節(jié)和pl、p2以及p3組成。如果它們被正 確地接收了,則卡送回一個(gè)為過(guò)程字節(jié)pb(procedure byte)形式的確認(rèn)ack(acknowledge),確認(rèn)的編碼 和收到的命令字節(jié)是相同的。收到過(guò)程字節(jié)后,終端送出由"字節(jié)表明準(zhǔn)確數(shù)量的數(shù)據(jù)字節(jié)。至此,卡已收 到了完整的命令,它可以處理它并產(chǎn)生一應(yīng)答。
如果應(yīng)答中含有2字節(jié)回送代碼之外的數(shù)據(jù),卡用一特殊的回送代碼通知終端,由sw2來(lái)表明數(shù)據(jù)量。接收 到此應(yīng)答后,終端向卡發(fā)出get response命令,它僅包括了具有要傳送的數(shù)據(jù)量的頭標(biāo)。于是卡向終端傳送 由第1條命令所產(chǎn)生的具有所請(qǐng)求的長(zhǎng)度和相應(yīng)的回送代碼的數(shù)據(jù),這樣就完成了一條命令序列。
如果一條命令發(fā)送給卡,而卡僅產(chǎn)生沒(méi)有數(shù)據(jù)部分的回送代碼。則圖4中的getresponse部分就不會(huì)發(fā)生。 因?yàn)橐瓿蛇@些作用(饋送和前一條命令有關(guān)的數(shù)據(jù))才需要應(yīng)用層的額外的命令。當(dāng)然,這里不再有協(xié)議 各層之間的嚴(yán)格界限。一條應(yīng)用層命令(getresponse)必須用在這里以支持?jǐn)?shù)據(jù)鏈路層,它對(duì)正談到的應(yīng) 用層有著某些影響。乍看起來(lái),這些似乎有點(diǎn)復(fù)雜,所以再用圖5來(lái)表明。
圖4 在命令和應(yīng)答中都有數(shù)據(jù)的典型的t=0通信過(guò)程(例如mutual authenticate命令)
t=0協(xié)議允許卡在接收頭標(biāo)后接收數(shù)據(jù)部分的單個(gè)字節(jié)。為此,卡只需要把反相的命令字節(jié)作為過(guò)程字節(jié)傳 送給終端,于是終端就傳送一個(gè)單獨(dú)的數(shù)據(jù)字節(jié),第2個(gè)數(shù)據(jù)字節(jié)是接著由卡發(fā)出的第2個(gè)過(guò)程字節(jié)。這種字 節(jié)方式的傳送可一直繼續(xù)到卡接收了數(shù)據(jù)部分的所有字節(jié),或者直到卡送出非反相的命令字節(jié),終端則將所 有剩余的字節(jié)傳送給卡,使之接收到完整的命令。單字節(jié)的傳輸過(guò)程如圖6所示。
至于對(duì)傳輸協(xié)議的考慮,用戶的根本興趣所在僅是數(shù)據(jù)傳輸率和差錯(cuò)檢測(cè)與校正機(jī)制。傳送一個(gè)包括了8位 的字節(jié),需要傳送12位,其中還有1開(kāi)始位,1奇偶校驗(yàn)位和
這個(gè)傳輸協(xié)議在智能卡發(fā)展之初首先用于法國(guó),它也是第1個(gè)智能卡協(xié)議的國(guó)際標(biāo)準(zhǔn)。它開(kāi)創(chuàng)于智能卡技術(shù) 的早期,因而它的設(shè)計(jì)使用了最少量的存儲(chǔ)器并具有簡(jiǎn)單性。這項(xiàng)協(xié)議被在世界范圍內(nèi)用于gsm卡,并在所 有的智能卡協(xié)議中享有最廣泛的流行。t=0協(xié)議在iso/iec 7816-3中被標(biāo)準(zhǔn)化,另外的相容規(guī)范被包含在 csm 11.11和emv規(guī)范中。
t=0協(xié)議是面向字節(jié)的,這就是說(shuō)協(xié)議所處理的最小單位是單個(gè)字節(jié)。傳送的數(shù)據(jù)單元中含有一個(gè)頭標(biāo)、類 字節(jié)、命令字節(jié)和三個(gè)參數(shù)字節(jié)構(gòu)成。它可能跟隨著一個(gè)可選的數(shù)據(jù)部分,和被iso/iec 7816-4標(biāo)準(zhǔn)化的 apdu相反,長(zhǎng)度信息僅由參數(shù)p3提供。它或是指明命令數(shù)據(jù)或是應(yīng)答的長(zhǎng)度,它也由iso/iec 7816-3標(biāo)準(zhǔn)中 規(guī)定,參見(jiàn)圖1
圖1 t=0的一條命令的結(jié)構(gòu)
由于t=0協(xié)議是面向字節(jié)的,如果檢測(cè)到一個(gè)傳輸錯(cuò)誤,則對(duì)錯(cuò)誤字節(jié)的重傳必須立即請(qǐng)求。而字組協(xié)議 則相反,如果發(fā)現(xiàn)了差錯(cuò)則整個(gè)字組(一系列字節(jié))都必須重傳。
t=0差錯(cuò)檢測(cè)采用附在每一被傳送的字節(jié)后的奇偶校驗(yàn)位。
如果接收方檢測(cè)出一個(gè)傳輸差錯(cuò),它必須從出錯(cuò)字節(jié)的保護(hù)時(shí)間的第1位區(qū)間的中間開(kāi)始,把i/0線在一個(gè) etu持續(xù)期內(nèi)置為低電平。這樣向通信的另一方表示最近的一個(gè)字節(jié)必須重新傳送。這種字節(jié)重復(fù)的機(jī)制是 十分簡(jiǎn)單的,而其好處在于它的選擇性,只有不正確的字節(jié)才被重復(fù)。遺憾地是,這個(gè)方法也存在一個(gè)嚴(yán)重 的缺'點(diǎn),大多數(shù)ic卡接口把etu區(qū)間當(dāng)做是最小的可檢測(cè)單元,所以它們不能識(shí)別從停止位中間設(shè)定的i/0 線上的低電平。因此,標(biāo)準(zhǔn)的ic卡接口不適于t=0協(xié)議。然而,如果每1位用軟件分別接收,就不會(huì)有這個(gè)問(wèn) 題。圖2和圖3分別表明了用t=0傳輸協(xié)議,在無(wú)差錯(cuò)和有差錯(cuò)時(shí),i/0接口的信號(hào)時(shí)序圖。
圖2 用t=0傳輸協(xié)議(一字節(jié)無(wú)差錯(cuò)地經(jīng)i/0接口傳送)
圖3 t=0傳輸協(xié)議(一個(gè)數(shù)據(jù)傳輸差錯(cuò),在保護(hù)時(shí)間用i/0接口的低電平來(lái)指示)
t=0協(xié)議也允許eeprom或eprom的外部可編程電壓接通或斷開(kāi)。這可用在接收的命令字節(jié)附加個(gè)“1”并把它 作為確認(rèn)字節(jié)回送給終端。這就是為什么只允許偶數(shù)值的命令字節(jié),否則這個(gè)機(jī)制就無(wú)法工作。然而,接通 一外部可編程電壓現(xiàn)在技術(shù)上已經(jīng)廢棄,所有現(xiàn)代的智能卡微控制器都在芯片上自己產(chǎn)生編程電壓,因此我 們無(wú)需更深人討論這一主題。
保護(hù)時(shí)間的主要作用是在傳輸時(shí)把各個(gè)字節(jié)分開(kāi),使得發(fā)送者和接收者雙方有充裕的時(shí)間去執(zhí)行傳輸協(xié)議 的功能。
為了解釋t=0命令-應(yīng)答序列,讓我們假定終端發(fā)送給卡一條帶有數(shù)據(jù)部分的命令,而卡則應(yīng)答以數(shù)據(jù)和 回送代碼。終端首先發(fā)送給卡以5字節(jié)的命令頭標(biāo)、類字節(jié)、命令字節(jié)和pl、p2以及p3組成。如果它們被正 確地接收了,則卡送回一個(gè)為過(guò)程字節(jié)pb(procedure byte)形式的確認(rèn)ack(acknowledge),確認(rèn)的編碼 和收到的命令字節(jié)是相同的。收到過(guò)程字節(jié)后,終端送出由"字節(jié)表明準(zhǔn)確數(shù)量的數(shù)據(jù)字節(jié)。至此,卡已收 到了完整的命令,它可以處理它并產(chǎn)生一應(yīng)答。
如果應(yīng)答中含有2字節(jié)回送代碼之外的數(shù)據(jù),卡用一特殊的回送代碼通知終端,由sw2來(lái)表明數(shù)據(jù)量。接收 到此應(yīng)答后,終端向卡發(fā)出get response命令,它僅包括了具有要傳送的數(shù)據(jù)量的頭標(biāo)。于是卡向終端傳送 由第1條命令所產(chǎn)生的具有所請(qǐng)求的長(zhǎng)度和相應(yīng)的回送代碼的數(shù)據(jù),這樣就完成了一條命令序列。
如果一條命令發(fā)送給卡,而卡僅產(chǎn)生沒(méi)有數(shù)據(jù)部分的回送代碼。則圖4中的getresponse部分就不會(huì)發(fā)生。 因?yàn)橐瓿蛇@些作用(饋送和前一條命令有關(guān)的數(shù)據(jù))才需要應(yīng)用層的額外的命令。當(dāng)然,這里不再有協(xié)議 各層之間的嚴(yán)格界限。一條應(yīng)用層命令(getresponse)必須用在這里以支持?jǐn)?shù)據(jù)鏈路層,它對(duì)正談到的應(yīng) 用層有著某些影響。乍看起來(lái),這些似乎有點(diǎn)復(fù)雜,所以再用圖5來(lái)表明。
圖4 在命令和應(yīng)答中都有數(shù)據(jù)的典型的t=0通信過(guò)程(例如mutual authenticate命令)
t=0協(xié)議允許卡在接收頭標(biāo)后接收數(shù)據(jù)部分的單個(gè)字節(jié)。為此,卡只需要把反相的命令字節(jié)作為過(guò)程字節(jié)傳 送給終端,于是終端就傳送一個(gè)單獨(dú)的數(shù)據(jù)字節(jié),第2個(gè)數(shù)據(jù)字節(jié)是接著由卡發(fā)出的第2個(gè)過(guò)程字節(jié)。這種字 節(jié)方式的傳送可一直繼續(xù)到卡接收了數(shù)據(jù)部分的所有字節(jié),或者直到卡送出非反相的命令字節(jié),終端則將所 有剩余的字節(jié)傳送給卡,使之接收到完整的命令。單字節(jié)的傳輸過(guò)程如圖6所示。
至于對(duì)傳輸協(xié)議的考慮,用戶的根本興趣所在僅是數(shù)據(jù)傳輸率和差錯(cuò)檢測(cè)與校正機(jī)制。傳送一個(gè)包括了8位 的字節(jié),需要傳送12位,其中還有1開(kāi)始位,1奇偶校驗(yàn)位和
熱門(mén)點(diǎn)擊
- 智能卡的XOR校驗(yàn)和
- 智能卡的報(bào)文鑒別碼和加密代碼和
- 智能卡操作系統(tǒng)識(shí)別命令
- 用橢圓曲線作為非對(duì)稱加密算法
- 智能卡數(shù)據(jù)傳輸T=0傳輸協(xié)議
- 智能卡生命周期的五個(gè)階段
- 智能卡的CRC校驗(yàn)和
- 智能卡數(shù)據(jù)傳輸T=1傳輸協(xié)議
- 濾波器微帶和帶狀傳輸線
- 級(jí)聯(lián)積分器梳狀(CIC)濾波器
推薦技術(shù)資料
- 羅盤(pán)誤差及補(bǔ)償
- 造成羅盤(pán)誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細(xì)]
- AMOLED顯示驅(qū)動(dòng)芯片關(guān)鍵技
- CMOS圖像傳感器技術(shù)參數(shù)設(shè)計(jì)
- GB300 超級(jí)芯片應(yīng)用需求分
- 4NP 工藝NVIDIA Bl
- GB300 芯片、NVL72
- 首個(gè)最新高端芯片人工智能服務(wù)器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究