Veelgestelde vragen over Code Signing Certificaten
V: Waar worden Code Signing-certificaten voor gebruikt?
A: Code Signing certificaten worden aanbevolen voor gebruik door alle uitgevers die code of content distribueren op het internet of in bedrijfsnetwerken. Klanten begrijpen de risico's die gepaard gaan met het online downloaden van bestanden en daarom vertrouwen ze ondertekende bestanden veel meer dan niet-ondertekende. Bij het zien van de handtekening van de uitgever begrijpt de klant dat het bestand authentiek is en geen malware bevat. De uitgevershandtekening is een betrouwbare manier om de applicatie te beschermen tegen inmenging door derden.
V: Welke documenten zijn vereist om een Code Signing certificaat te bestellen?
A: Standaard Code Signing-certificaten zijn beschikbaar voor individuele ondernemers en rechtspersonen.
In het geval van Sectigo(Comodo) heb je nodig:
- een link naar een overheidsdatabase met je bedrijfsregistratie;
- contactgegevens: naam, e-mail, telefoon, titel;
- een scan van een door de overheid uitgegeven foto-ID (zoals paspoort, rijbewijs, etc.) is nodig om de aanvrager (administratief contact) op de bestelling te verifiëren;
- een selfie met een door de overheid uitgegeven foto-ID [paspoort, rijbewijs] (deze moet een foto en naam bevatten).
Dit is een verplichte Sectigo-vereiste, meer details:
https://sectigo.com/knowledge-base/detail/OV-Code-Signing-Validation-for-Organizations-and-Individuals/kA01N000000brb0 - voor verificatie van het telefoonnummer: een link naar een online directory met uw bedrijfsregistratie (van kompass.com of DUNS-nummer).
Dit profiel moet de bedrijfsnaam, het adres en het telefoonnummer bevatten.
In het geval van Digicert heb je nodig:
- een link naar een overheidsdatabase met je bedrijfsregistratie;
- contactgegevens: naam, e-mail, telefoon, titel;
- Voor verificatie van het telefoonnummer: bedrijfsregistratie op dnb.com/DUNS of staatsregistratie met een telefoonnummer.
In het geval van Certum heb je nodig:
- Inschrijvingsdocument van de organisatie
- Machtiging/volmacht: Ondertekend in overeenstemming met de wijze van vertegenwoordiging zoals vermeld in het registratiedocument. *Alleen nodig als de persoon die het certificaat aanvraagt niet bevoegd is om de organisatie zelfstandig te vertegenwoordigen.
- Utility Invoice (alleen vereist voor EV): een factuur voor nutsvoorzieningen op naam van de organisatie die het huidige adres van het hoofdkantoor van het bedrijf bevestigt (bijv. factuur voor gas, elektriciteit, water, vaste telefoonlijn, vast internet, huur van kantoorruimte of huurovereenkomst).
LeaderTelecom geeft geen Code Signing certificaten uit aan individuen.
Het Code Signing EV certificaat is alleen beschikbaar voor rechtspersonen. De vereisten voor uitgifte zijn hetzelfde, maar de verificatie is grondiger (staatsbronnen worden gecontroleerd).
V: Hoe onderteken ik een code met een Code Signing certificaat?
A: Om een code te ondertekenen, moet u deze door een speciaal hashing-algoritme halen en vervolgens uw privésleutel gebruiken om de hash te ondertekenen, waardoor u een digitale handtekening krijgt. Vervolgens maak je een handtekeningblok aan dat de digitale handtekening en het Code Signing certificaat bevat. Met hulpmiddelen zoals Authenticode kun je een tijdstempel instellen voor een handtekeningblok op basis van de huidige datum en tijd. Tot slot bindt u het handtekeningblok met een tijdstempel aan de software. Nu kun je een ondertekend programma op je website publiceren om te downloaden.
Een tijdstempel is nodig om ervoor te zorgen dat de geldigheid van de code niet verloopt met de geldigheidsperiode van het Code Signing-certificaat. Als uw code een tijdstempel heeft, dan zal de digitale handtekening zelfs geldig zijn na het verlopen van het certificaat. Een nieuw certificaat is alleen nodig als u een extra code wilt ondertekenen. Als u geen gebruik hebt gemaakt van de mogelijkheid om tijdstempels toe te voegen tijdens het ondertekeningsproces van de aanvraag, dan moet u de code opnieuw ondertekenen en naar uw klanten sturen.
V: Hoe gebruikt u uw certificaat na aankoop?
A: Dat hangt af van het type certificaat. U kunt de instructies hier vinden
V: Wat gebeurt er als het Code Signing-certificaat verloopt?
A: Code Signing-certificaten worden uitgegeven voor een periode van één tot drie jaar. Het verlopen van een Code Signing-certificaat betekent dat u geen nieuwe handtekeningen kunt aanmaken. Alle handtekeningen uit het verleden zullen werken voor een bepaalde tijdstempel.
In het geval van Microsoft Authenticode betekent het gebruik van tijdstempels dat de code niet verloopt wanneer het certificaat verloopt.
Als er geen tijdstempels worden gebruikt, dan moet je wanneer het certificaat verloopt de code opnieuw ondertekenen en naar je klanten sturen.
Het is goed om te onthouden dat sommige certificaten het aanmaken van timestamps niet ondersteunen (bijvoorbeeld certificaten voor Netscape Object Signing en Sun Java).
V: Wat is het verschil tussen code signing en document signing? Kan ik PDF-bestanden ondertekenen met gewone Code Signing-certificaten?
A: Meestal hebben Code Signing-certificaten een extKeyUsage-extensie met een Code Signing-waarde en soms ook commerciële Code Signing. Ze hebben echter geen waarden die ander gebruik toestaan.
RFC 5280 voor de extensie Extended Key Usage impliceert dat "als de extensie is gespecificeerd, het certificaat alleen mag worden gebruikt om een van de relevante doelstellingen te bereiken".
In de situatie in kwestie wordt het Code Signing certificaat echter gebruikt om een document te ondertekenen dat geen code is, wat een directe schending is van de X.509 Public Key Infrastructure Certificaatspecificatie.
Daarom is de kans groot dat Adobe Reader PDF-handtekeningen weigert die zijn gegenereerd met een code signing-certificaat. En zelfs als er nu geen problemen zijn met certificaten, is het niet gegarandeerd dat dit in de toekomst niet zal gebeuren met de release van nieuwe versies van Adobe Reader. Daarom maken veel certificaatverkopers onderscheid tussen certificaten voor het ondertekenen van codes en certificaten voor het ondertekenen van documenten (in het bijzonder certificaten voor het ondertekenen van PDF's). De prijzen voor PDF-certificaten zijn vaak enkele malen hoger.
V: Zijn er verschillen tussen code signing certificaten voor Java, Adobe AIR, Authenticode, VBS?
A: Zoals volgt uit de RFC 5280 specificatie, kan elk Code Signing certificaat gebruikt worden om Java code, AIR code, Authenticode, VBS, enz. te ondertekenen. Technisch gezien zijn er dus geen verschillen tussen de code signing certificaten.
Sommige certificeringsinstanties kunnen echter bepaalde beperkingen opleggen aan de reikwijdte van hun codesigning-certificaten.
V: Hoe onderteken ik de Visual Studio .msi installatiebestanden? Nadat ik .msi heb ondertekend, verliezen alle .exe bestanden in het installatiepakket hun handtekening. Wat moet ik doen om ervoor te zorgen dat de handtekeningen van deze bestanden blijven staan tijdens de installatie van het pakket op de computer van de klant?
Antwoord: Visual Studio maakt tijdens het compileren twee mappen: obj en bin. Uitvoerbestanden worden meestal gekopieerd van de map obj naar de map bin. Als je bestanden in de map bin ondertekent, worden ze later overschreven door bestanden uit de map obj. De oplossing: exe bestanden ondertekenen die zich in de obj map bevinden. In dit geval blijven de handtekeningen van alle exe-bestanden behouden.
V: Zijn er beperkingen aan het aantal toepassingen dat kan worden ondertekend met een Code Signing-certificaat?
A: Nee. U kunt zoveel toepassingen ondertekenen als u nodig hebt met het Code Signing-certificaat, op voorwaarde dat de toepassing wordt gedistribueerd door de organisatie waarvoor het certificaat is uitgegeven.
V: Kan ik stuurprogramma's (Kernel-mode) ondertekenen met een Code Signing certificaat?
A: Nee, vanaf mei 2021 wordt het ondertekenen van stuurprogramma's voor Windows 8, 10 niet langer ondersteund. Bron: Afschaffing van Software Publisher Certificaten.
V: Hoe omzeil ik het Smart Screen bij het installeren van een ondertekende toepassing op Windows® 8/10/11?
A: Je moet het EV Code Signing-certificaat gebruiken. Programma's die ondertekend zijn met Code Signing EV worden automatisch vertrouwd, zelfs als er geen reputatie is voor deze uitgever of dit bestand. Je kunt reputatie alleen instellen voor Authenticode certificaten die zijn uitgegeven door een certificeringsinstantie die lid is van het Windows® Root Certificate Program.
U kunt de volgende EV-certificaten bij ons bestellen:
Certum EV Code Signing in de Cloud
Sectigo(Comodo) EV Code Ondertekening
V: Is reputatie in SmartScreen mogelijk met een standaard Code Signing certificaat?
A: Ja, het is mogelijk, maar dit vereist ongeveer 3000 app downloads (geschatte gegevens).
V: Kan ik Mac software ondertekenen met uw Code Signing producten?
A: Nee, kijk op https://developer.apple.com/support/code-signing/
V: PFX-bestanden zijn niet langer beschikbaar voor Code Signing-certificaten. Wat zijn de andere opties?
A: Vanaf 06/01/2023 zijn PFX-bestanden niet langer beschikbaar voor Code Signing-certificaten.
Moderne standaarden vereisen dat de private sleutels voor code signing certificaten worden gegenereerd en opgeslagen in veilige omgevingen.
Dit betekent meestal het gebruik van hardware-apparaten zoals HSM's, smartcards of beveiligde USB-tokens.
Het genereren van privésleutels op deze apparaten zorgt ervoor dat de sleutel niet kan worden geëxtraheerd of geëxporteerd, waardoor de uitgifte van certificaten in PFX-formaat wordt voorkomen.
Sectigo biedt zijn certificaten nu aan op USB-tokens:
https://www.leaderssl.com/suppliers/comodo/products/code_signing
https://www.leaderssl.com/suppliers/comodo/products/code_signing_ev
Als alternatief bieden we nu certificaten van Certum aan:
https://www.leaderssl.com/suppliers/certum/products/code_signing_ev
https://www.leaderssl.com/suppliers/certum/products/code_signing
Deze worden'in the Cloud' genoemd.
U moet een speciale desktopapplicatie gebruiken en ondertekenen via signtool.