authentication for distributed systems .
A lesson on authentication protocol design