歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠(chéng)信通企業(yè)
全國(guó)咨詢熱線:40000-63966
興邦電子,中國(guó)水控機(jī)第一品牌

聯(lián)系興邦電子

全國(guó)咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

智能卡3G COS軟件的設(shè)計(jì)與實(shí)現(xiàn)

文章出處:http://xianjuhong.com 作者:覃毅 陳榮征 黃健   人氣: 發(fā)表時(shí)間:2011年09月29日

[文章內(nèi)容簡(jiǎn)介]:參照3G移動(dòng)通信標(biāo)準(zhǔn),提出適合3GCOS軟件開發(fā)的半層次結(jié)構(gòu)模型,并在模型中對(duì)各功能模塊進(jìn)行了詳細(xì)劃分。采用中斷調(diào)度技術(shù)對(duì)系統(tǒng)的主調(diào)度流程進(jìn)行了設(shè)計(jì),最后給出微內(nèi)核設(shè)計(jì)的覆蓋模型方案。

    1 引言

    3G系統(tǒng)能提供多類型高質(zhì)量多媒體業(yè)務(wù),能實(shí)現(xiàn)全球無縫覆蓋,并具有全球漫游能力與固定網(wǎng)絡(luò)兼容。

    COS(Chip Operation System)是智能卡芯片操作系統(tǒng)。是駐留智能卡內(nèi)的操作系統(tǒng)軟件,使智能卡實(shí)現(xiàn)“智能”的重要支撐平臺(tái)。優(yōu)秀的智能卡COS系統(tǒng)將使智能卡實(shí)現(xiàn)“安全可靠的應(yīng)用智能”。目前,3GCOS主要存在體系結(jié)構(gòu)模型、關(guān)鍵技術(shù)的選擇以及覆蓋模型的建立等三個(gè)問題。體系結(jié)構(gòu)模型和關(guān)鍵技術(shù)的選擇主要體現(xiàn)的是COS系統(tǒng)的效率和擴(kuò)展性問題,覆蓋模型的建立主要是為了適應(yīng)不同硬件UICC的需要。為了解決系統(tǒng)的效率和擴(kuò)展問題,本文采用一種將層次結(jié)構(gòu)和微內(nèi)核結(jié)構(gòu)優(yōu)點(diǎn)相結(jié)合的半層次結(jié)構(gòu)模型;為了解決COS系統(tǒng)在不同硬件上的適應(yīng)性問題,而又不增加COS系統(tǒng)的代碼量,系統(tǒng)決定采用從覆蓋模型到特殊模型相映射的方法,當(dāng)掩模罐裝到具體UICC硬件時(shí),由覆蓋模型根據(jù)具體要掩模的UICC硬件特征抽象出特殊模型,而不直接將覆蓋模型掩模到UICC中,這樣既可以減少COS系統(tǒng)的代碼量,又可以相對(duì)增加用戶數(shù)據(jù)可存儲(chǔ)量。

    2 體系結(jié)構(gòu)設(shè)計(jì)

    當(dāng)前,比較主流的系統(tǒng)模型主要有四種 J:?jiǎn)螇K式結(jié)構(gòu)模型、層次結(jié)構(gòu)模型、客戶/服務(wù)模型、REO模型,通過對(duì)四種模型各自的優(yōu)缺點(diǎn)、適用場(chǎng)景進(jìn)行詳細(xì)分析,本文根據(jù)3GCOS系統(tǒng)的設(shè)計(jì)目標(biāo)和設(shè)計(jì)原則,提出適合系統(tǒng)實(shí)際開發(fā)的半層次結(jié)構(gòu)模型,如圖1所示。

    2.1 各模塊功能劃分 

半層次結(jié)構(gòu)模型

    COS結(jié)構(gòu)模型從整體上可劃分為兩大層次:功能模塊層和微內(nèi)核層。其中,功能層主要實(shí)現(xiàn)COS的應(yīng)用邏輯處理功能,主要包含通信管理模塊、安全管理模塊、命令解釋模塊、文件管理模塊。

    (1)功能模塊層

    通信管理模塊:對(duì)I/O輸入緩沖區(qū)中接收到的數(shù)據(jù)采取奇偶校驗(yàn)、累加和及分組長(zhǎng)度檢驗(yàn)等到手段進(jìn)行正確性判斷,不進(jìn)行信息內(nèi)容的判斷,判斷的標(biāo)準(zhǔn)參見ISO 7816—4 APDU指令結(jié)構(gòu);接收經(jīng)過安全管理、命令處理、文件管理處理后的信息,并按照ISO 7816 APDU指令結(jié)構(gòu)要求打包成完整的數(shù)據(jù)幀,發(fā)送到I/O的輸出緩沖區(qū)。

    安全管理模塊:接受通信管理模塊的調(diào)度,并向通信管理模塊返回處理后的數(shù)據(jù)信息;將由通信管理模塊接收到的進(jìn)行安全驗(yàn)證;不做數(shù)據(jù)內(nèi)容的驗(yàn)證;當(dāng)安全驗(yàn)證不通過時(shí),直接向通信管理模塊返回?cái)?shù)據(jù)。

    命令解釋模塊:接受安全管理模塊的調(diào)度,并向安全管理模塊返回處理后的數(shù)據(jù)信息,即返回與命令相對(duì)應(yīng)的響應(yīng)代碼;需要作數(shù)據(jù)內(nèi)容上的鑒別;當(dāng)數(shù)據(jù)內(nèi)容鑒別不通過時(shí),直接向通信模塊返回?cái)?shù)據(jù)。

    文件管理模塊:接受命令管理模塊的調(diào)度,并執(zhí)行命令,向命令解釋模塊返回?cái)?shù)據(jù)。

    (2)微內(nèi)核層

    微內(nèi)核整體功能:對(duì)功能層的邏輯處理提供硬件支持,實(shí)現(xiàn)卡與終端的通信。微內(nèi)核分為轉(zhuǎn)換層、硬件接口層、硬件三個(gè)部分。轉(zhuǎn)換層接受功能層的調(diào)度,并將功能層的調(diào)度轉(zhuǎn)換為對(duì)底層驅(qū)動(dòng)接口的調(diào)用,向功能層提供統(tǒng)一的向上接口,實(shí)現(xiàn)對(duì)覆蓋模型各種底層硬件驅(qū)動(dòng)的管理,當(dāng)由覆蓋模型轉(zhuǎn)換為特殊模型時(shí),實(shí)現(xiàn)對(duì)底層驅(qū)動(dòng)的具體硬件配置,剝離覆蓋模型中冗余的底層驅(qū)動(dòng),在特殊模型中使功能層實(shí)現(xiàn)對(duì)底層驅(qū)動(dòng)的透明調(diào)用;硬件接口層主要實(shí)現(xiàn)對(duì)底層硬件的驅(qū)動(dòng)調(diào)度。

    2.2 功能模塊之間的狀態(tài)轉(zhuǎn)換及調(diào)度關(guān)系

    功能層各模塊之問的關(guān)系表現(xiàn)為程序調(diào)度請(qǐng)求和數(shù)據(jù)響應(yīng)關(guān)系,模塊的輸出為程序調(diào)度請(qǐng)求,輸入為調(diào)度后得到的數(shù)據(jù)響應(yīng),調(diào)度和相應(yīng)均以事務(wù)來表示,而事務(wù)表示一組數(shù)據(jù)以及在數(shù)據(jù)上的一組操作。3GCOS功能層各模塊之間的狀態(tài)轉(zhuǎn)換與調(diào)度關(guān)系如圖2所示。 

模塊狀態(tài)轉(zhuǎn)換及調(diào)度關(guān)系圖

圖2 模塊狀態(tài)轉(zhuǎn)換及調(diào)度關(guān)系圖

    其中,上圖中的事務(wù)2、事務(wù)3表示卡與終端之間的一種通信關(guān)系。

    3 關(guān)鍵技術(shù)

    3.1 系統(tǒng)主調(diào)度流程的設(shè)計(jì)

    3.1.1 主調(diào)度流程

    COS系統(tǒng)的調(diào)度流程,分主調(diào)度流程和功能子流程 。主流程對(duì)終端輸入指令的接收可以采用輪詢方式或中斷方式,由于采用輪詢方式系統(tǒng)開銷較大,故在本文的3GCOS系統(tǒng)中采用了中斷調(diào)度方式。3GCOS主調(diào)度流程的執(zhí)行步驟如下:

    (1)卡上電復(fù)位;
    (2)發(fā)送ATR復(fù)位應(yīng)答指令的第一字節(jié);
    (3)初始化系統(tǒng)運(yùn)行環(huán)境:初始化安全環(huán)境,清空I/O輸入輸出緩沖區(qū)APDU—IN—buffer、AP.DU— OUT— buffer;
    (4)發(fā)送ATR剩余字節(jié);
    (5)等待中斷指令信號(hào);
    (6)調(diào)度中斷處理程序,獲取與中斷源相對(duì)應(yīng)的中斷服務(wù)程序入口地址;
    (7)根據(jù)中斷服務(wù)程序入口地址,調(diào)度執(zhí)行中斷服務(wù)程序;
    (8)判斷輸入緩沖區(qū)APDU指令的完整性;
    (9)APDU指令不完整則返回⑤繼續(xù)等待中斷指令信號(hào);
    (10)APDU指令完整,則系統(tǒng)關(guān)中斷,調(diào)度功能執(zhí)行子流程進(jìn)行命令處理,返回處理結(jié)果到輸出緩沖區(qū)APDU—OUT—buffer:
     (11)調(diào)用輸出I/O輸出驅(qū)動(dòng),將APDU響應(yīng)指令發(fā)給終端;
    (12)清空輸輸入輸出,緩沖區(qū);
    (13)開中斷,返回。
    主層序執(zhí)行流程圖,如圖3所示。 

    3.1.2 算法描述

   方案,現(xiàn)已完成軟件整體測(cè)試,系統(tǒng)運(yùn)行穩(wěn)定、可靠,符合ISO/IEC 7816和ISO/IECI443 TYPE B標(biāo)準(zhǔn)以及《中國(guó)金融集成電路(IC)卡規(guī)范》、《中國(guó)金融集成電路(IC)卡應(yīng)用規(guī)范》等標(biāo)準(zhǔn),現(xiàn)正進(jìn)行用戶測(cè)試。

    (文/仲愷農(nóng)業(yè)技術(shù)學(xué)院現(xiàn)代教育技術(shù)中心 廣東工業(yè)大學(xué)計(jì)算機(jī)學(xué)院 覃毅 陳榮征 黃健)

本文關(guān)鍵詞:COS,軟件體系結(jié)構(gòu),智能卡
回到頂部