Microsoft Authenticode Code Signing Certificate

Microsoft Authenticode is the Windows code signing technology used to digitally sign supported software and establish publisher identity and file integrity. Compare compatible certificate options, providers, pricing, SignTool workflows and Windows verification requirements.

What You Are Actually Buying

Microsoft Authenticode is a Windows signing technology, not a certificate brand sold by Microsoft. A trusted certificate authority issues the compatible code signing certificate, while Microsoft provides SignTool and the Windows verification ecosystem.

Certificate: CA issued. Authenticode: Microsoft technology. SignTool: Microsoft signing and verification utility.

Sign Windows ApplicationsEXE, DLL, MSI and other supported artifacts
Use SignToolSign, timestamp and verify Windows software
Choose a CertificateCompare providers, prices and key protection

Authenticode Certificate Price Comparison

These are CA issued code signing products that can be used with Windows Authenticode. They are not Microsoft issued certificates. Pricing differs by validation, storage, hardware, subscription and region.

ProviderStandard / OV / IVEVKey protectionStatusAction
DigiCertStandard / EV$696/yearStarting price$972/yearEVHardware / KeyLockerCurrent listingView Provider
SectigoOV / EV$536.25/year*Starting priceAvailableEVHardware / managedCurrent listingView Provider
SSL.comIV / OV / EV$129/yearStarting price$349/yearEVToken / eSigner / HSMCurrent listingView Provider
GlobalSignStandard / EV£386/yearStarting priceAvailableEVToken / HSMCurrent listingView Provider
CertumStandard / EV€139 certificate onlyStarting price€329 certificate onlyEVCard / cloudCurrent listingView Provider
IdenTrustOV / EV$225/yearStarting price$281/yearEVHardware / HSMCurrent listingView Provider
HARICAIV / OV / EVQuoteStarting priceQuoteEVHardwareCurrent listingView Provider
eMudhraOV / EVQuoteStarting priceQuoteEVHardware / HSMCurrent listingView Provider
E-TugraOV / EVQuoteStarting priceQuoteEVProvider specificCurrent listingView Provider
ActalisOV€180 + VAT/yearStarting priceNot offeredEVProvider specificCurrent listingView Provider

Pricing note: SSL.com lists IV and OV at $129/year and EV at $349/year. DigiCert lists Standard at $696/year and EV at $972/year. IdenTrust lists $225/year Standard and $281/year EV. Quote based products are not assigned invented prices.

See full certificate comparison

What Is Microsoft Authenticode?

“Microsoft Authenticode Code Signing Certificate” is a common search phrase, but the terminology needs to be precise. Authenticode is Microsoft's technology for signing and verifying supported Windows content. The certificate itself is issued by a certificate authority.

That distinction matters when buying. You are not purchasing an Authenticode certificate from Microsoft. You are purchasing a compatible code signing certificate from a trusted CA and using it with Microsoft's signing tools and Windows trust infrastructure.

When a developer sees a publisher name in Windows file properties, that identity comes from the signing certificate and its trust chain. Windows can then evaluate whether the certificate is trusted, whether the signature matches the file, and whether certificate status information is acceptable. Those checks answer identity and integrity questions. They do not turn the signature into a security review of the application.

Authenticode sits at the Windows file level. The certificate identifies the signer, while the signature binds that identity to the file that was signed. This is why a certificate purchase alone does not complete a Windows release process. You still need a protected private key, a signing method, timestamping, verification, and a release procedure that preserves the signed artifact.

Technology layer

Authenticode defines how supported Windows content carries and exposes a digital signature.

Identity layer

The certificate associates the signature with the publisher identity validated by the certificate authority.

Trust layer

Windows evaluates the signature, certificate chain and applicable trust information during verification.

Authenticode

Microsoft's Windows technology for signing and verifying supported content.

Code signing certificate

A CA issued certificate used to establish the signer identity associated with the signature.

SignTool

Microsoft's Windows SDK utility for signing, verifying, removing signatures and timestamping supported files.

Digital signature

The cryptographic signature embedded into the signed file and associated with the certificate chain.

How Authenticode Works

Authenticode signing starts with the final Windows artifact. The signing process calculates a digest over the relevant content, uses the private key to create the signature and embeds signature information into the file. The certificate and chain provide the identity information evaluated during verification.

Signing should happen after the artifact reaches its final release state. If packaging or another transformation changes the signed content, the resulting signature must be evaluated again.

Verification works in the opposite direction. Windows reads the embedded signature, evaluates the signed content, builds the certificate chain, and applies certificate and trust checks. A timestamp adds evidence about when the signature was created, which becomes important when the signing certificate later expires. The result is a verifiable relationship between a specific file and a signing identity.

The important boundary is the moment the final artifact is signed. Build output can change during packaging, compression, installer creation, or post build modification. If a file changes after signing, its cryptographic relationship with the signature can no longer be treated as the same release artifact. A controlled pipeline therefore makes signing one of the last production steps.

Authenticode signing architecture
Windows FileFinal artifact
→
HashFile digest
→
Private KeyProtected key
→
SignatureCryptographic result
→
CertificatePublisher identity
→
ChainCA trust path
→
WindowsVerification

What Does an Authenticode Signature Prove?

It can establish

The identity represented by the signing certificate, integrity evidence for signed content, the certificate chain and signing-time information when a valid timestamp is present.

It does not establish

That software is malware free, vulnerability free or approved by Microsoft. It also does not guarantee that SmartScreen warnings disappear automatically.

This distinction matters when communicating with users or support teams. A valid signature does not certify the software's business purpose, code quality, vulnerability status, or absence of malicious behavior. A signed installer can still contain a security defect. The signature should therefore be treated as one control in the software release process rather than as a replacement for testing, malware scanning, or application security review.

A useful way to read an Authenticode signature is to separate identity, integrity, and trust. Identity comes from the certificate subject and related certificate information. Integrity comes from the cryptographic signature over the file. Trust comes from the certificate chain and the policies used by the verifying system.

What Files Can Authenticode Sign?

File or softwareAuthenticode relevancePractical note
EXEYesCommon Windows application artifact
DLLYesCan be signed as a separate binary
MSIYesInstaller is a separate release artifact
CABYesCovered by Authenticode signing workflows
OCX / ActiveXYesSupported Windows software scenarios
PowerShell scriptsYesUses Authenticode script signing
MSIX / APPXPackage signing workflowPublisher identity and package rules apply
DriversSeparate Microsoft workflowDo not treat as ordinary application signing

For release teams, the better question is not simply whether a file can carry a signature. It is whether every user facing artifact that could be replaced or modified should be signed. That often includes the main application, installer, update package, helper executable, DLL and scripts that are distributed as part of the product. Signing only the main EXE can leave other release components without publisher integrity information.

Authenticode is commonly associated with Windows executable content, but the practical signing scope is broader than a single EXE. Windows publishers may sign application binaries, installers, libraries, scripts and other supported file types according to the file format and signing workflow being used. The correct command and verification method can vary by artifact.

Authenticode vs Windows Code Signing

TermMeaning
Windows code signingBroad practice of digitally signing Windows software.
AuthenticodeMicrosoft technology used to sign and verify supported Windows content.
Code signing certificateCA issued certificate used to establish signer identity.
SignToolMicrosoft utility used to sign, verify and timestamp supported files.
SmartScreenWindows reputation and security system separate from signature validation.
Trusted RootTrust anchor in the certificate chain.

This distinction also affects how a buyer searches. Someone comparing certificates needs pricing, validation and key storage information. Someone implementing Authenticode needs commands, file support, timestamping, verification and release automation. The two topics overlap at the certificate layer, but they answer different questions and should not be treated as duplicate pages.

Windows code signing is the broader concept of digitally signing Windows software. Authenticode is Microsoft's established signing technology and format used for many Windows artifacts. A page targeting the phrase Windows Code Signing Certificate is therefore usually focused on the certificate purchase, while an Authenticode guide needs to explain the signing mechanism, tooling and verification behavior.

Authenticode Certificate Types

Identity first

Choose the certificate around the publisher identity you need to present. An individual developer and a registered company may have different certificate eligibility and validation paths.

Infrastructure second

After identity is settled, choose how the private key will be protected and how signatures will be requested from the release process.

Individual

For eligible individual publishers whose identity can be validated by the CA.

Organization Validated

For organizations publishing software under a verified business identity.

EV

Uses additional validation and remains relevant to specific Windows driver workflows. It is not automatically required for ordinary EXE, DLL or MSI signing.

For a small publisher, the certificate decision is usually tied to who owns the software and whose name should appear as the signer. For an organization, the legal entity and authorization process become central. For automated releases, the signing architecture can matter as much as the validation level. A lower certificate price does not necessarily mean a lower overall signing cost if the product requires separate hardware or managed signing infrastructure.

The certificate type should be selected from the identity you need to present and the CA validation path you can complete. Individual, organization validated and extended validation products can have different eligibility, pricing and issuance requirements. The product label alone should not determine the choice because storage and signing workflow can change the total implementation effort.

Authenticode Certificate Requirements

CA validation

The CA validates the certificate subject according to the selected product.

Code Signing EKU

SignTool documents the Code Signing EKU as 1.3.6.1.5.5.7.3.3.

Private key

The signer needs controlled access to the private key.

Certificate chain

The signer certificate must chain through applicable intermediates and trusted roots.

Current validity

The certificate must be appropriate for the signing operation and status rules.

Signing algorithm

Use current digest and signing requirements, including SHA-256 in current SignTool workflows.

Requirements also continue after issuance. The certificate is only useful if its private key can be accessed through an approved signing environment and the resulting signature can be verified by the target Windows systems. Before buying, confirm the supported key storage model, certificate export rules, signing method, renewal process and compatibility with the build or release environment.

Certificate issuance normally requires the applicant to prove the identity represented by the certificate. The exact evidence varies by certificate type and certificate authority, so the buyer should review the current enrollment requirements before placing an order. Organization details, business records, applicant authorization and contact verification can all affect the issuance timeline.

Authenticode Private Key Requirements

The private key is the part of the signing system that must be protected. A certificate can be public, but possession of its corresponding private key allows someone to create signatures that represent that certificate identity.

A developer laptop with an exportable key may be useful for controlled testing, but production release signing is better isolated through hardware tokens, HSMs, cloud HSMs, remote signing or managed cloud signing where appropriate.

For a developer signing from one workstation, a hardware token can provide a practical boundary around the key. A team with automated releases may need cloud signing, an HSM or a managed remote signing service so the build system can request signatures without receiving a reusable private key. The right design depends on release frequency, number of users, automation requirements and the consequences of unauthorized signing.

The private key is the part of the signing system that must receive the strongest protection. The certificate can be copied and inspected because it is public information, but the private key must remain under controlled access. Current code signing practices increasingly rely on hardware backed or managed signing environments rather than portable private key files.

Stage 01
Create

Generate or provision the signing key inside the approved key protection boundary.

Stage 02
Authorize

Limit who or what release process can request a production signature.

Stage 03
Sign

Use the protected key without exporting a reusable private key file.

Stage 04
Audit

Retain signing records so production signatures can be traced to a release.

Hardware token

Controlled manual signing with protected key custody.

HSM

Centralized enterprise key protection and signing.

Cloud signing

Automated signing without exporting the production key to build machines.

How to Sign an EXE With Authenticode

Build the final EXE, complete testing, sign the exact artifact that will be distributed, timestamp it and verify the result before publication. The private key should remain in the approved signing environment.

For a local workflow, the command can be simple, but the surrounding controls matter. The developer should know which certificate is selected, where the private key is stored, which digest algorithm is used, which timestamp authority is configured and how verification is performed. In CI/CD, the same logical sequence should be implemented without exposing the production key to the build runner.

Start with the exact EXE that will be delivered to customers. Finish compilation, packaging changes and release testing before the production signature is applied. Then use SignTool or an approved signing service to create the signature, add a timestamp and verify the resulting file. Store the verified output as the release artifact instead of rebuilding or modifying it after signing.

EXE signing workflow
ObtainCertificate
→
ProtectPrivate key
→
BuildFinal EXE
→
SignSHA-256
→
TimestampRFC 3161
→
VerifySignature
→
ReleaseExact file
Basic SignTool pattern
signtool sign /fd SHA256 /a MyApp.exe

SignTool

SignTool is Microsoft's command line utility for signing, verifying and timestamping supported Windows files. It is included with the Windows SDK and is used in workstations and automated release systems.

Current Microsoft documentation requires explicit digest configuration in modern workflows and documents SHA-256, RFC 3161 timestamping and the Code Signing EKU.

The exact SignTool syntax depends on the certificate store, token, HSM or signing service being used. Microsoft documents options for signing, verification and timestamping, including modern SHA-256 file digest configuration and RFC 3161 timestamping. Teams should pin the Windows SDK and SignTool version used in production so a future tool update does not silently change a release process.

SignTool is useful because it makes the signing operation explicit and scriptable. Instead of relying on a graphical certificate dialog, a release process can specify the file, digest algorithm, certificate selection, timestamp method and verification command. This makes the signing step easier to reproduce and easier to audit.

SIGNINGsigntool sign /fd SHA256 /a MyApp.exe
VERIFICATIONsigntool verify /pa /all MyApp.exe

sign

Creates a signature using the selected certificate and private key.

verify

Checks a signature and certificate under the selected verification policy.

timestamp

Adds timestamp information using a timestamp authority.

Authenticode SignTool Commands

Sign
signtool sign /fd SHA256 /a MyApp.exe
RFC 3161 timestamp
signtool timestamp /tr <RFC3161-URL> /td SHA256 MyApp.exe
Verify
signtool verify /pa MyApp.exe

Certificate selection, private key provider and timestamp URL are environment-specific.

A useful validation step is to verify every artifact immediately after signing rather than waiting until the release is published. This catches certificate selection mistakes, missing timestamps, invalid chains and file changes while the release team can still replace the artifact. The final pipeline should publish the exact file that passed verification.

Most production workflows have three logical command groups: sign the artifact, add a trusted timestamp, and verify the result. The command itself is only one part of the control. The certificate selection mechanism must point to the intended production identity and the private key operation must occur inside the approved key protection boundary.

How to Sign an MSI With Authenticode

Generate the final MSI first, then sign it. If a later packaging step changes the MSI, the signature applies to an earlier artifact and the release should be rebuilt and signed again.

Verify the exact MSI that will be distributed. Signing the installer does not automatically mean every EXE or DLL installed by it is signed.

A release pipeline should therefore decide which layers require signatures. A common approach is to sign application binaries during the build or packaging process, create the final MSI, sign the MSI as the distributable package, timestamp the relevant signatures and verify the final installer. This avoids signing an intermediate package and then changing it during the final release step.

An MSI is a distribution package, so its signature should be considered separately from the signatures on executables contained inside it. Signing the installer gives the package its own publisher identity and integrity signal. If the installer contains unsigned binaries, those files remain separate trust decisions when they are extracted or executed.

How to Sign a DLL With Authenticode

DLL files can be signed using the same Authenticode certificate and SignTool model. Sign the final DLL after compilation and transformations are complete, then verify the exact file used in distribution.

The signing point should be after the DLL has reached its final binary state. If post build tooling changes the file, the signature needs to be applied again. Teams distributing several DLLs should also define whether every release component is signed and verify the complete set before packaging the final installer or update.

DLLs are often overlooked because users may not launch them directly, but they can be critical components of a Windows application. A signed DLL gives the file its own publisher and integrity information. This can be especially useful when the DLL is distributed independently, loaded by multiple applications, or delivered through an update system.

Authenticode and PowerShell

PowerShell scripts can carry Authenticode signatures. The signature gives users and PowerShell a way to inspect the signer and detect later changes. Execution policy can affect script behavior, so test the signing process in the target environment.

For a software publisher, script signing is most useful when scripts are part of a controlled product or administration package. Keep the signing identity consistent with the publisher identity used for the rest of the release, timestamp signatures where appropriate, and verify the script after signing. Do not treat a signed script as a substitute for reviewing the commands it contains.

PowerShell introduces a different signing workflow because scripts are interpreted text rather than PE binaries. Authenticode compatible signing can be used for PowerShell scripts, but script signing does not make the script itself trustworthy by default. Execution policy, local policy, certificate trust and the script's source still influence what happens on a Windows system.

Sign and inspect
Set-AuthenticodeSignature -FilePath .\Deploy.ps1 -Certificate $certGet-AuthenticodeSignature .\Deploy.ps1

Authenticode and Windows App Packages

MSIX and APPX packages have package specific signing requirements. The certificate identity must correspond to the publisher identity expected by the package.

For MSIX packages submitted through the Microsoft Store, Microsoft handles final signing after certification. For Win32 MSI or EXE installers submitted through the Store, the publisher remains responsible for Authenticode signing the installer.

For Store distributed applications, Microsoft may apply platform specific signing or submission requirements. For software distributed outside the Store, the publisher remains responsible for meeting the signing requirements of the selected package format. Confirm the current Microsoft packaging documentation before designing the release pipeline because package signing rules can change independently of traditional PE file signing.

Windows app packaging can involve MSIX, APPX and other package specific signing requirements. The package format determines how the signature is created and how Windows evaluates the package. This means an Authenticode discussion should not assume that every Windows application is signed with exactly the same command sequence as a traditional EXE.

MSIX

Package signing and publisher identity are part of deployment.

APPX

Uses the Windows app package signing model.

Store Win32

MSI and EXE installers still require publisher signing.

Authenticode and SmartScreen

Authenticode validation and SmartScreen reputation are separate mechanisms. A valid signature identifies the publisher and supports integrity checking, but it does not guarantee that SmartScreen will show no warning for a new file.

Microsoft's current guidance states that EV certificates are no longer recommended specifically as a SmartScreen bypass. EV signed files now go through the same reputation building process as OV signed files.

This is important for marketing claims. Avoid promising customers that purchasing an EV certificate automatically removes SmartScreen warnings. Microsoft has changed how SmartScreen evaluates signed software over time, and current Microsoft documentation no longer presents EV as a general SmartScreen bypass. The release team should focus on valid signing, clean distribution, consistent publisher identity and current Microsoft guidance.

SmartScreen and Authenticode are related but they are not the same system. A valid code signing certificate can provide publisher identity and signature integrity, while SmartScreen uses broader reputation and security signals. A signed file can therefore still produce a warning, especially when the application or publisher has limited reputation or other risk signals are present.

Keep the trust signals separate

Certificate validity, publisher identity, file integrity and SmartScreen reputation are different checks. A signing certificate establishes a cryptographic publisher relationship, while Windows security features can consider additional signals before presenting a user decision.

Do not promise an automatic SmartScreen bypass because a customer purchased EV.

Authenticode vs Smart App Control

Smart App Control uses Windows code integrity and Microsoft app intelligence to make execution decisions. Microsoft documents trusted code signing as one of the signals considered when app intelligence cannot make a safety prediction.

For protected devices, certificate compatibility therefore matters beyond ordinary signature validation.

Microsoft currently documents RSA based certificates for Smart App Control compliance and identifies Trusted Signing as a preferred signing route. If Smart App Control is part of the target environment, certificate algorithm choice becomes an architectural requirement rather than a minor certificate detail. Test the actual release artifacts on supported Windows versions before committing to a certificate profile.

Smart App Control is a separate Windows protection feature with its own requirements and enforcement model. Authenticode signatures contribute to the trust information Windows can inspect, but Smart App Control does not simply mean that every Authenticode signed file will be allowed.

RSA vs ECC for Authenticode

RSA and ECC should not be treated as interchangeable for every Windows protection feature. Microsoft currently states that Smart App Control's signature check supports RSA based digital certificates and does not currently support ECC signatures.

This does not make ECC universally unusable for Windows signing. It means publishers targeting Smart App Control protected devices should account for the current RSA requirement.

ECC can be attractive in other PKI environments because of its cryptographic characteristics, but compatibility should be established against the exact Windows artifact, signing tool, certificate chain and target protection feature. If Smart App Control compliance is required, Microsoft currently documents RSA based digital certificates for that scenario. The certificate algorithm should therefore be selected from the platform requirements first.

Certificate algorithm choice matters because Windows signing features do not all have identical support. RSA remains the safer compatibility choice when the software must work across broad Windows signing scenarios, especially where Microsoft documentation specifies RSA based certificates.

RSA

Use when broad Windows compatibility or a Microsoft documented RSA requirement is part of the target environment. Confirm the exact Windows feature before purchase.

ECC

Do not select ECC only because it is available from a CA. Validate support across the artifact type, signing tool, certificate chain and Windows security feature you actually need.

Buying question: if Smart App Control compatibility matters, confirm the signing certificate uses RSA.

Authenticode Timestamping

Timestamping records information about when the signature was applied. RFC 3161 timestamping is used in modern code signing workflows and is important for software that remains available after certificate expiration.

A timestamp is not a universal override for revocation. Certificate status and applicable trust rules still matter.

Use RFC 3161 timestamping for modern automated signing workflows and configure the timestamp digest explicitly. Timestamp every production artifact that is expected to remain in circulation for a long period, especially installers and applications that customers may keep after the certificate itself has expired.

A timestamp separates the signing event from the future lifetime of the certificate. When a valid timestamp is present, verification can use the timestamp information to establish that the signature was created while the certificate was valid, subject to the applicable trust and revocation rules.

Sign

The final artifact receives the code signing signature.

Timestamp

A timestamp authority records the signing event.

Release

The timestamped file becomes the published artifact.

Later verification

Verification can evaluate the signing time alongside certificate status.

Timestamped release
FileFinal artifact
→
SignPrivate key
→
TimestampRFC 3161
→
VerifyChain + status
→
PublishRelease

How Windows Verifies an Authenticode Signature

Windows evaluates the file signature, signer certificate and certificate chain, then considers certificate status, trust and applicable timestamp information.

A failure at any layer can change the result. A file can have a certificate attached but fail integrity verification because it changed after signing. A certificate can be structurally valid but fail trust evaluation. A signature can also be valid while the application still triggers a security warning because the operating system considers other reputation or threat signals.

Verification is a chain of checks rather than a single yes or no operation. Windows can inspect the embedded signature, recalculate the file digest, validate the certificate chain, evaluate certificate status and apply the trust policy relevant to the system and application.

Verification path
Signed FileArtifact
→
SignatureCryptographic check
→
SignerCertificate
→
IntermediateCA
→
RootTrust anchor
→
StatusValidity
→
TimestampSigning time
→
WindowsResult

How to Verify Authenticode Signatures

Check the fileVerify that the signature matches the exact artifact being released.
Check the certificateInspect the publisher identity, chain and certificate status.
Check the timestampConfirm that the production signature carries the intended timestamp evidence.
Check the release copyVerify the same file that is uploaded to the distribution system.

Windows Explorer

Open Properties and inspect Digital Signatures and certificate details.

SignTool

Use signtool verify /pa MyApp.exe for command line verification.

PowerShell

Use Get-AuthenticodeSignature .\MyApp.exe to inspect the signature.

Verify the exact files that will be published. If a CDN, packaging system or update service transforms the artifact after signing, the verification result for the original file does not automatically prove the integrity of the transformed file. Store checksums and release metadata alongside the verified artifact so support teams can reproduce the same validation later.

Verification should be part of the release process, not a manual check performed only after a customer reports a problem. The release team can use SignTool or Windows file properties to inspect the signature, certificate chain and timestamp. Automated verification is particularly useful when one build produces many installers, DLLs or update packages.

Authenticode Certificate Expiration

Expiration affects future signing operations, but it should not be described as an automatic invalidation of every previously signed file. Timestamp information can preserve signing-time evidence subject to applicable trust and revocation rules.

Plan renewal before the current certificate becomes a release bottleneck and test the replacement signing configuration before production use.

Expiration still creates operational work. The publisher must renew the certificate, provision the new key, update the signing service or token configuration and test the new chain before the old certificate becomes a release blocker. Maintain a certificate inventory with renewal dates, responsible owners and the products using each signing identity.

Certificate expiration does not mean every historical signature immediately becomes meaningless. Timestamped signatures can provide evidence that signing occurred while the certificate was valid, subject to certificate status and trust rules applied during verification. This is why timestamping should be treated as a standard production step rather than an optional convenience.

Authenticode Certificate Revocation

A CA can revoke a certificate for private key compromise, misissuance, subscriber request or other policy reasons. Revocation is different from expiration and can affect verification according to certificate status and platform rules.

Do not claim that timestamping makes a revoked signature universally valid.

If a signing certificate is revoked, the response must cover both the certificate and the signing key. Stop production signing with the affected identity, preserve incident records, determine which releases were signed with it, contact the CA and replace the signing credentials. The exact treatment of previously signed files depends on timestamping, revocation evidence and the verification environment.

Revocation is different from expiration. A revoked certificate has been invalidated before its normal end date because the issuing authority has determined that it should no longer be trusted. Key compromise is one important reason for revocation, but the applicable CA policy defines the circumstances and process.

Authenticode Errors

Publisher could not be verified

Check signer certificate, chain and Windows trust.

Signature invalid

Check whether signed content changed after signing.

Certificate expired

Check validity and timestamp information.

Certificate revoked

Check certificate status and incident history.

Chain error

Check intermediate and trusted root certificates.

Timestamp error

Check RFC 3161 configuration and timestamp response.

SignTool error

Check certificate selection, key provider and digest parameters.

SmartScreen warning

Remember reputation is separate from signature validation.

Invalid certificate usage

Check the certificate EKU and signing purpose.

For example, a successful signing command does not prove that a customer machine will trust the signature. Conversely, a certificate chain warning does not necessarily mean the private key is broken. Capture the exact SignTool output, Windows version, certificate details and file hash when troubleshooting so the issue can be reproduced instead of guessed.

Authenticode errors are easier to troubleshoot when the failure is classified first. Ask whether the problem is file integrity, certificate selection, chain trust, timestamping, revocation, key access or platform policy. This prevents teams from replacing a certificate when the real problem is an unsigned dependency or a changed artifact.

Authenticode in CI/CD

Windows publishers can automate Authenticode signing after build and test. The production private key should remain in a protected signing environment rather than being copied to every build runner.

The pipeline should sign the final artifact, timestamp it, verify it and publish the same verified artifact.

Authorization should be separate from compilation. A developer who can change source code should not automatically receive unrestricted access to the production signing identity. Use protected branches, release approvals, signing service permissions, audit logs and environment separation to make the production signature a controlled release action.

Automated signing works best when the build system requests a signature without receiving the production private key. The build produces the artifact, tests it, sends the approved artifact to the signing boundary, receives the signed result, verifies it and publishes the same verified file.

Build
Create artifact

Compile and package the release without exposing the production signing key.

Gate
Approve release

Run tests and enforce the production authorization rules.

Sign
Use protected key

Send the approved artifact to the token, HSM or managed signing service.

Publish
Verify and release

Verify the signed output and publish that exact file.

Protected Windows release pipeline
BuildCompile
→
TestChecks
→
ArtifactFinal file
→
Protected SignCloud / HSM
→
TimestampRFC 3161
→
VerifySignature
→
PublishRelease

GitHub Actions

Use protected signing rather than placing a production private key directly in repository secrets.

Azure DevOps

Separate release authorization from ordinary build execution.

Jenkins / GitLab

Use HSM, remote signing or cloud signing for controlled production signing.

Authenticode for Windows Drivers

Driver signing is a separate Microsoft workflow. Microsoft currently requires an EV certificate to establish the Partner Center account used for Windows Hardware Developer Center submissions. Microsoft also describes use of an Authenticode certificate registered to the account for individual submissions and strongly recommends EV for signing submissions.

Do not collapse driver signing into ordinary EXE or DLL signing. Driver publishers need to evaluate Microsoft's account, submission and signing requirements separately.

The signing workflow should also distinguish the cryptographic signing step from Microsoft's acceptance or publication process. A correctly signed driver can still need additional submission or approval steps. Treat the driver package, catalog files and submission metadata as one release process and verify current Microsoft requirements before automation.

Driver signing has additional Microsoft platform requirements beyond ordinary application signing. A publisher cannot assume that a certificate capable of signing an EXE is sufficient for every driver distribution scenario. Driver submission, attestation and Windows Hardware Developer Center requirements should be checked against the exact driver model and distribution method.

Microsoft Authenticode Certificate Providers

Certificate cost

Compare the certificate price, term and validation model shown by the provider.

Signing cost

Account for tokens, cloud signing plans, HSM infrastructure, signing volume and operational support.

DigiCert

Standard and EV code signing, including KeyLocker and hardware protected options.

View provider

Sectigo

OV and EV code signing for Windows software.

View provider

SSL.com

IV, OV and EV products plus eSigner and HSM options.

View provider

GlobalSign

Standard and EV products marketed for Microsoft Authenticode.

View provider

Certum

Standard and EV code signing with card and cloud options.

View provider

IdenTrust

TrustID Code Signing and EV Code Signing with hardware or HSM storage.

View provider

HARICA

IV, OV and EV code signing offerings.

View provider

eMudhra

OV and EV code signing offerings with hardware and HSM options.

View provider

E-Tugra

OV and EV code signing offerings.

View provider

Actalis

OV Code Signing offering.

View provider

When comparing providers, record the certificate type, term, issuance requirements, key custody model, signing workflow, timestamp support, renewal process and automation support. A developer signing one release a month may have different requirements from a software company producing hundreds of signed artifacts through CI/CD.

Certificate providers differ in validation options, pricing, hardware requirements and signing services. Some products are designed around a physical token, while others provide managed cloud signing or HSM integration. The certificate price is therefore only one part of the buying decision.

Authenticode vs Other Windows Signing Options

OptionTypical useCommercial model
CA issued Authenticode certificatePublic Windows software distributionCertificate purchase or subscription
Azure Artifact SigningManaged non Store signingManaged service
Self signed certificateDevelopment, testing and controlled internal environmentsFree, but not publicly trusted by default
Microsoft Store MSIX signingMSIX distributed through Microsoft StoreMicrosoft handles final signing after certification
SignPath FoundationQualifying open source projectsProgram eligibility

Microsoft's current Windows guidance identifies Azure Artifact Signing, formerly Trusted Signing, as the preferred managed signing option for non Store distribution, while traditional OV certificates remain an established CA option.

Compare options by artifact, distribution channel and operational model. If you control a public installer, a CA issued certificate may fit the workflow. If you want managed key custody and automated signing, a managed signing service may reduce infrastructure work. If you are testing internally, a self signed certificate can be appropriate for development without being suitable for public distribution.

Traditional Authenticode remains one part of the Windows signing ecosystem. Microsoft also provides platform specific signing services and package workflows, and the right option depends on how the application is distributed. A Store submitted MSIX package, a downloadable EXE and a kernel driver do not necessarily follow the same trust path.

Is Authenticode Still Relevant?

Yes. Authenticode remains a core Windows signing technology and Microsoft continues to document SignTool and Authenticode workflows. At the same time, managed signing services and platform specific signing models give publishers additional choices.

The practical question is how publisher identity, private key protection, automation, timestamping and the Windows distribution path should work together.

What has changed is the surrounding trust model. Signing is no longer a single control that guarantees a particular user experience. SmartScreen, Smart App Control, Microsoft Store workflows, driver policies and other Windows security systems can evaluate additional signals. A current signing strategy therefore needs to account for the complete distribution path.

Authenticode remains relevant because Windows software continues to use embedded digital signatures for publisher identity and file integrity across many executable and distribution scenarios. Microsoft continues to document SignTool, certificate based signing and verification workflows for Windows developers.

Choosing an Authenticode Certificate

Publishing publicly?

Consider a publicly trusted CA certificate or an applicable managed signing service.

Individual developer?

Check individual certificate availability and current CA requirements.

Registered organization?

Consider organization validated signing under the business identity.

Need driver submission?

Review current Microsoft Hardware Developer Center requirements.

Need CI/CD?

Evaluate cloud signing, remote signing or HSM based signing.

Target Smart App Control?

Account for Microsoft's current RSA requirement.

Then compare the operational model. A local developer may prefer a hardware backed token, while a team with frequent automated releases may need remote or cloud signing. If Smart App Control is in scope, check the current Microsoft algorithm requirements. If drivers are in scope, check the separate driver signing requirements. The certificate should fit the release architecture, not force the release architecture into an inconvenient model.

Start with the software rather than the certificate catalog. List the artifacts you distribute, the identity that should appear to users, the number of people who need signing access, the release frequency and whether signing must run automatically. These answers narrow the certificate and key storage requirements before price becomes the deciding factor.

Authenticode Certificate Checklist

IdentityConfirm the name that should appear to users and the validation path required.
Key custodyChoose token, HSM, cloud or remote signing before ordering.
PlatformConfirm EXE, MSI, DLL, scripts, packages or driver requirements.
OperationsConfirm timestamping, renewal, verification, access control and incident response.

Certificate

Trusted CA, correct identity, Code Signing EKU, suitable type and current validity.

Key

Protected private key, restricted access, approved storage and recovery plan.

Signing

SHA-256, correct artifact, timestamp and verification.

Distribution

Publisher identity checked, installer signed and release tested.

Maintenance

Expiry monitoring, renewal, revocation and compromise procedure.

Automation

Build and test before signing, authorize production signing and publish only verified artifacts.

Before placing the order, test the proposed signing path with a non production artifact. Confirm that the certificate can be accessed from the intended token, HSM or signing service, that SignTool can create a signature, that Windows can verify the result and that the timestamp service works. A short compatibility test can prevent a certificate purchase from becoming a release engineering problem.

A buying checklist should cover identity, certificate type, key custody, Windows compatibility, signing tools, timestamping, renewal and support. It should also record who is allowed to sign production software and where the signing operation is performed. These details are easy to miss when the purchase is treated as a simple certificate order.

Microsoft Authenticode FAQ

What is a Microsoft Authenticode code signing certificate?

It is a CA issued code signing certificate used with Microsoft's Authenticode signing technology. Microsoft does not issue a certificate product called Microsoft Authenticode Certificate.

Does Microsoft issue Authenticode certificates?

No. Microsoft provides Authenticode technology and signing tools. Compatible code signing certificates are issued by trusted certificate authorities.

What is Microsoft Authenticode?

It is Microsoft's Windows technology for signing and verifying supported software and associating it with certificate based publisher identity.

Is Authenticode the same as code signing?

Code signing is the broader practice. Authenticode is Microsoft's technology for signing and verifying supported Windows content.

Which certificate do I need for Authenticode?

Choose an eligible individual, organization validated or EV certificate based on publisher identity, distribution model and platform requirements.

How much does an Authenticode certificate cost?

Current public examples include SSL.com from $129/year for IV or OV and $349/year for EV, DigiCert from $696/year Standard and $972/year EV, and IdenTrust from $225/year Standard and $281/year EV.

Which companies offer Authenticode compatible certificates?

Current provider options include DigiCert, Sectigo, SSL.com, GlobalSign, Certum, IdenTrust, HARICA, eMudhra, E-Tugra and Actalis.

Can I use DigiCert for Authenticode?

Yes. DigiCert code signing certificates support Windows Authenticode signing.

Can I use Sectigo for Authenticode?

Yes. Sectigo code signing certificates support Windows signing workflows.

Can I use SSL.com for Authenticode?

Yes. SSL.com offers IV, OV and EV products and cloud signing options.

Can I sign an EXE with Authenticode?

Yes. EXE files are common Authenticode signing targets.

Can I sign a DLL with Authenticode?

Yes. DLL files can be signed with Authenticode.

Can I sign an MSI with Authenticode?

Yes. MSI installers can be signed and verified using SignTool.

Can PowerShell scripts use Authenticode?

Yes. PowerShell supports Authenticode signatures.

What is SignTool?

SignTool is Microsoft's command line utility for signing, verifying and timestamping supported Windows files.

How do I sign an EXE using SignTool?

A basic pattern is signtool sign /fd SHA256 /a MyApp.exe, followed by timestamping and verification. Key provider configuration depends on the environment.

How do I verify an Authenticode signature?

Use Windows Explorer, SignTool with /pa, or PowerShell's Get-AuthenticodeSignature.

Does Authenticode remove SmartScreen warnings?

No. Signature validation and SmartScreen reputation are separate. Microsoft states that EV no longer provides an instant SmartScreen bypass.

Does Smart App Control support ECC certificates?

Microsoft's current documentation says its signature check does not currently support ECC signatures.

Do I need EV for Authenticode?

No. EV is not automatically required for ordinary EXE, DLL or MSI signing.

Do Windows drivers require EV code signing?

Microsoft currently requires an EV certificate to establish the Partner Center account used for the Windows Hardware Developer Center workflow and describes additional driver signing requirements.

Does Authenticode require timestamping?

Timestamping is strongly recommended for long lived software because it records signing time and can help preserve signature evidence after certificate expiration under applicable trust rules.

What happens when an Authenticode certificate expires?

It should not be used as an active certificate for new signing. Existing timestamped signatures need to be evaluated under applicable trust and revocation rules.

What happens if an Authenticode certificate is revoked?

Revocation can affect software verification depending on certificate status, signing time, timestamp and applicable platform rules.

Can Authenticode signing be automated in CI/CD?

Yes. SignTool can be integrated into release pipelines and protected cloud, remote or HSM signing can keep production keys away from build runners.

Can Authenticode signing use an HSM?

Yes. HSM based signing is a common production key protection model.

Can I use a self signed certificate for Authenticode?

Yes for development, testing and controlled internal environments, but it is not publicly trusted by default.

Use the FAQ as a troubleshooting reference, but verify current Microsoft and CA requirements when the question involves Smart App Control, driver signing, certificate algorithms, issuance rules or pricing. Those areas can change independently of the core Authenticode file signing mechanism.

The most common Authenticode questions usually fall into four groups: terminology, certificate buying, signing implementation and Windows trust behavior. The answers should keep those layers separate because many support problems start with treating Authenticode as if it were the name of a single certificate product.

Related Authenticode Resources

Windows Code Signing Certificate

Which certificate to buy for Windows.

Code Signing Certificate Providers

Provider directory and commercial options.

OV Code Signing Certificate

Organization validated options.

EV Code Signing Certificate

Extended validation options.

DigiCert Code Signing Certificate

DigiCert product page.

GlobalSign Code Signing Certificate

GlobalSign product page.

How to Sign an EXE File

EXE signing workflow.

How to Sign an MSI Installer

MSI signing workflow.

How to Sign a DLL File

DLL signing workflow.

PowerShell Code Signing

PowerShell signing workflow.

Windows Code Signing Troubleshooting

Troubleshooting gateway.

Authenticode Errors

Signature and verification errors.

SignTool Errors

SignTool troubleshooting.

How to Timestamp Signed Software

Timestamping workflow.

Cloud Code Signing

Protected cloud signing.

Remote Code Signing

Remote signing architecture.

HSM Code Signing

HSM key protection.

Code Signing for CI/CD Pipelines

Automated signing architecture.

Keep the internal links contextual. A developer reading about CI/CD should encounter signing infrastructure where the workflow requires it. A buyer comparing certificates should reach provider and certificate type information at the point where the purchase decision is made. This creates a clearer path through the site than repeating the same related links at the end of every section.

A useful resource set should follow the release lifecycle. Certificate comparison pages answer the buying question, while cloud, remote and HSM signing pages answer key custody and automation questions. Platform specific pages can then explain the artifact or Windows feature in more detail.

Choose an Authenticode Signing Setup for Windows

Compare compatible certificate providers, pricing and key protection, then build the signing workflow around the Windows artifacts you actually distribute.

Build the signing path around the release

Choose the certificate, key custody model, signing workflow and Windows verification process together so the purchase supports the way your software is actually shipped.