Skip to content

Boneh–Shoup roadmap: Fiat–Shamir, lattice signatures, public-key and symmetric tracks #640

Open
1 of 2 issues completed

Description

@SamuelSchlesinger

Samuel wants to prioritize much more of Boneh and Shoup, A Graduate Course in Applied Cryptography (BonehShoup2023), including lattice-based post-quantum signatures. This umbrella orders the work by dependency and reuse. Each track item is its own issue and milestone PR, held to the #587 standard: plain statements, exact or honestly bounded results, nonvacuous instances.

In place: PRGs and PRFs (GGM), OWFs, Goldreich–Levin, Naor commitments, Lamport signatures, GMW zero knowledge for NP, GSW/LWE FHE, and, from #581, Sigma protocols (special soundness and HVZK, linear relations, AND/OR), the rewinding lemma, and Schnorr identification under DL over a Schnorr-group family (#605, #636).

Track A: the Fiat–Shamir core (continues #581, critical path for every signature)

  • 3a: forking lemma over OracleComp.
  • 3b: ROM EUF-CMA, Fiat–Shamir signatures, Schnorr signatures under DL.
  • 2c: eavesdropping security, including statistical distance over countable or infinite types (an API extension that track B also needs).
  • Chapter 20: Fiat–Shamir NIZK, and Sigma protocols for homomorphic one-way functions (generalizing the linear protocol).

Track B: lattices and post-quantum signatures

  • SIS and module SIS, alongside the existing decision LWE.
  • The rejection-sampling lemma (statistical).
  • Lyubashevsky identification as a Sigma protocol with aborts.
  • Signatures via track A's Fiat–Shamir (Fiat–Shamir with aborts), then module-lattice variants toward Dilithium-style schemes.

Track C: classic public key (chapters 10–13)

Track D: symmetric (chapters 4–9)

  • MACs from PRFs.
  • Universal hashing and Carter–Wegman.
  • Collision resistance.
  • Authenticated encryption.

Capacity, while the quality program has priority (#587):

Coordinated by coordinator-claude-c4b0c164-20261023. Cross-review by the Codex fleet, whose area includes Crypto (#593).

Activity

  1. SamuelSchlesinger commented on Oct 23, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Track D expanded at Samuel's request (2026-10-23): universal hashing and classic constructions. The ordering also serves #587's reuse principle.

    1. One universal-hashing abstraction: ε-universal, strongly universal (pairwise-independent) and ε-AXU families.

      • Make the existing scattered hashes instances: Probability/BitString/{AffineHash,LinearHash,SubsetSum}, Languages/Probabilistic/LinearHash, and the Toeplitz uses.
      • Add polynomial-evaluation (Carter–Wegman) and multiply-shift families.
      • State the leftover hash lemma once over the abstraction, and point the pseudoentropy and extraction modules (about 9 files) at it.

      This is a consolidation and needs cross-area coordination: Foundations/Probability is Claude's area, Crypto/Pseudoentropy is Codex's. Announce it on Quality program: a uniform, library-wide overhaul of interfaces, structure and documentation #587.

    2. MACs: unforgeability (EUF-CMA), PRF-based MACs, and Carter–Wegman MACs from ε-AXU hashing plus a PRF.

    3. Luby–Rackoff: Feistel networks over our existing PRFs give PRPs (3 rounds) and strong PRPs (4 rounds), with explicit advantage bounds.

    4. Merkle–Damgård: collision-resistance definitions, and the theorem that the transform preserves collision resistance.

    5. Naor–Reingold PRF from DDH (after track C), then Even–Mansour in the ideal-permutation model.

    Theory only, as for the other tracks: no concrete ciphersuites or parameter sets. Item 1 is the next track-D work to staff.

  2. SamuelSchlesinger commented on Oct 23, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Track B foundations (SIS, box rejection sampling, Lyubashevsky identification with aborts) are claimed in #645 by worker-claude-lattice-c4b0c164. The design, including the abort representation and how it maps onto #643, is in #645 (comment).

  3. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Track D item 1 (one universal-hashing abstraction) is claimed in #663 by worker-claude-lattice-c4b0c164. The design is in #663 (comment), and the cross-area notice is on #587.

  4. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Track D items 2a (uniform MACScheme, EUFCMA, and PRF-to-MAC security, Boneh–Shoup Ch. 6) and 4 (collision-resistant hash families and the Merkle–Damgård transform, Boneh–Shoup Ch. 8) are claimed by worker-jetski-5950b838 in #668 (feat/mac-prf-668) and #669 (feat/merkle-damgard-669). Neither overlaps with #663 (universal hashing); Carter–Wegman ε-AXU MACs will follow once #663 lands.

  5. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Track D status update (worker-jetski-5950b838, 5950b838-6b97-49cb-8bc9-a5de75fd93c5):

  6. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker update (worker-jetski-5950b838): claiming Track D item 2b (Carter–Wegman MACs from $\DeltahBcuniversal hashing, Boneh–Shoup Section 7.4) in #736 on branch feat/carter-wegman-736, building on the merged IsDeltaUniversalHash abstraction from #715.

  7. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker update (worker-jetski-5950b838):

  8. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    coordinator-jetski-e5ce255c and worker-jetski-5950b838: Samuel asked Jetski to ramp up. A curated task list, including the remaining track D and track B items here, is on #587: #587 (comment)

  9. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker update (worker-jetski-5950b838):

  10. 5 remaining items

  11. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Sub-issue #873 created and claimed by worker-jetski-5950b838 (session 5950b838-6b97-49cb-8bc9-a5de75fd93c5) on branch feat/ddh-elgamal-873 for Track C Items 1 & 2 (DiffieHellman.lean and ElGamal.lean: CDH, DDH, DL ≤ CDH ≤ DDH, DDH random self-reducibility, and ElGamal IND-CPA security under DDH).

  12. SamuelSchlesinger commented on Oct 24, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker update (worker-jetski-5950b838, session 5950b838-6b97-49cb-8bc9-a5de75fd93c5):

  13. SamuelSchlesinger commented on Oct 25, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker update (worker-jetski-cf53d356, session cf53d356-5fb3-4f07-ba5d-5249ddbd9dba):

  14. SamuelSchlesinger commented on Oct 25, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Status update (worker-jetski-cf53d356): Track C Pedersen commitments (#1040) is awaiting review in PR #1043 (3fa6426d).

  15. SamuelSchlesinger commented on Oct 25, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Claiming Track C efficient DDH random self-reduction, group-element ElGamal, and hashed ElGamal in #1047 as worker (worker-jetski-cf53d356, session cf53d356-5fb3-4f07-ba5d-5249ddbd9dba, branch feat/elgamal-ddh-extensions-1047).

  16. SamuelSchlesinger commented on Oct 25, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker update (worker-jetski-cf53d356, session cf53d356-5fb3-4f07-ba5d-5249ddbd9dba):

  17. karnseth commented on Oct 25, 2026

    @karnseth
    Collaborator

    Agent: worker-jetski-fb3f7966 (session fb3f7966, account @karnseth)
    Child Issue: #748 (4-round strong PRP Luby–Rackoff theorem)
    Branch: feat/feistel4-strong-prp-748
    PR: #1099
    Status: awaiting review

  18. SamuelSchlesinger commented on Oct 25, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Worker status update (#1093):

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions