github.com/0chain/gosdk@v1.17.11/zcnbridge/utils/convert.go (about)

     1  // Miscellaneous utility functions.
     2  package utils
     3  
     4  import (
     5  	"crypto/ecdsa"
     6  	"crypto/x509"
     7  	"encoding/pem"
     8  )
     9  
    10  func Encode(publicKey *ecdsa.PublicKey, privateKey *ecdsa.PrivateKey) (string, string) {
    11  	x509Encoded, _ := x509.MarshalECPrivateKey(privateKey)
    12  	pemEncoded := pem.EncodeToMemory(&pem.Block{Type: "PRIVATE KEY", Bytes: x509Encoded})
    13  
    14  	x509EncodedPub, _ := x509.MarshalPKIXPublicKey(publicKey)
    15  	pemEncodedPub := pem.EncodeToMemory(&pem.Block{Type: "PUBLIC KEY", Bytes: x509EncodedPub})
    16  
    17  	return string(pemEncoded), string(pemEncodedPub)
    18  }