ComputersVeiligheid

Diffie-Hellman algoritme: afspraak

Blijkbaar weinig mensen vandaag de dag, met behulp van gegevens over onveilige communicatiekanalen, stel wat het algoritme Diffie-Hellman. In feite zijn veel niet begrijpen en nodig hebben. Echter, de gebruikers van computersystemen, bij wijze van spreken, meer nieuwsgierig om te begrijpen dat dit kan geen kwaad. In het bijzonder kan de sleutel uitwisseling Diffie-Hellman nuttig zijn voor gebruikers die geïnteresseerd zijn in kwesties van informatiebeveiliging en cryptografie bent.

Wat is de methode van Diffie-Hellman?

Als we de aanpak van de kwestie van het algoritme zelf, maar zonder in te gaan op de technische en wiskundige gegevens, kunnen we het definiëren als een methode voor het coderen en decoderen van de informatie die wordt verzonden en ontvangen tussen twee of meer gebruikers van de computer of andere systemen met betrekking tot de uitwisseling van gegevens met het gebruik van een onbeschermde communicatiekanaal.

Zoals duidelijk is, bij afwezigheid van de beveiligingskanaal te onderscheppen of bestanden in het proces van zenden en ontvangen wijzigen, en kan de aanvaller. Echter, de key distribution Diffie-Hellman voor de toegang tot gegevens te verzenden en te ontvangen, zodat de knoeien bijna volledig wordt geëlimineerd. In deze communicatie-informatie geregistreerd bij het communicatiekanaal (zonder bescherming daarvan) wordt veilig als beide partijen dezelfde sleutel gebruiken.

prehistorie

Het algoritme Diffie-Hellman werd geïntroduceerd in de wereld in 1976. De makers geworden Uitfrid Diffie en Martin Hellman, die in zijn onderzoek naar veilige en betrouwbare data-encryptie methoden die zijn gebaseerd op het werk van Ralph Merkle, die de zogenaamde public key distributiesysteem ontwikkeld.

Maar als Merkle uitsluitend theoretische basis ontwikkeld, Diffie en Hellman voorgesteld aan het publiek een praktische oplossing voor dit probleem.

De eenvoudigste verklaring

Eigenlijk is de test op basis van cryptografische encryptie-technologieën die nu zijn verrast vele deskundigen op dit gebied. cijfers bloemlezing omvat een heel lange geschiedenis. De essentie van het hele proces is ervoor te zorgen dat er twee partijen, e-mailen, of door een uitwisseling van gegevens met behulp van computerprogramma's. Maar de verdediging wordt gedaan op een zodanige wijze dat het Diffie-Hellman algoritme zelf vereist dat de decryptie sleutel is bekend dat de twee partijen (verzenden en ontvangen). Wanneer dit is absoluut onbelangrijk wie van hen een eerste willekeurig getal zal genereren (dit punt uiteen zal zetten bij het overwegen van de belangrijkste rekenformules).

Werkwijzen voor het versleutelen gegevens van eerdere perioden

Om het duidelijker te maken, stellen we vast dat de meest primitieve manier om gegevens te coderen is, bijvoorbeeld, de spelling is niet van links naar rechts, zoals gebruikelijk is in de meeste scripts en rechts naar links. Ook kunt u gemakkelijk gebruik en vervanging van letters van het alfabet in een verklaring. Bijvoorbeeld, het woord verandert de tweede brief aan de eerste, de vierde - het derde en ga zo maar door. De zeer hetzelfde document bij de aanblik van het kan een complete onzin zijn. Echter, degene die de broncode schreef, volgens de persoon die heeft om te lezen, in welke volgorde bepaalde tekens moeten worden geplaatst. Dit heet de sleutel.

Merk op dat het grootste deel van de nog ontcijferde teksten en spijkerschrift geschriften van de oude Soemeriërs en de Egyptenaren niet crypto-analisten begrepen alleen vanwege het feit dat ze niet weten hoe het opzetten van de gewenste volgorde van de karakters.

En in ons geval - de Diffie-Hellman variant gaat ervan uit dat de decryptie sleutel is bekend dat het een beperkt aantal gebruikers. Echter, en hier is het noodzakelijk om een reservering te maken, want de inmenging in de transmissie van de gecodeerde gegevens van dit type kan worden geschonden door derden, indien zij de vervanging of vervanging van tekens zal oplossen.

Het spreekt voor zich dat er nu krachtig genoeg cryptosysteem op basis van algoritmes, zoals AES, maar ze hebben geen volledige garantie van bescherming tegen hacking gegevens van derden te geven.

Nou, nu richten we ons op de meest encryptiesysteem, de praktische toepassing en de mate van bescherming.

Diffie-Hellman algoritme: afspraak

Het algoritme is gemaakt om zo niet alleen de privacy van de gegevens tijdens de overdracht van de ene partij naar de andere, maar ook om ze veilig te verwijderen na ontvangst te waarborgen. Grofweg dergelijk transmissiesysteem moet zorgen voor volledige bescherming voor alle mogelijke communicatiekanalen.

Recall, tijdens de Tweede Wereldoorlog, toen de intelligentie van de geallieerde landen tevergeefs gejaagd voor encryptie machine genaamd "Enigma", waarmee gecodeerde berichten te zenden Morse code. Immers, kon het niet oplossen van de cipher niemand, zelfs de manier waarop we het over hebben, "geavanceerde" expert in de cryptografie. Pas na zijn vangst werd verkregen de sleutel tot het ontcijferen van de berichten die door de Duitse marine.

Diffie-Hellman algoritme: een overzicht

Dus, het algoritme omvat het gebruik van een aantal fundamentele concepten. Stel dat we het eenvoudigste geval, wanneer de twee partijen (de gebruiker) aanwezig zijn op de verbinding zijn. We noteren ze als A en B.

Ze gebruiken twee getallen X en Y, niet geheim in dit communicatiekanaal sturen van de overdracht. De hele essentie van de vraag komt neer op, om te creëren op hun basis van een nieuw soort waarde die de sleutel zal zijn. Maar! De eerste beller gebruikt een groot priemgetal, en het tweede - altijd een integer (deelbaar), maar lager orde dan de eerste.

Uiteraard dienen gebruikers akkoord dat deze nummers geheim worden gehouden. Echter, omdat het kanaal is onzeker, kan de twee nummers worden bekende en andere geïnteresseerden. Dat is de reden waarom mensen in dezelfde uitgewisselde berichten geheime sleutel om het bericht te decoderen.

De basis formules voor het berekenen key

Aangenomen wordt dat de Diffie-Hellman betrekking op een systeem zogenaamde symmetrische encryptie, waarover meldingen van asymmetrische cipher waren. Echter, als we rekening houden met de belangrijkste aspecten van de berekening van de sleutel van de host partijen, moeten minstens algebra te herinneren.

Zo kan bijvoorbeeld elk van de abonnees genereert willekeurige getallen a en b. Ze weten van tevoren de waarden van x en y, die zelfs kan worden "genaaid" in de benodigde software.

Bij het verzenden of ontvangen van een dergelijk bericht de abonnee A berekent de sleutelwaarde, uitgaande van de formule A = x mod y, terwijl de tweede een combinatie van B = x b mod y, gevolgd door het zenden van de gedecodeerde sleutel van de eerste gebruiker. Dit is de eerste stap.

Stel nu dat de betrokken derde partij beschikt over zowel de berekende waarden van A en B. Alle hetzelfde, het kan niet ingrijpen in het proces van de overdracht van gegevens, omdat de tweede stap is om te weten hoe je een gemeenschappelijke sleutel te berekenen.

Uit het bovenstaande formules, kunt u verblijven in het gemeenschappelijke sleutel berekening. Als je kijkt naar de Diffie-Hellman voorbeeld zou er als volgt uitzien:

1) berekent een eerste abonneesleutel basis van x door de formule B een mod y = x ab mod y;

2) Ten tweede, op basis van het oorspronkelijke aantal y en bereid volgens de netwerkprotocol optie B, definieert een sleutel van een bestaande parameter A: Ab mod y = x ba mod y.

Zoals u kunt zien, de uiteindelijke waarden, zelfs wanneer permutatie graden samenvallen. Aldus wordt het decoderen van gegevens door beide partijen verlaagd, zoals men zegt, één noemer.

Kwetsbaarheid bij interventie in het proces van gegevensoverdracht

Zoals je zou verwachten, is de derde partij ingrijpen niet uitgesloten. Echter, in dit geval is het in eerste instantie het nummer op te geven van 10 100, of zelfs 10.300.

Het spreekt vanzelf dat geen van vandaag om een wachtwoord of toegangscode generators aan het getal zelf niet (behalve dat de eerste en laatste en niet tussentijds opties voor interventie in het transmissiesysteem) te bepalen. Het zou zo veel tijd dat het leven op aarde zal eindigen nemen. Echter, hiaten in een dergelijk beveiligingssysteem is er nog steeds.

Meestal worden ze geassocieerd met kennis van discrete logaritme. Indien deze kennis te kraken het Diffie-Hellman algoritme kan zijn (maar alleen voor de begin- en eindwaarden parameters zoals hierboven vermeld). Een ander ding is dat dergelijke kennis eenheden bezitten.

Met behulp van het algoritme voor het Java-platform

Diffie-Hellman algoritme wordt gebruikt in de Java uitsluitend met een beroep als "client-server".

Met andere woorden, wordt de server in afwachting van Connect-client machines. Als die verbinding wordt gemaakt, is er een optreden van het algoritme op zoek naar een publieke of private sleutel, en dan kan de gebruiker volledige toegang tot alle functies en gegevens van de server zelf te krijgen. Soms is dit waar is, zelfs in mobiele systemen, maar dit heel weinig mensen weten, des te meer dat de uitvoerende deel van de werken in onzichtbare modus in de vorm van uitvoerbare scripts.

Met het algoritme voor het platform C (+ / ++)

Als je kijkt naar de Diffie-Hellman in de «C» (+ / ++), dan is er niet zo glad. Het feit is dat er soms een probleem wanneer het grootste deel van het werk met de berekeningen zelf programmeertaal in verband met floating point. Dat is de reden waarom bij het instellen van een geheel getal, of wanneer het proberen om de afronding (zelfs machtsverheffen), kunnen er problemen tijdens het compileren zijn. Vooral het gaat om het misbruik int functie.

Echter, het is de moeite waard aandacht te besteden aan de rest van de uitvoerbare componenten die in de regel, zijn de job klassen, hetzelfde exponentiation of verwante vastgemaakt GMP bibliotheek.

Modern encryptie-algoritmen

Er wordt aangenomen dat de Diffie-Hellman is nog steeds te verslaan, niemand kan. Sterker nog, hij was het die als basis voor het ontstaan van die bekende systemen van bescherming op het gebied van data-encryptie als AES128 en AES256 geserveerd.

Echter, zoals de praktijk blijkt, ondanks de beschikbaarheid van nummers in het abstract niet wordt waargenomen door de mens, de meeste van de systemen van dit type gebruik alleen de waarde van het eerste dozijn (niet meer), maar het algoritme zelf impliceert een aantal een miljoen keer meer.

in plaats van een naschrift

In het algemeen, waarschijnlijk, het is nu al duidelijk wat dit systeem vormt en wat zijn de algoritmische componenten. Het blijft alleen om toe te voegen dat het is begiftigd met zulke grote potentieel dat deze volledig bijna niemand gebruikt.

Aan de andere kant, en kwetsbaarheid in het algoritme duidelijk genoeg. Oordeel zelf: in feite, schrijf een programma om discrete logaritmen te berekenen, bijna elk van zijn schepper kan niet alleen toegang tot de initiële parameters ingesteld door de gebruiker, maar ook voor de publieke sleutel, die wordt gegenereerd in de encryptie en decryptie-systeem.

In het eenvoudigste geval is het voldoende om de installatie van het uitvoerbare bestand van de Java-applet, die kan worden gebruikt, zelfs in mobiele communicatie te maken. Natuurlijk zal de gebruiker niet weten, maar de gegevens in staat zijn om iemand te exploiteren zal zijn.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 nl.unansea.com. Theme powered by WordPress.