亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Android客戶端訪問控制技術(shù)研究

        2014-01-01 00:00:00黃健黃健劉兆元梁棟李俊磊

        摘 要:近年來,隨著Android手機(jī)技術(shù)的日益進(jìn)步,客戶端上的應(yīng)用程序可以通過相對應(yīng)的開放式API訪問手機(jī)卡片上的應(yīng)用程序。結(jié)合Android核心技術(shù)與訪問控制安全等方面因素,介紹了最新訪問控制實(shí)現(xiàn)方式與規(guī)范,并提出一種手機(jī)卡片中訪問控制規(guī)則的實(shí)現(xiàn)方案以及應(yīng)用示例。

        關(guān)鍵詞:Android;開放式API;訪問控制

        中圖分類號:TP393.09

        隨著Android技術(shù)的不斷發(fā)展,智能手機(jī)逐漸成為人們的日常消費(fèi)品,智能手機(jī)的用戶與日俱增。除了基本的通話功能以外,智能手機(jī)還具備PDA(personal digital assistant)的主要功能,尤其包括個(gè)人信息管理以及無線接入互聯(lián)網(wǎng)的功能,智能手機(jī)已經(jīng)成為互聯(lián)網(wǎng)中新型的終端節(jié)點(diǎn)。目前智能手機(jī)的主流操作系統(tǒng)主要有Android和IOS。

        惡意程序威脅著計(jì)算機(jī)系統(tǒng)的安全,攻擊者利用計(jì)算系統(tǒng)的漏洞在目標(biāo)計(jì)算機(jī)上安裝惡意程序,借此來竊取被攻擊者的敏感信息。智能手機(jī)通過在無線接入設(shè)備進(jìn)入互聯(lián)網(wǎng)的同時(shí),也成為惡意程序新的攻擊對象。智能手機(jī)客戶端訪問手機(jī)卡或SD卡的同時(shí),也兼?zhèn)渲鴲阂夤艋虿《靖腥镜奈kU(xiǎn)。因此,如何控制Android手機(jī)客戶端對手機(jī)卡或SD卡的訪問,已成為智能終端必須解決的重要目標(biāo)。

        針對上述問題,本文以Android手機(jī)為平臺,介紹了最新中國電信集團(tuán)公司提出的訪問控制企業(yè)標(biāo)準(zhǔn),即訪問控制實(shí)現(xiàn)方式與規(guī)范,并在此基礎(chǔ)上,提出一種手機(jī)卡片中訪問控制規(guī)則的實(shí)現(xiàn)方案。

        1 相關(guān)研究

        對于Android手機(jī)上的一個(gè)客戶端應(yīng)用而言,可以通過手機(jī)底層的一組開放式API[1]訪問手機(jī)卡中的一個(gè)客戶端應(yīng)用,手機(jī)卡中會(huì)存儲是否允許手機(jī)客戶端應(yīng)用訪問卡片應(yīng)用的一個(gè)規(guī)則,這個(gè)訪問規(guī)則的實(shí)現(xiàn)方式規(guī)范在中國電信集團(tuán)公司企業(yè)標(biāo)準(zhǔn)TSM平臺技術(shù)要求[2]中已經(jīng)作出了明確規(guī)范,現(xiàn)對最新訪問控制方面的技術(shù)要求進(jìn)行介紹。

        1.1 體系結(jié)構(gòu)

        技術(shù)要求中定義了SE訪問控制的通用機(jī)制,對于任何SE都可用(包括嵌入式SE、有安全控制器的microSD卡、UICC卡等)。它支持多個(gè)應(yīng)用方的應(yīng)用程序管理,并允許每個(gè)應(yīng)用方為其加載到卡內(nèi)的應(yīng)用設(shè)置訪問規(guī)則。

        SE訪問規(guī)則數(shù)據(jù)存儲在SE里,供設(shè)備上的訪問控制執(zhí)行器使用。訪問控制執(zhí)行器將從SE里取回訪問規(guī)則,然后運(yùn)用這些規(guī)則來控制應(yīng)用客戶端對SE應(yīng)用的訪問。本文闡述Android系統(tǒng)其中一種架構(gòu)方式。如圖1所示。

        圖1 訪問控制體系架構(gòu)—訪問規(guī)則僅存放主安全域中

        卡發(fā)行商為SE應(yīng)用定義了訪問控制規(guī)則,并把這些規(guī)則提供給訪問規(guī)則應(yīng)用主控(ARA-M)。(卡發(fā)行商可委托TSM進(jìn)行代管)。當(dāng)一個(gè)應(yīng)用客戶端試圖訪問一個(gè)SE應(yīng)用時(shí),訪問控制執(zhí)行器就使用ARA-M提供的設(shè)備接口從SE中取回訪問規(guī)則。只有規(guī)則允許的情況下,才能進(jìn)行訪問。ARA-M是一個(gè)普通的SE應(yīng)用,它能通過由GP定義的AID來選擇。ARA-M是唯一的,盡管訪問規(guī)則數(shù)據(jù)可能被存儲在SE的不同位置,在收到來自設(shè)備上的訪問控制執(zhí)行器的訪問請求后,ARA-M負(fù)責(zé)取回所有有效的訪問規(guī)則。

        1.2 訪問控制規(guī)則

        存儲在SE中的每個(gè)訪問控制規(guī)則通過以下方式進(jìn)行聲明:①對于一個(gè)指定的SE應(yīng)用,或一個(gè)指定SE中的所有其他應(yīng)用;②一個(gè)指定的應(yīng)用客戶端,或所有其他應(yīng)用客戶端有權(quán)訪問:所有的APDU命令,沒有任何APDU命令或指定的APDU命令以及所有的NFC事件或沒有任何NFC事件。

        因?yàn)樵L問控制規(guī)則可能適用于一個(gè)或多個(gè)應(yīng)用程序,并且不同的規(guī)則可能存放在SE的不同位置(例如在ARA-M和ARA-C),因此訪問控制規(guī)則間可能會(huì)發(fā)生重疊或沖突,所以必須定義一個(gè)方法用于解決沖突。現(xiàn)簡略說明訪問控制規(guī)則沖突解決方案。

        一個(gè)規(guī)則的優(yōu)先權(quán)不是基于它的讀取順序。

        管理規(guī)則沖突的策略基于以下三個(gè)基本原則(按順序):

        (1)特定規(guī)則優(yōu)先。特定規(guī)則是指顯式聲明了以下內(nèi)容的規(guī)則:第一是通過AID或者隱式選擇應(yīng)用方式指定SE應(yīng)用;第二是通過聲明用于簽署應(yīng)用程序的數(shù)字證書指定一個(gè)應(yīng)用客戶端。如表1給出了規(guī)則優(yōu)先級從高到低排列的順序。

        表1 訪問控制標(biāo)識規(guī)則

        SE應(yīng)用是否被顯式聲明應(yīng)用客戶端是否被顯式聲明優(yōu)先級

        是是最高

        是否高

        否是低

        否否最低

        (2)與位于證書鏈末端的數(shù)字證書相關(guān)的規(guī)則優(yōu)先。如果應(yīng)用客戶端是使用一個(gè)證書鏈里的證書來簽名的,在查找最為特定規(guī)則的過程中,首先查找用于簽署應(yīng)用程序的證書(證書鏈最末端的證書)是否定義了相關(guān)規(guī)則;如無定義,則再查找證書鏈上的上一級證書的規(guī)則定義,以此類推,直到找到一個(gè)合適的證書。如果整個(gè)證書鏈中都未找到定義了相關(guān)規(guī)則的證書,那么才會(huì)進(jìn)入下一個(gè)更低優(yōu)先級的查找。

        (3)限制性規(guī)則優(yōu)先。限制性越強(qiáng)的規(guī)則優(yōu)先級越高。主要包括以下幾點(diǎn):①限制性最強(qiáng)的規(guī)則禁止應(yīng)用客戶端訪問SE應(yīng)用;②中等限制規(guī)則只允許應(yīng)用客戶端訪問一些特定的APDU命令;③限制性最弱的規(guī)則總是允許應(yīng)用客戶端訪問SE應(yīng)用[3]。

        如前面所描述的那樣,最特定的規(guī)則比通用規(guī)則具有優(yōu)先權(quán)。這種嚴(yán)格的優(yōu)先級將由訪問控制執(zhí)行器來執(zhí)行。因此,訪問控制執(zhí)行器首先尋找應(yīng)用在特定SE應(yīng)用和特定應(yīng)用客戶端的規(guī)則,如果沒有找到特定的規(guī)則,再去查找通用規(guī)則。如果一個(gè)或多個(gè)特定規(guī)則應(yīng)用到一個(gè)訪問請求,則優(yōu)先級高的規(guī)則將被使用,而優(yōu)先級低的規(guī)則將被忽略。

        如果有多個(gè)規(guī)則適用于同一個(gè)目標(biāo)SE應(yīng)用,并且具有相同的優(yōu)先級,這些規(guī)則將被聚合,具有更強(qiáng)限制性的規(guī)則優(yōu)先于更寬松的規(guī)則。如果兩個(gè)規(guī)則有具有相同的限制等級,兩個(gè)規(guī)則的數(shù)據(jù)(NFC事件處理權(quán)限、APDU命令過濾)將被合并,并且都會(huì)被運(yùn)用。如表2中總結(jié)了以規(guī)則聚合的方式解決訪問控制規(guī)則沖突問題。

        表2 訪問控制規(guī)則沖突解決方案組合

        沖突規(guī)則解決方案R1

        AllAID

        NeverFilterAlwaysNeverFilterAlways

        R2AllNeverR1=R2R2R2R1

        FilterR1R1+R2R2

        AlwaysR1R1R1+R2

        AIDNeverR2R1=R2R2R2

        Filter R1R1+R2R2

        Always R1R1R1=R2

        2 訪問控制規(guī)則實(shí)現(xiàn)方案

        2.1 實(shí)現(xiàn)目標(biāo)

        在通過ARA_M應(yīng)用訪問ARA_C應(yīng)用中的規(guī)則。ARA_M應(yīng)用屬于ISD,ARA_C應(yīng)用可以屬于ISD,也可以屬于其他SD。

        2.2 實(shí)現(xiàn)方案

        ARA_C應(yīng)用必須實(shí)現(xiàn)ARAShareble接口,ARA-M通過調(diào)用ARAShareble接口方法來獲取ARA-C的規(guī)則,ARAShareble接口定義如下(提供的是源碼):

        ARAShareble.java:

        package com.telecom.ARAShareble;

        import javacard.framework.Shareable;

        public class ARAShareble extends Shareable

        {

        public short getRules(byte[] rules,short rulesLen byte[] aramAid, short aidOffset, short aidLen);

        };

        2.3 getRules函數(shù)說明

        函數(shù)定義源碼如下:

        public short getRules(byte[] rules,short rulesLen byte[] aramAid, short aidOffset,short aidLen);

        (1)功能描述。該接口用于為ARA-M提供獲取ARA-C所有訪問規(guī)則的入口。通過此接口當(dāng)前ARA-C應(yīng)該輸出其中存儲的所有訪問規(guī)則。輸出的訪問規(guī)則在rules中排列,格式按照GPAC規(guī)范[4](GPD_SE_Access_Control_v1.0)中storedata命令Command-Get-AR-DO模式輸出,當(dāng)規(guī)則太長不能單條輸出時(shí),ARA-M應(yīng)用應(yīng)多次調(diào)用此函數(shù)得到全部規(guī)則。Rules中采用LV結(jié)構(gòu),L表示后續(xù)V的長度,V表示所有的規(guī)則;其中L<=(rulesLen-1);函數(shù)的返回值表示ARA-C剩余規(guī)則的長度,如果為0表示所有規(guī)則已經(jīng)取完;ARA-C應(yīng)用需要校驗(yàn)傳入的ARA-M應(yīng)用的AID,如果不是允許的AID應(yīng)拋出SecurityException;如果rules數(shù)組越界或者aramAid數(shù)組越界,返回IndexOutOfBoundsException,ArrayIndexOutOfBoundsExc-eption等異常信息。

        (2)參數(shù)說明。rules:用于存放規(guī)則的buffer,LV結(jié)構(gòu);rulesLen:rules buffer的可用長度;aramAid:ARA-M的AID buffer;aidOffset:aramAid的起始偏移;aidLen:Aid的長度。

        (3)返回值。<=0,表示成功執(zhí)行,并返回所有規(guī)則的數(shù)據(jù);>0,表示剩余規(guī)則[5]數(shù)據(jù)長度。

        (4)異常信息包括以下幾種。Security Exception, IndexOu- tOfBounds Exception,Array Index out of Bounds Exception。

        (5)應(yīng)用示例。

        ARA-C.java:

        package com.telecom.arac;

        import com.telecom.ARAShareble;

        public class ARAC extends Applet

        implements MultiSelectable, ARAShareble{

        protected ARAC(byte[] bArray, short bOffset, byte bLength) {

        register(bArray, (short)(bOffset+(short)1), bArray[bOffset]);

        }

        public static void install(byte[] bArray, short bOffset, byte bLength) {

        new ARAC(bArray, bOffset, bLength);

        }

        public void process(APDU apdu) {}

        public short getRules(byte[] rules, short rulesLen byte[] aramAid, short aidOffset, short aidLen) {

        // 此處需要ARA-C應(yīng)用實(shí)現(xiàn)此方法;return 0;

        }}

        ARA-M.java:

        package com.telecom.aram;

        import com.telecom.ARAShareble;

        public class ARAM extends Applet implements MultiSelectable

        {

        protected ARAM(byte[] bArray, short bOffset, byte bLength)

        {

        register(bArray, (short)(bOffset+(short)1), bArray[bOffset]);

        }

        public static void install(byte[] bArray, short bOffset, byte bLength) {

        new ARAM(bArray, bOffset, bLength);

        }

        public void process(APDU apdu) {

        byte[] buffer = apdu.getBuffer();

        byte cla = (byte)(buffer[ISO7816.OFFSET_CLA] (byte)0xFC);

        byte ins = (byte)(buffer[ISO7816.OFFSET_INS]);

        switch (ins)

        {

        case INS_GETDATA:

        gettARACRules();

        break;

        }

        }

        void gettARACRules () {//第一步,先獲取ARAC的實(shí)例

        ARAShareble sio;

        sio=(ARAShareble)JCSystem.getAppletShareableInterfaceObject(aracAid, (byte)0);if(sio != 1)

        {

        //獲取到ARAC的實(shí)例了,可以調(diào)用其方法了

        sio. getRules (…);

        }

        }

        }

        3 結(jié)束語

        以Android技術(shù)為首的智能手機(jī)技術(shù)日益發(fā)展,智能手機(jī)時(shí)代已經(jīng)來臨。然而Android手機(jī)客戶端與手機(jī)卡之間訪問控制安全問題卻不容小覷。本文結(jié)合Android核心技術(shù)與訪問控制安全等各方面因素,簡略地介紹了最新中國電信TSM平臺技術(shù)要求中訪問控制實(shí)現(xiàn)方式與規(guī)范,并提出一種手機(jī)卡片中訪問控制規(guī)則的實(shí)現(xiàn)方案以及應(yīng)用示例。

        參考文獻(xiàn):

        [1]中國電信集團(tuán)公司企業(yè)標(biāo)準(zhǔn)(中國電信TSM平臺技術(shù)要求SE應(yīng)用安全下載技術(shù)要求分冊)[R].

        [2]Secure Element Access Control[R].

        [3]孫曉波.淺談移動(dòng)通信終端發(fā)展趨勢[J].移動(dòng)通信,2010(21).

        [4]劉昌平,范明鈺.Android手機(jī)的輕量級訪問控制[J].計(jì)算機(jī)應(yīng)用研究,2010(07).

        [5]劉偉,梁洪亮.移動(dòng)終端系統(tǒng)的訪問控制框架[J].計(jì)算機(jī)科學(xué),2006(06).

        作者簡介:黃?。?976-),男,工程師,畢業(yè)于廣東工業(yè)大學(xué),研究方向:計(jì)算機(jī)軟件與理論,現(xiàn)在從事通信智能卡和手機(jī)終端,安全訪問控制研究工作;黃健文(1972-),男,工程師,畢業(yè)于武漢大學(xué),研究方向:計(jì)算機(jī)軟件與理論,現(xiàn)在從事通信智能卡和手機(jī)終端研究;劉兆元(1970-),男,工程師,畢業(yè)于華南理工大學(xué)通信與信息系統(tǒng)專業(yè),現(xiàn)在從事通信智能卡和手機(jī)終端研究,移動(dòng)行業(yè)應(yīng)用定制開發(fā)工作;梁棟(1981-),男,工程師,畢業(yè)于成都理工大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè),現(xiàn)在從事通信智能卡和手機(jī)終端研究,移動(dòng)行業(yè)應(yīng)用定制開發(fā)工作;李俊磊(1987-),男,工程師,畢業(yè)于長沙學(xué)院計(jì)算機(jī)科學(xué)與應(yīng)用專業(yè),現(xiàn)在從事通信智能卡和手機(jī)終端研究,移動(dòng)行業(yè)應(yīng)用定制開發(fā)工作。

        作者單位:廣州電信研究院,廣州 510630

        久久国产精品国语对白| 欧美在线不卡视频| 红杏性无码免费专区| 大香蕉视频在线青青草| 亚洲人成网站18禁止| 熟女人妻在线视频| 专区亚洲欧洲日产国码AV| 国产一级一片内射视频在线| 91成人自拍国语对白| 中文字幕精品久久久久人妻红杏ⅰ| 97色噜噜| 麻豆成人久久精品二区三区91| 久久久久免费精品国产| av潮喷大喷水系列无码| 亚洲地区一区二区三区 | 99青青草视频在线观看| 狠狠的干性视频| 精品国产a∨无码一区二区三区| 国产自产拍精品视频免费看 | 亚洲av成人片色在线观看| 99精品免费久久久久久久久日本| 免费一级黄色大片久久久| 国产伦奸在线播放免费| 狠狠躁18三区二区一区| 日本亚洲国产一区二区三区| 国产亚洲AV片a区二区| 少妇爽到高潮免费视频| 99热这里有精品| 人妻少妇不满足中文字幕| 青青草视频免费在线播放| 亚洲精品无码永久在线观看| 大学生被内谢粉嫩无套| 亚洲av乱码国产精品色| 风韵丰满熟妇啪啪区99杏| 国产精品亚洲一区二区在线观看 | 男女上下猛烈啪啪免费看| 天天躁日日躁狠狠躁一区| 网址视频在线成人亚洲| 亚洲av综合av一区| 欧美三级不卡视频| 一区二区视频资源在线观看|