we zullen de twee belangrijkste soorten versleuteling opsplitsen — symmetrisch en asymmetrisch — voordat we in de lijst van de 5 meest gebruikte versleutelingsalgoritmen duiken om ze te vereenvoudigen als nooit tevoren
vaak beschuldigd van het verbergen van terroristische activiteiten door politieke entiteiten, is versleuteling een van die cyberbeveiligingsonderwerpen die altijd in de krantenkoppen staan., Iedereen die een fatsoenlijk begrip heeft van de verschillende soorten encryptie kan het gevoel hebben dat er een soort onrecht wordt gedaan aan deze opmerkelijke technologie die de kern vormt van internetbeveiliging en privacy. Encryptie is een methode om gegevens om te zetten in een niet te ontcijferen formaat, zodat alleen de geautoriseerde partijen toegang hebben tot de informatie.
cryptografische sleutels, in combinatie met versleutelingsalgoritmen, zijn wat het versleutelingsproces mogelijk maakt., En, gebaseerd op de manier waarop deze sleutels worden toegepast, zijn er voornamelijk twee soorten encryptie methoden die voornamelijk worden gebruikt: “symmetrische encryptie” en “asymmetrische encryptie.”Beide methoden maken gebruik van verschillende wiskundige algoritmen (dat wil zeggen, die encryptie-algoritmen die we zojuist genoemd) om de gegevens te versleutelen. Deze lijst van gemeenschappelijke encryptie-algoritmen omvat RSA, ECC, 3DES, AES, enz.
in dit artikel leren we over symmetrische & asymmetrische encryptie en hun heersende encryptie-algoritmen die worden gebruikt om gegevens te versleutelen.
laten we het eruit halen.,
type versleuteling # 1: symmetrische versleuteling
de symmetrische versleutelingsmethode gebruikt, zoals de naam al aangeeft, één cryptografische sleutel om gegevens te versleutelen en te decoderen. Het gebruik van een enkele sleutel voor beide operaties maakt het een eenvoudig proces, en daarom heet het “symmetrisch.”Hier is een visuele uitsplitsing van hoe symmetrische encryptie werkt:
laten we het symmetrische encryptie proces begrijpen met een eenvoudig voorbeeld:
Er zijn twee echt goede vrienden genaamd Bob en Alice die in New York wonen., Om een of andere reden moet Alice de stad verlaten. De enige manier waarop ze met elkaar kunnen communiceren is via de post. Maar er is één probleem: Bob en Alice zijn bang dat iemand hun brieven kan lezen.
om hun letters te beschermen tegen iemands ogen, besluiten ze hun bericht zo te schrijven dat elke letter van het bericht wordt vervangen door een letter zeven posities in het alfabet., In plaats van “Apple” zouden ze “Hwwsl” schrijven (A -> H, P -> W, L -> S, E -> L). Om de gegevens terug te zetten in zijn oorspronkelijke vorm, zouden ze de letter zeven posities hoger in de alfabet volgorde moeten vervangen.
natuurlijk klinkt dit te eenvoudig voor u — en dat is het ook. Dat komt omdat deze techniek eeuwen geleden werd gebruikt door Julius Caesar, de Romeinse keizer en militair generaal. Bekend als “Caesar’ s cipher, ” deze methode werkt op de techniek van alfabet substitutie.,
de huidige versleutelingsmethoden zijn niet zo eenvoudig als dat. De veelgebruikte encryptie-algoritmen zijn zo complex dat zelfs de gecombineerde rekenkracht van veel supercomputers ze niet kan kraken. En dat is de reden waarom we kunnen ontspannen en stuur onze credit card informatie Zonder Zorgen.
wat symmetrische versleuteling tot een geweldige techniek maakt
het meest opvallende kenmerk van symmetrische versleuteling is de eenvoud van het proces. Deze eenvoud van dit soort encryptie ligt in het gebruik van een enkele sleutel voor zowel encryptie en decryptie., Als gevolg hiervan zijn symmetrische versleutelingsalgoritmen:
- significant sneller dan hun asymmetrische versleutelings tegenhangers (die we binnenkort zullen bespreken),
- vereisen minder rekenkracht, en
- dempen de internetsnelheid niet.
Dit betekent dat als er een groot deel van de data moet worden versleuteld, symmetrische versleuteling een geweldige optie blijkt te zijn.
3 veelvoorkomende typen symmetrische versleutelingsalgoritmen
zoals we zagen met Caesar ‘ s cipher, zit er een specifieke logica achter elke versleutelingsmethode die data versleutelt., De encryptie methoden die vandaag worden gebruikt, vertrouwen op zeer complexe wiskundige functies die het vrijwel onmogelijk maken om ze te kraken.
wat je wel of niet beseft is dat er honderden symmetrische sleutel algoritmen bestaan! Enkele van de meest voorkomende versleutelingsmethoden zijn AES, RC4, DES, 3DES, RC5, RC6, enz. Van deze algoritmen zijn DES-en AES-algoritmen de bekendste. Hoewel we niet alle verschillende soorten encryptie-algoritmen kunnen behandelen, laten we eens kijken naar drie van de meest voorkomende.
1., DES Symmetric Encryption Algorithm
in 1976 werd DES (data encryption standard) geïntroduceerd als een van de oudste symmetrische encryptiemethoden. Het werd ontwikkeld door IBM om gevoelige, niet-geclassificeerde elektronische overheidsgegevens te beschermen en werd formeel goedgekeurd in 1977 voor gebruik door federale agentschappen. DES gebruikt een 56-bit encryptie sleutel, en het is gebaseerd op de Feistel structuur die werd ontworpen door een cryptograaf genaamd Horst Feistel. De DES-encryptie-algoritme was een van degenen die werden opgenomen in TLS (transport layer security) versies 1.0 en 1.1.,
DES converteert 64-bit blokken van platte tekst data naar versleuteling door het blok te verdelen in twee afzonderlijke 32-bit blokken en het coderingsproces op elk afzonderlijk toe te passen. Dit omvat 16 rondes van verschillende processen-zoals uitbreiding, permutatie, substitutie, of een XOR operatie met een ronde sleutel —dat de gegevens zullen gaan door als het is gecodeerd. Uiteindelijk, 64-bit blokken van versleutelde tekst wordt geproduceerd als de output.
tegenwoordig wordt DES niet meer gebruikt omdat het door veel beveiligingsonderzoekers is gekraakt., In 2005 werd DES officieel verouderd en vervangen door het AES-encryptie-algoritme, waar we het zo over zullen hebben. Het grootste nadeel van DES was de lage encryptiesleutel lengte, die brute-forcing gemakkelijk gemaakt tegen het. TLS 1.2, het meest gebruikte TLS-protocol van vandaag, maakt geen gebruik van de DES-versleutelingsmethode.
2. 3DES Symmetric Encryption Algorithm
3DES (ook bekend als tdea, wat staat voor triple data encryption algorithm), zoals de naam al aangeeft, is een verbeterde versie van het DES-algoritme dat werd uitgebracht., 3DES werd ontwikkeld om de nadelen van het DES-algoritme te overwinnen en werd vanaf het einde van de jaren negentig in gebruik genomen. Als gevolg hiervan maakte dit proces 3DES veel moeilijker te kraken dan zijn des-voorganger. Het werd ook een veel gebruikt encryptie-algoritme in betalingssystemen, standaarden en technologie in de financiële sector. Het is ook een onderdeel geworden van cryptografische protocollen zoals TLS, SSH, IPsec, en OpenVPN.
alle versleutelingsalgoritmen bezwijken uiteindelijk voor de kracht van de tijd, en 3DES was niet anders., De Sweet32 kwetsbaarheid ontdekt door onderzoekers Karthikeyan Bhargavan en Gaëtan Leurent unplugged de gaten in de beveiliging die bestaan binnen de 3DES-algoritme. Deze ontdekking veroorzaakte de beveiligingsindustrie om de deprecatie van het algoritme te overwegen en het National Institute of Standards and Technology (NIST) kondigde de deprecatie aan in een concept guidance gepubliceerd in 2019.
volgens dit ontwerp moet het gebruik van 3DES in alle nieuwe toepassingen na 2023 worden geschrapt. Het is ook vermeldenswaard dat TLS 1.3, de nieuwste standaard voor SSL/TLS-protocollen, ook het gebruik van 3DES heeft stopgezet.,
3. AES symmetrisch versleutelingsalgoritme
AES, wat staat voor” advanced encryption system”, is een van de meest gebruikte typen versleutelingsalgoritmen en werd ontwikkeld als een alternatief voor het DES-algoritme. Ook bekend als Rijndael, AES werd een encryptie standaard op goedkeuring door NIST in 2001. In tegenstelling tot DES, AES is een familie van blok cijfers die bestaat uit cijfers van verschillende belangrijke lengtes en blokgroottes.
AES werkt aan de methoden van substitutie en permutatie., Eerst worden de gegevens in platte tekst omgezet in blokken en vervolgens wordt de codering toegepast met behulp van de coderingssleutel. Het coderingsproces bestaat uit verschillende subprocessen zoals sub bytes, shift rijen, mix kolommen, en voeg ronde sleutels. Afhankelijk van de grootte van de sleutel worden er 10, 12 of 14 van dergelijke rondes uitgevoerd. Het is vermeldenswaard dat de laatste ronde niet het subproces van mix kolommen onder alle andere subprocessen uitgevoerd om de gegevens te versleutelen.
het voordeel van het gebruik van het AES-versleutelingsalgoritme
waar dit allemaal op neerkomt is dat AES veilig, snel en flexibel is., AES is een veel sneller algoritme in vergelijking met DES. De opties met meerdere toetsen zijn het grootste voordeel dat je hebt, omdat hoe langer de toetsen zijn, hoe moeilijker het is om ze te kraken.
tegenwoordig is AES het meest gebruikte versleutelingsalgoritme — het wordt in veel toepassingen gebruikt, waaronder:
- draadloze beveiliging,
- Processorbeveiliging en bestandscodering,
- SSL/TLS-protocol (websitebeveiliging),
- Wi-Fi-beveiliging,
- mobiele appcodering,
- VPN (virtual private network), enz.,
veel overheidsinstellingen, waaronder de National Security Agency (NSA), vertrouwen op het AES-versleutelingsalgoritme om hun gevoelige informatie te beschermen.
Type encryptie #2: asymmetrische encryptie
asymmetrische encryptie, in tegenstelling tot de symmetrische encryptie methode, omvat meerdere sleutels voor encryptie en decryptie van de gegevens. Asymmetrische encryptie omvat twee verschillende encryptiesleutels die wiskundig aan elkaar gerelateerd zijn. Een van deze sleutels staat bekend als de “publieke sleutel” en de andere als de “private sleutel.,”Vandaar, waarom de asymmetrische encryptie methode is ook bekend als” public key cryptography.”
zoals we in het bovenstaande voorbeeld zagen, werkt symmetrische versleuteling geweldig wanneer Alice en Bob informatie willen uitwisselen. Maar wat als Bob veilig met honderden mensen wil communiceren? Zou het praktisch zijn als hij verschillende wiskundige sleutels voor elke persoon gebruikte? Niet echt, want dat zou veel sleutels zijn om te jongleren.
om dit probleem op te lossen, gebruikt Bob public key encryptie, wat betekent dat hij de publieke sleutel geeft aan iedereen die hem de informatie stuurt en de private sleutel voor zichzelf houdt., Hij instrueert hen om de informatie te versleutelen met de publieke sleutel, zodat de gegevens alleen kunnen worden gedecodeerd met behulp van de private sleutel die hij heeft. Dit elimineert het risico van sleutel compromis als de gegevens kunnen alleen worden gedecodeerd met behulp van de private sleutel die Bob in zijn bezit heeft.
wat van asymmetrische versleuteling een geweldige techniek maakt
Het eerste (en meest voor de hand liggende) voordeel van dit type versleuteling is de beveiliging die het biedt., Bij deze methode wordt de publieke sleutel — die openbaar beschikbaar is — gebruikt om de gegevens te versleutelen, terwijl de ontcijfering van de gegevens wordt gedaan met behulp van de private sleutel, die veilig moet worden opgeslagen. Dit zorgt ervoor dat de gegevens beschermd blijven tegen man-in-the-middle (MiTM) aanvallen. Voor web/e-mailservers die verbinding maken met honderdduizenden clients ooit minuut, asymmetrische encryptie is niets minder dan een zegen als ze hoeven alleen maar te beheren en te beschermen een enkele sleutel., Een ander belangrijk punt is dat publieke sleutel cryptografie maakt het creëren van een versleutelde verbinding zonder offline te ontmoeten om sleutels eerst uit te wisselen.
het tweede cruciale kenmerk dat asymmetrische versleuteling biedt is authenticatie. Zoals we zagen, kunnen de gegevens versleuteld met een publieke sleutel alleen worden gedecodeerd met behulp van de private sleutel die eraan gerelateerd is. Daarom, het zorgt ervoor dat de gegevens alleen wordt gezien en gedecodeerd door de entiteit die wordt verondersteld om het te ontvangen. In eenvoudiger termen, het verifieert dat je praat met de persoon of organisatie die je denkt dat je bent.,
de 2 belangrijkste typen Asymmetrische versleutelingsalgoritmen
1. RSA asymmetrisch versleutelingsalgoritme
uitgevonden door Ron Rivest, Adi Shamir en Leonard Adleman (vandaar “RSA”) in 1977, is RSA tot op heden het meest gebruikte asymmetrisch versleutelingsalgoritme. Zijn kracht ligt in de” prime factorization ” methode die het vertrouwt op. Kortom, deze methode omvat twee enorme willekeurige priemgetallen, en deze getallen worden vermenigvuldigd om een ander reusachtig getal te creëren. De puzzel hier is om de originele priemgetallen te bepalen van dit gigantische vermenigvuldigde getal.,
het blijkt dat deze puzzel vrijwel onmogelijk is — als je de juiste sleutellengte gebruikt die gegenereerd is met voldoende entropie — voor de huidige supercomputers, laat staan mensen. In 2010 deed een groep onderzoekers onderzoek, en het kostte hen meer dan 1.500 jaar computertijd (verdeeld over honderden computers) om RSA-768 bitsleutel te kraken – die ver onder de standaard 2048-bits RSA-sleutel ligt die vandaag in gebruik is.
het voordeel van het gebruik van het RSA-versleutelingsalgoritme
een groot voordeel dat RSA biedt is de schaalbaarheid., Het komt in verschillende encryptiesleutel lengtes zoals 768-bit, 1024-bit, 2048-bit, 4096-bit, enz. Daarom, zelfs als de lagere sleutellengtes met succes brute-geforceerd zijn, kunt u encryptie van hogere sleutellengtes gebruiken omdat de moeilijkheid van brute-forcing de sleutel toeneemt met elke uitbreidende sleutellengte.
RSA is gebaseerd op een eenvoudige wiskundige benadering, en daarom wordt de implementatie ervan in de publieke sleutelinfrastructuur (PKI) eenvoudig. Dit aanpassingsvermogen met PKI en de beveiliging ervan heeft RSA de meest gebruikte asymmetrische encryptie-algoritme gebruikt vandaag., RSA wordt veel gebruikt in veel toepassingen, waaronder SSL/TLS-certificaten, crypto-valuta ‘ s en e-mail encryptie.
2. ECC asymmetrisch versleutelingsalgoritme
in 1985 stelden twee wiskundigen Neal Koblitz en Victor S. Miller het gebruik van elliptische krommen in cryptografie voor. Na bijna twee decennia werd hun idee werkelijkheid toen het ECC-algoritme (Elliptic Curve Cryptography) in 2004-05 in gebruik werd genomen.,
in het ECC-coderingsproces vertegenwoordigt een elliptische kromme de verzameling punten die voldoen aan een wiskundige vergelijking (y2 = x3 + ax + b).
net als RSA werkt ECC ook volgens het principe van onomkeerbaarheid. In eenvoudiger woorden, het is gemakkelijk om het te berekenen in een richting, maar pijnlijk moeilijk om het om te keren en komen tot het oorspronkelijke punt. In ECC wordt een getal dat een punt op de kromme symboliseert vermenigvuldigd met een ander getal en geeft een ander punt op de kromme. Om deze puzzel te kraken, moet je het nieuwe punt op de curve vinden., De wiskunde van ECC is zo gebouwd dat het vrijwel onmogelijk is om het nieuwe punt te vinden, zelfs als je het oorspronkelijke punt kent.
het voordeel van het gebruik van het ECC-versleutelingsalgoritme
vergeleken met RSA, biedt ECC meer beveiliging (tegen de huidige methoden van kraken) omdat het vrij complex is. Het biedt een vergelijkbaar niveau van bescherming als RSA, maar het maakt gebruik van veel kortere belangrijke lengtes. Als gevolg daarvan, ECC toegepast met toetsen van Grotere lengtes zal aanzienlijk meer tijd te kraken met behulp van brute kracht aanvallen.
een ander voordeel van de kortere sleutels in ECC is snellere prestaties., Kortere toetsen vereisen minder netwerkbelasting en rekenkracht, en dat blijkt geweldig te zijn voor apparaten met beperkte opslag-en verwerkingsmogelijkheden. Wanneer de ECC wordt gebruikt in SSL / TLS-certificaten, vermindert het de tijd die nodig is om SSL/TLS-handshakes aanzienlijk uit te voeren en helpt u de website sneller te laden. Het ECC-encryptie-algoritme wordt gebruikt voor encryptietoepassingen, om digitale handtekeningen toe te passen, in pseudo-willekeurige generatoren, enz.
de uitdaging met het gebruik van ECC is echter dat veel serversoftware en bedieningspanelen nog geen ondersteuning voor ECC SSL/TLS-certificaten hebben toegevoegd., We hopen dat dit verandert in de toekomst, maar dit betekent dat RSA blijft de meer gebruikte asymmetrische encryptie-algoritme in de tussentijd.
hybride encryptie: symmetrische + asymmetrische encryptie
laat me eerst verduidelijken dat hybride encryptie geen “methode” is zoals symmetrische en asymmetrische encryptie zijn. Het neemt het beste uit beide methoden en het creëren van een synergie om robuuste encryptie systemen te bouwen.
zo voordelig als symmetrische en asymmetrische versleuteling zijn, hebben beide hun nadelen., De symmetrische encryptie methode werkt geweldig voor snelle encryptie van grote gegevens. Toch, het biedt geen identiteitscontrole, iets dat is de noodzaak van het uur als het gaat om internetbeveiliging. Aan de andere kant zorgt asymmetrische encryptie — dankzij het publiek/private sleutelpaar — ervoor dat de gegevens toegankelijk zijn voor de beoogde ontvanger. Echter, deze verificatie maakt de encryptie proces pijnlijk traag wanneer geïmplementeerd op schaal.,
in veel toepassingen, zoals websitebeveiliging, was het nodig om de gegevens met hoge snelheid te versleutelen en was de verificatie van de identiteit ook nodig om ervoor te zorgen dat de gebruikers met de beoogde entiteit praten. Zo ontstond het idee van hybride encryptie.
De hybride coderingstechniek wordt gebruikt in toepassingen zoals SSL/TLS-certificaten. SSL / TLS-versleuteling wordt toegepast tijdens een reeks heen-en-weer communicatie tussen servers en clients (webbrowsers) in een proces dat bekend staat als de “TLS handshake.,”In dit proces wordt de identiteit van beide partijen geverifieerd met behulp van de private en publieke sleutel. Zodra beide partijen hun identiteit hebben bevestigd, vindt de encryptie van de gegevens plaats door middel van symmetrische encryptie met behulp van een kortstondige (sessie) sleutel. Dit zorgt voor een snelle overdracht van de tonnen gegevens die we elke minuut verzenden en ontvangen op het internet.,
soorten versleutelingsmethoden: wat we hebben Uitgehashed
Als u zich afvraagt welk type versleuteling beter is dan de andere, dan zal er geen duidelijke winnaar zijn aangezien zowel symmetrische als asymmetrische versleuteling hun voordelen naar de tabel brengen, en we kunnen niet slechts één versleuteling kiezen ten koste van de andere.
vanuit het beveiligingsperspectief is asymmetrische versleuteling ongetwijfeld beter omdat het authenticatie en niet-afwijzing garandeert., Echter, de prestaties is ook een aspect dat we niet kunnen veroorloven om te negeren, en dat is waarom symmetrische encryptie altijd nodig zal zijn.
Hier is de samenvatting van wat we hebben uitgespookt voor zover het versleuteling betreft:
symmetrische versleuteling | asymmetrische versleuteling | een enkele sleutel is gebruikt om gegevens te versleutelen en te decoderen. | een sleutelpaar wordt gebruikt voor versleuteling en decryptie. Deze sleutels staan bekend als public key en private key., |
omdat het slechts één sleutel gebruikt, is het een eenvoudiger versleutelingsmethode. | dankzij het sleutelpaar is het een complexer proces. |
symmetrische versleuteling wordt voornamelijk gebruikt voor versleuteling. | asymmetrische versleuteling zorgt voor versleuteling, authenticatie en niet-afwijzing. |
het levert snellere prestaties en vereist minder rekenkracht in vergelijking met asymmetrische encryptie. | het is langzamer dan symmetrische encryptie en vereist een hogere rekenkracht vanwege zijn complexiteit., |
kleinere sleutellengtes worden gebruikt om de gegevens te versleutelen (bijvoorbeeld 128-256-bit lengte). | gewoonlijk hebben asymmetrische versleutelingsmethoden langere sleutels (bijvoorbeeld 1024-4096-bit lengte). |
ideaal voor toepassingen waarbij een grote hoeveelheid gegevens versleuteld moet worden. | ideaal voor toepassingen waarbij een kleine hoeveelheid gegevens wordt gebruikt door authenticatie te garanderen. |
standaard symmetrische versleutelingsalgoritmen omvatten RC4, AES, DES, 3DES en QUAD. | standaard asymmetrische versleutelingsalgoritmen omvatten RSA, Diffie-Hellman, ECC, El Gamal en DSA., |