내비게이션
원격 코드 서명 서비스는 다양한 클라이언트, 시스템 Provider, 개발 인터페이스 및 자동화 통합 방식을 제공합니다.
어떤 방식을 선택해야 할지 확실하지 않다면 사용 시나리오에 따라 아래에서 시작할 수 있습니다.
통합 방식 선택 방법
| 사용 시나리오 | 권장 방식 |
|---|---|
| 공식 명령줄 도구를 사용하여 EXE, DLL, MSI 등 파일에 직접 서명 | 클라이언트 도구 |
| macOS에서 Homebrew를 통해 코드 서명 클라이언트 설치 | 클라이언트 도구 |
| Microsoft SignTool, Visual Studio, MSBuild 등 Windows 도구에서 원격 개인 키를 직접 사용해야 하는 경우 | Windows Provider |
| 기존 Windows CryptoAPI / CSP 애플리케이션과의 호환이 필요한 경우 | Windows Provider |
jarsigner를 사용하여 Java JAR 파일에 서명 | Java 통합 |
| GitHub Actions에서 코드 서명 자동 완료 | CI/CD 및 빌드 도구 |
| Electron Builder를 사용하여 Windows 애플리케이션 서명 자동 완료 | CI/CD 및 빌드 도구 |
| Advanced Installer를 사용하여 설치 패키지 빌드 및 서명 | CI/CD 및 빌드 도구 |
| 클라이언트를 직접 개발하거나 원격 서명 서비스를 직접 호출 | API 통합 |
| 서명 횟수, 타임스탬프 서버 등 공개 정보 조회 | 참고 자료 |
클라이언트 도구
sslTrus 공식 클라이언트를 직접 사용하여 코드 서명을 완료하려는 사용자에게 적합합니다.
주요 내용:
- SignTool CLI: 명령줄을 통해 직접 파일에 서명합니다.
- 서명 한도 조회: 인증서의 남은 서명 횟수와 총 서명 횟수를 조회합니다.
- 클라이언트 업데이트: 최신 버전을 조회하고 설치합니다.
- Homebrew: macOS에서 CLI 또는 데스크톱 클라이언트를 설치합니다.
Windows Provider
Microsoft SignTool, Visual Studio, MSBuild, 설치 패키지 도구 및 Windows Cryptography API를 지원하는 기타 소프트웨어에 적합합니다.
두 가지 Provider를 제공합니다:
- KSP(Key Storage Provider): Windows CNG 기반으로, 최신 Windows 서명 흐름에 적합합니다.
- CSP(Cryptographic Service Provider): 기존 CryptoAPI 기반으로, CSP 호환성이 필요한 애플리케이션에 적합합니다.
서명 개인 키는 항상 클라우드 HSM에 저장되며, 로컬 Provider는 서명 요청을 원격 코드 서명 서비스로 전송하는 역할을 합니다.
Java 통합
Java 코드 서명 시나리오에 적합합니다.
sslTrus가 제공하는 Java Provider를 통해 표준 jarsigner 도구를 사용하여 JAR 파일에 원격 코드 서명을 수행할 수 있습니다.
CI/CD 및 빌드 도구
코드 서명을 자동 빌드, 릴리스 또는 패키징 프로세스에 통합해야 하는 시나리오에 적합합니다.
현재 포함된 항목:
- GitHub Actions
- Electron Builder
- Advanced Installer
추후 다른 CI/CD 또는 빌드 도구의 통합 방법도 이 페이지에서 제공될 예정입니다.
API 통합
코드 서명 클라이언트를 직접 개발하거나 원격 서명 기능을 기존 시스템에 통합해야 하는 개발자에게 적합합니다.
원격 코드 서명 API는 다음을 지원합니다:
- 서명할 다이제스트를 제출하고 서명 결과를 받습니다.
- 클라이언트의 최종 서명 처리 상태를 보고합니다.
호출 측은 로컬에서 파일 다이제스트 계산, 서명 구조 처리 및 최종 서명 결과 기록을 완료해야 합니다.
참고 자료
다양한 통합 방식에 적용할 수 있는 공통 참고 정보를 제공합니다:
- 서명 횟수 계산 설명: CLI, KSP, CSP, Jarsigner, Electron 및 설치 패키지 등 시나리오에서 서명 횟수를 계산하는 방법을 설명합니다.
- 타임스탬프 서버: Authenticode, RFC 3161 및 일반적으로 사용되는 코드 서명 타임스탬프 서비스를 소개합니다.