You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(crypto): Computational and Decisional Diffie–Hellman assumptions and ElGamal encryption (Boneh–Shoup Sections 10.4–10.6, 11.4) #873
Formalize the Computational Diffie–Hellman (CDH) and Decisional Diffie–Hellman (DDH) assumptions over PrimeOrderGroupFamily, prove the reductions DL ≤ CDH ≤ DDH and DDH random self-reducibility, and formalize ElGamal public-key encryption and its IND-CPA security reduction to DDH ([BonehShoup2023], Sections 10.4–10.6 and 11.4).
Random self-reducibility of DDH (ddhRerandomize, mapping any fixed real DDH tuple to the uniform real DDH distribution and any fixed non-DDH tuple to the uniform ideal DDH distribution).
Complexity/Crypto/Computational/ElGamal.lean:
Group-element ElGamal encryption/decryption (elGamalEncrypt, elGamalDecrypt, elGamalDecrypt_elGamalEncrypt), encoded decryption (decodeElGamal, decodeElGamal_encode, computableInPolyTime_decodeElGamal), and the one-time group mask lemma (map_uniform_add_smul_generator).
ElGamal bit encryption (bitElement, encodeBit, encodeBit_eq, elGamalCPAGame, elGamalINDCPA) reusing Cslib.Crypto.Encryption.Adversary and Adversary.IsPPT.
Reduction of ElGamal IND-CPA security to DDH ([BonehShoup2023], Theorem 11.1): elGamalToDDHDistinguisher, ddhRealGame_elGamalToDDHDistinguisher, ddhIdealGame_elGamalToDDHDistinguisher_false_eq_true, advantage_elGamalCPAGame_le, isPPTOn_elGamalToDDHDistinguisher, and DDH.elGamalINDCPA.
ComplexityTests/Crypto/DiffieHellman.lean:
Concrete group instance and distinguisher tests, plus #guard_msgs in #print axioms guards for all headline theorems.
Activity
SamuelSchlesinger commentedon Oct 24, 2026
Claiming #873 as
worker-jetski-5950b838(session5950b838-6b97-49cb-8bc9-a5de75fd93c5).activefeat/ddh-elgamal-873(.worktrees/wt-873-ddh-elgamal)Complexity/Crypto/Computational/DiffieHellman.lean,Complexity/Crypto/Computational/ElGamal.lean, andComplexityTests/Crypto/DiffieHellman.leanfor Track C (Boneh–Shoup roadmap: Fiat–Shamir, lattice signatures, public-key and symmetric tracks #640) Items 1 & 2.SamuelSchlesinger commentedon Oct 24, 2026
Status update from
worker-jetski-5950b838(session5950b838-6b97-49cb-8bc9-a5de75fd93c5):awaiting review0b524390f88a76e0704f88f20ced30d152264bd5)./scripts/check.sh,check_tidy_surface.py,check_hygiene.py,build_abstracts.py --check); independent review byreviewer-jetski-ddh-elgamal-873(9ebdc076-edc6-4b0f-b0f9-8161888ed78a) approved on PR feat(Crypto/Computational): formalize CDH, DDH, and ElGamal encryption (#873) #880.SamuelSchlesinger commentedon Oct 24, 2026
Status update (
active):worker-jetski-5950b838(5950b838-6b97-49cb-8bc9-a5de75fd93c5, role: worker)https://github.com/cslib-community/complexitylib/pull/880#pullrequestreview-5639806279).feat(Crypto/Computational): formalize CDH, DDH, and ElGamal encryption (
feat(Crypto/Computational): formalize CDH, DDH, and ElGamal encryption (