Symmetrisk Kryptering Algoritmer: Leve Lenge & Kryptere
Mye som tribbles i Star Trek, symmetrisk kryptering er overalt. Vi vil utforske symmetriske nøkkelen algoritmer og ta deg til steder ingen ikke-IT-person har gått før
Symmetrisk kryptering algoritmer er den underliggende prosesser som gjør sikker kommunikasjon mulig. Hvis du var å sette den inn i Star Trek-relaterte vilkår, symmetriske algoritmer er warp drive for din starship ‘ s drift system., De er integrert til informasjonssikkerhet og er det for å hjelpe virksomheten flytte frem med data kryptering sikkert og raskere enn lyset hastigheter.
(Ja, jeg vet, jeg er virkelig flyr min nerd flagget høyt i dag. Mens fascinerende, symmetrisk nøkkel algoritmer er ikke akkurat «lys» eller lett å lese — så jeg er nødt til å ha det litt gøy når du skriver. Damn det, Jim, jeg er en cybersecurity forfatter, ikke en cryptographer.)
sørg for å oppdatere din kaffe (eller earl grey te, hvis det er mer fart)., Vi er i ferd med å ta et dypdykk å utforske hva symmetrisk kryptering algoritmer er, hvorfor de er viktige, og hva som er den mest vanlige symmetrisk krypteringsalgoritme typer.
Gjøre det slik.
La oss hash det ut.
Editor ‘ s Note: Denne artikkelen er den første i en serie av artikler på symmetrisk kryptering., Pass på å sjekk ut relaterte artikler under:
- Symmetrisk Kryptering 101: Definisjon, Hvordan Det Fungerer & Når Det er Brukt
- Asymmetrisk vs Symmetrisk Kryptering: Definisjoner & Forskjeller
- Block Cipher vs Stream Cipher: Hva De Er & Hvordan De Fungerer
Hva Er en Symmetrisk Algoritme og Hvordan Fungerer Det?
Symmetriske algoritmer er den kryptografiske funksjoner som er sentrale for å symmetrisk nøkkel kryptering., De er et sett av instruksjoner eller trinn som datamaskiner følge for å utføre bestemte oppgaver som er knyttet til kryptering og dekryptering av data.
Føler at du trenger en universell oversetter? Okay, la oss bryte dette ned litt mer.
Symmetrisk kryptering algoritmer brukes (kombinert med en krypteringsnøkkel) for å gjøre to viktige ting:
- Krypter. Konvertere lesbar tekst (ren tekst) inn uleselig, kryptert tekst (ciphertext).
- Dekrypter. Konvertere ciphertext tilbake til ren tekst.
Symmetrisk kryptering algoritmer bruker samme krypteringsnøkkel for både kryptering og dekryptering., (I motsetning til asymmetrisk kryptering algoritmer, som bruker to forskjellige nøkler.)
Kryptering algoritmer, generelt, er basert på matematikk, og kan variere fra svært enkle til svært komplekse prosesser, avhengig av deres design. I tilfelle av symmetrisk kryptering algoritmer, de er sammenkoblet med en enkelt tast til å konvertere lesbar (ren tekst) data inn uforståeleg vrøvl (ciphertext). De bruker samme nøkkel for å deretter dekryptere ciphertext tilbake til ren tekst. Og alt dette er gjort på en måte som sikrer dataenes konfidensialitet og personvern. Ganske kult, ikke sant?,
Symmetrisk kryptering algoritmer er faktisk kjent av noen forskjellige navn:
- Symmetrisk nøkkel algoritmer,
- Symmetriske chiffer,
- Hemmelig nøkkel algoritmer, og
- Bulk chiffer. (Vi skal snakke mer om bulk chiffer litt senere.)
generelt er hensikten eller målet for kryptering er å gjøre det slik at bare noen med nøkkelen kan dekryptere og lese den hemmelige meldingen., I tilfelle du trenger en rask påminnelse om hvor symmetrisk kryptering fungerer, her er en rask oversikt:
I denne grafiske ovenfor, beveger seg fra venstre til høyre, vil du se at du begynner med ren tekst, lesbare data. Når symmetrisk krypteringsalgoritme og-tasten brukes for at dataene blir uleselige ciphertext., Veien til å dekryptere meldingen å tyde meningen er å bruke en dekrypteringsnøkkel. I tilfelle av symmetrisk kryptering, dekryptering nøkkelen er identisk med den nøkkelen som ble brukt til å kryptere data. I utgangspunktet, du bruker den samme tasten to ganger.
Hva Gjør Symmetrisk Kryptering Algoritmer Egentlig?
I et nøtteskall, en symmetrisk algoritme er et sett av instruksjoner i kryptografi som bruker en nøkkel til å kryptere og dekryptere data. Disse kryptering algoritmer og nøkler er lett i den forstand at de er designet for fart i behandling av store blokker eller strømmer av data., (Dette er grunnen til at symmetrisk kryptering algoritmer er kjent som bulk-chiffer.)
Asymmetrisk nøkkel algoritmer og nøkler, på den annen side, er ressurs-eaters. Tastene er massiv, og er dyrt å bruke i stor skala. Det jeg mener er at de suger opp mye av din CPU behandling ressurser og tid, batteri og båndbredde til å utføre.
Husk hvordan vi beskrevet symmetriske algoritmer som blir en viktig del av din warp drive? La oss fortsette med denne analogi., Så, hvis du var å tenke på hva asymmetrisk kryptering algoritmer, de vil være som tilsvarer thrustere i fremdriftssystem. Jada, de får du det til slutt, men de er ikke egnet for rask kryptering i stor skala.
Men, de er gode for kryptering av mindre grupper av data i offentlige kanaler. Og asymmetrisk nøkkel utveksling (som vi skal snakke mer om kort tid), er en fin måte å distribuere nøklene i de usikre offentlige kanaler.
Dette er grunnen til at folk ofte slå til symmetrisk kryptering for koding av store mengder data.,
Hva Bestemmer Styrken av en Symmetrisk krypteringsalgoritme?
Som du vil snart oppdage at ikke alle symmetriske algoritmer er skapt like. De varierer i form av styrke — men hva er egentlig gjør styrke betyr i kryptografi? Det korte svaret er at kryptografisk styrke er alt om hvor vanskelig det er for en hacker å knekke krypteringen for å få tilgang til dataene. Det lengre svaret, selvfølgelig, kan variere, avhengig av algoritmen du vurdere., Men, generelt, kryptografisk styrke vanligvis koker ned til et par viktige egenskaper:
- lengden, vilkårlighet og uforutsigbarhet av symmetrisk nøkkel,
- algoritmen evne til å tåle eller være motstandsdyktig mot kjente angrep, og
- En mangel på baksiden dører eller andre tilsiktede sårbarheter.
Symmetrisk kryptering kan være litt av en balansekunst fordi du trenger for algoritmer og nøkler som er i beregninger hardt men praktisk nok til å bruke med akseptabel ytelse.,
Symmetrisk Kryptering Algoritmer Kan ikke Stå På Sine Egne Offentlige Kanaler
Mens symmetrisk kryptering algoritmer kan høres ut som det mest logiske verktøy for alle typer av online data kryptering, det er ikke helt så enkelt. Mye som noensinne-logiske Spock og den karismatiske Kaptein Kirk, symmetrisk kryptering har også svakheter — spesielt når de brukes på egen hånd i offentlige kanaler., Disse svakhetene kommer i form av key distribution and key management problemer:
- Du trenger en sikker tilkobling til å distribuere symmetriske nøkler, og
- Prøver å holde tritt med alle som har en kopi av nøkkelen kan være smertefullt hvis du ga den ut til en masse mennesker.
Når du bruker symmetrisk kryptering, ideelt sett, du og personen du kommuniserer med å sortere ut din hemmelige nøkkel på forhånd (før du bruker det for noen datautveksling). Dette betyr at for å dele en symmetrisk nøkkel sikkert med noen, kan du hadde behov for å møte opp med dem i person til å gi det til dem., Men hva hvis du er over hele landet fra den andre parten? Eller, enda verre, hva om du er på den andre siden av verden fra dem?
Mens dette ikke ville være et problem i Star Trek-universet, der du kan ganske enkelt transport fra ett sted til et annet i løpet av sekunder, dette er ikke mulig i vårt 21. århundre transporterless verden. Her, folk er utveksling av informasjon med web-servere over hele verden hvert øyeblikk av hver dag. Dette betyr at folk ikke kan møte opp i forkant av tid til å dele ut eller mottar nøkler. Så, vi må stole på andre måter sikkert utveksle nøkler med andre parter.,
Dette er hvor asymmetriske algoritmer — eller, mer spesifikt, key exchange-protokoller — kommer inn i bildet. Asymmetrisk nøkkel utveksling gjør det mulig å utveksle symmetriske nøkler i ellers usikre offentlige kanaler. Hva du kan eller kanskje ikke innser er at du faktisk bruker denne kombinasjonen av symmetrisk og asymmetrisk kryptering teknikker akkurat nå.
Asymmetrisk Teknikker Gjør Sikkert Symmetrisk Kryptering Mulig Over Internett
La oss vurdere din tilkobling til vår hjemmeside, som et eksempel. Ser at hengelås i nettleseren din?, Det betyr at du er koblet til et sikkert nettsted.
Så, når du først har koblet til TheSSLstore.com din nettleser hadde for å utføre en prosess med vår server, som er kjent som en TLS handshake. Dette håndtrykk er en måte for serveren for å bevise for din nettleser om at det er lovlig, og er ikke et falskt. (Du vet, ‘føre nettkriminelle elsker å utgi seg for å være andre personer for å lure folk i kontakt med dem. De er litt som Romulans i så måte — alltid engasjerende i utflukter.,) Håndtrykk prosessen bruker asymmetrisk kryptering og asymmetrisk nøkkel utveksling prosesser for å gjøre dette.
- asymmetrisk kryptering er prosessen bekrefter den digitale signaturer.
- asymmetrisk nøkkel utveksling prosessen krypterer pre-master hemmelighet at din nettleser og webserver vil bruke til å lage en virtuell sesjon-tasten.
selvfølgelig, det er et par versjoner av handshake — TLS 1.0, TLS 1.2, TLS-1.3 — og det spesifikke forskjeller i hvordan de fungerer. (For eksempel Internet Engineering Task Force presser for streng bruk av forward-taushetsplikt-bare chiffer i TLS-1.,3 — men det er et emne for en annen tid.) Bare vet at bare TLS-1.2 håndtrykk bør være minimum brukt. Per oktober 2020, Qualys SSL Laboratorier rapporterer at 99% av nettsteder støtter TLS 1.2-protokollen, og på 39,8% støtter TLS-1.3-protokollen.
Vi vil ikke komme inn i detaljer på hvordan TLS handshake fungerer her, men vet at det innebærer bruk av sifreringsrekker., Disse gruppene av chiffer er hva bidra til å gjøre det mulig å etablere en sikker HTTPS-tilkobling ved å avgjøre hvilke av hver av de følgende for å bruke:
- En protokoll (TLS)
- En asymmetrisk nøkkel utveksling algoritmen (som Diffie-Hellman)
- En bulk kryptering cipher
- En digital signatur
- En hash-funksjon (for eksempel SHA2-2)
- En message authentication code (MAC) – funksjonen
Du kan lese mer om prosessen i denne explainer blogg om hvordan TLS handshake fungerer. Men for nå, la oss bli med emnet på hånden av symmetrisk kryptering algoritmer.,
De To Typer av Symmetriske Algoritmer (Chiffer)
Under symmetrisk kryptering som skjer når du koble sikkert til et nettsted, bruker du en bulk cipher til å gjøre det skje. Det er to underkategorier av bulk sifre: blokk chiffer og stream chiffer.
Blokk Chiffer
I denne type cipher, ren tekst data bryter ned til fast lengde grupper av biter kjent som blokker (som vanligvis er tilkoblet via en prosess som er kjent som kjeding). Hver blokk så blir kryptert som en enhet, noe som gjør denne prosessen litt treg., Og hvis det er ikke nok data til å fullstendig fylle en blokk, «padding» (vanligvis på et avtalt antall 0s) er deretter brukt til å sikre at blokkene møte den faste krav til lengde.
Den ideelle block cipher har en massiv nøkkellengde som ikke er praktisk, slik mange moderne chiffer å skalere tilbake-tasten størrelser for å gjøre dem brukbare. Men bare som en rask merk: i Motsetning til med asymmetrisk kryptering symmetrisk kryptering-tasten størrelser ikke bestemme størrelsen på data blokker.,
flertallet av moderne symmetrisk kryptering algoritmer faller innenfor block cipher camp, og disse typer chiffer har bredere bruk og anvendelse muligheter. Så, vi er i hovedsak kommer til å fokusere på dem her. Men hvis du lurer på hva som er den mest populære eller felles stream chiffer er, ikke fortvil, vi har det du trenger.
Stream Chiffer
Med denne type cipher, krypterer ren tekst dataene én bit om gangen. Som sådan, data blir behandlet i en bekk snarere enn i biter som i blokk chiffer. Dette gjør prosessen mindre ressurskrevende og raskere å oppnå.,
Nå, vi kommer ikke til å få inn i alle detaljene i blokk chiffer og spille av chiffer — det er et helt annet tema. Men den gode nyheten er at vi allerede har skrevet en artikkel som dekker blokk chiffer vs stream chiffer. Så, sørg for å sjekke at man ut for en mer inngående titt på hva de er og hvordan de fungerer.
Ok, nå er det er der ting begynner å bli spennende (eller mer komplisert, avhengig av hvilket perspektiv). Med delt nøkkel kryptering, det er flere kjente symmetrisk nøkkel algoritmer for å vite., La oss bryte dem alle ned for å forstå hva de er og hvordan de fungerer.
Symmetrisk Algoritme Liste: De 3 Mest Vanlige Symmetrisk Algoritme Typer
For denne delen, vi har satt sammen en symmetrisk algoritme liste som vil hjelpe oss å navigere på de mest vanlige symmetriske chiffer. Vi vil starte med ett av de eldste og arbeide oss frem til den «nyeste og beste» — som betyr, algoritmen som vi vanligvis bruker i dag for moderne symmetrisk kryptering.
Data Encryption Standard (DES)
Først opp på vår liste er data encryption standard., DES, også kjent som DEA (kort for data encryption algorithm), er en av de tidligste symmetrisk kryptering algoritmer som er blitt avverget. Det er basert på Feistel Cipher (mye som mange andre varianter av blokk chiffer) og ble faktisk ansett som en av de første symmetriske algoritmer for å bli vedtatt som en Federal Information Processing Standard (FIPS) i 1976.
DES dateres tilbake til tidlig på 1970-tallet, da sin opprinnelige form («Lucifer») ble utviklet av IBM cryptographer Horst Feistel., IBM melder at de kryptering metoden ble opprinnelig opprettet på oppdrag av Lloyds Bank of the United Kingdom. National Bureau of Standards (nå kjent som National Institute of Standards, eller NIST for kort) endte opp som søker etter forslag til et kommersielt program for kryptering, og IBM sendt inn en variant av det. Det ble også ønsket for bruk av National Security Agency (NSA) til å beskytte sine data.
Denne typen symmetrisk kryptering kart innganger av en bestemt lengde og utganger av en bestemt lengde., Som sådan, er det opererer på 64-bits blokker — noe som betyr at det kan kryptere data i grupper på opp til 64 blokker samtidig, og har en sentral størrelse på 56 bits. Det er også 8 ekstra paritet bits nøkkelen, som fungerer som en måte å kontrollere for dataoverføring feil. Det er imidlertid viktig å merke seg at paritet biter ikke noe du har bruk for kryptering.
Denne størrelsen tasten er faktisk svært små etter dagens standarder, noe som gjør den svært utsatt for brute force angrep., Også, nøkkel og blokkere lengder avviker fra den opprinnelige Lucifer-tasten og blokkere lengder, som begge ble redusert fra 128 bits.
for Å lære mer om hvordan DES-kryptering og Feistel-Nettverk fungerer, sjekk ut denne flotte videoen fra Coursera og Stanford University.
Data Encryption Standard (DES) dokument (er FIPS PUB 46-3) ble offisielt trukket tilbake på Mai 19, 2005, sammen med de dokumenter som er FIPS 74 og FIPS 81., The National institute of Standards and Technology ‘ s Secretary of Commerce utgitt følgende i Federal Register:
«Disse FIPS er trukket på grunn FIPS 46-3, DES, ikke lenger gir den sikkerheten som er nødvendig for å beskytte Føderale regjeringen informasjon. FIPS 74 og 81 er forbundet standarder som sørger for implementering og drift av den DES.»
– DES-kryptering ble etterfulgt av triple data encryption algorithm (TDEA) for enkelte programmer, men ikke alle., Imidlertid DES først og fremst var erstattet som en anbefaling av advanced encryption standard, eller hva som er kjent som AES-kryptering, i 2000. Dette er hva vi vanligvis bruker i dag for symmetrisk kryptering.
Nå, la oss utforske de to andre typer symmetrisk kryptering algoritmer.
Triple Data Encryption Algorithm (TDEA)
The triple data encryption algorithm, som ble opprettet i slutten av 1990-tallet, er litt vanskelig som det faktisk går flere forkortelser: TDEA, TDES, og 3DES., Men som du sikkert kan gjette fra sitt navn, 3DES er basert på konseptet av DES, men med en vri.
i Motsetning til sin forgjenger, TDEA bruker flere separate taster for å kryptere data — en variant av TDEA bruker to nøkler og andre varianten bruker tre taster (derav «trippel» i navnet). Den sterkere av de to er det en som bruker tre taster.,
Her er en illustrasjon av hvordan tre-tasten TDEA prosessen fungerer:
bruk av flere taster gjør med å behandle data treg og øker computational overhead, noe som er grunnen til at organisasjoner ofte hoppet over 3DES, og flyttet rett på å bruke AES.
TDEA opererer med en anstendig 168-biters nøkkelstørrelse., Men, som DES, 3DES driver også på små 64-bits blokker. Liten blokk-størrelse gjort det utsatt til sweet32 sikkerhetsbruddet (CVE-2016-2183 og CVE-2016-6329), eller hva som er kjent som sweet32 bursdag angrep. Denne utnytte utnytter en sårbarhet som gjør det mulig utilsiktet partene for å få tilgang til deler av DES/TDEA-krypterte data.
TDEA symmetrisk nøkkel krypteringsalgoritme som er satt til deprecate i form av å være til nytte for kryptografisk beskyttelse i 2023. Men, i mellomtiden, NIST SP 800-76 Rev., 2 angir at 3DES kan brukes av føderale regjeringen organisasjoner for å beskytte sensitive gradert data så lenge det er brukt «innenfor rammen av en total security-programmet.»Et slikt program ville inkluderer:
- God praksis for informasjonssikkerhet,
- Sterk fysisk sikkerhet prosedyrer, og
- Datamaskin-nettverk eller system for tilgangskontroll.
Advanced Encryption Standard (AES)
AES er den mest vanlige typen av symmetrisk krypteringsalgoritme som vi bruker i dag. Faktisk, selv NSA bruker AES kryptering for å beskytte sine sensitive data.,
AES er en variant av Rijndael familie av symmetrisk kryptering algoritmer. I motsetning til sin DES eller TDEA kolleger, det er basert på en substitusjon-permutasjon nettverk. Så, det bruker dette som sitt fundament i stedet for Feistel cipher. Du vil finne advanced encryption standard i bruk for alt fra SSL/TLS-kryptering for å trådløs og prosessor sikkerhet. Det er raskt, trygt og ikke merkbart øke din behandling overhead (i alle fall, når du bruker den høyre-tasten).,
AES opererer på blokk størrelser av 128 bits, uavhengig av nøkkelen størrelse som er brukt, og utfører kryptering operasjoner i flere runder.
Det er totalt fire AES-kryptering sub-prosesser:
- AddRoundKey
- SubBytes
- ShiftRows
- MixColumns
runder, som er utført på ren tekst data, bruker erstatninger fra en lookup-tabell. Så, en av rundene ser ut beslektet til dette:
AES, som ble den nye FIPS-godkjent encryption standard etter å ha byttet DES og erstatter 3DES, har en maksimal tasten størrelse på opp til 256 bits. Dette er om lag 4,5 ganger større enn et DES-tasten. Noen større, og det ville ikke være praktisk for-skala programmer. Nå, størrelsen på nøkkelen som avgjør hvor mange runder med operasjoner utføres — for eksempel, en 128-biters nøkkel vil ha 10 runder, mens en 256-biters nøkkel vil ha 14.
selvfølgelig, AES-kryptering er utrolig sterk., Så, noen forsøk på å knekke AES via brute force ved hjelp av moderne datateknologi er «fåfengt» som en viss kollektiv av kybernetisk individer som elsker å si. Selv Lt. Sjef Data vil trolig slite med slike maskinelt arbeid. Jeg sier det fordi selv kvante-datamaskiner som ikke forventes å ha like stor virkning på symmetrisk krypteringsalgoritme som det vil, si, moderne asymmetrisk kryptering metoder. (Symmetrisk kryptering metoder ville kreve større taster for å være quantum motstandsdyktig, mens den offentlige nøkkelen metoder vil ikke lenger være sikker — perioden.,)
For en mer inngående titt på advanced encryption standard, være sikker på å sjekke ut våre andre artikkel om emnet. Det, vil du få en svært teknisk titt på hvordan AES fungerer.
Selvfølgelig, Disse Er ikke de Eneste Tre Symmetriske Algoritmer er I Bruk…
Det er nok av andre typer symmetrisk kryptering algoritmer som er nyttig for ulike formål og kryptografiske funksjoner. Bare for å gi deg en rask smak, liste over noen av disse algoritmene er:
selvfølgelig, det er andre ciphers, også — men vi kommer ikke til å inkludere dem alle her., Men dette minst gir du noen eksempler på hva som finnes der ute så langt som AES algoritmer er bekymret.
her Finner Du Symmetriske Algoritmer er I Arbeid
Symmetrisk kryptering algoritmer, når de brukes på deres egne, er best egnet for å kryptere data i ro eller i ikke-offentlige-tv. Jeg sier det fordi de er ofte funnet å beskytte på-resten data i ulike situasjoner, inkludert databaser, internett-tjenester, og bank-relaterte transaksjoner. (Det siste er fordi Payment Card Industry Data Security Standards, eller PCI DSS for kort, krever det.,)
Men de er ikke de eneste stedene de er nyttige. Oh, nei — du vil også finne symmetriske algoritmer er i bruk over internett., Når du bruker dem sammen med asymmetrisk kryptering for key exchange — for eksempel når du kobler til en sikker webside — så symmetrisk kryptering kommer inn i bildet, med tjenester som for eksempel:
- Hjemmeside data utveksling
- Google ‘ s G utvalg av elektroniske tjenester
- CodeGuard nettstedet backup verktøy
- SalesForce-plattformen
Hva Vi Kryptert Ut på Symmetriske krypteringsalgoritmer (TL;DR)
Hadde ikke lyst til å gå inn i alle de tekniske mumbo-jumbo? (Eller ikke har lyst til å lese gjennom min nerdete Star Trek sammenligninger av symmetrisk kryptering algoritmer?,) Ingen grunn til bekymring. Her er noen av de viktigste takeaways fra denne artikkelen på symmetrisk nøkkel algoritmer:
- Kryptering algoritmer er i utgangspunktet trinn-for-trinn-instruksjonene for å utføre kryptografiske funksjoner (for eksempel kryptering, dekryptering, nummerering etc.). Algoritmer kom i asymmetrisk og symmetrisk varianter. I det ene nøkkelen krypterer data og annen dekrypterer data. I det siste, er en viktig utfører både kryptering og dekryptering funksjoner.
- Symmetriske algoritmer er effektive prosesser som er utformet for å kryptere data på sikre, ikke-offentlig-mot-tv.,
- En prosess som er kjent som en TLS handshake gjør det mulig for deg å bruke en form for symmetrisk kryptering i offentlig-tv.
- Det er mange forskjellige typer av symmetrisk nøkkel algoritmer som har blitt brukt i de senere år. Tre av de mest vanlige er DES, TDEA/3DES, og AES.
sørg for å holde deg oppdatert om vår neste kapittel i denne bloggen serien på symmetrisk kryptering i de kommende ukene. Og til neste gang… leve lenge og riktig.
- #Kryptering Algoritmer
- #Symmetrisk