站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2ME 专题保护您的 J2ME/MIDP 应用程序(3)-汉土网络

保护您的 J2ME/MIDP 应用程序(3)-汉土网络

摘要: 保护您的 J2ME/MIDP 应用程序(3)-汉土网络
<tr> <td> <tr> <td colspan="3">IT技术资料馆|编程语言|java系列|J2ME资料|保护您的 J2ME/MIDP 应用程序(3)</td> </tr> <tr> <td height="38" colspan="3" align="center">

保护您的 J2ME/MIDP 应用程序(3)

</td> </tr> <tr> <td colspan="3" align="center"></td> </tr> <tr> <td colspan="3" class="text">在 ECDSASigUtil 类中,首先定义您计划使用的椭圆曲线模型,如清单 7 所示:

清单 7. 定义椭圆曲线模型

ECDSASigUtil.generateKeys() 方法使用清单 7 中的模型生成随机的密钥对。正如前面提到的那样,这个步骤通常由中央认证中心在脱机状态下完成。

清单 8. 使用清单 7 中的模型生成随机的密钥对

公钥以参数 Q 来描述,并且用 pubKey.getQ() 方法来检索它。为了避免与模型参数 q 产生混淆,在方法中使用 QQ ,XML 元素名使用大写的 Q 。清单 9 显示了 ECDSAUtil 类中的方法。这些方法检索模型和密钥参数,它们是重新构造公钥对象所必需的。

清单 9. 用于检索模型和密钥参数的 ECDSAUtil 方法

通过使用生成的私钥,实用程序类 ECDSASigUtil 可以从摘要获取两部分 DSA 签名 R 和 S :

清单 10. 检索 DSA 签名

服务器将摘要、签名和密钥参数编码成 ASCII 文本格式并以 XML 数字签名格式嵌入该文本。和检索方法名中一样,公钥参数 Q 被记录为 QQ ,以将它与相应 XML 元素中的密钥参数 q 区分开来,如清单 11 所示:

清单 11. 编码并以数字签名格式嵌入

验证 MIDP 应用程序从 XML 文档解析出摘要、密钥参数和签名,重新构造公钥并使用清单 12 中显示的方法来验证签名:

清单 12. 验证签名

RSASigUtil.generateKeys() 方法使用 Exponent 生成随机的密钥对。同样,这个步骤通常由中央认证中心在脱机状态下完成。

清单 13. 生成随机的密钥对 </td> </tr> <tr>
↑返回目录
前一篇: 保护您的 J2ME/MIDP 应用程序(4)-汉土网络
后一篇: 保护您的 J2ME/MIDP 应用程序(2)-汉土网络