Tutorial cryptografie: cryptanalyse, RC4, CrypTool

Inhoudsopgave:

Anonim

Informatie speelt een cruciale rol bij het runnen van zaken, organisaties, militaire operaties, enz. Informatie in verkeerde handen kan leiden tot verlies van zaken of catastrofale resultaten. Om communicatie te beveiligen, kan een bedrijf cryptologie gebruiken om informatie te coderen . Cryptologie omvat het transformeren van informatie naar het niet-menselijke leesbare formaat en vice versa.

In dit artikel laten we u kennismaken met de wereld van cryptologie en hoe u kunt voorkomen dat informatie in verkeerde handen valt.

Onderwerpen die in deze tutorial worden behandeld

  • Wat is cryptografie?
  • Wat is cryptanalyse?
  • Wat is cryptologie?
  • Versleutelingsalgoritmen
  • Hacking-activiteit: nu hacken!

Wat is cryptografie?

Cryptografie is de studie en toepassing van technieken die de werkelijke betekenis van informatie verbergen door deze om te zetten in niet-menselijke leesbare formaten en vice versa.

Laten we dit illustreren aan de hand van een voorbeeld. Stel dat u het bericht "I LOVE APPLES" wilt verzenden, dan kunt u elke letter in de zin vervangen door de derde opeenvolgende letter van het alfabet. Het versleutelde bericht is "K NQXG CRRNGV". Om ons bericht te ontsleutelen, moeten we drie letters teruggaan in het alfabet met de letter die we willen ontsleutelen. De onderstaande afbeelding laat zien hoe de transformatie wordt uitgevoerd.

Het proces waarbij informatie wordt omgezet in een niet-menselijke leesbare vorm, wordt codering genoemd.

Het proces van het omkeren van codering wordt decodering genoemd .

Decodering gebeurt met behulp van een geheime sleutel die alleen bekend is bij de legitieme ontvangers van de informatie. De sleutel wordt gebruikt om de verborgen berichten te ontsleutelen. Dit maakt de communicatie veilig, want zelfs als de aanvaller erin slaagt de informatie te krijgen, zal het voor hem niet logisch zijn.

De gecodeerde informatie staat bekend als een cijfer .

Wat is cryptanalyse?

Cryptanalyse is de kunst om te proberen de versleutelde berichten te ontsleutelen zonder de sleutel te gebruiken die werd gebruikt om de berichten te versleutelen. Cryptanalyse maakt gebruik van wiskundige analyse en algoritmen om de cijfers te ontcijferen. Het succes van cryptanalyse-aanvallen hangt ervan af

  • Hoeveelheid beschikbare tijd
  • Rekenkracht beschikbaar
  • Opslagcapaciteit beschikbaar

Het volgende is een lijst van de meest gebruikte cryptanalyse-aanvallen;

  • Brute force-aanval - dit type aanval maakt gebruik van algoritmen die proberen alle mogelijke logische combinaties van de leesbare tekst te raden, die vervolgens worden gecodeerd en vergeleken met de oorspronkelijke codering.
  • Woordenboekaanval - bij dit type aanval wordt een woordenlijst gebruikt om een ​​overeenkomst te vinden met de leesbare tekst of de sleutel. Het wordt meestal gebruikt om gecodeerde wachtwoorden te kraken.
  • Rainbow Table-aanval - dit type aanval vergelijkt de versleutelde tekst met vooraf berekende hashes om overeenkomsten te vinden.

Wat is cryptologie?

Cryptologie combineert de technieken van cryptografie en cryptanalyse.

Versleutelingsalgoritmen

MD5 - dit is de afkorting voor Message-Digest 5. Het wordt gebruikt om 128-bits hashwaarden te creëren. Theoretisch kunnen hashes niet worden teruggedraaid in de originele platte tekst. MD5 wordt gebruikt om wachtwoorden te versleutelen en om de gegevensintegriteit te controleren. MD5 is niet botsbestendig. Botsingsweerstand is de moeilijkheid om twee waarden te vinden die dezelfde hash-waarden produceren.

  • SHA - dit is de afkorting voor Secure Hash Algorithm. SHA-algoritmen worden gebruikt om beknopte weergaven van een bericht te genereren (berichtoverzicht). Het heeft verschillende versies zoals;
  • SHA-0 : produceert 120-bits hash-waarden. Het werd buiten gebruik gesteld vanwege significante gebreken en vervangen door SHA-1.
  • SHA-1 : produceert 160-bits hash-waarden. Het is vergelijkbaar met eerdere versies van MD5. Het heeft een cryptografische zwakte en wordt niet aanbevolen voor gebruik sinds het jaar 2010.
  • SHA-2 : het heeft twee hash-functies, namelijk SHA-256 en SHA-512. SHA-256 gebruikt 32-bits woorden, terwijl SHA-512 64-bits woorden gebruikt.
  • SHA-3 : dit algoritme was formeel bekend als Keccak.
  • RC4 - dit algoritme wordt gebruikt om stroomcijfers te maken. Het wordt meestal gebruikt in protocollen zoals Secure Socket Layer (SSL) om internetcommunicatie te versleutelen en Wired Equivalent Privacy (WEP) om draadloze netwerken te beveiligen.
  • BLOWFISH - dit algoritme wordt gebruikt om gesleutelde, symmetrisch geblokkeerde cijfers te maken. Het kan worden gebruikt om wachtwoorden en andere gegevens te versleutelen.

Hacking-activiteit: gebruik CrypTool

In dit praktische scenario zullen we een eenvoudig cijfer maken met behulp van het RC4-algoritme. We zullen dan proberen het te decoderen met behulp van een brute-force aanval. Laten we voor deze oefening aannemen dat we weten dat de geheime coderingssleutel 24 bits is. We zullen deze informatie gebruiken om het cijfer te breken.

We zullen CrypTool 1 gebruiken als onze cryptologietool. CrypTool 1 is een open source educatieve tool voor crypto logische studies. U kunt het downloaden van https://www.cryptool.org/en/ct1-downloads

Het RC4-stroomcijfer maken

We zullen de volgende zin versleutelen

Onderschat nooit de vastberadenheid van een kind dat tijd- en geldarm is

We gebruiken 00 00 00 als coderingssleutel.

  • Open CrypTool 1
  • Vervang de tekst door Nooit de vastberadenheid onderschatten van een kind dat tijd- en geldarm is
  • Klik op het menu Versleutelen / ontsleutelen
  • Wijs Symmetrisch (modern) aan en selecteer vervolgens RC4 zoals hierboven weergegeven
  • Het volgende venster zal verschijnen
  • Selecteer 24 bits als coderingssleutel
  • Stel de waarde in op 00 00 00
  • Klik op de knop Versleutelen
  • U krijgt het volgende stroomcijfer

Het stroomcijfer aanvallen

  • Klik op het menu Analyse
  • Wijs naar symmetrische versleuteling (modern) en selecteer vervolgens RC4 zoals hierboven weergegeven
  • U krijgt het volgende venster
  • Onthoud dat de aanname is dat de geheime sleutel 24 bits is. Zorg er dus voor dat u 24 bits selecteert als de sleutellengte.
  • Klik op de Start-knop. U krijgt het volgende venster
  • Opmerking: de tijd die nodig is om de Brute-Force Analysis-aanval te voltooien, is afhankelijk van de verwerkingscapaciteit van de gebruikte machine en de sleutellengte. Hoe langer de sleutellengte, hoe langer het duurt om de aanval te voltooien.
  • Als de analyse is voltooid, krijgt u de volgende resultaten.
  • Opmerking: een lager Entropy-getal betekent dat dit het meest waarschijnlijke juiste resultaat is. Het is mogelijk dat een hogere dan de laagst gevonden Entropiewaarde het juiste resultaat kan zijn.
  • Selecteer de regel die het meest logisch is en klik op de knop Selectie accepteren als u klaar bent

Overzicht

  • Cryptografie is de wetenschap van het versleutelen en ontcijferen van berichten.
  • Een cijfer is een bericht dat is omgezet in een niet-menselijk leesbaar formaat.
  • Ontcijferen is het omkeren van een cijfer in de originele tekst.
  • Cryptanalyse is de kunst van het ontcijferen van cijfers zonder de kennis van de sleutel die wordt gebruikt om ze te coderen.
  • Cryptologie combineert de technieken van zowel cryptografie als cryptanalyticus.