Gjør din SSL-sertifikater Meet Microsofts Nye krav

Advarsel fra Microsoft til hele Internett:? Sørge for at dine digitale sertifikater er minst 1024 biter. Pr 9 oktober 2012, lenger nøkkellengder er obligatoriske for alle digitale krypteringssertifikater som berører Windows-systemer.

Dette betyr at Internet Explorer vil nekte å få tilgang til nettsteder som ikke har RSA-nøkler med minimum lengde på 1 024 bits. Du vil ikke være i stand til å utveksle kryptert e-post, kjøre ActiveX-kontroller eller installere programmer på Windows. Dette er ikke nytt, som Microsoft begynte å lage kunngjøringer om dette godt over et år siden.

Hvis din første reaksjon er "Det går Redmond bossing resten av verden rundt igjen!", Tenker på det. 1024-bits nøkkellengde er allerede vurdert foreldet, så hvis du henger på 1024-biters nøkler eller svakere du ber om trøbbel. The National Institute of Standards and Technology oppslags 800-57 anbefaler RSA nøkkellengder på 2048 eller 3072 bits. NIST beregner at 2048 bits nøkler vil være bra frem til 2030, og deretter vil de være lett knuselig av brute force. 3072-biters nøkler har spådd en levetid på "mye lenger." Så 4096-bits RSA-nøkler har en levetid på "mye, mye lenger."

Hva nå?

Hvis du kjører noen Windows-systemer, starter på RSA-nøkler etter 1024 er blokkert. Dette forteller deg hvordan du kan finne svake nøkler og hvordan du oppgraderer.

Resten av oss må bruke andre midler. OpenSSL har en haug med verktøy for spørring SSL-sertifikater. Bruk denne påkalling å få informasjon om din lokale web server, og se etter følgende informasjon:

 $ openssl s_client -showcerts -Koble localhost: 443Server certificatesubject = /OU = Domain Control Validert /OU = EssentialSSL Wildcard /CN = *. munge.comissuer = /C = GB /ST = Greater Manchester /L = Salford /O = COMODO CA Limited /CN = EssentialSSL CA --- Ny, TLSv1 /SSLv3, er Cipher DHE-RSA-AES256-SHAServer offentlig Nøkkelen er 2048 bit 

Du kan teste eksterne servere også, erstatte sine nettadresser for "localhost". Eksempelet viser at serverens SSL-sertifikatet er verifisert av en kommersiell sertifiseringsinstans, Comodo, at det støtter de nyeste sterke protokollene TLSv1 /SSLv3, og bruker den veldig sterk AES256 symmetrisk krypteringsalgoritme.

Du kan spørre en mailserver på samme måte:

 $ openssl s_client -showcerts -Koble mailserver: 995 

Eller en FTP-server:

 $ openssl s_client -showcerts -Koble FTPServer: 21 

Du vil må vite hvordan din FTP er konfigurert, fordi det varierer. FTP /SSL er vanligvis TCP port 21 eller 990, og SFTP er vanligvis TCP port 115, men noen ganger går det over TCP port 22.

Algoritme Forvirring

En felles punkt forvirring er de ulike krypteringsalgoritmer som brukes av OpenSSL. I det ovenstående eksempel RSA-nøkkel er 2048 bits, men AESnøkkel er bare 256 bits. RSA-nøkkelen er avhengig av en asymmetrisk algoritme. Den bruker et par av krypteringsnøkler, en offentlig og en privat. Den offentlige nøkkelen krypterer og den private nøkkelen dekrypterer. Du kan slenge en rekke offentlige nøkler til verden slik at andre mennesker kan sende deg krypterte meldinger, og du trenger bare å holde styr på en enkelt privat nøkkel for å dekryptere dem. Det er en smart måte å enkelt å sette opp kryptert kommunikasjon.

Symmetriske algoritmer krever at begge parter har samme nøkkel for kryptering og dekryptering. Dette har åpenbare ulemper, som å finne ut hvordan du kan sikkert dele nøklene, og som enhver hemmelig når mer enn én person vet det, er det ikke lenger en hemmelighet. Men symmetriske algoritmer er effektive og trenger ikke mye datakraft.

En typisk SSL sesjon er en travel liten ting med alle slags ting skjer, og det tar nytte av de ulike styrker av asymmetriske og symmetriske algoritmer. Den asymmetriske RSA nøkkelen tillater alle å etablere en kryptert nettverk session uten å ha en forhåndsdelt nøkkel, men til prisen av betydelige CPU-sykluser. Når økten er etablert, er nye symmetriske nøkler generert og utvekslet å kryptere resten av økten.

Hvordan Internett Sees Du

Jeg elsker nettsteder som lar deg teste dine servere, og det er mange av dem. Qualys SSL Labs har en SSL-server test. Test serveren din, og du vil se en rapport som Figur 1.

Det går på å gi detaljert informasjon som støttes chiffer, RSA nøkkel styrke, støttet protokoller, og det sier selv om det er sårbare for BEAST angrepet.

Hva nettleser Sees

nettleserutviklere får strengere om SSL informasjonen de viser. I gamle dager var det en liten hengelås nederst, og du klikket det for å se SSL informasjon. Nå har de flere indikatorer. Chromium bruker små fargede hengelåser, en vanlig side-ikonet, og andre indikatorer. Klikk på dem for å få alle detaljer.


Firefox er enklere og sterner. En grå verden indikerer en blandet http /https side, en grå hengelås er en https-side, og bare områder som betaler mondo dollar for Extended Validation sertifikater få en grønn hengelås. Firefox forandrer sine SSL indikatorer, så dette kan være utdatert informasjon i morgen. For i dag, figur 2 sammen samme side i Firefox (på toppen) og krom. Denne siden bruker veldig sterk kryptering, men det fortsatt ikke rangere en fargeklatt i Firefox, bare kjedelig grå.

Oppgradere din digitale sertifikater

Jeg er redd jeg ikke har en enkel løsning for spørring eller oppgradere dine digitale sertifikater. Din oppgradering metode avhenger av om sertifikatene er egenprodusert eller fra en kommersiell leverandør, og hvordan din public key infrastructure (PKI) er satt opp. Hvor sterk bør du gjøre dem? Du burde gjøre noen tester før de bestemmer seg, fordi regnekraften som kreves for høyere krypteringsnivåer går bratt opp. Så hvis du tenker at du vil, gå for velbehag og bruke 4096-bits RSA-nøkler og fremtidssikker selv alltid, prøve det først og se hvordan det påvirker server ytelse og brukeropplevelse. NIST mener at 3072-bits nøkler bør være god godt utover spådd året 2030 levetid på 2048-bits nøkler.

Det er også en god tid til å sjekke dine egne serverkonfigurasjoner, og for å begrense hvem de vil godta tilkoblinger fra. Apache Software Foundation har en god guide, Apache SSL /TLS-kryptering som er nyttig ikke bare for å konfigurere Apache, men for å forstå SSL /TLS.

Selv om dette er alt en stor smerte, se på den lyse siden - Hvis du har vært uten hell prøver å overtale sjefen din at du er år på overtid for å blokkere SSLv1 og 40-bits symmetriske nøkler, kan Microsoft bli gjør deg en tjeneste
.