vc 中如何利用 pkcs 11 CA證書(證書儲存在IE瀏覽器中)來做數字簽名?

時間 2021-06-21 13:19:33

1樓:蔣晟

IE和Chrome的Windows版本訪問的是作業系統的證書儲存。FireFox有自己的證書儲存。

要在Visual C++程式中通過Windows的證書儲存中的儲存給資料簽名的話,要用到下面的API:

CertOpenStore

CertFindCertificateInStore

CertGetNameString

CryptAcquireCertificatePrivateKey

CryptSignAndEncryptMessage

CertFreeCertificateContext

CertCloseStore

用的是沒有私鑰的SSL證書的話,在CryptAcquireCertificatePrivateKey這一步會失敗。

微軟以前給這些API封裝了乙個ActiveX,叫做CAPICOM,但是Vista之後已經停止開發了,微軟的建議替代是.Net裡面的X509封裝類。

2樓:玄星

IE,Chrome, Firefox儲存的證書都僅僅是公鑰,也就是拿來驗證數字簽名的,而不是用來生成數字簽名的。

真要用這個來生成「可驗證的證書」,大體得幹這麼幾件事:

1. 提取出你想「偽造」的數字證書的幾個特徵:網域名稱,IP,校驗值;

2. 做個DNS汙染或者DNS劫持,來保證IP、網域名稱是「對」的;

3. 找出來乙個能碰撞得上的校驗值。

總之,不是正常手段。

另外,想做乙個自己的證書(私簽),似乎VC++有相應的庫可以直接呼叫。但這個證書會被IE提醒「不安全」、「未驗證」。只能買合法的證書才能直接驗證成功。

如何通俗地理解機器學習中的 VC 維 shatter 和 break point?

章浩 下面冗長無趣的分析,實在看不下去了。與其看看零碎的碎碎念,東拼西湊的我覺得。不如看林軒田大佬親自講的video來的系統 PAC可學習性,看p26 p29即可,30分鐘搞定 林軒田機器學習基石 國語 嗶哩嗶哩 乾杯 bilibili 如果對video理解感到困難的同學,可以參考下面這個同學寫的部...

如何利用Python抓取PDF中的某些內容?

現場可程式設計邏輯 pdfminer非常簡單方便,但我在實際用的時候,經常出現轉換文字缺失的情況。個人感覺這個庫是在讀取pdf的時候遇到轉義字元處理的時候有bug,pdf2htmlex比較穩定,轉成html以後再把文字拿出來,目前做了幾百個轉換還沒錯過。 xlzd 你的問題事實上包含幾部分 將 PD...

在學習過程中,如何利用心流flow

庭治 1.自我認可 心流跟滿足感和成就感有很大關係,枯燥的學習得不到成就感,所以不容易進入心流。可以設立挑戰任務,比如問問別人的學習效率,假如你能做得比他好,這種成就感就幫助進入心流 攀比心理雖然通常不太好,但有時候也很有用 2.獎勵機制 意志力遠比動力有效,動力是內心的願望,經不起時間的消磨,意志...