快速业务通道

确保无线J2ME的安全 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17
应用程序授予访问特 定 API(域)的特权。稍后,我们将更详细地讨论基于域的移动代码安全性。

与 WAP 和本机应用程序相比,智能的、注重可用性的设计和 Java 平台内置的执行模式 赋予了 J2ME 应用程序显著的性能和安全性优势。但 J2ME 并不完美。在后面的一节中,我 们将研究 J2ME 安全性框架的优缺点,尤其是当它应用于 MIDP 应用程序时。我们将首先研 究应用程序安全性,然后继续讨论网络和数据安全性。

字节码验证

正如我们已经讨论的,JVM 提供服务以防止恶意代码进入企业系统。字节码验证过程保证 了应用程序不能访问内存空间或使用其域外的资源。字节码验证还防止应用程序重载 Java 语言核心库,这是一种可以用来绕过其它应用程序级安全性措施的方法。

但是,由于这种操作的高昂计算开销,MIDP VM 不在运行时执行完整的字节码验证。相反 ,应用程序开发人员必须在把应用程序部署到移动设备中之前,在开发平台或登台区域上预 先验证类。预验证过程优化执行流,创建应用程序中包含指令目录的堆栈映射(stackmap) ,然后将堆栈映射添加到经预验证的类文件。在运行时,MIDP VM 迅速地对字节码进行线性 扫描,将每个有效的指令与合适的堆栈映射项相匹配。

因为 MIDP 缺少完整的安全性模型,所以在 MIDP 中禁用了一些 J2SE 特性以使潜在的安 全性风险降到最低。例如,为了防止对核心类的非法重载,MIDP VM 不允许用户定义的类装 入器。MIDP 也不支持 Java 本机接口(Java Native Interface (JNI))或反射 (reflection)。即使适当地采取了这些安全性措施,也并非所有通过字节码验证的代码都 被允许运行。代码签名是 J2ME 应用程序安全性策略中下一个重要元素。

代码签名

要获得高级移动代码安全性的优秀示例,我们只需研究 Java applet,它使用数字签名和 安全性沙箱以确保 Web 上的代码安全。这里是关于 applet 安全性原理的简要概述:

在传输之前,applet 服务器用其数字证书对 applet JAR 文件进行签名。

在接收时,浏览器端 Java 安全性管理器验证签名并判断应用程序的发送方和完整性是否 可信。

如果不能验证数字签名,则运行时退出并给出错误信息。如果能够验证签名,则安全性管 理器使用数字证书,通过查询客户机或通过使用表来查询可信实体的权限来确定实体的权限 域。

在成功地完成验证过程之后,应用程序代码被传递到客户机。

注:每个权限域包含一组访问特定 API 的规则。例如,不允许来自不太了解的来源的应 用程序读/写本地存储设备或建立任意网络连接。

可以用和 Java applet 一样的方式对基于 J2ME/CDC 的移动代码进行签名和发送。理论 上,也可以用相同的方法保护 MIDP 应用程序。但是,由于处理能力和内存有限,MIDP 1.0 规范中还不可以使用基于域的安全性管理器。当前的 MIDP VM 只能提供最小的安全性沙箱。 例如,MIDlet 套件只能访问它自己创建的持久记录存储。

即将出台的 MIDP 2.0 规范将需要对域安全性模型的支持,包括基于域的安全性管理器、 应用程序代码签名和数字证书验证功能。为了更好地支持安全移动代码保障,MIDP 2.0 还将 正式包含无线下载(OTA)保障规范。MIDP 2.0 OTA 规范描述了谁拥有安装和删除无线应用 程序的权限;什么操作必须由用户确认以及哪些操作可以自动完成;必须向用户提供哪些警 告;以及当更新应用程序时共享哪些数据。

网络与数据安全性

可以通过建立点对点安全连接来保证网络与数据安全性。象 SSL/TLS(安全套接字层/传 输层安全性 ― 以后简称为 SSL)这样的安全性协议允许我们在因特网主机之间打开安全套 接字。在连接握手时,SSL 利用公钥算法和数字证书在素不相识的各方之间建立信任并交换 当前会话的私钥。于是,SSL 通信各方使用快速的私钥算法来加密和解密通信

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号