asn.1相关内容

从两个大整数创建ASN.1

我有一个使用HSM的Java程序,该程序与本机API一起为我提供ECDSA签名的R值和S值,这只是两个Big Integer。我需要使用这些Integer并创建ASN.1编码。关于我该怎么做的任何想法?我确实可以运行BouncyCastle,但是我不熟悉可用的选项。 解决方案 一个小例子来说明: import org.bouncycastle.asn1.ASN1Integer; ..
发布时间:2020-09-23 01:28:27 Java开发

使用充气城堡解析ASN文件

我试图使用 JASN1 我已经使用语法文件 成功生成了Java类,但是我没有需要解码的CDR,但是我无法使其正常工作,我不知道它需要什么样的输入 我已经到了可以将CDR解析为以下行的位置 [1] [[0]#01,[1]#26fd,[3]#4131002400,[8]#14040020236233,[9]#21436500000041,[10]#196105000045ffff ..
发布时间:2020-09-23 01:25:52 Java开发

为什么Symantec CSR检查器认为我的CSR在AlgorithmIdentifier中缺少NULL值? RFC3279

由于许多不愉快的原因,我一直试图使用bouncycastle API手动建立自己的证书签名请求。 表面上,我选择这样做是因为我需要使用CSR的预签名版本,以便使用存储在HSM中的密钥生成sha256withRSA签名,该密钥在LMK下加密,因此在CSR创建时无法立即使用。 无论如何,这有点偶然。 我已经设法通过与使用openSSL生成的其他CSR进行比较来创建CSR结构,添加所需 ..
发布时间:2020-09-23 01:19:31 Java开发

Apache Thrift,Google协议缓冲区,MessagePack,ASN.1和Apache Avro之间的主要区别是什么?

所有这些都提供二进制序列化,RPC框架和IDL.我对它们和特性(性能,易用性,编程语言支持)之间的关键区别感兴趣. 如果您知道任何其他类似的技术,请在答案中提及它. 解决方案 ASN.1 是ISO/ISE标准.它具有非常易读的源语言和各种二进制和人类可读的后端.作为一种国际标准(当时是一种古老的标准!),源语言有点像厨房的味道(与大西洋有点潮湿的方式差不多),但是它的规范非常明确,并 ..
发布时间:2020-09-15 05:11:24 其他开发

ASN.1 DER格式化的私钥

为什么模数用前导零填充?我正在阅读PKCS#1和PKCS#8,但没有找到任何有关它的信息. 在C#中必须删除前导零,有人知道为什么吗? 在 http://etherhack.co.uk/asymmetric/docs/rsa_key_breakdown.html 上,您会看到模数和指数的前导零.问题是为什么他们要它,我在任何地方都还没有找到解释. 解决方案 私钥值被编码为ASN.1 ..
发布时间:2020-07-24 23:05:50 其他开发

从公钥正确创建RSACryptoServiceProvider

我目前正试图仅从解码的PEM文件创建RSACryptoServiceProvider对象.经过几天的搜索,我确实设法解决了一个可行的解决方案,但并不是一个可以立即投入生产的解决方案. 简而言之,为了从组成PEM文件中公钥的字节创建RSACryptoServiceProvider对象,我必须创建一个指定密钥大小的对象(当前使用SHA256,具体为2048),然后导入设置了Exponent和Modu ..
发布时间:2020-07-06 03:27:05 C#/.NET

Java的DER解码ECDSA签名

我已经用Java生成了ECDSA签名,我想从中获取R和S值.据我了解,我生成的签名是DER编码的.有人可以为我提供一些Java代码(也许使用Bouncy Castle)来检索R和S值作为BigIntegers吗? 注意:如果有帮助,我会使用内置提供程序通过JCE的Signature类生成签名,并且P_256 EC密钥对的签名长度通常在70到72个字节之间徘徊. 解决方案 我自己解决了 ..
发布时间:2020-06-11 19:06:01 Java开发

如何将.crt转换为.pem

如何将.crt转换为.pem? 解决方案 您可以使用OpenSSL库进行此转换 http://www.openssl.org/ Windows二进制文件可以在这里找到: http://www.slproweb.com/products/Win32OpenSSL.html 一旦安装了库,则需要发出的命令是: openssl x509 -in mycert.cr ..
发布时间:2020-06-08 18:56:20 其他开发

解析PDOL以获取EMV事务中的GET PROCESSING OPTIONS命令

我正在尝试构建正确格式的GET PROCESSING OPTIONS命令以发送到非接触式EMV卡。 这篇文章很有帮助,但我只想知道更多细节。 在解析PDOL时,可以安全地假设每个标签的长度为2个字节,然后是返回的预期数据大小吗? 例如,将PDOL 9F66049F02069F37049F1A02 分为 9F66 04 , 9F02 06 等,每个都有2个字节的标签和1个字节的数据值的 ..
发布时间:2020-06-08 18:52:32 其他开发

是否存在用于解析ASN.1或基于ASN.1生成PHP代码的PHP库?

我已经看过自己了,但是今天我的Google-fu似乎不强. 我正在努力开发一种标准化协议,用于通过Apache/PHP服务器与微控制器上的嵌入式C代码之间的TCP/IP连接交换数据结构. 我们正在使用ASN.1表示法,而我真正想做的是编写一段PHP代码,可以解析ASN.1文档并使用它来解释传入的数据.它将产生一个基于ASN.1适当构造的PHP对象(或数组).这里的目标是使用PHP来解析 ..
发布时间:2020-05-25 01:23:38 PHP

从ASN.1格式的证书获取DN

我正在尝试从ASN.1/DER格式的证书中获取DN.我已经搜索过OpenSSL,但仍然找不到确切的功能来获取DN. 是否有人对此有任何经验,或者可以将我指向书籍或任何网站? 解决方案 我已经找到了一种方法.如果有人要这样做,我就放在这里. X509_NAME * cert_entry = X509_get_issuer_name(cert); unsigned char ..
发布时间:2020-05-21 02:52:19 其他开发

X.509证书中的专有名称长度约束

在 解决方案 即使您可以哄骗证书生成代码以拥有更长的CN,也需要更改 clients 大多数您无法控制.客户很可能会拒绝CN太长的证书,然后您根本没有证书. 如评论中所述,您可以(并且应该)将该域名和其他域名放入“使用者备用名称"扩展名中,并将CN留空.不是整个“主题",而是它的CN部分. ..
发布时间:2020-05-21 02:38:59 其他开发

OpenSSL ASN.1编程教程

我正在寻找有关使用OpenSSL库进行ASN.1 DER编码的任何C/C ++教程,示例代码或文档. 解决方案 好吧,正如您在openssl网站上看到的那样,没有关于ASN.1函数的官方文档. 但是您始终可以下载openssl来源.解压缩后,您可以在doc/crypto目录文档中找到ASN.1. # ~/tmp/openssl-1.0.1c/doc/crypto> ls -1 ..
发布时间:2020-05-21 02:37:58 其他开发

使用OpenSSL解码ASN.1 DER OCTET STRING

使用OpenSSL API,我从X.509v3证书中提取了一个自定义扩展名, X509_EXTENSION* ex = X509_get_ext(x509, 4); X509_EXTENSION对象包含一个值为ASN.1 OCTET STRING的值(例如-> value). OCTET STRING包含DER编码的UTF-8字符串.我正在尝试对OCTET STRING进行解码,以获取 ..
发布时间:2020-05-21 02:26:45 其他开发

ASN1_TIME转换为time_t

如何将ASN1_TIME转换为time_t格式?我想将X509_get_notAfter()的返回值转换为秒. 解决方案 时间在内部以字符串形式存储,格式为YYmmddHHMMSS或YYYYmmddHHMMSS. 该字符串的末尾有几分之一秒和时区的空间,但是现在让我们忽略它,并保留一些(未经测试的)代码. 注意 :另请参见下面的布莱恩·奥尔森(Bryan Olson)的答案,其 ..
发布时间:2020-05-21 02:24:04 其他开发

如何从.key和.crt文件获取.pem文件?

如何从SSL证书创建PEM文件? 这些是我可以使用的文件: .crt server.csr server.key 解决方案 您的密钥可能已经是PEM格式,而只是用.crt或.key命名. 如果文件的内容以-----BEGIN开头,并且您可以在文本编辑器中阅读该文件: 该文件使用base64,它可以ASCII格式读取,而不是二进制格式.证书已经是PEM格式.只需将 ..
发布时间:2020-05-21 02:07:08 其他开发