问题标签 [der]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
27071 浏览

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

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

在 iOS 中使用 RSA 加密创建它并使用 PHP 对其进行解密

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

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

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

以这种方式生成的公共 PEM 文件可以正常工作。我之前创建的(使用命令)是否有可能-x590与命令的输出完全不同rsa

0 投票
3 回答
7380 浏览

java - 如何在java中解码.csr文件以提取其内容

我要解码三种文件,即 .csr 和 .der 以及 .key 文件。我可以使用下面的 java 解码 .der 文件。公共类 Base64Decoder {

}

我能够生成 .der 证书的详细信息

以同样的方式,我无法解码我的 .csr 文件。还有其他方法可以解码 .csr 文件吗?

0 投票
1 回答
1664 浏览

java - 从 Base64 DER 构建 PublicKey - Java

我在将 base64 编码的 DER 证书传递给 Java 应用程序以从中提取公钥时遇到问题。我可以在objective-c和ruby中完成这项工作,但在Java中遇到错误。

我在 Ruby(简化)中创建了以下 DER base64 密钥:

这是一个示例输出:

MIIDhzCCAm+gAwIBAgIBADANBgkqhkiG9w0BAQUFADA6MQswCQYDVQQGEwJC\nRTENMAsGA1UECgwEVGVzdDENMAsGA1UECwwEVGVzdDENMAsGA1UEAwwEVGVz\ndDAeFw0xNTA1MjExNDUxNTZaFw0xNjA1MjAxNDUxNTZaMDoxCzAJBgNVBAYT\nAkJFMQ0wCwYDVQQKDARUZXN0MQ0wCwYDVQQLDARUZXN0MQ0wCwYDVQQDDARU\nZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvbC3phpnj/Vg\neIAmWXD3TkGi91kPFBvrrD/LLa4kv83eOuY139vUn/xjZlM9maE36Yix6Ix1\ncF3cGCUl1VZApJYTef404jL13xLg1i9+96/tU91niZMlRkFL0mZWV2XhEzNH\nnA+lRiJZlGdXNwYUKXb9qVRuS2taSAyMwH/SDPu1s17SGVLY1o+7trAQfK7w\ny5w8fyTr+tCdcplb5F/m6R5FXc4eJwD6m9MYnenlmkoW5uM5B1lbQBVz2by3\nVGCMUmLwpC15pi13/fIJ8WzD1SQcYJgIQTauWVRYxSuc+Cg0VvoyMZNqkqOW\n7iKmZXGqwNQKxhLtcc1KNJky7OHLkQIDAQABo4GXMIGUMA8GA1UdEwEB/wQF\nMAMBAf8wHQYDVR0OBBYEFNWHBjgj9rsOBm6Z9+me3I/E1ZrUMGIGA1UdIwRb\nMFmAFNWHBjgj9rsOBm6Z9+me3I/E1ZrUoT6kPDA6MQswCQYDVQQGEwJCRTEN\nMAsGA1UECgwEVGVzdDENMAsGA1UECwwEVGVzdDENMAsGA1UEAwwEVGVzdIIB\nADANBgkqhkiG9w0BAQUFAAOCAQEAbKYmQxaQaGT57Qq8xYzIzODGqjbek3qC\n8kSjUto9H/5o8OCKqDFJfgaYAS9mgEjjazqmMahoDeLvzRkKHkpXLvdjjjv7\nnnMZGIw7I4yOKvtzGDz2eimonlWPePypTwr0NFnnUByQb9nkrOOrpcSKBn7a\nwvIT7b82ISOoMz1+hlyo8dyiZri82J6pKXTP91LcfpSRiC/1W1sXnIL5DSJi\nDtXGMVtDfy9rRgPJhmOPu4xqInl/o+t2A1OXLhA4aDnxP/gbssVau9Do3uIa\nOlyo9eGpatIvkxCMzC4SgBavBy6Gsk2p4KAuWon9TtDzO5vklEI8QKk1tiyJ\nYZBCeK3HwQ==\n

如果我要在 Ruby 中从中获取公钥,我会这样做:

Java 中的相同有点冗长,但是(归功于 SO)这就是我所拥有的:

但是,当我运行它时,我收到以下错误:

有关如何在 Java 中解决此问题的任何指示都会很棒!谢谢

0 投票
1 回答
405 浏览

c# - 如何生成 DER 格式的公钥

生成的步骤是什么

1) DER 格式的公钥 2) 用于签署有效负载的私钥

0 投票
0 回答
1907 浏览

java - 在 Java 中将 DER 编码密钥转换为 PEM 格式

我正在编写 Java 代码以使用KeyPairGenerator类创建一对 RSA 密钥(据我所知,它是以 DER 格式创建的)。然后我想在另一个单独的计算中利用一些密钥的字节。因此,我认为我需要使用类似BouncyCastle的东西将其转换为 PEM 格式。但是,如果我将 PEM 文件中的转换字节与使用来自同一源 DER 文件的openssl创建的 PEM 文件进行比较,则字节会有所不同。

有人可以帮忙解释为什么吗?

问候,杰夫。

0 投票
1 回答
1082 浏览

python - 使用 pyasn1 解析 X509 扩展

我有一个扩展名,描述如下:

所以基于id,它是一个BasicConstraints扩展。但是,如果我尝试将值解析为扩展本身,则会出现错误:

该字符串解码为空序列,因此它可以合法地是BasicConstraints-name length可选/缺失并且ca是默认值,因此未在 DER 中编码。

那么我在这里错过了什么?我如何解码这个BasicConstraints类的扩展?

PS。这个问题似乎类似于邮件列表中的问题,但我使用的是 0.1.8,它应该已经包含了提到的修复

0 投票
3 回答
9325 浏览

javascript - NodeJS:以 DER 格式验证证书

我正在使用crypto模块来验证证书,但是我的证书和我的公钥都是DER格式。该crypto模块似乎不接受这种格式。

有没有办法(或模块)使用 NodeJS 将 DER 转换为 PEM 格式?我找不到任何东西,也无法使用命令行通过 shell调用openssl 。

更新:这与 HTTPS 证书无关。这是关于一般的 X.509 证书。如果您将问题标记为否定,请发表评论以证明其合理性。如果您无法提供帮助,请不要愚蠢。

0 投票
1 回答
1916 浏览

c# - 给定对象标识符,我们如何从 ASN.1 DER 编码的二进制文件中读取相应的值?

我正在尝试从 Microsoft 安全目录 (*.cat) 文件中读取与对象标识符对应的值,该文件实际上是一个 DER 编码的 ASN.1 对象。我正在使用充气城堡来创建 Asn1Object。当我执行 .ToString() 时,我可以在转储文本中看到我的 ASCII 数据,针对对象标识符“ 1.3.6.1.4.1.311.12.2.1”,但是有没有办法通过传递这个 OID 来专门检索数据?

我看到一个类 Org.BouncyCastle.Asn1.Microsoft,但我不确定如何使用这个类。任何帮助表示赞赏!到目前为止,我只有这个,我调用 File.ReadAllBytes 并传递给我在下面编写的函数,在此我可以调用 ToString() 并查看 .cat 中的所有数据

0 投票
1 回答
340 浏览

encoding - ASN.1 类型的 DER 编码

我很难找到一些关于如何在可分辨编码规则中编码/解码各种类型的解释。字符串(IA5String、PrintableString)和时间(UTCTime、GeneralTime)是如何编码的?

0 投票
2 回答
6565 浏览

php - 使用 PHP 将 .key 文件从 DER 格式加载到 PEM

我有一个代码可以进行转换,但需要使用本机 PHP 函数进行转换,因为它没有激活对运行 exec 的支持:

有人可以帮我把它翻译成原生 PHP 函数吗?它可以是openssl或图书馆。

//更新

这是我使用 der2pem 函数的代码:

var_dump 返回布尔值 false