Kleptografi

Kleptografi ( eng.  Kleptography ) är en gren av kryptovirologi som utforskar säker och hemlig kommunikation genom kryptosystem och kryptografiska protokoll och asymmetriska bakdörrar i kryptografiska algoritmer ( nyckelgenerering , digital signatur , nyckelutbyte , pseudo-slumptalsgeneratorer , krypteringsalgoritmer ) i ordning utföra en kleptografisk attack [1] . Termen introducerades av Adam Young och Moti Jung vid konferensen Advances in Cryptology—Crypto '96 [2]

Kleptografi är en naturlig förlängning av teorin om subliminala kanaler [3] [4] [5] , som först tillämpades av Gus Simmons när han arbetade på Sandia National Laboratory [1] .

Kleptografiska attacker

Definition

Den kleptografiska attacken använder asymmetrisk kryptografi för att implementera en kryptografisk bakdörr [6] . En sådan attack kan till exempel vara att på ett smart sätt modifiera hur kryptosystemet genererar ett nyckelpar så att den privata nyckeln kan härledas från den publika nyckeln med hjälp av angriparens privata nyckel. I en väldesignad attack kommer utdata från ett infekterat kryptosystem att vara beräkningsmässigt omöjligt att skilja från utdata från ett oinfekterat [7] . Om det infekterade kryptosystemet är en black box- implementering , såsom en hårdvarusäkerhetsmodul , ett smartkort eller en TPM , kan en lyckad attack gå oupptäckt [8] .

Genom reverse engineering kan du upptäcka bakdörren som satts in av angriparen och, när den är symmetrisk, till och med använda den själv [6] . Men per definition är en kleptografisk bakdörr asymmetrisk, och en omvänd ingenjör kommer inte att kunna använda den. En kleptografisk attack (asymmetrisk bakdörr) kräver en privat nyckel, endast känd för angriparen, för att kunna använda bakdörren. I det här fallet, även om den omvända ingenjören var välfinansierad och fick full kunskap om bakdörren, skulle det vara värdelöst för honom att extrahera klartexten utan angriparens privata nyckel [6] .

Implementering

Kleptografiska attacker kan byggas som en kryptotrojan som infekterar ett kryptosystem och öppnar en bakdörr för en angripare, eller kan implementeras av en kryptosystemtillverkare. En attack behöver inte avslöja hela utdata från kryptosystemet; en mer sofistikerad attackteknik är att växla mellan att ta emot oinfekterad utdata och osäker utdata i närvaro av en bakdörr [1] .

Kleptografiska attacker har utvecklats för RSA -nyckelgenerering , Diffie-Hellman-nyckelutbyte , digital signaturalgoritm och andra kryptografiska algoritmer och protokoll. SSL , SSH och IPsec är sårbara för kleptografiska attacker [9] . I varje fall kan en angripare äventyra en specifik kryptografisk algoritm eller protokoll. Den verifierar informationen som bakdörren är inkodad i (såsom offentlig nyckel, digital signatur, meddelanden om nyckelutbyte, etc.) och utnyttjar sedan denna asymmetriska bakdörr med sin hemliga nyckel (vanligtvis en privat nyckel) [1] .

Ari Juels och José Guajardo [10] har föreslagit en metod (KEGVER) genom vilken en tredje part kan verifiera genereringen av RSA-nycklar. Den är utformad som en form av distribuerad nyckeldistribution där den hemliga nyckeln endast är känd för den svarta lådan själv. Detta säkerställer att nyckelgenereringsprocessen inte har modifierats och att den privata nyckeln inte kan replikeras med en kleptografisk attack [10] .

Exempel

Fyra praktiska exempel på kleptografiska attacker (inklusive en förenklad SETUP-attack mot RSA) finns i JCrypTool 1.0, en plattformsoberoende öppen källkodsversion av CrypTool- projektet [11] . JCrypTool implementerar också en demonstration av att förhindra kleptografiska attacker med hjälp av KEGVER-metoden [12] .

Den kleptografiska bakdörren används i den kryptografiskt säkra pseudoslumptalsgeneratorn Dual_EC_DRBG från NIST SP 800-90A . Dual_EC_DRBG använder elliptisk kryptografi , och NSA tros äga den privata nyckeln, som tillsammans med offsetfel i Dual_EC_DRBG tillåter NSA att dekryptera SSL-trafik mellan datorer med till exempel Dual_EC_DRBG [13] .

Skydd mot kleptografiska attacker

Det finns generella rekommendationer för att skydda mot kleptografiska attacker, såsom att genomföra en omfattande analys av strukturen i kryptosystemet med inblandning av specialister inom området kryptografi och sammansättning (kaskadbildning) av kryptografiska transformationer som härrör från olika källor [14] . Användningen av kommersiella kryptografiska verktyg, både hårdvara och mjukvara, leder till att den genomsnittliga användaren eller till och med ett medelstort företag inte kan verifiera "renheten" hos den använda tekniken. Program försöker som regel skydda mot demontering så mycket som möjligt , och analysen av den interna strukturen av hårdvarulösningar är i sig mycket tidskrävande och dyr, även om tillverkaren inte tillämpar speciella skyddsåtgärder [14] .

Anteckningar

  1. 1 2 3 4 A. Young, M. Yung, 2004 , sid. 211-264.
  2. A. Young, M. Yung, 1996 , sid. 89-103.
  3. Simmons, 1984 , sid. 51-67.
  4. Simmons, 1985 , sid. 364-378.
  5. Simmons, 1993 , sid. 218-232.
  6. 1 2 3 Esslinger, 2013 , sid. 1-2.
  7. Young, Adam Vanliga frågor om kryptovirologi . Cryptovirology.com (2006). Datum för åtkomst: 12 december 2018. Arkiverad från originalet den 9 maj 2017.
  8. Easttom, 2018 , sid. 1664-1669.
  9. F. Zagórski, M. Kutyłowski, 2006 , sid. 496-499.
  10. 1 2 A. Juels, J. Guajardo, 2002 , sid. 13-19.
  11. Esslinger, Bernhard Die dunkle Seite der Kryptografie - Kleptografie vid Black-Box-Implementierungen (inte tillgänglig länk) . archive.org (2010). Arkiverad från originalet den 21 juli 2011. 
  12. JCrypTool 1.0 . cryptool.org . Hämtad 15 december 2018. Arkiverad från originalet 15 november 2018.
  13. Zetter, Kim RSA Securitys Dual_EC_DRBG bakdörrsanspråk . wired.com (2013). Hämtad 18 december 2018. Arkiverad från originalet 31 oktober 2018.
  14. 1 2 Ivanov, 2011 , sid. 68-69.

Litteratur

Länkar