A5 er en streaming krypteringsalgoritme , der bruges til at sikre fortroligheden af de data, der transmitteres mellem telefonen og basestationen i det europæiske system for mobil digital kommunikation GSM ( Groupe Spécial Mobile ).
Chifferen er baseret på bitvis addition modulo to (boolesk XOR-operation) af den genererede pseudo-tilfældige sekvens og informationen, der skal krypteres. I A5 implementeres en pseudo-tilfældig sekvens baseret på tre lineære feedback-skiftregistre . Registrene er henholdsvis 19, 22 og 23 bit lange. Skift styres af et specielt kredsløb, der organiserer skiftet af mindst to registre ved hvert trin, hvilket fører til deres ujævne bevægelse. Sekvensen dannes af XOR-operationen på registrenes udgangsbit.
Oprindeligt blev en strømchiffer udviklet af franske militærkryptografer til udelukkende at blive brugt til militære formål. I slutningen af 80'erne krævede GSM-standarden skabelsen af et nyt, moderne sikkerhedssystem. Det var baseret på tre hemmelige algoritmer: autentificering - A3 , stream-kryptering - A5, generering af sessionsnøgler - A8 . En fransk udvikling blev brugt som A5-algoritmen. Denne chiffer gav en ret god sikkerhedsstrøm og derfor fortroligheden af samtalen. I første omgang forventedes eksporten af standarden fra Europa ikke, men snart opstod behovet. Derfor blev A5 omdøbt til A5/1 og begyndte at blive distribueret både i Europa og i USA. For andre lande (inklusive Rusland) blev algoritmen ændret, hvilket væsentligt sænkede krypteringsstyrken. A5/2 er specielt designet som en eksportmulighed for lande uden for EU. Den kryptografiske styrke af A5/2 blev reduceret ved at tilføje et andet register (17 bit), der styrer skift af resten. I A5/0 er der ingen kryptering overhovedet. Algoritme A5/3, baseret på Kasumi- algoritmen, er også udviklet og godkendt til brug i 3G-netværk. Disse modifikationer kaldes A5/x.
Officielt blev denne kryptoordning ikke offentliggjort, og dens struktur blev ikke offentliggjort. Dette skyldtes, at udviklerne stolede på sikkerhed på bekostning af uklarhed , hvilket betyder, at algoritmer er sværere at knække, hvis deres beskrivelser ikke er offentligt tilgængelige. Data blev kun leveret til GSM-operatører, når det var nødvendigt. I 1994 var detaljerne i A5-algoritmen dog kendt: Det britiske telefonselskab British Telecom indsendte al dokumentation vedrørende standarden til University of Bradford til analyse uden at indgå en tavshedspligt . Derudover dukkede materialer om standarden op på en af konferencerne i Kina. Som et resultat blev hans plan gradvist lækket ud i brede kredse. Samme år offentliggjorde videnskabsmændene fra Cambridge Ross Anderson (Ross Anderson) og Michael Roe (Michael Roe) et kryptoskema gendannet fra disse data og vurderede dets kryptografiske styrke [1] . Den endelige algoritme blev præsenteret i Jovan Golic's arbejde på Eurocrypt'97-konferencen.
Algoritme A5 er i øjeblikket en hel familie af cifre. For beskrivelse, lad os tage A5/1 som stamfader til denne familie. Ændringer i afledte algoritmer vil blive beskrevet separat.
I denne algoritme svarer hvert almindeligt teksttegn til et chifferteksttegn. Tekst er ikke opdelt i blokke (som i blokchiffer ) og ændres ikke i størrelse. For at forenkle hardwareimplementeringen og derfor øge ydeevnen, bruges kun de enkleste operationer: modulo 2 addition (XOR) og registerskift.
Outputsekvensen dannes ved at tilføje kildetekststrømmen til den genererede sekvens (gamma). Det ejendommelige ved XOR-operationen er, at den anvendes et lige antal gange, fører til startværdien. Derfor afkodes meddelelsen ved at tilføje chifferteksten til en kendt sekvens.
Systemets sikkerhed afhænger således helt af sekvensens egenskaber. Ideelt set er hver bit af gamma en uafhængig tilfældig variabel, og selve sekvensen er tilfældig. En sådan ordning blev opfundet af Vernam i 1917 og opkaldt efter ham. Som Claude Shannon beviste i 1949, giver dette absolut sikkerhed. Men brugen af en tilfældig sekvens betyder transmission over en sikker kanal af en meddelelse, der i volumen svarer til almindelig tekst, hvilket komplicerer opgaven meget og praktisk talt ikke bruges nogen steder.
I rigtige systemer skabes en nøgle af en given størrelse, som nemt transmitteres over en privat kanal. Sekvensen genereres baseret på den og er pseudo-tilfældig. En stor klasse af stream-cifre (inklusive A5) er chiffer, hvis pseudo-tilfældige sekvensgenerator er baseret på lineære feedback-skifteregistre.
Et lineært feedbackskifteregister består af selve registret (en sekvens af bits af en given længde) og feedback. På hver cyklus sker følgende handlinger: biten længst til venstre (højeste bit) udtrækkes, sekvensen flyttes til venstre, og værdien af feedbackfunktionen skrives til den tomme højre celle (mindst signifikant bit). Denne funktion er modulo to-summen af visse bit i registret og skrives som et polynomium, hvor eksponenten angiver bittallet. De udtrukne bits danner outputsekvensen.
For LFSR er hovedindikatoren perioden for den pseudo-tilfældige sekvens. Det vil være maksimum (og lig med 2 n − 1), hvis tilbagekoblingspolynomiet er primitivt modulo 2 . Udgangssekvensen kaldes i dette tilfælde en M-sekvens.
LFSR-system i A5LFSR egner sig let til krypteringsanalyse og er ikke stærk nok til at blive brugt til kryptering. Praktiske anvendelser er systemer med variable urregistre med forskellige længder og feedbackfunktioner.
Strukturen af A5-algoritmen er som følger:
Lad os overveje funktionerne i algoritmens funktion baseret på det kendte skema. Datatransmission udføres i en struktureret form - opdelt i rammer (114 bit). Før initialisering nulstilles registrene, sessionsnøglen (K - 64 bit) dannet af A8, og rammenummeret (Fn - 22 bit) indlæses til algoritmen . Dernæst udføres følgende trin sekventielt:
Et andet 17-bit register (R4) er blevet tilføjet til A5/2 algoritmen , som styrer restens bevægelse. Strukturændringerne er som følger:
Ændringer i funktion er ikke så væsentlige og vedrører kun initialisering:
Det kan ses, at initialisering tager samme tid (100 cyklusser uden generering er opdelt i to dele).
Algoritme A5/3 blev udviklet i 2001 og skulle erstatte A5/1 i tredje generation af mobilsystemer. Det kaldes også Kasumi- algoritmen . Da det blev oprettet, blev Mitsubishi Corporations MISTY -chiffer taget som grundlag. A5/3 anses i øjeblikket for at give den nødvendige modstand.
Algoritme A5/0 indeholder ingen kryptering.
Udviklingen af GSM-standarden betød en kraftig krypteringsmaskine, der ikke kunne hackes (især i realtid). Den anvendte udvikling, med korrekt implementering, gav højkvalitetskryptering af de transmitterede data. Det er den slags information, der kan fås fra virksomheder, der distribuerer denne standard. Men det er værd at bemærke en vigtig nuance: at lytte til samtaler er en integreret egenskab, der bruges af særlige tjenester. De var interesserede i muligheden for aflytning til deres egne formål. Der blev således foretaget ændringer i algoritmen, som gjorde det muligt at knække på en acceptabel tid. Derudover blev A5 modificeret til eksport til A5/2. MoU (Memorandum of Understand Group Special Mobile standard) anerkender, at formålet med at udvikle A5/2 var at reducere krypteringens kryptografiske styrke, men de officielle testresultater siger, at der ikke er nogen kendte mangler ved algoritmen [2] .
Med fremkomsten af data på A5-standarden begyndte forsøg på at knække algoritmen samt at søge efter sårbarheder. En stor rolle blev spillet af standardens funktioner, som kraftigt svækker beskyttelsen, nemlig:
Baseret på disse "huller" i algoritmen opbygges hacking-skemaer.
Nøglen er en 64-bit sessionsnøgle, rammenummeret antages at være kendt. Således er kompleksiteten af et brute-force angreb 2 64 .
De første anmeldelser af chifferen (værket af Ross Anderson) afslørede straks algoritmens sårbarhed - på grund af et fald i den effektive nøglelængde (nulstilling af 10 bits) faldt kompleksiteten til 2 45 (med 6 størrelsesordener på én gang ). Andersons angreb er baseret på antagelsen om den indledende udfyldning af korte registre og på outputtet for at opnå udfyldningen af den tredje.
I 1997 offentliggjorde Jovan Golic resultaterne af A5-analysen. Han foreslog en måde at bestemme den indledende fyldning af registre fra et kendt segment af gamma, kun 64 bit langt. Dette segment er opnået fra nul-meddelelser. Angrebet har en gennemsnitlig sværhedsgrad på 2 40 .
I 1999 demonstrerede Wagner og Goldberg let, at for at åbne systemet er det tilstrækkeligt at bestemme den indledende fyldning R4 ved opregning. Kontrol udføres på bekostning af nul rammer. Kompleksiteten af dette angreb er 2 17 , så det tager et par sekunder at bryde chifferen på en moderne computer.
I december 1999 udgav en gruppe israelske videnskabsmænd ( Adi Shamir , Alex Biryukov og senere amerikaneren Wagner meget ikke-triviel, men teoretisk meget effektiv metode til at åbne A5/1:
Dette er en meget kompleks idé, som vi angriber på mange fronter for at akkumulere et par små fordele, men tilsammen gør de en stor forskel.Adi Shamir
Symmetriske kryptosystemer | |
---|---|
Stream-cifre | |
Feistel netværk | |
SP netværk | |
Andet |