智能卡的基本結(jié)構(gòu)
文章出處:http://56733.cn 作者:搜狐智能卡技術(shù)博客 人氣: 發(fā)表時(shí)間:2011年10月10日
智能卡(Smart Card)也常被翻譯成“聰明卡”、“智慧卡”,還有另外一種稱(chēng)呼叫做IC卡(Integrated Circuit Card)。一般是指在卡片中嵌入了集成電路芯片,可以利用芯片中的集成電路存儲(chǔ)單元,來(lái)進(jìn)行數(shù)據(jù)存儲(chǔ)和一些相應(yīng)的數(shù)據(jù)處理工作。
其中核心部分就是智能卡芯片,而芯片首先會(huì)被封裝成一個(gè)獨(dú)立的模塊,然后嵌入到塑料卡基上,對(duì)于非接觸卡片來(lái)說(shuō)卡基上還要埋置設(shè)計(jì)好的天線。
如果單獨(dú)把智能卡放在我們手上,我們根本沒(méi)有任何辦法來(lái)操作它,一個(gè)獨(dú)立的智能卡對(duì)于任何應(yīng)用系統(tǒng)而言都是毫無(wú)意義的。我們?yōu)榱瞬倏刂悄芸?,?duì)其中的數(shù)據(jù)進(jìn)行訪問(wèn),就必須要借助一個(gè)能夠操作智能卡的機(jī)具,通常叫做讀卡器,或者讀寫(xiě)器(reader),或者終端(terminal),或者卡片受理設(shè)備CAD(card acceptance device)。我們通常熟悉的商場(chǎng)POS(point of sales)機(jī),銀行ATM(auto-teller machine)機(jī),手機(jī),IC卡電表,IC卡水表,IC卡煤氣表,公交車(chē)或者地鐵里的驗(yàn)卡機(jī)等等,都可以稱(chēng)作是終端設(shè)備。我們只有通過(guò)這些終端設(shè)備才能夠真正讓智能卡的作用得以發(fā)揮。
所以從根本上講,智能卡的芯片至少要包括以下三部分:
數(shù)據(jù)存儲(chǔ)單元
這是智能卡存儲(chǔ)數(shù)據(jù)的地方,按照有些公司的安全考慮,在進(jìn)行數(shù)據(jù)存儲(chǔ)單元的設(shè)計(jì)時(shí)會(huì)采用各種各樣的安全措施,常用的是地址亂碼(Address scrambling)技術(shù),這樣即使將來(lái)芯片被別人打開(kāi),也不能夠正確獲取其中存儲(chǔ)的數(shù)據(jù)信息。目前用于數(shù)據(jù)存儲(chǔ)的技術(shù)主要有EEPROM和Flash兩種主要技術(shù),它們之間的主要區(qū)別在于數(shù)據(jù)擦除的方式不同。EEPROM可以按照字節(jié)擦除,也就是說(shuō)寫(xiě)入的數(shù)據(jù)是多少就擦除多少,然后重新寫(xiě)入;而Flash則要按照頁(yè)面的方式擦除,每個(gè)頁(yè)面的大小一般是64個(gè)字節(jié)或者256個(gè)字節(jié)。現(xiàn)在也有其他一些新興的存儲(chǔ)技術(shù)比如鐵電存儲(chǔ)等,但是在實(shí)際應(yīng)用中使用的還很少。
邏輯控制單元
這部分主要是控制數(shù)據(jù)存儲(chǔ)單元的訪問(wèn),也就是讀和寫(xiě)的問(wèn)題。通過(guò)不同的時(shí)序組合,或者是安全機(jī)制來(lái)許可或者拒絕來(lái)自外部的數(shù)據(jù)訪問(wèn)要求。一般來(lái)說(shuō)邏輯加密卡需要通過(guò)密碼的比對(duì)才能得到讀寫(xiě)的權(quán)限,而普通的存儲(chǔ)卡只要命令的時(shí)序正確,就能夠訪問(wèn)數(shù)據(jù)存儲(chǔ)區(qū)的內(nèi)容。
輸入輸出接口單元
這部分是和外界的接口,所有發(fā)送給卡片的數(shù)據(jù),以及卡片傳遞到外面的數(shù)據(jù)都是通過(guò)這個(gè)接口來(lái)實(shí)現(xiàn)的。按照卡片的接口形式,可以把卡片分成接觸式和非接觸式的,接觸式的卡片表面帶有接觸的觸點(diǎn),操作接觸式卡片的終端設(shè)備內(nèi)部都有一個(gè)卡座,在進(jìn)行數(shù)據(jù)通訊的時(shí)候,卡片上的觸點(diǎn)和卡片上的觸點(diǎn)必須始終處于接觸狀態(tài);而非接觸卡在和終端設(shè)備進(jìn)行數(shù)據(jù)通訊的時(shí)候,只要在一定的距離內(nèi)就能夠正常操作,無(wú)需把卡片和終端接觸到一起;另外目前也有一些卡片兼?zhèn)浣佑|和非接觸兩種接口,我們稱(chēng)之為雙界面卡。
除了上面的這三個(gè)基本的單元之外,對(duì)于CPU卡而言(從嚴(yán)格的意義上講,只有具備CPU的卡片才能夠叫做真正的智能卡),還具有:
用于數(shù)據(jù)處理的CPU單元
用于執(zhí)行卡片中的嵌入式程序,完成某種特定的應(yīng)用功能。按照處理能力劃分目前有8位、16位和32位CPU應(yīng)用在智能卡中。按照CPU的種類(lèi)劃分以51系列為主,還有68HC05系列,H8系列,精簡(jiǎn)指令集的RISC系列和ARM系列等。
用于存儲(chǔ)程序的ROM或者Flash單元
用戶編寫(xiě)的COS程序會(huì)被掩模到ROM中或者是下載到Flash中。
用于緩存的RAM單元
主要包括一些基本的寄存器和暫存數(shù)據(jù)的RAM。
用于增強(qiáng)功能的加密引擎
比如實(shí)現(xiàn)DES加密算法的硬件DES加密模塊,或者為了加快RSA加密處理的加密協(xié)處理器等。
目前的智能卡數(shù)據(jù)存儲(chǔ)空間已經(jīng)可以達(dá)到若干兆,程序可以達(dá)到數(shù)百K,這都是隨著半導(dǎo)體工藝的進(jìn)步而取得的結(jié)果。比起當(dāng)年只有幾K的存儲(chǔ)空間來(lái)講,讓那些COS的編寫(xiě)者更加得心應(yīng)手,開(kāi)發(fā)的卡片功能也更加強(qiáng)大了。