问题标签 [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 投票
0 回答
420 浏览

ios - 使用 OpenSSL 将 p12 (PKCS#12) 证书转换为 DER 失败

有人有幸将 p12 crt 转换为 DER 吗?我做错了什么?

将 p12 转换为 DER 我正在使用i2d_PKCS12_bio。为了获得证书的引用,我使用了返回 nil 的SecCertificateCreateWithData()方法。此方法仅采用 Apple 文档中所写的 DER 数据。

OpenSSL 文档中写道:

i2d 是将内部结构转换为 DER 表示的标准 ASN1 函数:例如 i2d_ASN1_IA5STRING()。

PS:我确实将 p12 数据保存为文件,它作为 p12 文件工作。

0 投票
0 回答
706 浏览

javascript - 在浏览器中读取 DER File Forge JS

我正在尝试使用 Forge.JS 在浏览器中读取二进制编码的 DER 文件(可能是密码加密或未加密)

https://github.com/digitalbazaar/forge

我以这种方式读入文件

reader.readAsDataURL(selectedFile);

然后我尝试以这种方式读取文件

但是,我收到一条错误消息

未捕获的错误:无法读取私钥。ASN.1 对象不包含 RSAPrivateKey。

0 投票
2 回答
551 浏览

python - M2Crypto:以 DER 格式读取 PKCS#7 结构?

M2Crypto SMIME 对象具有从 PEM 格式的 PKCS#7 文件加载自身的方法:

我没有看到任何从 DER 格式的 PKCS#7 文件加载的方法。如何才能做到这一点?

0 投票
2 回答
1525 浏览

cryptography - RSA 密钥的 ASN1/DER 语法

我正在寻找 DER ASN1 RSA 密钥编码的 ASN1 语法文件

我正在寻找语法文件,以便我可以使用 ASN1C 编译器对其进行编译,然后使用 GMP 编写我自己的“c”代码,以从给定的 RSA 密钥文件中提取公钥。

如果有人可以指导我如何使用以下有关 RSA 密钥的 DER / ASN1 格式的信息来为 RSA 密钥生成语法文件,那将很有帮助

0 投票
2 回答
226 浏览

content-management-system - 识别未知的 ASN.1 对象

我们在可执行文件中搜索了 DER 编码的 SEQUENCE。在挑选了那些看起来像有效的 DER 编码数据之后,我们想分析它们是如何使用的。

X.509 证书和 CMS 对象很容易识别(因为我们知道它们),但我们也发现了有效的编码,从中我们无法判断它们的用途。

例如,看看以下输出openssl asn1parse (...)



有人认识,哪个 ASN.1 类型映射到这个?

当然,有一些很容易识别的模式(例如偏移量 98 或 930),但是是否有任何“聪明”的方法来识别未知的 ASN.1 结构?

特殊的 Google 搜索模式、网站、软件等?

我们尝试了谷歌搜索* ::= SEQUENCE { * INTEGER }等,但没有成功。

0 投票
0 回答
82 浏览

rsa - 我可以挽救这个损坏的 DER 格式文件吗?

我有两个文件代表相同的 DER 格式公钥。当我在文本编辑器中查看它们时,它们看起来都是这样的(崇高)

3081 9f30 0d06 092a 8648 86f7 0d01 0101 0500 0381 8d00 3081 8902 8181 00d2 d475 9de6 d795 7d0f e5e8 375f 3605 7e06 e391 83e7 58b2 3e46 d4e8 da3e 0ac5 136c fff2 2d0e 8386 af7c 6347 a3fd 4c39 1989 7764 69b1 85e1 f5cc fe3f 4957 c110 4264 f112 ad8f e1b9 c108 cf5e 9a77 8d6c 60b2 150a 954f 725f 25c7 b720 e536 ca81 9686 fe71 4e86 1822 48a9 df17 6c95 f9ed 8e9b a674 1a9f 868d 92a9 02a5 57211 6

但一个与 RSA.importKey() 一起工作,一个给我错误“ValueError:不支持 RSA 密钥格式”。

当我使用 "key = open('pub.der', "r").read()" 将它们读入 python 时</p>

然后打印出密钥,有效的文件打印为:

'0\x81\x9f0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x01\x05\x00\x03\x81\x8d\x000\x81\x89\x02\x81\x81\ x00\xd2\xd4u\x9d\xe6\xd7\x95}\x0f\xe5\xe87_6\x05~\x06\xe3\x91\x83\xe7X\xb2>F\xd4\xe8\xda>\n\xc5\x13l \xff\xf2-\x0e\x83\x86\xaf|cG\xa3\xfdL9\x19\x89wdi\xb1\x85\xe1\xf5\xcc\xfe?IW\xc1\x10Bd\xf1\x12\xad\x8f\ xe1\xb9\xc1\x08\xcf^\x9aw\x8dl`\xb2\x15\n\x95Or_%\xc7\xb7\xe56\xca\x81\x96\x86\xfeqN\x86\x18"H\xa9\xdf \x17l\x95\xf9\xed\x8e\x9b\xa6t\x1a\x9f\x86\x8d\x92\xa9\xd2\xa5W!m\xd9\x1f\x02\x03\x01\x00\x01'</p >

并且给出错误的文件打印为:

'3081 9f30 0d06 092a 8648 86f7 0d01 0101\n0500 0381 8d00 3081 8902 8181 00d2 d475\n9de6 d795 7d0f e5e8 375f 3605 7e06 e391\n83e7 58b2 3e46 d4e8 da3e 0ac5 136c fff2\n2d0e 8386 af7c 6347 a3fd 4c39 1989 7764\n69b1 85e1 f5cc fe3f 4957 c110 4264 f112\nad8f e1b9 c108 cf5e 9a77 8d6c 60b2 150a\n954f 725f 25c7 b720 e536 ca81 9686 fe71\n4e86 1822 48a9 df17 6c95 f9ed 8e9b a674\n1a9f 868d 92a9 d2a5 5721 6dd9 1f02 0301\n0001'</p>

我有另一个公钥文件,我只有损坏/无法工作的版本。这两个文件有什么区别,如何将不支持 RSA.importKey() 的版本转换为支持 RSA.importKey() 的版本?

0 投票
1 回答
199 浏览

openssl - 如何使用 openssl 提取 ashx 文件中包含的证书?

在我正在开发的 SCEP 流程中,第一步必须是这个(链接

1.CA认证

SCEP 使用 CA 证书来保护 CSR 的消息交换。因此,需要获取 CA 证书的副本。使用 GetCACert 操作。

1.1 请求

该请求作为 HTTP GET 请求发送。请求的数据包捕获类似于以下内容:GET

/cgi-bin/pkiclient.exe?operation=GetCACert

因此,在发送请求后,我返回了一个 ashx 文件,其中包含三个 X.509 证书,格式为某种二进制数据。

响应成功

成功 - 请求被接受并包含签名证书。签名证书保存在称为“Degenerate Certificates-Only PKCS#7”的特殊类型的 PKCS#7 中,它是一个特殊容器,可以保存一个或多个 X.509 或 CRL,但不包含签名或加密的数据有效载荷。

有什么方法可以使用 openssl 提取这三个证书?因为我不知道怎么做。我想以 pem 或 der 格式提取它们。提前致谢

PS:我对所有这些环境都很陌生。

0 投票
1 回答
9042 浏览

openssl - 使用 OpenSSL 从 bash 中的 n、e、d、p、q 值生成 RSA 私钥

我计算了 RSA 密钥的 n、e、d、p、q 值。现在,如何使用 openssl 命令行工具生成私钥文件(pem 或 der)?

我在想

但我不明白如何构建 conf 文件。

0 投票
1 回答
142 浏览

encoding - 我对 ASN1 der 的解释哪里错了?

这是我的结构的样子:

我的编码如下所示:

但是,当我使用 openssl 解码时,我看不到预期的输出。看起来像

这不是我期望看到的。(看看我想要的结构)

我不确定我错过了什么。任何帮助将非常感激。

0 投票
2 回答
859 浏览

ssl - 转换“电子邮件地址=" 在 x.509 SSL 证书的主题字段中找到十六进制

我有一个SSL x.509 证书的“主题”作为

并且我想将其转换为在 SSL 证书中发现的二进制流,当它通过网络发送时,我知道定义主题字段在RFC-5280中以 ASN.1 表示法给出,而x.609中给出的 DER 编码规则将对此进行转换字段转换为二进制表示,这两个文档在代码的帮助下(它给出了 OID 的十六进制表示,例如id-at-countryName:2.5.4.6:{0x55, 0x04, 0x06})我能够隐藏所有 RDN(RelativeDistinguishedNames)到他们的二进制表示,但我坚持使用emailAdress字段。我找到了它的OID:1.2.840.113549.1.9.1但不知道它是什么十六进制表示。

您能否指导我如何将其转换为二进制表示。