Date of Award


Document Type

Union College Only

Degree Name

Bachelor of Science


Computer Science

Second Department


First Advisor

Matthew Anderson

Second Advisor

Jue Wang


mathematics, computer science, cryptography, key exchange, encryption, password, zero-knowledge proofs, spake, jpake


Encryption and decryption mechanisms, requiring a public algorithm and a secure key, are a way of having a confidential communication over an insecure network, like the Internet. This raises the Key Exchange Problem, informally, the problem of two entities deciding on a shared secure key in the unauthenticated network. Password Authenticated Key Exchange (PAKE) protocols attempt to solve the problem by assuming a common secret, such as a shared password, between the parties. This secret is used to generate a secure shared key. Our work focuses on such PAKE protocols in an attempt to understand their practical efficiency. Therefore, we implemented certain studied PAKE protocols by applying them to a simple text messaging system. We further ran described timing experiments to test their practicality.

The Simple Password-based Authentication Key Exchange (SPAKE) and the Password Authenticated Key Exchange by Juggling (JPAKE) are two such protocols that we focus our study on. In working towards an understanding of password-based protocols, as background, this work also reviews certain protocols for Key Exchange within both Private-Key Cryptography and Public-Key Cryptography.