如何在開發和測試期間對驅動程序進行籤名

2020-09-10 Emil70050061

開發和調試的時候驅動程序還是很不穩定會遇到各種問題,所以該形態下的驅動程序不適合也不能成功獲得微軟籤名,所以在該階段為了能讓驅動程序可以在windows電腦上可以正常運行調試測試。為了能達到這個目標我們就要對驅動進行測試籤名,以方便我們工程師調試,下面我就介紹一下測試籤名的整個過程。

一、測試證書的創建

測試籤名需要測試證書。 生成測試證書後,可以使用它對多個驅動程序或驅動程序包進行測試籤名。

本主題介紹如何使用MakeCert工具創建測試證書。 在大多數開發環境中,通過 MakeCert 生成的測試證書應該足以測試測試籤名驅動程序或驅動程序包的安裝和加載。

以下命令行示例使用 MakeCert 來完成以下任務:

· 創建名為 &34; 的自籤名測試證書。 此證書對使用者名稱和證書頒發機構(CA)使用相同的名稱。

· 將證書的副本放入名為whqlTest的輸出文件中。

· 將證書的副本放入名為PrivateCertStore的證書存儲中。 如果將測試證書放在PrivateCertStore中,則會將其與系統上的其他證書隔離開來。

使用以下 MakeCert 命令創建51whql .com (Test) 證書:

cmd

makecert -r -pe -ss PrivateCertStore -n CN=51whql.com(Test) -eku 1.3.6.1.5.5.7.3.3 WhqlTest.cer

其中:

· -R選項創建一個自籤名證書,該證書具有相同的頒發者和使用者名稱。

· -Pe選項指定可以導出與證書關聯的私鑰。

· -Ss選項指定包含測試證書(PrivateCertStore)的證書存儲的名稱。

· -N CN = option 指定證書的名稱(&34;)。 此名稱與SignTool工具一起用於標識證書。

· EKU 選項將一個或多個以逗號分隔的增強型密鑰用法對象標識符(oid)列表插入到證書中。 例如, -eku 1.3.6.1.5.5.7.3.2 插入客戶端身份驗證 OID。 有關允許的 Oid 的定義,請參閱 CryptoAPI 2.0 中的 Wincrypt.h 文件。

· WhqlTest是包含測試證書的副本的文件名,即 51whql.com (test)。 證書文件用於將證書添加到 &34; 證書存儲和 &34; 證書存儲中。

包含測試證書的證書存儲區將添加到 Windows 在創建證書存儲的開發計算機上為用戶帳戶管理的證書存儲列表。

開發人員只需要創建一個 MakeCert 測試證書來對開發計算機上的所有驅動程序包進行籤名。

二、配置支持測試證書的電腦

管理員模式運行cmd

輸入命令:bcdedit /set testsigning on

三、進行測試籤名

創建或更新驅動程序包的後,可以通過對該目錄文件進行籤名。 籤名後,如果修改了驅動程序包的任何組件,則存儲在目錄文件中的數字籤名將會失效。

對編錄文件進行數字籤名時,SignTool 會將數字籤名保存在目錄文件中。 SignTool 不會更改驅動程序包的組件。 但是,由於目錄文件包含驅動程序包的組件的哈希值,因此,只要這些組件將哈希到相同的值,就會保留目錄文件中的數字籤名。

SignTool 還可以向數字籤名添加時間戳。 時間戳允許確定創建籤名的時間,並在必要時支持更靈活的證書吊銷選項。

以下命令行說明了如何運行 SignTool 來執行以下操作:

· 對toastpkg.inf示例驅動程序包的tstamd64.cat目錄文件進行測試籤名。 有關如何創建此 的詳細信息,請參閱 。

· 使用 51whql.com (測試 PrivateCertStore 中的) 證書來測試籤名。 有關如何創建此證書的詳細信息,請參閱 。

· 通過時間戳頒發機構 (TSA) 來標記數字籤名。

若要對 tstamd64.cat 目錄文件進行測試籤名,請運行以下命令行:

C++複製

Signtool sign /v /fd sha256 /s PrivateCertStore /n 51whql.com(Test) /t http://timestamp.digicert.com tstamd64.cat

其中:

· Sign命令將 SignTool 配置為對指定的編錄文件 tstamd64.cat 進行籤名。

· /V選項啟用詳細操作,其中,SignTool 顯示成功執行和警告消息。

· /Fd選項指定用於創建文件籤名的文件摘要算法。 默認值為 SHA1。

· /S選項指定包含測試證書的證書存儲 (*PrivateCertStore) *的名稱。

· /N選項指定在指定的證書存儲中安裝的 (51whql.com (測試) # B3的證書的名稱。

· /T選項指定了 http://timestamp.digicert.com 用於對數字籤名進行時間戳的 TSA () 的 URL。

相關焦點

  • Win10專業版如何禁用驅動程序強制籤名?
    推薦語:一直沒解決的問題,這下子有解了,謝謝系統之家……………………下文轉載自作者:xitongzhijia電腦和硬體之間需要驅動程序來進行連接操控,不然硬體就是白白安裝。有不少用戶反饋,在安裝驅動程序的時候,Win10系統老是提示沒有數字籤名無法安裝,要如何解決,不然硬體就無法使用了。其實很簡單,我們只需禁用驅動程序強制籤名這個功能就可以了。下面小編就給大家帶來Win10專業版如何禁用驅動程序強制籤名的方法。
  • [教程] 如何永久禁用驅動程序強制籤名?
    [教程] 如何永久禁用驅動程序強制籤名?   手機經常連不上電腦?你知道什麼原因嗎?下面給大家科普下技巧!
  • Windows如何設置安裝驅動程序需經過數字籤名,計算機安全需牢記
    如果相同則說明收到的信息是完整的,在傳輸過程中沒有被篡改,否則說明信息被篡改過,因此數字籤名能夠驗證信息的完整性。Windows作業系統為什麼要設置驅動程序的數字籤名?為了驗證驅動程序的發行者身份以及是否有人篡改過軟體的原始內容。如果驅動程序由證書頒發機構通過了數字籤名驗證,則可以確信驅動程序來自該發布者並且沒有被篡改過。
  • Win10:禁用驅動程序強制籤名
    在Windows 10作業系統中,設備只有安裝了驅du動才能正常使用,而有時會發現下載來的驅動程序無法安裝」沒有數字籤名「,這是系統為了安全問題而阻擋了沒有經過認證的驅動安裝,不過有些時候一些特殊設備沒有通過驗證的驅動,那麼顯然只有暫時關閉數字籤名才能正常安裝。
  • 如何使用代碼籤名證書進行驅動籤名
    目前windows 10 1607版本以以後,驅動內核模式籤名也不能正常運行,必須提交微軟硬體儀錶盤的驅動才可以使用。我推薦大家驅動進去微軟徽標認證,獲取微軟碟機動籤名,這樣可以保證驅動運行的穩定性,給客戶帶來非凡體驗,提高客戶認可度。代碼籤名證書分兩種,一種是普通代碼籤名證書,SHA1算法的證書,任外一種是EV代碼籤名證書。
  • win10系統如何設置才能禁用驅動程序強制籤名
    有一位深度win10專業版用戶想要設置電腦禁用驅動程序強制籤名,但是小夥伴不是很熟悉win10系統所有設置,下面深度之家官網小編分享如何設置禁用驅動程序強制籤名的方法。 2.在彈出的電腦設置窗口中,點擊打開「更新和恢復」(如果是英文的話請打開Update and recovery)。 3.接著在打開的更新和恢復界面中,找到「恢復」按鈕,點擊恢復按鈕,在右側的界面中找到「高級啟動」並且點擊打開高級啟動下的立即重啟。
  • Selenium Firefox驅動程序:使用Firefox瀏覽器自動進行測試
    Mozilla開發人員推出了Geckodriver(也稱為Selenium Firefox驅動程序),以幫助測試人員使用Firefox瀏覽器自動進行瀏覽器測試。在本文中,我們將研究Selenium Firefox驅動程序的基礎知識,以及如何在系統中下載和設置它。
  • 驅動無籤名無法安裝,Windows7如何禁用驅動籤名?
    驅動數字籤名是什麼? 它是微軟公司為了降低終端用戶被惡意驅動程序感染的風險,加入的功能,沒有籤名的驅動是無法安裝的,使得用戶的系統變得更加安全。早在 2016 年 7 月,微軟在 MSDN 宣布從 Windows 10 的 1607 版本開始,強制要求所有新的 Windows10 內核驅動程序,必須獲得 Windows 硬體開發者中心的數字籤名才能在系統中運行。
  • 如何對iOS應用進行修改並重新籤名
    再如,你需要使用這項技術來動態分析測試應用程式,或者你可能需要使用GPS欺騙手段來繞過Pokemon的鎖區限制,在非洲地區捕捉寵物小精靈,而又不想承擔越獄帶來的安全風險。無論是哪種情況,你都可以使用本文介紹的方法對某個經過修改的應用重新籤名並在自己的設備上成功運行。需要注意的是,這種技術僅在應用程式不是經過FairPlay加密(即從應用商店上下載)時才能正常工作。
  • WIN10強制禁用驅動籤名安裝WIN7版本的硬體驅動
    驅動,不能在WIN10下用,非常不方便。最近看到有貼介紹強制禁用驅動籤名的辦法可以用,就用編程器進行測試,結果完美通過,下面把操作步驟分享1:開始---設置2:更新和安全7:按 F7   禁用驅動程序強制籤名   自動重啟
  • 手機程序開發和測試關注點整理
    輸入框界面要考慮彈出鍵盤會不會蓋住下面的輸入框,會不會影響用戶輸入和下一步操作。界面上面的按鈕位置安排是否合理,符不符合用戶習慣,尤其一些太小的按鈕用戶無法觸摸到或不易觸摸到。對於項目超過20項的列表建議使用篩選的方式,搜索和選擇配合才能達到最好的用戶體驗。再測試的時候注意測試對大圖片,大文件加載的時候會不會崩潰。
  • AWorks如何編寫開發設備驅動程序
    本文導讀 本文詳細介紹了AWorks中開發設備驅動的一般方法。基於這些通用的方法,用戶可以嘗試獨立開發一些設備的驅動,以進一步加深對AWbus-lite的理解。同時,當後續遇到一些AWorks 暫不支持的設備時,也可以自行開發設備相應的驅動。
  • 遊戲驅動和系統圖形驅動_系統圖形驅動程序和遊戲驅動程序 - CSDN
    不過近期很多用戶發現,在英偉達官網的驅動下載頁面中,增加了很多額外的選項,比如「驅動程序類型」和「下載類型」等。在本期的《時問實答》中,我們將針對玩家在下載N卡驅動時可能遇到的問題進行集中的討論。需要注意的是,在最新版的官網中,已經移除了通過插件自動檢測本機配置,來自動搜索對應驅動的功能。問:驅動程序類型中的「標準」和」DCH」分別是什麼意思?答:為了滿足不同類型設備的用戶需求,英偉達為不同類先的設備分別開發了兩版驅動。
  • 趨勢科技軟體驅動程序在微軟認證測試中作弊,被列入黑名單
    趨勢科技一項安全產品驅動程序,被發現在微軟認證測試時採取誠信作法,而遭微軟列入封鎖名單,將不得安裝於Windows 10計算機上,不過趨勢科技否認有作弊行為。安全專家Alex Ionescu昨(28)日發現,趨勢科技的安全產品Rootkit Buster一項驅動程序tmcomm.sys,被加入微軟Windows 10 20H1(即2004版)的驅動程序封鎖名單,這表示它被排除在最新版Windows 10更新,而且是20H1才將之封鎖。巧合的是,《The Register》發現,趨勢科技也在周末將產品從官網下架。
  • 在Visual C++ 2010中實踐測試驅動開發
    國人對軟體藍領的不屑,對繁瑣冗長的傳統開發過程的不耐,使大多數開發人員無所適從,而測試驅動開發(Test-Driven Development)就是為了改善傳統的以實現為目標的軟體開發流程,利用測試來驅動軟體程序的設計和實現,從測試的角度提出的一種全新的開發方式。測試驅動開發可以有效的避免過度設計帶來的浪費,同時也可以讓開發者在開發中擁有更全面的視角,避免過度實現帶來的浪費。
  • 通過AI驅動的功能測試來驗證政府應用程式
    但是,藉助AI驅動的功能測試解決方案,質量檢查團隊可以驗證政府應用程式並實現交付現代化。但是,至關重要的是,政府實體在交付時必須進行自己的測試,以驗證應用程式在集成環境中的行為是否符合預期,並滿足可用性、可靠性、性能和安全性等非功能性測試要求。
  • 如何選擇代碼籤名證書
    您可能已經知道Gworg的代碼籤名證書可以向用戶保證,您的軟體來自知名且受信任的開發人員,沒有未經授權的修改和惡意軟體,並且可以安全安裝,但是您應該購買哪種代碼籤名證書?代碼籤名證書擁有:組織驗證(OV)和擴展驗證(EV)級別的代碼籤名證書。您需要哪個級別的驗證?
  • 舊的Windows 10驅動程序將在2021年上半年停止工作
    舊的Windows 10驅動程序將在2021年上半年停止工作 微軟將刪除對以內核模式運行的代碼籤名根證書的支持。過期的驅動程序將不再在Windows 10電腦上加載、運行和安裝。
  • 機器學習實踐--測試驅動開發
    這裡,就不得不提 Test Driven Development(測試驅動開發),簡稱 TDD。TDD 是一種很樸實的想法,在編碼開始前,評估需要交付的功能點並寫測試用例,一開始的時候測試會失敗,接著編寫代碼修複測試,最後測試通過,修復代碼。這裡的方式,通俗來講就是:目標導向,先成事,再迭代。
  • Windows 10 S 模式驅動程序要求
    本部分介紹 Windows 10 S 上的驅動程序安裝要求和阻止的組件驅動程序要求若要在 S 模式下安裝在 Windows 10 上,驅動程序包必須滿足以下要求:· 驅動程序包必須使用數字籤名Windows