我正在使用golang ecdsa软件包:https://golang.org/pkg/crypto/ecdsa/
我有公共密钥结构(https://golang.org/pkg/crypto/ecdsa/#PublicKey),我正在尝试将它们转换为PEM文件以用于其他应用程序。
有人知道该怎么做吗?
答案 0 :(得分:-1)
您可以检查此功能
https://github.com/gtank/cryptopasta/blob/master/marshal.go
这似乎是使用pem编码的 特别在这里
使用
import (
"crypto/ecdsa"
"crypto/x509"
"encoding/base64"
"encoding/pem"
"errors"
"fmt"
)
// EncodePrivateKey encodes an ECDSA private key to PEM format.
func EncodePrivateKey(key *ecdsa.PrivateKey) ([]byte, error) {
derKey, err := x509.MarshalECPrivateKey(key)
if err != nil {
return nil, err
}
keyBlock := &pem.Block{
Type: "EC PRIVATE KEY",
Bytes: derKey,
}
return pem.EncodeToMemory(keyBlock), nil
}