Smart COS操作系統(tǒng)技術(shù)解析
文章出處:http://m.dipdnbxp.cn 作者: 人氣: 發(fā)表時(shí)間:2012年02月19日
[文章內(nèi)容簡(jiǎn)介]:COS的主要功能是控制智能卡和外界的信息交換,管理智能卡內(nèi)的存儲(chǔ)器并在卡內(nèi)部完成各種命令的處理。一般來(lái)講,接口設(shè)備與卡之間的命令處理過程可分為四個(gè)功能模塊:即傳輸管理器、安全管理器、應(yīng)用管理器和文件管理器。
1. Smart COS簡(jiǎn)介
CPU卡操作系統(tǒng)簡(jiǎn)稱COS,它是伴隨著集成電路卡從簡(jiǎn)單的EEPROM發(fā)展到帶微處理器的智能卡而應(yīng)運(yùn)產(chǎn)生的。隨著CPU卡應(yīng)用的日益廣泛,作為國(guó)內(nèi)制卡行業(yè)和讀寫機(jī)具開發(fā)生產(chǎn)企業(yè)的先鋒,深圳市明華澳漢科技有限公司于1999年6月成功地開發(fā)出符合《中國(guó)金融集成電路(IC)卡規(guī)范》、ISO/IEC7816標(biāo)準(zhǔn)的且擁有自主版權(quán)的CPU卡操作系統(tǒng)Smart COS。在金融領(lǐng)域,它可作為現(xiàn)金卡、信用卡等銀行卡使用;在社保、工商、稅務(wù)、證券等各種付費(fèi)行業(yè)可作為用戶卡使用;在電子商務(wù)網(wǎng)絡(luò)系統(tǒng)中,可做為交易雙方的身份識(shí)別。
Smart COS具有如下特點(diǎn):
1)符合《中國(guó)金融集成電路(IC)卡規(guī)范》、《中國(guó)金融集成電路(IC)卡應(yīng)用規(guī)范》
2)支持ISO-7816 T=0 通訊協(xié)議。
3)文件系統(tǒng)支持二進(jìn)制文件、定長(zhǎng)記錄文件、變長(zhǎng)記錄文件、循環(huán)定長(zhǎng)記錄文件。
4)支持電子錢包、電子存折功能。
5)支持Single DES、Triple DES等加密算法,并支持用戶特有的安全加密算法的下載。
6)支持線路加密、線路認(rèn)證功能,防止通信數(shù)據(jù)被非法竊取或篡改。
7)可用作安全保密模塊,使用過程密鑰實(shí)現(xiàn)加密、解密。
8)支持多種容量選擇,可選擇2K、4K、8K、16K字節(jié)的EEPROM空間。
9)安全機(jī)制使用狀態(tài)機(jī),并支持PIN檢驗(yàn)、CPU卡和終端的雙向認(rèn)證、數(shù)據(jù)加密、解密、MAC驗(yàn)證。
10)滿足個(gè)別需求,可根據(jù)特殊行業(yè)的特殊用戶的需求定制。
2.Smart COS功能模塊
CPU卡也稱智能卡,它的核心就是芯片操作系統(tǒng),外界對(duì)卡發(fā)布的所有命令都需要通過操作系統(tǒng)才能對(duì)CPU卡起作用。
COS的主要功能是控制智能卡和外界的信息交換,管理智能卡內(nèi)的存儲(chǔ)器并在卡內(nèi)部完成各種命令的處理。一般來(lái)講,接口設(shè)備與卡之間的命令處理過程可分為四個(gè)功能模塊:即傳輸管理器、安全管理器、應(yīng)用管理器和文件管理器。
傳輸管理
對(duì)于COS而言,通訊層是接收和發(fā)送數(shù)據(jù)的通道,負(fù)責(zé)終端和卡片之間的數(shù)據(jù)傳輸。為了使卡片具有兼容性,大多數(shù)CPU卡都遵循ISO7816中規(guī)定T=0和T=1的傳輸協(xié)議。T=0通訊協(xié)議是異步半雙工字符傳輸協(xié)議,數(shù)據(jù)以字符的形式按照規(guī)定的時(shí)間周期進(jìn)行傳輸。T=1通訊協(xié)議是異步半雙工塊傳輸協(xié)議,在傳輸數(shù)據(jù)之前,首先將要傳輸?shù)臄?shù)據(jù)分為多塊,之后再將每一塊數(shù)據(jù)以字符的形式按照規(guī)定的時(shí)間周期進(jìn)行傳輸。Smart COS V3.1符合T=0的協(xié)議標(biāo)準(zhǔn)。
安全管理
安全管理是對(duì)CPU卡中的數(shù)據(jù)進(jìn)行安全控制及管理,它具體可分為兩種功能:一是安全傳輸功能,二是對(duì)內(nèi)部安全數(shù)據(jù)的控制管理。
(1)在卡與外界進(jìn)行數(shù)據(jù)傳輸時(shí),若以明文方式傳輸,數(shù)據(jù)有可能被劫獲或篡改。為防止這種情況,提供了線路保護(hù)功能,主要通過以下兩種方式實(shí)現(xiàn):一是對(duì)傳輸?shù)臄?shù)據(jù)進(jìn)行加密,數(shù)據(jù)以密文方式傳輸。二是對(duì)傳輸?shù)臄?shù)據(jù)附加安全報(bào)文MAC碼,接收方首先對(duì)傳輸?shù)臄?shù)據(jù)進(jìn)行MAC碼校驗(yàn),以此來(lái)確認(rèn)數(shù)據(jù)在傳輸過程中的完整性并對(duì)發(fā)送方進(jìn)行認(rèn)證。
Smart COS V3.1具有線路保護(hù)功能。寫入或修改密鑰時(shí),可采用密文方式;寫入或修改二進(jìn)制文件,可采用安全報(bào)文方式。用戶可以根據(jù)應(yīng)用的具體要求,靈活地使用線路保護(hù)功能。
(2)內(nèi)部安全數(shù)據(jù)的控制管理包括對(duì)卡中文件訪問權(quán)限的控制和密鑰的管理二方面??紤]到密鑰的絕對(duì)安全性能,Smart COS對(duì)于內(nèi)部用于安全認(rèn)證和數(shù)據(jù)加密的各種密鑰實(shí)行安全控制管理。一旦密鑰在卡中建立,只有在授權(quán)的情況下,才允許內(nèi)部使用,CPU卡之外絕不會(huì)被泄露出來(lái)。
應(yīng)用管理
應(yīng)用管理對(duì)外部而言是指卡片如何管理不同的應(yīng)用,也就是說,卡片是多應(yīng)用卡片還是單應(yīng)用卡片。單應(yīng)用卡片相對(duì)比較簡(jiǎn)單,內(nèi)部只提供單個(gè)DF文件,并且只有一套安全管理系統(tǒng)和應(yīng)用數(shù)據(jù)。而多應(yīng)用卡片就比較復(fù)雜,卡中可以存在多個(gè)DF文件,每個(gè)DF文件都有自己的專有EF數(shù)據(jù)文件和密鑰系統(tǒng),每個(gè)應(yīng)用之間相互獨(dú)立,具有“防火墻”功能。。Smart COS支持一卡多應(yīng)用,可以建立一個(gè)DF文件當(dāng)作一個(gè)應(yīng)用,也可以將多個(gè)DF文件組合在一起看作一個(gè)應(yīng)用。用戶在使用的時(shí)候,可以根據(jù)情況來(lái)規(guī)劃。
應(yīng)用管理對(duì)卡片內(nèi)部來(lái)說指的是卡片是如何管理DF文件及其下屬的EF數(shù)據(jù)文件,并且負(fù)責(zé)解釋執(zhí)行命令。命令是卡片提供給外部環(huán)境用來(lái)訪問卡片數(shù)據(jù)的手段,外部只有通過命令才能訪問卡片中的數(shù)據(jù)或?qū)ㄆM(jìn)行相應(yīng)的操作,通過卡片提供的命令就能判斷卡片具有的功能。
文件管理
在CPU卡中,數(shù)據(jù)都是以各種文件的形式進(jìn)行存儲(chǔ),以目錄的方式進(jìn)行管理。文件管理器負(fù)責(zé)對(duì)所有文件的操作和訪問,因此文件管理系統(tǒng)設(shè)計(jì)的好壞直接影響著卡片的使用效率和功能。
Smart COS的文件管理遵循以下原則:
(1)文件系統(tǒng)分三層結(jié)構(gòu)即MF-DF-EF。在選擇某個(gè)文件之前必須先選擇它的上一層文件,不允許跨層選擇??ㄆ想姾笞詣?dòng)選擇主控文件。
(2)MF建立之后,Smart COS自動(dòng)將整個(gè)EEPROM空間都分配給了它。只要EEPROM空間允許且滿足增加權(quán)限要求,MF下可任意增加新應(yīng)用;只要EEPROM空間允許且滿足增加權(quán)限要求,DF下可任意增加基本文件。
(3)對(duì)某個(gè)文件操作之前,必須先選擇該文件;對(duì)于基本文件操作,可在命令中直接用短文件標(biāo)識(shí)符指定該文件。
(4)每個(gè)文件都有可以設(shè)置訪問權(quán)限;文件的訪問權(quán)限受該文件安全屬性的控制。
(5)在MF和DF建立正常結(jié)束之前,安全條件不起作用。
3.Smart COS文件系統(tǒng)
按照ISO/IEC 7816-4規(guī)范要求,COS的文件系統(tǒng)物理上分兩個(gè)層次級(jí)別,分別是專有文件DF和基本文件EF,最上層的DF又稱為MF,組成一個(gè)類似于DOS的層次結(jié)構(gòu)。若要對(duì)文件系統(tǒng)中的某文件進(jìn)行讀、寫操作,應(yīng)先使用選擇命令指定相應(yīng)的MF、DF和EF。
Smart COS 文件系統(tǒng)層次結(jié)構(gòu)如下:
主控文件(Master File , MF)
主控文件是整個(gè)文件系統(tǒng)的根,每張卡有且只有一個(gè)主控文件。它是在卡的個(gè)人化過程中首先被建立起來(lái)的,在卡的整個(gè)生命周期內(nèi)一直存在并保持有效,可存儲(chǔ)卡的公共數(shù)據(jù)信息并為各種應(yīng)用服務(wù)。在物理上,主控文件占有的存儲(chǔ)空間包括MF文件頭的大小以及MF所管理的EF和DF的存儲(chǔ)空間。
專用文件(Dedicated File,DF)
在MF下針對(duì)不同的應(yīng)用建立起來(lái)的一種文件,是位于MF之下的含有EF的一種文件結(jié)構(gòu)(可看做文件目錄),它存儲(chǔ)了某個(gè)應(yīng)用的全部數(shù)據(jù)以及與應(yīng)用操作相關(guān)的安全數(shù)據(jù)。DF在建立之初,不必指定空間大小,其空間大小隨其下建立基本文件的空間大小而改變。對(duì)DF的建立操作由MF的安全屬性控制。
Smart COS采用兩級(jí)目錄結(jié)構(gòu),即MF下只能有一級(jí)DF,DF下面不可再建立子DF,只能建立EF。
基本文件(Elementary File,EF)
基本文件存儲(chǔ)了各種應(yīng)用的數(shù)據(jù)和管理信息,它存在于MF或DF下。EF從存儲(chǔ)內(nèi)容上分為兩類:安全基本文件和工作基本文件。
安全基本文件(Secret Elementary File,SEF)的內(nèi)容包含用于用戶識(shí)別和與加密有關(guān)的保密數(shù)據(jù)(個(gè)人識(shí)別碼、密鑰等),卡將利用這些數(shù)據(jù)進(jìn)行安全管理。SEF要在MF或DF建立后,才能建立。安全基本文件的內(nèi)容不可被讀出,但可使用專門的指令來(lái)寫入和修改。在MF和每個(gè)DF下只能建立一個(gè)安全基本文件,但KEY和PIN的類型須由用戶寫入密鑰時(shí)指出。
工作基本文件(Working Elementary File,WEF)包含了應(yīng)用的實(shí)際數(shù)據(jù),其內(nèi)容不被卡解釋。在符合讀、修改安全屬性時(shí),可對(duì)其內(nèi)容進(jìn)行讀取、修改。工作文件的個(gè)數(shù)和大小受到MF或DF所擁有空間的限制。
Smart COS支持以下四種基本文件:
此外還有一些只能特殊使用的文件類型,如ATR文件、錢包文件、存折文件、密鑰文件等,但其文件結(jié)構(gòu)也不會(huì)超出以上四種文件類型。
4.Smart COS安全體系
智能卡之所以能夠迅速地發(fā)展并且流行起來(lái),其主要原因是COS的文件和安全兩大特點(diǎn)。Smart COS的安全體系可以為用戶提供一個(gè)較高的安全性保證。
狀態(tài)機(jī)
狀態(tài)機(jī)又稱安全狀態(tài),是指卡在當(dāng)前所處的一種安全級(jí)別??ǖ闹骺啬夸浐彤?dāng)前應(yīng)用目錄下分別有一個(gè)狀態(tài)機(jī),為16種不同的安全狀態(tài)(0~F)。復(fù)位后主控目錄的安全狀態(tài)為0,應(yīng)用目錄的改變不影響主控目錄的安全狀態(tài),只有主控目錄下的口令核對(duì)或外部認(rèn)證才能改變主控目錄的安全狀態(tài)。
當(dāng)前應(yīng)用的安全狀態(tài)在被成功地選擇或復(fù)位后自動(dòng)清為0。只能用當(dāng)前應(yīng)用的口令核對(duì)或外部認(rèn)證才能改變當(dāng)前應(yīng)用的狀態(tài)。如果當(dāng)前目錄為MF,則當(dāng)前應(yīng)用的安全狀態(tài)等于主控目錄的安全狀態(tài)。
安全屬性
安全屬性是指對(duì)某個(gè)文件進(jìn)行某種操作時(shí)所必須滿足的安全狀態(tài)的值。安全屬性又稱訪問權(quán)限,在建立該文件時(shí)用一個(gè)字節(jié)指定。
Smart COS的安全屬性是用狀態(tài)區(qū)間來(lái)描述的。例如,一個(gè)文件的讀權(quán)限為XY,則當(dāng)前應(yīng)用的狀態(tài)M必須滿足X= Y)即可。如果定義一種可永遠(yuǎn)滿足的權(quán)限要求,即不需權(quán)限,該安全屬性定義為0X即可,因?yàn)?是一種自動(dòng)獲得的狀態(tài)。
安全機(jī)制
安全屬性和安全狀態(tài)是通過安全機(jī)制緊密聯(lián)系起來(lái)的。安全機(jī)制可以認(rèn)為是安全狀態(tài)實(shí)現(xiàn)轉(zhuǎn)移所采用的轉(zhuǎn)移方法和手段,通常包括校驗(yàn)個(gè)人密碼與認(rèn)證、數(shù)據(jù)加密與解密、文件訪問的安全控制。
校驗(yàn)個(gè)人密鑰是對(duì)CPU卡持有者的合法性的驗(yàn)證,即判定一個(gè)持卡人是否經(jīng)過了合法授權(quán)。認(rèn)證分外部認(rèn)證、內(nèi)部認(rèn)證和相互認(rèn)證三種。外部認(rèn)證是指CPU卡對(duì)接口設(shè)備的合法性進(jìn)行驗(yàn)證。內(nèi)部認(rèn)證是指接口設(shè)備對(duì)智能卡的合法性進(jìn)行驗(yàn)證。相互認(rèn)證包括外部認(rèn)證和內(nèi)部認(rèn)證。
SmartCOS通過核對(duì)口令和外部認(rèn)證兩種方法來(lái)實(shí)現(xiàn)狀態(tài)機(jī)的轉(zhuǎn)變。需指出的是狀態(tài)機(jī)不存在級(jí)別高低,同樣的操作可定義為任意的狀態(tài)機(jī),即你可以用一種改變狀態(tài)機(jī)的手段來(lái)實(shí)現(xiàn)從任一種狀態(tài)機(jī)到另外任一種狀態(tài)機(jī)的轉(zhuǎn)變,即可以從0轉(zhuǎn)變?yōu)镕,也可從F轉(zhuǎn)變?yōu)?。
密碼算法
Smart COS 支持世界上公認(rèn)的DES加密算法,包括Single DES和Triple DES算法。關(guān)于該算法的詳細(xì)說明請(qǐng)參考《中國(guó)金融集成電路(IC)卡規(guī)范》一書。
另外,Smart COS V3.1也支持用戶下載自己的密碼算法,并開放一部分內(nèi)部資源,讓用戶編寫自己的COS指令來(lái)實(shí)現(xiàn)對(duì)密碼算法的調(diào)用。此項(xiàng)功能用戶在訂貨時(shí)須事先聲明。
5. 電子錢包和電子存折功能
Smart COS具有符合中國(guó)人民銀行規(guī)范的電子錢包和電子存折應(yīng)用功能。借助電子錢包可實(shí)現(xiàn)圈存和消費(fèi)交易;借助電子存折可實(shí)現(xiàn)圈存、圈提、消費(fèi)、取現(xiàn)和修改透支限額交易。在上述交易過程中,除電子錢包的消費(fèi)不需要驗(yàn)證個(gè)人密碼外,其它所有交易均需提交個(gè)人密碼,同時(shí)終端和CPU卡之間也要進(jìn)行雙向驗(yàn)證,以此來(lái)保證交易三方的合法性。根據(jù)實(shí)際應(yīng)用的不同,在一張金融卡上,可以同時(shí)兼有電子存折和電子錢包,也可以只具有其中的一種。
6.Smart COS命令集
Smart COS命令集分為內(nèi)部命令和外部命令兩類。在滿足《中國(guó)金融集成電路(IC)卡規(guī)范》和ISO/IEC 7816-3/4要求的基礎(chǔ)上,Smart COS命令做了進(jìn)一步的擴(kuò)展,如下表所示:
√ 表示遵照《中國(guó)金融集成電路(IC)卡規(guī)范》和《中國(guó)金融集成電路(IC)卡應(yīng)用規(guī)范》。
* 表示遵照《規(guī)范》和ISO/IEC 7816-3/4。
8710; 表示為自定義指令。
7.硬件環(huán)境
CPU卡集成電路芯片是COS的載體,它由CPU 、ROM、RAM和EEPROM組成。ROM中封裝著芯片操作系統(tǒng),EEPROM 中存放用戶的數(shù)據(jù)。通常每一種COS都是針對(duì)某一微處理芯片的性能、容量等特點(diǎn)而開發(fā)設(shè)計(jì)的。目前,Smart COS已成功的運(yùn)用在AT89SC 168和SLE44C系列芯片上?;谛酒娜萘坎煌梢蕴峁?K、4K、8K、16K字節(jié)的EEPROM使用空間。
8.Smart COS開發(fā)套件
為了方便用戶對(duì)Smart COS的學(xué)習(xí)和應(yīng)用,深圳明華澳漢科技有限公司提供如下開發(fā)套件,它包括:
1)、Smart COS開發(fā)工具
2)、Smart COS使用手冊(cè)
3)、Smart COS測(cè)試樣卡
4)、Smart COS范例指令集
5、(M&W)RD系列CPU卡讀寫器
借助此開發(fā)套件,可以完成從規(guī)劃文件結(jié)構(gòu)、聯(lián)機(jī)測(cè)試到發(fā)卡等一系列功能。Smart COS
開發(fā)工具的使用說明,請(qǐng)參考其幫助文件。
9.總結(jié)
CPU卡嚴(yán)密的安全體系和成熟的金融運(yùn)用技術(shù)決定了它的服務(wù)對(duì)象主要面向金融行業(yè)。盡管真正意義上的信用卡在近幾年內(nèi)不會(huì)飛速增長(zhǎng),但是,具有銀行交易應(yīng)用功能同時(shí)在其它某一領(lǐng)域具有消費(fèi)功能的銀行卡,卻存在廣闊的發(fā)展空間,例如醫(yī)保、稅務(wù)、公共交通等,銀行如果與這些部門聯(lián)合起來(lái),則跨行業(yè)間的金融服務(wù)將成為可能。讓Smart COS智能卡科技將人們帶入嶄新的二十一世紀(jì)。
本文關(guān)鍵詞:SmartCOS,COS,操作系統(tǒng),智能卡,CPU卡
上一篇:ISO/IEC 14443協(xié)議淺談---TYPE A 與 TYPE B 之比較[ 02-19 ]
下一篇:非接觸智能卡芯片MIFARE Plus安全性探討[ 02-19 ]