Code Signing med Jsign
Jsign är ett gratis signeringsverktyg med öppen källkod, baserat på Java. Det är den ultimata schweizerkniven för code signing: stöder USB-tokens (PKCS#11), Azure Key Vault, Google Cloud KMS, AWS KMS och lokala nyckelarkiv. Körs på Windows, Linux och macOS.
Jsign är det enda signeringsverktyget som stöder alla stora cloud HSM-leverantörer i ett enda verktyg. Perfekt för CI/CD-pipelines där du vill ha ett verktyg som fungerar oavsett nyckelarkiv.
Vad är Jsign?
Jsign är ett open source-projekt (Apache 2.0-licens), underhållet på GitHub. Det är skrivet i Java och kräver Java 8 eller nyare (OpenJDK rekommenderas).
Jsign stöder Authenticode-signering av Windows-filer (.exe, .dll, .msi, .msix, .cab, .ps1), Java-artefakter (.jar, .war, .ear) och flera andra format. Det är det mest versatila signeringsverktyget som finns.
Stödda nyckelarkiv
USB-token (PKCS#11)
SafeNet eToken, YubiKey, Thales Luna. Kräver PKCS#11-drivrutin installerad lokalt.
Azure Key Vault
Via Azure SDK. Autentisering med service principal eller managed identity.
Google Cloud KMS
Via GCP SDK. Autentisering med service account.
AWS KMS
Via AWS SDK. Autentisering med IAM credentials eller instance role.
Lokalt nyckelarkiv
PKCS#12 (.pfx/.p12), JKS, Windows certificate store.
Installation
Ladda ner JAR: Hämta den senaste versionen från Jsign GitHub Releases ↗ och kör direkt:
java -jar jsign.jar sign --help
Maven/Gradle: Jsign kan också användas som dependency i ditt build-system för automatisk signering som del av din build-pipeline.
Kräver Java 8 eller nyare. OpenJDK rekommenderas. Ladda ner från adoptium.net ↗.
Exempel på signering
USB-token (PKCS#11)
jsign --storetype PKCS11 \ --storepass "your-pin" \ --alias "your-cert" \ --tsaurl http://timestamp.digicert.com \ MyApp.exe
Azure Key Vault
jsign --storetype AZUREKEYVAULT \ --storepass "client-secret" \ --keystore "your-vault" \ --alias "cert-name" \ --tsaurl http://timestamp.digicert.com \ MyApp.exe
Google Cloud KMS
jsign --storetype GOOGLECLOUD \ --keystore "projects/my-project/locations/global/keyRings/my-ring" \ --alias "my-key" \ --certfile cert.pem \ --tsaurl http://timestamp.digicert.com \ MyApp.exe
AWS KMS
jsign --storetype AWS \ --keystore "us-east-1" \ --alias "alias/my-key" \ --certfile cert.pem \ --tsaurl http://timestamp.digicert.com \ MyApp.exe
Jsign vs signtool.exe vs AzureSignTool
| Jsign | signtool.exe | AzureSignTool | |
|---|---|---|---|
| Plattform | Windows, Linux, macOS | Endast Windows | Windows, Linux, macOS (.NET) |
| Nyckelarkiv | USB-token, Azure KV, Google KMS, AWS KMS, lokalt | USB-token, lokalt nyckelarkiv | Endast Azure Key Vault |
| Beroende | Java 8+ | Ingen (del av Windows SDK) | .NET Runtime |
| Licens | Open source (Apache 2.0) | Microsoft (proprietar) | Open source (MIT) |
| Java-artefakter | Ja (.jar, .war, .ear) | Nej | Nej |
Stödda filtyper
Relaterade signeringsverktyg: SignTool / AzureSignTool | Jsign | Jämför alla →
Code Signing-certifikat för Jsign
OV Code Signing
DigiCert CodeSign OV
DigiCert OV Code Signing. Fungerar med Jsign och alla nyckelarkiv.
GlobalSign CodeSign
GlobalSign OV Code Signing. Fungerar med Jsign och alla nyckelarkiv.
EV Code Signing
Vanliga frågor om Jsign Code Signing
Hitta svar på de vanligaste frågorna om SSL-certifikat och FairSSL.
--tsaurl med en RFC 3161 timestamp-server (t.ex. http://timestamp.digicert.com).Redo att signera med Jsign?
Skapa ett gratis konto och utfärda ditt första certifikat på under 10 minuter.