本篇文章为大家展示了java中怎么实现RSA非对称加密算法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
成都创新互联网站建设公司是一家服务多年做网站建设策划设计制作的公司,为广大用户提供了成都网站建设、网站建设,成都网站设计,广告投放,成都做网站选成都创新互联,贴合企业需求,高性价比,满足客户不同层次的需求一站式服务欢迎致电。
1、私钥加密,公钥解密:
//私钥加密,公钥解密--加密 PKCS8EncodedKeySpec pkcs8EncodedKeySpec = new PKCS8EncodedKeySpec(rsaprivateKey.getEncoded()); KeyFactory privateKeyFactory = KeyFactory.getInstance("RSA"); PrivateKey privateKey = privateKeyFactory.generatePrivate(pkcs8EncodedKeySpec); Cipher privateCipher = Cipher.getInstance("RSA"); privateCipher.init(Cipher.ENCRYPT_MODE, privateKey); byte[] result = privateCipher.doFinal(src.getBytes()); System.out.println("私钥加密,公钥解密--加密:"+Base64.encodeBase64String(result)); //私钥加密,公钥解密--解密 X509EncodedKeySpec x509EncodedKeySpec = new X509EncodedKeySpec(rsapublicKey.getEncoded()); KeyFactory publicKeyFactory = KeyFactory.getInstance("RSA"); PublicKey publicKey = publicKeyFactory.generatePublic(x509EncodedKeySpec); Cipher publicCipher = Cipher.getInstance("RSA"); publicCipher.init(Cipher.DECRYPT_MODE, publicKey); result = publicCipher.doFinal(result); System.out.println("私钥加密,公钥解密--解密:"+new String(result));
2、公钥加密,私钥解密:
//公钥加密,私钥解密---加密 x509EncodedKeySpec = new X509EncodedKeySpec(rsapublicKey.getEncoded()); publicKeyFactory = KeyFactory.getInstance("RSA"); publicKey = publicKeyFactory.generatePublic(x509EncodedKeySpec); publicCipher = Cipher.getInstance("RSA"); publicCipher.init(Cipher.ENCRYPT_MODE, publicKey); result = publicCipher.doFinal(src.getBytes()); System.out.println("公钥加密,私钥解密---加密:"+Base64.encodeBase64String(result)); //公钥加密,私钥解密---解密 pkcs8EncodedKeySpec = new PKCS8EncodedKeySpec(rsaprivateKey.getEncoded()); privateKeyFactory = KeyFactory.getInstance("RSA"); privateKey = privateKeyFactory.generatePrivate(pkcs8EncodedKeySpec); privateCipher = Cipher.getInstance("RSA"); privateCipher.init(Cipher.DECRYPT_MODE, privateKey); result = privateCipher.doFinal(result); System.out.println("公钥加密,私钥解密---解密:"+new String(result));
上述内容就是java中怎么实现RSA非对称加密算法,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。