func PublicKeyToPem(pub crypto.PublicKey) (string, error) {
    pubASN1, err := x509.MarshalPKIXPublicKey(pub)

    if err != nil {
        return "", err