RSA-kryptering är en av de förstaett praktiskt kryptosystem för offentlig nyckel, som ofta används för säker dataöverföring. Huvudskillnaden från liknande tjänster är att krypteringsnyckeln är offentlig och skiljer sig från dekrypteringsnyckeln, som hålls hemlig. I RSA-tekniken baseras denna asymmetri på den praktiska komplexiteten i att fakturera två stora primtal (factoringproblem).
Skapelsens historia
RSA-namn består av de första bokstäverna i efternamnenRivest, Shamir och Adleman är forskarna som först offentliggjorde sådana krypteringsalgoritmer 1977. Clifford Cox, en engelsk matematiker som arbetar för de brittiska underrättelsetjänsterna, utvecklade först ett motsvarande system 1973, men det avklassificerades inte förrän 1997.
RSA-användare skapar och publicerar sedanen offentlig nyckel baserad på två stora primtal tillsammans med ett hjälpvärde. Primtal måste hållas hemliga. Vem som helst kan använda den offentliga nyckeln för att kryptera ett meddelande, men om det är tillräckligt stort kan bara någon med kunskap om primtal avkoda meddelandet. Redovisningen av RSA-kryptering är känd som huvudproblemet: idag diskuteras en öppen diskussion om hur pålitlig mekanismen är.
RSA är en relativt långsam algoritm,av den anledningen används den inte så ofta för direkt kryptering av användardata. Den vanligaste användningen av denna metod är att kryptera delade nycklar för en symmetrisk krypteringsnyckel, som i sin tur kan utföra masskryptering och dekryptering med mycket högre hastighet.
När uppträdde kryptosystemet i sin moderna form?
Idén om ett asymmetriskt nyckelkryptosystemtillskrivs Diffie och Hellman, som publicerade konceptet 1976 och introducerade digitala signaturer och försökte tillämpa talteori. Deras formulering använder en delad hemlig nyckel genererad från exponentiering av något tal modulo ett primtal. De lämnade emellertid problemet med att genomföra denna funktion, eftersom principerna för factoring inte var väl förstådda vid den tiden.
Rivest, Adi Shamir och Adleman i MassachusettsInstitute of Technology gjorde flera försök under året för att skapa en enkelriktad funktion som är svår att avkoda. Rivest och Shamir (som datavetare) föreslog många potentiella funktioner, medan Adleman (som matematiker) letade efter svaga punkter i algoritmen. De tog många tillvägagångssätt och slutligen, i april 1977, utvecklade äntligen systemet som nu kallas RSA.
EDS och offentlig nyckel
Elektronisk digital signatur eller EDS,är en integrerad del av elektroniska dokument. Det bildas när en viss kryptografisk förändring i data. Med hjälp av detta attribut är det möjligt att kontrollera integriteten för ett dokument, dess konfidentialitet och också att fastställa vem som är dess ägare. I själva verket är detta ett alternativ till den vanliga standardsignaturen.
Detta kryptosystem (RSA-kryptering) erbjuderallmän nyckel, vad som skiljer sig från symmetrisk. Principen för dess funktion är att två olika nycklar används - privata (krypterade) och även offentliga. Den första används för att generera en EDS och därefter kunna dekryptera texten. Den andra är för den faktiska krypteringen och verifieringen av den digitala signaturen.
Användningen av en signatur möjliggör en bättre förståelse av RSA-kryptering, ett exempel på vilket kan nämnas som ett vanligt klassificerat dokument "utom synhåll".
Vad är kärnan i algoritmen?
RSA-algoritmen består av fyra steg:generering av nycklar, deras distribution, kryptering och dekryptering. Som redan nämnts inkluderar RSA-kryptering en offentlig nyckel och en privat nyckel. Öppen kan vara känd för alla och används för att kryptera meddelanden. Dess väsen ligger i det faktum att meddelanden som krypteras med en offentlig nyckel endast kan dekrypteras inom en viss tidsperiod med hjälp av en hemlig nyckel.
Av säkerhetsskäl bör heltal varaär slumpmässigt valda och har samma storlek, men skiljer sig åt i flera siffror för att göra factoring svårare. Identiska nummer kan effektivt hittas med hjälp av ett test för att de är enkla, så krypteringsinformation måste nödvändigtvis bli mer komplicerad.
Den offentliga nyckeln består av en modul och en offentlig exponent. Privat består av en modul och en privat indikator, som måste hållas hemlig.
RSA-filkryptering och svagheter
Det finns dock ett antal hackningsmekanismer.enkel RSA. I kryptering med låga värden och låga värden på siffror kan chiffrering enkelt brytas genom att välja roten till chiffertexten framför heltal.
Eftersom RSA-kryptering ärMed en deterministisk algoritm (dvs. ingen slumpmässig komponent) kan en angripare framgångsrikt starta en vald klartextattack mot ett kryptosystem genom att kryptera den troliga klartexten under den offentliga nyckeln och kontrollera om de är lika med krypteringstexten. Ett kryptosystem kallas semantiskt säkert om en angripare inte kan skilja mellan två krypteringar från varandra, även om han känner till motsvarande texter i den avslöjade formen. Som beskrivits ovan är RSA inte semantiskt säkert såvida det inte kompletteras med andra tjänster.
Ytterligare krypterings- och skyddsalgoritmer
För att undvika ovanstående problem, närPraktiska RSA-implementeringar bäddar vanligtvis in någon form av strukturerad, randomiserad stoppning innan kryptering. Detta säkerställer att innehållet inte faller inom ramen för osäker klartext och att meddelandet inte kan avslöjas av en slump.
RSA Cryptosystem Security and Encryptioninformationen baseras på två matematiska problem: problemet med att ta med stort antal och själva RSA-problemet. Fullständig redovisning av ciphertext och EDS i RSA anses vara oacceptabelt med antagandet att båda dessa problem inte kan lösas tillsammans.
Men på grund av möjligheten till återhämtningenkla faktorer kan en angripare beräkna en hemlig siffra från den offentliga nyckeln och sedan dekryptera texten med hjälp av en standardprocedur. Trots det faktum att det idag inte finns någon befintlig metod för att faktorisera stort antal på en klassisk dator har det inte bevisats att den inte existerar.
automation
Ett verktyg som heter Yafu kan varaanvänds för att optimera denna process. Automation i YAFU är en modern funktion som kombinerar faktoriseringsalgoritmer i en intelligent och adaptiv metod som minimerar tiden för att hitta faktorer för godtyckliga inmatningsnummer. De flesta implementeringar av algoritmen är flertrådade, vilket gör att Yafu kan dra full nytta av processorer med flera eller flera kärnor (inklusive SNFS, SIQS och ECM). Först och främst är det ett hanterat kommandoradsverktyg. Tiden det tar att hitta krypteringsfaktorn med Yafu på en vanlig dator kan minskas till 103,1746 sekunder. Verktyget bearbetar binära filer med en kapacitet på 320 bitar eller mer. Det är mycket komplex programvara som kräver en viss teknisk skicklighet för att installera och konfigurera. Således kan RSA-kryptering C vara sårbar.
Hackningsförsök i modern tid
2009 använde Benjamin Moody bitRSA-512-nyckeln arbetade med att dekryptera kryptotext i 73 dagar med endast känd programvara (GGNFS) och en genomsnittlig stationär dator (Athlon64 dubbelkärna vid 1900 MHz). Som denna erfarenhet visar, tog det lite mindre än 5 gigabyte disk och cirka 2,5 gigabyte RAM för "siktning" -processen.
Från och med 2010 var det största faktoriserade RSA-numret 768 bitar långt (232 decimaler, eller RSA-768). Upplysningen varade i två år på flera hundra datorer samtidigt.
I praktiken är RSA-nycklarna långa -typiskt 1024 till 4096 bitar. Vissa experter tror att 1024-bitars nycklar kan bli opålitliga inom en snar framtid eller till och med redan äventyras av en ganska välfinansierad angripare. Men få skulle argumentera för att 4096-bitars nycklar också kunde avslöjas inom överskådlig framtid.
utsikter
Därför antas det generellt att RSAär säkert om siffrorna är tillräckligt stora. Om huvudnumret är 300 bitar eller mindre kan ciphertext och EDS sönderdelas inom några timmar på en persondator med programvara som redan är fritt tillgänglig. 512-bitars nycklar visade sig kunna sprickas redan 1999 med flera hundra datorer. Detta är möjligt idag i flera veckor med hjälp av allmänt tillgänglig hårdvara. Således är det mycket möjligt att RSA-kryptering i framtiden lätt kommer att avslöjas på fingrarna och systemet blir hopplöst föråldrat.
Officiellt 2003 ifrågasattes säkerheten för 1024-bitars nycklar. Det rekommenderas för närvarande att ha en längd på minst 2048 bitar.