Uitleg Code Signing

Digitale handtekeningen voor software

Met behulp van een Code Signing certificaat onderteken je je software of ActiveX applicaties digitaal. Deze ondertekening garandeert de identiteit van de maker en de integriteit van de software. De digitale handtekening wordt onderdeel van de software code. Dit maakt het onmogelijk de code ongemerkt te wijzigen; bij een wijziging van de code wordt de digitale handtekening ongeldig. Je klanten controleren op eenvoudige wijze dat de genoemde uitgever juist is, dat de software niet door derden is gewijzigd of beschadigd en krijgen geen vervelende beveiligingswaarschuwingen meer. Hiermee realiseer je veilige verspreiding van je software, bescherming van je merk en een groter klantvertrouwen.

Voordelen van Code signing

Met een code signing certificaat kun je ongelimiteerd aantal applicaties ondertekenen. Het gebruik van een code signing certificaat zorgt voor:

  • Vermindert foutmeldingen en veiligheidswaarschuwingen
  • Zekerheid over uitgever en inhoud
  • Voorkom verspreiding van beschadigde code
  • Door gebruik van timestamping verloopt handtekening niet

Te ondertekenen bestandstypen

Met een code signing certificaat onderteken je bijvoorbeeld:

  • .exe, .ocx, .dll en .cab bestanden
  • Microsoft Authenticode Signing
  • Mirosoft Office VBA Signing
  • Adobe Air Signing
  • Apple OS X Signing
  • Sun Java Signing

Raadpleeg de volledige lijst.

EV code signing

Voor sommige toepassingen is een EV code signing certificaat aan te raden of verplicht. Bijvoorbeeld voor Driver en Kernel Signing en voor directe ondersteuning in het Microsoft Smartscreen filter. Een EV code signing certificaat kent een strengere validatie en moet gebruikt worden in combinatie met een PKI token.

SHA-1 Code signing

Vanaf 2014 worden alle certificaten geleverd met SHA-2 in plaats van SHA-1 algoritme. Nu nog geldige SHA-1 certificaten worden niet ingetrokken, maar hiervoor geldt wel:

  • Tot 1 januari 2016 kun je met een SHA-1 certificaat een geaccepteerde handtekening zetten, mits deze voorzien is van een timestamp. De ondertekening blijft dan tot 2020 geldig.
  • Alle ondertekeningen met timestamp die na 1 januari 2016 geplaatst zijn worden niet meer geaccepteerd.

Heb je een SHA-1 code signing certificaat dat nog geldig is na 1 januari 2016? Neem dan even contact met ons op.

Proces

Voor het ondertekenen van software heeft een ontwikkelaar een Code Signing certificaat en een Code Signing programma nodig. Voor bijvoorbeeld Windows programmacodes is SignTool.exe van Microsoft beschikbaar. Na ondertekening van de code kan deze beschikbaar gesteld worden via bijvoorbeeld een website. Bij een download controleert de gebruikte browser/applicatie de digitale handtekening. Mogelijkheden na deze controle zijn het toestaan van de download, het geven van een waarschuwing of het blokkeren van de download. Het gebruik van een digitale handtekening verkleint de kans op een waarschuwing of blokkering aanzienlijk.

Code signing vindt plaats door gebruik van Asymmetrische cryptografie, ook wel bekend als public key (publieke sleutel) encryptie. De versleuteling wordt bij code signing meestal gedaan met behulp van RSA encryptie. Asymmetrische cryptografie maakt gebruik van twee verschillende sleutels, samen het zogenaamde 'key pair':

  • Private key: Alleen bekend bij de eigenaar van de sleutel. Met de private key kunnen versleutelde berichten worden gedecodeerd en berichten worden ondertekend.
  • Public key: Beschikbaar voor iedereen. Met de public key worden digitale handtekeningen gecontroleerd en kunnen berichten bestemd voor de eigenaar van de public key worden versleuteld.


Voorbeelden

Onderstaand een voorbeeld waarschuwing bij niet ondertekende software:

Code Signing Waarschuwing

Ondertekende software geeft bijvoorbeeld de volgende melding:

Code Signing Ondertekening

Code signing certificaat aanvragen

Een code signing certificaat kun je online aanvragen. Het certificaat bevat bedrijfsgegevens, wat betekent dat er voor uitgifte een organisatie validatie wordt uitgevoerd. Daarnaast is het door een procedurewijziging vanaf maart 2021 nodig om bij het aanvragen van een Sectigo code signing en EV code signing certificaat een kopie-ID op te sturen. Zowel een paspoort, identiteitsbewijs en rijbewijs zijn toegestaan. Het is van belang dat je voor het opsturen je BSN nummer op je ID bewijs afschermt. Dit kan handmatig, maar gaat het gemakkelijkste met de KopieID-app, welke beschikbaar is gesteld door de Rijksoverheid. De kopie kan hierna worden verzonden aan validatie@sectigo.nl

point up