|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
主要用于数字签名: 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程序员的存储过程 · 测试spring的存储过程 · 浅谈Java中的存储空间类型 · JSP数据库操作例程-存储过程 · 简朴的Oracle存储过程的创建方式(菜鸟级) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |