当前位置: 首页 > news >正文

openssl3.2/test/certs - 004 - cross root and root cross cert

文章目录

    • openssl3.2/test/certs - 004 - cross root and root cross cert
    • 概述
    • 笔记
    • END

openssl3.2/test/certs - 004 - cross root and root cross cert

概述

索引贴 openssl3.2 - 官方demo学习 - test - certs

笔记

// \file my_openssl_linux_log_doc_004.txt
// openssl3.2/test/certs - 004 - cross root and root cross cert

// --------------------------------------------------------------------------------
// 官方脚本原始内容
// --------------------------------------------------------------------------------

// # cross root and root cross cert
./mkcert.sh genroot “Cross Root” cross-key cross-root
./mkcert.sh genca “Root CA” root-key root-cross-cert cross-key cross-root

// --------------------------------------------------------------------------------
// 修改后的正常命令行
// --------------------------------------------------------------------------------

// cmd1
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out cross-key.pem

// cmd2
// config file = config_cmd2.txt
string_mask=utf8only
[req]
prompt = no
distinguished_name = dn
[dn]
CN = Cross Root

openssl req -new -sha256 -key cross-key.pem -config config_cmd2.txt -out cross-key_req.pem

// cmd3
config file = extfile_cmd3.txt
basicConstraints = critical,CA:true
keyUsage = keyCertSign,cRLSign
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid

openssl x509 -req -sha256 -out cross-root.pem -extfile extfile_cmd3.txt -signkey cross-key.pem -set_serial 1 -days 36525 -in cross-key_req.pem

// cmd4
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out root-key.pem

// cmd5
config file = config_cmd5.txt
string_mask=utf8only
[req]
prompt = no
distinguished_name = dn
[dn]
CN = Root CA

openssl req -new -sha256 -key root-key.pem -config config_cmd5.txt -out root-key-req.pem

// cmd6
config file = extfile_cmd6.txt
basicConstraints = critical,CA:true
keyUsage = keyCertSign,cRLSign
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid

openssl x509 -req -sha256 -out root-cross-cert.pem -extfile extfile_cmd6.txt -CA cross-root.pem -CAkey cross-key.pem -set_serial 2 -days 36525 -in root-key-req.pem

// --------------------------------------------------------------------------------
// 改版的openssl记录下的命令行信息和管道输入的配置文件内容
// --------------------------------------------------------------------------------

// cmd1
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out cross-key.pem

// cmd2
openssl req -new -sha256 -key cross-key.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 = Cross Root

// cmd3
openssl x509 -req -sha256 -out cross-root.pem -extfile /dev/fd/63 -signkey cross-key.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

// cmd4
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out root-key.pem

// cmd5
openssl req -new -sha256 -key root-key.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

// cmd6
openssl x509 -req -sha256 -out root-cross-cert.pem -extfile /dev/fd/63 -CA cross-root.pem -CAkey cross-key.pem -set_serial 2 -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

END

相关文章:

  • Hadoop安装配置HBase
  • [设计模式Java实现附plantuml源码~创建型] 对象的克隆~原型模式
  • 【196】JAVA8 用 DOM 方式的 API 解析XML文件,无需引入第三方依赖。
  • vue中使用锚点定位
  • 项目实战——Qt实现FFmpeg音视频转码器
  • Qt5.12.0 与 VS2017 在 .pro文件转.vcxproj文件
  • initdb: command not found【PostgreSQL】
  • TCP/IP四层模型对比OSI七层网络模型的区别是啥?数据传输过程原来是这样的
  • 【C++】list容器功能模拟实现
  • Spring Boot整合MyBatis-Plus
  • 【BBuf的CUDA笔记】十三,OpenAI Triton 入门笔记一
  • NLP自然语言处理原理应用讲解
  • LeetCode59 螺旋矩阵 II
  • k8s---ingress对外服务(traefik)
  • C# 基础入门
  • UE4 添加按键输入事件 并在蓝图中使用按键输入节点
  • Java算法 leetcode简单刷题记录4
  • 【Linux工具篇】软件包管理器yum
  • HarmonyOS 应用开发入门
  • c语言0基础笔记
  • 极限拉扯上任巴西,安切洛蒂开启夏窗主帅大挪移?
  • 《AI×SCIENCE十大前沿观察》9:合成数据和数据基础设施
  • 尹锡悦涉嫌发动内乱案举行第三次庭审
  • 当我们提起拉动消费时,应该拉动什么消费?
  • 竞彩湃|德甲欧冠资格竞争白热化,伯恩茅斯主场迎恶战
  • 马上评丨全民定制公交,打开城市出行想象空间