当前位置: 移动技术网 > IT编程>开发语言>.net > ASP.NET(C#)-JAVA对接RSA加密签名-第三讲

ASP.NET(C#)-JAVA对接RSA加密签名-第三讲

2018年09月14日  | 移动技术网IT编程  | 我要评论

高门 席绢,异侠txt全集下载,win7 序列号

这一章呢,我们来看看java如何实现rsa。

啊?为什么?要想比较差别,当然得看看人家怎么加密的。

前面只讲了c#怎么实现rsa加密解密,签名验签,有关java的也只是讲了如何去生成pem格式公钥私钥以及怎么转化,但是并没有讲解到java与c#签名时候的注意点,尤其是对接。

这里就要说到本文的由来,对接一个项目,对方公司程序为java语言编写,我司程序为c#语言编写,对方提供的对接demo中.net程序居然无法正常运行,于是,我就找到对方技术人员提供可用的示例对接demo,对方技术人员来了一句”我不懂.net”。没毛病,我也不懂java,我知道那种痛。所以为了不让更多人痛,我就写了这边文章。

这里提供一段java代码,作用是实现rsa签名(真特么难啊,为了一个base64转码,搜了一上午解决方案)

\

箭头所指,是签名时候使用的算法,在c#中是没有"md5withrsa"这样的写法的,所以在这里提供一个参照表,在使用我写的加密帮助类时,的对应关系。

java签名时

c#/.net(签名枚举选择)

md5withrsa

encrypttype.md5

sha1withrsa

encrypttype.sha1

sha256withrsa

encrypttype.sha256

sha384withrsa

encrypttype.sha384

sha512 withrsa

encrypttype.sha512

签名验证代码:(对应关系如同上表)

\

顺便提供一下java实现rsa加密的方法:

加载公钥私钥(签名时候用的,前面忘了写了...):

\

\

实现加密解密(公钥加密,私钥解密):

\

\

测试方法:

使用运行java代码加密,然后在c#中进行解密

使用java签名数据,然后再c#中进行验证签名

注意过程中秘钥不要混淆,这里java使用的pcks8填充加密,所以在c#中生成的秘钥记得先转化为pcks8填充模式的秘钥。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网