自签名MIDlet程序指南

需积分: 9 2 下载量 152 浏览量 更新于2024-09-23 收藏 1.2MB PDF 举报
"MIDlet程序自签名方法" 本文档详细介绍了如何为MIDlet程序进行自签名,以便在NokiaSerial系列手机上运行时避免出现频繁的用户授权请求。自签名是解决J2ME开发的MIDlet应用在访问系统敏感API时遇到的安全性问题的一种方法,尤其适用于那些不希望或无法负担购买权威认证机构证书的小型开发者或个人项目。 **适用情况** 在J2ME开发环境中,当MIDlet程序试图访问受保护的API功能,如网络、文件系统或电话功能时,如果没有经过认证,手机会弹出授权提示。自签名可以帮助开发者创建一个受信任的MIDlet,减少或消除这些授权提示。 **使用限制** 自签名的MIDlet虽然可以在某些手机上运行,但其可信度不如由知名认证机构签名的MIDlet,可能不被所有设备接受。此外,自签名的MIDlet在安全性方面可能不如官方签名的可靠。 **实用步骤** 步骤分为几个阶段: 1. **预先准备** - **IDE工具**: 需要一个支持J2ME开发的集成开发环境(IDE),如NetBeans或Sun Wireless Toolkit (WTK)。 - **KeyTool工具**: 这是Java标准版的一部分,用于创建和管理密钥和证书。 - **JadTool工具**: 用于处理JAD文件,它是MIDlet的元数据文件。 2. **创建安装文件** - **权限声明标签**: MIDlet的JAD文件需要包含正确的权限声明,指示它将使用的受保护API。 - **Carbide.j和WTK**: 这两个工具提供了声明权限的不同方式。 3. **创建并导出证书** - **创建密钥**: 使用KeyTool生成私钥和相应的证书请求。 - **导出证书**: 将生成的证书导出为.p12或.crt文件。 4. **对MIDlet套件签名** - **添加证书信息到JAD文件**: 更新JAD文件以包含新证书的信息。 - **添加签名信息到JAD文件**: 输入签名算法和证书指纹。 5. **安装到目标手机** - **安装自签名证书**: 将证书导入手机的信任存储。 - **核实证书安装情况**: 确保证书安装成功。 - **安装已签名MIDlet套件**: 通过蓝牙、红外或数据线将签名后的MIDlet传送到手机。 - **程序设置**: 可能需要调整手机设置以允许自签名的应用运行。 - **已签名与未签名套件比较**: 比较签名前后MIDlet的行为差异。 **其它签名方法** 除了上述手动签名步骤,还有其他工具如Carbide.j和WTK提供的图形化界面,可以简化签名过程。 MIDlet程序自签名是一种节省成本的解决方案,但它可能不适用于所有设备,并且可能不会提供与官方签名相同的信任级别。对于那些寻求快速测试和部署的小型MIDlet项目,这种方法是有效的。然而,在商业环境中,尤其是涉及到用户敏感信息时,通常推荐使用官方认证的签名服务。