views:

107

answers:

3

I'm very interested in learning about cryptography, steganography, and similar practices.

What books, resources, would you guys recommend in this area?

+2  A: 

This book is very nice and gives you a general idea about cryptography and as far as I remember some it gives also some information about steganography (from the ancient times): The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography although not an academic book.

For steganography you could check also the following two: Disappearing Cryptography, Third Edition: Information Hiding: Steganography & Watermarking or Digital Watermarking and Steganography: Fundamentals and Techniques. As you are a Java developer you may also want to take a look at the Digital Invisible Ink Toolkit.

If you want to go deep into Cryptography (for example RSA algorithm) you should read math books about number theory, abstract algebra (for an introduction to these you can check this: A Primer on Algebra and Number Theory for Computer Scientists (it's a pdf file)). Or if you want to go much deeper you should read about elliptic curve cryptography.

About hacking you may want to take a look at this one: Hacking: The Art of Exploitation.

This book The Art of Deception: Controlling the Human Element of Security is also nice to read in order to learn social engineering techniques.

+3  A: 

seminal crypto book http://www.schneier.com/book-applied.html

Brian Makin
Thanks for the hint - I see the book is based on C. As a primarily Java developer (plus many dynamic langs) - how heavy is the reliance on C knowlegde. Although I really should know C by now anyway to be honest!
lucas1000001
If you want to learn about crypto you first need the math. (this book covers this adequately).Second you need the protocols (no communications but security).No amount of math and crypto will work if you screw up the protocol.There isn't a lot of C code in the book and you won't be at a disadvantage.
Brian Makin
@lucas1000001 The examples are in C but the key thing with the book is learning the ideas, theories and algorithms - once you have that it's easily transferable to Java. Great book - about the best intro to security for coders out there
zebrabox
A: 

In addition to the Schneier book already mentioned, I recommend Beginning Cryptography With Java.

GregS