Golang相当于Java';s SHA256withRSA

Golang相当于Java';s SHA256withRSA,go,cryptography,Go,Cryptography,是否存在Java的Java.security.Signature的SHA256withRSA的Golang等价物?有几项研究表明,我不能简单地计算SHA256散列,然后用RSA对其签名。如果有人偶然发现同一个问题,我就知道了,下面是它在Go中的工作原理 func main() { privateKey := loadPrivateKey() h := sha256.New() h.Write([]byte(`your message`)) d := h.Sum(n

是否存在Java的
Java.security.Signature
的SHA256withRSA的Golang等价物?有几项研究表明,我不能简单地计算SHA256散列,然后用RSA对其签名。

如果有人偶然发现同一个问题,我就知道了,下面是它在Go中的工作原理

func main() {
    privateKey := loadPrivateKey()
    h := sha256.New()
    h.Write([]byte(`your message`))
    d := h.Sum(nil)

    signature, err := rsa.SignPKCS1v15(rand.Reader, privateKey, crypto.SHA256, d)
    if err != nil {
        panic(err)
    }

    fmt.Printf("Signature in byte: %v\n\n", signature)

    encodedSig := base64.StdEncoding.EncodeToString(signature)

    fmt.Printf("Encoded signature: %v\n\n", encodedSig)
}

我假设您已经看到了内置的软件包,那么告诉我们您尝试了什么,我们可以为您提供指导。@LukeJoshuaPark我目前正在与第三方API进行blackbox集成,尽管使用此解决方案,应用程序会返回无效的签名。我不需要解密部分,我相信,我只需要将base64Enc(加密)字符串发送给第三方API,因为java类名为
Signature
应该会提示您需要RSA签名方法,而不是加密方法。