Java怎么使用rsa非对称加密法进行加密


这篇文章主要介绍了Java怎么使用rsa非对称加密法进行加密,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。公钥与私钥是成对的,一般的,我们认为的是公钥加密、私钥解密、私钥签名、公钥验证,有人说成私钥加密,公钥解密时不对的。公钥与私钥的生成有多种方式,可以通过程序生成(下文具体实现),可以通过openssl工具:  RSA生成公钥与私钥一般有两种格式:PKCS1和PKCS8,上面的命令生成的秘钥是PKCS1格式的,而公钥是Subject Public Key免费云主机域名,一般配合PKCS8格式私钥使用,所以就可能会涉及到PKCS1和PKCS8之间的转换:现实中,我们往往从pem、crt、pfx文件获取公私和私钥,crt、pfx的制作可以参考:简单的制作ssl证书,并在nginx和IIS中使用。为简化说明介绍,这里我直接封装了一个工具类,因为要从pem、crt、pfx文件获取公私和私钥,因此引用了一个第三方包:BouncyCastle,可以直接在pom.xml中添加依赖:  简单封装的RsaUtil.java:  生成公钥和私钥:  生成秘钥后,需要保存,一般保存到pem文件中: 可以保存到pem文件中,当然也可以从pem文件中读取了:  还可以从crt证书中读取公钥,而crt文件不包含私钥,因此需要单独获取私钥: pfx文件中包含了公钥和私钥,可以很方便就读取到:  有时候我们还可能需要进行秘钥的转换:  有了公钥和私钥,接下就就能实现加密、解密、签名、验证签名等操作了:  这里完整的demo代码:感谢你能够认真阅读完这篇文章,希望小编分享的“Java怎么使用rsa非对称加密法进行加密”这篇文章对大家有帮助,同时也希望大家多多支持百云主机,关注百云主机行业资讯频道,更多相关知识等着你来学习!

相关推荐: Laravel如何实现不触发updated_at的修改

小编给大家分享一下Laravel如何实现不触发updated_at的修改,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!不触发 updated_at 的修改无论何时,当修改 Eloqu…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 08/20 11:19
Next 08/20 11:19

相关推荐