java卡

JAVA 卡是一種可以運行 JAVA 程式的CPU智慧卡。1996年11月,JAVA卡1.0版本的規範正式發布了。如今JAVA卡最新的規範已經到了2.2版。

基本介紹

  • 中文名:java卡
  • 發布時間:1996年11月
  • 最新版本:2.2版
  • 性質:智慧卡
簡介,技術簡介,

簡介

Java卡是Sun微系統為智慧卡開發平台而制定的一個開放的標準。使用Java卡平台創建的智慧卡上存有Java applet。在卡發行後也可以把applet加到卡上或修改卡上已有的applet。它們把數據存儲在一個集成的微處理器晶片里。然後applet被下載到微處理器的記憶體里,由Java虛擬機來運行。類似於另一個智慧卡的開發技術MULTOS,Java卡使多個應用程式被安裝並且各自獨立地共存。每個applet都被防火牆保護以維護其完整性以及防止干擾。應用程式可以動態地升級。
有兩種基本類型的智慧卡。存儲智慧卡是常見的可擦除存儲設備;它通常以讀寫能力為特點,可能還有安全特性。更複雜一點的版本——處理器型智慧卡是一種非常小並且可移動的計算設備,它可以放在你的錢包里。基於Java的智慧卡屬於後者。它們把數據存儲在一個集成的微處理器晶片里。然後applet被下載到微處理器的記憶體里,由Java虛擬機來運行。類似於另一個智慧卡的開發技術MULTOS,Java卡使多個應用程式被安裝並且各自獨立地共存。每個applet都被防火牆保護以維護其完整性以及防止干擾。應用程式可以動態地升級。

技術簡介

在JAVA卡出現之前,智慧卡套用的研發是一個複雜漫長的過程。儘管對智慧卡的結構大小和通信協定,國際規範 ISO 7816 早已規定,但各個卡生產商對智慧卡的研製都各不相同。各個卡生產商對自己的智慧卡操作都有自己獨特的一套指令集。此外,智慧卡編程接口(APIs)非常複雜,需要開發人員非常熟悉低層通信接口協定,記憶體管理和一些智慧卡硬體的細節。因此,在開發智慧卡套用之前,開發人員就需要花費大量時間來了解智慧卡的複雜開發環境,而且在他們研究後會發現並不存在現代化的開發工具(象Visual Studio)。更糟糕的是:對不同的智慧卡並沒有一個通用的開發環境。每次你要開發一種新的套用,可能你都必須重新了解一種新的開發環境。由於所有的智慧卡都是在專門的開發環境中開發出來的,不同的卡的生產商生產出來的相同套用的卡可能並不兼容,這使同一系統中使用不同生產商的卡變得很複雜。
智慧卡的市場不斷擴大,但了解智慧卡編程的人員少之又少。智慧卡編程的複雜性,不統一性將嚴重阻礙智慧卡的發展。市場的需求為智慧卡的發展提出了新的要求。
JAVA卡和JAVA卡API的出現使智慧卡的編程變得既快又簡單,同時這些卡的應用程式(Applet)可以在任何支持JAVA卡API的智慧卡上運行。
在JAVA卡內有一個能執行JAVA位元組碼(Applet)的JAVA虛擬機--它提供一整套標準的JAVA卡編程的API,使得開發人員無需了解複雜的智慧卡硬體和智慧卡專用的技術,就可以進行智慧卡套用的開發,從而大大減少開發時間和降低開發難度。據粗略的統計,用JAVA來編程可以比用C語言來編程節約60%的開發時間,如與智慧卡特殊的彙編語言來比,這種優勢將更為明顯。同時由於 JAVA 虛擬機的使用,JAVA卡的Applet能夠在不同卡片的JCAE(JAVA Card Application Environment)上執行,即透過 JAVA 虛擬機的機制來達到跨平台的能力。JAVA是一種面對對象的程式語言,智慧卡的基於對象的API大大簡化了卡內 Applet 與終端或後台伺服器的通信。
JAVA卡的另一巨大優勢是:開發人員可以任意選擇他們所熟悉和喜歡的開發工具。由於對 JAVA卡的編程是用JAVA語言,所有幾乎當今所有流行的JAVA開發環境,如 VJ++,Vcafe 等,都可以被用來進行JAVA卡的開發。正因如此,快速完成和調試 JAVA 卡的應用程式也變為了可能。而在這之前,調試卡的應用程式是一個極複雜漫長的過程,因為應用程式首先要被裝載到卡的ROM中,而裝載到卡的ROM中的程式是無法更新的,所以對一個應用程式的調試將占用大量的時間。同時由於任何 JAVA 開發人員都可以變為JAVA卡開發人員,這就為智慧卡的發展提供了強有力的人才保證。
JAVA卡還有兩大優點:支持一卡多用途和重用。支持一卡多用途是指JAVA卡上可以同時存在多個不同的套用。這些套用可以來自同一個卡供應商,也可以來自不同的卡供應商。這樣一張JAVA卡就可以完成不同的功能,例如,它可以有電子錢包功能,同時也可以有身份鑑別功能。重用是指JAVA卡上的套用可以根據需要進行刪除或重新添加新的套用,而無需更換新的智慧卡,這樣大大增強智慧卡的靈活性。
由於JAVA位元組碼是通過解釋器來執行的,所以執行速度比較慢。為提高JAVA卡的執行速度,東方英卡採用32位RISC晶片,大大提高了JAVA卡的執行速度,從而使JAVA卡技術更有競爭力。

相關詞條

熱門詞條

聯絡我們