angreb på kryptosystemer
i den nuværende æra er ikke kun forretning, men næsten alle aspekter af menneskelivet drevet af information. Derfor er det blevet bydende nødvendigt at beskytte nyttige oplysninger fra ondsindede aktiviteter såsom angreb. Lad os overveje de typer angreb, som information typisk udsættes for.
angreb er typisk kategoriseret baseret på den handling, der udføres af angriberen. Et angreb kan således være passivt eller aktivt.
Passive angreb
hovedmålet med et passivt angreb er at få uautoriseret adgang til oplysningerne. For eksempel kan handlinger som aflytning og aflytning på kommunikationskanalen betragtes som passivt angreb.
disse handlinger er passive, da de hverken påvirker information eller forstyrrer kommunikationskanalen. Et passivt angreb ses ofte som at stjæle information. Den eneste forskel i at stjæle fysiske varer og stjæle information er, at tyveri af data stadig efterlader ejeren i besiddelse af disse data. Passivt informationsangreb er således farligere end at stjæle varer, da informationstyveri kan gå ubemærket hen af ejeren.
aktive angreb
et aktivt angreb involverer ændring af informationen på en eller anden måde ved at udføre en eller anden proces på informationen. For eksempel,
-
ændring af oplysningerne på en uautoriseret måde.
-
initiering af utilsigtet eller uautoriseret overførsel af oplysninger.
-
ændring af godkendelsesdata, f. eks. navn på ophavsmand eller tidsstempel, der er knyttet til oplysninger
-
uautoriseret sletning af data.
-
nægtelse af adgang til oplysninger for legitime brugere (lammelsesangreb).
kryptografi giver mange værktøjer og teknikker til implementering af kryptosystemer, der er i stand til at forhindre de fleste af de ovenfor beskrevne angreb.
antagelser om angriber
lad os se det fremherskende miljø omkring kryptosystemer efterfulgt af de typer angreb, der anvendes til at bryde disse systemer −
miljø omkring kryptosystem
mens man overvejer mulige angreb på kryptosystemet, er det nødvendigt at kende kryptosystemmiljøet. Angriberens antagelser og viden om miljøet bestemmer hans evner.
i kryptografi er følgende tre antagelser lavet om sikkerhedsmiljøet og angriberens evner.
detaljer om Krypteringsskemaet
designet af et kryptosystem er baseret på følgende to kryptografialgoritmer−
-
offentlige algoritmer-med denne mulighed er alle detaljer i algoritmen i det offentlige område, kendt for alle.
-
proprietære algoritmer – detaljerne i algoritmen er kun kendt af systemdesignerne og brugerne.
i tilfælde af proprietære algoritmer sikres sikkerhed gennem uklarhed. Private algoritmer er muligvis ikke de stærkeste algoritmer, da de udvikles internt og muligvis ikke undersøges grundigt for svaghed.
for det andet tillader de kun kommunikation mellem lukkede grupper. Derfor er de ikke egnede til moderne kommunikation, hvor folk kommunikerer med et stort antal kendte eller ukendte enheder. Ifølge Kerckhoffs princip foretrækkes algoritmen også at være Offentlig med styrken af kryptering, der ligger i nøglen.
den første antagelse om sikkerhedsmiljø er således, at krypteringsalgoritmen er kendt for angriberen.
tilgængelighed af Krypteringstekst
vi ved, at når klarteksten er krypteret til krypteringstekst, sættes den på usikker offentlig kanal (sige e-mail) til transmission. Således kan angriberen naturligvis antage, at den har adgang til den krypteringstekst, der genereres af kryptosystemet.
tilgængelighed af klartekst og Krypteringstekst
denne antagelse er ikke så indlysende som andre. Der kan dog være situationer, hvor en angriber kan få adgang til almindelig tekst og tilsvarende krypteringstekst. Nogle sådanne mulige omstændigheder er−
-
angriberen påvirker afsenderen til at konvertere almindelig tekst efter eget valg og opnår chifferteksten.
-
modtageren kan utilsigtet videregive klarteksten til angriberen. Angriberen har adgang til tilsvarende krypteringstekst indsamlet fra åben kanal.
-
i et kryptosystem med offentlig nøgle er krypteringsnøglen i åbent domæne og er kendt for enhver potentiel angriber. Ved hjælp af denne nøgle kan han generere par af tilsvarende almindelige tekster og krypteringstekster.
kryptografiske angreb
en angribers grundlæggende hensigt er at bryde et kryptosystem og finde klarteksten fra krypteringsteksten. For at få klarteksten behøver angriberen kun at finde ud af den hemmelige dekrypteringsnøgle, da algoritmen allerede er i det offentlige domæne.
derfor anvender han maksimal indsats for at finde ud af den hemmelige nøgle, der anvendes i kryptosystemet. Når angriberen er i stand til at bestemme nøglen, betragtes det angrebne system som ødelagt eller kompromitteret.
baseret på den anvendte metode er angreb på kryptosystemer kategoriseret som følger−
-
Ciphertekst only Attacks (COA) − i denne metode har angriberen adgang til et sæt ciphertekst(er). Han har ikke adgang til tilsvarende almindelig tekst. COA siges at være vellykket, når den tilsvarende almindelige tekst kan bestemmes ud fra et givet sæt krypteringstekst. Lejlighedsvis kan krypteringsnøglen bestemmes ud fra dette angreb. Moderne kryptosystemer er beskyttet mod krypteringstekst-kun angreb.
-
kendt Klartekstangreb − KPA) – i denne metode kender angriberen klarteksten for nogle dele af krypteringsteksten. Opgaven er at dekryptere resten af chifferteksten ved hjælp af disse oplysninger. Dette kan gøres ved at bestemme nøglen eller via en anden metode. Det bedste eksempel på dette angreb er lineær kryptanalyse mod blokcifre.
-
valgt Klartekstangreb − CPA) – i denne metode har angriberen den valgte tekst krypteret. Så han har chiffertekst-klartekst par efter eget valg. Dette forenkler hans opgave med at bestemme krypteringsnøglen. Et eksempel på dette angreb er differentiel kryptanalyse anvendt mod blokcifre såvel som hashfunktioner. Et populært offentligt nøglekryptosystem, RSA er også sårbart over for valgte klartekstangreb.
-
Dictionary Attack – Dette angreb har mange varianter, som alle involverer kompilering af en ‘ordbog’. I den enkleste metode til dette angreb bygger angriberen en ordbog med krypteringstekster og tilsvarende klartekster, som han har lært over en periode. I fremtiden, når en angriber får chifferteksten, henviser han ordbogen for at finde den tilsvarende almindelige tekst.
-
Brute Force Attack (BFA) − i denne metode forsøger angriberen at bestemme nøglen ved at forsøge alle mulige nøgler. Hvis nøglen er 8 bit lang, er antallet af mulige nøgler 28 = 256. Angriberen kender chifferteksten og algoritmen, nu forsøger han alle de 256 nøgler en efter en til dekryptering. Tiden til at fuldføre angrebet ville være meget høj, hvis nøglen er lang.
-
Fødselsdag angreb – dette angreb er en variant af brute-force teknik. Det bruges mod den kryptografiske hash-funktion. Når elever i en klasse bliver spurgt om deres fødselsdage, er svaret en af de mulige 365 datoer. Lad os antage, at den første studerendes fødselsdato er 3.August. Så for at finde den næste studerende, hvis fødselsdato er 3.August, er vi nødt til at spørge 1,25*365 35 25 studerende.
tilsvarende, hvis hash-funktionen producerer 64 bit hashværdier, er de mulige hashværdier 1. 8h1019. Ved gentagne gange at evaluere funktionen for forskellige indgange forventes det samme output at blive opnået efter ca.5, 1h109 tilfældige indgange.
hvis angriberen er i stand til at finde to forskellige input, der giver den samme hashværdi, er det en kollision, og at hash-funktionen siges at være brudt.
-
Man in Middle Attack (MIM) – målene for dette angreb er for det meste offentlige nøglekryptosystemer, hvor nøgleudveksling er involveret, før kommunikation finder sted.
-
vært a ønsker at kommunikere til vært B og anmoder derfor om offentlig nøgle til B.
-
en angriber opfanger denne anmodning og sender sin offentlige nøgle i stedet.
-
uanset hvilken vært a sender til vært B, er angriberen i stand til at læse.
-
for at opretholde kommunikationen krypterer angriberen dataene igen efter læsning med sin offentlige nøgle og sender til B.
-
angriberen sender sin offentlige nøgle som A ‘ S offentlige nøgle, så B tager den som om den tager den fra A.
-
-
Side Channel Attack − SCA) – denne type angreb er ikke imod nogen bestemt type kryptosystem eller algoritme. I stedet lanceres det for at udnytte svagheden i fysisk implementering af kryptosystemet.
-
Timing angreb-de udnytter det faktum, at forskellige beregninger tager forskellige tidspunkter at beregne på processor. Ved at måle sådanne tider er det muligt at vide om en bestemt beregning, som processoren udfører. For eksempel, hvis krypteringen tager længere tid, indikerer det, at den hemmelige nøgle er lang.
-
Strømanalyseangreb – disse angreb ligner timingangreb bortset fra at mængden af strømforbrug bruges til at få information om arten af de underliggende beregninger.
-
Fejlanalyseangreb – i disse angreb induceres fejl i kryptosystemet, og angriberen studerer det resulterende output for nyttig information.
praktiske angreb
angrebene på kryptosystemer beskrevet her er meget akademiske, da flertallet af dem kommer fra det akademiske samfund. Faktisk involverer mange akademiske angreb ganske urealistiske antagelser om miljøet såvel som angriberens evner. For eksempel I valgt-chiffertekst angreb, angriberen kræver en upraktisk antal bevidst valgt klartekst-chiffertekst par. Det kan ikke være praktisk helt.
ikke desto mindre bør det faktum, at ethvert angreb eksisterer, være en grund til bekymring, især hvis angrebsteknikken har potentiale til forbedring.