Our society is becoming increasingly reliant on powerful and interconnected computing devices that store much of our personal information. These devices present an ever-growing tension between the desire for our personal information to be private, and the desire to put our personal information to good use for our own convenience. In cryptography, problems that involve requirements of useful computation and privacy are understood through the lens of secure multi-party computation (SMPC). Specifically, SMPC refers to the problem of how mutually distrusting parties can securely and collaboratively perform tasks that involve private information. In this project, the PI will develop new techniques for understanding and overcoming the challenges and limitations posed by SMPC protocols. In particular, the following major themes will be explored: (1) is it possible in the real world to design protocols that remain secure regardless of other concurrently running protocols? (2) what security properties can be embedded into objects like ciphertexts and digital signatures? (3) how can shared data be maintained persistently while remaining private? The PI will develop new materials for undergraduate courses in cryptography and algorithms, based on principles of pedagogically sound visualization. The PI will also create resources for the cryptography research community, in the form of an online database of cryptographic constructions and primitives.