soft_1060

上传人:油条 文档编号:20327380 上传时间:2017-10-09 格式:PDF 页数:11 大小:508.76KB
返回 下载 相关 举报
soft_1060_第1页
第1页 / 共11页
soft_1060_第2页
第2页 / 共11页
soft_1060_第3页
第3页 / 共11页
soft_1060_第4页
第4页 / 共11页
soft_1060_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《soft_1060》由会员分享,可在线阅读,更多相关《soft_1060(11页珍藏版)》请在金锄头文库上搜索。

1、 开奇学堂免费教程 J2ME 证书申请 VeriSign 和 T hawte 的 Java 代码签名证书可以用于数字签名运行 J2ME MIDlet(MIDP 2.0)代码, 支持目前市面上流行的各种基于Java的手机多媒体和交互应用, 运行签名后的MIDlet Suite 就不会弹出烦人的警告框了! 但 Veri Sign Java 代码签名证书通用性更好,支持更多类型的手机和 PDA 等移动终端。 以下MIDlet签名指南根据Sun网站和VeriSign/Thawte网站上的文章(网页)整理, 请同时参考原文: (1) Whats New in the J2ME Wireless Tool

2、kit 2.0 (2) Understanding MIDP 2.0s Security Architecture (3) Java ME - Micro App Development Made Easy (4) Nokia MIDlet(MIDP 2.0)代码签名证书申请和使用指南 本签名指南是基于 Sun Java Wire less Toolkit 2.2 和 2.5 Beta的 使用指南 编写,如果您还没有此 开发工具 可以到Nokia网站上 下载 合适的 开发工具 (推荐下载最新的 2.5 Beta,因为 2.2 版本的仿真OTA运行有问题Bug,签名后不显示已经签名的签名信息)。

3、 同时,请一定要先参考: MIDP 2.0 安全机制 , 充分理解MIDP 2.0 的安全机制有助于签名MIDlet的成功部署。 第 1 步 创建 Keystore 和私钥 Step 1. Create a Keystore and Key Pair: 如图 1 所示,打开 开发工具 包中的KToolbar, 点击“打开项目”,再在主菜单“项目”中选择“签署”,如图 2 所示,如果您已经有了Java代码签名证书的密钥对(.sks文件),则您可以点击“导入密钥对”导入您的证书密钥对,导入时需要输入您的私钥密码。如果您还没有申请证书,则您可以点击“新建密钥对”来生成密钥对(Keystore和私钥)

4、,正确填写证书信息后点击“创建”即可。 但请注意以下 3 点: (1) 填写国家(Country)字段时只能填写国家名称缩写CN; (2) 在生成密钥对时并没有提示输入私钥密码,但导入时需要输入私钥密码,缺省密码为“password”; (3) VeriSign代码签名证书不支持中文,请填写正确的英文名称,而Thawte代码签名证书支持中文,您可以根据需要在单位名称、部门名称、所在城市和省份等填写中文名称。 开奇学堂免费教程 这样就生成了密钥对,如图 3 所示,点击别名“wotrustj”就可以显示证书信息,请注意:此时显示的证书颁发者(Issuer)为自己,因为还没有提交 CSR 申请证书。

5、 开奇学堂免费教程 第 2 步 生成证书请求文件(CSR) Step 2. Generate the CSR and request your certificate: 如图 4 所示,选中证书别名后,再点击“Generate CSR”生成 CSR 文件:wotrustcs.csr,并把此文件发给 WoTrust,等待 1-2 个工作日就可颁发证书。 第 3 步 把证书导入到 keystore 中 Step 3. Import the certificate reply into your keystore: 开奇学堂免费教程 一旦您的 Java 代码签名证书颁发,VeriSign 的证书则附

6、在颁发通知邮件的下面,直接完整复制(包括: -BEGIN CERTIFICATE- 和 -END CERTIFICATE-) ,并粘贴到记事本本上保存为 mycert.cer 文件即可。Thawte 的证书则需要到 Thawte 网站上去下载,注意选择 PKCS #7 格式,此证书格式含有您的证书和根证书链,Keytool 要求此格式证书。把此证书使用文本编辑器保存为 mycert.cer。再点击“导入证书”导入您的证书,如图 5所示,一旦导入成功,您会看到此证书的颁发者(Issuer)就是“T hawte Code Signing CA”了。您也可以在“文件”-“工具集”-“管理证书”-“导

7、入证书”即可。您可以看到在J2ME 证书管理器中含有 Thawte 所有根证书。现在,请您马上备份您的证书对(私钥和公钥)keystore 文件: keystore.sks,最好是备份到光盘或其他电脑上,以便以后导入证书用!一般在开发工具的安装目录下,如:C:WTK22appdb 。 请注意: 在导入证书的时候,请选择安全保护域: trusted third party(可信任的第三方)。 开奇学堂免费教程 第 4 步 签名 MIDlet Step 4.Sign your MIDlet: 您需要 Nokia 的开发工具(NDS)来签名代码和配置您的应用了,如图 7 所示,先选中您的证书别名,再

8、点击“签署 MIDlet 套件”就马上完成签名,提示“已签名的 MIDlet 套件”。 开奇学堂免费教程 现在,.jad 就已经包含了您的私钥签名和公钥证书,您可以使用记事本打开 JAD 文件,会看到已经增加了许多字母,如图 8 所示,仔细查看就可以看到 MIDlet-Certificate-1-1:后面就是您的签名证书,而 MIDlet-Certificate-1-2:后面就是签名证书 Thawte Code Signg CA, MIDlet- Certificate-1-3:后面就是颁发证书的顶级证书 Thawte Premium Server CA,而 MIDlet-Jar- RAS-S

9、HA1:后面就是使用您的私钥签名 JAD 代码后的签名摘要。 第 5 步 仿真运行和部署已经签名的 MIDlet Step 5. Emulate and Deploy your MIDlet: 开奇学堂免费教程 这样,就完成了 MIDlet 代码的签名,可以正常使用了。建议您先点击“运行”仿真运行应用软件,如图 9 所示,会显示一些运行信息,同时系统会启动仿真器运行。如果仿真测试没有问题就可以上传到服务器上。 建议同时做 OTA 仿真运行,点击“项目”-“通过 OTA 运行”就可以仿真下载安装过程,会提示“Are you sure y ou want to install.?(您确定要安装此

10、MIDlet 吗?)”,接着显示详细的 MIDlet 信息,同时会显示签名证书的颁发机构(CA)的详细信息,如下图 10 所示: 开奇学堂免 费教程 我们来对比一下如果没有签名安装 MIDlet 的提示情况,如下图 11 所示,同样会提示您是否确认要安装此 MIDlet,同时会在“Advanced(高级)”中显示“Unind entified Third Party(代码开发商身份不能确认)”,强烈建议用户不要安装没有签名的 MIDlet,否则一旦安装了恶意代码,您的手机可能就报废了! 开奇学堂免费教程 第 6 步 常见问题解答 如果您使用签名工具,一般都是没有问题,请检查 JAD 文件是否含

11、有 MIDlet-Certificate-1-1 、 MIDlet-Certificate-1-2 、 MIDlet-Certif icate-1-3 属性和 MIDlet-Jar-RSA-SHA1 属性。问题往往出在部署过程,主要常见问题有: 1. 不能验证证书 签名成功后仿真时出现如下图 11 所示警告信息: 开奇学堂免费教程 显示“ System does not recognize who is trying to authorize th e application ”,意思是无法验证证书颁发机构。主要有 2 个原因: (1) 证书导入问题:您申请证书时会生成私钥和 CSR( 证书请

12、求文件 ) ,在颁发证书给您之前,一定不能删除 NDS 3.0 或 WTK 2.5 等签名工具,也不要再动证书管理,不要再使用自签证书做实验等。而取到证书后,必须在生成 CSR 的同一台电脑上的同一签名工具中导入证书,否则证书不能导入成功; (2) 使用的签名证书的根证书没有预置在手机中 ( 包括自签证书 ) ,请一定要购买 Thawte 或 VeriSign 的 J ava 代码签名证书,其他 CA 颁发的证书都不支持。 2. JAR 文件已经被修改 如下图 12 所示,显示如下警告信息: “ The signature of the JAR is invalid ”意思是 JAR 文件签名

13、无效。主要有 2 个原因: 开奇学堂免费教程 (1) 签名 MIDlet 后修改了 JAR 文件:也许您发现签名时签名工具读取 JAD 文件,而不是 JAR 文件,这样会误以为签名时是签的是 JAD 文件,而与 JAR 文件无关。其实,签名时会计算出 JAR 文件的 SHA-1 摘要,并把此摘要写在 JAD 文件中。如果您修改了 JAR 文件,则其 SHA-1 摘要就变了, MIDle t 在验证时就会出错。所以,您签名 MIDlet 后,一定不能再修改 JAR 文件,如果要修改,则需要重新签名; (2) JAR 文件在网络传输或下载过程中被篡改,可能是下载的原因,也有可能是被其他人非法故意篡改。哪怕是一个字节的修改,也不能通过验证。这就是签名的基本功能之一。 3. 许可不匹配 如果 MIDlet 中的许可属性 ( MIDlet-Permissions ) 中有一个或多个不属于所属的保护域,则仍然不允许安装。而如果 MIDlet 中的可选许可属性 ( MIDlet-Permissions-Opt ) 中有一个或多个不属于所属的保护 域,会允许安装。 如下图 13 所示,如果我们修改 http 许可为: javax.microedtion.io.Connector.htt ,则会 显示如下警告信息:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号