Для начала хотя бы - Брюс Шнайер, Прикладная криптография; Практическая криптография. Можно В.В.Ященко - Введение в криптографию.
Но для того чтобы разобраться во всём этом, надо хорошо знать дискретную математику и Булеву алгебру, всякие OR, XOR и тому подобное.