Door Anoniem: Wat is verstandig om een SSL certificaat te kopen zoals bij bekende SSL uitgevers of zelf eentje maken?
Je kunt geen certificaat "kopen". Het proces bestaat ruwweg uit 3 stappen:
1) Jij genereert een asymmetrisch sleutelpaar, en jij bepaalt de lengte daarvan (echter, Certificate Service Providers zullen sleutels weigeren die te kort zijn);
2) Jij genereert een CSR (Certificate Signing Request) waarin de public key en jouw naamsgegevens zijn opgenomen;
3) Nu heb je de keuze: het CSR aanbieden aan een Certificate Service Provider ter ondertekening, of het CSR zelf ondertekenen (dan krijg je een self signed certificaat).
Bij een self signed certificaat is er geen "Trusted Third Party" die (meer of minder nauwgezet) vaststelt of jij de legitieme eigenaar bent van de DNS hostname in het certificaat. Jij kunt bijv. een self-signed certificaat voor mijn.ing.nl aanmaken, maar als jij dat op jouw server installeert zullen bezoekers (in tegenstelling tot de echte mijn.ing.nl) een certificaatfoutmelding krijgen.
Als jij een self-signed certificaat met de
echte naam van jouw webserver installeert, krijgen bezoekers natuurlijk
ook een certificaatfoutmelding. Het probleem daarbij is dat zij dan
geen onderscheid kunnen maken tussen jouw echte site en iemand die jouw site heeft nagebouwd en daar ook een zelfgemaakt self-signed certificaat op gezet heeft. Wat mij betreft zijn self-signed certificaten dan ook totaal zinloos. Erger, je gaat gebruikers leren om certificaatwaarschuwingen te negeren en dat is absoluut ongewenst.
Verder tot zover SSL 2048bits certificaat wordt door SSL uitgevers ondersteunt, maar kun je ook het aangeven dat je een 4096bits wil?
Als jij 4096bits wilt is dat prima, alleen heeft dat natuurlijk niet zoveel zin als het certificaat waarmee wordt ondertekend een kortere sleutel heeft. De meeste "Sub-CA" certificaten hebben sleutels van 2048 bits lengte.
Enige ervaring bij het gebruikt van 4096bits op Windows machines met IE9 en IE10?
Probleemloos, ook met IE8 trouwens. Bijv.
https://www.digid.nl/ heeft een certificaat met een sleutel van 2048 bits, terwijl alle "parent" certificaten in de lijn erboven sleutels vam 4096 bits lengte hebben. Kennelijk leveren dergelijk lange sleutels dus geen problemen op.
Tenzij je een self-signed certificaat gebruikt, is het vanuit veiligheidsoogpunt verstandig om voor webservers een certificaat met een relatief korte geldigheidtermijn te kiezen (1 a 2 jaar). Voor certificaten met een relatief korte looptijd is een sleutel van 4096 bits compleet overkill, en voor
elke sessie (vaak vele per bezoeker!) moet jouw server veel harder werken bij dergelijke lange sleutels (dat geldt niet voor sleutels in parent certificaten, die stuurt de server gewoon mee). Kortom, 2048 bits sleutellengte is gangbaar en volgens de specialisten (ik ben geen cryptografie expert) voorlopig zat voor webserver certificaten.