Hvad er kryptografiske algoritmer?
Kryptografiske algoritmer er sekvenser af processer eller regler, der bruges til at kryptere og dekryptere meddelelser i et kryptografisk system. Kort sagt er det processer, der beskytter data ved at sikre sig, at uønskede mennesker ikke får adgang til dem. Disse algoritmer har en lang række anvendelser, herunder sikring af sikre og godkendte økonomiske transaktioner.
De fleste krypteringsalgoritmer involverer brugen af kryptering, som gør det muligt for to parter at kommunikere, mens de forhindrer uautoriserede tredjeparter i at forstå disse kommunikationer. Kryptering omdanner menneskelig læsbar klartekst til noget uleseligt, også kendt som ciphertext . De krypterede data dekrypteres derefter for at gendanne dem, hvilket gør dem forståelige for den tilsigtede part. Både kryptering og dekryptering fungerer baseret på algoritmer.
Der er mange forskellige typer kryptografiske algoritmer, selvom de fleste af dem passer ind i en af to klassifikationer - symmetrisk og asymmetrisk. Nogle systemer bruger imidlertid en hybrid af begge klassificeringer. Symmetriske algoritmer, også kendt som symmetrisk nøgle eller delt nøgle algoritmer, fungerer ved hjælp af en nøgle, der kun er kendt for de to autoriserede parter. Selvom disse kan implementeres i form af blokchiftere eller streamciffer, bruges den samme nøgle til både kryptering og dekryptering af meddelelsen. Data Encryption Standard (DES) og Advanced Encryption Standard (AES) er de mest populære eksempler på symmetriske kryptografialgoritmer.
Asymmetriske kryptografealgoritmer er afhængige af et par nøgler - en offentlig nøgle og en privat nøgle. Den offentlige nøgle kan afsløres, men for at beskytte dataene skal den private nøgle skjules. Derudover skal kryptering og dekryptering af dataene udføres af de tilknyttede private og offentlige nøgler. For eksempel skal data, der er krypteret med den private nøgle, dekrypteres af den offentlige nøgle, og vice versa. RSA er et af de mest almindelige eksempler på denne algoritme.
Symmetriske algoritmer er normalt meget hurtigere end asymmetriske algoritmer. Dette er i vid udstrækning relateret til det faktum, at der kun kræves en nøgle. Ulempen ved systemer med delt nøgle er imidlertid, at begge parter kender den hemmelige nøgle. Eftersom den anvendte algoritme derudover er det offentlige domæne, er det faktisk nøglen, der kontrollerer adgangen til dataene. Af disse grunde skal nøglerne beskyttes og skiftes relativt ofte for at sikre sikkerhed.
Mens kryptografiske algoritmer bruges til at give sikkerhed, er de ikke 100% narresikre. Det suboptimale system kan infiltreres, og følsomme oplysninger kan kompromitteres som et resultat. Derfor er rigorøs test af algoritmerne, især mod etablerede standarder og identificerede svagheder, afgørende for at sikre den største sikkerhed.