Java开发的数字证书、数字签名模块实例.rar
Java开发的数字证书、数字签名模块实例,主要应用 于一些支付及安全性审核较高的场合。本示例将从文件中读取数字证书,获取一个处理X.509证书的证书工厂,生成文件输入流,输入文件为c:/mycert.cer,生成数字签名: //产生RSA密钥对(myKeyPair) KeyPairGenerator myKeyGen= KeyPairGenerator.getInstance("RSA"); myKeyGen.initialize(1024); KeyPair myKeyPair = myKeyGen.generateKeyPair(); System.out.println( "得到RSA密钥对" ); 产生Signature对象,对用私钥对信息(info)签名. Signature mySig = Signature.getInstance("SHA1WithRSA"); //用指定算法产生签名对象 mySig.initSign(myKeyPair.getPrivate()); //用私钥初始化签名对象 mySig.update(info); //将待签名的数据传送给签名对象(须在初始化之后) byte[] sigResult = mySig.sign(); //返回签名结果字节数组 System.out.println("签名后信息: " new String(sigResult) ); 用公钥验证签名结果 mySig.initVerify(myKeyPair.getPublic()); //使用公钥初始化签名对象,用于验证签名 mySig.update(info); //更新签名内容 boolean verify= mySig.verify(sigResult); //得到验证结果 System.out.println( "签名验证结果: " verify);
- 1
- 粉丝: 409
- 资源: 1万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助