A Universal Framework For Concurrent Security
Cryptography today has evolved far beyond its traditional goal of secure message transmission. Through the notion of secure computation, a set of mutually dis- trustful agents can collaborate to accomplish a common goal while preserving each agent's privacy to a maximal extent. In the seminal works of Yao and Goldreich, Micali and Wigderson, it was shown that any computational task can be securely implemented through a protocol. Traditionally, the rules governing privacy for these protocols have been designed to work only when a single execution running in isolation. However, with the advent of the Internet, many transactions occur simultaneously, and the protocols designed for the single execution setting fail to remain secure in a concurrent setting. While both the need and definitions for concurrent security were realized in the early 90's, practical protocols that are concurrently secure are lacking. The protocols designed for concurrent security, thus far, have mostly relied on having a trusted setup or a relaxed definition of security. In this thesis, we put forward a unified framework for the construction of concurrently secure protocols both with and without trusted set-up. This framework not only provides a conceptually simple solution for essentially all previous results, but also significantly improves efficiency and reduces the requirements on the trusted setup used in these works. Moreover, in several setup models, our constructions are tight with respect to computational assumptions and efficiency.