通過擴(kuò)展單線接口提升近場(chǎng)通訊應(yīng)用安全性和兼容性
文章出處:http://m.mjagi.com 作者: 人氣: 發(fā)表時(shí)間:2012年03月30日
摘要:本文介紹了一種近場(chǎng)通訊設(shè)備中,非接觸前端芯片CLF和安全單元SE之間的單線通信協(xié)議。該協(xié)議在典型的單線協(xié)議基礎(chǔ)上進(jìn)行擴(kuò)展,實(shí)現(xiàn)CLF和SE的實(shí)時(shí)透明傳輸,可提升近場(chǎng)通訊設(shè)備卡片模擬的應(yīng)用兼容性和安全性。
經(jīng)過多年的發(fā)展,近場(chǎng)通訊技術(shù)逐漸趨于成熟穩(wěn)定,隨著Android平臺(tái)的新款近場(chǎng)通訊智能手機(jī)的陸續(xù)上市,期盼中的近場(chǎng)通訊市場(chǎng)大門終于打開了,原來停留于紙面的各種移動(dòng)非接觸應(yīng)用構(gòu)思將一一實(shí)現(xiàn)。盡管近場(chǎng)通訊應(yīng)用通常被劃分為三類:卡片模擬、讀寫器和點(diǎn)對(duì)點(diǎn)通信,但始終被人們所關(guān)注、最吸引眼球的應(yīng)用,非移動(dòng)支付莫屬。所以說近場(chǎng)通訊本質(zhì)上是一個(gè)非接觸智能卡的應(yīng)用,無非是智能卡的載體發(fā)生了變化。從結(jié)構(gòu)化的角度出發(fā),近場(chǎng)通訊的實(shí)現(xiàn)方案采用的是雙芯片架構(gòu),即CLF(Contactless Front非接觸前端)芯片和SE(Security Element安全模塊)芯片,如圖1所示:
圖1 近場(chǎng)通訊架構(gòu)
其中CLF芯片負(fù)責(zé)處理非接觸射頻接口和通訊協(xié)議,SE芯片負(fù)責(zé)處理智能卡的應(yīng)用和數(shù)據(jù)管理。采用這種設(shè)計(jì)架構(gòu)的優(yōu)點(diǎn)在于:
1)CLF與SE雙芯片架構(gòu),容易實(shí)現(xiàn)機(jī)卡分離。CLF集成在終端上,實(shí)現(xiàn)完整的非接觸射頻接口;而智能卡應(yīng)用涉及諸多安全要求,需要發(fā)行管理而后才進(jìn)入應(yīng)用環(huán)節(jié),SE從近場(chǎng)通訊終端上分離,可以獨(dú)立于終端之外單獨(dú)發(fā)行,管理上容易保持與現(xiàn)有系統(tǒng)的一致。
2)智能卡往往是封閉應(yīng)用環(huán)境,不同地區(qū)不同應(yīng)用之間,即使是同一款智能卡,其初始化配置也會(huì)不同。CLF與SE架構(gòu),通用近場(chǎng)通訊終端可與不同的SE搭配實(shí)現(xiàn)不同的應(yīng)用需求。
3)CLF及其射頻天線集成在終端上,易于實(shí)現(xiàn)一致性的非接觸接口性能。
近場(chǎng)通訊終端實(shí)現(xiàn)卡片模擬功能,由CLF和SE聯(lián)合完成,CLF與SE之間需要定義連接接口。目前被廣泛接受的接口主要有兩種:?jiǎn)尉€協(xié)議接口SWP(ETSI TS 102 613標(biāo)準(zhǔn))和兩線接口S2C(NFC-WI接口標(biāo)準(zhǔn))。由于SWP接口和SIM卡標(biāo)準(zhǔn)有機(jī)地結(jié)合于一體,使得SIM卡非常適合作為NFC終端的SE,這種接口的市場(chǎng)接受度高一些。S2C接口因?yàn)椴捎昧送该鞯膫鬏敺绞?,使得SE與CLF模擬的卡片特性最大程度上與普通非接觸卡保持一致,應(yīng)用兼容性最好,但因需占用兩個(gè)連線,無法與SIM卡結(jié)合使用,因此出現(xiàn)基于該接口的全終端方案(CLF和SE合封之后集成在手機(jī)主板上),但全終端方案無法做到機(jī)卡分離,在一定程度上制約了應(yīng)用發(fā)展。
作為主流的CLF-SE接口,SWP定義了完整的一套通訊協(xié)議,在SE和CLF之間傳輸ISO14443協(xié)議數(shù)據(jù)包時(shí),需要將ISO14443協(xié)議數(shù)據(jù)轉(zhuǎn)換成符合SWP協(xié)議的數(shù)據(jù)包,增加MAC(介質(zhì)訪問控制)層及LLC(邏輯鏈路控制)層,組成SWP數(shù)據(jù)幀,如圖2所示:
圖2 SWP幀結(jié)構(gòu)
SWP協(xié)議的編碼和解碼、組幀和解幀,再加上接口傳輸時(shí)間,使得近場(chǎng)通訊終端模擬的卡片比標(biāo)準(zhǔn)的非接觸IC卡(PICC)在響應(yīng)非接觸識(shí)別設(shè)備(PCD)的時(shí)序上有所不同,如圖3所示,Tclf,receive和Tclf,transmit表示了SWP接口帶來的額外延遲時(shí)間,SWP接口延時(shí)表示為:
TCLF,delay = TCLF,receive + TCLF,transmit
圖3 SWP接口延時(shí)
SWP 協(xié)議中定義的CLT( C o n t a c t l e s s Tunnelling)幀格式,如圖4所示:
圖4 SWP CLT幀格式
CLT Payload表示數(shù)據(jù)區(qū),最大長度為29byte,非接觸數(shù)據(jù)(ISO14443或ISO18092)加上相應(yīng)的校驗(yàn)數(shù)據(jù),整體打包存放在該區(qū)域,如圖5所示:
圖5 CLT Payload數(shù)據(jù)區(qū)
ISO18092或ISO14443幀數(shù)據(jù)轉(zhuǎn)化成CLT幀時(shí),會(huì)增加SOF,LLC control field,CRC16,EOF共5字節(jié)數(shù)據(jù),在SWP為848K波特率條件下,理想收發(fā)的最小延時(shí)是:
TCLF,delay = TCLF,receive + TCLF,transmit=(5+X)*8/BPS_swp+(5+Y)*8/BPS_swp
其中,X為接收字節(jié)數(shù),Y為回發(fā)字節(jié)數(shù)。即使按X,Y都為1的情況,以SWP波特率848K計(jì)算,Tclf.delay也要大于113us。隨著應(yīng)用數(shù)據(jù)的增多,延遲時(shí)間也隨之增多。ISO14443-4定義了非接觸應(yīng)用層協(xié)議,對(duì)響應(yīng)時(shí)間沒有嚴(yán)格規(guī)定,因此SWP接口可以實(shí)現(xiàn)SE-CLF的卡片模擬功能,但要求PCD等待PICC響應(yīng)的超時(shí)設(shè)置相對(duì)長一些,否則會(huì)發(fā)生兼容性問題。這是SWP接口面臨的一個(gè)問題。根據(jù)ISO14443-3標(biāo)準(zhǔn)規(guī)定,REQA、WUPA、ANTICOLLISION、SELECT(尋卡、喚醒、防沖突、選卡) 幾條指令( 此處僅針對(duì)t y p e A標(biāo)準(zhǔn)分析),P ICC對(duì)PCD最小響應(yīng)時(shí)間是1172/F c(Fc=13.56MHz),換算為時(shí)間約86us,即使將SWP接口速度提至標(biāo)準(zhǔn)的極限,再加上芯片的數(shù)據(jù)處理時(shí)間,這些指令也無法通過SWP接口及時(shí)完成。因此在已出現(xiàn)的近場(chǎng)通訊解決方案中,ISO14443-3的指令由CLF直接響應(yīng),當(dāng)進(jìn)入ISO14443-4層協(xié)議時(shí),再通過SWP接口由SE對(duì)PCD響應(yīng)。
圖6 近場(chǎng)通訊設(shè)備響應(yīng)非接觸指令的劃分
雖然這樣實(shí)現(xiàn)的卡片模擬功能,除了稍微增加了一些延時(shí)之外,功能上與普通卡片表現(xiàn)一致,但其背后隱含著另一個(gè)比較嚴(yán)重的問題。ISO14443-3定義的幾條指令會(huì)處理卡片的UID(唯一識(shí)別碼)。UID在非接觸應(yīng)用系統(tǒng)中非常重要,通常是一卡一密模式密鑰分散的因子,并且非常多的應(yīng)用系統(tǒng)中以UID作為卡片的識(shí)別標(biāo)志。當(dāng)SWP近場(chǎng)通訊方案中,由CLF完成ISO14443-3協(xié)議時(shí),是CLF回答UID給PCD,必然要求SWP SIM卡在放入近場(chǎng)通訊終端時(shí),通過同步操作事先將SWP SIM卡的UID傳送至CLF并保存。普通IC卡的UID在出廠后是不允許被改動(dòng)的,并且各IC卡廠商和運(yùn)營商制定了多種管理辦法來保證UID的唯一性。由于機(jī)卡分離的結(jié)構(gòu),近場(chǎng)通訊終端可能被置入不同的SWP SIM卡,這意味著CLF的UID必定是可被改寫的。當(dāng)UID可被改寫后,UID的唯一性管理將面臨重大挑戰(zhàn),會(huì)導(dǎo)致一些應(yīng)用系統(tǒng)的帳務(wù)管理發(fā)生混亂(UID重號(hào)帶來對(duì)賬無法完成),并降低系統(tǒng)的安全性(克隆卡難度降低)。
因此,盡管SWP已經(jīng)成為近場(chǎng)通訊的一種主流解決方案,相應(yīng)的技術(shù)標(biāo)準(zhǔn)也制定出臺(tái),但SWP接口存在的延時(shí)問題和衍生的UID管理問題,對(duì)近場(chǎng)通訊將來的發(fā)展會(huì)有一定的影響,需要有一種更有效的解決方案。
復(fù)旦微電子推出的SMAP3.0解決方案,通過機(jī)卡分離、多卡多用的通用架構(gòu),可以有效地推動(dòng)近場(chǎng)通訊終端的開發(fā)。在SMAP3.0方案中,結(jié)合SWP和S2C接口的各自優(yōu)點(diǎn),提出了一種增強(qiáng)的、實(shí)時(shí)傳輸單線接口eSWP。
由于ISO14443標(biāo)準(zhǔn)自-1至-4部分,詳細(xì)定義了從物理層到應(yīng)用協(xié)議層的規(guī)范,并在大量的非接觸IC卡應(yīng)用中得到檢驗(yàn),其協(xié)議是完備可靠的。eSWP接口在保持對(duì)SWP協(xié)議兼容的基礎(chǔ)上,擴(kuò)展出一種基于單線的透明傳輸模式,CLF-SE接口直接采用重新實(shí)時(shí)編碼的ISO14443通訊協(xié)議,得到了與S2C接口同樣的實(shí)時(shí)和兼容的效果。采用了這種模式,使得SE有能力處理包括ISO14443-3部分在內(nèi)的所有非接觸指令,即解決了應(yīng)用兼容性問題—CLF-SE架構(gòu)實(shí)現(xiàn)的卡片時(shí)序特性與標(biāo)準(zhǔn)PICC完全一致,又解決了UID管理問題—UID不必預(yù)先由SE轉(zhuǎn)存至CLF,而是由SE直接回復(fù)。CLF完全變成透明傳輸通道,從而讓近場(chǎng)通訊解決方案實(shí)現(xiàn)機(jī)卡分離和非接觸兼容性良好統(tǒng)一。
eSWP接口同樣區(qū)分type A類型和type B類型接口。對(duì)e SWP-A,CLF輸出的信號(hào)S1為電壓信號(hào),編碼為Miller碼調(diào)制的載波信號(hào),載波頻率為6.78MHz。SE回發(fā)的S2信號(hào)為電流調(diào)制信號(hào),編碼為manchester帶848k副載波調(diào)制?;匕l(fā)時(shí)S1信號(hào)為沒有調(diào)制的載波信號(hào)。(下見圖7為S1輸出信號(hào)波形,圖8為S2回發(fā)信號(hào)編碼波形)。
對(duì)eSWP-B,由于有連續(xù)的時(shí)鐘信號(hào),CLF處理更加簡(jiǎn)單。CLF輸出到SE的S1信號(hào)采用1.69MHz的載波調(diào)制,邏輯單元1和0的定義可以與標(biāo)準(zhǔn)SWP保持一致,用載波時(shí)鐘占空比表示。再通過下圖的編碼方式表示ISO14443標(biāo)準(zhǔn)的邏輯信號(hào)(見圖9),eSWP-B信號(hào)波形可表示為(下見圖10、11)。
綜上,SMAP3.0解決方案在支持通用的SWP接口基礎(chǔ)上,擴(kuò)展了透明傳輸?shù)膃SWP模式,使得近場(chǎng)通訊終端仍然可以利用SIM卡或SD卡實(shí)現(xiàn)機(jī)卡分離的SE,但表現(xiàn)出與標(biāo)準(zhǔn)非接觸卡同等的非接觸性能,對(duì)于近場(chǎng)通訊終端與現(xiàn)存非接觸應(yīng)用融合發(fā)展,特別是與非接觸邏輯加密卡系統(tǒng)結(jié)合,有著無可替代的優(yōu)越性。(文/上海復(fù)旦微電子集團(tuán)股份有限公司 技術(shù)總監(jiān) 李蔚)
【稿件聲明】:如需轉(zhuǎn)載,必須注明來源和作者,保留文中圖片和內(nèi)容的完整性,違者將依法追究。