<strike id="tpvd9"><dfn id="tpvd9"></dfn></strike>

        <em id="tpvd9"></em>

          <address id="tpvd9"></address>
            <dfn id="tpvd9"><sub id="tpvd9"></sub></dfn>

            <thead id="tpvd9"><noframes id="tpvd9">
            <ruby id="tpvd9"></ruby>

                  <thead id="tpvd9"></thead>
                  歡迎您訪(fǎng)問(wèn)鄭州興邦電子股份有限公司官方網(wǎng)站!
                  阿里巴巴誠信通企業(yè)
                  全國咨詢(xún)熱線(xiàn):40000-63966
                  興邦電子,中國水控機第一品牌

                  聯(lián)系興邦電子

                  全國咨詢(xún)熱線(xiàn):40000-63966

                  售后:0371-55132951/55132952

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

                  JAVA卡技術(shù)概述

                  文章出處:http://psychicreadingswithdeb.com 作者:SUN中國有限公司策略發(fā)展部經(jīng)理 邵正強&nbsp;&nbsp; 人氣: 發(fā)表時(shí)間:2011年09月07日

                  [文章內容簡(jiǎn)介]:JAVA卡技術(shù)概述

                     關(guān)鍵字: JAVA  

                    爪哇卡(JavaCard)技術(shù)可使以爪哇語(yǔ)言所寫(xiě)成的程序,在智能卡和其它資源受限裝置上執行。本文將讓您一覽爪哇卡技術(shù),包括該系統的結構和組件。本概述的目的在讓您對爪哇卡技術(shù)有一個(gè)整體性了解,并介紹有關(guān)爪哇卡系統的重點(diǎn)和基本概念,以利程序開(kāi)發(fā)者設計程序之用。
                  一、爪哇卡技術(shù)之組件
                    爪哇卡技術(shù)包括下列部分:
                   ?。?jiǎn)后之爪哇程序語(yǔ)言以及適合智能卡應用的虛擬機(JavaCardVirtualMachine,JCVM)定義
                   ?。诵闹ν劭☉贸绦蚪涌冢ˋpplicationProgrammingInterface,API)及其延伸部分
                   ?。ν劭ㄖ畧绦袝r(shí)期環(huán)境(JavaCardRuntimeEnvironment,JCRE)
                  爪哇卡應用程序接口和執行時(shí)期環(huán)境是以智能卡工業(yè)標準ISO7816為模型而設計,因此,爪哇卡平臺可輕易支持跟ISO7816第一到第六部分兼容的智能卡系統和應用。
                    爪哇卡應用程序被稱(chēng)為applets。爪哇卡平臺可支持多重應用(multiapplication)環(huán)境。爪哇卡應用程序則是在爪哇之執行時(shí)期環(huán)境內處理和執行。
                  二、精簡(jiǎn)之爪哇卡語(yǔ)言
                    若智能卡的程序可使用爪哇程序語(yǔ)言的所有功能寫(xiě)成當然最好,不過(guò)對智能卡和其它資源受限裝置來(lái)說(shuō),由于運算資源有限,要完全支持爪哇程序語(yǔ)言是不可能也不切實(shí)際的事。一般智能卡是以1K的隨機存取內存(RAM),以及16K的非揮發(fā)性?xún)却妫‥EPROM或RAM)和24K的只讀存儲器(ROM)規格出現,因此,爪哇卡平臺僅能支持經(jīng)小心選取且已規格化而有精簡(jiǎn)功能的爪哇語(yǔ)言。此精簡(jiǎn)爪哇語(yǔ)言包含之功能,適于設計智能卡以及其它小型裝置的程序,同時(shí)還能保留爪哇程序語(yǔ)言以對象為導向(object-oriented)的能力。說(shuō)明爪哇程序語(yǔ)言所不支持的功能,可能要比說(shuō)明其可支持的功能容易許多。爪哇卡平臺不支持:
                   ?。笮突緮祿?lèi)型:長(cháng)整數、雙倍浮點(diǎn)、浮點(diǎn)
                   ?。址妥址?BR> ?。嘣獢到M
                   ?。獎?dòng)態(tài)類(lèi)別加載
                   ?。踩芾碚?BR> ?。占敖K結
                   ?。┚€(xiàn)
                   ?。獙ο髲椭?BR>  這些不受支持功能的關(guān)鍵詞自然會(huì )自爪哇語(yǔ)言中省略。部分進(jìn)階爪哇智能卡可提供垃圾收集機能,以激活爪哇卡應用程序刪除功能。遭刪除的應用程序空間可能可以,也可能無(wú)法再被使用,不過(guò)此乃視在該智能卡上所使用的垃圾收集者之功能范圍而定。一般而言,如果某項語(yǔ)言功能未清楚指明為不受支持的話(huà),它就屬于受支持的精簡(jiǎn)功能。
                  三、爪哇卡平臺結構
                    爪哇程序語(yǔ)言原本是為運算資源相當豐富的系統而設計。盡管爪哇卡平臺支持一規格化之精簡(jiǎn)爪哇程序語(yǔ)言,但是將整個(gè)爪哇卡平臺安裝在有限內存和處理能力的智能卡上,是不適合的事。即使做得到,但是如此一來(lái),類(lèi)別庫(classlibraries)或應用程序將無(wú)空間可用。爪哇卡平臺的一項重要特色是其為一分布式系統。事實(shí)上,它是在空間和時(shí)間上分散于智能卡和桌上計算機間的系統。

                    許多不受執行時(shí)期限制的處理工作,例如類(lèi)別加載(classloading)、驗證(verification)、決議(resolution)和連結(linking),以及位碼最佳化(bytecodeoptimization)等主要是在卡外(offcard)之個(gè)人計算機環(huán)境中執行的系統組件上運作。通常在個(gè)人計算機中資源不是考量的重點(diǎn)。駐在卡上的系統組件較緊密,也適于智能卡內存模型。爪哇卡執行時(shí)期環(huán)境(JCRE)即由這些組件組成。JCRE負責應用程序的執行,并且驅使卡內(oncard)系統和應用程序安全的執行。圖一列出爪哇卡平臺卡內系統的結構。
                    JCRE位于智能卡硬件和基礎操作系統常規之上。JCRE包含爪哇卡虛擬機(位碼解譯器)、爪哇卡應用架構類(lèi)別(APIs)、特定工業(yè)延伸、以及JCRE系統服務(wù)。API和JCRE系統服務(wù)是以ISO7816智能卡標準為模型,同時(shí)可協(xié)助應用程序和ISO7816兼容。
                    JCRE將爪哇卡應用程序自智能卡商的專(zhuān)屬技術(shù)中分隔出來(lái),同時(shí)也提供標準系統和API接口給應用程序。因此應用程序較小、也較容易編寫(xiě),同時(shí)也可轉置于不同的智能卡架構上。
                    JCRE的底層含有爪哇卡虛擬機(JCVM)。JCVM會(huì )執行位碼,并且確定爪哇語(yǔ)言安全。上圖中的JCVM只有虛擬機的位碼解譯器(bytecodeinterpreter)的部分。JCVM的另一部分嵌于一個(gè)稱(chēng)為轉換器
                  (converter)的組件內。轉換器是在卡外執行,下文將進(jìn)一步說(shuō)明此轉換器。
                    系統類(lèi)別(systemclasses)為JCRE之執行者,他們負責管理對象的持續和暫時(shí)行為,支持細部作業(yè)和交易,并管理主機和爪哇卡應用程序之間的通訊,控制應用程序的建立、選取和取消選取。為了完成任務(wù),系統類(lèi)別通常會(huì )激活本地的方法(nativemethod)服務(wù)。
                    爪哇卡應用程序架構(framework)界定出應用程序設計接口。此架構包含四種API包裹的中心和延伸部分。API類(lèi)別相當緊密,同時(shí)其規格是為開(kāi)發(fā)智能卡應用程序而定出。此架構之最大優(yōu)點(diǎn)為,它極易建立一個(gè)爪哇卡應用程序。程序開(kāi)發(fā)者可將大部份的精力放在應用程序上,而不是在智能卡系統的基礎建構上。爪哇卡應用程序乃透過(guò)API類(lèi)別取得JCRE服務(wù)。
                  特定的產(chǎn)業(yè)或企業(yè)可用附加的應用數據庫,提供額外的服務(wù)或改善安全和系統模型。例如,威士忌開(kāi)放平臺(VisaOpenPlatform)延伸JCRE服務(wù),以符合威士忌的特定安全需要。這些附加功能強化了發(fā)卡者對所發(fā)出信用卡的控制,同時(shí)也可明訂信用卡個(gè)人化的一套標準指令。
                    爪哇卡應用程序可以下載(downloadable)。他們可在爪哇智能卡已生產(chǎn)之后再附加到卡上。安裝器(installer)要負責爪哇卡應用程序的加載和安裝。通常安裝器會(huì )利用卡外安裝程序的協(xié)助,兩者一起完成安裝應用程序的任務(wù)。由于JCRE不是必需支持動(dòng)態(tài)應用程序安裝,所以安裝器只是JCRE的一項選擇性組件。如果沒(méi)有安裝器的話(huà),應用程序必須在智能卡生產(chǎn)制造時(shí),就放置到卡片上,完成生產(chǎn)制造之后的卡片上就無(wú)法再附加任何的應用程序。
                    爪哇卡應用程序當然是以爪哇程序語(yǔ)言編寫(xiě)的。應用程序是由JCRE所控制管理。爪哇卡執行時(shí)期環(huán)境包含駐在卡上的爪哇卡系統組件。爪哇卡轉換器和卡外安裝程序則組成爪哇卡平臺的其它部分。這個(gè)部分是在個(gè)人計算機環(huán)境中執行。轉換器預先處理組成爪哇包裹之類(lèi)別檔(classfile),并建立緊密的二元檔案(binaryfile),稱(chēng)為CAP檔。CAP文件為可下載的組件??ㄍ獍惭b程序取得CAP文件并將它傳送給卡內安裝器。
                  四、爪哇卡虛擬機
                    爪哇卡虛擬機(JCVM)和爪哇虛擬機(JVM)之間主要的不同在于JCVM被建構為兩個(gè)不同的部分,如圖二所示。
                    JCVM的卡內部分包括爪哇卡位元碼解譯器。爪哇卡轉換器是在個(gè)人計算機或工作站上執行。該轉換器是JCVM的卡外部分。他們兩者結合可以支持虛擬機功能,其中包括加載爪哇類(lèi)別檔,并且以特別的語(yǔ)法執行這些檔案。轉換器會(huì )預先處理類(lèi)別檔,同時(shí)會(huì )執行驗證、決議、準備、和位碼最佳化等工作,這些工作在爪哇虛擬機是在類(lèi)別加載時(shí)期執行的。轉換器的輸出是一個(gè)CAP檔案。此CAP檔接著(zhù)被放置到爪哇智能卡上,并由解譯器執行。

                  1.爪哇卡轉換器
                    不像爪哇虛擬機一次只能處理一個(gè)類(lèi)別,爪哇卡轉換器的加載和轉換單位是一個(gè)包裹。轉換器會(huì )預先處理組成爪哇包裹的類(lèi)別檔,并且將該包裹轉換成一個(gè)CAPn。在轉換的過(guò)程中,轉換器會(huì )執行下列步驟:
                   ?。炞C和精簡(jiǎn)爪哇語(yǔ)言檢查:確認類(lèi)別的加載形象(image)妥善形成,同時(shí)檢查爪哇卡精簡(jiǎn)語(yǔ)言是否有任何違規情況。
                   ?。B結和決議:將類(lèi)別、方法、和區域的符號型參考(symbolicreferences),分解成較緊密的形式,使之可在卡上更有效的處理。
                   ?。淮a最佳化:利用在類(lèi)別加載和連結時(shí)期取得的信息,優(yōu)化其位碼。
                   ?。獪蕚浜统跏蓟簽椴煌?lèi)別安排儲存空間,并建立VM數據結構;同時(shí)初始化靜態(tài)變量。
                    轉換器的輸入不僅包括將被轉換的類(lèi)別檔,同時(shí)還包括了一個(gè)或一個(gè)以上的輸出檔(exportfiles)。輸出檔內含經(jīng)由被轉換的類(lèi)別所輸入的包裹內容的名稱(chēng)和連結信息。除了產(chǎn)生一個(gè)CAP檔之外,轉換器還會(huì )為被轉換的包裹產(chǎn)生一個(gè)輸出檔。
                  2.CAP檔和輸出檔
                    CAP是被轉換的應用程序(convertedapplet)的縮寫(xiě)。一個(gè)CAP檔通常是指定義一個(gè)或多個(gè)爪哇卡應用程序的包裹。不過(guò),包裹未必定義一個(gè)應用程序。在該情況下,CAP文件可代表一個(gè)數據庫包裹,提供由應用程序所共享的一般類(lèi)別和服務(wù)。例如,爪哇卡架構API包裹全都是數據庫包裹。
                  爪哇程序的一但編寫(xiě)隨處執行(writeoncerunanywhere)或許是爪哇平臺最重要的特色。在爪哇技術(shù)中,類(lèi)別文件是爪哇結構的中心部分。其定義出爪哇平臺二元碼兼容性(binarycompatibility)的標準。由于爪哇卡虛擬機結構的分散特性,CAP檔可為爪哇平臺執行碼兼容性設定標準檔案格式。CAP文件格式是一種特別形式,軟件可以此種形式載在執行爪哇卡執行時(shí)期環(huán)境的智能卡上。
                    輸出檔并非載在智能卡上,因此爪哇卡解譯器并不直接使用之。相反的,輸出檔是轉換器因連結目的而產(chǎn)生和使用的。輸出文件可被認為C語(yǔ)言中的起頭文件(headerfile)。輸出文件包含整個(gè)類(lèi)別包裹的公共API信息(類(lèi)別的名稱(chēng)和連結信息、接口、方法、和包裹中的區域),程序開(kāi)發(fā)者可以自由的將輸出文件送到該應用程序的潛在使用者處。
                  3.爪哇卡解譯器
                    爪哇卡解譯器本身不加載或操控CAP檔。它只執行在CAP檔中所發(fā)現的爪哇卡應用程序,CAP文件是由安裝器所加載。爪哇卡解譯器和安裝器之間的功能劃分,使得解譯器既小巧,同時(shí)還使安裝器的實(shí)作極有彈性。
                    爪哇卡解譯器在實(shí)施執行時(shí)期安全上扮演重要的角色。例如解譯器經(jīng)由應用程序之防火墻機能,控制了對JCRE服務(wù)和應用程序內部通訊的存取。
                    到目前為止,本文一直說(shuō)明爪哇卡虛擬機是包含轉換器和解譯器在內。不過(guò),傳統上爪哇卡虛擬機是被定義為虛擬機的卡上部分。虛擬機在我們目前的定義中是解譯器。在早期許多刊物中,這種傳統說(shuō)法已經(jīng)不可動(dòng)搖。因此,在本文剩余部分,爪哇卡解譯器和爪哇卡虛擬機也以此定義為主,除非文章中有特別聲明。
                  五、爪哇卡執行時(shí)期環(huán)境
                    在個(gè)人計算機或工作站中,爪哇虛擬機是如操作系統過(guò)程一樣執行。當COS過(guò)程終結時(shí),爪哇應用程序和其對象就會(huì )被自動(dòng)摧毀。
                    相反的,爪哇卡虛擬機是在爪哇卡執行時(shí)期環(huán)境中執行。JCRE是在卡片初始化時(shí)期被初始化。在卡片的整個(gè)生命期中,JCRE初始化只會(huì )被執行一次。在此過(guò)程中,JCRE會(huì )初始化虛擬機,并且建立對象,以提供JCRE服務(wù)并管理應用程序。一旦應用程序被安裝后,JCRE會(huì )建立應用程序實(shí)體(appletinstances),同時(shí)應用程序也會(huì )建立對象來(lái)儲存資料。
                    大部分儲存在卡片上的信息,即使在卡片沒(méi)電時(shí),也必須獲得保存。非揮發(fā)性?xún)却婕夹g(shù)(像是EEPROM)就可使智能卡在沒(méi)有獲得供電時(shí)也能儲存信息。由于JCRE和卡片上所建立的對象常被用來(lái)代表持續的應用程序信息,所以JCRE的壽命和卡片的壽命是一樣的。當電力供應中斷時(shí),JCRE可被視為在一個(gè)無(wú)限長(cháng)的時(shí)頻周期(clockcycle)中運作。
                    在卡片下一次得到能量時(shí),JCRE就會(huì )醒過(guò)來(lái),并且開(kāi)始虛擬機的執行。不過(guò)這里有一點(diǎn)值得注意的是,JCRE到時(shí)不會(huì )回到虛擬機在失去電力時(shí)的運作。虛擬機到時(shí)會(huì )重新設定(reset),并且自main循環(huán)一開(kāi)始的地方開(kāi)始執行。JCRE重新設定和初始化是不同的,因為它可保存卡片上所建立的應用程序和對象。在重新設定的過(guò)程中,如果有交易動(dòng)作先前未完成,JCRE會(huì )執行任何必須的清理動(dòng)作,以將JCRE帶入前后一致的狀態(tài)。
                  六、爪哇卡API
                    爪哇卡API是由一組特別規劃的類(lèi)別所組成,用以設計依據ISO7816模型為基礎的智能卡應用程序。類(lèi)別的中心和其延伸部分比爪哇平臺上的類(lèi)別要緊密簡(jiǎn)潔,同時(shí)能提供基本服務(wù)給爪哇卡應用程序。
                    爪哇卡API包含三個(gè)核心包裹和一個(gè)延伸包裹。這三個(gè)核心包裹分別是java.lang,javacard.framework和javacard.security。延伸包裹為javacardx.crypto。除了在java.lang包裹中的類(lèi)別之外,熟悉爪哇平臺的程序開(kāi)發(fā)者不一定認識大部分爪哇卡的類(lèi)別。這是因為許多爪哇類(lèi)別是支持GUI接口和網(wǎng)絡(luò ),以及桌上型檔案系統IO。智能卡并沒(méi)有顯示器,同時(shí)他們是使用不同的網(wǎng)絡(luò )協(xié)議和檔案系統結構。
                  1.java.lang包裹
                    一般來(lái)說(shuō),在爪哇卡API中不支持任何爪哇API類(lèi)別。不過(guò)有些來(lái)自java.lang包裹的類(lèi)別,可提供基本的爪哇語(yǔ)言支持。這種類(lèi)別是Object、Throwable以及一些與VM相關(guān)的exception類(lèi)別。Object類(lèi)別定義出爪哇卡類(lèi)別階層的根基,而Throwable類(lèi)別則提供所有exception一個(gè)共同之前導者(ancestor)。在因爪哇語(yǔ)言有違規情況而發(fā)生錯誤時(shí),被支持的exception類(lèi)別可確保爪哇語(yǔ)言的語(yǔ)意正確。例如,爪哇虛擬機和爪哇卡虛擬機在存取到一個(gè)空置參考(null-reference)時(shí),都會(huì )出一個(gè)NullPointerException。在爪哇卡平臺上所支持的類(lèi)別列于表1。
                  表1  爪哇卡java.lang包裹
                  Object Throwable Exception
                  Runtime Exception Arithmetic Excep-tion Array Index out Of Bounds Exception
                  Array Stor Exception Class Cast Excep-tion Index Out Of Bounds Exception
                  NullPointerException SecurityException NegativeArraySizeException
                    爪哇卡java.lang包裹是在爪哇平臺上與其對等的java.lang的精簡(jiǎn)版。由于java.lang包裹中所支持的類(lèi)別,爪哇卡applet是向上兼容的。在類(lèi)別通路中所需的爪哇卡類(lèi)別在可用時(shí),爪哇卡applet即可在桌上型爪哇環(huán)境中執行。
                  2.javacard.framework包裹
                    javacard.framework是一種基本包裹。它為爪哇卡應用程序的核心功能提供架構類(lèi)別和接口。最重
                    要的是,它定義出一個(gè)和爪哇應用程序類(lèi)別具有相同角色的基礎應用程序類(lèi)別?;A類(lèi)別“applet”在
                    應用程序的生命周期中,為應用程序之執行提供架構,同時(shí)也提供和JCRE的交互作用。一個(gè)使用者應
                    用程序類(lèi)別必須延伸自基礎“applet類(lèi)別,并且會(huì )改寫(xiě)“applet類(lèi)別中的方法,以實(shí)施應用程序的功能。
                    在javacard.framework包裹中另一個(gè)重要的類(lèi)別是APDU類(lèi)別。APDU為applicationprotocoldataunits之縮寫(xiě),是在智能卡應用程序和主機應用程序之間交換的資料包裹。每個(gè)APDU包含一個(gè)主機下給智能卡應用程序的指令,或應用程序回給主機的響應。應用程序開(kāi)發(fā)者可以使用在A(yíng)PDU類(lèi)別中所提供的方法,而更輕易的處理APDU指令。
                    java.lang.System類(lèi)別是不被支持的。爪哇卡平臺會(huì )提供接口給系統行為的javacard.framework.JCSystem類(lèi)別。JCSystem類(lèi)別包括一組方法,來(lái)控制應用程序的執行、資源管理、交易管理、以及在爪哇卡平臺上應用程序和應用程序之間的對象分享。
                    其它在javacard.framework包裹中所支持的類(lèi)別是個(gè)人識別碼(PIN)、工具(utility)、和exceptions類(lèi)別。
                  3.javacard.security包裹
                    javacard.security包裹提供架構給爪哇卡平臺上所支持的密碼學(xué)(cryptographic)功能。其設計是以java.security包裹為基礎。
                    javacard.security包裹定義出一個(gè)關(guān)鍵的類(lèi)別keyBuilder和各種接口。這些接口代表在對稱(chēng)(DES)或非對稱(chēng)(DSA和RSA)演算中所使用的密碼金鑰。此外它還支持抽象基礎類(lèi)別RandomData,Signature,和MessageDigest。這些類(lèi)別是用來(lái)產(chǎn)生隨機資料,并計算訊息摘要(digests)和簽章(signatures)。
                  4.javacardx.crypto包裹
                    javacardx.crypto包裹是一延伸(extension)包裹。其包含密碼學(xué)類(lèi)別和輸出所控制的功能接口。javacardx.crypto包裹定義出支持編碼和譯碼功能的抽象基礎類(lèi)別Cipher。
                    javacard.security和javacardx.crypto包裹定義出應用程序呼叫密碼學(xué)服務(wù)的API接口。不過(guò),它們并不提供任何實(shí)作。JCRE提供者需要供應可執行關(guān)鍵接口的類(lèi)別,和自抽象類(lèi)別RandomData,Signature,MessageDigest,和Cipher所延伸出的類(lèi)別。通常在智能卡上會(huì )存有一個(gè)獨立的密碼輔助處理器,來(lái)執行密碼學(xué)計算。
                  七、爪哇卡應用程序
                    爪哇卡應用程序被稱(chēng)為applet。它就像其它計算機操作系統環(huán)境中的應用程序處理或使用者空間一樣。
                    您不該只因為它們名稱(chēng)中都有應用程序,而將爪哇卡應用程序和爪哇應用程序給搞混了。爪哇卡應用程序是一種依附一組規范的爪哇程序,因此能在爪哇卡執行時(shí)期環(huán)境內執行。爪哇卡應用程序并不預期在瀏覽器環(huán)境中執行。
                    選擇應用程序來(lái)命名爪哇卡應用程序的理由,是爪哇卡應用程序在卡片被生產(chǎn)之后可加載爪哇卡執行時(shí)期環(huán)境內。也就是說(shuō),不像許多嵌入系統,應用程序得要嵌入ROM。相反的,它們可在稍后被動(dòng)態(tài)的下載到卡片上。
                    爪哇卡執行時(shí)期環(huán)境支持一個(gè)多重應用環(huán)境。每個(gè)應用程序都由一個(gè)AID獨一認定。一個(gè)應用程序也可以多重實(shí)例。例如,您可為了支持美金,建立一個(gè)電子錢(qián)包(wallet)應用程序實(shí)例,另外為英鎊建立一個(gè)電子錢(qián)包應用程序實(shí)例。
                    應用程序類(lèi)別必須延伸自javacard.framework.Applet類(lèi)別?;Aapplet類(lèi)別是所有駐在爪哇卡上的應用程序的超級類(lèi)別。其定義出應用程序必須支持的一般方法,以便在應用程序的生命周期內和JCRE交互作用。
                  八、應用程序開(kāi)發(fā)過(guò)程
                    爪哇卡應用程序開(kāi)發(fā)的開(kāi)始和其它任何爪哇程序一樣,也就是程序開(kāi)發(fā)者編寫(xiě)一個(gè)或一個(gè)以上的爪哇類(lèi)別,并以爪哇編碼器來(lái)編輯來(lái)源碼,并如圖三所示,產(chǎn)生一個(gè)或一個(gè)以上的類(lèi)別檔。一個(gè)應用程序會(huì )被組織成一個(gè)包裹或一組包裹。最小的應用程序是具有一個(gè)自 javacard.framework.Applet類(lèi)別所得來(lái)的單一類(lèi)別的包裹。
                    首先,應用程序在個(gè)人計算機或工作站的爪哇環(huán)境中被執行、測試、并進(jìn)行除蟲(chóng)動(dòng)作。此過(guò)程乃利用現存的爪哇開(kāi)發(fā)工具來(lái)測試應用程序的功能。不過(guò),在此步驟中,爪哇卡平臺的部分特點(diǎn)無(wú)法被測試,例如應用程序防火墻、和對象的暫時(shí)性以及持續性行為就無(wú)法被測試。
                    接下來(lái),應用程序是在一個(gè)仿真環(huán)境中進(jìn)行測試。仿真器會(huì )在個(gè)人計算機或工作站上仿真爪哇卡執行時(shí)期環(huán)境。應用程序在仿真器執行的行為應該和它在一個(gè)真正卡片中執行的行為一樣。在此開(kāi)發(fā)階段,不但應用程序會(huì )被進(jìn)一步測試,應用程序的執行時(shí)期行為也會(huì )被測試。

                    通常,仿真器和除蟲(chóng)器是一起的。除蟲(chóng)器可讓您設定一個(gè)分隔點(diǎn)(breakpoint),或將程序變成單一步驟,并且看到仿真爪哇執行時(shí)期環(huán)境中應用程序變化的執行狀態(tài)。
                    最后當應用程序準備被下載進(jìn)一個(gè)真正的卡片內時(shí),組成應用程序的類(lèi)別文件會(huì )利用爪哇卡轉換器而轉換成CAP檔案。應用程序的轉換過(guò)程列于圖四。轉換器的輸入不僅包括將被轉換的類(lèi)別檔,同時(shí)還包括了一個(gè)或一個(gè)以上的輸出檔。當應用程序包裹在轉換時(shí),轉換器也同時(shí)產(chǎn)生該包裹的一個(gè)輸出檔。一個(gè)CAP檔或一個(gè)輸出檔代表一個(gè)爪哇包裹。在進(jìn)行轉換之后,由一個(gè)或數個(gè)CAP文件所代表的應用程序,會(huì )被加載并安裝在爪哇智能卡上。

                  本文關(guān)鍵詞:JAVA卡技術(shù)概述
                  回到頂部
                  99久热只有精品视频在线17_精品一区二区三区自拍图片_最新国产v亚洲_久久综合九色综合久
                  <strike id="tpvd9"><dfn id="tpvd9"></dfn></strike>

                        <em id="tpvd9"></em>

                          <address id="tpvd9"></address>
                            <dfn id="tpvd9"><sub id="tpvd9"></sub></dfn>

                            <thead id="tpvd9"><noframes id="tpvd9">
                            <ruby id="tpvd9"></ruby>

                                  <thead id="tpvd9"></thead>