garykessler.net
A free, evolving tutorial on cryptography maintained since 1999. It covers basic cryptographic concepts, types of algorithms including secret key, public key and hash functions, trust models, and applied algorithms in action.