1. 1. Community Guidelines
  2. 2. Zero Knowledge Proofs
    1. 2.1. Curated Resources
    2. 2.2. Video Lecture Series
    3. 2.3. Articles
      1. 2.3.1. ZK Introductory
      2. 2.3.2. Ingonyama Blogs
      3. 2.3.3. ZKSNARKS
      4. 2.3.4. STARKS
      5. 2.3.5. Applications
      6. 2.3.6. Vulnerabilities
    4. 2.4. Hands-On ZK
    5. 2.5. Protocols
    6. 2.6. Mathematics
      1. 2.6.1. Finite fields
      2. 2.6.2. Cryptographic primitives
        1. 2.6.2.1. Elliptic curves
        2. 2.6.2.2. Hash functions
        3. 2.6.2.3. Verifiable Delay functions
        4. 2.6.2.4. Arithmetization
        5. 2.6.2.5. Commitment Schemes
        6. 2.6.2.6. Secure Multi Party Computation
        7. 2.6.2.7. Proving Methods
      3. 2.6.3. Computational Primitives
        1. 2.6.3.1. Hardware acceleration
        2. 2.6.3.2. Discrete Fourier Transforms
        3. 2.6.3.3. Multi Scalar Multiplications
  3. 3. Homomorphic Encryption

Ingopedia

Discrete Fourier Transforms

Algorithms and methods

  • FFT - Vitalik
  • Reed-Solomon code: Vitalik
  • FFT Notes
  • The Fast Fourier Transform in a Finite Field - Pollard
  • Number Theoretic Transform (NTT): Introduction
  • NTT with code
  • Efficient primes for NTT - Goldilocks
    • Goldilocks in nuFHE
    • Goldilocks NTT trick - Solberg
  • Elliptic Curve Fast Fourier Transform (ECFFT) Part I: Fast Polynomial Algorithms over all Finite Fields: Eli Ben-Sasson et.al
    • Talk -zk study club
    • ECFFT algorithm
    • Rust Implementation -Wboregaud
    • Rust ECFFT BN254- Wboregeaud
  • ECFFT-2 Ben-Sasson et.al
  • FFT - Ferror Moreno thesis
  • Zcash FFT
  • FFT for polynomial multiplication
  • A quick barycentric evaluation tutorial - Vitalik
  • Barycentric interpolation - Math Oxford

Implementations

  • Thesis: BUNTTERFLY: A Flexible Hardware Generator for the Number Theoretic Transform - Jason Vranek
  • CycloneNTT
  • NTL: a library for NTT
  • Zprize 2022