首页 > 其他分享 >golang RSA 解密前端jsencrypt发送的数据时异常 crypto/rsa: decryption error 解决方法

golang RSA 解密前端jsencrypt发送的数据时异常 crypto/rsa: decryption error 解决方法

时间:2024-08-24 17:51:19浏览次数:11  
标签:decryption 解码 base64 rsa crypto RSA

golang中 RSA解密前端(jsencrypt)发来的密文后出现  "crypto/rsa: decryption error"  , 这个问题首先需要确认你的私匙和公匙是否匹配, 如果匹配 那检查入参数据类型, 前端发送来的rsa加密后的数据一般都是经过base64编码后的, 在后端进行RSA解码时需要对前端发送的数据进行base64解码!

crypto/rsa: decryption error异常重现:

Rsa解码数据入参 

 crypto/rsa: decryption error 

解决方法

在进行RSA解码之前对前端发送的base64编码的数据进行解码, 如下

cipherData, err := base64.StdEncoding.DecodeString(base64Cipher)
if err != nil {
	return nil, err
}
RsaDecrypt(priKey,cipherData)

正确的Rsa密文格式类似这种的  "s\x7f\u0381\x11\xa9Hw\xab\xd3\x0e\xcc\xd6\xc4̓\......x1a\x1b\xe8G"

 

标签:decryption,解码,base64,rsa,crypto,RSA
From: https://blog.csdn.net/tekin_cn/article/details/141502594

相关文章

  • 全新Versal HBM 系列自适应 SoC:XCVH1542-1MSEVSVA3697、XCVH1542-2MLELSVA4737、XCVH1
    系列概述VersalHBM系列具有快速内存、安全连接和自适应计算的异构集成,可消除内存绑定的计算密集型工作负载(如机器学习、数据库加速、下一代防火墙和高级网络测试仪)的处理和内存瓶颈。它从底层开始构建,以适应不断发展的算法、协议和数据速率。与VersalPremium系列*相比,通过集......
  • The 3rd Universal Cup. Stage 1: St. Petersburg Finalized Standings
    C.CherryPicking这道题用了一个类似ODT的题思路。首先我们可以想到是,如果删除某些选手,只有可能会导致区间的合并,不会导致区间的分裂。所以我们可以枚举一下$x$的值,然后找到需要删除的点。用set​维护相同且相邻区间,找到删除点所在的区间后,给区间长度减一。如果区间长度为空......
  • 密码学之RSA算法
    文章目录1.RSA算法介绍1.2算法历史与发展1.3算法应用场景2.RSA密钥生成2.1选择素数2.2计算公钥和私钥2.3密钥长度与安全性3算法原理3.1加密原理3.2加密方法3.3加密示例3.4代码实现4.总结1.RSA算法介绍1.2算法历史与发展RSA算法由RonRivest、Adi......
  • [GUET-CTF2019]虚假的压缩包1附送RSA解密&CRC破解png宽高&异或python脚本
    解压得到下图两个zip文件,虚假的压缩包、真实的压缩包使用010editor打开,发现是伪加密,把09改为00即可打开打开以后,发现是是一个rsa解密题上python脚本importgmpy2deffind_pq(n):forpinrange(2,int(n**0.5)+1):ifn%p==0:q=......
  • C# Rsa加密(私钥加密、公钥解密、密钥格式转换、支持超大长度分段加密)
        此为工具类,这个和java版本的加密对比过了,结果是一样的,代码赋值黏贴直接用,不多比比,直接上代码(需要在nuget上寻找"Portable.BouncyCastle"包安装):  (java端有个和c#端不一样的地方,base64编码有好几套,有时候对不上大概率是base64那边的问题)     usingOrg.Bouncy......
  • 产品说:“用户登陆要使用RSA加密才行”
    问题引入项目上线前夕,产品说:“咱们现在这个登陆是明文传输,客户的安全检测可过不了哦,你得把用户名密码加密一下!加密方案客户要求为RSA2048”。什么是RSA简介RSA算法是一种非对称的加密算法(即:加密、解密的密钥不同),通常是生成两把密钥,分别是私钥和公钥,其中私钥保密,公钥对......
  • Numercial result of rsASCGP-AF
    ......
  • ImportError:无法从“jwt.algorithms”导入名称“RSAAlgorithm”
    RSAAlgorithmPyJWT算法方法无法导入,但我确实安装了PyJWT错误:ImportError:cannotimportname'RSAAlgorithm'from'jwt.algorithms'我通过运行以下命令检查了该包是否可用:poetryshow|grep-ipyjwtpyjwt2.9.0J......
  • 串行通信协议--UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器
    一、UART简介  UART广泛应用于微控制器和计算机之间的数据通信,如GPS模块、蓝牙模块、GSM模块等。UART是一种通用串行数据总线,用于异步通信,该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信UART通常被集成于其他通讯接口的连结上。UA......
  • RSA非对称加密,前端JS加密,后端PHP解密
    RSA公钥/私钥在线生成:http://web.chacuo.net/netrsakeypair通过以上网址生成公钥/私钥对,私钥格式这里选择【PKCS#1】,如:公钥:-----BEGINPUBLICKEY-----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDN3El4yr2maFvDo5PKIzkkiitJZEOTLNINH0RD0PL5Lob+YzbRJO6DX27SRuHcdlK7mFtkQvooW......