Hulumtuesit nga Universiteti i Kalifornisë në San Diego kanë zhvilluar një teknikë të avancuar sulmi ndaj algoritmit RSA, që lejon falsifikimin e nënshkrimeve digjitale pa faktorizimin e numrave primarë që mbështesin RSA dhe pa nevojën për të rikuperuar çelësin e fshehtë. Burimet e nevojshme për të kryer sulmin ndaj një çelësi RSA 1024-bit, janë vlerësuar në 1380 vjet llogaritjesh në një bërthamë procesori të vetme, gjë që në klasterin e universitetit lejoi përcaktimin e parametrave të nevojshëm për formimin e nënshkrimeve RSA falsifikues gjatë 5 muajve (në eksperiment nuk u përdorën përshpejtues AI dhe GPU, dhe me përdorimin e tyre, koha e llogaritjes mund të reduktohet ndjeshëm). Për krahasim, metoda klasike e faktorizationit kërkon nga 500,000 deri në një milion vjet llogaritjesh në një bërthamë procesori për të rikostituar çelësin e fshehtë RSA-1024.
Për kryerjen e sulmit kërkohet mundësia për të dërguar me shumicë kërkesa për nënshkrimin e të dhënave të formuara nga sulmuesi, për shembull, duke u drejtuar shërbimit të autorizimit ose moduli HSM. Për të përcaktuar parametrat për RSA-1024, mjafton të dërgoni 232 kërkesa të tilla, ndërsa për sulmin ndaj çelësave RSA-2048, të përdorura në protokollin Privacy Pass, kërkohen 243 kërkesa. Pas marrjes së një grupi të dhënash të nënshkruara, fillon një proces i gjatë llogaritjeje të parametrave (për RSA-1024 rreth 265 operacione), pas të cilit sulmuesi mund të krijojë nënshkrime falsifikues për çdo të dhënë, duke shpenzuar rreth 180 orë llogaritjesh në një bërthamë për çdo nënshkrim.
Metoda është e aplikueshme vetëm për nënshkrimet RSA, në të cilat nuk përdoret formatimi dhe mbushja shtesë para enkriptimit (padding). Sulmi është i ndjeshëm ndaj implementimeve të nënshkrimit të verbër, përfshirë ato që përdoren në protokollin Privacy Pass. Shumica e implementimeve të zakonshme të RSA, përfshirë PKCS#1v1.5 dhe RSA-PSS (që përdoren në TLS dhe SSH), aplikojnë mbushje shtesë dhe nuk janë të ndjeshme ndaj sulmit.
The RSA encryption is based on the operation of exponentiation modulo a large number. The public key contains the modulus and the exponent. The modulus is formed based on two random prime numbers that are known only to the owner of the private key. The proposed method is based on a study published in 2007 that proved that extracting the root in the exponent specified in the public key from the encrypted message without information about the secret factors is a less resource-intensive operation than factorization of the factors themselves.
Using a special number field sieve (SNFS) method, researchers have managed to reduce the complexity of compromising RSA-1024 keys to 265 operations, which enables practical attacks on modern clusters. For RSA 2048-bit keys, the attack complexity is estimated at 290, which is theoretically feasible by large corporations or intelligence agencies. For 4096-bit keys, the attack complexity is 2119 operations, which is currently impractical but below the minimum of 2128 recommended by the NSA, the National Institute of Standards and Technology, and the European Union Agency for Cybersecurity.
Burimi: opennet.ru
