首页 > 解决方案 > .Net Core 上的编码在 Java 上进行解码

问题描述

我必须使用提供的以下证书在我的 .Net Core 2.2 lib 上编码一个字符串:

-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVMkaF50qEKdSFIiY+nzj4Nh6c aQDrrFVxDLNoMdM1O2BfxvqfJNE+4FNHYUKShQgKVrpx6BO1dPEgDrFK3NQPLOC+ Im/gA2skUMIDZtQt8kX5YXGRT5JkV3hM2lJQFiagf/06oqcI8WyGnHUQwfJueg7t ItUZAx3sQTJfuvlocQIDAQAB
-----END PUBLIC KEY-----

常规 X509Certificate2 无法加载/使用它,但我可以使用这里的这篇文章来做到这一点

问题是另一端Java(当时没有更多信息)似乎无法解密它!

环顾网络,我注意到 java 使用 PKCS #8 很常见,而 .net 使用 PKCS #1。

我从服务器返回的错误是:“Illegal Base64 Caracter 7d”...

我尝试在加密之前对我的有效负载进行 base64 编码,但这也不起作用。

谁能告诉我:

  1. PCKS8 能否解密由 PKCS1 加密的字符串?
  2. .Net Core 2.x 是否有 PKCS8 实现?

编辑1:
我在这里访问了这个站点,使用我上面提供的证书加密了消息并将结果提交到我的端点并且它工作......

标签: java.net-corersa

解决方案


推荐阅读