Kryptologia to przedmiot opierający się na metodach matematycznych, a zatem na przedmiocie tym będziemy duzo liczyli z racji tego, że krytologia jest związana z szyfrowaniem i deszyfrowaniem informacji okreslonym algorytmem. I na początek kilka spraw związanych z pojęciami. O informacji niezaszyfrowanej, czytelnej, mówimy, że jest to tekst jawny. Tekstem jawnym możemy nazwać także dźwięk, obraz, ale w postaci pierwotnej i czytelnej. I taka forma jawna jest dostępna dla wszystkich. Natomiast jeśli chcemy przekazać prywatnie jakąś wiadomośc do pewnej osoby i nie chcemy, by osoba trzecia miała wgląd do tej wiadomości, to stosujemy odpowiednie przekształcenie tekstu jawnego do takiej postaci zaszyfrowanej (do postaci szyfrogramu), a nastepnie w takiej postaci przesyłamy do osoby drugiej. Warunkiem odczytania tekstu jawnego zaszyfrowanego jest oczywiście znajomość metody, w jakiej ta wiadomość została zaszyfrowana, czyli pewnego algorytmu matematycznego. Najczęściej wiadomość taka składa się z 26 liter alfabetu. Czasami stosuje się jeszcze cyfry od 0 do 9, interpunkcję, oraz jakieś znaki specjalne. Kryptologia dzieli się na dwa działy - kryptografię i kryptoanalizę. Kryptografia zajmuje się utajnionym zapisem danych, czyli szyfrowaniem. Jest to proces przekształcania danych w szyfr za pomocą odpowiedniego algorytmu kryptograficznego.Kryptoanaliza z kolei zajmuje się odczytem utajnionego zapisu danychm czyli deszyfrowaniem. Jest to proces przekształcania szyfru w tekst jawny za pomocą odpowiedniego algotytmu kryptograficznego. Należy też wiedzieć, ze prócz szyfrowania istnieją także techniki ukrywania informacji. Tym zajmuje się dział kryptologii - steganografia, która zajmuje się ukrywaniem tekstu bez jego przekształcenia. Istnieje wiele wyrafinowanych technik ukrywania tekstu. Informacja ukrywana może być wstawiana w pliki dźwiękowe, filmowe, pliki obrazu. Teraz wróćmy jednak do szyfrowania. Bardzo często jest tak, że jeśli chcemy zakodować jakiś tekst, to zwykle stosujemy algorytmy przesunięcia liter w tym tekście. Alfabet zawiera 26 liter i tak dla każdej przypisujemy odpowiednią cyfrę z przedziału od 0 do 25. I tak litera A jest oznaczana jako 0, litera B jako 1 i tak do 25. Załóżmy, ze mamy teks ALAMAKOTA. Każdej literze przyporzadkowany jest numer tak, jak wyżej. Zakodowanie tej informacji bardzo często polega na zastosowaniu jakiejś operacji na numerach pozycji. W skutek tego otrzymujemy ciąg znaków o takiej samej liczbie liter, ale już w formie nieczytelnej. Ciąg liter stanie się czytelny, gdy dokonamy operacji odwrotnej do zastosowanej, czyli jeśli wystąpiło dodanie liczby 3 do pozycji pierwotnej, to nasze zadanie polega na odjęciu liczby 3 od pozycji uzyskanej. Istnieje bardzo często coś takiego, jak protokuł kryptograficzny. Stosuje się to, jeśli chcemy bardzo mocno zaszyfrować jakąś informację. Jest to taka metoda szyfrowania, która polega na zastosowaniu kilku różnych algorytmów kodowania w określonej kolejności do zaszyfrowania informacji. Gdy nastepuje wymiana informacji zaszyfrowanej pomiędzy osobą A, a osobą B bardzo często jest tak, że osoba trzecia może ją przechwycić (skopiować), ale może przy odrobinie wsprytu odczytać. Uniemożliwienie takiego przechwycenia i odczytu informacji nazywamy poufnością informacji. Wracając do tego naszego poprzedniego przekształcania ciągu liter należy pamiętać, że istnieje nie tylko możliwość strosowania jakiegoś algorytmu dla pojedynczej litery, ale też dla grup znaków. Szyfrowanie algorytmem przesuwającym jest nazywane szyfrowaniem Cezara, jednak nie zapewnia on w zasadzie pełnego bezpieczeństwa. Szyfrowanie bardzo często też opiera się na zbiorach. Choćby w tym naszym przypadku przesunięcia. Istnieje zbiór liter w postaci niezaszyfrowanej (P - skończony zbiór możliwych tekstów jawnych) i zbiór liter na którym zostało wykonane przekształcenie (C - skończony zbiór możliwych tekstów zaszyfrowanych) . Przyjmuje się, że element pierwszy zbioru pierwszego nie może być równy elementowi zbioru drugiego. No i mamy też zbiór algorytmów szyfrujących (K - skończony zbiór kluczy), oraz zbiory E i D, czyli zbiory reguł odpowiednio szyfrowania i deszyfrowania. Mówi się, że dla każdego klucza
, istnieje reguła szyfrowania
i deszyfrowania
taka, że:
oraz
o następującej własności:
. Istnieje w kryptologii tak zwana zasada Kerckhoffsa - jedna z podstawowych zasad współczesnej kryptografii, sformułowana w XIX wieku (1883) przez holenderskiego kryptologa Augusta Kerckhoffsa. Zasada ta mówi, że system kryptograficzny powinien być bezpieczny nawet wtedy, gdy wszystkie szczegóły jego działania - oprócz klucza - są znane. Zasadę Kerckhoffsa spełniają praktycznie wszystkie współcześnie stosowane algorytmy szyfrujące (DES, AES i inne), których specyfikacje są w pełni jawne. Algorytmy te są uważane za dobrze zbadane i bezpieczne. Bezpieczeństwo zaszyfrowanej wiadomości zależy tylko od bezpieczeństwa klucza szyfrującego.Utajnienie szczegółów algorytmu szyfrującego może znacząco utrudnić jego kryptoanalizę, ale tylko wówczas gdy algorytm jest wykorzystywany w ściśle ograniczonym środowisku, które uniemożliwi łatwe ujawnienie algorytmu. Na przykład większość szyfrów stosowanych na świecie do ochrony informacji na szczeblu rządowym to algorytmy niejawne (np. polski szyfr NASZ). Aby informacja zaszyfrowana została przekazana drugiej osobie, musi zostać przekazany w sposób bezpieczny program dekodujący, albo algorytm szyfrujący.