Introduction to key derivation functions