Forskare frÄn University of California, San Diego har utvecklat en förbÀttrad attackteknik mot RSA-algoritmen, vilket möjliggör förfalskning av digitala signaturer utan att behöva faktorisera de primtalen som ligger till grund för RSA och utan att ÄterstÀlla den privata nyckeln. Resurserna som krÀvs för att utföra en attack pÄ en 1024-bitars RSA-nyckel uppskattas till 1380 Är av berÀkningar pÄ en processor kÀrna, vilket pÄ det tillgÀngliga universitetsklustret har gjort det möjligt att under 5 mÄnader bestÀmma de parametrar som krÀvs för att skapa falska RSA-signaturer (AI-acceleratorer och GPU anvÀndes inte i experimentet, och med deras anvÀndning kan berÀkningstiden reduceras avsevÀrt). JÀmfört med detta krÀver den klassiska faktoriseringstekniken mellan 500 000 och en miljon Är av berÀkningar pÄ en processor kÀrna för att Äterskapa den privata nyckeln för RSA-1024.
För att utföra attacken krÀvs möjlighet att upprepade gÄnger skicka förfrÄgningar för att signera de data som angriparen generar, till exempel genom att kontakta en autentiseringstjÀnst eller en HSM-modul. För att bestÀmma parametrarna för RSA-1024 rÀcker det med att skicka 232 sÄdana förfrÄgningar, och för att attackera RSA-2048-nycklarna som anvÀnds i Privacy Pass-protokollet krÀvs 243. NÀr en uppsÀttning signerade data har erhÄllits startar en lÄng berÀkningsprocess (för RSA-1024 ungefÀr 265 operationer), varefter angriparen kan skapa falska signaturer för vilken data som helst, vilket tar cirka 180 timmar av berÀkningar pÄ en kÀrna för varje signatur.
Metoden Àr tillÀmplig endast för RSA-signaturer dÀr formatering och ytterligare fyllnad före kryptering (padding) inte anvÀnds. Attacken Àr sÄrbar för implementeringar av blind signatur, inklusive de som anvÀnds i Privacy Pass-protokollet. De flesta allmÀnt anvÀnda RSA-implementationer, inklusive PKCS#1v1.5 och RSA-PSS (som anvÀnds i TLS och SSH), tillÀmpar ytterligare fyllnad och Àr dÀrför inte sÄrbara för attacken.
Grunden för RSA-kryptering Àr exponentiering modulo ett stort tal. Den offentliga nyckeln innehÄller modul och exponent. Modulen bildas baserat pÄ tvÄ slumpmÀssiga primtalsnummer, som endast Àgs av innehavaren av den privata nyckeln. Den föreslagna metoden bygger pÄ en forskning publicerad 2007, som bevisade att det Àr mindre resurskrÀvande att extrahera roten i den exponent som anges i den offentliga nyckeln frÄn ett krypterat meddelande, Àn att faktorisera sjÀlva faktorerna.
Genom att anvÀnda en specialmetod för sÄllning av numeriska fÀlt (SNFS) lyckades forskarna reducera komplexiteten för att kompromettera RSA-1024-nycklar till 265 operationer, vilket möjliggör praktiska attacker pÄ moderna kluster. För 2048-bitars RSA-nycklar uppskattas angreppskomplexiteten till 290, vilket teoretiskt Àr genomförbart av stora företag eller underrÀttelsetjÀnster. För 4096-bitars nycklar uppgÄr angreppskomplexiteten till 2119 operationer, vilket i praktiken fortfarande Àr oÄtkomligt, men under minimumen 2128, rekommenderat av NSA, National Institute of Standards and Technology och European Union Agency for Cybersecurity.
KĂ€lla: opennet.ru
