Golang Go语言中关于RSA公钥解密方法求助
有如下公钥
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC4WFFTZiFNX7AWsi+4QjJvDzDkrTtr+i9hqeloqGY+7Ofv0KLtQ6JH3fl/eEJHNfcs+P7fEs1BmjPqr+AwI5mLRG/CzGLcyHMQdcAG5iGgtyItLAAyFrMxlrQEn7slBKQNCAkZqtAWyQzaTKd9zap3/lo8EM4QGzeN5lgbsD+shQIDAQAB
密文
gbnTrkkYVdtYAIW3zNh6qDYxDlsbCSGQoRGNrTYzKrpmufCDIQcKSHhnV2LGxxmKTw6Ha6gZiWAL0J_-vYgPz1m1q7o26mA1m1F0NPf6FEYxKNO9ZmJ6-y6nNBJI1djFyfw-QS9RzvdJadoXOfTIr7ctP5flqeSqbETlqapMbm0
解密后的结果
LU5jaJ8HhwIzAhVO
需要在 go
中实现通过公钥进行解密得到密文,找了一圈资料,大部份都和下面的差不多
https://github.com/wenzhenxi/gorsa
https://gist.github.com/phpor/9fab17314b985898d508
还有其它的看了一下基本都是大同小异,无法正确解密.
在线解密的网站目前只找到了以下这个网站可以正确解密
https://www.devglan.com/online-tools/rsa-encryption-decryption
找好久的资料,还是不能解决 特上来求助,看看有没有大神可帮忙..先谢了:
Golang Go语言中关于RSA公钥解密方法求助
更多关于Golang Go语言中关于RSA公钥解密方法求助的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
因为你的密文是 url safe 的
把-替换成+,_替换成 /
就能正常解密了
更多关于Golang Go语言中关于RSA公钥解密方法求助的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
在Go语言中,RSA公钥通常用于加密数据,而私钥用于解密数据。这是基于RSA加密算法的基本特性,即公钥是公开的,用于加密信息,而私钥是保密的,用于解密信息和签名。因此,关于“RSA公钥解密方法”的提问,实际上是不符合RSA加密原则的。
如果你确实需要解密数据,应该使用RSA私钥进行解密。以下是一个使用Go语言进行RSA私钥解密的简单示例:
package main
import (
"crypto/rand"
"crypto/rsa"
"crypto/x509"
"encoding/pem"
"fmt"
)
func main() {
// 加载私钥(省略具体加载代码)
privKey, err := rsa.DecodePKCS1PrivateKey(pem.Decode(privateKeyPEMBlock).Bytes)
if err != nil {
fmt.Println("Error decoding private key:", err)
return
}
// 假设ciphertext是已经加密的数据
ciphertext := []byte{...} // 加密后的数据
// 使用私钥解密
label := []byte("")
plaintext, err := rsa.DecryptPKCS1v15(rand.Reader, privKey, ciphertext, label)
if err != nil {
fmt.Println("Error decrypting:", err)
return
}
fmt.Println("Decrypted message:", string(plaintext))
}
请确保你有一个有效的私钥,并且ciphertext
是与之对应的加密数据。如果你有其他关于RSA加密或解密的问题,欢迎继续提问。