CSCE689-602: Techniques in Applied Cryptography


Fall 2019




Instructor

Dr.Yupeng Zhang

Office Location: HRBB 414A

Office Hours: By Appointment


Lectures

Time: TR 12:45PM - 2:00PM

Location: HBRR 126


Course Description and Prerequisites

This course covers techniques in applied cryptography and their applications in encrypted search, machine learning and blockchain to enhance data privacy. Related cryptographic techniques include searchable encryption, secure multiparty computation, verifiable computation and zero knowledge proof. We will discuss their basic concepts and state-of-the-art constructions. Additionally, we will talk about how to use these techniques to construct privacy-preserving machine learning, crypto-currencies and blockchain. We will focus on efficiency and functionality constraints in practice, and discuss challenges and solutions to efficiently realize these cryptographic protocols.

Prerequisites: The course has no specific prerequisites. Basic knowledge of algorithms, data structures and programming is recommended.


Course Overview

Date Sections Topic & slides Readings Deadlines
8/27 Introduction Introduction and logitics (Slides)
8/29 Secure Multiparty Computation and Privacy-Preserving Machine learning Introduction to secure multiparty computation and Yao's Garbled circuit (Slides)
9/3 GMW protocol (Slides)
  • GMW protocol
  • 9/5 Malicious security and fairness (Slides)
  • Cut and choose
  • 9/10 Privacy-preserving linear regression (Slides)
  • SecureML
  • Team Formation
    9/12 Privacy-preserving logistic regression and neural networks (Slides)
  • ABY framework
  • 9/17 Searchable Encryptions Introduction to searchable encryption (Slides)
  • Searchable Symmetric Encryption
  • 9/19 Dynamic searchable encryption (Slides)
  • Dynamic searchable encryption
  • 9/24 No class due to travel
    9/26 project proposal due
    10/1 Forward and backward security (Slides)
  • Dynamic SSE with forward security
  • 10/3 Attacks to searchable encrytion (Slides)
  • Inference Attack
  • Leakage Abuse Attack
  • File Injection Attack
  • 10/8 Verifiable Computation, Zero Knowledge Proof and Blockchain Introduction to verifiable computation and zero knowledge proof (Slides)
  • Merkle Hash Tree
  • 10/10 Customized solutions: RSA accumulator (Slides)
  • RSA Accumulator
  • Authenticated Hash Tables
  • 10/15 Customized solutions: Bilinear accumulator (Slides)
  • Bilinear Accumulator
  • 10/17 Generic solutions:SNARK (Slides 1) (Slides 2)
  • SNARK
  • 10/22
    10/24 Introduction to blockchain, cryptocurrency and smart contract (Slides)
  • Bitcoin
  • 10/29 Midterm project presentation
    10/31 Pricacy-preserving crypto-currencies (Slides)
  • Zcash
  • Progress Report Due
    11/5 Privacy-preserving smart contract (Slides)
  • Hawk
  • 11/7 Generic solutions: interactive proof (Slides 1 sumcheck) (Slides 2 GKR) (Slides 3 Polynomial commitment)
  • Time-Optimal Interactive Proofs for Circuit Evaluation
  • 11/12
    11/14
  • Polynomial delegation
  • 11/19 Project Presentations
    11/21
    11/26
    11/28 No class, Thanksgiving
    12/3 Final report due

    Suggested topics for projects:

    Secure Multiparty Computations

    Searchable Encryptions

    Zero Knowledge Proof


    Grading Policies:

    Class participation(10%):Students are encouraged to participate discussions during the lectures.

    Reading assignment(25%)Students will submit reviews for one of the reading materials every week.

    Project(65%): Students will form groups and complete research projects related to the topics of the course


    Piazza:

    piazza