pad block corrupted

今天碰到一个很窝火的问题 使用java进行加密

代码如下:

Security.addProvider(new com.sun.crypto.provider.SunJCE()); Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());// 添加PKCS7Padding支持 Cipher cipher = Cipher.getInstance(“DESede/ECB/PKCS7Padding”, “BC”); Key key = CipherManager.getKey(sig.getBytes(“GBK”)); cipher.init(Cipher.DECRYPT_MODE, key); byte[] decBytes = cipher.doFinal(CipherManager.str2ByteArr(encStr));

结果怎么都是报如下错 javax.crypto.BadPaddingException: pad block corrupted at org.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher.engineDoFinal(Unknown Source) at javax.crypto.Cipher.doFinal(Cipher.java:2086) 略

各大网站搜索折腾好久,依旧无果 最后发现……原来是因为公钥写错了,导致解密失败,翻白中…… 但是这个错误有很大的误导……发在这里,期望各位在苦海中的亲能解脱早日超生……

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CDN及云技术分享

keyless原理

ssl协议是基于密码学的基础上,解决通信双方加密信道和身份鉴权的安全问题。ssl协议的算法本身是公开的,但是算法本身的输入参数(key)是由通信双方私自保存。在...

1.3K39
来自专栏北京马哥教育

openssl基础应用

一、前言 什么是openssl?讲 openssl之前我们先了解下什么是ssl?ssl是secure socket layer的简称,其使用对称加密解密,非...

3976
来自专栏Jackson0714

WCF安全2-非对称加密

2796
来自专栏IT笔记

支付宝支付密钥RSA1升级到RSA2

支付宝作为国内第一的第三方支付平台,安全的重要性不言而喻了,下面主要对密钥做一个简单的介绍和升级流程。

6343
来自专栏Python小屋

Python使用RSA+MD5实现数字签名

数字签名主要有防抵赖和防篡改两种功能:一是能确定消息确实是由发送方签名并发出来的,因为别人假冒不了发送方的签名,二是能确定消息的完整性。 作为具体实现,发送报文...

4919
来自专栏苦逼的码农

【漫画】https 加密那点事

在每次发送真实数据之前,服务器先生成一把密钥,然后先把密钥传输给客户端。之后服务器给客户端发送真实数据的时候,会用这把密钥对数据进行加密,客户端收到加密数据之后...

2473
来自专栏日暮星辰

使用Oneinstack实现TLS1.3部署

一直在使用OneInstack,一直为网站部署了SSL,随着TLS1.3的草案落实发布,Openssl也发布了多个草案适配的TLS1.3的OPENSSL测试版套...

2402
来自专栏Rgc

前端js,后台python实现RSA非对称加密

先熟悉使用 在后台使用RSA实现秘钥生产,加密,解密;   # -*- encoding:utf-8 -*- import base64 from C...

7416
来自专栏学海无涯

一篇文章搞定密码学基础

密码技术是网络安全的基础,也是核心。现在对隐私保护、敏感信息尤其重视,所以不论是系统开发还是App开发,只要有网络通信,很多信息都需要进行加密,以防止被截取篡改...

3899
来自专栏白驹过隙

OpenSSL - RSA非对称加密实现

9569

扫码关注云+社区

领取腾讯云代金券