登录
首页 >  Golang >  Go问答

BadPaddingException: Decryption error

来源:SegmentFault

时间:2023-01-09 08:55:57 414浏览 收藏

对于一个Golang开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《BadPaddingException: Decryption error》,主要介绍了Java、go、RSA,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

  1. 使用golang做rsa加密,java解密出现点问题

  public static byte[] rsaDecrypt(String cryptograph, String private_key) throws Exception {
    BASE64Decoder b64d = new BASE64Decoder();
    byte[] keyByte = b64d.decodeBuffer(private_key);
    PKCS8EncodedKeySpec s8ek = new PKCS8EncodedKeySpec(keyByte);
    KeyFactory keyFactory = KeyFactory.getInstance("RSA");
    PrivateKey privateKey = keyFactory.generatePrivate(s8ek);
    Cipher cipher = Cipher.getInstance("RSA/ECB/OAEPWithSHA1AndMGF1Padding");
    cipher.init(2, privateKey);
    BASE64Decoder decoder = new BASE64Decoder();
    byte[] b1 = decoder.decodeBuffer(cryptograph);
    return cipher.doFinal(b1);
  }

func RsaEncrypt(data string) (string, error) {
    encrypt, err := rsa.EncryptOAEP(sha1.New(), rand.Reader, publicKey, []byte(data), []byte(""))
    if err != nil {
        return "", err
    }
    return base64.StdEncoding.EncodeToString(encrypt), nil
}

报错信息:

javax.crypto.BadPaddingException: Decryption error

正确答案

临时犯傻! 用的公钥和私钥不是一对  已解决

终于介绍完啦!小伙伴们,这篇关于《BadPaddingException: Decryption error》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表