Methods of Learning Cryptography
Learning Cryptography in academic is something between science and practice. For science part,the aim is to studying and focus on topics related to cryptographic primitives(building block of cryptographic protocols).Based on categorizing these primitives, we can learn them easily:


Unkeyed primitives-----> Arbitrary Hash Functions,One way permutation,Random sequences
Symmetric-key primitives ----->Symmetric ciphers(Block ciphers,Stream ciphers),Arbitrary length hash functions(MAC),Signatures,Pseudo-random sequences,Identification primitives
Public-key primitives------->public-key ciphers,signatures,Identification primitives.


In this category, fundamental Topics like signatures, Hash,Identification,Pseudo-random sequence generators highlighted. Also topics such as Authenticated encryption,secrete sharing and subjects related to key-management based on cryptography.

In the practice part, the intention is to design and implement a cryptosystem, which means that use the logic of cryptographic primitives in an algorithm and then evaluate its soundness based on mathematics. In this side, we can name topics as cryptanalysis and attacks(theoretic  and implementation),methods for designing a cryptosystem,Lightweight cryptography and ways of implementing ciphers and cryptosystems in different devices.

At the end, examination of different ciphers and cryptosystems, gives analyse and design method ideas and also the way of using them in real world.