Gå til innholdetHisnLabs
← Kryptografi du kan stole på

Leksjon 2 av 4 · 9 min

Digitale signaturer, sertifikater, og TLS

Hvordan en nettleser vet at den faktisk snakker med banken din, hvorfor et hengelåsikon betyr noe spesifikt, og hva det ikke betyr.

Forrige leksjon lot ett spørsmål stå åpent: asymmetrisk kryptering lar deg sende en hemmelighet til noen hvis offentlige nøkkel du har — men hvordan vet du at den offentlige nøkkelen faktisk tilhører dem, og ikke en angriper i mellom? Digitale signaturer og sertifikater svarer på det, og sammen gjør de TLS, protokollen bak hver https://-adresse, mulig.

Digitale signaturer: bevis på opphav, ikke hemmelighold

En digital signatur kjører asymmetrisk kryptering baklengs. I stedet for å kryptere en melding med noens offentlige nøkkel slik at bare de kan lese den, signerer avsenderen en melding med sin egen private nøkkel, og hvem som helst kan verifisere den med avsenderens offentlige nøkkel. Hvis verifiseringen lykkes, er to ting sanne: meldingen kom fra den som har den private nøkkelen, og den ble ikke endret etterpå — den samme kollisjonsmotstand-egenskapen fra forrige leksjons diskusjon om hashing er det som gjør tukling oppdagbart. En signatur beviser autentisitet og integritet; den holder ikke, alene, meldingen hemmelig.

Sertifikater: en signatur som går god for en offentlig nøkkel

Et digitalt sertifikat løser problemet «hvem sin offentlige nøkkel er dette egentlig». Som Cloudflares Learning Center forklarer, er et SSL/TLS-sertifikat «en datafil som ligger på et nettsteds opprinnelsesserver» og inneholder domenenavnet, den offentlige nøkkelen, en utløpsdato, og — avgjørende — «sertifikatmyndighetens digitale signatur.» En sertifikatmyndighet (CA) er en pålitelig tredjepart som sjekker at et nettsted kontrollerer domenet det ber om et sertifikat for, og deretter signerer det sertifikatet med sin egen private nøkkel. Nettleseren din leveres med en innebygd liste over CA-er den stoler på, så når den mottar et sertifikat signert av en av dem, kan den stole på den offentlige nøkkelen inni uten noensinne å ha møtt nettstedets operatør. Et selvsignert sertifikat — ett et nettsted signerer selv i stedet for å få fra en CA — har ingen slik ekstern bekreftelse, som er hvorfor nettlesere som standard behandler ett som upålitelig.

TLS: å sette begge deler i arbeid

RFC 8446, spesifikasjonen for TLS 1.3, beskriver et håndtrykk i faser: nøkkelutveksling, der de to sidene etablerer delt hemmelig materiale; deretter autentisering, der, i RFC-ens ord, «serversiden av kanalen er alltid autentisert; klientsiden er valgfritt autentisert» — normalt beviser bare nettstedet sin identitet, ikke besøkeren. Serveren beviser hvem den er ved hjelp av sitt sertifikat og en signatur bare den kunne produsere med sin private nøkkel. Når begge sider stoler på tilkoblingen, utleder de raske symmetriske nøkler (forrige leksjons AES, typisk) for de faktiske dataene. RFC 8446 sier rett ut hva dette gir deg: konfidensialitet og integritet for dataene som utveksles, og autentisering av serveren. Den sier også, like tydelig, en grense: «TLS skjuler ikke lengden på dataene den overfører», og metadata som hvilken server du koblet til og når forblir synlig for alle som er posisjonert til å observere tilkoblingen.

Hva hengelåsikonet betyr og ikke betyr

Hengelåsen / https:// betyrDet betyr ikke
Tilkoblingen til den serveren er kryptert og dens integritet er beskyttetNettstedet er pålitelig, ærlig, eller trygt å bruke
Du snakker med den som kontrollerer det domenenavnetAt domenenavnet er den du tror det er — et overbevisende lignende domene får også et gyldig sertifikat
Ingen på nettverksveien kan lese eller stille endre trafikkenIngen kan se at du besøkte nettstedet, når, eller hvor ofte

Et phishing-nettsted bygget på et lignende domene kan ha et helt gyldig sertifikat: TLS autentiserer domenet, ikke intensjonen til den som registrerte det. Dette er hvorfor den tidligere leksjonen om hvordan angrep utfolder seg behandler en falsk innloggingsside, hengelås og alt, som en reell trussel, ikke en motsigelse.

Det viktigste

  • En digital signatur beviser hvem som sendte en melding og at den ikke ble endret — den holder ikke, alene, meldingen hemmelig.
  • Et sertifikat er en signert erklæring, fra en sertifikatmyndighet en nettleser allerede stoler på, om at en gitt offentlig nøkkel tilhører et gitt domene.
  • Et TLS-håndtrykk (RFC 8446) autentiserer alltid serveren; besøkeren er sjelden autentisert på samme måte.
  • TLS beskytter konfidensialitet og integritet under overføring, og bekrefter at du nådde domenet du hadde tenkt — den skjuler ikke at en tilkobling skjedde, og garanterer heller ikke at nettstedet bak er pålitelig.
  • Et phishing-nettsted på et lignende domene kan vise en helt gyldig hengelås; sertifikatet autentiserer domenet, ikke operatørens intensjon.

Test deg selv

  1. 1. Hva beviser en gyldig digital signatur på en melding?

    • At meldingen er hemmelig for alle unntatt mottakeren
    • At meldingen kom fra innehaveren av en spesifikk privat nøkkel og ikke ble endret — Riktig.
    • At meldingen ble sendt ved bruk av TLS
    • At meldingen er fri for skadelig innhold

    Signaturer verifiserer autentisitet og integritet ved hjelp av signererens nøkkelpar; de krypterer ikke meldingen for hemmelighold.

  2. 2. Hvilken rolle spiller en sertifikatmyndighet (CA) i TLS?

    • Den lagrer passordene dine på dine vegne
    • Den går god for, med sin egen signatur, at en offentlig nøkkel tilhører et gitt domene — Riktig.
    • Den krypterer all trafikk på internett
    • Den blokkerer phishing-nettsteder automatisk

    En CA sjekker domenekontroll og signerer sertifikatet, slik at nettlesere som allerede stoler på CA-en kan stole på sertifikatets offentlige nøkkel uten å kontakte nettstedets operatør direkte.

  3. 3. Ifølge RFC 8446, hvilken side av en typisk TLS-tilkobling er alltid autentisert?

    • Bare klienten (nettleseren din)
    • Serveren — Riktig.
    • Ingen av sidene som standard
    • Begge sider, alltid, uten unntak

    RFC 8446 sier at serversiden alltid er autentisert, mens klientautentisering er valgfri og mye mindre vanlig for vanlig nettlesing.

  4. 4. Hvorfor kan et phishing-nettsted fortsatt vise et gyldig hengelåsikon?

    • Hengelåsikoner er kosmetiske og betyr ingenting
    • Et sertifikat autentiserer et domenenavn, ikke ærligheten til den som registrerte det — Riktig.
    • Nettlesere sjekker ikke lenger sertifikater
    • Phishing-nettsteder kan ikke bruke HTTPS i det hele tatt

    TLS-sertifikater bekrefter at du snakker med den faktiske innehaveren av et gitt domene; et overbevisende lignende domene kan skaffe seg et helt gyldig sertifikat selv.

Prøv det med FireAI

Sett denne leksjonen ut i praksis på din egen Mac.

Kilder

Ta det i bruk på din Mac

Prøv alle funksjonene gratis i 17 dager, uten kort.

Last ned for Mac Dokumentasjon