- Key Takeaways
- Wat is een Code Signing-proces?
- Het beveiligde CodeSign-platform van Encryption Consulting (EC)
- Waarom het CodeSign Secure-platform van EC gebruiken?
- Codeondertekeningsproces voor ontwikkelaars
- Wat zijn de voordelen van Code Signing voor ontwikkelaars?
- Gebruiksscenario's voor het CodeSign Secure-platform van Encryption Consulting voor ontwikkelaars
- Veelgestelde Vragen / FAQ
- Het complete PKI-pakket van Encryption Consulting
In dit discussiebord bespreken we wat het Code Signing-proces inhoudt. Wat zijn de voordelen van het gebruik van Code Signing-certificaten voor de beveiliging van uw software/code? Wat maakt Code Signing-certificaten de beste beveiligingsoplossing voor ontwikkelaars? Laten we eens kijken naar het onderwerp:
Softwaredistributie is tegenwoordig afhankelijk van vertrouwen dat cryptografisch wordt vastgelegd, en niet alleen van een claim van een leverancier. Wanneer een ontwikkelaar code ondertekent, geeft hij elk downstream-systeem, besturingssysteem, pakketbeheerder, browser of eindgebruiker een manier om te verifiëren wie de code heeft gepubliceerd en of deze sindsdien niet is gewijzigd. Sla die stap over, en zelfs legitieme software wordt gemarkeerd met beveiligingswaarschuwingen, geblokkeerd door appwinkels of ronduit afgewezen vanwege steeds strengere platformvereisten.
Codeondertekening voor ontwikkelaars, kort samengevat: genereer een sleutelpaar, verkrijg een certificaat van een vertrouwde certificeringsinstantie (CA), hash uw code en onderteken die hash met uw privésleutel, en voeg vervolgens het resulterende handtekeningblok toe aan uw software. Elk belangrijk distributiekanaal, van Windows SmartScreen tot appwinkels voor mobiele apparaten, controleert dit voordat uw code wordt vertrouwd.
Key Takeaways
- Codeondertekening omvat twee afzonderlijke cryptografische bewerkingen: hashing (het genereren van een hash van uw code met een vaste grootte) en encryptie (het ondertekenen van die hash met uw privésleutel). Het verwarren van deze twee is een veelvoorkomende bron van misverstanden over hoe handtekeningen daadwerkelijk werken.
- Tijdstempelen is cryptografisch gezien niet verplicht, maar als u dit overslaat, stopt uw ​​ondertekende software met verifiëren zodra uw certificaat verloopt. Dit is tegenwoordig een veel kortere periode, gezien de maximale geldigheidsduur van 460 dagen voor certificaten.
- Voor een volledige beschrijving van het proces, inclusief certificaattypen, vertrouwensketen en openbare versus privéondertekening, zie Codeondertekening 101: uw softwareleveringsketen beveiligen.
Wat is een Code Signing-proces?
Codeondertekening is een proces om de authenticiteit en originaliteit van digitale informatie, zoals een stukje softwarecode, te bevestigen. Het verzekert gebruikers ervan dat deze digitale informatie geldig is en bevestigt de legitimiteit van de auteur. Codeondertekening garandeert ook dat deze digitale informatie niet is gewijzigd of ingetrokken nadat deze geldig was ondertekend.
Code Signing speelt een belangrijke rol omdat het de identificatie van legitieme software versus malware of malafide code mogelijk maakt. Digitaal ondertekende code zorgt ervoor dat de software op computers en apparaten betrouwbaar en ongewijzigd is.
Software is de drijvende kracht achter uw organisatie en weerspiegelt de ware waarde van uw bedrijf. Het beschermen van de software met een robuust codeondertekeningsproces is essentieel, zonder de toegang tot de code te beperken. Zo wordt gegarandeerd dat deze digitale informatie geen schadelijke code is en wordt de legitimiteit van de auteur vastgesteld.
Het beveiligde CodeSign-platform van Encryption Consulting (EC)
Het CodeSign Secure-platform van Encryption Consulting (EC) biedt u de mogelijkheid om uw softwarecode en programma's digitaal te ondertekenen. Hardwarebeveiligingsmodules (HSM's) slaan alle privésleutels op die worden gebruikt voor het digitaal ondertekenen van code en andere digitale handtekeningen van uw organisatie. Organisaties die gebruikmaken van het CodeSign Secure-platform van EC kunnen profiteren van de volgende voordelen:
- Eenvoudige integratie met toonaangevende Hardware Security Module (HSM)-leveranciers.
- Alleen geautoriseerde gebruikers hebben toegang tot het platform.
- Sleutelbeheerservice om onveilige opslag van sleutels te voorkomen.
- Verbeterde prestaties doordat eventuele knelpunten worden opgelost.
Waarom het CodeSign Secure-platform van EC gebruiken?
Er zijn verschillende voordelen verbonden aan het gebruik van CodeSign Secure van Encryption Consulting voor het uitvoeren van uw code-ondertekeningsactiviteiten. CodeSign Secure helpt klanten om voorop te blijven lopen door een veilige code-ondertekeningsoplossing te bieden met fraudebestendige opslag voor de sleutels en volledige zichtbaarheid en controle over code-ondertekeningsactiviteiten.
De privésleutels van het codeondertekeningscertificaat kunnen in een HSM worden opgeslagen om de risico's van gestolen, beschadigde of misbruikte sleutels te elimineren. Client-side hashing zorgt voor betere prestaties tijdens het bouwen en voorkomt onnodige verplaatsing van bestanden, wat een hoger beveiligingsniveau oplevert.
Codeondertekeningsclients krijgen naadloze authenticatie via het CodeSign Secure-platform. Zo maken ze gebruik van de allernieuwste beveiligingsfuncties, zoals hashing aan de clientzijde, multi-factorauthenticatie, apparaatauthenticatie en workflows voor goedkeurders met meerdere lagen, en meer.
Ondersteuning voor InfoSec-beleid om de acceptatie van de oplossing te verbeteren en verschillende bedrijfsteams in staat te stellen hun eigen workflow voor codeondertekening te hebben. CodeSign Secure is geïntegreerd met een geavanceerd hash-ondertekeningsmechanisme aan de clientzijde, waardoor er minder gegevens over het netwerk worden verzonden. Dit maakt het een zeer efficiënt codeondertekeningssysteem voor de complexe cryptografische bewerkingen die in de HSM plaatsvinden.
Codeondertekeningsproces voor ontwikkelaars
Het codeondertekeningsproces maakt ook gebruik van het principe van openbare-sleutelcryptografie (met name PKI). Wanneer een ontwikkelaar code wil ondertekenen, koppelt hij/zij feitelijk een digitaal cryptografisch certificaat aan het stukje code of softwareprogramma. Er zijn twee cruciale stappen betrokken bij het codeondertekeningsproces:
- Encryptie
- Hashing
Als eerste stap moet de ontwikkelaar een unieke privésleutel genereren die gebruikt kan worden om de informatie te versleutelen . Volgens het concept van publieke sleutelcryptografie is een privé-publiek sleutelpaar een set versleutelingsmechanismen voor het uitvoeren van versleuteling/ ontsleuteling.
Nadat het sleutelpaar is gegenereerd, wordt de publieke sleutel naar een vertrouwde instantie gestuurd, een zogenaamde Certificate Authority (CA). Deze CA verifieert de authenticiteit van de ontwikkelaar en voegt vervolgens een digitaal ondertekend certificaat toe aan de publieke sleutel. Dit certificaat is het codeondertekeningscertificaat. De CA stuurt de publieke sleutel samen met het certificaat terug naar de ontwikkelaar die erom heeft gevraagd.
Omdat we zowel het code-ondertekeningscertificaat als een encryptiesleutelpaar hebben, moeten ontwikkelaars dit certificaat en sleutelpaar gebruiken om de softwarecode te hashen voordat ze deze kunnen versleutelen en ondertekenen. Hashing is een procedure waarbij een hashfunctie wordt gebruikt om code om te zetten in een willekeurige vaste waarde. De output van hashing, een zogenaamde digest, wordt vervolgens versleuteld met de privésleutel. Vervolgens combineert de ontwikkelaar deze digest met het code-ondertekeningscertificaat en de hashfunctie om een ​​zogenaamd handtekeningblok te creëren. Dit is in wezen een combinatie van alle bovenstaande elementen in een stuk code dat gemakkelijk in software kan worden ingevoegd.
Zodra de ontwikkelaar het handtekeningblok in de software injecteert, is het effectief code-ondertekend en kan het worden gedistribueerd.
Wat zijn de voordelen van Code Signing voor ontwikkelaars?
Codeondertekening is een van de veiligste processen die maximale beveiliging biedt voor software en code. Dit is precies wat codeondertekening zo'n gewild proces maakt voor zowel ontwikkelaars als technologiebedrijven. Laten we eens kijken naar enkele belangrijke voordelen van codeondertekening voor het beveiligen van uw code/software. Encryptieconsulting biedt het CodeSign Secure-platform om codeondertekening uit te voeren. U kunt de unieke code en software van het bedrijf beschermen door codeondertekening uit te voeren met behulp van dit platform.
Beschermt de code-integriteit
Codeondertekening biedt authenticatie voor de integriteit van code en/of softwareprogramma's met behulp van een hashfunctie. Als de hash die wordt gebruikt om de applicatie te ondertekenen overeenkomt met de hash van een gedownloade applicatie, is de code-integriteit intact. Als de gebruikte hash niet overeenkomt, krijgen gebruikers een beveiligingswaarschuwing te zien of mislukt het downloaden van de code.
Codeondertekeningscertificaten moeten altijd worden gekoppeld aan een tijdstempel om de levensduur van uw digitale handtekeningen te verlengen. Uw code blijft geldig, zelfs nadat uw codeondertekeningscertificaat is verlopen, omdat de geldigheid van het certificaat op het moment van de digitale handtekening kan worden geverifieerd. Als u dit overslaat, stopt uw ​​ondertekende software met de verificatie op de dag dat het certificaat verloopt.
Gestroomlijnde beveiliging van de code
Wanneer uw code/softwareprogramma's via API-integratie zijn gekoppeld aan portals voor codeondertekening, maakt Code Sign Secure van Encryption Consulting het proces van codeondertekening eenvoudig te beheren en te integreren met uw code. Gestroomlijnde beveiliging helpt u sneller op de markt te komen, terwijl de integriteit van uw code wordt beschermd en beveiligingswaarschuwingen worden verminderd.
Minimaliseer beveiligingswaarschuwingen via een vertrouwde certificeringsinstantie
Het codeondertekeningsproces creëert en vestigt vertrouwen doordat certificaten van vertrouwde certificeringsinstanties (CA's) worden gebruikt. Rootcertificaten van vertrouwde en gerenommeerde certificeringsinstanties worden geïnstalleerd op de clientcomputers. Het is daarom altijd raadzaam om standaard codeondertekeningsproviders zoals CodeSign Secure te gebruiken. Wanneer u codeondertekening gebruikt, wordt uw code automatisch geaccepteerd zonder beveiligingswaarschuwingen. Dit maakt het mogelijk om de software of code probleemloos te downloaden. Met minimale beveiligingswaarschuwingen is het gebruiksgemak voor de eindgebruiker groter.
Gebruiksscenario's voor het CodeSign Secure-platform van Encryption Consulting voor ontwikkelaars
Er zijn meerdere use cases die kunnen worden geïmplementeerd met het CodeSign Secure-platform van Encryption Consulting. De meeste use cases zijn relevant voor het hierboven besproken concept van digitale handtekeningen. Het CodeSign Secure-platform voldoet aan alle eisen van uw organisatie. Laten we eens kijken naar enkele van de belangrijkste use cases die worden behandeld in CodeSign Secure van Encryption Consulting:
Codeondertekening:
Onderteken code vanaf elk platform, waaronder Apple, Microsoft, Linux en nog veel meer.
Documentondertekening:
Onderteken documenten digitaal met sleutels die zijn beveiligd in uw HSM's.
Docker-afbeeldingondertekening:
Digitale vingerafdruk naar docker-images tijdens het opslaan van sleutels in HSM's.
Firmwarecodeondertekening:
Onderteken alle soorten firmware-binaries om de fabrikant te verifiëren en manipulatie van de firmwarecode te voorkomen.
Organisaties met gevoelige gegevens en gepatenteerde code/programma's kunnen profiteren van het CodeSign Secure-platform. Online distributie van de software wordt tegenwoordig steeds gebruikelijker, gezien de snelheid waarmee het op de markt komt, lagere kosten, schaalbaarheid en efficiëntievoordelen ten opzichte van traditionele softwaredistributiekanalen zoals fysieke winkels of software-cd's die naar klanten worden verzonden.
Codeondertekening is een must voor online distributie. Zo vereisen externe softwareplatforms steeds vaker dat applicaties (zowel desktop als mobiel) worden ondertekend voordat ze toestemming geven voor publicatie. Zelfs als u een groot aantal gebruikers kunt bereiken, zijn de waarschuwingen die worden weergegeven tijdens het downloaden en installeren van niet-ondertekende software zonder codeondertekening vaak voldoende om de gebruiker ervan te weerhouden verder te gaan met downloaden en installeren.
Encryption Consulting levert tijdens het codeondertekeningsproces sterk beveiligde sleutels in FIPS- gecertificeerde versleutelde opslagsystemen (HSM's). Dankzij CodeSign Secure kan het codeondertekeningsproces sneller verlopen, omdat de ondertekening lokaal op de buildmachine plaatsvindt. Rapportage- en auditfuncties bieden InfoSec- en compliance-teams volledig inzicht in alle toegang tot en gebruik van privésleutels.
Veelgestelde Vragen / FAQ
Moet ik als ontwikkelaar mijn eigen privésleutel beheren?
Niet als je een gecentraliseerd platform zoals CodeSign Secure gebruikt, waar de privésleutel wordt gegenereerd en opgeslagen in een HSM en nooit rechtstreeks aan jou wordt getoond. Je dient een hash in ter ondertekening in plaats van zelf de sleutel te beheren.
Wat gebeurt er als ik het toevoegen van tijdstempels oversla?
Uw ondertekende software voldoet niet langer aan de verificatiecriteria zodra uw codeondertekeningscertificaat verloopt. Aangezien certificaten nu een maximale geldigheidsduur van 460 dagen hebben, is dat een aanzienlijk kortere periode dan de meerjarige certificaten die ontwikkelaars wellicht gewend zijn.
Kan ik een zelfondertekend certificaat gebruiken voor productiesoftware?
Nee. Een zelfondertekend of intern uitgegeven certificaat heeft geen vertrouwensketen die door externe gebruikerssystemen kan worden gevalideerd. Productiesoftware die publiekelijk wordt verspreid, vereist een certificaat van een publiekelijk vertrouwde certificeringsinstantie (CA).
Het complete PKI-pakket van Encryption Consulting
Encryption Consulting LLC (EC) biedt een compleet trainingspakket aan voor Public Key Infrastructure (PKI) . Deze PKI-cursus is geschikt voor kandidaten van elk niveau – van beginner tot gevorderd. De PKI-cursus wordt aanbevolen voor iedereen die certificaten gebruikt of beheert, een PKI-bedrijfsoplossing ontwerpt of implementeert, of een commerciële PKI-technologieoplossing evalueert en selecteert.
Het plannen van een Public Key Infrastructure (PKI) kan een aanzienlijk kennisniveau met zich meebrengen, aangezien de authenticatie, encryptie en digitale ondertekening van een organisatie afhankelijk kunnen zijn van de manier waarop de PKI is opgebouwd. Een organisatie heeft een robuuste en veilige PKI-infrastructuur nodig om beveiliging en privacy te garanderen en te voldoen aan regelgeving en compliance. Het opzetten en beheren van een PKI vereist uitgebreide kennis hierover, die Encryption Consulting inbrengt, samen met de ervaring die organisaties nodig hebben om een ​​oplossing op maat te bieden.
Tijdens onze driedaagse PKI-training, die online en persoonlijk wordt gegeven en waarbij de nadruk ligt op de training Microsoft Active Directory Certificate Service (ADCS), leren klanten hoe ze PKI-oplossingen in de onderneming kunnen implementeren of ontwerpen.
U leert hoe u een PKI bouwt op Windows Server 2019, waarbij de nadruk ligt op gebieden zoals integratie met HSM, Two-tier PKI, Cloud PKI en meer.
Er wordt sterk de nadruk gelegd op: PKI-governance, best practices voor PKI-ontwerp, het certificaatlevenscyclusbeheerproces en PKI-werking, en een praktijkgericht vaardigheidslab.
- Key Takeaways
- Wat is een Code Signing-proces?
- Het beveiligde CodeSign-platform van Encryption Consulting (EC)
- Waarom het CodeSign Secure-platform van EC gebruiken?
- Codeondertekeningsproces voor ontwikkelaars
- Wat zijn de voordelen van Code Signing voor ontwikkelaars?
- Gebruiksscenario's voor het CodeSign Secure-platform van Encryption Consulting voor ontwikkelaars
- Veelgestelde Vragen / FAQ
- Het complete PKI-pakket van Encryption Consulting
