如何使用 Go Golang 对文件进行签名

How to use Go Golang to sign a file

如果我像这样使用 openssl 生成我的密钥:

openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout testsign.key -out testsign.crt

我可以使用什么 Go 或 Golang 库、方法或工具来使用该密钥对文件进行签名?

为了满足我需要使用 Go 和 OpenSSL 完成的要求,它就像执行命令行一样简单:

    c := "openssl"
    a := []string{"dgst", "-sha512", "-sign", "signature.key", "-out", "FileOut.signed", "FileToBeSigned.txt"}   
    cmd := exec.Command(c, a...)