配置中的 req_extensions 和命令行上的 -extensions 有什么区别?

2023-11-30

示例 openssl root ca 配置来自OpenSSL 食谱定义如下(p40):

[req]
...
req_extensions = ca_ext

[ca_ext]
...

稍后(p43),生成根 ca 密钥,然后生成根 ca 自签名证书。

openssl req -new \
-config root-ca.conf \
-out root-ca.csr \
-keyout private/root-ca.key

openssl ca -selfsign \
-config root-ca.conf \
-in root-ca.csr \
-out root-ca.crt \
-extensions ca_ext

在这个特定的用例中 req_extensions 不是多余的吗? 什么时候真正需要 req_extension ?


req_extensions用于声明请求扩展包含在 PKCS #10 中证书签名请求(企业社会责任)对象。扩展是 CSR 中签名数据的一部分。
一般来说,CA 在创建和签署 X.509 证书以响应 CSR 时,根据证书配置文件,可能会也可能不会注意特定的请求扩展。您将需要使用它来生成 CSR,以便与希望以这种方式传达特定信息的 CA 一起使用。

OpenSSL 本身不复制any从 PKCS #10 请求到 X.509 证书的扩展;证书的所有扩展都必须明确声明。 OpenSSLx509手册页提供一些评论:

证书中的扩展不会传输到证书请求,反之亦然。

因为您使用的是 OpenSSL CA,所以使用req_extensions确实是多余的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

配置中的 req_extensions 和命令行上的 -extensions 有什么区别? 的相关文章

  • unique_ptr 和 OpenSSL 的 STACK_OF(X509)*

    我用一些using声明和unique ptr与 OpenSSL 一起使用 如在另一个问题中建议 https stackoverflow com a 38079093 608639 如果没有 代码会变得非常丑陋 而且我不太喜欢 goto 语句
  • 如何使用 OpenSSL.Net C# 包装器通过 AES 加密字符串?

    我正在尝试将一些加密数据从我的 SharePoint 网站发送到我公司的 PeopleSoft 网站 PeopleSoft 人员坚持要求我必须使用 OpenSSL 库进行加密 我已经从 SourceForge 下载并安装了 OpenSSL
  • 超线程性能比较

    我写了一个项目 其中使用了一些基本功能openssl例如RAND bytes and des ecb encrypt 我的电脑有 i7 2600 4 核和 8 个逻辑 CPU 当我用 4 个线程运行我的项目时 将花费 10 秒 当我用 8
  • X.509 证书的 Java 1.7 主题哈希 OpenSSL 1.0+ 兼容

    我已经为此苦苦挣扎了几天 我正在开发一个在嵌入式 Linux 环境中运行的 Java 1 7 应用程序 OpenSSL 不可用 我无法控制设备上操作系统映像中的内容 我需要计算自签名 X 509 证书的主题哈希 生成与 OpenSSL 1
  • CSR 签名如何运作?

    我正在尝试签署一份CSR http en wikipedia org wiki Certificate signing request文件输入PEM http en wikipedia org wiki X 509 Certificate
  • 使用 openssl 生成自签名证书时如何设置密钥规范或 KEYEXCHANGE 属性

    我在 windows 2012R2 上使用 open ssl 来生成自签名证书 使用下面的命令我生成了证书 openssl genrsa des3 out ab key openssl req new x509 key ab key out
  • OpenSSL连接错误SSL23_GET_SERVER_HELLO,但浏览器和curl可以工作

    我正在处理一个问题 由于 openssl 无法完成握手 python 无法通过 ssl 连接到特定服务器 Curl 和我的浏览器工作正常 我尝试了几个不同的 openssl 版本解决方案 https stackoverflow com qu
  • 使用 aes_256_cbc 密码加密时的默认 IV 是多少?

    我在一个文件中生成了一个随机 256 位对称密钥 用于使用 OpenSSL 命令行加密一些数据 稍后我需要使用 OpenSSL 库以编程方式解密该数据 我没有成功 我认为问题可能出在我正在使用 或没有使用 的初始化向量中 我使用以下命令加密
  • 在 Objective-C 中以编程方式创建 .pem 文件?

    我正在尝试使用 iPhone 应用程序中的 Objective C 和 OpenSSL 库以编程方式从证书签名请求创建 PEM 文件 我按照 Adria Navarro 对这个问题的回答生成了 CSR 类型为 X509 REQ 使用钥匙串存
  • openssl-使用密钥和 IV 解密 Base64 字符串

    我正在尝试解密已在 openssl 中使用 aes256 加密的 base64 字符串 我获得了会话密钥和 IV 它们是用我的密钥加密的 我将它们转换为十六进制 以便可以使用以下 openssl 命令 openssl enc d aes25
  • 在 PHP 中生成 SAN CSR

    我目前正在编写一个脚本 通过 Web 界面生成 CSR 以便提交以生成证书 我当前的问题是我想生成 SAN 证书 但找不到有关如何添加subjectAlternateName到生成的证书请求中 我当前的代码是 private key ope
  • 对 smtp.live.com 和 TIdSmtp(Indy、Delphi)的 SSL 支持

    我正在尝试连接到 smtp live com 发送电子邮件 live com 自 2009 年以来显然支持免费的 pop3 smtp 但这对我来说完全是新闻 当我尝试连接到 smtp live com 端口 587 时 会发生以下情况 Me
  • 使用openssl从服务器获取证书

    我正在尝试获取远程服务器的证书 然后可以将其添加到我的密钥库中并在我的 Java 应用程序中使用 一位高级开发人员 正在度假 告诉我我可以运行这个 openssl s client connect host host 9999 获取转储的原
  • 在命令行上解密使用 PHP openssl_encrypt 制作的文件

    我有一个要加密的字符串 encryptThis Super Secret Text echo openssl encrypt encryptThis aes 128 cbc 1234 FALSE F68A9A229A516752 然后我通过
  • Ruby 安装由于缺少扩展而中止:openssl、readline、zlib 编译错误

    我正在使用 macOS Catalina 我正在尝试通过 rbenv 安装旧版本的 Ruby 1 9 3 2 1 2 但是 在尝试安装旧版本时 我不断收到以下错误 安装 2 4 或更新版本时没问题 我已经尝试过 brew install o
  • 使用 PKCS1 生成私钥 RSA

    有没有办法在 PHP 中通过 OpenSSL 生成私钥openssl pkey 新 http php net manual en function openssl pkey new php在 RSA 和 PKCS1 中 如果您的意思是带有
  • 使用 rbenv 在 MacOS 上安装 Ruby 2.6.0 失败

    我在 Mojave 上有一台 Mac 它无法安装开发所需的一些基本内容 rbenv install 2 6 0 Downloading openssl 1 1 1d tar gz gt https dqw8nmjcqpjn7 cloudfr
  • fsockopen() 和 SSL 出错,“无法启用加密”

    我正在尝试连接到 Nominet EPP 测试台 但收到 无法启用加密 的消息 这似乎是一个罕见的错误 没有记录的解决方案或原因 用行 socket fsockopen ssl testbed epp nominet org uk 700
  • Keycloak:获取 JSON 格式的授权代码?

    我们正在开展一个学生项目 我们的目标是实现用户可以通过Keycloak使用x509证书进行授权 实际上 我们不能继续接收授权代码以将其交换为令牌请求 基本上 我们发送授权码请求并通过 URL 参数接收授权码 但我们更希望接收 JSON 格式
  • 需要使用 openssl 加密和解密文件的示例 C 代码

    我正在用 Linux C 编写代码 我需要使用以下命令来加密和解密文件 openssl 目前 我使用系统命令 des3 e nosalt k 0123456789012345 in inp file out out file 进行加密 使用

随机推荐

  • 如何在 jetpack compose 中将视图模型从一个屏幕共享到另一个屏幕?

    我正在尝试学习 android jetpack compose 并且我有简单的应用程序 在 ScreenA 中 我有一个文本字段 当我单击按钮时 我会将这些数据保存到 firestore 当我进入 ScreenB 时 我想将城市名称也保存在
  • HTML 列表结构中的 PHP 递归菜单

    这是 html 结构 它应该是这样的 li a href class menulink Dropdown One a ul li a href Navigation Item 1 a li li a href class sub Navig
  • Subsonic 3 Linq 投影问题

    好吧 我用这个把头撞在墙上 给定数据库中名为 Address Customer 和 CustomerType 的表 我想要显示有关客户的组合摘要信息 因此我创建一个查询来连接这两个表并检索指定的结果 var customers from c
  • C# 闭包,为什么循环变量是通过引用捕获的?

    在此示例中 我尝试按值传递 但改为传递引用 for int i 0 i lt 10 i Thread t new Thread gt new PhoneJobTest i t Start 这可以这样补救 for int i 0 i lt 1
  • javascript 创建 INcode 工作区(框架)

    如果我有一个面向公众的小 框架 我怎样才能打造自己的 工作空间 所以我可以使用我想要的任何变量名称 我怎样才能完成它 使用匿名函数包装器 使用定义的任何变量var不适用于包装器外部的代码 每当您想要定义方法或属性时 请将它们添加到tobep
  • Flutter:为什么 setState(( ) { }) 一次又一次设置数据

    I use setState 用于为变量赋值 但它一次又一次地打印 为什么会出现这样的反应呢 我该如何解决它 这是我的代码 class Sample extends StatefulWidget override SampleState c
  • Lua随机数? [复制]

    这个问题在这里已经有答案了 如何生成每次运行脚本时都不同的随机整数 我目前正在做一个 不可能的测验 它使用随机数从表格中选择一个问题 每次我运行脚本时 问题的顺序都是相同的 我还使用 table remove 在提出问题后从表中删除问题 然
  • 明确共享不适用于帖子 - Facebook Android SDK Open Graph 故事

    我目前正在使用 Facebook Android SDK 3 19 1 将开放图谱故事发布到我们用户的时间线 该故事已添加到用户的活动日志中 但不会显示在他们的时间线上 我的故事有一个自定义操作和对象 并且我已为我的操作设置了 显式共享 选
  • 如何根据R中csv文件的列标题删除某些列?

    我已将 csv 文件加载到 R 中 文件中有 10 列 我想将第 1 3 5 列保存到一个新文件中 删除其他列的命令行是什么 我想保存新表 应该使用什么命令行 首先 我来回答你的问题 如果d您的数据框是从您的文件加载的 那么 d subse
  • 什么是 32 位和 64 位 C++ 代码?

    我试图从注册表项获取一个值 最终的程序必须在 32 位和 64 位机器上运行 到目前为止的代码是 HKEY hKey LONG Result1 LONG result2 Result1 RegOpenKeyEx HKEY CLASSES R
  • C 赋值语句的求值顺序

    我遇到过跨平台代码在基本赋值语句上表现不同的情况 一个编译器首先评估左值 然后评估右值 然后评估赋值 另一个编译器首先执行右值 然后执行左值 然后进行赋值 如果左值影响右值的值 这可能会产生影响 如下例所示 struct MM int m
  • 在 HTML 中标记文本

    我有一些纯文本和html 我需要创建一个 PHP 方法 它将返回相同的 html 但使用 span class marked 在文本的任何实例之前和 span 在它之后 请注意 它应该支持 html 中的标签 例如 如果文本是blabla所
  • 将 MvvmCross 升级到 5.2 在 CustomAndroidPresenter 上显示错误

    将 MvvmCross 从 5 1 升级到 5 2 后 我的 CustomAndroidPresenter cs 抛出构建错误 是什么原因造成的 CustomAndroidPresenter cs namespace TestPrjDroi
  • 暂停和恢复可观察流,请提出更好的选择

    我需要听来自可观察对象的项目流 当出现某些条件时 将对项目执行异步任务 并且组件将处于 忙碌 状态 直到该任务完成 我想暂停处理订阅中的项目 直到该任务完成 因为后续项目的处理取决于结果 然后从序列中的下一个项目恢复 而不会造成任何损失 下
  • 我可以在 Android 操作系统应用程序中使用的数据库大小是否有限制?

    我长期以来一直想构建一个 Android 应用程序 但我只是没有时间尝试学习如何制作它 所以我将其外包给印度一家信誉良好的公司 我的应用程序是一个非常简单的数据库驱动的阅读器应用程序 最初 开发公司说我的应用创意没有问题 他们会在两周内完成
  • 雄猫。该解析器不支持规范 null 版本 null

    我尝试在 oracle linux tomcat 7 和 jdk1 7 上运行 Web 应用程序 但在 tomcat 重新启动后加载第一页时出现异常 该异常仅在第一次应用程序页面加载时发生 应用程序是在jdk1 6上开发的 在服务器上安装了
  • Powershell网站自动化按钮点击登录

    所以我是 powershell 的新手 我为了好玩构建了一些脚本 但陷入了一个我似乎无法弄清楚的脚本 我正在尝试自动单击 继续 按钮 但不知道该怎么做 我已经尝试了我能想到的一切 有任何想法吗 username username passw
  • 如何在 Google Chrome JavaScript 控制台中打印调试消息?

    如何在 Google Chrome JavaScript 控制台中打印调试消息 请注意 JavaScript 控制台与 JavaScript 调试器不同 他们有不同的语法 AFAIK 所以printJavaScript 调试器中的命令在这里
  • 如何使用 file_get_contents() 加载远程文件?

    现在这让我有点挠头 我正在尝试从远程 URL 获取文件 我可以保存本地文件的内容 但不能保存远程文件的内容 这有效 file put contents file1 xml file get contents file2 xml 这不会 fi
  • 配置中的 req_extensions 和命令行上的 -extensions 有什么区别?

    示例 openssl root ca 配置来自OpenSSL 食谱定义如下 p40 req req extensions ca ext ca ext 稍后 p43 生成根 ca 密钥 然后生成根 ca 自签名证书 openssl req n