Làm cách nào để tôi ký điện tử trình điều khiển chế độ kernel 64 bit?


4

Tôi có trình điều khiển chế độ kernel và tôi phải cài đặt nó trên win 64 bit 7. Nó cần phải được ký điện tử. Tôi đã ký điện tử bằng cách sử dụng dseo13b.exe. Nhưng khi tôi tải trình điều khiển, tôi gặp lỗi trong nhật ký sự kiện hệ thống.

Trình điều khiển không khởi động được do lỗi sau: Windows không thể xác minh chữ ký số cho tệp này. Một sự thay đổi phần cứng hoặc phần mềm gần đây có thể đã cài đặt một tệp được ký không chính xác hoặc bị hỏng hoặc đó có thể là phần mềm độc hại từ một nguồn không xác định.

Tôi không muốn sử dụng chế độ ký kiểm tra. Làm thế nào để tôi giải quyết điều này? Tôi có cần lấy chứng chỉ từ Microsoft không?

Tôi đã phát triển trình điều khiển và bây giờ làm cho nó hoạt động trên máy 64 bit.

Công ty của tôi có thể mua chứng chỉ từ verisign nhưng tôi phải làm gì sau khi có được chứng chỉ. Làm cách nào để liên kết tệp trình điều khiển với chứng chỉ tôi nhận được? Và ngoài ra làm cách nào để liên kết chứng chỉ chéo được tải xuống từ internet với chứng chỉ tôi nhận được từ verisign? Tôi đã đọc tài liệu KMSC_WalkThru (Cách phát hành-Ký một mô-đun hạt nhân) nhưng những điều này không rõ ràng từ nó. Bạn có thể vui lòng giúp đỡ.

Ngoài ra, làm thế nào để tôi có được những điều sau đây:

mySPCfile.spc   Your public key certificate file. 
myPVKfile.pvk   Your private key certificate file. 
myPVKpassword   

Mật khẩu cho tập tin chứng chỉ khóa riêng. Đề cập ở đây

Câu trả lời:


7

Có, bạn cần mua chứng chỉ từ Cơ quan cấp chứng chỉ tin cậy. Nếu bất cứ ai cũng có thể tạo chứng chỉ, sẽ có vô số chứng chỉ tự xưng là "Tập đoàn Microsoft" và đó sẽ là thiên đường virus.

Tài liệu mà bạn đề cập là những gì tôi đã sử dụng để tìm hiểu làm thế nào để ký trình điều khiển. Tôi thực sự khuyên bạn nên dành ra một vài ngày và chạy qua nó bắt đầu để kết thúc. Tôi đã dành một phần tốt trong tuần để trải qua nó.

Tất cả những gì tôi có thể cung cấp trên đó là tệp bó sau mà tôi thực hiện từ VS2010 trong quá trình xây dựng sau. Nó sử dụng chứng chỉ từ kho chứng chỉ của máy tính, không phải tệp. Lý do nó quá phức tạp là tôi sử dụng nó trong nhiều hoàn cảnh khác nhau cho nhiều dự án khác nhau.

Đăng nhập

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Signs the project output.

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Usage
:: 
:: Post-build event command line:
:: Call "$(ProjectDir)..\..\Sign.bat" "$(ConfigurationName)" "$(TargetPath)"
:: 
:: Run the post-build event:
:: When the build updates the project output

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Input Parameters
:: 
:: %~1   $(ConfigurationName)    The file's configuration.  This function will
::                               use a different certificate for "Debug"
::                               configurations.
:: %~2   $(TargetPath)           The full path of the first file to sign.
:: %~3+  FileName                The names of the remaining files to sign.
::                               These files must reside in the same directory
::                               as %2.

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Validate the parameters.
If "%~1"=="Debug" Exit /B 0
If "%~1"=="" Goto Error
If "%~2"=="" Goto Error
Goto Valid

:Error
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Report that the syntax is incorrect.
Echo One or more parameters are missing.
Echo.
Echo %~nx0 configuration filename1 [filename2 ...]
Echo.
Echo configuration      The project configuration.  Usually "Debug" or "Release".
Echo filename1          The full path of the first file to sign.
Echo filename2          The names of addition files to sign.  These files must
Echo                    reside in the same folder as "filename1".
Echo.
Exit /B 1

:Valid
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Change to the assembly's folder.
%~d2
CD %~dp2

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Prepare the list of files to sign.
Set FileList=
:CreateFileList
Set FileList=%FileList% %~snx2
Shift /2
If Not "%~2"=="" Goto CreateFileList

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Sign the assembly files.
Set Store=my
Set Certificate=type the name of your certificate here
Set TimeStampUrl=http://timestamp.verisign.com/scripts/timestamp.dll
C:\WinDDK\7600.16385.1\bin\x86\SignTool.exe Sign /s "%Store%" /n "%Certificate%" /t "%TimeStampUrl%" %FileList%
If %ErrorLevel%==1 Exit /B 1

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Verify the digital signature is valid.
C:\WinDDK\7600.16385.1\bin\x86\SignTool.exe Verify /pa %FileList%

2
Phương pháp tốt nhất ở đây. Tự ký ftw.
Surfasb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.