The Need for Logic Locking.- A Brief History of Logic Locking.- Pre-SAT Logic Locking.- The SAT Attack.- Post-SAT 1: Point function-based Logic Locking.- Approximate Attacks.- Structural Attacks.- Post-SAT 2: Insertion of SAT-unresolvable Structures.- Post-SAT 3: Stripped-Functionality Logic Locking.