Navigation
The remote code signing service provides multiple clients, system providers, development APIs, and automation integration methods.
If you are unsure which method to choose, you can start with the following based on your use case.
How to Choose an Integration Method
| Use Case | Recommended Method |
|---|---|
| Use the official command-line tool to directly sign EXE, DLL, MSI, and other files | Client Tool |
| Install the code signing client on macOS via Homebrew | Client Tool |
| Microsoft SignTool, Visual Studio, MSBuild, and other Windows tools need to directly use remote private keys | Windows Provider |
| Need compatibility with legacy Windows CryptoAPI / CSP applications | Windows Provider |
Use jarsigner to sign Java JAR files | Java Integration |
| Automatically complete code signing in GitHub Actions | CI/CD and Build Tools |
| Use Electron Builder to automatically complete Windows application signing | CI/CD and Build Tools |
| Using Advanced Installer to build and sign installation packages | CI/CD & Build Tools |
| Developing your own client or directly calling the remote signing service | API Integration |
| Querying public information such as signing counts and timestamp servers | Reference |
Client Tools
For users who want to use the official sslTrus client directly for code signing.
Key features include:
- SignTool CLI: Sign files directly from the command line.
- Signing quota query: Check the certificate's remaining and total signing count.
- Client update: Query and install the latest version.
- Homebrew: Install the CLI or desktop client on macOS.
Windows Provider
For Microsoft SignTool, Visual Studio, MSBuild, installation package tools, and other software that supports the Windows Cryptography API.
Two providers are available:
- KSP (Key Storage Provider): Based on Windows CNG, suitable for modern Windows signing workflows.
- CSP (Cryptographic Service Provider): Based on the legacy CryptoAPI, suitable for applications that require CSP compatibility.
The signing private key is always kept in the cloud HSM, and the local provider is responsible for sending signing requests to the remote code signing service.
Java Integration
For Java code signing scenarios.
With the Java Provider provided by sslTrus, you can use the standard jarsigner tool to perform remote code signing on JAR files.
CI/CD & Build Tools
For scenarios where code signing needs to be integrated into automated build, release, or packaging workflows.
Currently includes:
- GitHub Actions
- Electron Builder
- Advanced Installer
Integration methods for other CI/CD or build tools will also be provided on this page in the future.
API Integration
For developers who need to build their own code signing client or integrate remote signing capabilities into existing systems.
The remote code signing API supports:
- Submitting a digest to be signed and retrieving the signing result.
- Reporting the client's final signing status.
The caller is responsible for locally computing the file digest, processing the signing structure, and writing the final signing result.
Reference materials
This section provides common reference information applicable to multiple integration methods, including:
- Signature count calculation instructions: Explains how to calculate signature counts in scenarios such as CLI, KSP, CSP, Jarsigner, Electron, and installation packages.
- Timestamp servers: Introduces Authenticode, RFC 3161, and commonly used code signing timestamp services.