- 热门文章:
- · 我的JAVA工具
- · JAVA编程思想 课程进展 一
- · java文件的相对路径
- · java内部类的总结
- · Java 面试中的陷阱
- · 自己动手编写Eclipse扩展点
- · log4j学习(上)
- · 一个简单的表达式求值类,java
- · 一个简单的 CORBA/java 示例
- · 实现可自定义的搜索功能
- · 用JAVA开发CORBA应用实例
- · Java性能探寻
密钥对的存储和加载
1.存储密钥对
首先使用KeyPairGeneration产生密钥对:
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
keyGen.initialize(1024);
KeyPair keyPair = keyGen.genKeyPair();
privateKey = keyPair.getPrivate();
publicKey = keyPair.getPublic();
将密钥存储为文件的方法:
FileOutputStream fs = new FileOutputStream(fileName);
fs.write(privateKey.getEncoded());
fs.close();
2.加载密钥对
假设公钥文件为public.dat、private.dat
首先读取公钥文件:
//read public key
FileInputStream fsPublicKey = new FileInputStream(publicKeyFile);
BufferedInputStream bfsPublicKey = new BufferedInputStream(fsPublicKey);
byte[] bytePublicKey = new byte[bfsPublicKey.available()];
bfsPublicKey.read(bytePublicKey);
bfsPublicKey.close();
使用KeyFactory产生公钥
//build public key
X509EncodedKeySpec pubKeySpec = new X509EncodedKeySpec(
byteEncodedPublicKey);
KeyFactory keyFactory = KeyFactory.getInstance("RSA");
PublicKey pubKey = keyFactory.generatePublic(pubKeySpec);
主意,私钥的的处理和公钥相同,唯一不同的是私钥的KeySpec不同。私钥应使用PKCS8EncodedKeySpec
下一篇:我的JAVA工具 >>
相关文章:
- · Java扫雷程序,初试Java
- · 为什么Java中继承是有害的
- · Java 线程综合述
- · 用Java编写扫雷游戏--算法思考
- · java初学者要搞清
- · java制作欢迎屏幕123
- · 浅谈Java中的存储空间类型
- · Java变量类型间的相互转换
- · JAVA反射技术(二)
- · java反射技术(一)
- · 第四讲 Java的例外处理和I/O流
- · 第三讲 Java语言中的面向对象特性
- · 第二讲 Java语言基础知识
- · 第一讲 Java语言概述
- · 用java学习数据结构--单链表
- · 用Java创建带图标和缩进的JComboBox
- · Java基础之关键字
- · 用Java创建带图像的菜单
- · 用java读写ini配置文件
- · Java性能之我见
- · Java程序的性能优化StringBuffer与Vector
- · Java操作文本文件中的中文
- · (代码级)Java性能的优化
- · 用javap 反汇编帮你理解java特性
- · EJB之无状态会话Bean简单应用-学习与实践
- · Java中类型转换的特例
- · 在red hat linux 10下安装 eclipse 3
- · JetBrains推荐图书读后感
- · 简明 HTML CSS 开发规范
- · JUnit测试程序
- · 行列式算法(java)
- · JUnit和单元测试入门简介
- · 关于JDBC
- · 有关Struts的往事
- · 利用Observer模式解决组件间通信问题
- · Java程序编码规范
- · 突破Java异常处理规则
- · JSP中文乱码问题的解决.
