Introduction to modern cryptography. (2007)