I need to have a better understanding of cryptography, specially the mathematics behind some of the core concepts.
However, my High School Maths knowledge has gone a bit blunt, and so I was wondering which topics I should revisit for this purpose?
I need to have a better understanding of cryptography, specially the mathematics behind some of the core concepts.
However, my High School Maths knowledge has gone a bit blunt, and so I was wondering which topics I should revisit for this purpose?
I think discrete mathematics will be a very good friend in understanding some core concepts.
-- Oh sorry, I guess you are looking for "single subjects" ?
Well, then the lists gets a bit more comprehensive...: Primes, permuatations, matrix, equations, and so on... But you should really take on a course of Discrete mathematics to understand a bit more....
You might think about picking up the book 'Applied Cryptography' by Bruce Schneier. It covers the protocols, algorithms and includes some C source code.
You also might take a listen to 'Security Now' which is a podcast put on by Leo Leporte and Steve Gibson. Steve does a great job of explaining many crypto concepts and the associated math for non-mathematicians. You could start with episodes 30 through 37.
Here is the site for Security Now: https://www.grc.com/securitynow.htm
Discrete mathematics is definitely needed for cryptography, and there is no way around it.
off the top of my head, you won't get far without:
but really, most of these are directly related to discrete mathematics, so there is no way around (re)studying that.
The basic topic you're really looking at is number theory, which is also one of the more enjoyable kinds of math. Of course, I'm a crypto geek so I'd say that. You also need a good grounding in probability. Here are a few good books that have appropriate topics:
Knowing what an injective, a surjective and a bijective function are is helpful.
Some areas that might be useful:
These are just to start with.
The Handbook of Applied Cryptography may also be useful: http://www.cacr.math.uwaterloo.ca/hac/
Here's an incomplete list:
That's probably the order in which I'd go about studying the topics as well.
I'd actually recommend just picking a good book, eg Applied Cryptography, and learning the required math on a need-to-know basis. I certainly wouldn't like to discourage you from exploring interesting areas of mathematics mentioned by others here, but be warned that there's a huge amount of accumulated knowledge in each of these areas, and only small parts are actually used in cryptography. I'd say get the big picture of cryptography first, and then you'll know much better which areas of mathematics you need to study more.
This assumes that your goal is to actually understand how cryptography works. If your real goal is to use it in practice (ie computer security), I think you should rather concentrate on understanding abstractions (eg public key crypto, digital signature, hash function, protocol, mode of operation), not on how they are implemented. Understand these abstractions, use standard implementations (libraries), and above all, don't invent your own.