Az Adleman-algoritmus az első szubexponenciális diszkrét logaritmus -algoritmus a maradékok gyűrűjében prímszám modulo . Az algoritmust Leonard Max Adleman (született: Leonard Adleman - Aidlman ) javasolta 1979 -ben . Leonard Max Adleman ( 1945. december 31. ) amerikai informatikus , a Dél - Kaliforniai Egyetem számítástechnika és molekuláris biológia professzora . Az RSA titkosítási rendszer (Rivest-Shamir-Adleman, 1977 ) és a DNS -számítógép társfeltalálójaként ismert . Az RSA -t széles körben használják számítógépes biztonsági alkalmazásokban , beleértve a HTTPS protokollt is .
A modulo m maradékok redukált rendszere a modulo m maradékrendszer összes olyan számának halmaza , amelyek viszonylag prímek m -hez képest . A modulo m redukált maradékrendszer φ( m ) számokból áll, ahol φ( ) az Euler-függvény . Bármely φ(m) szám, amely páronként összehasonlíthatatlan modulo m és ezzel a modulussal együtt prím, a maradékok redukált rendszerét jelenti. A modulo m maradékok redukált rendszereként általában 1-től m-ig terjedő számokat vesznek fel . Ha x is átmegy a modulo m redukált maradékrendszeren, akkor az ax is olyan értékeket vesz fel, amelyek a redukált maradékrendszert alkotják modulo this [1] .
A redukált reziduumok rendszere a modulo m szorzóval egy csoportot alkot, amelyet multiplikatív csoportnak vagy a modulo m maradékgyűrű invertálható elemeinek csoportját alkotnak , amelyet vagy jelöl .
A polinom faktorizálása egy adott polinom reprezentációja alacsonyabb fokú polinomok szorzataként.
Az algebra alaptétele kimondja, hogy a komplex számok területén minden polinom ábrázolható lineáris polinomok szorzataként, és egyedi módon egy állandó tényezőig és a tényezők sorrendjéig.
A faktorálási polinomok ellentéte a kibővítésük , a polinomtényezők szorzása, hogy egy "kibővített" polinomot kapjunk, amely kifejezések összegeként van írva.
Adjuk meg a polinomokat úgy , hogy
egy irreducibilis normalizált fokszámú polinom a kisebb fokozatú multiplikatív csoport generátoraMeg kell találni (ha van ilyen) az összehasonlítást kielégítő természetes számot
1. szakasz. Tegyük fel
2. szakasz. Keresse meg legfeljebb az irreducibilis normalizált fokszámú polinomok halmazát, és számozza meg őket számokkal, honnan hova
3. szakasz. Válasszunk véletlenszerűen számokat és hasonlókat
és számítsunk ki egy polinomot úgy, hogy
4. szakasz. Ha a kapott polinom a halmaz összes irreducibilis polinomjának szorzata , akkor az
hol van a vezető együttható ( véges mező feletti unitáris polinomok faktorizálásához használhatja például a Berlekamp algoritmust ), majd beállítjuk az Ellenkező esetben válasszon más véletlenszerűséget , és ismételje meg a 3. és 4. lépést. Ezután állítsa be és ismételje meg a lépéseket . 3 és 4. Addig ismételjük, amíg Ily módon megkapjuk a halmazokat , és for
5. szakasz Kiszámoljuk úgy, hogy a gcd és
6. szakasz Számítsunk ki egy olyan számot
7. szakasz. Ha gcd , akkor lépjen a 3. lépésre, és válasszon új halmazokat , és egyébként számítson ki számokat és egy polinomot úgy, hogy
8. szakasz. Számítsa ki a kívánt számot
Legyen megadva az összehasonlítás
((egy)) |
Meg kell találni egy x természetes számot , amely kielégíti az (1) összehasonlítást.
1. szakasz. Alkossunk egy tényezőbázist, amely az összes q prímből áll :
2. szakasz. A felsorolás segítségével keress olyan természetes számokat , amelyek
vagyis a faktorbázis szerint bontják. Ebből következik tehát
(2) |
3. szakasz. Sok reláció (2) beírása után oldja meg a kapott lineáris egyenletrendszert a faktorbázis ( ) elemeinek ismeretlen diszkrét logaritmusaira vonatkoztatva.
4. szakasz. Némi felsorolás segítségével keresse meg az r egyik értékét, amelyre
hol vannak az „átlagos” prímszámok, azaz ahol van valamilyen szubexponenciális korlát is,
5. szakasz A 2. és 3. lépéshez hasonló számítások segítségével keresse meg a diszkrét logaritmusát .
6. szakasz Határozza meg a kívánt diszkrét logaritmust:
Az Adleman-algoritmusnak van egy heurisztikus becslése az aritmetikai műveletek összetettségére, ahol van valamilyen állandó. A gyakorlatban nem elég hatékony.
A diszkrét logaritmus probléma az egyik fő probléma, amelyen a nyilvános kulcsú kriptográfia alapul .
A diszkrét logaritmus (DLOG) egy függvény invertálásának problémája valamilyen véges multiplikatív csoportban .
Leggyakrabban a diszkrét logaritmus problémát egy maradékgyűrű vagy egy véges mező multiplikatív csoportjában , valamint egy véges mező feletti elliptikus görbe pontjainak csoportjában veszik figyelembe. A diszkrét logaritmus probléma megoldására szolgáló hatékony algoritmusok általában nem ismertek.
Adott g és a esetén az egyenlet x megoldását az a elem diszkrét logaritmusának nevezzük g bázisban . Abban az esetben, ha G a modulo m maradékgyűrű multiplikatív csoportja, a megoldást az a szám indexének is nevezzük a g bázishoz képest . Egy index a g bázishoz garantáltan létezik, ha g primitív modulo m gyök .
Nyilvános kulcsú kriptográfiai rendszer (vagy aszimmetrikus titkosítás , aszimmetrikus titkosítás ) - olyan titkosító és/vagy elektronikus aláírási (ES) rendszer, amelyben a nyilvános kulcsot egy nyílt (azaz nem biztonságos, megfigyelhető) csatornán továbbítják, és az ES ellenőrzésére használják. és a titkosítási üzenetekhez. Az ES generálásához és az üzenet visszafejtéséhez privát kulcsot használnak [2] . A nyilvános kulcsú kriptográfiai rendszereket ma már széles körben használják különféle hálózati protokollokban , különösen a TLS-protokollokban és elődjében, az SSL -ben (a mögöttes HTTPS ), az SSH -ban . A PGP -ben, S/MIME -ben is használatos . Az erre épülő klasszikus kriptográfiai sémák a Diffie-Hellman megosztott kulcsgenerálási séma , az ElGamal elektronikus aláírási séma, az üzenetátvitelhez Massey-Omura kriptorendszer. A kriptográfiai erősségük az exponenciális függvény invertálásának állítólagos nagy számítási bonyolultságán alapul .
A Diffie-Hellman protokoll ( eng. Diffie-Hellman , DH ) egy kriptográfiai protokoll , amely lehetővé teszi két vagy több fél számára, hogy megosztott titkos kulcsot szerezzenek olyan kommunikációs csatorna használatával, amely nem védett a meghallgatástól. Az így kapott kulcsot a további cserék titkosítására használják szimmetrikus titkosítási algoritmusok segítségével .
A Diffie és Hellman által javasolt nyilvános kulcs-elosztási séma igazi forradalmat hozott a titkosítás világában, mivel megszüntette a klasszikus kriptográfia fő problémáját - a kulcselosztás problémáját.
A Diffie-Hellman algoritmus tiszta formájában sebezhető a kommunikációs csatornában történő adatmódosításokkal szemben, beleértve a " Man in the middle " támadást is, így az ezt használó sémák további egy- vagy kétirányú hitelesítési módszereket alkalmaznak.
Az Elgamal-séma egy nyilvános kulcsú kriptorendszer , amely a diszkrét logaritmusok véges mezőben történő kiszámításának nehézségén alapul . A kriptorendszer tartalmaz egy titkosítási algoritmust és egy digitális aláírási algoritmust. Az ElGamal-séma a korábbi digitális aláírási szabványok alapja az Egyesült Államokban ( DSA ) és Oroszországban ( GOST R 34.10-94 ).
A sémát Taher El-Gamal javasolta 1985 - ben . [3] El-Gamal kifejlesztette a Diffie-Hellman algoritmus egy változatát . Javította a Diffie-Hellman rendszert, és kapott két algoritmust, amelyeket titkosításra és hitelesítésre használtak. Az RSA-val ellentétben az ElGamal algoritmust nem szabadalmazták, ezért olcsóbb alternatívává vált, mivel nem kellett licencdíjat fizetni. Úgy gondolják, hogy az algoritmus a Diffie-Hellman szabadalom hatálya alá tartozik.