频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

JCE提供了一个使用非对称加密法的API

作者: 出处:ZDnet  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2005-10-11 10:38
关 键 词:加密  C  使用  I  AP  API
阅读提示:在本文中,讲解如何使用Java扩展加密法(JCE)来利用非对称加密法的优势。

使用对称加密系统有一些缺点。由于只有一个秘钥能够解密密文,所以你必须把它随密文一起送出去,这就会引起一些风险:有人可能会截取到密钥。此外,每个接收者都必须有一个不同的密钥,所以你还要解决密钥管理的问题。

通过使用公钥和密钥,非对称加密法圆满地解决了这些问题。使用你的公钥,任何人都可以加密只能由你解开的信息。尽管你还是必须保护好自己的密钥,但是你的公钥可以任意发放或者放在某个中央库供人取用。在本文中,我将讲解如何使用Java扩展加密法(JCE)来利用非对称加密法的优势。

使用JCE
JCE提供了一个API来使用非对称加密法。第一步是使用下面的代码片段生成一对公钥和私钥:
KeyPairGenerator kpg = null;
kpg = KeyPairGenerator.getInstance("RSA", "BC");
kpg.initialize(1024, new SecureRandom());
KeyPair kp = kpg.generateKeyPair();
PrivateKey priKey = kp.getPrivate();
PublicKey pubKey = kp.getPublic();

在这里,KeyPairGenerator的getInstance方法接受两个参数??实现和提供者。本文所有的例子都把Bouncy Castle(BC)作为提供者。在获得了KeyPairGenerator的实例之后,你必须将它初始化,指出你所期望的安全级别。在本文的例子里,你正在生成一对1,024位的密钥。下一步,你要创建KeyPair。通过KeyPair对象,你可以访问公钥和私钥。在我们的示例代码里,这对密钥被保存在文件系统里,供以后使用。

要注意的一点内容:有了这些密钥,加密数据就简单了。但是你必须小心在加密和解密数据的时候不要超过区块大小。让我们看看示例代码里crypt方法的一个代码段:
cipher.init(type, key);
out = new ByteArrayOutputStream();
int s = cipher.getBlockSize();
int r = 0;
for (int t = 0; t 〈 text.length; t += s) {
if (text.length - t 〈= s) {
r = text.length - t;
} else {
r = s;
}
out.write(cipher.doFinal(text, t, r));
}
out.flush();
out.close();
在初始化密码之后,你就要创建一个新的ByteArrayOutputStream来容纳加密/解密数据。然后使用区块大小,你要在目标文本内往复并加密/解密文本块,这些加密/解密块要小于或者等于我们密码的区块大小。如果你尝试加密/解密的数据比区块大小要大,那么这样的操作会失败,而且会出现异常。
更高的安全性

如果使用对称系统加密,那么你就在冒风险:有人会截取密码并读取密文。使用非对称的方法,明文被公钥和私钥保护起来。正如示例代码所示,只需使用一些辅助方法读取和编写密钥,实现信息交换的安全性是很容易的。


发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有