【问题标题】:What structure X509Certificate2.Handle points to in Linux?Linux 中 X509Certificate2.Handle 指向什么结构?
【发布时间】:2021-05-07 08:33:33
【问题描述】:

我知道,对于 Windows,X509Certificate2 使用 Crypt32,X509Certificate2.Handle 指向 CERT_CONTEXT 结构。

另一方面,Linux X509Certificate2 在后台使用 Open SSL。那么,在这种情况下,X509Certificate2.Handle 指向的结构是什么?

是同一个CERT_CONTEXT还是别的什么?

【问题讨论】:

标签: c# .net-core x509certificate .net-5


【解决方案1】:

这是一个 OpenSSL X509* 值。

在所有平台上,它表示“系统密码库生成的表示 X.509 公钥证书的指针”。所以 Windows 是 PCERT_CONTEXT,macOS 是 SecCertificateRef,Linux 是 X509*

在所有平台上,您在使用 Handle 值之前确实应该有一个很好的理由。

【讨论】:

  • 好吧,我有理由使用句柄。 .NET 不支持俄罗斯国家密码标准,由于内部架构丑陋,仍然无法扩展到使用第三方提供商。事实上,你知道这一点。 ) 这就是为什么我必须处理在 Linux 上模仿 Windows Crypto API 的本机库。在我的情况下,没有其他方法可以获得跨平台加密。只是想确保内存表示因平台而异。非常感谢!
猜你喜欢
  • 2011-07-17
  • 1970-01-01
  • 1970-01-01
  • 2018-04-03
  • 1970-01-01
  • 1970-01-01
  • 2010-10-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多