J2ME中文教程 2 CLDC简介[8]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

2.3    CLDC的安全机制

2.3.1   CLDC的安全级别

CLDC中,虚拟机不允许用户安装程序,因此安全特性和J2SE比要少很多。CLDC规范中主要定义了以下3个级别的安全机制:

 

1,底层安全机制(low-level security

 

底层安全就是通常说的虚拟机的安全,是虚拟机运行在CLDC设备上的最关键的安全机制。它要求运行在虚拟机上的应用程序必须遵循Java语言的标准语法,且能够检查出并组织恶意代码(类)以各种方式对设备进行破坏。对于标准的Java虚拟机的实现,虚拟机使用类审核的方式来保证虚拟机安全。类审核机制能够确保类文件中的字节码以及其他对象不包含非法指令,不会以非法的顺序被执行,也不会访问虚拟机以外的非法内存地址或是地址段。

 

CLDC类的审核机制不同于J2SE它增加了预审核pre-verification机制。2.3.1节将对CLDC的预审核机制做详细的说明。

 

2应用级别安全机制application-level security

 

仅用类审核机制来保证Java平台的安全运行是不够的。因为它仅仅能够确保应用程序的代码是可用的,还有很多潜在的安全威胁没有被涉及到,如对文件系统、打印设备、红外、本地类库以及网络等安全管理。在应用级别安全机制中,CLDC规定,Java应用程序只能访问系统类库、系统资源、额外的设备元件(如即插即用的设备等)和Java运行环境。

 

具体的实现是:应用程序运行在一个封闭的沙箱(sandbox)环境中以得到保护。在沙箱中,只有系统已定义的配置(configuration)、简表(profile)、可选包以及设备支持的一些类可以被应用程序访问。任何没有预先定义类库和资源都不允许访问,以防程序中的恶意代码对沙箱外的资源(如操作系统、硬盘等)非法访问或者破坏。

 

沙箱的需求主要有:

l         类文件必须经过审核且是可用的Java程序。

l         应用程序的下载、安装和管理等操作都不能修改、覆盖或着绕过类虚拟机实现的标准的加载机制。

l         只有预先定义好的,封闭的Java API和类可以被应用程序调用。这包括配置、简表、可选包以及该应用自定义的类。

本文关键:J2ME中文教程 2 CLDC简介
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top