c# rsa对于pem格式 私钥加密公钥解密问题

qwe_1207 2014-12-11 08:07:41
c#里面对于私钥加密公钥进行解密没问题,可是java里对私钥加密的字符串,在c#解密前面出现一段乱码\0然后再是正确的解码,我在c#里面对字符串进行私钥加密,加密的字符串在java里用公钥解密报错 javax.crypto.BadPaddingException: Blocktype mismatch: 0,这个什么原因?对于公钥加密私钥解密c# java里面相互倒是没问题
...全文
823 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_36620939 2017-04-26
  • 打赏
  • 举报
回复
楼主怎么解决的啊 我也遇到了这个问题 能简单的说说嘛
qwe_1207 2014-12-12
  • 打赏
  • 举报
回复
确实是填充模式问题,问题解决,谢谢!
引用 3 楼 github_22161131 的回复:
可以方便的调整padding啊,两边一致就好了 比如 var cipher = CipherUtilities.GetCipher("RSA/NONE/PKCS1PADDING"); 比如 var cipher = CipherUtilities.GetCipher("RSA/ECB/OAEPWITHSHA-512ANDMGF1PADDING"); 搞清楚java那边用的是什么padding,这边调整个字符串就ok了
qwe_1207 2014-12-12
  • 打赏
  • 举报
回复
引用 3 楼 github_22161131 的回复:
可以方便的调整padding啊,两边一致就好了 比如 var cipher = CipherUtilities.GetCipher("RSA/NONE/PKCS1PADDING"); 比如 var cipher = CipherUtilities.GetCipher("RSA/ECB/OAEPWITHSHA-512ANDMGF1PADDING"); 搞清楚java那边用的是什么padding,这边调整个字符串就ok了
两边都是rsa
ruiliu1213 2014-12-12
  • 打赏
  • 举报
回复
引用 1 楼 github_22161131 的回复:
两边使用的padding不一致。我之前建议BouncyCastle也是因为完整的框架对各种padding都有良好的支持,自己实现的话得自己弄padding的处理,虽然大部分处理起来并不复杂,不过还是浪费时间的。
使用BouncyCastle也是一样的
winnowc 2014-12-12
  • 打赏
  • 举报
回复
可以方便的调整padding啊,两边一致就好了 比如 var cipher = CipherUtilities.GetCipher("RSA/NONE/PKCS1PADDING"); 比如 var cipher = CipherUtilities.GetCipher("RSA/ECB/OAEPWITHSHA-512ANDMGF1PADDING"); 搞清楚java那边用的是什么padding,这边调整个字符串就ok了
winnowc 2014-12-11
  • 打赏
  • 举报
回复
两边使用的padding不一致。我之前建议BouncyCastle也是因为完整的框架对各种padding都有良好的支持,自己实现的话得自己弄padding的处理,虽然大部分处理起来并不复杂,不过还是浪费时间的。

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧