Kryptografiske teknikker er grunnleggende for å sikre integriteten og konfidensialiteten til data som er lagret på ikke-klarerte servere. De primære metodene som brukes for å oppnå disse målene inkluderer digitale signaturer og kryptering. Disse teknikkene gir robuste mekanismer for å beskytte data mot uautorisert tilgang, tukling og sikre at data forblir uendret og autentisk.
Digitale signaturer
Digitale signaturer er kryptografiske protokoller som gir et middel for å verifisere ektheten og integriteten til digitale meldinger eller dokumenter. De er den digitale ekvivalenten til håndskrevne signaturer eller stemplede segl, men er langt sikrere. Digitale signaturer bruker offentlig nøkkelkryptering (også kjent som asymmetrisk kryptografi) for å lage en unik signatur for et digitalt dokument.
Slik fungerer digitale signaturer
1. Nøkkelgenerering: Prosessen begynner med generering av et par nøkler – en privat nøkkel og en offentlig nøkkel. Den private nøkkelen holdes hemmelig av eieren, mens den offentlige nøkkelen distribueres til andre.
2. signering: Når eieren vil signere et dokument, bruker de sin private nøkkel til å generere en signatur. Dette gjøres ved å bruke en kryptografisk hash-funksjon på dokumentet for å lage en hash-verdi (en streng med byte med fast størrelse som unikt representerer dataene). Den private nøkkelen brukes deretter til å kryptere denne hash-verdien, og skaper den digitale signaturen.
3. Verifisering: For å bekrefte signaturen bruker mottakeren den offentlige nøkkelen til underskriveren. Mottakeren dekrypterer signaturen ved å bruke den offentlige nøkkelen for å få hashverdien. De beregner deretter hashverdien til det mottatte dokumentet uavhengig og sammenligner den med den dekrypterte hashverdien. Hvis de to hash-verdiene samsvarer, bekreftes signaturen, noe som indikerer at dokumentet ikke er endret og er autentisk.
Sikre integritet og autentisitet
- Integritet: Digitale signaturer sikrer at dataene ikke har blitt endret siden de ble signert. Enhver endring av dataene vil resultere i en annen hash-verdi, noe som fører til at bekreftelsesprosessen mislykkes.
- Autentisitet: Digitale signaturer bekrefter identiteten til underskriveren. Siden bare eieren av den private nøkkelen kan opprette signaturen, kan mottakeren være trygg på at dataene ble signert av den legitime eieren.
Eksempel
Tenk på et scenario der et selskap lagrer sensitive kontrakter på en ikke-klarert skyserver. Hver kontrakt er signert med den private nøkkelen til selskapet. Når en klient henter en kontrakt, kan de bruke selskapets offentlige nøkkel for å bekrefte signaturen. Hvis signaturen er gyldig, kan klienten være trygg på at kontrakten ikke er tuklet med og faktisk er fra selskapet.
kryptering
Kryptering er prosessen med å konvertere klartekstdata til et uleselig format kalt chiffertekst, ved hjelp av en kryptografisk algoritme og en krypteringsnøkkel. Bare de som har dekrypteringsnøkkelen kan konvertere chifferteksten tilbake til lesbar klartekst. Kryptering sikrer at data forblir konfidensielle, selv om de er lagret på en ikke-klarert server.
Typer kryptering
1. Symmetrisk kryptering: I symmetrisk kryptering brukes den samme nøkkelen til både kryptering og dekryptering. Denne metoden er effektiv og egnet for å kryptere store datamengder. Nøkkelen må imidlertid deles sikkert mellom avsender og mottaker.
- Eksempel: Advanced Encryption Standard (AES) er en mye brukt symmetrisk krypteringsalgoritme. Et selskap kan bruke AES til å kryptere databasen før den lagres på en ikke-klarert server. Bare de med dekrypteringsnøkkelen kan få tilgang til dataene.
2. Asymmetrisk kryptering: Asymmetrisk kryptering bruker et par nøkler – en offentlig nøkkel for kryptering og en privat nøkkel for dekryptering. Denne metoden er sikrere for nøkkelutveksling, men er beregningsmessig mer intensiv og tregere enn symmetrisk kryptering.
- Eksempel: RSA (Rivest-Shamir-Adleman) er en populær asymmetrisk krypteringsalgoritme. En bruker kan kryptere sensitive e-poster ved å bruke mottakerens offentlige nøkkel, og sikre at bare mottakeren kan dekryptere e-posten med sin private nøkkel.
Sikre konfidensialitet
- Data i hvile: Kryptering sikrer at data lagret på en ikke-klarert server forblir konfidensiell. Selv om en uautorisert part får tilgang til lagringen, kan de ikke lese de krypterte dataene uten dekrypteringsnøkkelen.
- Data i transitt: Kryptering beskytter også data når de overføres over nettverk. Transport Layer Security (TLS) er et eksempel på en protokoll som bruker kryptering for å sikre data under overføring, som sikrer at de ikke kan fanges opp og leses av uautoriserte parter.
Kombinere digitale signaturer og kryptering
For maksimal sikkerhet brukes ofte digitale signaturer og kryptering sammen. Denne kombinasjonen sikrer både integriteten og konfidensialiteten til dataene.
1. Kryptering av data: Først krypteres dataene ved hjelp av enten symmetrisk eller asymmetrisk kryptering. Dette trinnet sikrer at dataene forblir konfidensielle og ikke kan leses av uautoriserte parter.
2. Signering av krypterte data: De krypterte dataene signeres deretter med en digital signatur. Dette trinnet sikrer at de krypterte dataene ikke har blitt tuklet med og bekrefter identiteten til avsenderen.
Eksempel arbeidsflyt
1. Forberedelse: Et selskap ønsker å lagre sensitive økonomiske poster på en ikke-klarert skyserver.
2. kryptering: Postene er kryptert med AES (symmetrisk kryptering) for å sikre konfidensialitet.
3. signering: De krypterte postene signeres deretter ved hjelp av selskapets private nøkkel for å sikre integritet og autentisitet.
4. oppbevaring: De signerte og krypterte postene lagres på skyserveren.
5. Henting og verifisering: Når postene er hentet, verifiserer mottakeren først den digitale signaturen ved hjelp av selskapets offentlige nøkkel. Hvis signaturen er gyldig, dekrypterer mottakeren postene ved hjelp av dekrypteringsnøkkelen.
Denne arbeidsflyten sikrer at selv om en uautorisert part får tilgang til skyserveren, kan de ikke lese eller endre postene. Bare autoriserte parter med riktig dekrypteringsnøkkel og offentlig nøkkel kan få tilgang til og verifisere postene.
Praktiske overveier
- Nøkkeladministrasjon: Effektiv nøkkelhåndtering er viktig for sikkerheten til kryptografiske systemer. Nøkler må genereres, distribueres, lagres og tilbakekalles på en sikker måte når det er nødvendig. Kompromittering av nøkler kan føre til sammenbrudd i sikkerheten.
- Valg av algoritme: Valget av kryptografiske algoritmer og nøkkelstørrelser bør være basert på gjeldende beste praksis og standarder. Algoritmer som anses som sikre i dag kan bli sårbare i fremtiden på grunn av fremskritt innen datakraft og kryptoanalyse.
- Ytelse: Kryptografiske operasjoner kan være beregningsintensive. Ytelsespåvirkningen bør vurderes, spesielt for store systemer eller systemer med sanntidskrav.
Konklusjon
Kryptografiske teknikker som digitale signaturer og kryptering er viktige verktøy for å sikre integriteten og konfidensialiteten til data som er lagret på ikke-klarerte servere. Digitale signaturer gir et middel til å verifisere ektheten og integriteten til data, for å sikre at de ikke har blitt endret og kommer fra en legitim kilde. Kryptering sikrer at data forblir konfidensielle og ikke kan leses av uautoriserte parter, selv om de får tilgang til lagringen. Ved å kombinere disse teknikkene kan organisasjoner beskytte dataene sine mot uautorisert tilgang og tukling, selv når de bruker upålitelige lagringsservere.
Andre nyere spørsmål og svar vedr EITC/IS/ACSS Advanced Computer Systems Security:
- Hva er noen av utfordringene og avveiningene som er involvert i implementering av maskinvare- og programvarebegrensninger mot timingangrep og samtidig opprettholde systemytelsen?
- Hvilken rolle spiller grenprediktoren i CPU-timingangrep, og hvordan kan angripere manipulere den til å lekke sensitiv informasjon?
- Hvordan kan konstant-tidsprogrammering bidra til å redusere risikoen for timing av angrep i kryptografiske algoritmer?
- Hva er spekulativ utførelse, og hvordan bidrar det til sårbarheten til moderne prosessorer for timing av angrep som Spectre?
- Hvordan utnytter tidsangrep variasjoner i utførelsestid for å utlede sensitiv informasjon fra et system?
- Hvordan skiller begrepet gaffelkonsistens seg fra hent-modifiser konsistens, og hvorfor anses gaffelkonsistens som den sterkest oppnåelige konsistensen i systemer med upålitelige lagringsservere?
- Hva er utfordringene og mulige løsninger for å implementere robuste tilgangskontrollmekanismer for å forhindre uautoriserte modifikasjoner i et delt filsystem på en ikke-klarert server?
- I sammenheng med upålitelige lagringsservere, hva er betydningen av å opprettholde en konsistent og verifiserbar logg over operasjoner, og hvordan kan dette oppnås?
- Hva er bysantinske servere, og hvordan utgjør de en trussel mot sikkerheten til lagringssystemer?
- Hvordan bidrar protokoller som STARTTLS, DKIM og DMARC til e-postsikkerhet, og hva er deres respektive roller i å beskytte e-postkommunikasjon?
Se flere spørsmål og svar i EITC/IS/ACSS Advanced Computer Systems Security