CodeSign Secure Documentation
  • Overview
    • About CodeSign Secure
    • Getting Started
    • Documentation Guide
    • Portal Overview
    • Troubleshooting
      • FAQ
    • Glossary
  • Reference Guide
    • Header Bar
      • CodeSign Secure Documentation
      • Swagger API
      • Profile Section
    • Dashboard
      • Key Performance Indicators
      • Issued Certificates
      • Signatures Generated
      • HSM Health Check
    • Keys and Certificates
      • Key and Certificate Lifecycle
    • App Management
    • Signing Requests
      • Approval Workflows
    • Signing Tools
    • Reports
      • Signing Request Report
      • Audit Trail
      • Certificate Report
      • Client Report
    • Logs
    • System Setup
      • Identity Store
      • Backup
      • User
      • Roles and Permissions
      • Email
      • Signing Projects
      • SSL/TLS Management
      • Environment
      • Plugins
  • Setup & Architecture
    • Identity and Access Control
    • Architecture and Concepts
    • Installation
      • Windows
        • Installing the Server
        • Ports and Protocols
        • High Availability and Backup
        • Upgrades and Compatibility
    • Security
      • Security Hardening Checklist
      • Client Authentication
      • Designing Signing Policies
  • Release Notes
    • Releases for 2026
      • v3.2.1
    • Releases for 2025
      • v3.2.0
    • Releases for 2024
      • v3.1.0
  • API Reference
    • Getting Started
    • Authorizing Requests
    • Securing API Access
    • Request and Response Conventions
    • Endpoint Reference
      • Signing
      • Signing Requests
      • Certificates
      • Applications and Environments
      • User Management
      • Permissions
      • Email
      • System Setup
      • Reports
      • Dashboard
      • License
  • Integration Guides
    • Signing Capabilities
      • Supported Formats and Platforms
      • Timestamping
      • Windows Signing - SignTool
        • Signing
        • Macro Signing
      • Apple Signing
      • AppX & MSIX Signing
      • Visual Studio ClickOnce
      • Jar Signing
      • Sign HLK/HCK using CodeSign Secure
      • NuGet Signing
      • Mage Signing
      • Sign OVA/OVF using Encryption Consulting’s Utility Tool
      • Utility Tool for code signing
      • Container Signing
      • PKCS11 Wrapper
        • APK Signing
        • OpenSSL Signing
        • XML Signing
        • JSign Tool Signing
        • Jarsigner Signing
        • GPG2, Debian & RPM Signing
      • Reproducible Build
        • Automated Hash Validation
        • Reproducible Build Process Flow
        • Pipeline Script Components
        • Hash Validation
    • CI/CD Integration
      • GitHub Actions
      • Jenkins
      • GitLab
      • Azure DevOps
      • TeamCity
      • Bamboo
      • Securing CI/CD Credentials

Key and Certificate Lifecycle

Create, use, monitor, renew and retire signing keys and certificates in CodeSign Secure.

Lifecycle at a glance
  1. Create a key pair in the HSM with a self-signed certificate or a CSR.

  2. Assign the certificate to an environment and map it to teams in an application.

  3. Use it from build machines through the client tools.

  4. Monitor expiry with triggers, the Dashboard and the Certificate Report.

  5. Renew before it expires.

  6. Retire it by deactivating it once it is no longer needed.

Create a key and certificate
MethodKey generated in the HSMEnvironment chosenUse for
Self Signed CertificateYesOn the formInternal testing and development. Operating systems don’t trust these certificates.
Certificate Signing Request (CSR)Yes, a new key pair every timeWhen you import the issued certificatePublicly trusted or enterprise-CA certificates for production
Import CertificateNo, it uses the key created with the CSROn the formUploading the certificate your CA issued for a CSR created in CodeSign Secure
Supported key algorithms
AlgorithmOptions in the Key Algorithm list
RSA2048, 3072, 4096 bits
ECDSAP-256, P-384, P-521 (shown as 256, 384 and 521)

Note: Public certificate authorities require code-signing RSA keys of at least 3072 bits. Check which ECDSA curves your CA accepts before you generate the CSR.

Self Signed Certificate fields
FieldRequiredDescription
Certificate NameYesThe name shown in CodeSign Secure
Common NameYesCertificate subject CN, usually your organization or product publisher name
Organization, Organization UnitYesSubject O and OU
Valid From, Valid ToYesValidity period
EnvironmentYesThe environment whose approval policy applies. Only active environments are listed.
Certificate DescriptionYesFree text
Country Code, State/Province, Locality, EmailYesSubject C, ST, L and email address. The country code is two letters.
Key AlgorithmYesRSA 2048/3072/4096 or ECDSA 256/384/521. Default RSA 4096.
Reproducible Build Key UsageNoNone (default), Pre-Sign Hash Validation or Post-Sign Hash Validation
Key RenewalNoTrue reissues the certificate with the same key in the HSM when it is renewed. Available for self-signed certificates only.
Certificate Signing Request fields

The CSR form has the same subject fields as the self-signed form (Certificate Name, Common Name, Organization, Organization Unit, Certificate Description, Country Code, State/Province, Locality, Email), plus Key Algorithm and Reproducible Build Key Usage. It has no validity dates, because the CA sets them, and no environment, which you choose when you import the issued certificate.

Import Certificate fields
FieldRequiredDescription
Certificate NameYesThe file name of the uploaded certificate. This should match the certificate name used when creating the CSR.
EnvironmentYesThe environment whose approval policy applies
Certificate FileYesThe certificate your CA issued for a CSR created in CodeSign Secure
Certificate DescriptionYesFree text
Reproducible Build Key UsageNoNone, Pre-Sign Hash Validation or Post-Sign Hash Validation
Assign and use the certificate
  • Each certificate belongs to one environment. Change it with right-click > Edit Environment. Only active environments can be selected.

  • A certificate appears in App Management’s team mapping only after it has an environment.

  • Only members of teams mapped to the certificate can sign with it.

Monitor expiry
  • Setup Trigger: right-click the certificate, enter Additional Email IDs and Trigger Days. The alert is sent that many days before expiry. Set at least 30 days so there is time to renew.

  • Dashboard: the Certificates Issued chart shows Active, Inactive, and Expired certificates over the last four months.

  • Certificate Report: the expiry chart groups certificates into 0–7, 7–30, 30–60, 60–90 and 90+ days.

  • When a certificate passes its end date, its status becomes Expired, and it can no longer be used to sign.

Renew a certificate
Self-signed certificates

If Key Renewal is True, CodeSign Secure reissues the certificate with the same key in the HSM. After a renewal, download the new certificate and replace the old copy wherever it is used, for example, the file passed to SignTool with /f.

CA-issued certificates

Renewing a CA-issued certificate creates a new key, because every CSR generates a new key pair in the HSM.

  1. Generate a new CSR in Keys and Certificates and submit it to your CA.

  2. Import the issued certificate and select the environment.

  3. In App Management, edit each application that used the old certificate and map the new certificate to the same teams.

  4. Update pipelines and build machines with the new key name or label and the new certificate file.

  5. Sign and verify a test file with the new certificate.

  6. Deactivate the old certificate once nothing uses it.

Tip: Files signed with a timestamp stay valid after the old certificate expires. You don’t need to re-sign them. See Timestamping.

Deactivate and retire
  • Deactivate (right-click > Activate/Deactivate) stops the certificate from being used for new signing requests without deleting the key. You can activate it again later.

  • If your policy requires a key to be destroyed, the HSM administrator removes it on the HSM after you confirm it is no longer needed.

  • Revocation is done by the CA that issued the certificate. After the CA revokes it, deactivate the certificate in CodeSign Secure. Depending on the revocation date the CA sets, signatures made after that date are no longer trusted.

Publicly trusted code-signing certificates
  • Since 1 June 2023, the CA/Browser Forum requires private keys for publicly trusted code-signing certificates to be generated and stored in certified hardware. CodeSign Secure generates keys inside a FIPS 140-2 Level 3 HSM.

  • Some CAs ask for key attestation, which is proof that the key was generated in an HSM. Attestation is produced with the HSM vendor’s tools and also in CodeSign Secure reports. Ask your CA which format it accepts, and contact Encryption Consulting if you need help collecting it for a key created in CodeSign Secure.

On this Page:
Support Privacy Policy Terms of Service

Copyright Encryption Consulting LLC. All rights reserved.