Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)
(시리즈 글이 3개 있습니다.)
DDK: 7. 정식 인증서가 있는 경우 Device Driver 서명하는 방법
; https://www.sysnet.pe.kr/2/0/2914

개발 환경 구성: 489. 정식 인증서가 있는 경우 Device Driver 서명하는 방법 (2) - UEFI/SecureBoot
; https://www.sysnet.pe.kr/2/0/12214

DDK: 10. Device Driver 테스트 설치 관련 오류 (Code 37, Code 31) 및 인증서 관련 정리
; https://www.sysnet.pe.kr/2/0/13356




정식 인증서가 있는 경우 Device Driver 서명하는 방법 (2) - UEFI/SecureBoot


(2025-01-16 업데이트: Windows 10부터 아래의 방법으로 서명할 수 없고 반드시 EV 인증서가 필요합니다.)




그동안 Legacy device driver만 실습하다가,

정식 인증서가 있는 경우 Device Driver 서명하는 방법
; https://www.sysnet.pe.kr/2/0/2914

Visual Studio 2019 + WDK Legacy Driver 제작- Hello World 예제
; https://www.sysnet.pe.kr/2/0/12103

처음으로 (제가 만든 것은 아니지만 ^^;) INF 파일을 이용한 설치형 driver를 아래의 글로 테스트하면서,

(User-mode 코드로 가상 USB 장치를 만들 수 있는) USB/IP PROJECT 소개
; https://www.sysnet.pe.kr/2/0/12213

알게 되었는데 어떤 컴퓨터는 정상적으로 "usbip_vhci.sys"가 설치되는 반면 어떤 컴퓨터는 다음과 같이 인증서가 올바르지 않다고 오류가 발생했습니다.

The software for this device is now installed, but may not work correctly.

Windows cannot verify the digital signature for the drivers required for this device. A recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source. (Code 52)

해당 컴퓨터의 차이점을 보니, "Secure Boot" 옵션이 켜져 있느냐였는데요,

UEFI / Secure Boot 상태인지 확인하는 방법
; https://www.sysnet.pe.kr/2/0/12212

즉, UEFI 모드가 아닌 경우에는 usbip_vhci.sys 드라이버가 정상적으로 설치되었고, UEFI 모드라고 해도 "Secure Boot"를 끄면 (꼭 EV 인증서가 아니어도) 일반 인증서로 서명한 드라이버라도 Windows 10에서 정상적으로 동작이 되었습니다. (정식 인증 과정: WHQL 인증)

이 정도만 해도, device driver를 실습하는 경우에 한해 일반 코드 인증서라도 있다면 굳이 "testsigning" 환경으로 만들지 않아도 되니 개발 환경으로는 적절한 선택이 될 수 있을 것입니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 1/16/2025]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2022-12-03 10시23분
정성태

... 91  92  [93]  94  95  96  97  98  99  100  101  102  103  104  105  ...
NoWriterDateCnt.TitleFile(s)
11609정성태7/15/201820284Graphics: 4. Unity로 실습하는 Shader (2) - 고로 셰이딩(gouraud shading) + 퐁 모델(Phong model)
11608정성태7/15/201824896Graphics: 3. Unity로 실습하는 Shader (1) - 컬러 반전 및 상하/좌우 뒤집기
11607정성태7/14/201825241Graphics: 2. Unity로 실습하는 Shader [1]
11606정성태7/13/201825886사물인터넷: 19. PC에 연결해 동작하는 자신만의 USB 장치 만들어 보기파일 다운로드1
11605정성태7/13/201821669사물인터넷: 18. New NodeMCU v3 아두이노 호환 보드의 내장 LED 및 입력 핀 사용법 [1]파일 다운로드1
11604정성태7/12/201820734Math: 47. GeoGebra 기하 (24) - 정다각형파일 다운로드1
11603정성태7/12/201816859Math: 46. GeoGebra 기하 (23) - sqrt(n) 제곱근파일 다운로드1
11602정성태7/11/201817012Math: 45. GeoGebra 기하 (22) - 반전기하학의 원에 관한 반사변환파일 다운로드1
11601정성태7/11/201819814Math: 44. GeoGebra 기하 (21) - 반전기하학의 직선 및 원에 관한 반사변환파일 다운로드1
11600정성태7/10/201818234Math: 43. GeoGebra 기하 (20) - 세 점을 지나는 원파일 다운로드1
11599정성태7/10/201817540Math: 42. GeoGebra 기하 (19) - 두 원의 안과 밖으로 접하는 직선파일 다운로드1
11598정성태7/10/201819406Windows: 147. 시스템 복구 디스크를 USB 디스크에 만드는 방법
11597정성태7/10/201821513사물인터넷: 17. Thinary Electronic - ATmega328PB 아두이노 호환 보드의 개발 환경 구성
11596정성태7/10/201819470기타: 72. 과거의 용어 설명 - OWIN
11595정성태7/10/201825202사물인터넷: 16. New NodeMCU v3 아두이노 호환 보드의 기본 개발 환경 구성
11594정성태7/8/201819603Math: 41. GeoGebra 기하 (18) - 원의 중심 및 접선파일 다운로드1
11593정성태7/8/201818569Math: 40. GeoGebra 기하 (17) - 각의 복사파일 다운로드1
11591정성태7/7/201818003Math: 39. GeoGebra 기하 (16) - 삼각형의 방심과 방접원파일 다운로드1
11590정성태7/7/201817549Math: 38. GeoGebra 기하 (15) - 삼각형의 수심파일 다운로드1
11589정성태7/7/201817792.NET Framework: 787. object로 형변환된 인스턴스를 원래의 타입 인자로 제네릭 메서드를 호출하는 방법 [2]파일 다운로드1
11588정성태7/7/201819284디버깅 기술: 116. windbg 분석 사례 - ASP.NET 웹 응용 프로그램의 CPU 100% 현상 (3)
11587정성태7/5/201818862.NET Framework: 786. ASP.NET - HttpCookieCollection을 다중 스레드에서 사용할 경우 무한 루프 현상
11586정성태7/5/201818057Math: 37. GeoGebra 기하 (14) - 삼각형의 무게 중심파일 다운로드1
11585정성태7/5/201818224Math: 36. GeoGebra 기하 (13) - 삼각형의 외심과 외접하는 원파일 다운로드1
11584정성태7/5/201818214Math: 35. GeoGebra 기하 (12) - 삼각형의 내심과 내접하는 원파일 다운로드1
11583정성태7/5/201817990.NET Framework: 785. public으로 노출되지 않은 다른 어셈블리의 delegate 인스턴스를 Reflection으로 생성하는 방법파일 다운로드1
... 91  92  [93]  94  95  96  97  98  99  100  101  102  103  104  105  ...