update at 2023/08/14
This commit is contained in:
64
tools/ca/cmca.go
Normal file
64
tools/ca/cmca.go
Normal file
@@ -0,0 +1,64 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"crypto/rand"
|
||||
"crypto/rsa"
|
||||
"crypto/x509"
|
||||
"encoding/pem"
|
||||
"fmt"
|
||||
"os"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 生成RSA密钥对
|
||||
privateKey, err := rsa.GenerateKey(rand.Reader, 2048)
|
||||
if err != nil {
|
||||
fmt.Println("Failed to generate RSA private key:", err)
|
||||
return
|
||||
}
|
||||
|
||||
// 将私钥保存到文件
|
||||
privateKeyFile, err := os.Create("private_key.pem")
|
||||
if err != nil {
|
||||
fmt.Println("Failed to create private key file:", err)
|
||||
return
|
||||
}
|
||||
defer privateKeyFile.Close()
|
||||
|
||||
privateKeyBlock := &pem.Block{
|
||||
Type: "RSA PRIVATE KEY",
|
||||
Bytes: x509.MarshalPKCS1PrivateKey(privateKey),
|
||||
}
|
||||
|
||||
err = pem.Encode(privateKeyFile, privateKeyBlock)
|
||||
if err != nil {
|
||||
fmt.Println("Failed to write private key to file:", err)
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Println("Private key generated and saved to private_key.pem")
|
||||
|
||||
// 获取公钥
|
||||
publicKey := &privateKey.PublicKey
|
||||
|
||||
// 将公钥保存到文件
|
||||
publicKeyFile, err := os.Create("public_key.pem")
|
||||
if err != nil {
|
||||
fmt.Println("Failed to create public key file:", err)
|
||||
return
|
||||
}
|
||||
defer publicKeyFile.Close()
|
||||
|
||||
publicKeyBlock := &pem.Block{
|
||||
Type: "RSA PUBLIC KEY",
|
||||
Bytes: x509.MarshalPKCS1PublicKey(publicKey),
|
||||
}
|
||||
|
||||
err = pem.Encode(publicKeyFile, publicKeyBlock)
|
||||
if err != nil {
|
||||
fmt.Println("Failed to write public key to file:", err)
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Println("Public key generated and saved to public_key.pem")
|
||||
}
|
||||
27
tools/ca/private_key.pem
Normal file
27
tools/ca/private_key.pem
Normal file
@@ -0,0 +1,27 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpAIBAAKCAQEA1ox38PK2qgSpJDzsRvdSDPQP6hYnuCasUMV6gJsb/CVcGK3v
|
||||
7MDW1X4VSgJvxqPtHH5hdWOM1rT29DtC7rU4MhK0i+9SJixvFjyijABOuXCAFtw1
|
||||
zJDJN9EFGvA/WBsCFlwmpK9qKofF3n37/N2PvgCMDWVBrGe2uszQv9O5hnqE0X2J
|
||||
33ddxRMX+7SVSCz8H1U+3FWLNF2SF4sIUXn1NdzouMtEGeaxvh+czYXCEB+rtewY
|
||||
7Iwvoz7VamOOxMC9FmwKvFTePjvdYcdayiImunJtS1yg1/tiKGh+BCU9YFOkZ0dw
|
||||
eP982EybQYw39L8UVJqXTMPKqErKDJxkNpg/nQIDAQABAoIBAA8rm4eEAfp/nd4c
|
||||
GLDj5/9WepGYw3I3+dM0Q3c4gIARvDNaiS56bDZoVeUHyxOGn8t1/Doqsdi0rwmR
|
||||
7yel1LVlsTJ715kvZyNxYiT4GJjwJX54T62JR1EVDIFdH32BW2JtXaYjaSRcuVcE
|
||||
HX9Bw1ox+7UuxbgFFVycAt6tf97MRdBwgJX6pNM63RzIjOFPoVPirsaWJu1PWeGt
|
||||
AIRrIdMyPS+oMMTvfFNSlTuVEgDzwtecrYIeXoMhYH0pCBMx3aX7F71lww70957t
|
||||
k0g+YMR50OrNMxOMHe9/jnDceLmLvfEvZVxCggMc7wPn2Llwa0SG87cjHDe/T0tg
|
||||
Ob6MKlkCgYEA9Aq8tgqYTijOALVfvxWUYSEhL3AfguwNPhK+Rbx2vdYKkm5qfVkw
|
||||
ZKj5rZTCUp9b1VW3EqQ6+MwzujmL8Eb85H9G3uTiVBAwqJHATF1OlZmHjDAGTZdI
|
||||
kNZNdYwkOI5UteGz9/7Gq+ayapBu402ttBlChlX+q9/jzm23hq5T6CcCgYEA4Q/E
|
||||
o00DloXbqq9QNv4WFYzz8NukU3Ge7ftcDU3EciK36M2Ptck0oR59TK9pFElxwaOF
|
||||
SYaHUX7FE/q60vXeUQfNPQzzdCcxLqGOgK3sJlmtCiyRHIUijJ5ew/F9c2rikI5X
|
||||
Vc2lvfX4NUk1YdcRHap7hPiaSWI6LYXzRwFd0JsCgYEAqlDcBwg550JfEuuCGO/M
|
||||
kET4zgyoUUzAqTOXiz/OdwpscmmQ9E5MkdPD/Lq3K8Z/5tFdZSss5PpOl4cV/Oju
|
||||
EeIp6eE/e3+ZFewykpkEATAXA2V44KnWQQ7vHDxkAvyCbjVIzqkGqm3k0q5eVVCf
|
||||
C/QdE3fstrMYX7b+wIXllT0CgYEAvJ5ncWjhAezLbeAhvQTzYzpPU2Pw81H9HXwU
|
||||
6L1tTy6TrVNiBrtLFWElJ/i2ex8WbG/sC/PoQr+Y0abHnngayxRbyLeq7YTPLkKN
|
||||
2IBqsrVjVWyGbT2S+ADecR9ZwToqCXaR8UI5jtuvGpFxYL9LA+7WOFnVjHz7Px3N
|
||||
Bow5oNMCgYB8m2O/rY8bjA25M/348gQ51dtR5Y+QU93rK1SSQnrbu70kZKZjBfIj
|
||||
x1C6HgIECowQ56Jg/pYEQmiv+bk/0yf8uHCcCbOCEzl42gRjleO/GCt+WZD2jR3Y
|
||||
bt4gG7xHklNYZU5+m45RWWLLik2LSGfY7yerhV2585lQjoYNqRBY4g==
|
||||
-----END RSA PRIVATE KEY-----
|
||||
8
tools/ca/public_key.pem
Normal file
8
tools/ca/public_key.pem
Normal file
@@ -0,0 +1,8 @@
|
||||
-----BEGIN RSA PUBLIC KEY-----
|
||||
MIIBCgKCAQEA1ox38PK2qgSpJDzsRvdSDPQP6hYnuCasUMV6gJsb/CVcGK3v7MDW
|
||||
1X4VSgJvxqPtHH5hdWOM1rT29DtC7rU4MhK0i+9SJixvFjyijABOuXCAFtw1zJDJ
|
||||
N9EFGvA/WBsCFlwmpK9qKofF3n37/N2PvgCMDWVBrGe2uszQv9O5hnqE0X2J33dd
|
||||
xRMX+7SVSCz8H1U+3FWLNF2SF4sIUXn1NdzouMtEGeaxvh+czYXCEB+rtewY7Iwv
|
||||
oz7VamOOxMC9FmwKvFTePjvdYcdayiImunJtS1yg1/tiKGh+BCU9YFOkZ0dweP98
|
||||
2EybQYw39L8UVJqXTMPKqErKDJxkNpg/nQIDAQAB
|
||||
-----END RSA PUBLIC KEY-----
|
||||
Reference in New Issue
Block a user