openssl3.2 - 官方demo学习 - test - certs - 001 - Primary root: root-cert

这篇具有很好参考价值的文章主要介绍了openssl3.2 - 官方demo学习 - test - certs - 001 - Primary root: root-cert。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

openssl3.2 - 官方demo学习 - test - certs - 001 - Primary root: root-cert

概述

实验前置条件为 openssl3.2 - linux脚本(.sh)调用openssl命令行参数的简单确认方法

笔记

做官方第2个实验时, 才发现, 自己记录的管道文件没有考虑-extfile后面带的管道.
重新修正了openssl的入口日志记录实现, 现在ok了.

命令行 - 原始
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out root-key.pem
openssl req -new -sha256 -key root-key.pem -config /dev/fd/63
openssl x509 -req -sha256 -out root-cert.pem -extfile /dev/fd/63 -signkey root-key.pem -set_serial 1 -days 36525

命令行 - 整理

openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out root-key.pem
openssl req -new -sha256 -key root-key.pem -config config_cfg.txt -out root_req.pem
openssl x509 -req -sha256 -in root_req.pem -out root-cert.pem -extfile extfile_cfg.txt -signkey root-key.pem -set_serial 1 -days 36525

配置文件 - config_cfg.txt
string_mask=utf8only
[req]
prompt = no
distinguished_name = dn
[dn]
CN = Root CA

配置文件 - extfile_cfg.txt
basicConstraints = critical,CA:true
keyUsage = keyCertSign,cRLSign
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid

// --------------------------------------------------------------------------------
命令行实验1
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -out root-key.pem
// --------------------------------------------------------------------------------
功能 - 产生私钥
参数含义 - 产生私钥 - 算法为rsa - 私钥位数2048 - 输出文件 - root-key.pem

// --------------------------------------------------------------------------------
命令行实验2
openssl req -new -sha256 -key root-key.pem -config config_cfg.txt -out root_req.pem
// --------------------------------------------------------------------------------
功能 - 生成证书请求文件
参数含义 - 请求新的证书请求文件 - 摘要算法为sha256 - 私钥为 root-key.pem
配置文件为 config_cfg.txt 输出文件为root_req.pem

// --------------------------------------------------------------------------------
命令行实验3
openssl x509 -req -sha256 -in root_req.pem -out root-cert.pem -extfile extfile_cfg.txt -signkey root-key.pem -set_serial 1 -days 36525
// --------------------------------------------------------------------------------
功能 - 生成证书
参数含义- 进行X509请求 - 摘要算法=sha256 输入的证书请求文件为root_req.pem
输出的证书名称=root-cert.pem 扩展配置文件=extfile_cfg.txt
签名密钥=root-key.pem 证书序列号=1 正式有效天数=36525

备注

官方原版的脚本调用命令行的实现, 如果改为落地的配置文件的调用, 需要改命令行的参数.

生成证书请求文件时, 如果不加 -out 选项, 证书请求文件是不落地的, 只是打印到stdout.

生成证书时, 需要证书请求文件. 需要加 -in 参数, 后面带着证书请求文件的名称.

这说明, 即使官方提供了非正式的例子(/test/certs/setup.sh), 如果自己不实践, 也不是拿过来就能用的.文章来源地址https://www.toymoban.com/news/detail-814257.html

END

到了这里,关于openssl3.2 - 官方demo学习 - test - certs - 001 - Primary root: root-cert的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

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

    如果要将openssl在自己的业务逻辑中用起来, 只从网上找零星的代码片段肯定不行的. 且不说人家写的好不好, 主要是我们不知道人家为啥那么写. openSSL的API, 不同版本, API调用名称, 调用顺序. 是否为已经废弃, 都不同. 如果不是官方demo中推荐的写法, 如果有问题, 那也不好找问题

    2024年02月02日
    浏览(45)
  • openssl3.2 - 官方demo学习 - sconnect.c

    TLS客户端 - 使用根证书, 非阻塞, 向服务器要东西. 开始一个新demo学习时, 要从头配置包含路径, 麻烦. 直接拷贝上一个实现工程, 换掉实现.c方便一些. 换的新demo实现, 要加入库包含和头包含, 麻烦, 做一个公用头文件, 直接include方便一些.

    2024年02月01日
    浏览(50)
  • openssl3.2 - 官方demo学习 - saccept.c

    建立TLSServer(使用了证书, 和证书中的私钥), 接收客户端的连接, 并将客户端发来的信息打印到屏幕 笔记

    2024年01月20日
    浏览(43)
  • openssl3.2/test/certs - 024 - EC cert with named curve

    openssl3.2 - 官方demo学习 - test - certs 官方脚本骗人的, 并没有生成ecc证书, 应该是官方脚本有bug, 可以借鉴官方思路, 自己生成EC证书 // file my_openssl_linux_log_doc_024.txt // note openssl3.2/test/certs - 024 - EC cert with named curve // 官方脚本骗人的, 并没有生成ecc证书, 应该是官方脚本有bug, 可以

    2024年01月25日
    浏览(37)
  • openssl3.2/test/certs - 010 - 768-bit key

    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 -

    2024年01月23日
    浏览(68)
  • openssl3.2/test/certs - 033 - time stamping certificates

    openssl3.2 - 官方demo学习 - test - certs /*! file my_openssl_linux_log_doc_033.txt note openssl3.2/test/certs - 033 - time stamping certificates 带时间戳的证书 自己调用openssl时, 如果也要动态参数文件(不落地), 也可以参照.sh的用法, 自己建立多个参数输入的管道, 拼好配置文件内容, 再将管道名称传给

    2024年01月25日
    浏览(42)
  • openssl3.2 - 官方demo学习 - kdf - scrypt.c

    设置 kdf-SCRYPT算法的参数, 取key

    2024年01月16日
    浏览(40)
  • openssl3.2 - 官方demo学习 - smime - smver.c

    对于签名文件(不管是单独签名, 还是联合签名), 都要用顶层证书进行验签(靠近根CA的证书) 读证书文件, 得到x509*, 添加到证书容器 读取签名密文, 得到pkcs7*和密文的bio 进行pkcs7验签, 并将验签得到的签名的明文写到文件.

    2024年01月19日
    浏览(41)
  • openssl3.2 - 官方demo学习 - mac - siphash.c

    MAC算法为 SIPHASH, 设置参数(C-rounds, D-rounds, 也可以不设置, 有默认值) 用key初始化MAC算法, 算明文的MAC值

    2024年01月19日
    浏览(53)
  • openssl3.2 - 官方demo学习 - mac - gmac.c

    使用GMAC算法, 设置参数(指定加密算法 e.g. AES-128-GCM, 设置iv) 用key执行初始化, 然后对明文生成MAC数据 官方注释给出建议, key, iv最好不要硬编码出现在程序中

    2024年01月16日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包