0
$\begingroup$

I am very interested in cryptography and would like to learn more about it and how to code. However, I dont know how to start. I would love to know some more mathematical background and how to apply it. I enjoy creating little codes and such in my free time, but there is a limit to what you can just "think up". I honestly dont know what alot of these things such as 'AES-GCM' or 'md5'. I dont know where to start or where to apply cryptography in my life besides for fun. Any advice would be appreciated! Thanks!

$\endgroup$
1

2 Answers 2

1
$\begingroup$

I started with books on amazon, such as Understanding Cryptography: A Textbook for Students and Practitioners and open public documents such as FIPS-PUB-197 and 180. I found everything to be pretty easy along my way up. I still cannot calculate or prove anything mathematically, that you want to dig into mathematical reasoning, but I have no problem implementing any algorithms and mix match them to suit my needs.

-- me, 2017-02-14

EDIT: 2 years later, I'm back with a few college level crypto courses in my bag. I want to add that "implementing any algorithms and mix match them to suit my needs" was a terrible idea I want to steer you all clear from. Why? Because this field, cryptography, is full of vulnerability landmines and trip wires, and implementing your own crypto for any production system is asking for trouble. Correctly implementing crypto is hard even for professional groups of people who are intensely experienced and employs in-depth code review.

The solution is to rely on reputable, low-level crypto libraries. Such as OpenSSL. That being said, don't let this stop you from implementing crypto for fun! The sense of achievement is immense when you do so. Happy learning!

-- me, 2019-05-07

$\endgroup$
0
0
$\begingroup$

I started with Khan Academy's crypto lessons. There you will get all of the basic building blocks and the vocabulary words so future lessons will make more sense.

Next, I'm currently enrolled in Stanford's Crypography I course. I cannot yet comment on the whole course as I'm only at the very beginning, but from what I've seen so far it looks very promising.

Lastly, try to code some of the easier algorithms from the pseudo code on Wikipedia. For instance RC4 is very understandable (inherent weaknesses not withstanding) and textbook RSA is a good one, too. Good luck!

$\endgroup$
1
  • $\begingroup$ Thank you so much! I try the Khan Academy lessons and go from there! $\endgroup$
    – H.Brown
    Feb 25, 2017 at 16:49

Not the answer you're looking for? Browse other questions tagged or ask your own question.