Diskretusis logaritmas. Kvadratinis palyginimas

Programinės ir aparatinės įrangos priemonės, tai yra priemonės, skirtos kompiuterinių objektų – įrangos, programų ir (arba) duomenų – valdymui, sudaro paskutinę ir svarbiausią informacijos saugumo ribą. Prisiminkime, kad žala padaroma daugiausia dėl teisėtų naudotojų veiksmų, kurių atžvilgiu procedūriniai reguliatoriai yra neveiksmingi. Pagrindiniai priešai – nekompetencija ir nerūpestingumas atliekant tarnybines pareigas, o jiems atremti gali tik programinės ir techninės priemonės.

Kompiuteriai padėjo automatizuoti daugelį žmogaus veiklos sričių. Atrodo visiškai natūralu, kad norisi jiems patikėti savo saugumą. Netgi fizinė apsauga vis dažniau patikėta ne apsaugos darbuotojams, o integruotoms kompiuterinėms sistemoms, kurios leidžia vienu metu sekti darbuotojų judėjimą tiek visoje organizacijoje, tiek visoje informacinėje erdvėje.

Tačiau reikia atsižvelgti į tai, kad sparti informacinių technologijų plėtra ne tik suteikia gynėjams naujų galimybių, bet ir objektyviai apsunkina patikimos apsaugos užtikrinimą, jei pasikliaujama vien tik programinės ir techninės įrangos priemonėmis. Tam yra keletas priežasčių:

    didinant mikroschemų greitį, aukšto lygiagretumo architektūrų kūrimas leidžia įveikti kliūtis (pirmiausia kriptografines) naudojant brutalią jėgą, kuri anksčiau atrodė neįveikiama;

    vystantis tinklams ir tinklo technologijoms, didėjant ryšių tarp informacinių sistemų skaičiui, didėjant kanalų talpai, plečiasi užpuolikų, turinčių technines galimybes organizuoti atakas, ratas;

    naujų informacinių paslaugų atsiradimas lemia naujų pažeidžiamumų formavimąsi tiek paslaugų „viduje“, tiek jų sąsajose;

    konkurencija tarp programinės įrangos gamintojų verčia sutrumpinti kūrimo laiką, dėl to prastėja testavimo kokybė ir išleidžiami produktai su saugumo trūkumais;

    Vartotojams primetama nuolat didėjančios aparatinės ir programinės įrangos galios paradigma neleidžia ilgai išlaikyti patikimų, patikrintų konfigūracijų ir, be to, kertasi su biudžeto apribojimais, o tai sumažina saugumo asignavimų dalį.

Minėti svarstymai dar kartą pabrėžia integruoto požiūrio į informacijos saugumą svarbą, taip pat lanksčios pozicijos poreikį renkantis ir prižiūrint programinės ir techninės įrangos reguliatorius.

Svarbiausia programinės ir techninės įrangos lygmenyje yra saugos paslaugos koncepcija.

Laikantis objektinio požiūrio, svarstant informacinę sistemą su vienu detalumo lygiu, pamatysime jos teikiamų informacinių paslaugų visumą. Pavadinkime juos pagrindiniais. Kad jie veiktų ir turėtų reikiamas savybes, reikia kelių lygių papildomų (pagalbinių) paslaugų – nuo ​​DBVS ir transakcijų monitorių iki operacinės sistemos branduolio ir aparatinės įrangos.

Papildomos paslaugos apima saugos paslaugas (su jomis jau susidūrėme svarstydami standartus ir specifikacijas informacijos saugumo srityje); Tarp jų visų pirma mus domins universalios, aukšto lygio paslaugos, kuriomis galės naudotis įvairios pagrindinės ir pagalbinės tarnybos. Toliau apžvelgsime šias paslaugas:

    identifikavimas ir autentifikavimas;

    prieigos kontrolė;

    medienos ruoša ir auditas;

    šifravimas;

    vientisumo kontrolė;

    ekranavimas;

    saugumo analizė;

    gedimų tolerancijos užtikrinimas;

    užtikrinti saugų atsigavimą;

    tuneliavimas;

    Siekiant užtikrinti apsaugą nuo tinklo atakų, plačiausiai naudojamas ir efektyviausias yra įdiegti:

    1. Visapusiškos klasės apsaugos sistemos OUTPOST, užtikrinanti įmonių informacinių sistemų apsaugą tinklo lygmeniu naudojant virtualių privačių tinklų (VPN) technologijas ir paskirstytąją ugniasienę (ME, FW).

    2. Klasės „Plačiajuostis“ aparatinės įrangos IP šifruotojas Ekranas" yra vietinis stuburinis plačiajuosčio ryšio aparatinės įrangos IP šifratorius, skirtas kriptografinės informacijos apsaugai šiuolaikinėse telekomunikacijų sistemose.

    3. Kompleksinės informacijos apsaugos priemonės – informacijos apsaugos sistema iš NSD Slaptas tinklas 7.

    Pažvelkime į šiuos produktus išsamiau.

    ZASTAVA gaminiai dirbti įvairiose aparatinės įrangos platformose, kuriose veikia daugybė populiarių operacinių sistemų. Jie naudojami tiek didelėse, geografiškai paskirstytose sistemose, kur vienu metu dirba tūkstančiai ZASTAVA agentų, tiek smulkaus ir vidutinio verslo sistemose, kur apsaugos reikia vos keliems kompiuteriams. Programinės įrangos paketas „VPN/FW „ZASTAVA“, 5.3 versija, užtikrina įmonės informacijos ir skaičiavimo resursų apsaugą tinklo lygmeniu naudojant virtualių privačių tinklų (VPN) technologijas ir paskirstytąją ugniasienę (ME).

    ZASTAVA 5.3 numato:

    · atskirų kompiuterių, įskaitant mobiliuosius, apsauga nuo atakų iš viešųjų tinklų ir interneto;

    · įmonės informacinės sistemos ar jos dalių apsauga nuo išorinių atakų;

    Rusijos Federacijos FSB sertifikuota gaminio versija suteikia klientams paruoštą sprendimą, leidžiantį sklandžiai integruoti produktą į bet kokias informacines sistemas, nereikia gauti papildomų išvadų apie integravimo teisingumą ir užtikrina visišką jo naudojimas siekiant apsaugoti konfidencialią informaciją, įskaitant asmens duomenis. Sertifikatai galioja nuo 2011-03-30 iki 2014-03-30.

    Šifruotojo barjeras– Tai visiškai aparatinis sprendimas. Visos kriptografinės funkcijos ir tinklo sąveika jame įgyvendinamos naudojant grandines, o ne programinius metodus. Aparatinės įrangos diegimo pasirinkimas, priešingai nei įprasti įrenginiai (kriptografiniai maršrutizatoriai), pagrįsti bendrosios paskirties asmeniniais kompiuteriais, yra dėl poreikio įveikti tokių kompiuterių architektūros apribojimus. Tai visų pirma bendros magistralės, prie kurios prijungiamos tinklo sąsajos plokštės, apribojimai. Nepaisant didelio šiuolaikinių PCI ir PCI-X magistralių veikimo greičio, tinklo šifratorių veikimo ypatybės (su laiku koreliuojamas paketo priėmimas ir perdavimas su šifravimo/dešifravimo laiko poslinkiu) neleidžia išnaudoti viso jų pralaidumo.

    Apskritai, jei norite prisijungti prie vietinių kompiuterių tinklų naudodami neapsaugotus ryšio kanalus, nebijodami pažeisti duomenų konfidencialumo perdavimo metu ir nedėdami didelių pastangų, kad užtikrintumėte programų suderinamumą dirbant šifruotais kanalais. Užtvaras sukurtas kaip įrenginys, kuris tinklo požiūriu yra „skaidrus“. Dėl šios priežasties daugeliu atvejų pakanka tik sukonfigūruoti šifruotoją ir įjungti jį „nutraukti“ apsaugoto vietinio tinklo ryšį su išoriniu ryšio kanalu.

    SZI IŠ NSD Secret Net 7 sukurta siekiant užkirsti kelią neteisėtai prieigai prie darbo vietų ir serverių, veikiančių nevienalyčiuose vietiniuose tinkluose. Sistema savo apsaugos mechanizmais papildo standartines operacinių sistemų apsaugos priemones ir taip padidina visos įmonės automatizuotos informacinės sistemos saugumą, sprendžiant šias užduotis:

    v prieigos teisių valdymas ir subjekto prieigos prie saugomos informacijos, programinės ir techninės įrangos išteklių kontrolė;

    v kontroliuoti prieigą prie konfidencialios informacijos pagal privatumo kategorijas;

    v diskuose saugomų failų šifravimas;

    v duomenų vientisumo kontrolė;

    v aparatinės įrangos konfigūracijos valdymas;

    v diskrecinė prieigos prie kompiuterių įrenginių kontrolė;

    v su informacijos saugumu susijusių įvykių registravimas ir apskaita;

    v automatizuotos informacinės sistemos būklės stebėjimas;

    v vaidmenimis pagrįstas vartotojo galių atskyrimas;

    v vartotojų veiksmų auditas (įskaitant administratorius ir auditorius);

    v laikinas kompiuterių blokavimas;

    v likutinės informacijos ištrynimas vietiniuose kompiuterio diskuose.

    „Secret Net 7“ sistema susideda iš trijų funkcinių dalių:

    · apsauginiai mechanizmai, kurie yra įdiegti visuose saugomuose automatizuotos sistemos (AS) kompiuteriuose ir yra papildomų apsaugos priemonių rinkinys, praplečiantis Windows OS saugos funkcijas.

    · apsaugos mechanizmų valdymo įrankiai, užtikrinantys centralizuotą ir vietinį sistemos valdymą.

    · operatyvinio valdymo įrankiai, kurie atlieka darbo vietų operatyvinę kontrolę (stebėjimą, valdymą), taip pat centralizuotą sistemos žurnalų rinkimą, saugojimą ir archyvavimą.

    Secret Net 7 susideda iš trijų komponentų:

    1. Informacijos apsaugos sistema Secret Net 7 – Klientas. Įdiegta visuose apsaugotuose kompiuteriuose. Ši programinė įranga apima šiuos komponentus:

    · Apsaugos mechanizmai yra pritaikomos programinės ir techninės įrangos rinkinys, apsaugantis kompiuterio informacijos išteklius nuo neteisėtos prieigos, kenkėjiškos ar netyčinės įtakos.

    · Grupės politikos taikymo modulis.

    · Apsaugos serverio agentas.

    · Vietos valdymo įrankiai – tai standartinės operacinės sistemos galimybės, papildytos Secret Net 7 įrankiais, skirtais kompiuterio ir jo vartotojų veikimui valdyti bei apsauginiams mechanizmams nustatyti.

    2. SZI Secret 7 – saugos serveris. Apima:

    · Tikrasis saugos serveris.

    · Priemonės darbui su duomenų baze.

    3. Informacijos apsaugos sistema Secret Net 7 – Valdymo įrankiai. Apima:

    · Monitoriaus programa. Ši programa įdiegta operatyvinio valdymo administratoriaus – darbuotojo, įgalioto stebėti ir greitai taisyti saugomų kompiuterių būseną realiu laiku, darbo vietoje.

    Įmonė reikalauja įdiegti panašias technologijas.



    Planas:

      Įvadas
    • 1 Problemos pareiškimas
    • 2 Pavyzdys
    • 3 Sprendimo algoritmai
      • 3.1 Savavališkai dauginamojoje grupėje
      • 3.2 Likučių žiede modulo prime
        • 3.2.1 Eksponentinio sudėtingumo algoritmai
        • 3.2.2 Subeksponentiniai algoritmai
      • 3.3 Savavališkame baigtiniame lauke
      • 3.4 Elipsinės kreivės taškų grupėje
    • 4 Skaičiavimo sudėtingumas ir taikymas kriptografijoje

    Įvadas

    Diskretusis logaritmas(DLOG) – funkcijos inversijos užduotis g x kokioje nors baigtinėje dauginamojoje grupėje G .

    Dažniausiai diskretinio logaritmo uždavinys nagrinėjamas liekamojo žiedo arba baigtinio lauko multiplikacinėje grupėje, taip pat elipsės kreivės taškų grupėje virš baigtinio lauko. Veiksmingi diskrečiųjų logaritmų uždavinio sprendimo algoritmai paprastai nežinomi.

    Už duotus g Ir a sprendimas x lygtys g x = a paskambino diskrečiųjų logaritmų elementas a remiantis g. Tuo atveju G yra likučių žiedo modulo dauginamoji grupė m, sprendimas taip pat vadinamas indeksas numeriai a remiantis g. Skaičių indeksas a remiantis g garantuotas egzistavimas, jei g yra primityvi modulio šaknis m.


    1. Problemos pareiškimas

    Įveskime kokią nors baigtinę dauginamą Abelio grupę G lygtis pateikta

    Diskretaus logaritmo problemos sprendimas yra rasti neneigiamą sveikąjį skaičių x, tenkinanti (1) lygtį. Jei jis yra sprendžiamas, jis turi turėti bent vieną natūralų sprendimą, neviršijantį grupės eilės. Tai iš karto apytiksliai įvertina algoritmo sudėtingumą ieškant sprendimų iš viršaus – išsamus paieškos algoritmas rastų sprendimą keliais žingsniais, ne didesniais nei nurodytos grupės tvarka.

    Dažniausiai nagrinėjamas atvejis, kai , tai yra, grupė yra ciklinė, kurią sukuria elementas g. Šiuo atveju lygtis visada turi sprendimą. Savavališkos grupės atveju diskrečiojo logaritmo uždavinio išsprendžiamumo klausimas, ty (1) lygties sprendinių egzistavimo klausimas, turi būti išnagrinėtas atskirai.


    2. Pavyzdys

    Lengviausias būdas yra diskrečiojo logaritmo problemą likučio žiede laikyti pirminiu skaičiumi.

    Tegu palyginimas

    Problemą išspręsime brutalios jėgos metodu. Surašykime visų skaičiaus 3 laipsnių lentelę. Kiekvieną kartą apskaičiuojame dalybos iš 17 likutį (pavyzdžiui, 3 3 ≡27 - dalybos iš 17 liekana yra 10).

    Dabar nesunku suprasti, kad aptariamo palyginimo sprendimas yra x=4, nuo 3 4 ≡13.

    Praktikoje modulis paprastai yra pakankamai didelis skaičius, todėl brutalios jėgos metodas yra per lėtas, todėl reikia greitesnių algoritmų.


    3. Sprendimo algoritmai

    3.1. Savavališkai dauginamojoje grupėje

    Diskretaus logaritmo uždavinio išsprendžiamumas ir sprendimas savavališkoje baigtinėje Abelio grupėje yra aptariamas J. Buchmanno, M. J. Jacobsono ir E. Teske straipsnyje. Algoritmas naudoja lentelę, susidedančią iš elementų porų, ir atlieka dauginimą. Šis algoritmas yra lėtas ir netinka praktiniam naudojimui. Konkrečios grupės turi savo, efektyvesnius, algoritmus.


    3.2. Likučių žiede modulo prime

    Apsvarstykite lygtį

    Kur p- paprastas, b nedalomas iš p. Jeigu a yra generuojantis grupės elementas, tada (2) lygtis turi bet kurio sprendinį b. Tokie skaičiai a dar vadinamos primityviosiomis šaknimis, o jų skaičius lygus φ( p− 1) , kur φ yra Eulerio funkcija. (2) lygties sprendimą galima rasti naudojant formulę:

    Tačiau šios formulės skaičiavimo sudėtingumas yra blogesnis nei surašymo sudėtingumas.

    Šis algoritmas yra sudėtingas

    Algoritmas

    Algoritmo pabaiga

    Taip pat yra daug kitų algoritmų, leidžiančių išspręsti diskrečiųjų logaritmų problemą likučių lauke. Paprastai jie skirstomi į eksponentinį ir subeksponentinį. Kol kas nėra polinominio algoritmo šiai problemai išspręsti.


    3.2.1. Eksponentinio sudėtingumo algoritmai


    3.2.2. Subeksponentiniai algoritmai

    Šie algoritmai turi aritmetinių operacijų sudėtingumą, kur ir yra tam tikros konstantos. Algoritmo efektyvumas labai priklauso nuo artumo c iki 1 ir d- iki 0.

    Šiuo metu geriausi sudėtingumo vertinimo parametrai yra , .

    Ypatingo tipo numerių rezultatas gali būti pagerintas. Kai kuriais atvejais galima sukurti algoritmą, kurio konstantos bus , . Dėl to, kad pastovus c yra pakankamai artimas 1, panašūs algoritmai gali pranokti algoritmą su .


    3.3. Savavališkame baigtiniame lauke

    Problema svarstoma lauke GF(q), Kur q = p n , p- paprasta.


    3.4. Elipsinės kreivės taškų grupėje

    Nagrinėjame elipsės kreivės taškų grupę baigtiniame lauke. Ši grupė apibrėžia dviejų taškų pridėjimo operaciją. Tada mP- Šitas. Elipsinės kreivės diskrečiojo logaritmo uždavinio sprendimas yra rasti tokį natūralųjį skaičių m, Ką

    už duotus taškus P Ir A.

    Iki 1990 m. nebuvo diskrečiųjų logaritmų algoritmų, kurie atsižvelgtų į elipsinės kreivės taškų grupės struktūrines ypatybes. Vėliau Alfredas J. Menezesas, Tatsuaki Okamoto ir Scottas A. Vanstone'as pasiūlė algoritmą naudojant Weyl poravimą. Elipsinei kreivei, apibrėžtai virš lauko GF(q), šis algoritmas sumažina diskretinio logaritmo problemą iki panašios lauko problemos GF(q k) . Tačiau ši informacija naudinga tik tuo atveju, jei laipsnis k mažas Ši sąlyga daugiausia tenkinama supersinguliarinėms elipsinėms kreivėms. Kitais atvejais toks sumažinimas beveik niekada nesukelia subeksponentinių algoritmų.


    4. Skaičiavimo sudėtingumas ir taikymas kriptografijoje

    Diskretaus logaritmo problema yra viena iš pagrindinių problemų, kuriomis grindžiama viešojo rakto kriptografija. Tokių sistemų idėja remiasi dideliu skaičiavimo sudėtingumu apverčiant tam tikras skaitmenines funkcijas. Šiuo atveju diskrečiojo logaritmo operacija yra atvirkštinė eksponentinės funkcijos. Pastarasis apskaičiuojamas gana paprastai, tuo tarpu net patys moderniausi diskretinio logaritmo skaičiavimo algoritmai yra labai sudėtingi, o tai yra palyginama su greičiausių faktoringo skaičių algoritmų sudėtingumu.

    Kita galimybė efektyviai išspręsti diskretinio logaritmo skaičiavimo problemą yra susijusi su kvantiniu skaičiavimu. Teoriškai įrodyta, kad naudojant juos diskrečiąjį logaritmą galima apskaičiuoti daugianario laiku. Bet kokiu atveju, jei bus įgyvendintas daugianario diskretinio logaritmo skaičiavimo algoritmas, tai reikš praktinį juo pagrįstų kriptosistemų netinkamumą.

  • 6 skyrius. ILGALAIKIO RAKTŲ ALGORITMO PASIRINKIMAS GOST 28147-89
  • 6.1. Stiprių raktų sritis
  • 6.1.1. Pseudogamos pusiausvyros sąlygos pakankamumas stipriam pakaitalui parinkti
  • 6.2. Ilgalaikio GOST 28147-89 algoritmo rakto valdymas
  • 6.2.1. Grasinimas įvesti silpnus parametrus
  • 6.2.2. Silpnų ilgalaikių raktų nustatymo metodas
  • 6.2.3. Bandymo savybės
  • 6.2.4. Ilgalaikio rakto testavimas
  • 7 skyrius. PALYGINIMŲ TEORIJOS ELEMENTAI
  • 7.1.1. Išplėstinis Euklido algoritmas
  • 7.2. Modulinė aritmetika
  • 7.2.1. Eilerio funkcija ir mažoji Ferma teorema
  • 7.3. Pirmojo laipsnio palyginimai iš vieno nežinomo
  • 7.3.1. Kinų liekanos teorema
  • 7.3.2. Galios palyginimai modulo pirminis
  • 8 skyrius. Kvadratinės šaknies SKAIČIAVIMAS PAPRASTAME LAUKE
  • 8.1.1. Legendros simbolis
  • 8.1.2. Jacobi simbolis
  • 8.2. Algoritmas ieškant paprasto lauko kvadratinės šaknies
  • 9.1. RSA kriptosistemos konstravimas. Skaitmeninio parašo idėja
  • 9.2. Mišrios kriptosistemos. Diffie-Hellman raktų mainų protokolas
  • 9.3. El-Gamal skaitmeninis parašas
  • 9.3.1. ElGamal kriptosistema
  • 9.3.2. „ElGamal“ skaitmeninio parašo mechanizmas
  • 9.3.3. ElGamal parašo susilpnėjimas dėl neteisingo schemos įgyvendinimo
  • 9.3.4. ElGamal tipo skaitmeninio parašo parinktys
  • 10.1 Žymėjimas ir problemos teiginys
  • 10.2. Šaknų kūrimas iš vienybės lauke
  • 10.3. Diskretaus logaritmo algoritmas
  • 10.3.1. Diskretinio logaritmo skaičiavimo pavyzdys
  • 10.4. El-Gamal parašo klastojimas specialiu antidarinio elemento ir lauko charakteristikų pasirinkimo atveju
  • 10.4.1. Silpni parametrai ElGamalo paraše
  • 11 skyrius. POLARD FAKTORIZACIJOS METODAI
  • 11.2.1. Kritinės poros pasirinkimo tikimybės įvertinimas
  • 11.2.2. Kritinės poros pasirinkimo optimizavimas
  • 12 skyrius. KAI KURIE RSA KRIPTOSISTEMOS SUSILPĖJIMO ATVEJAI
  • 12.1. Atakos prieš RSA, kurios nenaudoja modulio faktorizavimo
  • 12.2. Atakos prieš RSA naudojant modulio faktorių
  • 12.2.1. Diksono faktorizavimo algoritmas
  • 13 skyrius. ŪKIO BANDYMAS SKAIČIUI PATIKRINTI, KAD PAPRASTAS
  • 13.1. Eratosteno ir Vilsono kriterijaus sietas
  • 13.2. Testas, paremtas mažąja Ferma teorema
  • 13.2.1. Pagrindinės pseudoprimų savybės
  • 13.2.2. Carmichael skaičių savybės
  • 13.2.3. (n-1) – Luko kriterijus
  • 13.2.3. Luko sekų samprata. (n+1) – Lukaso kriterijus
  • 14 skyrius. NIGHTINGALE-STRASSEN IR RABIN-MILLER BANDYMAI SKAIČIUI PATIKRINTI, KAD PAPRASTAI
  • 14.1. Solove-Strassen testas
  • 14.1.1. Eulerio pseudopradžiai
  • 14.2. Rabin-Miller testas
  • 14.2.1. Stiprūs pseudopradžiai
  • 15 skyrius. DIDŽIŲJŲ PRIMŲ KONSTRUKCIJA
  • 15.1. Deterministinis testas, pagrįstas apibendrintu Lukaso kriterijumi
  • 15.1.1. Pocklingtono teorema
  • 15.1.2. Luko kriterijaus apibendrinimas
  • 15.2. Deterministinis testas remiantis Dimitko teorema
  • 16 skyrius. RSA KRIPTOSISTEMOS PARAMETRŲ PASIRINKIMAS
  • 16.1. Bendrieji parametrų pasirinkimo reikalavimai
  • 16.2. Gordono metodas stiprių pirminių skaičių konstravimui
  • 16.3. Stipriai pirminio skaičiaus konstravimo pavyzdys
  • 17 skyrius. BENDRA INFORMACIJA APIE UŽSIENIO KRIPTO FONDUS
  • 17.1. Kripto aparatūra
  • 17.2. Pagrindiniai raktų valdymo sistemų kūrimo principai
  • 17.2.1. Raktų srauto šifravimo sistemos
  • 17.3. Blokuoti šifrus mišriose kriptosistemose
  • 17.3.2. Mišri kriptosistema, pagrįsta RSA ir IDEA algoritmais
  • IŠVADA
  • LITERATŪRA
  • 130 10 skyrius. SILVER – POLLIG – HELLMAN ALGORITMAS

    Rodiklį užrašyti trupmena yra teisinga, nes vienas iš skaitiklio veiksnių, būtent u, dalijasi iš p, t.y. trupmena yra įprastas sveikasis skaičius.

    Akivaizdu, kad r p p , j = b ju = 1 , todėl elementai r p , j yra p laipsnio šaknys

    iš vieno. Lygiai taip pat užpildykime visas lentelės R eilutes.

    Tolesnis darbas susijęs su skaičiavimais, dėl kurių atsiranda elementai, kurie yra lauko vienybės p laipsnio šaknys.

    Kiekvienam tokiam elementui reikės nustatyti jo padėtį

    j (stulpelio numeris) lentelės R eilutėje su etikete

    Kadangi kiekvienos eilutės elementai yra skirtingi, tada tam tikram skaičiui

    Atitinkamą poziciją apibrėžsime vienareikšmiškai.

    Už tai

    žinoma, turime greitai nuskaityti R lentelės eilutę,

    tai įmanoma, nes skaičius q − 1 yra lygus.

    10.3. Diskretaus logaritmo algoritmas

    Tarkime, kad x pavaizduotas

    p-arinė skaičių sistema. Tada

    jos atskaitymas pagal

    modulis p a

    atrodo kaip

    x = x

    X p +K+x

    a-1

    p a − 1 modp a ,

    0 ≤x i ≤p −1 .

    Pažymėkime

    y0 = y.

    apibrėžimai

    xk,

    k = 0, K, a− 1,

    Siūlome tokią procedūrą, kurią aptarsime vėliau.

    Pirmiausia apibrėžiame x

    kaip pozicija

    y u p

    eilutėje numeris p

    R lentelės.

    Diskretaus logaritmo algoritmas 131

    k > 0 koeficientas k

    apibrėžiamas kaip elemento padėtis

    yk u

    p k+1

    yk = y0

    b h(k) ,

    h(k) = x+ x p+K+ x

    p k− 1 .

    k - 1

    Procedūros kartojimas

    dalijant

    q - 1 ,

    gauname

    vertybes

    x modp a,

    su kinų pagalba

    likučiai

    atkurti x mod (q − 1) .

    Pagrįskime x k nustatymo tvarką.

    Apskaičiuokime y 0 u p . Akivaizdu,

    y 0 u p-

    jėgos šaknis

    p iš vieno, ir

    y u p= y u

    p = b xu p= b x0 u p+ (x− x0 ) u

    x − x

    X p +K+x

    a-1

    p a – 1.

    Be to, skaičius x 0 u

    p yra sveikas skaičius, nes u dalijasi iš

    Išraiškoje (x − x 0 ) u p abu faktoriai dalijami iš

    p. Padalinta iš

    veiksnys,

    gauname,

    kad (x − x

    p = ku,

    B x 0 u

    Lyginant su užrašu r

    p , gauname, kad y u p

    j = x.

    Tai leidžia nustatyti

    Kaip pozicija

    y u p lentelės eilutėje

    R su

    pažymėtas p.

    Naikinkim dabar x

    eksponente b x,

    dalijant

    b x 0.

    Rezultatą pažymėkime y 1 :y 1 = y 0 b x 0 p 0 ir apskaičiuokime 1 u p 2 = b u (x − x 0 ) p 2 .

    terminai, išskyrus ux 1 p p 2 , yra kartotiniai ir neturi įtakos b u ( x − x 0 ) p 2 reikšmei.

    132 10 skyrius. SILVER – POLLIG – HELLMAN ALGORITMAS

    Kadangi u dalijasi iš

    taip pat visa

    kur tu

    p2 = b x1 u p= r

    j = x. Taigi,

    x lygi pozicijai

    y u p2

    lentelės R eilutėje, pažymėtoje p.

    Norint nustatyti

    mes sunaikinsime

    rodiklyje b x − x 0, dalijant

    b x1 p1 .

    b x0 p0 + x1 p1

    Bd,

    d = x2 p2 +K+ xa − 1 pa − 1 .

    Apskaičiuokite y u p 3

    B x2 u p= r

    j = x, tai leidžia nustatyti x

    pagal lentelę R ir pan., kol nustatysime x a − 1 .

    10.3.1. Diskretinio logaritmo skaičiavimo pavyzdys

    Lauke F 37, kai b = 2, raskite 28 elemento diskrečiąjį logaritmą.

    Sprendimas. Problema redukuojama į sprendimą F lauke

    lygtis 28 = 2 x .

    q = 37

    yra

    laipsnį

    paprastas

    skaičiai, taigi

    operacijos lauke sutampa su operacijomis likučių srityje modulo 37, ypač dalyba yra dauginimas iš atvirkštinio elemento.

    u = q − 1 = 36 = 22 32 ,

    vadinasi,

    mes turime du

    daliklis: 2 ir 3.

    Padarykime lentelę

    iš eilutės, pažymėtos p = 2 .

    Paskaičiuokime

    B j (q − 1 )2

    kai j = 0,1

    2 (q − 1) 2 ≡ −1 (37) .

    2, j

    Eilučių elementai pažymėti 3

    yra skaičiai:

    Bj (q-1)3,

    j = 0,1,2,

    3, j

    tie. r 3,0 = 1, r 3,1 = 2 36 3 ≡ 26 (37), r 3,2 = 2 2 36 3 ≡ 2 24 ≡ 10 (37). TableR atrodo taip:

    Diskretaus logaritmo algoritmas 133

    4 lentelė. 2 ir 3 laipsnių vienetų šaknys

    Raskime likučius

    x = x

    X p +K+x

    a-1

    pa - 1

    mod p a ,

    kai p = 2, a = 2.

    Žingsnių skaičius yra

    a = 2. Taigi, būtina nustatyti

    x 0 , x 1 . Raskime x 0.

    Apskaičiuokime y 0 u p = 28 18 ≡ 1 (37). Vieno padėtis 2 lentelės R eilutėje yra

    0, todėl x 0 = 0.

    Apskaičiuokime y,

    sunaikinant narį su

    skaičiaus b x eksponente:

    y = y

    b x0 p0 .

    Nuo x

    tada y = y.

    Mes statome y

    į u galią

    p2,

    p 2 = 4 :

    y u 4= 28 36 4= − 1 (37 ) .

    Skaičiaus (-1) padėtis lentelės R 2 eilutėje yra 1, todėl

    x 1 = 1 .

    Taigi x = x 0 + x 1 p = 2 mod 4.

    Raskime likučius

    x mod pa , at

    p = 3, a = 2. Žingsnių skaičius yra a = 2.

    y 0 u p = 28 12 ≡ 26 (37) . Padėtis

    26 3 lentelės eilutėje

    vadinasi,

    x = 1, taigi

    y = y

    b x 0 p 0 = 14.

    Mes statome

    iki laipsnio

    p2,

    p 2 = 9 :

    y u9

    1436 9 = 10(37) ,

    todėl x 1 = 2. Taigi,

    x = 7 mod9.

    Z p r Z

    134 10 skyrius. SILVER – POLLIG – HELLMAN ALGORITMAS

    palyginimų sistema x = 2 mod4 ,x = 7 mod9 :9 − 1 (4 ) = 1 ,

    4− 1 (9) = 7,

    x ≡ 2 9(9− 1 mod 4) + 7 4(4− 1 mod 9) = 214, t.y.

    x ≡ 34 mod36.

    10.3.2. Logaritmas likučių žiedo vienetų grupėje modulo pr.

    Tam tikrų metodų, skirtų diskrečiajam logaritmui baigtiniame lauke, egzistavimas lemia poreikį sukurti didelius pirminius skaičius su ypatingomis savybėmis. Norint sumažinti generuojamų pirminių skaičių dydį, iš principo galima naudoti modulio mažinimo operaciją Diffie-Hellman protokole.

    yra antidarinis elementas γ, kurio galios reiškia visas modulio liekanas. Šios liekanos sudaro ϕ (p r ) elementų dauginamą grupę U (p r ) (vadinamąją vienetų grupę).

    Galima parodyti, kad jei γ p yra primityvi šaknis lauke

    GF (p), tada vienas iš skaičių γ = γ p + kp, kur k (0,1), tenkina sąlygą

    (γ p + kp ) p − 1 ≠ 1 (mod p 2 ) ir yra primityvi šaknis modulo p α ,α > 1 . Atkreipkite dėmesį, kad skaičių poros a , p, kurioms galioja santykis a p − 1 = 1mod p 2, yra retos. Todėl manysime, kad

    γ = γp.

    Taigi bet kuri iš ϕ (p r ) = p r − 1 (p − 1 ) liekanųb U (p r ) gali būti

    pavaizduoti b = γ x mod p r forma.

    Algoritmas diskretiniam logaritmui vienetų grupėje... 135

    Atitinkamai, diskretinio logaritmo uždavinys žiedo Z p r Z vienetų grupėje yra nustatyti liekanas mod ϕ (p r ) remiantis b ir

    γ .

    Deja, nėra jokio pranašumo naudojant p r modulį, nes

    esant efektyviam logaritmo algoritmui paprastame lauke

    GF (p) logaritmas liekanos žiedo vienetų grupėje modulo p r,r > 1, beveik visada gali būti atliktas naudojant vadinamojo apibendrinto Ferma santykio L m (a) savybes.

    Atvaizdavimo L m (a) apibrėžimo sritis yra grupė U (m)

    likučiai modulo m coprime į modulį. Pagal Eulerio teoremą,

    yra λ :a ϕ (m) − 1 = λ m. Reikšmė L m (a) apibrėžiama kaip skaičiaus λ modulo m atėmimas: L m (a) = a ϕ (m m) − 1 (mod m).

    Nesunku pastebėti, kad Fermat santykis turi šias nuostabias savybes.

    Lm (ab) = Lm (a) + Lm (b) (mod m) ,

    Lm (a+ mc) = Lm (a) + ϕ (m) ca-1 (mod m) ,

    kur a, b U(m) , c ZmZ.

    r > 1. Atkreipkite dėmesį, kad

    kas šiuo atveju,

    (a+ mc) = L(a) + (pr − pr − 1 ) ca- 1 (mod m) = L(a) (mod pr − 1 ) .

    Taigi, jei a ≡ b (mod m), tada

    L (a) ≡ L(b) (mod pr − 1 ) .

    L (γ ) = 0 (modp r − 1 ),

    apibrėžimai

    L(γ) iš to seka

    γ ϕ (m ) = 1(modp 2 r − − 2 r1 , t.y.

    r1 , o tai prieštarauja

    Jeigu L

    (γ )= 0 (modm), Tai

    (γ ) = 0( mod pr1 ) Irr1 .

    Panašiai, kai L

    (γ ) = pt( mod pr1 ) ,

    gauname

    γ ϕ (m) = 1( mod pr+ 1 ) ,

    kas neįmanoma, nes ϕ (pr+ 1 ) > ϕ (m) .

    Taigi elementas Lm(γ )

    p ir todėl

    modulo apverčiamas pr1 .

    Apsvarstykite logaritmo uždavinį

    žiedinių vienetų grupėje

    Z mZ ,

    efektyvus algoritmas

    logaritmai žiede

    žinomas.

    Iš santykio b= γ xmodpr

    b = γ xmod p ,

    prasmė žinoma x modulo

    p1 . Jei rasime x(modpr1 ) , Tai

    prasmė

    modulo ϕ (m) = pr1 (p1 )

    galima skaičiuoti kiniškai

    liekanos teorema.

    Akivaizdu,

    kokia prasmė x(modpr1 )

    lengva atpažinti

    iš palyginimo

    L ( b ) = xL (γ ) (mod p r1 ) .

    būtina

    apskaičiuoti

    vertybes

    h = L m( a ) (mod p r1 ) .

    Tyrėjų komanda iš EPFL ir Leipcigo universiteto sugebėjo apskaičiuoti logaritmą iki pirminio dydžio pagrindo. 768 bitai. Norėdami tai padaryti, jiems prireikė 200 branduolių ir laiko nuo 2015 m. vasario mėn. Jie naudojo skaitmeninio sieto variantą. Taigi logaritmavimas yra lygus faktorizacijai, kur paprastų skaičių įrašas taip pat yra 768 bitai

    Beje, po rytojaus atnaujinimo prie dyndns hostų bus galima prijungti nemokamą TLS! Tai labai šaunu, visi žiurkėnai dabar turės sertifikatus.

    Apsauga nuo šoninio kanalo atakų

    Ne paslaptis, kad šiais laikais informaciją apie šifravimo raktus galima gauti nuotoliniu būdu beveik per ventiliatorių. Todėl vis populiaresni tampa pastovaus laiko algoritmai, kurie nepriklauso nuo įvesties duomenų. Vokiečiai išleido minimalius diegimo reikalavimus, kurie apsunkins jautrių duomenų gavimą duomenų šoniniais kanalais. , patariu perskaityti.

    Tai viskas man, iki pasimatymo kitą kartą!



Ar jums patiko straipsnis? Pasidalinkite su draugais!