코드 서명 인증서 사용

이 웹페이지는 SSL.com 사용에 대한 지침을 제공합니다. OV or EV Microsoft의 SignTool 및 SSL.com의 코드 서명 인증서 SSL Manager.

이 지침에서는 코드 서명 인증서가 설치되었거나 하드웨어 토큰에 인증서가 있다고 가정합니다. eSigner 플랫폼을 사용한 클라우드 기반 코드 서명에 대해서는 다음을 참조하십시오. 개요 페이지등록 안내.

하드웨어 기반 OV 및 EV 코드 서명 인증서의 경우 개인 키는 YubiKey FIPS USB 토큰에만 존재 그것은 당신에게 보내졌고 그 토큰은 첨부해야합니다 응용 프로그램에 서명하는 데 사용되는 컴퓨터에 YubiKey FIPS 토큰이 있는 Windows 사용자도 다운로드하여 설치해야 합니다. YubiKey 스마트 카드 미니 드라이버 토큰을 사용하기 전에

OV 및 EV 코드 서명 인증서를 컴퓨터에 수동으로 설치하면 구성 문제가 발생할 수 있습니다. SSL.com에서 YubiKeys로 배송된 인증서는 설치 외에 추가 설치 없이 사용할 수 있습니다. YubiKey 스마트 카드 미니 드라이버 토큰을 컴퓨터에 연결합니다. 를 통해 주문한 인증서 원격 증명 컴퓨터의 인증서 저장소가 아닌 개인 키 (예 : YubiKey FIPS 또는 기타 지원되는 하드웨어)가 포함 된 장치에 다운로드하여 설치해야합니다.
EV 코드 서명 인증서로 Windows 10 드라이버에 서명하려는 경우 다음을 수행해야합니다. 회원가입 Windows 하드웨어 개발자 프로그램과 함께.
Java로 OV / IV 또는 EV 코드 서명 인증서를 사용하는 방법에 대한 지침은 다음을 참조하십시오. Java 코드 서명 안내서.

SignTool로 실행 파일에 서명

설치 Windows SDK 및 SignTool

SignTool은 함께 제공됩니다 윈도우 10 SDK. 설치 후 SignTool은 다음 위치에 있습니다.

C : \ Program Files (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe

스타트 파워 쉘

시작 파워 쉘 명령 창에서 "Powershell"을 검색하여 스타트 메뉴에서 바탕 화면 응용 프로그램을 클릭하십시오.

Powershell은 Windows의 핵심 서비스에 대한 명령 줄 인터페이스입니다. 이를 사용하여 SignTool을 실행하고 코드에 서명 할 수 있습니다.

EV 용 암호 서명하려면 USB 토큰을 컴퓨터에 연결합니다(아직 연결하지 않은 경우). eSigner를 사용하는 경우 설치 eSigner 클라우드 키 어댑터

개인 키는 귀하에게 전송 된 USB 토큰에만 존재하며 토큰을 첨부해야합니다 응용 프로그램에 서명하는 데 사용되는 컴퓨터에 OV 코드 서명 인증서를 사용하는 경우이 단계를 건너 뛰어야합니다.

기호 실행 파일

Powershell 창에서 다음 명령을 실행하여 실행 파일에 서명할 수 있습니다. signtool.exe로 eSigner 클라우드 서명을 사용하는 경우 다음을 설치하십시오. 전자 서명자 CKA

. \ signtool.exe 서명 / fd sha256 / a "C : \ path \ to \ MyExecutable.exe"
  •   /fd 옵션은 서명 할 때 사용할 다이제스트 알고리즘을 선택합니다. Windows 10 SDK, HLK, WDK 및 ADK 빌드 20236 이상 서명할 때 이 옵션을 설정해야 합니다. 보안을 위해 SHA256보다 SHA1을 권장합니다.
  •   /a 옵션은 SignTool에게 실행 파일에 적합한 코드 서명 인증서를 자동으로 찾도록 지시합니다.
  • EV 코드 서명 인증서를 사용하는 경우 USB 토큰의 PIN을 입력하라는 메시지가 표시됩니다. PIN을 찾는 데 도움이 필요하면 다음을 참조하십시오. 이 방법.PIN을 입력하십시오
참고 : 설치 프로그램에 포함될 코드 파일 (예 : Windows MSI 파일)에 서명하는 경우 설치 프로그램을 빌드하기 전에 이러한 파일에 서명 한 다음 설치 프로그램 파일 자체에 서명해야합니다.

서명 인증서 선택

주체 이름 지정

USB 토큰 또는 인증서를 서명하는 코드가 두 개 이상 설치되어 있으면 인증서를 지정하십시오 당신은 그것을 포함하여 사용하고 싶습니다 주체 이름 를 통해 /n 옵션을 선택합니다.

Microsoft의 인증서 관리 도구를 사용하여 EV CS 인증서의 주체 이름을 찾을 수 있습니다. certmgr. 시작 메뉴에서 도구를 열고 아래 이미지와 같이 "인증서"아래의 "개인"폴더에서 EV CS 인증서를 찾습니다. 주체 이름은 certmgr의 "Issued To"필드입니다.

위 이미지에서 인증서의 주체 이름은 example. 다음 명령을 사용하여 SignTool에서이 값을 지정할 수 있습니다.

. \ signtool.exe sign / fd sha256 / n "example" "C : \ path \ to \ MyExecutable.exe"

SHA1 해시 지정

주체 이름이 동일한 인증서가 여러 개있는 경우 인증서의 SHA1 해시 (또는 "지문")를 사용하여 서명을 위해 선택할 수도 있습니다. 바꾸다 THUMBPRINT 실제 SHA1 해시 인증서로 아래 명령에서. 이 값은 certmgr에서 인증서 세부 정보를보고 Thumbprint 필드 (명령에서 사용하기 전에 지문에서 공백 문자를 제거해야합니다).

. \ signtool.exe 서명 / fd sha256 / sha1 THUMBPRINT "C : \ path \ to \ MyExecutable.exe"

PKCS # 12 / PFX 파일 사용

PKCS # 12 파일 (PFX 또는 P12 파일이라고도 함)에 코드 서명 인증서와 개인 키가있는 경우 명령 줄에서 파일과 해당 암호를 지정할 수 있습니다.

. \ signtool.exe 서명 / fd sha256 / f "C : \ path \ to \ MyCertificate.pfx"/ p 암호 "C : \ path \ to \ MyExecutable.exe"

타임 스탬프

코드에 타임 스탬프를 지정하면 코드 서명 인증서가 만료 된 후에도 코드를 신뢰할 수 있습니다. 추가하려면 따라서 오른쪽 하단에 서명 된 바이너리 파일에서 SignTool의 /tr 옵션, 다음을 사용하여 타임 스탬프 다이제스트 알고리즘을 설정해야합니다. /td. 아래 스 니펫의 명령에는 SSL.com실행 파일에 서명하는 동안의 타임 스탬프 서비스.

. \ signtool.exe 서명 / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C : \ path \ to \ MyExecutable.exe"
참고 : SignTool의 /tr 옵션 (RFC 3161 타임 스탬프 서버의 URL 지정), 지원 /t (타임 스탬프 서버의 URL)은 SSL.com의 타임 스탬프 서버와 호환되지 않습니다.
참고 :   /td 선택권 절대로 필요한 것 다음에 나오는 /tr 선택권. 타임 스탬프 서버 이전에 타임 스탬프 다이제스트 알고리즘이 지정되면 기본 SHA-1 알고리즘이 사용됩니다. Windows 10 SDK, HLK, WDK 및 ADK 빌드 20236 이상 사용이 필요하다 /tr 타임 스탬프. 보안을 위해 SHA256보다 SHA1이 권장됩니다.
참고 : 기본적으로 SSL.com은 ECDSA 키의 타임스탬프를 지원합니다.

이 오류가 발생하는 경우: The timestamp certificate does not meet a minimum public key length requirement, ECDSA 키의 타임스탬프를 허용하려면 소프트웨어 공급업체에 문의해야 합니다.

소프트웨어 공급업체가 일반 엔드포인트를 사용하도록 허용할 방법이 없는 경우 이 레거시 엔드포인트를 사용할 수 있습니다. http://ts.ssl.com/legacy RSA Timestamping Unit에서 타임스탬프를 가져옵니다.

기타 옵션

다른 중요한 SignTool 옵션은 다음과 같습니다.

  • /d: 서명 된 코드에 대한 설명을 추가하십시오. 예를 들어 /d "test code".
  • /du: 서명 된 코드에 대한 확장 된 설명이 포함 된 URL을 추가하십시오. 예를 들어 /du https://your_website.tld/project/description.

위의 모든 옵션을 사용하지만 생략 /a, /sha1/f 인증서의 주체 이름을 /n명령 줄은 다음과 같습니다.

signtool.exe 서명 / n "예제"/ fd sha256 / tr http://ts.ssl.com / td sha256 / d "테스트 코드"/ du https : //your_website.tld/project/description "C : \ path \ to \ MyExecutable.exe "

서명 확인

이 명령을 사용하여 서명 된 코드를 확인합니다 ( /pa 옵션이 명령에 있어야 함) :

. \ signtool.exe 확인 / pa "C : \ path \ to \ MyExecutable.exe"

파일이 성공적으로 서명 된 경우 다음과 같은 출력이 표시됩니다.

파일 : C : \ path \ to \ MyExecutable.exe 인덱스 알고리즘 타임 스탬프 ================================= ===== 0 sha256 RFC3161 성공적으로 확인 됨 : C : \ path \ to \ MyExecutable.exe

아이콘을 마우스 오른쪽 버튼으로 클릭하고 선택하여 파일이 서명되었는지 확인할 수도 있습니다. 등록 메뉴에서 디지털 서명 탭. 서명을 선택하고 세부 정보 버튼을 클릭합니다.

디지털 서명

여기에서 파일에 28 년 2020 월 XNUMX 일 SSL Corp에서 만든 유효한 디지털 서명이 포함되어 있음을 알 수 있습니다.

디지털 서명 세부 정보

Executable로 서명 SSL Manager

보다 그래픽 기반의 접근 방식을 선호한다면 SSL.com의 사내 소프트웨어, SSL Manager파일에 서명합니다. 많은 고객이 사용하는 것을 선호합니다 SSL Manager 하나의 통합 인터페이스에서 모든 인증서에 쉽게 액세스 할 수있는 추가 이점을 제공하기 때문입니다. 다운로드 및 설치 지침 SSL Manager우리를 참조하십시오 설치 설명서.

실행 파일에 서명하려면 다음을 선택하여 시작하십시오. 코드 서명> 서명 및 타임 스탬프 코드 패키지 에 SSL Manager의 메뉴.

서명 및 타임 스탬프 코드 패키지

코드 서명 양식에서 실행 파일 및 코드 서명 인증서 (파일 또는 인증서 저장소에서)와 사용 가능한 타임 스탬프 서버 중 하나를 선택할 수 있습니다. 완료되면 기호 버튼을 눌러 코드에 서명하십시오. PFX 파일에서 인증서를로드하는 경우 파일의 암호를 입력해야합니다. EV 코드 서명 인증서를 사용하는 경우 USB 토큰의 PIN을 입력하라는 메시지가 표시됩니다.

코드 서명 외에 SSL Manager 많은 강력한 기능을 제공합니다. 자세한 내용은 SSL Manager의 문서, 특히 코드 서명 메뉴.

SSL.com을 선택해 주셔서 감사합니다! 문의 사항이 있으시면 이메일로 연락주십시오. Support@SSL.com, 전화 1-877-SSL-SECURE페이지 오른쪽 하단에있는 채팅 링크를 클릭하십시오.

SSL.com의 뉴스 레터 구독

SSL.com의 새로운 기사 및 업데이트를 놓치지 마십시오

최신 정보를 얻고 보안을 유지하세요

SSL.com 사이버 보안 분야의 글로벌 리더입니다. PKI 그리고 디지털 인증서. 최신 업계 뉴스, 팁, 제품 공지 사항을 받아보려면 등록하세요. SSL.com.

우리는 귀하의 피드백을 환영합니다

설문조사에 참여하여 최근 구매에 대한 의견을 알려주세요.