新一代智能卡操作系統(tǒng)NOP的分析與解讀
文章出處:http://56733.cn 作者:東信和平智能卡股份有限公司 人氣: 發(fā)表時(shí)間:2011年09月29日
一、NOP智能卡操作系統(tǒng)的開(kāi)發(fā)動(dòng)機(jī)
1、智能卡軟件發(fā)展的三個(gè)階段:
說(shuō)明:
(1)安全性是智能卡軟件的核心問(wèn)題。
(2)智能卡軟件是向后兼容的,第三階段也包括第一、二階段的功能。
(3)應(yīng)用程序我國(guó)企業(yè)已經(jīng)完全掌握了,具有國(guó)際競(jìng)爭(zhēng)性。
(4)開(kāi)放平臺(tái)由于版權(quán)和技術(shù)的問(wèn)題,在我國(guó)尚未推廣,雖然在國(guó)外已經(jīng)普及,但并沒(méi)有嚴(yán)重影響國(guó)內(nèi)市場(chǎng)。
(5)智能卡行業(yè)現(xiàn)在正處在一個(gè)全面的產(chǎn)業(yè)升級(jí)階段。
2、智能卡操作系統(tǒng)的機(jī)遇與挑戰(zhàn):
(1)經(jīng)過(guò)十多年的技術(shù)積累,我國(guó)智能卡企業(yè)已經(jīng)基本具備了參與第三次產(chǎn)業(yè)升級(jí)的能力。
(2)在進(jìn)行第三次產(chǎn)業(yè)升級(jí)的同時(shí)解決第二階段中遺留的問(wèn)題。
(3)國(guó)外企業(yè)為了重新拉開(kāi)與我國(guó)企業(yè)的差距,最近幾年加大了對(duì)新一代智能卡操作系統(tǒng)的研發(fā)力度。
(4)新一代智能卡操作系統(tǒng)的復(fù)雜性大大提高,特別是開(kāi)放、并發(fā)的系統(tǒng)安全性。
二、 NOP智能卡操作系統(tǒng)的歷史
1.何為NOP?NOP=National/New Open Platform
2.NO智能卡操作系統(tǒng)發(fā)展的三個(gè)階段:
NOP第一期:理論、工具、和方法研發(fā)。
(1)理論基礎(chǔ):密碼學(xué)、信息安全等
(2)需求開(kāi)發(fā):挖掘需求,規(guī)范需求,管理需求
(3)分析設(shè)計(jì):結(jié)構(gòu)化方法,形式化方法,半形式化方法
(4)在線調(diào)試:模擬級(jí),仿真級(jí),目標(biāo)板
(5)在線分析:跟蹤、性能、覆蓋率、內(nèi)存分析等
(6)多處理器:硬件和虛擬機(jī)混合在線調(diào)試與分析
以上六個(gè)階段為新一代智能卡集成開(kāi)發(fā)所需要的環(huán)境。
NOP第二期:核心技術(shù)、和新技術(shù)研發(fā)。
(1)開(kāi)放技術(shù):硬件的防火墻,微瀏覽器,解釋器,虛擬機(jī)等
(2)通信技術(shù):USB,MMC,SWP,HTTP(S),TCP/IP,ISO14443等
(3)并發(fā)處理:多通道等因素造成并發(fā)性,因此需要同時(shí)處理
(4)圖形界面:傳統(tǒng)的為APDU命令行方式,現(xiàn)需要圖形化界面
(5)其它技術(shù):斷電保護(hù),補(bǔ)丁,安全文件系統(tǒng),卡片管理等
以上技術(shù)可以組合成多種產(chǎn)品。
三、NOP智能卡操作系統(tǒng)的特點(diǎn):
特點(diǎn)1:基于棧和寄存器的面向?qū)ο蟮奶摂M機(jī)
用戶可以通過(guò)高級(jí)編程語(yǔ)言開(kāi)發(fā)應(yīng)用程序,通過(guò)虛擬機(jī)執(zhí)行。虛擬機(jī)為基于棧和寄存器的面向?qū)ο蟮慕鉀Q方案,它比其它虛擬機(jī)的時(shí)空效率高出大約20-25%。
特點(diǎn)2:多個(gè)高速對(duì)外通道
除了傳統(tǒng)的ISO7816、ISO14443等通道,還有更多種類的接口,如SWP和高速通道,如MMC,IC_USB(2.0)等。
不同種類通道的軟件通訊接口采用統(tǒng)一的Socket方式,它不但可以作為輸入輸出的,也可作為網(wǎng)絡(luò)編程、任務(wù)間通訊的統(tǒng)一形式的API接口。SOCKET方式不僅功能完善、而且也為普通的軟件開(kāi)發(fā)人員所熟悉。
特點(diǎn)3:并發(fā)處理
由于智能卡的特殊性,針對(duì)不同的系統(tǒng)部件采用不同的并發(fā)處理模式。例如在通訊模塊采用協(xié)作方式,因?yàn)橥ㄓ嵆绦驅(qū)r(shí)間的準(zhǔn)確性要求比較高;在用戶程序?qū)用娌捎幂喕胤绞剑驗(yàn)槊總€(gè)應(yīng)用程序往往需要平等的執(zhí)行機(jī)會(huì);在系統(tǒng)內(nèi)核和系統(tǒng)服務(wù)層面則采用搶先多任務(wù)方式,這樣,系統(tǒng)程序?qū)⒂懈叩膬?yōu)先級(jí)別,以便更好地管理整個(gè)系統(tǒng)和為應(yīng)用程序提供服務(wù)。
特點(diǎn)4:網(wǎng)絡(luò)編程
卡內(nèi)置TCP/IP協(xié)議棧,應(yīng)用程序通過(guò)Socket編程接口進(jìn)行網(wǎng)絡(luò)編程。Socket接口不僅作為網(wǎng)絡(luò)編程接口,而且作為點(diǎn)對(duì)點(diǎn)通訊和文件系統(tǒng)訪問(wèn)和任務(wù)間通訊的統(tǒng)一接口。網(wǎng)絡(luò)編程不僅可以實(shí)現(xiàn)網(wǎng)絡(luò)結(jié)點(diǎn)間的數(shù)據(jù)交換,而且通過(guò)一定的協(xié)議,還可以實(shí)現(xiàn)例如遠(yuǎn)程方法調(diào)用等功能,這樣,可以更好地支持分布式系統(tǒng)。
特點(diǎn)5:圖形化的人機(jī)界面
傳統(tǒng)的智能卡只能通過(guò)類似于命令行的方式(如APDU)與外界交互。隨著行業(yè)的發(fā)展,和用戶要求的提高,一個(gè)友好的圖形化用戶界面對(duì)智能卡程序而言變得越來(lái)越重要。NOP為智能卡程序員提供很方便的開(kāi)發(fā)圖形化界面的程序(類似與VC++的編程方法)。
特點(diǎn)6:主動(dòng)運(yùn)行程序
傳統(tǒng)的智能卡只能以slave的身份被動(dòng)地為master提供service,而無(wú)法以client的身份主動(dòng)地要求slave提供service。這種限制來(lái)自于通訊協(xié)議和智能卡程序模式等多各方面。顯然,這種模式大大限制了智能卡程序的發(fā)展。而理想的模式應(yīng)該是既支持被動(dòng)方式,也支持主動(dòng)方式,既對(duì)等模式(Peer to Peer)。NOP支持智能卡主動(dòng)地運(yùn)行程序。
特點(diǎn)7:集成開(kāi)發(fā)環(huán)境
首先,NOP采用面向?qū)ο蟮母呒?jí)語(yǔ)言(如C++等)開(kāi)發(fā)應(yīng)用程序;
其次,NOP為用戶提供集成化的開(kāi)發(fā)環(huán)境(包括需求開(kāi)發(fā)、分析、設(shè)計(jì)、編程、測(cè)試等,還包括例子代碼、文檔等);
最后,NOP為應(yīng)用提供多種框架代碼,這不但方便了應(yīng)用開(kāi)發(fā),提高了應(yīng)用程序的質(zhì)量,而且也增強(qiáng)了整個(gè)系統(tǒng)的安全型。
特點(diǎn)8:安全文件系統(tǒng)
采用內(nèi)置文件系統(tǒng)作為可配置多應(yīng)用的解決方案,為第三方的應(yīng)用程序提供安全文件系統(tǒng)的支持,并為系統(tǒng)的內(nèi)部管理提供服務(wù)。
特點(diǎn)9:管理
以文件系統(tǒng)作為存儲(chǔ)機(jī)制,以文件系統(tǒng)的操作作為管理接口,對(duì)卡片、程序進(jìn)行統(tǒng)一的管理,分別包括:卡片平臺(tái)管理、應(yīng)用程序管理、應(yīng)用程序安裝與卸載管理、應(yīng)用程序運(yùn)行管理。
特點(diǎn)10:安全
設(shè)計(jì)時(shí),采用形式化與半形式化的方式進(jìn)行設(shè)計(jì)和證明。
采用多種安全機(jī)制,如系統(tǒng)程序和應(yīng)用程序、應(yīng)用程序之間的防火墻機(jī)制,設(shè)置用戶訪問(wèn)權(quán)限,運(yùn)行中檢測(cè)訪問(wèn)者的身份與權(quán)限等。
進(jìn)行安全分析和測(cè)試。準(zhǔn)備安全認(rèn)證,如CC認(rèn)證。
四、NOP智能卡操作系統(tǒng)應(yīng)用程序集成開(kāi)發(fā)環(huán)境
五、 NOP智能卡操作系統(tǒng)的安全性
1.簡(jiǎn)單化,在不影響功能和性能的前提下,采用簡(jiǎn)單明了的軟件體系結(jié)構(gòu)。
2.系統(tǒng)化,全面地設(shè)計(jì)、開(kāi)發(fā)、測(cè)試整個(gè)系統(tǒng)的安全性。
3.標(biāo)準(zhǔn)化,采用符合國(guó)際標(biāo)準(zhǔn)的方法,如CC,開(kāi)發(fā)與認(rèn)證系統(tǒng)安全。
4.此外,其它的安全措施。如通過(guò)軟、硬件相結(jié)合,提高系統(tǒng)的防攻擊性;如采用多種保護(hù)措施(再AES加密等)例如DES加密后。