Kryptografia to praktyka i badanie technik bezpiecznej komunikacji w obecności osób trzecich zwanych przeciwnikami. Jego głównym celem jest zapewnienie prywatności, uwierzytelniania, integralności i niezaprzeczalności wiadomości lub danych.
Sztuka kryptografii jest tak stara jak samo pisanie. Początkowo stosowano go po to, aby tylko zamierzeni odbiorcy mogli zrozumieć treść wiadomości. Starożytni Egipcjanie, Grecy i Rzymianie opracowali i stosowali techniki kryptograficzne. Dobrze znanym przykładem jest szyfr Cezara , szyfr podstawieniowy, w którym każda litera tekstu jawnego jest przesuwana o określoną liczbę miejsc w dół alfabetu.
Istnieją dwie podstawowe kategorie algorytmów kryptograficznych:
Szyfrowanie to proces przekształcania tekstu jawnego w tekst zaszyfrowany, który jest nieczytelny dla nikogo poza posiadaczem klucza. Deszyfrowanie to proces odwrotny, polegający na zamianie tekstu zaszyfrowanego z powrotem w czytelny tekst jawny. Zależność matematyczną można wyrazić jako:
Infrastruktura klucza publicznego to platforma do zarządzania certyfikatami cyfrowymi i szyfrowaniem kluczy publicznych. Umożliwia użytkownikom niezabezpieczonej sieci publicznej, takiej jak Internet, bezpieczną i prywatną wymianę danych.
Funkcje skrótu to rodzaj algorytmu kryptograficznego, który generuje ciąg bajtów o stałym rozmiarze (tzw. skrót) z danych wejściowych o dowolnym rozmiarze. Służą one do zapewnienia integralności danych. Dobrze znanym przykładem jest algorytm SHA-256 stosowany w wydobywaniu Bitcoinów.
Podpisy cyfrowe to technika kryptograficzna zapewniająca pochodzenie i integralność komunikacji cyfrowej lub dokumentów. Podpis cyfrowy jest generowany przy użyciu klucza prywatnego i może zostać zweryfikowany przez każdego, kto posiada odpowiedni klucz publiczny.
Kryptoanaliza to nauka zajmująca się analizą systemów informatycznych w celu zrozumienia ukrytych aspektów systemów. Służy do włamywania się do systemów zabezpieczeń kryptograficznych i uzyskiwania dostępu do zawartości zaszyfrowanych wiadomości.
Kryptografia ma szeroki zakres zastosowań, w tym zabezpieczanie poufnej komunikacji, ochronę informacji na urządzeniach pamięci masowej, zwiększanie bezpieczeństwa sieci i sieci, zabezpieczanie elektronicznych transakcji finansowych oraz zapewnianie integralności i autentyczności podpisów cyfrowych i certyfikatów.
Wraz z rozwojem mocy obliczeniowej, takiej jak obliczenia kwantowe, obecne techniki kryptograficzne stają przed nowymi wyzwaniami. Kryptografowie aktywnie pracują nad opracowaniem nowych algorytmów, które wytrzymają moc obliczeniową komputerów kwantowych.