openssl3.2 - 官方demo学习 - test - certs
// \file my_openssl_linux_log_doc_010.txt
// \note openssl3.2/test/certs - 010 - 768-bit key
// --------------------------------------------------------------------------------
// 官方原始脚本
// --------------------------------------------------------------------------------
// openssl3.2/test/certs - 010 - 768-bit key
OPENSSL_KEYBITS=768 ./mkcert.sh genroot “Root CA” root-key-768 root-cert-768
// --------------------------------------------------------------------------------
// openssl命令行整理/分析
// --------------------------------------------------------------------------------
// cmd1
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:768 -out root-key-768.pem
用 xx_keygen_bits选项参数来决定密钥位数
// cmd2
config file = config_cmd2.txt
string_mask=utf8only
[req]
prompt = no
distinguished_name = dn
[dn]
CN = Root CA
// 使用的配置文件中, 如果哪一行有语法错误, 即使这行openssl操作用不到, 也会引起openssl报错退出.
openssl req -new -sha256 -key root-key-768.pem -config config_cmd2.txt -out root-key-768-req.pem
// cmd3
config file = extfile_cmd3.txt
basicConstraints = critical,CA:true
keyUsage = keyCertSign,cRLSign
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
openssl x509 -req -sha256 -out root-cert-768.pem -extfile extfile_cmd3.txt -signkey root-key-768.pem -set_serial 1 -days 36525 -in root-key-768-req.pem
// --------------------------------------------------------------------------------
// 改版后的openssl入口日志
// --------------------------------------------------------------------------------
// cmd1
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:768 -out root-key-768.pem
// cmd2
openssl req -new -sha256 -key root-key-768.pem -config /dev/fd/63
-config /dev/fd/63 => /home/lostspeed/openssl/openssl-3.2.0_debian/test/certs/my_openssl_linux_log.txt
string_mask=utf8only
[req]
prompt = no
distinguished_name = dn
[dn]
CN = Root CA
// cmd3
openssl x509 -req -sha256 -out root-cert-768.pem -extfile /dev/fd/63 -signkey root-key-768.pem -set_serial 1 -days 36525
-extfile /dev/fd/63 => /home/lostspeed/openssl/openssl-3.2.0_debian/test/certs/my_openssl_linux_log.txt
basicConstraints = critical,CA:true
keyUsage = keyCertSign,cRLSign
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid