The design of cryptographic systems must be based on firm foundations, whereas ad hoc approaches and heuristics are a very dangerous way to go. These foundations were developed in works -authored by Shafi Goldwasser and/or Silvio Micali. This book celebrates these works, and reproduces some of them.