讀卡器評(píng)估小議
文章出處:http://m.dipdnbxp.cn 作者:不詳 人氣: 發(fā)表時(shí)間:2011年11月04日
[文章內(nèi)容簡(jiǎn)介]:讀卡器評(píng)估小議
客觀情況
本文中的客觀情況描述了如何評(píng)價(jià)一個(gè)智能卡讀卡器,以便能區(qū)分好的讀卡器和差的讀卡器。以前沒有多少組織懂得如何評(píng)價(jià)一個(gè)讀卡器的好壞,主要是因?yàn)檫^去這些關(guān)于讀卡器的資料都掌握在制造商手中;現(xiàn)在有許多相互關(guān)聯(lián)的而又含糊不清的標(biāo)準(zhǔn)使很多組織都糾纏于這些標(biāo)準(zhǔn)的定義和教會(huì)其他廠家如何生產(chǎn)出具有競(jìng)爭(zhēng)力的產(chǎn)品,因此這些組織能很好的理解與智能卡工業(yè)緊密相關(guān)的標(biāo)準(zhǔn)以及了解如何評(píng)價(jià)智能卡讀卡器也就不足為奇了。但不管怎樣,注意在許多情況下如何指導(dǎo)那些錯(cuò)誤理解部分說明的讀卡器廠商,并能舉例說明評(píng)價(jià)讀卡器的困難性是非常重要的,也是本文所要闡明的。
本文中還從正反兩方面論述了如何設(shè)計(jì)出有競(jìng)爭(zhēng)力的讀卡器的設(shè)計(jì)準(zhǔn)則。因此本文特意給出盡可能多的細(xì)節(jié)使你能夠評(píng)估讀卡器并時(shí)常停止解釋它是如何實(shí)現(xiàn)的。
與讀卡器相關(guān)的標(biāo)準(zhǔn)
ISO-7816 是一個(gè)非常重要的,所有的MCU智能卡都必須遵循的讀卡器標(biāo)準(zhǔn)。已經(jīng)發(fā)現(xiàn)即使知名的卡制造商所造出的卡也不是嚴(yán)格按照規(guī)范進(jìn)行通信。讀卡器使用這個(gè)規(guī)范進(jìn)行通信是很重要的,但又不是很好,因?yàn)榇鎯?chǔ)卡并不是按照這種規(guī)范通信的,而一個(gè)好的讀卡器必須能處理來自領(lǐng)先的卡制造商的不遵循這個(gè)規(guī)范的卡片。
EMV 標(biāo)準(zhǔn)不只是一個(gè)Europay-Visa-Master的卡片的規(guī)范,它還影響到智能卡,POS終端和應(yīng)用程序。不管怎樣EMV卡片可以與PC讀卡器一起使用在家庭銀行,互聯(lián)網(wǎng)或電子商務(wù)應(yīng)用中,其它有很多方面也會(huì)應(yīng)用到讀卡器。
PC/SC 規(guī)范也是一個(gè)很重要的規(guī)范。它定義了應(yīng)用與計(jì)算機(jī)操作系統(tǒng)間的接口以及讀卡器驅(qū)動(dòng)程序與計(jì)算機(jī)操作系統(tǒng)的接口。這個(gè)標(biāo)準(zhǔn)不僅僅局限于Windows,也可用于Linux, Unix, Mac 等。
這種問題越解決越復(fù)雜,這些標(biāo)準(zhǔn)都不是固定的,經(jīng)常會(huì)發(fā)布新的版本。
標(biāo)準(zhǔn)1:讀卡器制造商的背景
能制造好的讀卡器的公司通常都是專門并且深入了解讀卡器技術(shù)的公司。因此他們通常是做智能卡芯片的操作系統(tǒng)和智能卡讀卡器的公司或從這些產(chǎn)業(yè)出來的人。這些人對(duì)這些標(biāo)準(zhǔn)和規(guī)范都很了解并且接觸過所有類型的卡片和讀卡器。對(duì)讀卡器市場(chǎng)來說,是在1999年最后一季度的時(shí)候開始起飛的,所以估計(jì)會(huì)有很多機(jī)會(huì)主義者想進(jìn)入讀卡器的業(yè)務(wù)中來。對(duì)他們來說困難不在于技術(shù)方面而在于對(duì)標(biāo)準(zhǔn)和規(guī)范的理解,以及與他們所測(cè)試的卡片的相關(guān)知識(shí)。
標(biāo)準(zhǔn)2:存儲(chǔ)卡讀卡器的性能
從讀卡器所支持的存儲(chǔ)卡的種類可以看出并證明讀卡器制造商是否擁有相關(guān)的知識(shí)。存儲(chǔ)卡制造過程只是一個(gè)嵌入的過程-從芯片生產(chǎn)商購(gòu)買芯片或模塊并將它嵌入卡片中??ㄆ圃焐掏ǔ=o卡片分配他們自己的零件號(hào)碼或模塊,對(duì)大家來說難度不在于工藝本身。 存儲(chǔ)卡不遵循ISO-7816標(biāo)準(zhǔn),但需要讀卡器能處理存儲(chǔ)卡中的每個(gè)字節(jié)。 同MCU卡(US$1.50 – US$10)比起來,存儲(chǔ)卡(從 US$0.30 到 US$1.00)的成本低得多。下面是一些常用的存儲(chǔ)卡:
對(duì)讀卡器來說,能使用全部存儲(chǔ)區(qū)的能力也是非常重要的方面。比如SLE4436 (EuroChip) 和 ST1333 (T2G)都是用于付費(fèi)電話的低成本的存儲(chǔ)卡。市場(chǎng)的需求為每年超過十億張卡片。 使用隨機(jī)數(shù)響應(yīng)可以進(jìn)行認(rèn)證,這能有效的將低成本的存儲(chǔ)卡變?yōu)榭扇我馐褂玫木哂忻艽a保護(hù)和數(shù)字簽名的電子錢包。由讀卡器制造商提供的讀卡器經(jīng)過鑒定的性能可以區(qū)分出哪些是專業(yè)的讀卡器廠商,哪些是非專業(yè)的讀卡器廠商。
標(biāo)準(zhǔn) 3: ISO-7816 復(fù)位應(yīng)答時(shí)間(ATR)
市場(chǎng)上有一些智能卡,包括一些名廠生產(chǎn)的卡片都沒有遵循ISO-7816中定義的應(yīng)答時(shí)間的標(biāo)準(zhǔn)。完全遵循這些規(guī)范的讀卡器在與某些卡片通信時(shí)會(huì)出現(xiàn)問題。也可能問題不是出現(xiàn)在卡片制造商,而是出現(xiàn)在芯片制造商提供的庫(kù)函數(shù)中。在這個(gè)問題上我們可以提供更多的信息。
標(biāo)準(zhǔn) 4: ISO-7816 格式符號(hào)
連續(xù)發(fā)送字節(jié)時(shí)可能先發(fā)送MSB也可能先發(fā)送LSB。符號(hào)和空格都會(huì)被解釋為邏輯1或邏輯0。 讀卡器制造商應(yīng)找到盡可能多的卡片進(jìn)行測(cè)試也是很重要的方面。
標(biāo)準(zhǔn) 5: ISO-7816額外保護(hù)時(shí)間
為了使卡片有充分的時(shí)間接收數(shù)據(jù),讀卡器必須能處理額外保護(hù)時(shí)間。如果不參照這些參數(shù)的話通常會(huì)引起與卡片通信間斷的問題-讀卡器一會(huì)兒工作,一會(huì)兒命令就出錯(cuò)誤,或有的批處理命令能執(zhí)行,而有的就不能執(zhí)行。
標(biāo)準(zhǔn)6: ISO-7816 字符間隔時(shí)間/塊等待時(shí)間
對(duì)有些命令來說讀卡器在返回?cái)?shù)據(jù)前要處理很長(zhǎng)時(shí)間。如果讀卡器或卡不遵循這個(gè)時(shí)間可能會(huì)導(dǎo)致致命的錯(cuò)誤。
標(biāo)準(zhǔn)7: ISO-7816 協(xié)議和參數(shù)選擇(PPS)
智能卡在做復(fù)位應(yīng)答后可能工作在與默認(rèn)值不同的速度和時(shí)鐘。很多讀卡器忽略了這個(gè)問題。 一些卡片制造商錯(cuò)誤的理解了這個(gè)規(guī)范,所以出現(xiàn)了讀卡器不執(zhí)行PPS的問題。一個(gè)著名的卡片和讀卡器制造商錯(cuò)誤的執(zhí)行了PPS,而另一種知名的卡則支持PPS。讀卡器由于錯(cuò)誤的速度而結(jié)束工作,不能與卡片通信。 這個(gè)錯(cuò)誤已經(jīng)通過由驅(qū)動(dòng)軟件來強(qiáng)迫讀卡器工作在正確的速度的方法解決了。但如果不使用正確版本的驅(qū)動(dòng)或不使用驅(qū)動(dòng)則還會(huì)出現(xiàn)這種問題。
一個(gè)好的讀卡器應(yīng)該能替代默認(rèn)的9600bps而使用最大115kbps的速度進(jìn)行通信。
標(biāo)準(zhǔn) 8: ISO-7816 T=0 , T=1 協(xié)議
讀卡器必須能處理T=0和T=1協(xié)議的卡片。T=0的卡片比較常見,而T=1的卡片只在某些國(guó)家使用。
標(biāo)準(zhǔn) 9: ISO-7816 APDU
ISO-7816第4部分定義了7種T=0的APDU和4種T=1的APDU。 讀卡器的驅(qū)動(dòng)程序或通信協(xié)議能夠處理所有情況也是很重要的。
標(biāo)準(zhǔn)10: ISO-7816 過程字節(jié)和狀態(tài)字處理
讀卡器必須能正確處理過程字節(jié)和狀態(tài)字。這就意味著讀卡器制造商必須能正確讀出,理解和解釋在規(guī)范中定義的標(biāo)準(zhǔn),并能夠得到用于測(cè)試的卡片。
標(biāo)準(zhǔn) 11: 讀卡器緩沖區(qū)容量
許多讀卡器制造商不能很好的理解智能卡應(yīng)用,通常使用低成本的MCU卡片。低成本的MCU通常都意味著小容量的緩沖區(qū)。這就會(huì)導(dǎo)致有些文件結(jié)構(gòu)因?yàn)椴荒軐?shù)據(jù)分割為小塊而會(huì)出現(xiàn)讀寫問題。
標(biāo)準(zhǔn)12: 軟讀卡器問題
有些讀卡器廠商為了節(jié)省MCU的成本將ISO-7816的處理過程放到了PC上。這就允許讀卡器可以使用成本很低的控制器或不使用控制器,而使用PC來控制傳輸?shù)淖止?jié)。但這種設(shè)計(jì)會(huì)有一些潛在的問題,因?yàn)橹悄芸ㄐ枰x卡器提供一些操作所需要的時(shí)間。如果在傳輸一些關(guān)鍵數(shù)據(jù)時(shí),PC處理一些優(yōu)先的中斷,這樣就可能丟失一些符號(hào)。在智能卡中如果發(fā)生這樣的問題,卡片將不作應(yīng)答,唯一的解決途徑就是將卡重新復(fù)位。這將破壞卡片所做的授權(quán)工作。依靠PC裝載和配置這種設(shè)計(jì)方法能給人正常工作的假象,但是它不會(huì)很穩(wěn)定。因此在評(píng)估過程中也許不會(huì)暴露出這種問題,但并不意味著這個(gè)問題不存在。
標(biāo)準(zhǔn)13: 非標(biāo)準(zhǔn)卡片測(cè)試
讀卡器必須能夠處理一些領(lǐng)先廠商所定義的但又不符合ISO-7816標(biāo)準(zhǔn)的卡片。
標(biāo)準(zhǔn)14: PC/SC認(rèn)證
PC/SC 規(guī)范允許A開發(fā)一個(gè)使用B制造的智能卡讀卡器運(yùn)行的應(yīng)用程序,但A不必知道B是誰(shuí)。 使用這種方案時(shí),最重要的就是如果這個(gè)應(yīng)用程序在Windows下運(yùn)行則這個(gè)讀卡器必須經(jīng)過Microsoft的認(rèn)證。除非讀卡器廠商以前經(jīng)過認(rèn)證,否則A要求讀卡器兼容PC/SC是沒有什么意義的
標(biāo)準(zhǔn)15: EMV 1級(jí)認(rèn)證
EMV 1級(jí)認(rèn)證本質(zhì)上就是確保讀卡器符合ISO-7816標(biāo)準(zhǔn)的第3部分。 這個(gè)測(cè)試方案有很多項(xiàng)目,大約有300項(xiàng)。EMV 級(jí)別 1保證讀卡器遵循ISO-7816標(biāo)準(zhǔn),使讀卡器能和所有符合ISO-7816的卡片一起工作,將來在卡片設(shè)計(jì)中將會(huì)變得更加重要。
要注意到ISO-7816是一個(gè)很復(fù)雜的規(guī)范,很多人都會(huì)曲解它,包括讀卡器制造商和卡片制造商。所以對(duì)讀卡器設(shè)計(jì)者來說在設(shè)計(jì)一個(gè)好的讀卡器之前必須充分了解要從讀卡器得到些什么。
本文關(guān)鍵詞:讀卡器評(píng)估小議
上一篇:基于S6700芯片與ISO/IEC15693標(biāo)準(zhǔn)的讀卡器設(shè)計(jì)[ 11-04 ]
下一篇:電子收費(fèi)之5.8GHz系統(tǒng)與915MHz系統(tǒng)的比較[ 11-04 ]