ROM(Read Only Memory,只讀存儲器)芯片:在微機的發(fā)展初期,BIOS都存放在ROM芯片中。ROM內(nèi)部的資料是在ROM的制造工序中,在工廠里用特殊的方法被燒錄進去的,其中的內(nèi)容只能讀不能改,一旦燒錄進去,用戶只能驗證寫入的資料是否正確,不能再作任何修改。如果發(fā)現(xiàn)資料有任何錯誤,則只有舍棄不用,重新訂做一份。ROM是在生產(chǎn)線上生產(chǎn)的,由于成本高,一般只用在大批量應(yīng)用的場合。
PROM(Programmable ROM,可編程ROM)芯片:由于ROM制造和升級的不便,后來人們發(fā)明了PROM(Programmable ROM,可編程ROM)。最初從工廠中制作完成的PROM內(nèi)部并沒有資料,用戶可以用專用的編程器將自己的資料寫入,但是這種機會只有一次,一旦寫入后也無法修改,若是出了錯誤,已寫入的芯片只能報廢。PROM的特性和ROM相同,但是其成本比ROM高,而且寫入資料的速度比ROM的量產(chǎn)速度要慢,一般只適用于少量需求的場合或是ROM量產(chǎn)前的驗證。
EPROM(Erasable Programmable ROM,可擦除可編程ROM)芯片:可重復擦除和寫入,解決了PROM芯片只能寫入一次的弊端。EPROM芯片有一個很明顯的特征,在其正面的陶瓷封裝上,開有一個玻璃窗口,透過該窗口,可以看到其內(nèi)部的集成電路,紫外線透過該孔照射內(nèi)部芯片就可以擦除其內(nèi)的數(shù)據(jù),完成芯片擦除的操作要用到EPROM擦除器。EPROM內(nèi)資料的寫入要用專用的編程器,并且往芯片中寫內(nèi)容時必須要加一定的編程電壓(VPP=12—24V,隨不同的芯片型號而定)。EPROM 的型號是以27開頭的,如27C020(8*256K)是一片2M Bits容量的EPROM芯片。EPROM芯片在寫入資料后,還要以不透光的貼紙或膠布把窗口封住,以免受到周圍的紫外線照射而使資料受損。
EEPROM(Electrically Erasable Programmable ROM,電可擦除可編程ROM)芯片:鑒于EPROM操作的不便,后來出的主板上的BIOS ROM芯片大部分都采用EEPROM。EEPROM的擦除不需要借助于其它設(shè)備,它是以電子信號來修改其內(nèi)容的,而且是以Byte為最小修改單位,不必將資料全部洗掉才能寫入,徹底擺脫了EPROM Eraser和編程器的束縛。EEPROM在寫入數(shù)據(jù)時,仍要利用一定的編程電壓,此時,只需用廠商提供的專用刷新程序就可以輕而易舉地改寫內(nèi)容,所以,它屬于雙電壓芯片。借助于EEPROM芯片的雙電壓特性,可以使BIOS具有良好的防毒功能,在升級時,把跳線開關(guān)打至“ON”的位置,即給芯片加上相應(yīng)的編程電壓,就可以方便地升級;平時使用時,則把跳線開關(guān)打至“OFF”的位置,防止CIH類的病毒對BIOS芯片的非法修改。所以,至今仍有不少主板采用EPROM作為BIOS芯片并作為自己主板的一大特色。
FLASH ROM芯片:FLASH ROM則屬于真正的單電壓芯片,在使用上很類似EEPROM,因此,有些書籍上便把FLASH ROM作為EEPROM的一種。事實上,二者還是有差別的。FLASH ROM在擦除時,也要執(zhí)行專用的刷新程序,但是在刪除資料時,并非以Byte為基本單位,而是以Sector(又稱Block)為最小單位,Sector 的大小隨廠商的不同而有所不同;只有在寫入時,才以Byte為最小單位寫入;FLASH ROM芯片的讀和寫操作都是在單電壓下進行,不需跳線,只利用專用程序即可方便地修改其內(nèi)容;FLASH ROM的存儲容量普遍大于EEPROM,約為512K到至8M KBit,由于大批量生產(chǎn),價格也比較合適,很適合用來存放程序碼,近年來已逐漸取代了EEPROM,廣泛用于主板的BIOS ROM,也是CIH攻擊的主要目標。
FLASH Memory又分為NOR型和NAND型。NOR型與NAND型閃存的區(qū)別很大,NOR型閃存更像內(nèi)存,有獨立的地址線和數(shù)據(jù)線,但價格比較貴,容量比較?。欢鳱AND型更像硬盤,地址線和數(shù)據(jù)線是共用的I/O線,類似硬盤的所有信息都通過一條硬盤線傳送一般,而且NAND型與NOR型閃存相比,成本要低一些,而容量大得多。因此,NOR型閃存比較適合頻繁隨機讀寫的場合,通常用于存儲程序代碼并直接在閃存內(nèi)運行,手機就是使用NOR型閃存的大戶,所以手機的“內(nèi)存”容量通常不大;NAND型閃存主要用來存儲資料,常用的閃存產(chǎn)品,如閃存盤、數(shù)碼存儲卡都是用NAND型閃存。
常用智能IC卡芯片類型
今天的半導體技術(shù)使通過減少結(jié)構(gòu)在相同大小的硅片上封裝越來越多的功能成為可能。這就在不增加芯片面積的同時擴大了芯片卡的存儲容量和處理能力。
一般IC卡所使用的主要芯片分為通用芯片和專用芯片兩大類。所謂通用芯片,就是普通的集成電路芯片,如美國ATMEL公司的AT24C01兩線串行鏈接協(xié)議存儲芯片。其出廠時就有兩種供貨形式,一是封裝成集成電路直接提供給最終用戶使用,二是以裸芯片的形式提供給IC卡生產(chǎn)廠商封裝成IC卡。裸芯片幾乎沒有安全性設(shè)計,也不完全符合目前IC卡的國際標準,但因其開發(fā)使用簡單、價格便宜,比較適合于初期的對安全性要求不高的IC卡應(yīng)用。所謂專用芯片,就是專為IC卡而設(shè)計、制造的芯片,如荷蘭Philips公司的PCB2032/2042芯片。這種芯片符合目前IC卡的ISO國際標準、具有較高的安全性。本節(jié)主要介紹以上芯片所采用的技術(shù)種類,各種常用智能卡芯片的有關(guān)技術(shù)將在其它章節(jié)中詳細介紹。
一般IC卡所使用的主要芯片分為兩大類:存儲器芯片和微控制器芯片。存儲器卡使用存儲器芯片作為卡芯,智能卡使用微控制器芯片作為卡芯。
IC卡經(jīng)常使用的存儲器芯片種類及特性見表1。
IC卡經(jīng)常使用的微控制器芯片種類及特性見表2。
IC卡使用的IC芯片以帶有安全邏輯的存儲器芯片和帶有加密運算的微控制器芯片最為普遍,兩種芯片的典型邏輯結(jié)構(gòu)見下圖。
帶有安全邏輯的IC卡用存儲器芯片
考慮到IC卡和計算機緊密相關(guān)性及低電壓技術(shù)用于IC卡上的可靠性等問題,目前市場上推出的IC卡用芯片還沒有低電壓芯片。但由于低電壓、低功耗芯片非常適合于IC卡應(yīng)用,隨著半導體技術(shù)的發(fā)展和IC卡應(yīng)用領(lǐng)域的逐步擴大,低電壓芯片必將成為用于IC卡的主要芯片。例如,美國Motorola公司就將開發(fā)工作電壓可小于2V的IC用芯片。
由于IC卡應(yīng)用要求具有較高的安全性,用于IC卡的芯片比普通芯片在安全方面的考慮較多。例如,防止用掃描高頻電子顯微鏡對存儲器進行讀取,防止測試功能的再激活等。此外用于IC卡的芯片還具有較高的抗干擾能力。
目前已有少數(shù)國際上較有影響的IC芯片制造商致力于IC卡用芯片的制造,主要公司有: TI(美國)、Atmel(美國)、Catalyst(美國)、Motorola(美國)、NEC(日本)、Oki(日本)、Toshiba(日本)、Hitachi(日本)、Philips(荷蘭)、Siemens(德國)、SGS(法國)等。
一、 Siemens公司提供的IC卡芯片
Siemens公司是世界范圍內(nèi)的IC卡用芯片主要供應(yīng)商之一。Siemens公司的方針政策就是為卡制造商提供大范圍的IC卡用芯片以覆蓋所有IC卡的應(yīng)用領(lǐng)域。IC卡帶有特殊的控制和安全邏輯,主要用作電子貨幣,如預付卡、用戶卡。此外,進出控制系統(tǒng)和健康保險卡也使用此類IC卡用芯片。Siemens公司提供的主要芯片有SLE4404、SLE4406、SLE4418、SLE4428、SLE4432/4442、SLE4436等。
PSC可編程安全碼(Programmable Security Code)智能卡則轉(zhuǎn)向于多功能的應(yīng)用。智能卡用芯片上一般含有~8位微控制器,并帶有相應(yīng)的安全邏輯和EEPROM等,有的芯片上還有數(shù)學運算協(xié)處理器,用以處理一些較為復雜的加密/解密運算(例如RSA)。在這方面,Siemens公司提供的主要芯片有SLE44C10、SLE44C40、SLE44C80、SLE44C200等。另外,Simens公司還以SMD封裝形式提供獨立式的加密協(xié)處理器SLE44CP2。
DES數(shù)據(jù)加密標準(Data Encryption Standard)
DSA數(shù)字簽名算法(Digital Signature Algorithm)
PIN個人標識碼(Personal Identification Number)
POS銷售點設(shè)備(Point Of Sale)
RSA以此三人名字命名的算法(Rivest,Shamir,Adleman)
二、 Atmel公司提供的IC卡芯片
美國Atmel公司是IC卡用芯片的主要生產(chǎn)廠家之一,其所提供的IC卡用芯片種類較多,功能較豐富,下面對其提供的簡單存儲芯片和加密存儲芯片作一簡單介紹。
1. 簡單存儲芯片
· AT24C01A/
· AT93C46/56/57/66:三線聯(lián)接1K/2K/4K位串行EEPROM。
2. 加密存儲芯片
· AT88SC101:帶加密邏輯的1K位串行EEPROM(1個應(yīng)用區(qū)域);
· AT88SC102:帶加密邏輯的1K位串行EEPROM(2個應(yīng)用區(qū)域);
· AT88SC200:帶加密邏輯的2K位串行EEPROM(專用)。
三、 Motorola公司提供的IC卡芯片
Motorola是世界上提供無線電通信、半導體器件、高檔電子設(shè)備及服務(wù)的主要廠商之一。Motorola公司的銷售、服務(wù)和生產(chǎn)機構(gòu)遍布世界各地。它所提供的帶CPU的IC卡用芯片在許多領(lǐng)域有著廣泛的應(yīng)用。M68HC05SC系列單片微控制器(MCU)是專門設(shè)計用于IC卡和嵌入式控制應(yīng)用的。它的基于工業(yè)標準的M68HC05低功耗HCMOS內(nèi)核,提供了強有力的指令集。在IC卡這一概念剛剛問世之時,Motorola公司就成了IC卡用芯片供應(yīng)商的先驅(qū)。Motorola公司于1977年第一次提供支持IC卡的芯片(兩處解決方案),并于1979年首次提出單晶片解決方案。該系列產(chǎn)品具有較高的安全特性,目前已有較廣泛應(yīng)用,例如GSM、付費電視、銀行。M68HC05線路設(shè)計符合ISO7816標準,同時也符合GSM SIM11.10和1.11規(guī)范。該系列中的三個成員(SC21、7、1)可以滿足GSM的需要。基于對以上產(chǎn)品開發(fā)的支持,Motorola提供相關(guān)的軟硬件開發(fā)手段。
該系列主要技術(shù)指標為:
· HCMOS技術(shù),全靜態(tài)操作。
· 8位結(jié)構(gòu),基于M68HC05內(nèi)核。
· 5M Hz外部時鐘頻率時,內(nèi)部時鐘頻率為2.5M。
· 4M外部時鐘頻率時,內(nèi)部時鐘頻率為4M。(在SC21、24、26、27、28上可選)
· 5根雙向I/O線。
· 外部可中斷屏蔽中斷。
· 8位×8位無符號乘法指令。
· 存儲器映像式I/O。
· 安全特性。
· 上電檢測。
· 節(jié)電STOP和WAIT工作方式。
· 鍵接點平面符合ISO7816-2標準。
· 真位管理功能。
四、 Philips公司提供的IC卡芯片
Philips公司是世界上著名的芯片制造商,所提供的非接觸型IC卡用芯片、帶加密功能的IC卡用微控制器芯片在世界上有廣泛的應(yīng)用。下面對其作一簡單介紹:
· Philips PCB 2032/2042:帶有保護功能和可編程安全碼的256字節(jié)EEPROM。
· 接口電路PCF 7930 CP/25:可編程標識脈沖轉(zhuǎn)發(fā)器(Programmable Identification Transponder)。
· PCF 7960:儲蓄卡IC芯片。
· 基站IC:用于和Philips轉(zhuǎn)發(fā)器之間進行交互通訊。
· 83C852:8位安全微控制器(帶加密運算協(xié)處理器)。