Algoritem Diffie-Hellman: namen
Očitno, zelo malo ljudi danes, z uporabo prenos podatkov na nezaščitenih kanalih komuniciranja, kaj je algoritem
Vsebina
- Kakšna je tehnika diffie-hellman?
- Prazgodovina
- Najenostavnejša razlaga
- Metoda šifriranja podatkov v zgodnjih obdobjih
- Algoritem diffie-hellman: namen
- Algoritem diffie-hellman: pregled
- Osnovne formule za izračun ključa
- Ranljivost pri motenju procesa prenosa podatkov
- Uporaba algoritma za platformo java
- Uporaba algoritma za platformo c (+ / + +)
- Sodobni šifrirni algoritmi
- Namesto pogovora
Kakšna je tehnika Diffie-Hellman?
Če se bližamo vprašanje samega algoritma, vendar brez poseganja v tehnične in matematične podrobnosti, ga lahko opredelimo kot način šifriranje in dešifriranje podatkov, poslanih in prejetih med dvema ali več uporabnikov računalnika ali drugih sistemov, ki vključujejo izmenjavo podatkov z uporabo nezaščitenem komunikacijskem kanalu.
Kot je že jasno, če ni zaščite samega kanala, lahko napadalec prestreže ali spremeni datoteke, ki so v postopku pošiljanja in prejemanja. Vendar pa je algoritem za distribucijo ključev Diffie-Hellman za dostop do prenesenih in prejetih podatkov tak, da je tuja motnja skoraj popolnoma odpravljena. Hkrati je komunikacija o uporabi komunikacijski kanal (brez zaščite) postane varna, če obe strani uporabljata isti ključ.
Prazgodovina
Diffie-Hellmanov algoritem je bil uveden v svet že leta 1976. Njeni ustvarjalci postali Uitfrid Diffie in Martin Hellman, ki je v svojem raziskovanju varnih in zanesljivih metod šifriranja podatkov, ki temeljijo na delu Ralph Merkle, ki je razvil tako imenovani javni ključ distribucijskega sistema.
Če pa je Merkel razvila izključno teoretični okvir, sta Diffie in Hellman javnosti predstavila praktično rešitev tega vprašanja.
Najenostavnejša razlaga
Pravzaprav preskus sama temelji na kriptografskih tehnologijah šifriranja, ki celo presenetijo veliko strokovnjakov na tem področju. Antologija cifrov vključuje precej veliko zgodovino. Bistvo celotnega procesa je zmanjšano na dejstvo, da sta dva naročnika, ki po e-pošti ustrezata ali izmenjujeta določene podatke s pomočjo računalniških programov. Toda zaščita se izvaja tako, da sama algoritma Diffie-Hellman zahteva, da je ključ za dešifriranje znana obema stranema (oddajanju in sprejemu). V tem primeru ni pomembno, katera izmed njih ustvari začetno naključno številko (tokrat bomo razložili, če upoštevamo formule za izračun ključev).
Metoda šifriranja podatkov v zgodnjih obdobjih
Da smo jasnejši, to opazimo na najbolj primitivni način šifriranje podatkov je na primer pisanje besed, ki niso od leve proti desni, kot je običajno v večini skript, ampak od desne proti levi. Podobno je v sporočilu preprosto uporabljati in zamenjati črke abecede. Na primer, z eno besedo se druga črka spremeni v prvo, četrto do tretje in tako naprej. Isti dokument, ko ga gledate, je lahko popolna neumnost. Toda oseba, ki je napisala izvorno besedilo, pove osebi, ki jo mora prebrati, v katerem vrstnem redu pa je treba urediti dane simbole. To se imenuje ključ.
Upoštevajte, da se večina še vedno undeciphered besedil in klinastih spisih starih Sumercev in Egipčanov ne razume kripto-analitiki samo zaradi dejstva, da ne vedo, kako vzpostaviti želeno zaporedje znakov.
Torej v našem primeru - algoritem Diffie-Hellman pomeni možnost, da je ključ za dešifriranje znanega omejenega števila uporabnikov. Res je, da je tukaj ponovno treba rezervirati, saj lahko tretje osebe kršijo posege pri prenosu šifriranih podatkov te vrste, če rešijo sistem zamenjave ali zamenjave simbolov.
Samoumevno je, da danes obstajajo zelo močni kriptosistemi, ki temeljijo na algoritmih, kot je AES, vendar ne zagotavljajo popolnega zagotovila zaščite pred vdori podatkov s strani tretje osebe.
No, zdaj nas ohrani sam sistem šifriranja, njegovo praktično uporabo in stopnjo zaščite.
Algoritem Diffie-Hellman: namen
Algoritem je bil ustvarjen tako, da zagotavlja ne le zaupnost podatkov, ki jih ena stran prenese na drugo, temveč tudi, da jih varno izvlečejo na račun. Na splošno bi moral tak prenosni sistem zagotavljati popolno zaščito v vseh možnih kanalih komuniciranja.
Spomnimo, v času druge svetovne vojne, ko je inteligenca vseh zavezniških držav neuspešno lovi za šifriranje napravo, imenovano "Enigma", s katerim so bili kodirani sporočila, poslana na kodo Morse. Navsezadnje nihče, tudi najbolj, kot rečeno zdaj, "napredni" kriptografski strokovnjak lahko razkrije svojo kodo. Šele po njegovem ujetju je bil ključ do razhajanja sporočil, ki jih je posredovala nemška flota.
Algoritem Diffie-Hellman: pregled
Torej, sam algoritem vključuje uporabo več osnovnih pojmov. Recimo, da imamo najpreprostejši primer, ko sta na povezavi dva naročnika (uporabnik). Mi jih označimo kot A in B.
Uporabljajo sta dve številki X in Y, ki v tem komunikacijskem kanalu nista skrivnost, za nadzor prenosa-sprejema. Celotna točka zadeve je, da na njih ustvarimo novo vrednost, ki bo ključna. Ampak! Prvi naročnik uporablja veliko število prime številka, in drugi je nujno celo število (deljenje brez ostanka), vendar manjše kot prej.
Seveda se uporabniki strinjajo, da so te številke skrivne. Ker pa je komunikacijski kanal nezaščiten, lahko te dve številki postanejo znani drugim zainteresiranim osebam. Zato uporabniki v istih sporočilih izmenjujejo zasebne ključe za dešifriranje sporočil.
Osnovne formule za izračun ključa
Na splošno velja, da se algoritem Diffie-Hellman nanaša na sistem tako imenovane simetrične enkripcije, na podlagi katerega se pojavijo protokoli asimetrične šifre. Vendar, če upoštevamo osnovne vidike izračuna ključev s strani prejemnikov, se moramo odpoklicati vsaj algebra.
Tako na primer vsak naročnik generira naključne številke a in b. Vnaprej znajo pomen x in y, ki se lahko celo "prilegajo" v želeno programsko opremo.
Pri pošiljanju ali prejemu takega sporočila naročnik A izračuna ključno vrednost, ki temelji na formuli A = xamod y, druga pa kombinacijo B = xbmod y, sledi prenos dešifriranega ključa na prvega uporabnika. To je prva faza.
Predpostavimo, da ima zadevna tretja oseba na razpolago tako izračunanih vrednosti A in B. Vse je isto, ne more poseči v proces prenosa podatkov, saj je drugi korak je, da vedo, kako izračunati skupno ključ.
Na podlagi zgornjih formul lahko ustavimo izračun javnega ključa. Če pogledate na algoritem Diffie-Hellman, lahko primer izgleda nekaj takega:
1) prvi naročnik izračuna ključ, ki temelji na x po formuli Bamod y = xabmod y;
2) drugo, od začetne številke y in ga sprejme parameter B omrežnega protokola, določa ključ, ki temelji na razpoložljivem parametru A: Abmod y = x bamod y.
Kot vidimo, se končne vrednosti, tudi če so stopnje medsebojno spremenjene, sovpadajo. Tako je razlaga podatkov obeh strani, kot pravijo, zmanjšana na en sam imenovalec.
Ranljivost pri motenju procesa prenosa podatkov
Kot lahko sklepamo, ne vpliva izključitev tretje osebe. Vendar se v tem primeru ukvarjamo s prvotno navedenimi številkami 10100 ali celo 10300.
Samoumevno je, da noben od današnjih generiranih generatorjev gesel ali kod za dostop ne more določiti same številke (razen če začetni in končni, ne pa vmesni parametri, ki motijo prenosni sistem). To bo trajalo tako dolgo, da se bo življenje na Zemlji končalo. Kljub temu pa obstajajo vrzeli v takem varnostnem sistemu.
Najpogosteje so povezani z znanjem diskretnega logaritma. Če je takšno znanje na voljo, je mogoče raztrgati algoritem Diffie-Hellman (vendar le za začetne in končne parametre, kot je navedeno zgoraj). Druga stvar je, da takšno znanje razpolagajo enote.
Uporaba algoritma za platformo Java
Algoritem Diffie-Hellman v Java se uporablja izključno za klice, kot je "odjemalec-strežnik".
Z drugimi besedami, strežnik čaka, da se odjemalski stroji povežejo. Ko je taka povezava izvedena, se algoritem izvaja za iskanje javnega ali zasebnega ključa, po katerem lahko uporabnik dobi neoviran dostop do vseh funkcij in podatkov samega strežnika. Včasih to velja celo za mobilne sisteme, vendar le malo ljudi to ve, kajti izvršilni del deluje v nevidnem načinu v obliki izvedljivih skriptov.
Uporaba algoritma za platformo C (+ / + +)
Če pogledate algoritem Diffie-Hellman na "C" (+ / + + +), potem tukaj ni vse tako gladko. Dejstvo je, da včasih obstaja problem, ko sam programski jezik deluje večinoma s preračunami, povezanimi s plavajočo vejico. To je razlog, zakaj pri določanju celostnih vrednosti ali pri poskusu kroga (tudi kadar eksponentiacija) morda obstaja težava pri sestavljanju. To še posebej velja za zlorabo funkcije int.
Vendar pa je treba pozornost nameniti drugim izvršnim komponentam, ki praviloma predstavljajo nalogo razredov, enako izpostavljenost ali pripadajoče knjižnice GMP.
Sodobni šifrirni algoritmi
Domneva se, da algoritma Diffie-Hellman še vedno ni mogoče preseči. Pravzaprav je bil tisti, ki je bil podlaga za nastanek tako znanih zaščitnih sistemov na področju šifriranja podatkov, kot so AES128 in AES256.
Vendar pa, kot je praksa kaže, kljub razpoložljivosti številk v abstraktno ne zaznajo človeka, večina sistemov te uporabe tipa samo vrednost prvega ducat (ne več), ampak samo algoritmom pomeni številko milijon krat več.
Namesto pogovora
Na splošno je verjetno že jasno, kakšen je sistem in kakšne so njegove algoritemske komponente. Šele je še dodati, da je obdarjen s tako velikimi možnostmi, da jih skoraj nihče ne uporablja v celoti.
Po drugi strani pa so v algoritmu očitno dovolj ranljivosti. Presodite sami: v resnici, napisati program za izračun diskretne logaritmi, skoraj vsak od njegovega ustvarjalca lahko dostopate ne le z začetnimi parametri, ki jih določi uporabnik, ampak tudi javnega ključa, ki je nastal v šifriranje in dešifriranje sistema.
V najpreprostejšem primeru je dovolj, da namestite isti izvedbeni program Java, ki ga lahko uporabite tudi v mobilnih komunikacijah. Seveda uporabnik tega ne ve, lahko pa kdo uporablja svoje podatke za lastne namene.
- Zunanji računalniški pomnilnik
- Dekodiranje hašiša: najpreprostejše metode
- Kako konfigurirati in uporabljati vrata SSH? Navodila po korakih
- FTPS pristanišče - kaj je to?
- Kaj je CJS? Sredstva kriptografske zaščite podatkov
- WPA2-PSK - kaj je to? Varnostni tip WPA2-PSK
- Algoritmi šifriranja podatkov. Simetrični algoritmi za šifriranje. Algoritem RSA šifriranja. DES…
- RSA šifriranje. Opis in izvajanje RSA algoritma
- Sniffer gesla, omrežja. Sniffer - kaj je to?
- AES: šifriranje podatkov
- Preverjanje hešnih vsot: Kaj je to?
- USB žetoni. Kakšna je uporabnost te naprave?
- Razvrščanje operacijskih sistemov
- Kriptografske metode varovanja informacij: koncept, značilnosti, ključni položaji
- Šifriranje od konca do konca: opis in uporaba
- Zaščita informacij na internetu - je pomembno
- Kaj je VPN in njegove funkcije
- Šifriraj datoteke
- Algoritmi za sortiranje, kakršni so
- Šifriranje podatkov kot potreben ukrep za zaščito vaših podatkov
- Algoritem je jasno definirano zaporedje izvajanja matematičnih operacij