0

让我们假设,我们有一个有效的 HCERTSTORE 已打开证书存储句柄。我们如何确定——开店是实体店还是系统店?

限制 1 - 我们应该只使用 CryptoAPI (C++)。

限制 2 - 我们已经成功忘记了 CertOpenStore() 调用中使用了什么样的商店。

4

1 回答 1

0

我没有看到用 CryptoAPI 解决这个问题的方法,并且由于约束 2 是人为的,所以不要认为它是为了解决这个问题而设计的。可关闭的句柄不能在进程之间传递,所以除非故意,否则不能“忘记”它是什么:知识就在那里,在获得句柄的代码中。

通过查看CertOpenStore - MSDN左侧窗格中的函数列表,我看到CertGetStoreProperty()了 ,但只有一个预定义属性CERT_STORE_LOCALIZED_NAME_PROP_ID,这是不可靠的。

于 2015-10-16T16:27:39.100 回答