《IC卡接口技術(shù)》PPT課件-2.ppt_第1頁(yè)
《IC卡接口技術(shù)》PPT課件-2.ppt_第2頁(yè)
《IC卡接口技術(shù)》PPT課件-2.ppt_第3頁(yè)
《IC卡接口技術(shù)》PPT課件-2.ppt_第4頁(yè)
《IC卡接口技術(shù)》PPT課件-2.ppt_第5頁(yè)
已閱讀5頁(yè),還剩136頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

IC卡(Integrated Circuit Card),即“集成電路卡”在日常生活中已隨處可見(jiàn)。自1972年法國(guó)人羅蘭莫雷諾(Roland Moreno)首先提出IC卡的設(shè)想,1976年法國(guó)布爾(Bull)公司研制出世界第一張IC卡以來(lái),IC卡技術(shù)飛速發(fā)展,已經(jīng)形成涉及全球眾多著名電子巨頭的新興技術(shù)產(chǎn)業(yè)。,第9章 IC卡接口技術(shù),IC卡概述 接觸式IC卡接口技術(shù) 非接觸式IC卡接口技術(shù),本章主要內(nèi)容:,第9章 IC卡接口技術(shù),IC卡概述,IC卡的分類 IC卡應(yīng)用系統(tǒng)的構(gòu)成要素 IC卡的國(guó)際標(biāo)準(zhǔn),IC卡的分類,按鑲嵌芯片的不同分類簡(jiǎn)單的串行通信協(xié)議的設(shè)計(jì) 根據(jù)卡與外界數(shù)據(jù)交換界面的不同分類 根據(jù)應(yīng)用領(lǐng)域的不同分類 根據(jù)與外界數(shù)據(jù)傳輸形式的不同分類,按鑲嵌芯片的不同分類,按卡內(nèi)鑲嵌芯片的不同可將智能卡分為存儲(chǔ)器卡、邏輯加密卡和CPU卡三類。,(1)存儲(chǔ)器卡。存儲(chǔ)器卡卡內(nèi)嵌入的芯片為存儲(chǔ)器芯片,這些芯片多為通用E2PROM(或Flash Memory);無(wú)安全邏輯,可對(duì)片內(nèi)信息不受限制地任意存??;卡片制造中也很少采取安全保護(hù)措施;不完全符合或支持ISO/IEC 7816國(guó)際標(biāo)準(zhǔn),而多采用兩線串行通信協(xié)議(I2C總線協(xié)議)或3線串行通信協(xié)議。,特點(diǎn):,按鑲嵌芯片的不同分類,(2)邏輯加密卡。邏輯加密卡由非易失性存儲(chǔ)器和硬件加密邏輯構(gòu)成,一般是專門為IC卡設(shè)計(jì)的芯片,具有安全控制邏輯,安全性能較好;同時(shí)采用ROM、PROM、E2PROM等存儲(chǔ)技術(shù);從芯片制造到交貨,均采取較好的安全保護(hù)措施,如運(yùn)輸密碼TC(Transport Card)的取用;支持ISO/IEC 7816國(guó)際標(biāo)準(zhǔn)。,特點(diǎn):,(3)CPU卡。CPU卡也稱智能卡、保密微控制器卡、加密微控制器卡(片內(nèi)帶加密協(xié)處理器),在IC卡家族中出現(xiàn)最晚,也最具生命力。CPU卡的硬件構(gòu)成包括CPU、存儲(chǔ)器(含RAM、ROM、E2PROM等)、卡與讀寫(xiě)終端通信的I/O接口及加密運(yùn)算協(xié)處理器CAU,ROM中則存放有COS(Chip Operation System,片內(nèi)操作系統(tǒng))。,有很高的數(shù)據(jù)處理和計(jì)算能力以及較大的存儲(chǔ)容量,因此應(yīng)用的靈活性、適應(yīng)性較強(qiáng)。 極強(qiáng)的安全防偽能力。它不僅可驗(yàn)證卡和持卡人的合法性,而且可鑒別讀寫(xiě)終端,已成為一卡多用及對(duì)數(shù)據(jù)安全保密性特別敏感場(chǎng)合的最佳選擇,如金融信用卡和手機(jī)SIM卡等。 真正意義上的“智能卡”。,特點(diǎn):,按鑲嵌芯片的不同分類,根據(jù)卡與外界數(shù)據(jù)交換界面的不同分類,接觸式IC卡,接觸式IC卡以符合ISO/IEC 7816標(biāo)準(zhǔn)的多個(gè)金屬觸點(diǎn)為卡芯片與外界的信息傳輸媒介,成本低,實(shí)施相對(duì)簡(jiǎn)便;非接觸式IC卡則不用觸點(diǎn),而是借助無(wú)線收發(fā)傳送信息,因此在前者難以勝任的交通運(yùn)輸?shù)戎T多場(chǎng)合有較多應(yīng)用。,根據(jù)卡與外界數(shù)據(jù)交換界面的不同可將智能卡分為:,非接觸式IC卡,根據(jù)應(yīng)用領(lǐng)域的不同分類,根據(jù)應(yīng)用領(lǐng)域的不同可將智能卡分為金融卡和非金融卡(即銀行卡和非銀行卡)。金融卡又分為信用卡和現(xiàn)金卡。前者用于消費(fèi)支付時(shí),可按預(yù)先設(shè)定額度透支資金,后者可用做電子錢包和電子存折,但不得透支。而非金融卡的涉及范圍極廣,實(shí)質(zhì)上囊括了金融卡之外的所有領(lǐng)域,如門禁卡、組織代碼卡、醫(yī)療卡、保險(xiǎn)卡、IC卡身份證、電子標(biāo)簽等。,根據(jù)與外界數(shù)據(jù)傳輸形式的不同分類,根據(jù)與外界數(shù)據(jù)傳輸形式的不同可將智能卡分為串行通信卡和并行通信卡。串行通信卡即為目前最常用的卡,也是目前國(guó)際標(biāo)準(zhǔn)中所規(guī)定的接口方式。,采用串行方式與外界交換信息,卡芯片引腳較少,易于封裝和接口。但隨著芯片存儲(chǔ)容量的增大,引發(fā)了兩個(gè)問(wèn)題:一是芯片面積急劇增長(zhǎng),給卡的封裝帶來(lái)困難;二是讀寫(xiě)時(shí)間過(guò)長(zhǎng),讀寫(xiě)1 MB的容量需要12分鐘。,并行通信卡由于采用并行通信,故無(wú)此二弊,但國(guó)際標(biāo)準(zhǔn)中尚無(wú)此類接口標(biāo)準(zhǔn)。深圳艾柯電子公司研制的P型IC卡的引腳數(shù)多達(dá)32個(gè),不僅速度極快,而且容量增大。與串行通信卡一樣,它也有存儲(chǔ)型、邏輯加密型和CPU型,并已在納稅申報(bào)等系統(tǒng)中得以應(yīng)用。,IC卡應(yīng)用系統(tǒng)的構(gòu)成要素,一個(gè)標(biāo)準(zhǔn)的IC卡應(yīng)用系統(tǒng)通常包括:IC卡、IC卡接口設(shè)備(IC卡讀寫(xiě)器)、PC,較大的系統(tǒng)還包括通信網(wǎng)絡(luò)和主計(jì)算機(jī)等,如圖所示。,IC卡應(yīng)用系統(tǒng)的基本構(gòu)成,IC卡應(yīng)用系統(tǒng)的構(gòu)成要素,(1)IC卡。IC卡即由持卡人掌管,記錄有持卡人的特征代碼、文件資料的便攜式信息載體。 (2)IC卡接口設(shè)備(InterFace Device,IFD)。接口設(shè)備即通常所說(shuō)的IC卡讀寫(xiě)器,是卡與PC進(jìn)行信息交換的橋梁,而且常常是IC卡的能量來(lái)源。其核心通常為工作可靠的工業(yè)控制單片機(jī),如Intel的51系列等。 (3)PC。PC是系統(tǒng)的核心,完成信息匯總、統(tǒng)計(jì)、計(jì)算、處理、報(bào)表的生成、輸出和指令的發(fā)放、系統(tǒng)的監(jiān)控管理以及卡的發(fā)行與掛失、黑名單的建立等。 (4)網(wǎng)絡(luò)與計(jì)算機(jī)。在金融服務(wù)等相對(duì)大的系統(tǒng)中,網(wǎng)絡(luò)是使前端PC與上級(jí)控制、授權(quán)、服務(wù)、管理中心,即中央計(jì)算機(jī)(主計(jì)算機(jī))連接的必備條件。,IC卡的國(guó)際標(biāo)準(zhǔn),1接觸式IC卡的國(guó)際標(biāo)準(zhǔn),ISO/IEC 7816是IC卡遵循的主要國(guó)際標(biāo)準(zhǔn),該標(biāo)準(zhǔn)也引用了以前制定的有關(guān)識(shí)別卡標(biāo)準(zhǔn)。 ISO/IEC推出的7816國(guó)際標(biāo)準(zhǔn)已有10個(gè)部分,分別對(duì)IC卡的物理特性、卡觸點(diǎn)的尺寸與位置、電信號(hào)與傳輸協(xié)議、行業(yè)間交換命令、數(shù)據(jù)元以及IC卡注冊(cè)管理辦法等做出了詳細(xì)規(guī)定。,IC卡的國(guó)際標(biāo)準(zhǔn),2非接觸式IC卡的國(guó)際標(biāo)準(zhǔn),每個(gè)國(guó)際標(biāo)準(zhǔn)又由幾個(gè)部分組成,但到目前為止,部分標(biāo)準(zhǔn)尚未正式通過(guò),還是草案。ISO/IEC 7816中的大部分內(nèi)容仍適合于非接觸式IC卡。,ISO/IEC 10536、ISO/IEC 14443和ISO/IEC 15693。,3測(cè)試標(biāo)準(zhǔn),ISO/IEC 10373,接觸式IC卡接口技術(shù),所謂接觸式IC卡,就是在使用時(shí)通過(guò)有形的金屬電極觸點(diǎn)將卡的集成電路與外部接口設(shè)備直接接觸連接,提供集成電路工作的電源并進(jìn)行數(shù)據(jù)交換的IC卡。其特點(diǎn)是在卡的表面有符合ISO/IEC 7816標(biāo)準(zhǔn)的多個(gè)金屬觸點(diǎn)。在本節(jié)中將以一種應(yīng)用較為廣泛的接觸式IC卡SLE4442卡為典型實(shí)例,介紹接觸式IC卡的接口技術(shù) 。,SLE4442卡概述 SLE4442卡硬件接口電路 SLE4442卡讀寫(xiě)技術(shù),SLE4442卡概述,SLE4442是由德國(guó)西門子(Siemens)公司設(shè)計(jì)的邏輯加密存儲(chǔ)卡。它具有2 KB的存儲(chǔ)容量和完全獨(dú)立的可編程加密代碼(Programmable Security Code,PSC)存儲(chǔ)器。內(nèi)部電壓提升電路保證了芯片能夠以單+5電壓供電,較大的存儲(chǔ)容量能夠滿足通常應(yīng)用領(lǐng)域的各種要求。因此是目前國(guó)內(nèi)應(yīng)用較多的一種IC卡芯片。,SLE4442卡概述,1總體描述,(1)采用多存儲(chǔ)器結(jié)構(gòu)。 (2)2線連接協(xié)議,復(fù)位響應(yīng)滿足ISO/IEC 78163標(biāo)準(zhǔn)。 (3)觸點(diǎn)配置及串行接口滿足ISO/IEC 7816(同步傳輸協(xié)議)。 (4)僅當(dāng)正確輸入3個(gè)字節(jié)的可編程加密代碼(PSC)后方可修改數(shù)據(jù)。 (5)芯片采用NMOS工藝技術(shù),每個(gè)字節(jié)的寫(xiě)入/擦除編程時(shí)間為2.5 ms。 (6)存儲(chǔ)器具有至少104次的寫(xiě)入/擦除周期,數(shù)據(jù)保持時(shí)間至少10年。,SLE4442卡芯片的特點(diǎn)如下:,SLE4442卡概述,SLE4442卡的觸點(diǎn),SLE4442卡的引腳定義和功能說(shuō)明,SLE4442卡的觸點(diǎn)如圖所示,引腳定義和功能如表所示。,SLE4442卡概述,2存儲(chǔ)器結(jié)構(gòu),SLE4442的存儲(chǔ)器結(jié)構(gòu)如圖所示。主要包括3個(gè)存儲(chǔ)器:2568 B的E2PROM型主存儲(chǔ)器;321 B的PROM型保護(hù)存儲(chǔ)器;48 B的E2PROM型加密存儲(chǔ)器。,SLE4442卡的存儲(chǔ)器結(jié)構(gòu),SLE4442卡概述,(1)主存儲(chǔ)器(Main Memory),存儲(chǔ)器為可重復(fù)擦除使用的E2PROM型存儲(chǔ)器,按字節(jié)尋址、擦除和寫(xiě)入。主存儲(chǔ)器的地址是從0(00H)255(FFH),共256 B(2 KB)。主存儲(chǔ)器可分為兩個(gè)數(shù)據(jù)區(qū):保護(hù)數(shù)據(jù)區(qū)和應(yīng)用數(shù)據(jù)區(qū)。,保護(hù)數(shù)據(jù)區(qū) 主存儲(chǔ)器前32 B為保護(hù)數(shù)據(jù)區(qū),地址從0(00H)31(1FH)。這部分的數(shù)據(jù)讀出不受限制,但擦除和寫(xiě)入操作均受到保護(hù)存儲(chǔ)器內(nèi)部數(shù)據(jù)狀態(tài)的限制。根據(jù)這一特性,主存儲(chǔ)器的保護(hù)數(shù)據(jù)區(qū)一般均作為IC卡的標(biāo)識(shí)數(shù)據(jù)區(qū),存放一些固定不變的標(biāo)識(shí)參數(shù),如廠商代碼、發(fā)行商代碼等。,應(yīng)用數(shù)據(jù)區(qū) 主存儲(chǔ)器后224 B為應(yīng)用數(shù)據(jù)區(qū),地址從32(20H)255(FFH)。這部分的數(shù)據(jù)讀出不受限制,但擦除和寫(xiě)入均受控于加密存儲(chǔ)器數(shù)據(jù)校驗(yàn)比較結(jié)果的影響。,SLE4442卡概述,(2)保護(hù)存儲(chǔ)器(Protection Memory),保護(hù)存儲(chǔ)器是一個(gè)321 B的一次性可編程只讀存儲(chǔ)器(PROM)。它按位尋址和寫(xiě)入。保護(hù)存儲(chǔ)器每個(gè)被寫(xiě)“0”的單元所對(duì)應(yīng)控制的主存儲(chǔ)器的字節(jié)單元不再接受任何擦除和寫(xiě)入操作命令,從而使得該字節(jié)單元內(nèi)的數(shù)據(jù)不可再被改變。因此,對(duì)保護(hù)存儲(chǔ)器單元的寫(xiě)入一定要特別小心。,SLE4442卡概述,(3)加密存儲(chǔ)器(Security Memory),加密存儲(chǔ)器是一個(gè)48 B的E2PROM型存儲(chǔ)器。在這個(gè)存儲(chǔ)器中,第0個(gè)字節(jié)為“密碼輸入錯(cuò)誤計(jì)數(shù)器”(Error Counter,EC)。密碼輸入錯(cuò)誤計(jì)數(shù)器的有效位是低3位。在芯片初始化時(shí),計(jì)數(shù)器設(shè)置成“111”。這一字節(jié)是可讀的,每次比較密碼時(shí),先要判定計(jì)數(shù)器中是否還有“1”。如果還有“1”,則將一個(gè)“1”寫(xiě)成“0”,然后進(jìn)行比較“校驗(yàn)字”操作。如果比較結(jié)果一致,則密碼錯(cuò)誤計(jì)數(shù)器將允許進(jìn)行擦除操作(注意,芯片不能自動(dòng)進(jìn)行擦除操作),同時(shí)打開(kāi)主存儲(chǔ)器、保護(hù)存儲(chǔ)器和加密存儲(chǔ)器,并允許進(jìn)行擦除和寫(xiě)入操作。如果比較結(jié)果不一致,則密碼錯(cuò)誤計(jì)數(shù)器中為“1”的個(gè)數(shù)減少1位。只要計(jì)數(shù)器的內(nèi)容不全為“0”,則芯片的比較“校驗(yàn)字”操作還允許再次進(jìn)行。當(dāng)連續(xù)3次輸入錯(cuò)誤密碼后(即密碼計(jì)數(shù)器減少為0),則芯片的存儲(chǔ)單元將全部被鎖死。由此可見(jiàn),加密存儲(chǔ)器可以理解為進(jìn)入整個(gè)芯片的“關(guān)卡”。,SLE4442卡硬件接口電路,SLE4442卡接口設(shè)備的硬件組成包括:卡座(IC卡適配插座)、輸入接口電路、存儲(chǔ)器、微處理器和外圍接口組成,如圖所示。,卡座,卡座是讀寫(xiě)器與卡的物理連接部件,是影響讀寫(xiě)器壽命的主要因素,也是設(shè)計(jì)或選購(gòu)讀寫(xiě)器的重要指標(biāo)。它包括與卡接觸的8個(gè)片觸點(diǎn)、檢測(cè)“插卡到位”的一對(duì)狀態(tài)開(kāi)關(guān)、固定和彈出卡的機(jī)械裝置、與輸入接口電路相接的電氣終端和安裝基座。,(1)按觸點(diǎn)接觸方式分類,滑觸式 著落式,(2)按卡的插入/退出形式分類,推入拉出式 推入推入彈出式 推入自動(dòng)彈出式,推入提/壓式 只推式 電動(dòng)出入卡式,卡座,(3)選擇卡座的標(biāo)準(zhǔn)和依據(jù),觸點(diǎn)電氣性能及與卡接觸的可靠性。 插拔壽命。 對(duì)卡觸點(diǎn)及其他部分的磨損程度。 卡從接觸好到識(shí)別有效的位置差。 價(jià)格因素。 對(duì)應(yīng)用現(xiàn)場(chǎng)的適應(yīng)性。,輸入接口電路,IC卡的輸入接口電路是連接IC卡與讀寫(xiě)器的通路,由它實(shí)現(xiàn)對(duì)IC卡的供電并滿足不帶電插拔IC卡的要求,以及實(shí)現(xiàn)時(shí)鐘供給和信號(hào)的可靠傳輸。,(1)電源供給,對(duì)IC卡和讀寫(xiě)器應(yīng)分別設(shè)置各自獨(dú)立的供電電路,如圖所示。,IC卡接口設(shè)備供電電路,輸入接口電路,(2)接口電路,IC卡芯片的邏輯端口一般采用漏極(集電極)開(kāi)路輸出及非嵌位保護(hù)式輸入結(jié)構(gòu),因此,讀寫(xiě)器輸入接口電路與IC卡各信號(hào)端口的接口必須外加上拉電阻。如圖所示。,SLE4442卡接口電路,輸入接口電路,3外圍接口,讀寫(xiě)器的外圍接口對(duì)象通常為L(zhǎng)ED(數(shù)碼)或LCD(字符、點(diǎn)陣)顯示屏和簡(jiǎn)易鍵盤,PC以及條碼閱讀器、電量傳感器等信號(hào)輸入設(shè)備,電磁鎖、電閘等被控對(duì)象。,與PC的通信多取RS232或RS485串行通信標(biāo)準(zhǔn)(也有取并行通信方式的),并配以MAX232、MAX485/491接口驅(qū)動(dòng)芯片。,為實(shí)現(xiàn)鍵盤輸入和屏顯輸出,必須設(shè)置相應(yīng)掃描驅(qū)動(dòng)電路。,LCD液晶顯示器在應(yīng)用中注意溫度和背光源的選擇。,脫機(jī)考勤機(jī)和不少手持機(jī)常要求輸出年、月、日、星期、時(shí)、分和秒等時(shí)間信息, 必須要考慮備用電池。,SLE4442卡讀寫(xiě)技術(shù),傳送協(xié)議與操作模式 芯片的操作命令 PSC校驗(yàn) 中止與錯(cuò)誤狀態(tài),傳送協(xié)議與操作模式,SLE4442卡與接口設(shè)備(InterFace Device,IFD)之間的傳送采用兩線連接協(xié)議,滿足ISO/IEC 7816同步傳送協(xié)議,I/O線上的數(shù)據(jù)變化只在CLK信號(hào)下降沿有效。,傳送協(xié)議包括4種模式:復(fù)位和復(fù)位響應(yīng)(Answer-To-Reset,ATR)、命令模式(Command Mode)、輸出數(shù)據(jù)模式(Outgoing Data Mode)和處理模式(Processing Mode)。,復(fù)位和復(fù)位響應(yīng),SLE4442卡芯片的復(fù)位方式有以下兩種:,復(fù)位和復(fù)位響應(yīng)(外部復(fù)位方式):基于ISO/IEC 7816-3的同步協(xié)議。 加電復(fù)位(Power on Reset,內(nèi)部復(fù)位方式):加電后I/O被置于高阻態(tài)。必須在對(duì)任意地址進(jìn)行讀操作或做一個(gè)復(fù)位響應(yīng)操作之后才可以進(jìn)行數(shù)據(jù)交換。,在操作期間的任意時(shí)刻都可以復(fù)位。復(fù)位及復(fù)位響應(yīng)的時(shí)序關(guān)系如圖所示。,在復(fù)位響應(yīng)期間,“啟動(dòng)”和“停止”狀態(tài)都被忽略。,復(fù)位和復(fù)位響應(yīng),;復(fù)位子程序 RESET: CLR RST CLR CLK CLR I/O LCALL DELAY_12s LCALL DELAY_12s SETB RST LCALL DELAY_12s SETB CLK LCALL DELAY_12s CLR CLK,LCALL DELAY_12s CLR RST LCALL DELAY_12s MOV B,#20H RESET0: SETB CLK LCALL DELAY_12s CLR CLK LCALL DELAY_12s DJNZ B,RESET0 SETB I/O RET,復(fù)位子程序如下:,命令模式,復(fù)位響應(yīng)以后,芯片等待命令。每條命令都以 “啟動(dòng)狀態(tài)”開(kāi)始。整個(gè)命令包括3個(gè)字節(jié)。隨后緊跟著一個(gè)附加脈沖并用一個(gè)“停止?fàn)顟B(tài)”來(lái)結(jié)束操作。圖為命令模式的時(shí)序關(guān)系。,命令模式的時(shí)序關(guān)系,命令模式,啟動(dòng)狀態(tài):在CLK為高狀態(tài)(H狀態(tài))期間,I/O線的下降沿為啟動(dòng)狀態(tài)。 停止?fàn)顟B(tài):在CLK為高狀態(tài)(H狀態(tài))期間,I/O線的上升沿為停止?fàn)顟B(tài)。,讀數(shù)據(jù)時(shí)處于輸出數(shù)據(jù)模式。 寫(xiě)入(將數(shù)據(jù)1改寫(xiě)為0稱為“寫(xiě)”)和擦除(將數(shù)據(jù)0改寫(xiě)為1稱為“擦除”)以及校驗(yàn)數(shù)據(jù)時(shí)處于處理模式。命令子程序,接收了一個(gè)命令之后,卡芯片處于兩種可能的模式:,輸出數(shù)據(jù)模式,在這一模式下IC卡芯片發(fā)送數(shù)據(jù)給IFD。圖右上角為輸出數(shù)據(jù)模式的時(shí)序關(guān)系圖。,命令模式的時(shí)序關(guān)系,處理模式,當(dāng)命令為修改、寫(xiě)入或校驗(yàn)數(shù)據(jù)時(shí),卡芯片在執(zhí)行命令后將處于處理模式。在這一模式下對(duì)IC卡芯片做內(nèi)部處理。圖右下角為處理模式的時(shí)序關(guān)系圖。,命令模式的時(shí)序關(guān)系,處理模式,在處理模式期間,根據(jù)新舊數(shù)據(jù),可能發(fā)生下列幾種情況(所有的值都以50kHz的時(shí)鐘頻率為準(zhǔn)):,先擦除后寫(xiě)入:5 ms,相當(dāng)于M=256個(gè)時(shí)鐘脈沖。 只寫(xiě)入不擦除:2.5 ms,相當(dāng)于M=124個(gè)時(shí)鐘脈沖。 只擦除不寫(xiě)入:2.5 ms,相當(dāng)于M=124個(gè)時(shí)鐘脈沖。 數(shù)據(jù)校驗(yàn):2.5 ms,相當(dāng)于M=124個(gè)時(shí)鐘脈沖。,處理模式子程序,芯片的操作命令,(1)命令格式。每條命令包含3個(gè)字節(jié),其排列順序如下:,SLE4442具有7種命令,其格式和功能如表所示。,芯片的操作命令,(2)讀主存儲(chǔ)器(Read Main Memory)。讀主存儲(chǔ)器命令格式如下:,讀主存儲(chǔ)器命令讀出主存儲(chǔ)器的內(nèi)容,命令的控制字為30H。讀主存儲(chǔ)器的時(shí)序如圖所示。,讀主存儲(chǔ)器的時(shí)序圖,讀主存儲(chǔ)器子程序,芯片的操作命令,(3)讀保護(hù)存儲(chǔ)器(Read Protection Memory)。讀保護(hù)存儲(chǔ)器命令格式如下:,讀保護(hù)存儲(chǔ)器命令的控制字為34H。對(duì)保護(hù)存儲(chǔ)器進(jìn)行讀取操作不受限制。讀保護(hù)存儲(chǔ)器的時(shí)序如圖所示。,讀保護(hù)存儲(chǔ)器的時(shí)序圖,芯片的操作命令,(4)讀加密存儲(chǔ)器(Read Security Memory)。讀加密存儲(chǔ)器命令格式如下:,讀加密存儲(chǔ)器命令類似于讀保護(hù)存儲(chǔ)器,可以讀出4B的加密存儲(chǔ)器的內(nèi)容。該命令的控制字為31H。讀加密存儲(chǔ)器的時(shí)序如圖所示。,讀加密存儲(chǔ)器的時(shí)序圖,芯片的操作命令,(5)修改主存儲(chǔ)器(Update Main Memory)。修改主存儲(chǔ)器命令格式如下:,修改主存儲(chǔ)器命令根據(jù)所傳送的字節(jié)數(shù)據(jù),尋址主存儲(chǔ)器的E2PROM字節(jié),然后修改相應(yīng)字節(jié)的內(nèi)容。該命令的控制字為38H。其命令時(shí)序如圖所示。,修改主存儲(chǔ)器的時(shí)序圖,芯片的操作命令,修改主存儲(chǔ)器的子程序如下:,;修改主存儲(chǔ)器子程序 WRITE: MOV R4,21H ;取要寫(xiě)的字節(jié)數(shù) WRITE0:MOV R7,#38H ;設(shè)置修改主存儲(chǔ)器命令控制字 MOV R6,20H ;取修改主存儲(chǔ)器命令地址字 MOV A,R0 MOV R5,A ;取修改主存儲(chǔ)器命令數(shù)據(jù)字 LCALL COMMAND ;送修改主存儲(chǔ)器命令給卡 LCALL OPERA254 ;處理模式 INC 32H ;地址字指向主存儲(chǔ)器下一個(gè)單元 INC R0 ;指向下一個(gè)數(shù)據(jù) DJNZ R4,WRITE0 ;未寫(xiě)完繼續(xù) RET,芯片的操作命令,(6)修改加密存儲(chǔ)器(Updata Security Memory)。修改加密存儲(chǔ)器命令格式如下:,為保護(hù)參照字字節(jié),這一命令僅當(dāng)PSC成功校驗(yàn)之后方能執(zhí)行,否則,只能對(duì)錯(cuò)誤計(jì)數(shù)器(地址0)進(jìn)行由“1”寫(xiě)“0”的操作。,(7)寫(xiě)保護(hù)存儲(chǔ)器(Write Protection Memory)。寫(xiě)保護(hù)存儲(chǔ)器命令格式如下:,寫(xiě)保護(hù)存儲(chǔ)器命令的執(zhí)行過(guò)程包含一個(gè)把被輸入的數(shù)據(jù)與在E2PROM中對(duì)應(yīng)數(shù)據(jù)進(jìn)行比較的過(guò)程,芯片的操作命令,(8)比較校驗(yàn)數(shù)據(jù)(Compare Varification Data)。比較校驗(yàn)數(shù)據(jù)命令格式如下:,該命令把輸入的“校驗(yàn)數(shù)據(jù)”的各個(gè)字節(jié)與相對(duì)應(yīng)的參照數(shù)據(jù)(存放在加密存儲(chǔ)器中)進(jìn)行比較,這一過(guò)程將在處理模式中需要給出時(shí)鐘脈沖。比較校驗(yàn)數(shù)據(jù)命令的時(shí)序如圖所示。,比較校驗(yàn)數(shù)據(jù)命令的時(shí)序圖,PSC校驗(yàn),如果需要修改SLE4442的數(shù)據(jù),那么必須正確校驗(yàn)存儲(chǔ)在加密存儲(chǔ)器中的可編程加密代碼PSC。校驗(yàn)的過(guò)程并不是僅由比較校驗(yàn)數(shù)據(jù)命令來(lái)完成的,而是由多個(gè)命令構(gòu)成的一個(gè)流程來(lái)共同完成。這一流程必須被精確執(zhí)行,任何變化都將導(dǎo)致校驗(yàn)失敗,從而使寫(xiě)入/擦除操作被禁止。只要校驗(yàn)過(guò)程未能成功完成,密碼錯(cuò)誤計(jì)數(shù)器的一個(gè)字位將只會(huì)被從“l(fā)”寫(xiě)成“0”,并且不能被擦除。,PSC校驗(yàn)流程如下圖所示。,PSC校驗(yàn),PSC校驗(yàn),表為PSC校驗(yàn)所需命令一覽表,校驗(yàn)過(guò)程必須按表中順序執(zhí)行各命令。,PSC校驗(yàn)子程序,中止與錯(cuò)誤狀態(tài),(1)中止(Break)。在CLK為低狀態(tài)期間,如果RST置為高狀態(tài),則任何操作均無(wú)效,I/O線被鎖定到高阻狀態(tài)(Z狀態(tài))。需要一個(gè)最小維持時(shí)間tRES=5 s 之后,芯片才能接收新的有效復(fù)位。中止后芯片準(zhǔn)備做進(jìn)一步的操作。 (2)錯(cuò)誤狀態(tài)(Failures)。在芯片操作過(guò)程中,可能出現(xiàn)以下幾種操作失敗的情況:比較失敗、錯(cuò)誤命令、不正確的命令脈沖數(shù)、對(duì)已被保護(hù)的字節(jié)進(jìn)行重寫(xiě)或擦除操作、對(duì)保護(hù)存儲(chǔ)器的一位進(jìn)行重寫(xiě)或擦除操作。 在上述錯(cuò)誤發(fā)生時(shí),芯片總是在8個(gè)時(shí)鐘脈沖的最后,將I/O線置成高阻狀態(tài)(Z狀態(tài))。,非接觸式IC卡接口技術(shù),源起與射頻識(shí)別技術(shù)的非接觸式IC卡技術(shù)近年來(lái)發(fā)展十分迅速,產(chǎn)品占據(jù)了非金融卡的絕大部分市場(chǎng),而其技術(shù)與標(biāo)準(zhǔn)也正在發(fā)展與完善中。 荷蘭Philips公司的MIFARE技術(shù)是當(dāng)今非接觸式IC卡的主流技術(shù),由于其自身優(yōu)越的性能和極高的安全性,自推出之日起就得到了業(yè)界的一致認(rèn)同并得到了廣泛的應(yīng)用。現(xiàn)在,MIFARE技術(shù)已經(jīng)被制定為非接觸IC卡的國(guó)際標(biāo)準(zhǔn)即ISO/IEC 14443-TYPEA。 在本節(jié)中將以Philips公司的MIFARE1卡片為典型實(shí)例介紹非接觸式IC卡技術(shù)與接口技術(shù)。,非接觸式IC卡接口技術(shù),MIFARE1非接觸式IC卡 MIFARE1卡接口設(shè)備內(nèi)核技術(shù) 實(shí)踐與思考,MIFARE1非接觸式IC卡,MIFARE1非接觸式IC卡的總體描述 MIFARE1非接觸式IC卡的功能組成 MIFARE1卡的存儲(chǔ)結(jié)構(gòu),MIFARE1非接觸式IC卡的總體描述,MIFARE1非接觸式IC智能(射頻)卡采用先進(jìn)的芯片制造工藝制作,內(nèi)建有高速的CMOS E2PROM、ASIC等。卡片上除了IC微晶片及一副高效率天線外,無(wú)任何其他元件。,根據(jù)ISO/IEC 14443A 標(biāo)準(zhǔn),Philips開(kāi)發(fā)了無(wú)線智能卡芯片MIFARE1 IC S50,它是MIFARE1非接觸式IC智能(射頻)卡的核心。該芯片的通信層MIFARE RF 接口遵從ISO/IEC 14443A標(biāo)準(zhǔn)的第2部分和第3部分,保密層(Security Layer)使用經(jīng)區(qū)域驗(yàn)證的CRYPTO1流密碼(field-proven CRYPTO1 stream cipher),使典型MIFARE系列芯片的數(shù)據(jù)交換得到保密。,MIFARE1非接觸式IC卡的總體描述,1MIFARE RF 接口(ISO/IEC 14443A)無(wú)線傳送數(shù)據(jù)和能量,(1)無(wú)線傳送數(shù)據(jù)和能量,即MIFARE卡片上無(wú)源(無(wú)任何電池),MIFARE1 IC S50 連接著幾匝線圈,線圈嵌入到塑料卡片中,這就形成了一張無(wú)源的無(wú)線智能卡。工作時(shí)的電源能量由讀寫(xiě)器天線發(fā)送無(wú)線電載波信號(hào)耦合到卡片的天線上而產(chǎn)生電能,一般可達(dá)2 V以上,供卡片上IC工作。其工作距離最高可達(dá)100 mm(由天線的結(jié)構(gòu)決定)。 (2)工作頻率為13.56 MHz。 (3)數(shù)據(jù)傳送速率快,且為106 Kbps。,MIFARE1非接觸式IC卡的總體描述,2真正的防沖突,智能的防沖突功能允許同一工作區(qū)域中有不止一張卡同時(shí)工作,防沖突算法每次只選擇一張卡,確保對(duì)被選中的卡正確執(zhí)行操作,而且同一區(qū)域中的其他卡不會(huì)破壞數(shù)據(jù)。,3保密性(Security),MIFARE卡的一個(gè)特殊要點(diǎn)是高保密性,防止欺騙。相互認(rèn)證(Mutual Challenge)和響應(yīng)確認(rèn)數(shù)據(jù)保密,報(bào)文確認(rèn)檢查防止系統(tǒng)受到任何干擾;序列號(hào)不可修改更保證了每張卡都是唯一的。,MIFARE1非接觸式IC卡的總體描述,(1)需要通過(guò)3次相互認(rèn)證(Mutual Three Pass Authentication),符合ISO/IEC DIS 9798-2的規(guī)定。 (2)RF信道的數(shù)據(jù)加密,多重防攻擊保護(hù)。 (3)每個(gè)扇區(qū)(每個(gè)應(yīng)用)有兩套獨(dú)立的密鑰,支持帶密鑰層次的多應(yīng)用(Support Multi-application with Key Hierarchy)。 (4)每張卡有全球唯一的序列號(hào)。 (5)在運(yùn)輸過(guò)程中訪問(wèn)E2PROM有傳輸密鑰保護(hù)(Transport Key Protects Access to E2PROM on Chip Delivery)。,MIFARE1非接觸式IC卡的總體描述,4數(shù)據(jù)高度可靠(正確),讀寫(xiě)器和卡之間的無(wú)線通信鏈路使用了以下機(jī)制確保數(shù)據(jù)可靠地傳輸。,(1)卡片上有高速的CRC協(xié)處理器實(shí)現(xiàn)每個(gè)塊16位CRC。 (2)每個(gè)字節(jié)都有奇偶校驗(yàn)位。 (3)位計(jì)數(shù)檢查。 (4)用位編碼區(qū)別1、0和沒(méi)有信息。 (5)信道監(jiān)控(協(xié)議序列和位流分析)。,MIFARE1非接觸式IC卡的總體描述,5E2PROM存儲(chǔ)器結(jié)構(gòu)提供多應(yīng)用,MIFARE系統(tǒng)提供了一個(gè)實(shí)時(shí)的多應(yīng)用功能,每區(qū)有兩個(gè)不同的密鑰,這樣系統(tǒng)可以使用密鑰層次。,(1)內(nèi)建1KB E2PROM,分成16個(gè)扇區(qū),每扇區(qū)又分成4個(gè)數(shù)據(jù)塊,每一塊中有16個(gè)字節(jié)。 (2)用戶可以定義每一個(gè)存儲(chǔ)器塊的訪問(wèn)條件。 (3)每個(gè)扇區(qū)(每個(gè)應(yīng)用)有兩套獨(dú)立的密鑰,支持帶密鑰層次的多應(yīng)用。 (4)數(shù)據(jù)保存期可達(dá)10 年以上。 (5)可寫(xiě)100000次以上。 (6)卡片抗靜電保護(hù)能力達(dá)2 kV以上。,MIFARE1非接觸式IC卡的總體描述,6方便用戶,系統(tǒng)的設(shè)計(jì)使用戶使用更加方便,例如,卡片上還內(nèi)建有增值/減值的專項(xiàng)的數(shù)學(xué)運(yùn)算電路,非常適合公交/地鐵等行業(yè)的定額收費(fèi)系統(tǒng)。由于數(shù)據(jù)傳送速率很高,典型的購(gòu)票處理時(shí)間(Ticketing Transaction)小于100 ms(包括備份管理),這樣MIFARE卡用戶就不需要停在讀寫(xiě)器前面,增大了通道門的吞吐量,減少了上公共汽車的時(shí)間;如果卡放在錢包中,甚至錢包中有硬幣也可以進(jìn)行交易。,MIFARE1非接觸式IC卡的功能組成,MIFARE1非接觸式IC S50非接觸式IC卡的功能組成如圖所示。整個(gè)卡片包含了兩個(gè)部分,即RF射頻接口電路和數(shù)字電路部分。,MIFARE1 IC S50非接觸式IC卡的功能組成圖,MIFARE1非接觸式IC卡的功能組成,1RF射頻接口電路,在卡的RF射頻接口電路中,波形轉(zhuǎn)換模塊接收讀寫(xiě)器所發(fā)送的13.56 MHz的無(wú)線電調(diào)制信號(hào)。一方面送調(diào)制/解調(diào)模塊,經(jīng)解調(diào)得到相應(yīng)的數(shù)字信息送數(shù)字電路模塊;另一方面進(jìn)行波形轉(zhuǎn)換,將正弦波轉(zhuǎn)換為方波,然后對(duì)其整流濾波,由電壓調(diào)節(jié)模塊對(duì)電壓進(jìn)行進(jìn)一步的處理,包括穩(wěn)壓等,最終輸出提供卡片上各電路的工作電壓。 POR模塊主要是對(duì)卡片上的各個(gè)電路進(jìn)行POWER-ON-RESET(上電復(fù)位),使各電路同步啟動(dòng)工作。 而數(shù)字電路模塊送出的數(shù)字信息則經(jīng)由調(diào)制/解調(diào)模塊調(diào)制為13.56 MHz的無(wú)線電調(diào)制信號(hào),再送往波形轉(zhuǎn)換模塊發(fā)送給讀寫(xiě)器。,MIFARE1非接觸式IC卡的功能組成,2數(shù)字電路部分模塊,(1)ATR模塊:Answer To Request(“請(qǐng)求之應(yīng)答”)。建立卡與讀寫(xiě)器的第一步通信聯(lián)絡(luò)。 (2)AntiCollision模塊:防(卡片)沖突功能。 (3)Select Application 模塊:卡片的選擇。 (4)Authentication & Access Control 模塊:認(rèn)證及存取控制模塊。 (5)Control & Arithmetic Unit:控制及算術(shù)運(yùn)算單元。,MIFARE1非接觸式IC卡的功能組成,(6)RAM/ROM單元。RAM主要配合控制及算術(shù)運(yùn)算單元,將運(yùn)算的結(jié)果進(jìn)行暫時(shí)存儲(chǔ)。 (7)Crypto Unit:數(shù)據(jù)加密單元。 (8)E2PROM存儲(chǔ)器及其接口電路:E2PROM INTERFACE/EEPROM MEMORY。該單元主要用于存儲(chǔ)用戶數(shù)據(jù),在卡失掉電源后(卡片離開(kāi)讀寫(xiě)器天線的有效工作范圍)數(shù)據(jù)仍將被保持。,MIFARE1卡的存儲(chǔ)結(jié)構(gòu),MIFARE1卡片的存儲(chǔ)區(qū)劃分 MIFARE1 卡的密碼認(rèn)證方式 MIFARE1 卡存取控制與數(shù)據(jù)區(qū)的關(guān)系,MIFARE1卡片的存儲(chǔ)區(qū)劃分,MIFARE 1卡片的存儲(chǔ)容量為10248 B(即1 KB),采用E2PROM作為存儲(chǔ)介質(zhì),整個(gè)結(jié)構(gòu)劃分為16個(gè)扇區(qū),編為扇區(qū)015。每個(gè)扇區(qū)有4個(gè)塊(Block),分別為塊0、塊1、塊2和塊3。每個(gè)塊有16個(gè)字節(jié)。一個(gè)扇區(qū)共有16 B4 = 64 B,如圖所示。,MIFARE 1卡片的存儲(chǔ)結(jié)構(gòu)圖,(1)廠商塊 (2)數(shù)據(jù)塊 (3)區(qū)尾塊,廠商塊,廠商塊是存儲(chǔ)器第1個(gè)扇區(qū)(扇區(qū)0)的第1個(gè)數(shù)據(jù)塊(塊0),它包含了IC卡廠商的數(shù)據(jù)?;诒C苄院拖到y(tǒng)的安全性,這一塊在IC卡廠商編程之后被置為寫(xiě)保護(hù),因此該塊不能再?gòu)?fù)用為應(yīng)用數(shù)據(jù)塊。 其中:第03個(gè)字節(jié)為卡片的序列號(hào);第4個(gè)字節(jié)為序列號(hào)的校驗(yàn)碼;第5個(gè)字節(jié)為卡片的容量“Size”字節(jié);第67個(gè)字節(jié)為卡片的類型號(hào)字節(jié),即TagType字節(jié);其他字節(jié)由廠商另加定義。,數(shù)據(jù)塊,所有的扇區(qū)都包含3個(gè)數(shù)據(jù)塊(扇區(qū)0只有兩個(gè)數(shù)據(jù)塊和一個(gè)只讀的廠商塊),每個(gè)塊有16B。數(shù)據(jù)塊可以被以下的訪問(wèn)控制位(Access Bits)配置為讀寫(xiě)塊或值塊。,讀寫(xiě)塊:用做一般的數(shù)據(jù)保存,可用讀/寫(xiě)命令直接讀/寫(xiě)整個(gè)塊,例如,在食堂消費(fèi)時(shí)采用輸入飯菜金額的方式扣款。 值塊:用做數(shù)值塊,可以進(jìn)行初始化值、加值、減值、讀值的運(yùn)算,系統(tǒng)配用相應(yīng)的函數(shù)完成上述功能,有效的命令包括加/減/恢復(fù)/發(fā)送命令。例如,在食堂消費(fèi)時(shí)對(duì)于定額套餐采用輸入餐號(hào)的方式加以扣款,以及用于公交/地鐵等行業(yè)的檢票/收費(fèi)系統(tǒng)。,數(shù)據(jù)塊,值塊有一個(gè)固定的數(shù)據(jù)格式,可以進(jìn)行錯(cuò)誤檢測(cè)和糾正并備份管理。值塊只能在值塊格式的寫(xiě)操作時(shí)產(chǎn)生。值塊格式如表所示。,區(qū)尾塊,密鑰A(第05B,共6 B)和密鑰B(第1015B,共6 B,可選),讀密鑰時(shí)返回邏輯0。 存取控制位(Access Bits,第69B,共4 B):訪問(wèn)這個(gè)扇區(qū)中4個(gè)塊的條件,存取控制位也可以指出數(shù)據(jù)塊的類型(讀寫(xiě)或值)。,密鑰A的默認(rèn)值為A0A1A2A3A4A5H,密鑰B的默認(rèn)值為B0B1B2B3B4B5H,存取控制位的默認(rèn)值為FF078069H。 如果不需要密鑰B,那么塊3的最后6 B可以作為數(shù)據(jù)字節(jié)。 用戶數(shù)據(jù)可以使用區(qū)尾的第9B,這個(gè)字節(jié)具有與字節(jié)6、7和8一樣的訪問(wèn)權(quán)限。,每個(gè)區(qū)都有一個(gè)區(qū)尾(Sector Trailer),它包括以下兩點(diǎn):,MIFARE1 卡的密碼認(rèn)證方式,MIFARE 1卡的密碼認(rèn)證采用3次相互認(rèn)證的方法,具有很高的安全性。如圖所示,為3次相互認(rèn)證的令牌原理框圖。,3次相互認(rèn)證的令牌原理框圖,(A)環(huán):由MIFARE 1卡片向讀寫(xiě)器發(fā)送一個(gè)隨機(jī)數(shù)據(jù)RB。,(B)環(huán):由讀寫(xiě)器收到RB后向MIFARE 1卡片發(fā)送一個(gè)令牌數(shù)據(jù)TOKEN AB,其中包含了用讀寫(xiě)器中存放的密碼加密后的RB及讀寫(xiě)器發(fā)出的一個(gè)隨機(jī)數(shù)據(jù)RA。,MIFARE1 卡的密碼認(rèn)證方式,(C)環(huán):MIFARE 1卡片收到 TOKEN AB 后,用卡中的密碼對(duì)TOKEN AB的加密的部分進(jìn)行解密得到RB,并校驗(yàn)第一次由(A)環(huán)中MIFARE 1卡片發(fā)出去的隨機(jī)數(shù)RB是否與(B)環(huán)中接收到的TOKEN AB中的RB 相一致;若讀寫(xiě)器與卡中的密碼及加密/解密算法一致,將會(huì)有RB=RB,校驗(yàn)正確,否則將無(wú)法通過(guò)校驗(yàn)。 (D)環(huán):如果(C)環(huán)校驗(yàn)是正確的,則MIFARE 1卡片用卡中存放的密碼對(duì)RA加密后發(fā)送令牌TOKEN BA給讀寫(xiě)器。 (E)環(huán):讀寫(xiě)器收到令牌TOKEN BA后,用讀寫(xiě)器中存放的密碼對(duì)令牌TOKEN BA中的RA(隨機(jī)數(shù))進(jìn)行解密得到RA;并校驗(yàn)第一次由(B)環(huán)中讀寫(xiě)器發(fā)出去的隨機(jī)數(shù)RA是否與(D)環(huán)中接收到的TOKEN BA中的RA 相一致;同樣,若讀寫(xiě)器與卡中的密碼及加密/解密算法一致,將會(huì)有RA=RA,校驗(yàn)正確,否則將無(wú)法通過(guò)校驗(yàn)。,MIFARE1 卡的密碼認(rèn)證方式,如果上述的每一個(gè)環(huán)都為“真”,且都能正確通過(guò)驗(yàn)證,則整個(gè)的認(rèn)證過(guò)程將成功。讀寫(xiě)器將允許對(duì)剛剛認(rèn)證通過(guò)的卡片上的這個(gè)扇區(qū)進(jìn)入下一步的操作(讀/寫(xiě)等操作)。 卡片中的其他扇區(qū)由于有其各自的密碼,因此不能對(duì)其進(jìn)行進(jìn)一步的操作。如果想對(duì)其他扇區(qū)進(jìn)行操作,則必須完成相應(yīng)扇區(qū)的認(rèn)證過(guò)程。 認(rèn)證過(guò)程中的任何一環(huán)出現(xiàn)差錯(cuò),整個(gè)認(rèn)證將告失敗,必須重新開(kāi)始。 如果事先不知卡片上的密碼,由于密碼的變化極其復(fù)雜,因此靠猜測(cè)密碼而想打開(kāi)卡片上的一個(gè)扇區(qū)的可能性幾乎為零。,MIFARE1 卡存取控制與數(shù)據(jù)區(qū)的關(guān)系,在MIFARE 1卡中每個(gè)扇區(qū)的塊3(即第4塊)包含了該扇區(qū)的密碼A(6個(gè)字節(jié))、存取控制(4個(gè)字節(jié))、密碼B(6個(gè)字節(jié)),是一個(gè)特殊的塊。下面將對(duì)密碼A,密碼B,存取控制與數(shù)據(jù)區(qū)的關(guān)系加以說(shuō)明。存取控制的結(jié)構(gòu)如表所示。,存取控制的結(jié)構(gòu)表,_b表示取反,如C2X3_b 即C2X3取反;X表示扇區(qū)號(hào);Y表示第幾塊;C表示控制位;B表示備用位。,MIFARE1 卡存取控制與數(shù)據(jù)區(qū)的關(guān)系,存取控制對(duì)塊3的控制如表所示(X=015)。,存取控制對(duì)塊3的控制表,KEYA|B 表示密碼A或密碼B;never表示沒(méi)有條件實(shí)現(xiàn)。,MIFARE1 卡存取控制與數(shù)據(jù)區(qū)的關(guān)系,對(duì)數(shù)據(jù)塊的控制如表所示。,對(duì)數(shù)據(jù)塊的控制表,X=015扇區(qū)、Y=每個(gè)扇區(qū)的02塊。,MIFARE1 卡存取控制與數(shù)據(jù)區(qū)的關(guān)系,存取控制位表示如表所示 。,位: # 7 6 5 4 3 2 1 0,開(kāi)發(fā)應(yīng)用人員可以根據(jù)自己應(yīng)用的具體情況,對(duì)不同的扇區(qū)可選用不用的存取控制,不同的密碼,但應(yīng)注意其每一位的格式,以免誤用!,注意:,MIFARE1卡接口設(shè)備內(nèi)核技術(shù),MIFARE 1非接觸式IC卡讀寫(xiě)模塊硬件內(nèi)核電路 MCM的硬件內(nèi)核寄存器描述 MCM的軟件編程,MIFARE1非接觸式IC卡讀寫(xiě)模塊 硬件內(nèi)核電路,MCM200/MCM500讀寫(xiě)模塊總體描述 MCM的硬件內(nèi)核接口電路,MCM200/MCM500讀寫(xiě)模塊總體描述,Philips公司的MIFARE1非接觸式IC卡讀寫(xiě)模塊主要有兩種產(chǎn)品型號(hào),即MCM200和MCM500。這兩種智能模塊均用于MIFARE 1非接觸式IC卡讀寫(xiě)器中,負(fù)責(zé)讀寫(xiě)器中對(duì)非接觸式IC卡的讀寫(xiě)等功能,其基本功能包括調(diào)制、解調(diào)、產(chǎn)生射頻信號(hào)、安全管理和防沖突處理,是讀寫(xiě)器MCU(微控制器)與非接觸式IC卡交換信息的橋梁。,MCM200的軟件與MCM500模塊100%兼容,其主要區(qū)別在于讀寫(xiě)距離不同:MCM200模塊對(duì)卡片的操作距離為25 mm,而MCM500模塊對(duì)卡片的操作距離為100 mm。,MIFARE 1所具有的獨(dú)特的MIFARE 1 RF(射頻)非接觸式接口標(biāo)準(zhǔn)已被制定為國(guó)際標(biāo)準(zhǔn):ISO/IEC 14443 TYPE A 標(biāo)準(zhǔn)。,MCM200/MCM500讀寫(xiě)模塊總體描述,MCM200模塊特性: 標(biāo)準(zhǔn)的雙列直插32引腳。 工作頻率:13.56MHz。 標(biāo)準(zhǔn)的+5V 電源供電,供電范圍為4.755.25V。 (典型)電流消耗40mA,最大不超過(guò)80mA,最小10mA左右。 讀寫(xiě)卡片距離可達(dá)25mm以上。 與卡片的通信速率可達(dá)106Kbps。 模塊與卡片通信時(shí),數(shù)據(jù)加密。 每個(gè)扇區(qū)設(shè)有3套密碼及其認(rèn)證和密碼存儲(chǔ)器。 有防卡片重疊功能。,MCM200模塊引腳排列示意圖。,MCM200模塊引腳排,MCM引腳功能描述表如表所示,MCM200/MCM500讀寫(xiě)模塊總體描述,16個(gè)字節(jié)的FIFO(先進(jìn)先出)隊(duì)列接收/發(fā)送緩沖寄存器。 在模塊與卡片通信時(shí)自動(dòng)偵查錯(cuò)誤,自動(dòng)對(duì)數(shù)據(jù)流分析。 對(duì)RF(射頻)通道自動(dòng)監(jiān)控。 內(nèi)建8位/16位的CRC協(xié)處理器,提供CRC,PARITY等數(shù)據(jù)校驗(yàn)。 支持多種方式的活動(dòng)天線,并且不需“天調(diào)系統(tǒng)”(天線調(diào)節(jié)系統(tǒng))對(duì)天線進(jìn)行補(bǔ)償調(diào)節(jié)。 標(biāo)準(zhǔn)的MIFARE并行接口與MCM500 100%全兼容。 MCM200 的軟件與MCM500模塊100%全兼容。 可控制,級(jí)聯(lián)MCM500模塊。 工作溫度范圍在:20+70。,MCM200/MCM500讀寫(xiě)模塊總體描述,MCM引腳功能描述表如表所示,MCM的硬件內(nèi)核接口電路,MCM的硬件內(nèi)核接口電路可分為以下4部分:,與MCU(微處理機(jī)CPU)接口電路。 RF模塊接口電路。 與天線射頻接口電路。 與電源接口電路。,與MCU(微處理機(jī)CPU)接口電路,MCM可由外部MCU發(fā)出特殊命令來(lái)啟動(dòng)運(yùn)行。在任何情況下,MCM都可以由對(duì)地址的選擇來(lái)啟動(dòng)工作。 對(duì)MCM內(nèi)部存儲(chǔ)器的存取,意味著將激活和CS信號(hào),以及對(duì)地址為00H0FH的寄存器的合適設(shè)置。 通過(guò)讀特殊I/O地址的信息,可以得到MCM的狀態(tài)信息。采用不同的MCU及其連接方法,將會(huì)有不同的硬件信號(hào)時(shí)序及數(shù)據(jù)信息流信息等。,如圖所示,MCM可以由標(biāo)準(zhǔn)的MCU接口信號(hào)來(lái)控制。這些標(biāo)準(zhǔn)的控制信號(hào)可以控制MCM的 ASIC進(jìn)行工作。其中使用了標(biāo)準(zhǔn)的微控制器和微處理機(jī)通信協(xié)議。,MCM與MCU的接口電路,RF模塊接口電路,MCM與RF模塊的接口電路如圖所示,RF模塊接口一般由以下幾個(gè)引腳來(lái)實(shí)現(xiàn):,通過(guò)KOMP0與PAUSE0可與RF0模塊相連接。 通過(guò)KOMP1與PAUSE0可與RF1模塊相連接(僅MCM500有兩個(gè)RF模塊)。 通過(guò)RxKOMP與Tx PAUSE0可與其他的級(jí)聯(lián)MCM模塊相連接。,RF模塊接口電路,與天線射頻接口電路,ANT和GND引腳可用阻抗50的同軸電纜直接與正極性天線相連接,連接長(zhǎng)度一般應(yīng)小于50 cm。 MCM的外部金屬屏蔽盒(僅有MCM500)必須連接到同軸電纜的外屏蔽包裹線,以使信號(hào)不能擴(kuò)散,且免受外界電磁輻射信號(hào)等的影響。 如果天線工作不正常,則可用“天線調(diào)諧器”來(lái)調(diào)諧,使之能將MIFARE 1卡的有效操作距離保持在25 mm/100 mm以上。,與電源接口電路,與電源的接口包括這樣幾組信號(hào):,DVDD數(shù)字電路正電源端(+5 V)。 DGND數(shù)字電路接地端(0 V)。 BP緩沖器供電(通電工作時(shí)為+5 V;不通電工作時(shí)為+3 V)。 RFVDDRF電路正電源端(MCM500:+12 V;MCM200:+5 V)。 RFGNDRF電路接地端(0 V)。,RFGND和DGND應(yīng)該分開(kāi)接地或接到系統(tǒng)的接地端,連接線應(yīng)該具有高導(dǎo)電特性且愈短愈粗愈好。 MCM供電電源端與GND端必須跨接100 nF的電容,這些電容應(yīng)盡可能靠近MCM。 為避免引起接地環(huán)路,整個(gè)系統(tǒng)應(yīng)由單一電源供電,且紋波電壓應(yīng)小于50 mV。,注意:,MCM的硬件內(nèi)核寄存器描述,MCU是通過(guò)對(duì)MCM 內(nèi)核特殊的內(nèi)存寄存器的讀寫(xiě)來(lái)控制MCM的。這些寄存器位于MCM中的ASIC(特殊應(yīng)用IC)的內(nèi)部,共有16個(gè)寄存器可存取。讀取MCM,一般的指向MIFARE 1卡請(qǐng)求。MCM實(shí)際上是MCU與非接觸式IC智能(射頻)卡之間信息(數(shù)據(jù))交換的“中間人”。任何讀取卡片上的數(shù)據(jù),或?qū)戇M(jìn)卡片上的數(shù)據(jù)均必須通過(guò)MCM 來(lái)傳遞。寫(xiě)MCM意味著去控制MCM,例如,送一些類型的指令給它。,MCM的硬件內(nèi)核寄存器描述,如表所示是MCM中ASIC內(nèi)核特殊寄存器一覽表。,數(shù)據(jù)寄存器(DATA寄存器) STACON 寄存器 ENABLE寄存器 BCNTS寄存器 BCNTR寄存器 BAUDRATE寄存器 TOC 寄存器 MODE寄存器 CRCDATA 寄存器 CRCSTACON寄存器 KEYDATA 寄存器 KEYSTACON寄存器 KEYADDR寄存器 RCODE寄存器,數(shù)據(jù)寄存器(DATA寄存器),任何傳遞到MIFARE 1卡的數(shù)據(jù)或來(lái)自MIFRAE 1卡的數(shù)據(jù)都必須分別地被寫(xiě)入DATA寄存器或從DATA寄存器中讀出。DATA寄存器中有一個(gè)16 B的FIFO(先進(jìn)先出)隊(duì)列寄存器。數(shù)據(jù)寫(xiě)到DATA寄存器后,被存放在這個(gè)16B的FIFO(先進(jìn)先出)隊(duì)列寄存器中,等待向卡片或MCU傳送。,在傳送DATA寄存器中的數(shù)據(jù)之前必須先設(shè)定要傳輸多少位(bit)或多少字節(jié)(Byte),即必須對(duì)BCNTS和BCNTR寄存器進(jìn)行有效的正確設(shè)置,以確定有多少字節(jié)將要被寫(xiě)入DATA寄存器發(fā)送給卡或?qū)目ń邮斩嗌賯€(gè)字節(jié)到DATA寄存器中。 當(dāng)來(lái)自卡的數(shù)據(jù)流接收結(jié)束或沒(méi)有被接收時(shí),STACON寄存器中的DV標(biāo)志被置位“1”,而且MCM上的引腳也將由“HIGH”變?yōu)椤癓OW”。 當(dāng)DV位為1時(shí),STACON寄存器中的error-bit(出錯(cuò)位)將被設(shè)置。如果沒(méi)有相關(guān)的error-bit被設(shè)置,則FIFO寄存器中的數(shù)據(jù)將被假設(shè)為正確,且可以被讀出。,注意:,STACON 寄存器,STACON 寄存器地址:01H,是一個(gè)狀態(tài)控制寄存器。將數(shù)據(jù)寫(xiě)到STACON寄存器中將對(duì)MCM進(jìn)行狀態(tài)控制,如表所示為STACON寄存器控制位表。,當(dāng)寫(xiě)數(shù)據(jù)到STACON寄存器時(shí)(即對(duì)STACON寄存器進(jìn)行設(shè)置),在寫(xiě)數(shù)據(jù)到STACON寄存器的這一寫(xiě)周期中,RFS位的設(shè)置必須與RF單元相互一致。 設(shè)置AC位,即“AC=1”,將使防重疊狀態(tài)機(jī)啟動(dòng)工作,執(zhí)行內(nèi)部存取。這一存取在設(shè)置AC位后的12s開(kāi)始,至35s結(jié)束。在這一間隙時(shí)間,不允許MCU向MCM進(jìn)行寫(xiě)(Write)數(shù)據(jù)操作,必須延遲35s。這是為了保證防重疊狀態(tài)機(jī)處理軟件的正確運(yùn)行,讓其能識(shí)別疊放在一起的多張MIFARE 1 卡片,為下一步進(jìn)行選擇一張指定SN(Serial Number)的MIFARE 1卡片進(jìn)行數(shù)據(jù)讀/寫(xiě)而做準(zhǔn)備。,注意:,STACON 寄存器,讀取STACON寄存器,將告訴一系列的MCM及卡片的當(dāng)前狀況信息。如表所示為讀取STACON寄存器后的一系列標(biāo)志位表。,STACON 寄存器,在上表中,僅當(dāng)DV(Data Valid數(shù)據(jù)有效)位被設(shè)置有效時(shí)(即DV=“1”),TE、PE、CE、BE及AE標(biāo)志才有效。但有一例外,即當(dāng)認(rèn)證(Authentication)正確完成后,AE標(biāo)志也直接有效。 SOR是Software Reset(軟件復(fù)位)的縮寫(xiě)。當(dāng)執(zhí)行SOR后,所有的標(biāo)志將被清除,且當(dāng)對(duì)MCM的任何一個(gè)寄存器執(zhí)行寫(xiě)周期時(shí),所有的標(biāo)志也將被清除。 當(dāng)對(duì)MCM內(nèi)的任何一個(gè)寄存器執(zhí)行寫(xiě)周期時(shí),所有的這些標(biāo)志也將被清除;僅當(dāng)FIFO是空時(shí),DV標(biāo)志將被寫(xiě)周期清除。 有時(shí)候MCM接收少于8 bits(例如在接收ACK 或NACK時(shí))時(shí),MCM將不影響PE、CE及AE標(biāo)志。 在MCU與MCM,MCM與MIFARE 1卡片進(jìn)行數(shù)據(jù)通信時(shí),經(jīng)常會(huì)出現(xiàn)各種錯(cuò)誤。例如,卡片沒(méi)能認(rèn)證(Authentication)通過(guò),則會(huì)使AE出錯(cuò)位置位等。,STACON 寄存器,以下是在檢查DV位之后,相關(guān)的出錯(cuò)情況,如下表所示。,ENABLE寄存器,ENABLE寄存器地址:02H,ENABLE寄存器的設(shè)置將影響卡片在通信時(shí)對(duì)Parity和CRC的校驗(yàn)。在ENABLE寄存器中有針對(duì)Parity和CRC校驗(yàn)的復(fù)位允許位(reset ENABLE bits)。對(duì)ENABLE寄存器進(jìn)行寫(xiě)操作,將執(zhí)行對(duì)Parity和CRC塊的控制。,在對(duì)MCM進(jìn)行編程的開(kāi)始時(shí),必須對(duì)ENABLE寄存器進(jìn)行寫(xiě)操作,即必須將CE位關(guān)閉,僅當(dāng)執(zhí)行“Select”命令操作時(shí)才打開(kāi)CE位。 由于MCM在電源接通時(shí)或在任何數(shù)據(jù)通信開(kāi)始時(shí),都會(huì)復(fù)位Parity和CRC塊,因此無(wú)須額外地去執(zhí)行這一操作。,注意:,BCNTS寄存器,BCNTS寄存器地址:03H,BCNTS是傳送時(shí)的位計(jì)數(shù)器(寄存器)。這里的傳送指的是CPU向MCM的DATA寄存器寫(xiě)數(shù)據(jù)。因此BCNTS寄存器實(shí)際上是一個(gè)字節(jié)發(fā)送控制器,它控制了MCU向DATA寄存器中寫(xiě)進(jìn)的數(shù)據(jù)字節(jié)數(shù)目。 例如,設(shè)置BCTRS=10H,則可向MCM的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論