Udemy Logo


Cryptography and Hashing Fundamentals in Python and Java

Private and Public Key Cryptosystems, DES, AES, Cryptoanalysis, RSA, Elliptic Curve Cryptography and Hashing

$ 16.99

at the time of publication

What you'll learn

  • Understand the basics of private key encryption systems
  • Caesar cipher and Vigenere cipher
  • Frequency analysis and the Kasiski algorithm
  • One Time Pad (OTP) and Shannon secrecy
  • Random and pseudo-random numbers
  • Data Encryption Standard (DES) and Advanced Encryption Standard (AES)
  • Understand the basics of public key encryption systems
  • RSA and Diffie-Hellman key exchange algorithm
  • Elliptic Curve Cryptography
  • Modular arithmetic basics (Fermat's theorem, finding primes, integer factorization and discrete logarithm)
  • Euclidean algorithm (greatest common divisor problem) and the extended Euclidean algorithm
  • Understand hashing (MD5 and SHA)


  • You should have an interest in cryptography as well as some programming knowledge in Python or Java!

Who this course is for

  • Python or Java developers curious about cryptography!
This course includes


  • Holczer Balazs
    Software Engineer
    Total students
    My name is Balazs Holczer. I am from Budapest, Hungary. I am qualified as a physicist. At the moment I am working as a simulation engineer at a multinational company. I have been interested in algorithms and data structures and its implementations especially in Java since university. Later on I got acquainted with machine learning techniques, artificial intelligence, numerical methods and recipes such as solving differential equations, linear algebra, interpolation and extrapolation.

In this course you will learn about cryptography and hashing in Python and Java as well. You will understand most of the private key (symmetric) and pubic key (asymmetric temuland crypto glossary asymmetric cryptography Asymmetric cryptography is a process that uses a pair of related keys, one public key and one private key, to encrypt and decrypt a message and protect it from unauthorized access or useLearn more) cryptosystems on a step by step basis. You can learn about the theory as well as the implementation for every cryptographic algorithm – and how to crack these systems (so what are the weaknesses).