问题标签 [x509]

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 回答
15014 浏览

c# - snk 与代码签名证书

在我的组织中,我们使用具有强名称程序集的 snk 文件。我们自己生成 snk。

此外,我们在二进制文件上使用代码签名签名。我们从 Verisign 获得 pfx。

  • 这两个过程有什么区别?
  • snk 也没有从 Verisign 收到不是问题吗?
0 投票
2 回答
1215 浏览

.net - 除非服务帐户登录,否则 WCF 服务无法访问个人证书存储

我创建了一个 WCF 服务,该服务具有一种通过 Internet 调用 SOAP Web 服务的方法。

为了调用 SOAP Web 服务,它要求 X.509 证书与 HttpWebRequest 一起发送。

X.509 证书加载到运行服务的帐户的个人和受信任证书存储中。

当服务帐户登录到服务器时,一切正常。

但是,当服务帐户未物理登录到服务器时,它会在加载 X.509 证书时出现问题,并且在尝试发出 HttpWebRequest 时身份验证失败。

我是 WCF 服务的新手,所以我什至不知道从哪里开始寻找。

任何人都可以帮忙吗?谢谢。

0 投票
3 回答
6724 浏览

c# - 如何使用 Compact Framework 在 C# 中验证 X.509 证书

我正在尝试使用 C# 和 .NetCF 验证 X.509 证书。我有 CA 证书,如果我理解正确,我需要使用该 CA 证书中的公钥来解密不受信任证书的签名。这应该给我计算出的不受信任证书的哈希值。然后我应该自己计算证书的哈希值并确保这两个值匹配。

我已经玩了几天了,但我并没有走得太远。我一直在使用 X509Certificate 和 RSACryptoServiceProvider 类。首先,我尝试从 X509Certificate 类中获取公钥和签名。我能够得到公钥,但不能得到签名。接下来,我尝试解析构成证书的二进制数据,这使我能够获得签名(以及我想要的任何其他数据),但我无法使用 RSACryptoServiceProvider 解密签名。我尝试过这样的事情,但是当我尝试解密时不断收到异常说“Bad Key”:

任何建议将不胜感激。

编辑:我尝试了一些似乎更好但返回奇怪结果的方法。我在这里使用 X509Certificate2 类,因为它更容易测试,但稍后我需要为 .NetCF 切换到 X509Certificate。我认为 RSACryptoServiceProvider.VerifyData 可能是我需要的。我尝试了以下代码。

正如我所说,我能够手动解码和解释证书的二进制数据,所以我很确定 cert.RawData 是证书的签名数据,最后 256 个字节是加密的签名。该字符串是我从证书中获得的哈希算法的 OID,但我不能 100% 确定它是否正确。VerifyData 返回 false,但我还不确定为什么。

想法?

0 投票
1 回答
2728 浏览

encryption - DER 编码 - 如何将隐式标签转换为显式标签

我有一个 X.509 证书,其中包含一组具有以下隐式 [0] 标记的数据:

我有一份标准文件的摘录:

IMPLICIT [0] 标签不用于 DER 编码,而是使用 EXPLICIT SET OF 标签。也就是说,EXPLICIT SET OF 标记的 DER 编码,而不是 IMPLICIT [0] 标记的编码,必须与值的长度和内容八位字节一起包含。

我已经做了很多搜索,但我无法弄清楚标准要求什么。我正在寻找一些澄清。

编辑:这是我遵循的标准:https ://www.rfc-editor.org/rfc/rfc3852

我正在尝试验证 X.509 签名,我需要计算消息摘要来执行此操作。此证书包括 SignerInfo 类型中的可选 SignedAttributes。我已经对签名内容进行了哈希处理,并验证了 SignedAttributes 中的消息摘要是否正确。该标准规定,如果存在 SignedAttributes,则应对其进行散列和加密以创建证书的签名。该标准还说,应按照原始问题中的讨论更改 SignedAttributes 的标签。

这是 SignerInfo 的 Asn.1 语法:

0 投票
2 回答
240 浏览

c# - 在 C# 代码中捕获 IIS 级证书错误

我正在制作一个将使用 X509 证书保护的 SOAP 处理程序,其中一个要求是程序尽可能多地在现有的日志查看器中记录。显然,在 IIS 级别处理的证书有很多错误,在这种情况下是不可接受的。

我已经用 C# 代码解决了日志记录部分。那部分很容易。更难的部分是让 IIS 级错误进入代码,而不是作为无用的 Web 错误返回给客户端。我查看了这个线程,但由于正在发生的事情的性质,我们的项目缺少 App_Code 文件夹,所以它不是非常适用。

有什么建议么?

0 投票
3 回答
3764 浏览

security - 如何确定用于扩展符合 X.509 的数字签名的有效 OID?

我需要一个 OID 用于向 X.509v3/PKCS#7 数字签名添加自定义扩展(已经是 ASN1.encoded)。我不在乎它是否可互操作;这是一个私人专有应用程序(实际上是一个研究项目)。现在我什至不在乎它是否是在某些专有应用程序中使用的 OID,尽管显然我不能长时间使用该 OID。

目前我一直在使用 1.2.3.4.5,它在我正在使用的加密库(cryptlib)的测试代码中。但是,签名创建正在崩溃,我不知道这是否是原因。我知道库在检查输入时至少会拒绝一些无效的 OID。

0 投票
2 回答
4745 浏览

c# - 如何从签名的 C# exe 中读取公钥

我正在使用 dot net exe 签名

该文件需要在运行时读取自己的公钥,以验证一些数据。我已经走了许多不同的途径。

我试过了

然后执行证书为空。我猜 signcode 不会创建 X509 签名文件,但如果有一个可以改变的开关,我很乐意这样做。

编辑 结果上面确实有效....我有我的空检查向后(!=!= ==):)

0 投票
1 回答
9121 浏览

.net - 如何以编程方式在 .NET 中创建 X.509 证书?

我想在 .NET 中创建一个新的 X.509 证书,满足我设置的哈希算法和密钥长度要求。这将是一个自签名证书。创建一个新证书可能会创建一个新密钥,或者我想导入一个现有的 byte[] 形式的私钥。

有谁知道该怎么做?

0 投票
1 回答
1117 浏览

ruby - 带有 X509 证书的 Ruby 中的 SOAP 请求

我正在使用 Soap4r 和 HTTPClient 与 Web 服务进行交互。该服务仅接受使用 X509 证书进行数字签名的请求。我已经完成了生成私钥、获取证书请求 (CSR) 以及从权威机构(托管 Web 服务的公司)获取实际证书的步骤。

有没有关于如何做到这一点的例子?

0 投票
2 回答
37326 浏览

c# - 是否可以仅使用 C# 以编程方式生成 X509 证书?

我们正在尝试使用 C# 和BouncyCastle库以编程方式生成 X509 证书(包括私钥) 。我们已经尝试使用Felix Kollmann 这个示例中的一些代码,但是证书的私钥部分返回 null。代码和单元测试如下:

单元测试: