欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

问题排查记录

程序员文章站 2022-06-09 15:03:31
...
  1. saas系统,商户回调我们时对数据加密(用我们提供的公钥加密),我们回调接口用私钥解密解不开,报javax.crypto.BadPaddingException: Decryption error异常,确保**对没问题的情况下解不开?
    原因:双方RSA使用的provider不一致。我们这边使用默认的provider,jdk自带的com.sun.crypto.provider.SunJCE,而商户那边使用了org.bouncycastle.jce.provider.BouncyCastleProvider(BC)。加密解密必须使用相同的provider才能保证在秘钥对没问题的时候,加密解密成功。
 Cipher cipher = Cipher.getInstance("RSA"); //jdk默认provider
 Cipher cipher = Cipher.getInstance(keyFactory.getAlgorithm(),new BouncyCastleProvider());//BC provider
相关标签: 问题排查