package main
import (
"crypto/rand"
"crypto/rsa"
"crypto/x509"
"encoding/base64"
"encoding/pem"
"fmt"
"os"
)
/*
步骤:
生成私钥分析
1、GenerateKey函数使用随机数据生成器random生成一对具有指定字位数的RSA密钥
func GenerateKey(random io.Reader, bits int) (priv *PrivateKey, err error)
2、要对生成私钥进行编码处理 x509,按照规则进行序列化处理,生成der编码的数据
func MarshalPKIXPublicKey(pub interface{}) ([]byte, error)
MarshalPKIXPublicKey将公钥序列化为PKIX格式DER编码。
3、创建Block代表PEM编码的结构,并填入der编码的数据
type Block struct {
Type string // 得自前言的类型(如"RSA PRIVATE KEY")
Headers map[string]string // 可选的头项
Bytes []byte // 内容解码后的数据,一般是DER编码的ASN.1结构
}
4、将pem block数据写