How Do I Generate a Self Signed Code Signing Certificate?

1 Star2 Stars3 Stars4 Stars5 Stars (11 votes, average: 3.18 out of 5)

Before we get into how you can create a self signed code signing certificate, let’s understand what it is, how it is different from the ones offered by a third-party certificate authority (CA), and which one is more suited for your specific needs. Without further ado, let’s jump right in!

What Is a Code Signing Certificate?

A code signing certificate is a data file that places a cryptographic digital signature on your code. I say cryptographic because I don’t want some of you to think of it as a digitized version of the signature doodles you made at the back of your notebook as a child.

This digital signature is mathematically derived, and it’s used to authenticate your identity. Code signing also makes tampering with your program a lot harder, so any hacker will have a hard time modifying your code to run malicious scripts. This not only tells your userbase who’s the software publisher, but it also assures them that an attacker hasn’t altered the file since it was last signed. This process builds trust in users and strengthens their digital safety.

Get a Code Signing Certificate for $79/year!

Assert Publisher Identity, Ensure Software Integrity and Avoid Browser and Antivirus Warnings.

Shop Now

Since Microsoft trusts reputable commercial certificate authorities (also known as CAs), and they’re essentially vouching for you, security warnings like “Untrusted Publisher” may well be evaded, and that could have a potential direct impact on your conversion rates! Moreover, EV code signing certificates from trusted CAs are your only hope against Microsoft SmartScreen filter, which tends to be extremely wary about the code they trust.

Unknown Publisher Warning

What Is a Self Signed Code Signing Certificate?

A self signed code signing certificate is, as the name suggests, signed by you (the software publisher) instead of a trusted third party. It works like a regular code signing certificate but only for you because only you trust your signature. Not sure what we mean? Let us explain a little more.

With a self signed code signing certificate, you’re essentially vouching for yourself and saying that you can be trusted. The issue is that machines and browsers don’t have your public key in their trust root store (because you’re presumably not a well-known CA) and, hence, they have no reason to trust you. Additionally, good luck getting your signature timestamped if you’re using a self signed code signing certificate.

Nevertheless, you can use self signed code signing certificates for internal purposes, or in testing environments. However, it’s best to use it for internal use only. That’s because, if you’re releasing a product to be used by customers with a self signed certificate, it will generate a security alert.

How to Create a Self Signed Code Signing Certificate

You can create a self signed code signing certificate using OpenSSL. Or, for Windows 10 users, you can use PowerShell’s New-SelfSignedCertificate, an automated script that makes the job of creating such certificates easier for you. Just type in the command below to add your certificate to the certificate store:

$cert = New-SelfSignedCertificate -DNSName "" -CertStoreLocation Cert:\CurrentUser\My -Type CodeSigningCert -Subject “Example Code Signing Certificate”
Generating a self-signed certificate
Self-signed certificate manager

You can also add the certificate as a trusted certificate authority for your network using mmc.exe and a certificate manager. You will need to add certificates snap-in for computer account and local accounts. Once that’s done, in the certificate manager, copy your self signed code signing certificate from the Personal folder and expand and paste it in the Certificates folder under Trusted Root Certificate Authority.

How to Create Signing Certificate for Windows

You can follow the steps mentioned below to create a signing certificate on Windows:

  • Buy a code signing certificate from a respected certificate authority (CA)
  • Login to your account on the CA website
  • Generate a certificate signing request (CSR)
  • Enter details including common name, email address, and public key to generate CSR
  • Click Submit button
  • Install certificate

How To Get Code Signing Certificate

How to get a code signing certificate? A code signing certificate is crucial for two purposes:

  • building trust among the users and
  • proving the authenticity and integrity of the program to the user.

You can order your code signing certificate from a trusted certificate authority (CA) at by following steps:

  • Go to
  • Go to “Code Signing”
  • Select a certificate and click on it
  • Fill in the details on the purchase form
  • Make the payment
  • Generate a certificate signing request (CSR)
  • Complete the validation process
  • Download the code signing certificate

Best Code Signing Certificates of 2021

Features Sectigo Code Signing Sectigo EV Code Signing
Certificate Authority Sectigo Sectigo
Certificate Type OV Code Signing EV Code Signing
Validation Type Organization Validation Extended Validation
Multiple year options Yes Yes
Encryption strength 256-Bit SHA-2 256-Bit SHA-2
Issuance Time 1 to 3 Business Days 1 to 5 Business Days
Immediate Reputation with Microsoft’s SmartScreen Filter No Yes
Two-factor Authentication No Yes
Microsoft Authenticode Signing Yes Yes
Android Apps Signing Yes Yes
Apple OS X Signing Yes Yes
Java Signing Yes Yes
Apple OS X Signing Yes Yes
Microsoft Office VBA Signing Yes Yes
Adobe Air Signing Yes Yes
Windows Vista x64 Kernel Mode Signing Yes Yes
Windows Phone Apps Signing Yes Yes
Qualcomm Brew App Signing Yes Yes
Microsoft Office Document Security Yes Yes
Free Re-issuance Yes Yes
Support Options Yes Yes
Refund Policy 30 Days 30 Days
Lowest Price From $79/year From $289.67/year
Buy Now View Product View Product