728x90
반응형
openssl 1.1.1g기준 입니다.
https://slproweb.com/products/Win32OpenSSL.html
1. OpenSSL을 이용하여 사설 인증서 생성하기
1.1. 개인키 생성
인증서로 실행파일을 코드사이닝 하려면 당연 인증서가 필요하다. OpenSSL명령어를 통해 인증서를 생성해보자. 추가로 비밀번호를 입력 받는다.
openssl genrsa -aes256 -out private.key 2048
private.key파일이 생성된다.
1.2. 인증요청서 생성(CSR)
개인키를 생성하였으면 인증요청서를 만들어준다. 이때 회사이름, 이메일, 국가정보 등을 입력한다.
openssl req -new -in private.key -out req.csr
req.csr 파일이 생성된다.
1.3. 인증서 생성 (CRT)
인증서를 생성해준다.
openssl x509 -req -days 3650 -in req.csr -signkey private.key -out my.crt
my.crt파일이 생성된다.
1.4. 개인키 포함된 PFX인증서 생성
이제 개인키가 포함된 pfx파일을 만들어 준다.
openssl pkcs12 -export -in my.crt -inkey private.key -out mycert.pfx
인증서가 생성되었다.
2. 코드사이닝 하기
Windows에서 코드사이닝을 하려면 signtool이 있어야 한다. signtool은 Visual Studio설치시 같이 설치 된다.
https://docs.microsoft.com/ko-kr/dotnet/framework/tools/signtool-exe
코드사이닝 하는 명령어는 아래와 같다.
signtool.exe sign /f [pfx파일] /p [password] [사이닝할 파일]
https://docs.microsoft.com/en-us/windows/win32/seccrypto/using-signtool-to-sign-a-file
코드사이닝을 완료하고 바이너리 파일을 보면 코드사이닝이 된 것을 볼 수 있다. 하지만 사설인증서라 올바른 인증서가 아닌 것으로 나온다. 무결성 검증여부를 확인할 때만 유용할 것 같다.
728x90
반응형
'개발 > Windows' 카테고리의 다른 글
커널드라이버 Buffered I/O 처리 하기 (MFC, CFile) (0) | 2020.01.03 |
---|---|
장치 드라이버와 커널 오브젝트 (Device Driver & Kernel Object) (0) | 2019.12.30 |
장치 드라이버와 파일의 관계? (0) | 2019.12.30 |
드라이버란 무엇일까? (3) | 2019.12.27 |
NSIS] NSIS 스크립트에서 64비트 32비트 구분하기 (0) | 2019.11.21 |
댓글