从 X.509 证书中提取 PEM 公钥

2024-04-29

我已经创建了一个包含公钥 DER 文件的证书,但我现在需要 PEM 格式的公钥用于不同的平台。目的是使用相同的公钥。

我使用创建它iOS 中的 RSA 加密并使用 PHP 解密 http://jslim.net/blog/2013/01/05/rsa-encryption-in-ios-and-decrypt-it-using-php/:

openssl req -x509 -out public_key.der -outform der -new -newkey rsa:1024 -keyout private_key.pem -days 3650

我有一个正在使用的现有公钥 (public_key.der) 并且无法更改它。但是我现在需要 PEM 版本的公钥

public_key.pem

如何以这种方式从 DER 转换为 PEM?

注意:如果我使用以下方法创建了密钥对,事情就会很容易。我可以提取公钥 PEM 文件:

openssl genrsa -out rsa.pem 1024 
openssl rsa -in rsa.pem -pubout

以这种方式生成的公共 PEM 文件有效。是否可以那是我之前创建的(与-x590命令)是与输出完全不同的生物rsa命令?


假设您已使用以下命令创建了 DER 格式的证书

openssl req -x509 -out certificate.der -outform der -new -newkey rsa:1024 -keyout private_key.pem -days 3650

然后可以使用命令提取 PEM 格式的公钥

openssl x509 -inform der -in certificate.der -pubkey -noout > public_key.pem

-inform定义证书格式(默认为 PEM)和-noout抑制除请求之外的输出-pubkey.

PEM 格式的证书的操作相同:

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

从 X.509 证书中提取 PEM 公钥 的相关文章

随机推荐

  • 使用 selenium 登录 stackoverflow 可以正常工作,但使用 scrapy python 则不行。如何使用无头浏览登录?

    我一直在尝试自动登录 stackoverflow 来学习网络抓取 首先我尝试了 scrapy 但使用下面的代码我并没有那么幸运 import scrapy from scrapy utils response import open in
  • doctest (python) 中的模拟 Y (from X import Y)

    我正在尝试创建一个带有模拟功能的文档测试 该功能位于单独的模块中 导入如下 from foomodule import foo def bar gt gt gt from minimock import mock gt gt gt mock
  • Autodesk Forge Viewer 如何获取线起点/终点的坐标

    我正在尝试在 forge 查看器中突出显示房间 在 Revit 中 我创建了代表房间边界的线条 转换为 svf 后 我知道这些行的 dbids 现在我想知道这些线的起点和终点 顶点 以便我可以创建房间边界的 Three Shape 编辑 我
  • PyCharm 上的远程调试

    我的源代码存储在远程计算机上 我想远程编码和调试我的Python源代码 我应该如何配置PyCharm启用远程调试 对于远程调试 您需要将源代码复制到本地计算机 设置项目 配置到远程计算机的部署并添加远程 Python 解释器以在远程系统上运
  • Xcode:如何让目标设置从项目继承

    我们的目标设定是继承 https stackoverflow com a 1642738 47281从项目设置 我们更改了目标设置 中断继承 但现在希望目标再次开始从项目继承 你怎么能这样做呢 清除有问题的目标设置似乎不起作用 清除目标设置
  • MS Access DAO 连接在退出时放弃更改

    因此 我有一个 Access 表单 我在其中使用此 VBA 代码以及与 MySQL 数据库的 DAO 连接 一切都很好 但如果用户关闭表单而不单击 保存 按钮 新记录无论如何都会保存 所以我正在寻找的是 是否有任何方法可以在关闭事件时阻止将
  • 在 Android 中设置 Signalr:崩溃/挂起问题

    我跟着本教程 https whathecode wordpress com 2014 03 20 getting started with the java signalr sdk 为我的 Android 应用程序设置一个 NET 后端来实
  • 如何获取Linux中进程或端口的网络带宽使用情况

    我想获取每个进程的网络带宽使用情况 我找了很多这方面的资料 比如iftop nethogs http nethogs sourceforge net Linux进程浏览器 http sourceforge net projects proc
  • Google Sheets API v4:batchGet 不起作用

    无法使用 batchGet 让 Google Sheets API v4 返回多个范围值 它给出以下错误 尽管文档说它需要 valueRanges 但所有范围和电子表格 ID 都是正确的 额外的参数块必须是 javascript 对象文字
  • 处理 DBNull.Value

    我经常需要处理连接到网格控件的数据表 自定义更新似乎总是产生大量与 DBNull Value 相关的代码 我在这里看到了类似的问题 但认为必须有更好的答案 处理 DBNull 的最佳方法是什么 https stackoverflow com
  • 退格键删除整个跨度元素

    是否可以通过退格键防止跨度删除 div class form control span class correct answer span The correct answer is A 1 to 2 span span class sen
  • F# 是卡牌游戏 AI 的好语言吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 消息 discord.py 中的可点击链接

    我希望我的机器人将消息发送到聊天中 如下所示 await ctx send This country is not supported you can ask me to add it here 但是为了使 这里 成为可点击的链接 在 HT
  • 在函数中使用node-mysql

    我对 Nodejs 很陌生 有一个问题 尝试创建一个函数 该函数将调用我在表中提到其 ID 的任何字段的值 function getUserInfo userID dynamicField var query connection quer
  • 破译vtable转储

    我正在 玩 C 中的虚拟继承 我想知道类对象是如何布局的 我有这三个课程 class A private int a public A this gt a 47 virtual void setInt int x this gt a x v
  • 我怎样才能找出MySQL中的默认字符集/排序规则[重复]

    这个问题在这里已经有答案了 我在 Ubuntu 18 04 上使用 MySQL 和 MySQL Workbench 8 0 当我创建字符串类型的列时 我将字符集 排序规则保留为默认值 在 MySQL Workbench 中 它只是告诉我就是
  • 在 sails.js 中跟踪用户在线/离线状态

    我必须在我的 Web 应用程序中使用 sails js 中的 websockets 找出用户状态 即用户是否在线 离线 请帮我 多谢 从 Sails v0 9 8 开始 您可以使用onConnect and onDisconnect功能于c
  • CSS 的用户选择和可访问性

    如果我使用以下内容 webkit touch callout none webkit user select none khtml user select none moz user select none ms user select n
  • 如何有效地对一个数组中某个值在另一个数组中的位置出现的次数求和

    我正在寻找一种有效的 for 循环 避免解决方案来解决我遇到的数组相关问题 我想使用一个巨大的一维数组 A gt size 250 000 用于一维索引的 0 到 40 之间的值 以及用于第二维索引的具有 0 到 9995 之间的值的相同大
  • 从 X.509 证书中提取 PEM 公钥

    我已经创建了一个包含公钥 DER 文件的证书 但我现在需要 PEM 格式的公钥用于不同的平台 目的是使用相同的公钥 我使用创建它iOS 中的 RSA 加密并使用 PHP 解密 http jslim net blog 2013 01 05 r