Stanford's cryptography course on Coursera - solutions