Kryptologia (kreikan sanoista κρυπτός kryptós, "piilossa, salainen"; ja -λογία -logia, "oppi", tai γράφειν graphein, "kirjoitus")[1] tai salakirjoitustekniikka viittaa turvallisen viestinnän menetelmien tutkimiseen ja harjoittamiseen kolmansien osapuolten (vastustajien) läsnäolossa.[2] Se viittaa yleisemmin vastustajien vaikutusvallan ylittävien protokollien kehittämiseen ja analysointiin.[3] Näissä protokollissa sovelletaan useaa tietoturvan näkökohtaa, kuten datan luottamuksellisuutta, datan eheyttä, todennusta ja kiistämättömyyttä.[4] Modernilla kryptografialla on päällekkäisyyksiä matematiikan, tietojenkäsittelytieteen ja sähkötekniikan tieteenhaarojen kanssa. Kryptografiaa sovelletaan muun muassa pankkiautomaateissa, salasanoissa ja sähköisessä kaupankäynnissä.
Ennen modernia aikakautta kryptografia oli käytännöllisesti katsoen synonyyminen salauksen kanssa. Salaus on prosessi, jonka avulla muunnetaan luettavissa oleva tieto näennäiseksi hölynpölyksi. Salatun viestin lähettäjä jakoi salauksen purkuun tarvittavat tiedot vain tarkoitetun vastaanottajan kanssa. Kryptologian menetelmät ovat ensimmäisen maailmansodan ja tietokoneiden keksimisen jälkeen muuttuneet yhä monimutkaisemmiksi ja niitä sovelletaan yhä laajemmin.
Moderni kryptografia pohjautuu hyvin paljon matemaattiseen teoriaan ja tietojenkäsittelytieteen käytäntöön. Kryptografiset algoritmit on suunniteltu laskennallisen kovuuden olettamuksien ympärille. Tämä tekee sellaisista algoritmeista vaikeita murtaa käytännössä. On teoreettisesti mahdollista murtaa sellainen järjestelmä, mutta se olisi epäkäytännöllistä tunnetuilla käytännön keinoilla. Näitä järjestelmiä kutsutaan siksi laskennallisesti turvallisiksi. Teorian kehittyminen (kuten edistysaskelet kokonaislukujen tekijöihinjako -algoritmeissa) ja nopeutuva tietotekniikka vaativat, että näitä ratkaisuja kehitettäisiin jatkuvasti. On olemassa järjestelmiä, jotka on todistettu murtamattomiksi edes rajoittamattomalla määrällä laskentatehoa. Yksi esimerkki on one-time pad. Nämä järjestelmät ovat kuitenkin vaikeampia toteuttaa kuin parhaat teoreettisesti murrettavat mutta laskennallisesti turvalliset mekanismit.
Kryptologian keskeisimpänä maksiimina voidaan pitää ns. Kerchoffin periaatetta. Periaatteen mukaan järjestelmän tulee perustua avainten salassa pitämiseen. Vihollisen on oletettava tuntevan varsinaisen salakirjoitusjärjestelmän. Kerchoffin periaatteen seuraus on se, että kuka tahansa voi avoimesti kokeilla järjestelmän turvallisuutta. Järjestelmän turvallisuus joutuu näin todelliseen koetukseen (ruuvipenkkiin). Luotettavimmat julkisissa tietoverkoissa käytettävät salakirjoitusmenetelmät noudattavat Kerchoffin periaatetta. Kuitenkin vielä nykyisin erityisesti mobiilin tietoliikenteen ja sotilassovellutusten puolella pyritään kehittämään järjestelmiä, jotka Kerchoffin periaatteen vastaisesti perustuvat itse salakirjoitusjärjestelmän salassapitämiseen.
Kryptologia sisältää kryptografian ja kryptoanalyysin.[5][6] Kryptografia pyrkii salaamaan tiedon semanttisen merkityksen ja estämään tiedon käytön tai muokkaamisen ilman oikeutta.[7] Kryptoanalyysi on matemaattisten menetelmien tutkimista, jolla pyritään voittamaan kryptografisen menetelmät tai tietoturvaratkaisut.[8]