How to cryptography 101

cryptography meme

As many people have asked Omina how can they be good at cryptography like her, she prepared this post for everyone to get a solid start!

Cryptography? can I eat it?

Cryptography is the beautiful art and study of techniques used for secure communication in the presence of adversarial behavior! which helps Omnia keeps her secrets away from Sora:)

What do I need to know about cryptography?

MATH!MATH, and even more MATH, some computer science and cybersecurity is also required.

What fields do i exactly need to know?

ABSTRACT ALGEBRA! ABSTRACT ALGEBRA!, and even more ABSTRACT ALGEBRA!

Also we use a lot of number theory, and a knowledge of linear algebra is also extensively used in specific aspects of cryptography. In addition, some discrete math is a good to know too.

As for your computer science, you need good understanding of logical computation, at least one scripting language (use python, just python) and some “computer science common sense”.

Topics to read?

CiphersPost Quantum cryptographyGroups
Applied CryptographyWhat does it mean to say that a cryptosystem is secure?Rings
Historical cryptographyProofs of SecurityFields
Modern cryptographyThreat ModelsGreatest Common Divisor
Encoding and decodingAdversary GoalsChinese Remainder Theorem
Encryption and decryptionPerfect SecrecyFermat’s little theorem
KeysPerfect IndistinguishabilityBits & Bytes
SpacesAdversarial IndistinguishabilityBinary system
OraclesThe definition of a keyDecimal & Octal & Hexadecimal systems
HashesKeys vs passwordsASCII
SignaturesCharacteristics of keys and common requirementsHex
Zero knowledge proofTypes of keysBase64
Random Number GeneratorsTrue Random Number Generators (TRNG)Data formats
Pseudo Random Number Generators (PRNG)Cryptographically Secure Pseudo Random Number Generators (CSPRNG)The modulus operator
PythonPycryptodomeSage
Z3The XOR operatorProperties of XOR
One Time Pad (OTP)Symmetric encryptionBlock ciphers
Modes of operationsHow AES worksAttacks against AES
What is a streamPaddingRC4
Salsa20 & ChaCha20Textbook RSAPadded RSA
Attacks against RSADiscrete logarithm problemDiffie-hellman key exchange
Elliptic Curves CryptographySignaturesSignature scheme’s security
Common signaturesOne way functionsHashes
Hash collisionExamplesAttacks
Zero knowledge proofCryptanalysis
This is very very short list and learning all of these concepts will make you “not beginner”

Reading where?

These are the books that Omnia have used to be good at cryptography.

1. Understanding cryptography by Christof Paar , Jan Pelzl , Tim Güneysu

This is the ultimate cryptography book, Omnia uses it all the time and it is really good at explaining everything, and is specially good at introducing new concepts.

2. Crypto 101 by Laurens Van Houten

Very good beginner’s book, sadly it has many incomplete sections, but it is very good at visually explaining concepts.

3. Algebra for Cryptologists by Alko R. Meijer

This book is a MUST for any advanced cryptography, skip reading the rest of this, go read it NOW.

4. Handbook of Applied Cryptography by A.J. Menezes et al.

Very good “what was that again” book. lives up to it’s name as “Handbook”.

5. Privacy and Authentication: An Introduction to Cryptography by Whitfield Diffie and Martin Hellman

Did I see these names before? Yes! these are the guys behind the Diffie-Hellman key exchange. It is very hard to read though tho(Omnia’s eyes were hurt reading this 90’s font)

6. Finite Fields by Tanja Lange

Very good sheet explaining group theory and finite fields, the author also has a YouTube channel that explains many concepts in cryptography.

7. Number Theory and Algebra by Tanja Lange

Same as above for number theory.

8. A Graduate Course in Applied Cryptography by Dan Boneh and Victor Shoup

Another “celebrity” book by Boneh, known for his Boneh-Durfee Attack in RSA, didn’t complete it but it is very good.

Honorable mention

These are books that Omina didn’t read but her friends say that they are good.

  1. Lecture Notes on Cryptography by Szabolcs Tengely.
  2. A Course in Cryptography by Rafael Pass and Abhi Shelat.
  3. Fundamentals of Cryptology by Henk van Tilborg.
  4. Mathematics of Public Key Cryptography by Steven Galbraith.
  5. A Tutorial on Linear and Differential Cryptanalysis by Howard Heys.

Vidoes where?

  1. Tanja Lange: Post-quantum cryptography.
  2. Introduction to Cryptography by Christof Paar Lectures.
  3. Socratica – Abstract algebra .
  4. Neso academy – Cryptography & Network Security.

Dirty hands where?

Omnia once spent too much time looking at books, but then she couldn’t solve any challenge because she wasn’t practicing, so she decided that she needs to always apply the knowledge she has to and play with the mud!

CryptoHack

I mean, it is obvious right? Cryptohack stands for very good place to practice cryptography.

MysteryTwister

Good old days puzzles are always fun, and crypto? Very fun.

Hack The Box

Not only are they good at hacking the box, but also the cipher!

CTFtime

This site is a collection of ongoing CTFs that well most likely have cryptography challenges.


aaaaaaaaaaaand that is it for now, Omnia will keep this list updated whenever she finds a new place to toy with!

Leave a Comment

Comments

No comments yet. Why don’t you start the discussion?

    Leave a Reply

    Your email address will not be published. Required fields are marked *