340 likes | 476 Views
Sikkerhet - bakgrunn og introduksjon til kryptosystemer. Konfidensialitet skal ivareta at brukerens informasjon er godt nok sikret mot å bli gjort tilgjengelig for uvedkommende. Public Key Infrastructure (PKI)
E N D
Konfidensialitet skal ivareta at brukerens informasjon er godt nok sikret mot å bli gjort tilgjengelig for uvedkommende.
Public Key Infrastructure (PKI) • Gir muligheter for å forvrenge innholdet (kryptere) slik at det er uleselig for andre enn mottakeren (Konfidensialitet) • Gir muligheter for å vite hvem avsenderen er (Autentisering) • Gir muligheter for å sikre meddelelsen slik at alle forsøk på endringer blir oppdaget og stoppet (Integritet (data-integritet)) • Gir muligheter for å knytte innholdet til avsenderen slik at avsenderen ikke kan nekte for å stå bak det (Ikke-benekting)
Datasikkerhet er basert på: • Kryptering • Vi ser på hovedprinsipper for sikkerhet basert på kryptering
For å sikre konfidensialitet ved overføring av brukers informasjon benyttes kryptologi. Kryptologi: fra Gresk: ”kryptos logos” som betyr ”skjult ord”
Kryptologi er delt i: • Kryptografi - kryptering • Hvordan kode (kryptere) en melding slik at den blir uforståelig for uvedkommende • Kryptoanalyse - dekryptering • Hvordan dekode (dekryptere) en melding
Kryptering Prinsipp: forvrenger innhold slik at det blir uforståelig for andre To typer: • Symmetrisk kryptering • Asymmetrisk kryptering
For å forklare dette tar vi utgangspunkt i to brukere (Anne og Bjørn) som ønsker å kommunisere via et nettverk B A
Symmetrisk kryptering A Krypterer: Bytt alle bokstaver med ett hakk i alfabetet hemmelig melding = Ifj melding = Hei
Symmetrisk kryptering A Krypterer: Bytt alle bokstaver med ett hakk i alfabetet hemmelig melding = Ifj melding = Hei Ifj sendes over åpent nett
Symmetrisk kryptering A Krypterer: Bytt alle bokstaver med ett hakk i alfabetet hemmelig melding = Ifj melding = Hei Ifj B Dekrypterer: Bytt alle bokstaver med ett hakk i alfabetet hemmelig melding = Ifj melding = Hei
Symmetrisk kryptering Krypterer: Bytt alle bokstaver med ett hakk i alfabetet • A og B bruker samme metode:”Bytt alle bokstaver med ett hakk i alfabetet” • I kryptering skiller vi mellom metode og antall hakk som vi skal flytte i alfabetet: • Metode: Bytt alle bokstaver med ett hakk i alfabetet • Antall hakk: 1 (eller 2 eller 3 eller …) • Da kan metoden være kjent for alle mens antall hakk må holdes hemmelig
Symmetrisk kryptering A HEMMELIG ANTALL Krypterer: Bytt alle bokstaver med HEMMELIG ANTALL hakk i alfabetet hemmelig melding = Ifj melding = Hei
Symmetrisk kryptering A Har en felles hemmelighet! B
Symmetrisk kryptering Den felles hemmeligheten kalles en NØKKEL Når både A og B kjenner NØKKELEN kan de kryptere og dekryptere hemmelige meldinger Siden begge bruker SAMME nøkkel kalles detteSymmetrisk Kryptering
Symmetrisk kryptering Dette er vel og bra. Så lenge A og B holder på hemmeligheten sin kan de sende sensitive opplysninger til hverandre over åpne nett (Internett) uten at andre kan lese det.
Symmetrisk kryptering Problem: Hvordan blir partene kjent med den hemmelige nøkkelen?
Symmetrisk kryptering • Nøkkelen må overføres mellom partene på et eller annet vis • Husker ordtaket: Det to vet, det vet alle • Å sikre at uvedkommende ikke får tak i nøklene er vanskelig/umulig
Løsning: Asymmetrisk kryptering Vi gjør et ”triks” med nøkkelen slik at den består av to deler. Delene er laget slik at det som vi krypterer med den ene delen kan dekrypteres med den andre delen. Dette gjelder begge veier: Dersom vi krypterer med den andre delen så kan vi dekryptere med den første delen. Teknikken er en matematisk metode som vi kanskje kommer inn på senere.
Asymmetrisk kryptering Eksempel:A ønsker å sende hemmelig melding til B A får vite den ene delen hos B A bruker denne til å kryptere en hemmelig melding som sendes til B B bruker så den andre delen til å dekryptere den hemmelig meldingen fra A
Asymmetrisk kryptering De to delene kalles: Privat nøkkel og Offentlig nøkkel Privat nøkkel: Må holden hemmelig! Offentlig nøkkel: Er offentlig kjent (kjent for alle)! (i PC’en vår ligger det lagret mange offentlige nøkler – se lysark på slutten med eksempel på hvordan vi kan se disse)
Asymmetrisk kryptering Vi har nå en sikker metode for å overføre hemmelige data fra A til B: B’s datamaskin A’s datamaskin B’s Offentlige nøkkel B’s Private nøkkel kryptert melding=…. Krypteringsprogram for privat/offentlig nøkkel melding = Hei melding = Hei Dekrypteringsprogram for privat/offentlig nøkkel
Asymmetrisk kryptering Tilsvarende gjøres dersom B skal sende en hemmelig melding til A Hva må B da først få hos A?
Asymmetrisk kryptering Oppsummering om nøkler: For å sende fra A til B må A ha B’s offentlige nøkkel og B må passe på sin hemmelige nøkkel For å sende fra B til A må B ha A’s offentlige nøkkel og A må passe på sin hemmelige nøkkel Siden begge bruker FORSKJELLIGE nøkler kalles detteAsymmetrisk Kryptering
Konfidensialitet ved Asymmetrisk kryptering • Avsender krypterer med offentlig nøkkel til mottaker • Mottaker dekrypterer med sin private nøkkel • Så lenge den private nøkkelen er hemmelig kan ingen andre dekryptere meldingen – selv ikke avsenderen selv som foretok krypteringen!
Identifisering og autentisering • Typisk ved brukernavn og passord: • Identifisering: • Brukernavnet sier hvem du er • Autentisering: • Passordet beviser at du er den du sier du er • Av autentisk: ekte • MEN Brukernavn og passord kan lett kompromitteres (uvedkommende får tak i dem) • Bruker Asymmetrisk Kryptering til å gi en sterkere form for autentisering
Autentisering v/asymmetrisk kryptering A ønsker å bevise sin identitet ovenfor B • A krypterer noe informasjon med sin private nøkkel og sender det til B • Hvis B klarer å dekrypterer informasjonen med A’s offentlige nøkkel vet B at dokumentet MÅ komme fra A • Fordi det er matematisk umulig å dekryptere med en annes nøkkel. Offentlig og privat nøkkel hører sammen!
Prinsipp for Digital Signatur • At avsender krypterer med sin Private Nøkkel er også grunnlaget for å lage en Digital Signatur (ser på dette senere)
Ikke-benektning Ikke-benektning (non-repudiation) En mekanisme som gjør at du ikke kan nekte for å ha sendt en melding!
Ikke-benektning v/asymmetrisk kryptering • Du krypterer meldingen med din private nøkkel • Dersom mottaker kan dekryptere med din offentlige nøkkel må meldingen komme fra deg • Noe annet vil være en matematisk umulighet! • Merk: Alle andre kan også dekryptere meldingen med din offentlige nøkkel! Men det gjør ikke noe – her ønsket vi å ivareta ikke-benektning.
Digitale sertifikat • For å verifisere en Digital Signatur trenger vi Offentlig Nøkkel til den som signerte • Prosessen med å verifisere identiteten til den som signerte kalles Autentification • Digitale sertifikater gir autentifikasjon av Offentlig Nøkkel for den som signerer.
Eksempel på offentlige nøkler i PC’en vår • En Offentlig Nøkkel er lagret i et Digitalt Sertifikat. • Produsenter av nettlesere legger flere digitale Sertifikat inn i nettleseren når den distribueres • F.eks. : i Explorer: • Tools | Internet options | Content |Certificates… • Velg et sertifikat fra en av listene • View | Details | Public Key • Bildet på neste side vil da vises …
Litteratur: • An Overview of Cryptography (ch 1-4)http://www.garykessler.net/library/crypto.html or • Public Key Cryptography Overviewhttp://www.wildid.com/pdf/publickeyov.pdf