security models for everlasting privacy
play

Security Models For Everlasting Privacy Athecrypt 2020 Panagiotis - PowerPoint PPT Presentation

Security Models For Everlasting Privacy Athecrypt 2020 Panagiotis Grontas Aris Pagourtzis Alexandros Zacharakis National Technical University Of Athens 07.01.2020 https://eprint.iacr.org/2019/1193 TL;DR Game-based definitions for


  1. Security Models For Everlasting Privacy Athecrypt 2020 Panagiotis Grontas Aris Pagourtzis Alexandros Zacharakis National Technical University Of Athens 07.01.2020 https://eprint.iacr.org/2019/1193

  2. TL;DR Game-based definitions for everlasting privacy A new adversarial model ◮ Powerful computational capabilities in the future ◮ Extensive data collection in the present Contemporary adversary (privacy) ◮ Corrupt voters ◮ Monitor & store communications ◮ Computationally bounded Future adversary ◮ Examine past public data ◮ Potentially has insider access to past private data (surveillance - breaking of trust assumptions) ◮ Computationally powerful Everlasting privacy variations 1 26

  3. Electronic Voting Properties:Verifiability Voters vote in an adversarial environment (bugs, malice) Election authorities and voter devices are not trusted Verifiability: voters and auditors Checks: check the process Cast as intended Individual Recorded as cast Universal Tallied as recorded Eligibility Accountability: a stronger from of verifiability 2 26

  4. Electronic Voting Properties:Privacy Standard feature of elections since the 19th century encoded into law Privacy is not absolute: The result reveals information but no more should leak Secrecy: Encryption & Commitment schemes [CFSY96, Adi08, KZZ15] Anonymity: Mixnets [Cha81] & Blind signatures [Cha82] Computational & trust assumptions Flavors: ◮ Receipt Freeness [BT94] ◮ Coercion Resistance [JCJ05] ◮ Perfect Ballot Secrecy [KY02] ◮ Everlasting Privacy [MN06]

  5. Relation of privacy and verifiability To enable verifiability the system must generate evidence ◮ without compromising secrecy ◮ without functioning as a receipt Does verifiability without privacy make sense? ◮ Does it really matter if the vote is dictated by a coercer or changed by a corrupted authority? You can’t have (computational) privacy without individual verifiability [CL18] ◮ Replace votes in order to learn how a targeted voter voted ◮ Voters that check their votes protect the privacy of others Integrity is ephemeral, privacy should be everlasting [MN06] ◮ integrity matters until the loser is convinced 4 26

  6. Everlasting privacy = Post Snowden Privacy Encryption becomes obsolete ◮ Gradually (e.g. Moore’s Law, better attacks) ◮ Spectacularly (e.g. practical quantum computing) Verifiability − → election data widely available Voting data can be valuable to a future authoritarian regime Resources in Snowden’s world: ◮ Advanced computational power ◮ Collected data (e.g. mass surveillance) ◮ Insider data (e.g. political parties) Indirect coercion attempt 5 26

  7. Everlasting Privacy: Previous work I Formal study More concrete in Previously hinted in: initiated in [MN06] [MN10] [CFSY96]: Perfectly hiding Pedersen commitments & verifiable secret sharing through private channels [FOO92] Blind signatures & Made practical in [HG19] anonymous channels 6 26

  8. Everlasting Privacy: Previous work II Split ballot voting [MN10] Two election authorities Everlasting privacy Votes cast protected using a ◮ the authorities are honest ◮ they do not collaborate perfectly hiding ◮ the openings are not commitment scheme made public To tally, the openings are One corrupted authority: required computational privacy Exchanged computationally Two corrupted authorities: protected correctness Tallying: Parallel shuffling of commitments and openings between the authorities Casting is not anonymous 7 26

  9. Everlasting Privacy: Previous work III Everlasting privacy = information theoretic security against the public view [DGA12] Replace Helios exp. ElGamal with Pedersen commitments (openings sent through private channels) [CPP13] Commitment Consistent Encryption - use of public/private Bulleting Boards [BDV13] Encapsulate as a mixnet [ACKR13] Formalization as practical everlasting privacy in the applied pi-calculus 8 26

  10. Everlasting Privacy: Previous work IV Revisiting the anonymous channel idea [FOO92] for casting [LH15] & [LHK16]: Public credentials to the Bulletin Board (Un)encrypted vote to the Bulletin Board Commitment to 1 out of n voting credentials with ZKPoK Follow up: Deniable vote updating for coercion resistance Anonymous channel: helps with coercion resistance by thwarting forced abstention attack 9 26

  11. Everlasting Privacy: Previous work V [GPZZ19] Coercion resistance using real-fake credentials All valid credentials posted to BB During voting attach a (fake) credential to a blinded ballot Election authority marks validity by signing All checks are embedded into a variation of blind signatures (PACBS) Include ZKPoK for EA’s actions provide verifiability All voting interactions are auditable in the BB 10 26

  12. A Generic Voting System - Participants Participants: Election Authority n voters m candidates Bulletin Board to store all voting related data in a publicly accessible manner 11 26

  13. A Generic Voting System - Functionalities ( params , sk EA , pk EA ) := Setup ( 1 λ ) ( pk i , ( sk i , pk i )) := Register �EA ( sk EA ) , V i () � ( ■ , ❈ ) := SetupElection ( sk EA , n , m , params , Election-information ) ( ⊥ , ( ❜ i , π ❜ i )) := Vote �EA ( sk EA ) , V i ( c i , sk i ) , params , pk EA , pk i , ■ , ❈ , BB� BB ⇐ Cast �BB () , V i ( ❜ i , π ❜ i ) � { 0 , 1 } = Valid ( BB , ❜ ) ( T , π T ) := Tally ( sk EA , params , ❈ , BB ) { 0 , 1 } = Verify ( T , params , pk EA , BB , ❈ , ■ , ❜ i , π ❜ i , π T )

  14. Operation I ( params , sk EA , pk EA ) := Setup ( 1 λ ) The EA generates the cryptographic parameters and its credentials 13 26

  15. Operation II ( pk i , ( sk i , pk i )) := Register �EA ( sk EA ) , V i () � Each voter registers with some identifying information and obtains some form of credentials 14 26

  16. Operation - III ( ■ , ❈ ) := SetupElection ( sk EA , n , m , params , Election-information ) EA creates the election by publishing the list of eligible voters and candidates 15 26

  17. Operation- IV Voting: Vote and Cast functionalities ( ⊥ , ( ❜ i , π ❜ i )) := Vote �EA ( sk EA ) , V i ( c i , sk i ) , params , pk EA , pk i , ■ , ❈ , BB� BB ⇐ Cast �BB () , V i ( ❜ i , π ❜ i ) � The voter presents a credential and commits to a voting choice The EA verifies the right to vote The voter casts the ballot The validity of the ballot is checked

  18. Operation - V ( T , π T ) := Tally ( sk EA , params , ❈ , BB ) The EA tallies the votes Releases the result along with a proof of correctness Verification takes place 17 26

  19. Adversarial capabilities Motivation The everlasting privacy adversary is not only confined to the public view of the election. It also has access to ‘insider‘ information. Contemporary Adversary A Computationally Constrained Active participation (through voter corruption) Future Adversary A ’ Computationally Unbounded Weak Everlasting Privacy: Public protocol transcript Everlasting Privacy: Cooperate with A Strong Everlasting Privacy: communication and ‘insider’ data 18 26

  20. The security game An extension of [BCG + 15] for privacy A sees two Bulletin Boards C executes Setup , Register in both Boards A chooses the eligible voters and candidates to setup the election A dynamically corrupts voters and schedules voting Corrupted ballots go to both BBs Challenge phase: A chooses two options c 0 , c 1 for honest in BB 0 , BB 1 C performs tally A must guess board 19 26

  21. The security game II Algorithm 1: Privacy Experiment Exp priv ,β A , Π , t ( 1 λ , n , m ) ( params , sk EA , pk EA ) ← Π . Setup ( 1 λ ) view A ⇐ view Vote BB b ⇐ ( params , pk EA ) b ∈ { 0 , 1 } Aux ⇐ Aux Vote for i ∈ [ n ] do for i ∈ ■ do ( sk i , pk i ) ← Π . Register �EA ( sk EA ) , V i � if i ∈ V c then BB b ⇐ A Π . Cast ( ❜ ′ BB b ⇐ pk i b ∈ { 0 , 1 } b ∈ { 0 , 1 } i , BB b ) Aux ⇐ Aux Register else BB 0 ⇐ Π . Cast ( ❜ ′ end i 0 , BB 0 ) ( ■ , ❈ ) ← A Π . SetupElection ( n , m , BB b ) BB 1 ⇐ Π . Cast ( ❜ ′ b ∈ { 0 , 1 } i 1 , BB 1 ) V c ← A ( I , corrupt ) end V h := I \ V c end for i ∈ ■ do view A ⇐ view Cast if i ∈ V c then Aux ⇐ Aux Cast c i ← A ( choose ) ( T , π T ) ← A Π . Tally () ( ❜ i , π ❜ i ) ← A Π . Vote ( c i , sk i , BB b ) b ∈ β ′ ← A ( T , π T , BB β , guess ) { 0 , 1 } if β = β ′ ∧ | V c | ≤ t then else return 1 ( c 0 , c 1 ) ← A ( choose ) else return 0 ( ❜ i 0 , π ❜ i 0 ) ← end Vote � ( EA ( sk EA ) , V i ( c 0 , sk i ) , BB 0 � ( ❜ i 1 , π ❜ i 1 ) ← Vote � ( EA ( sk EA ) , V i ( c 1 , sk i ) , BB 1 � end end 20 26

  22. Weak everlasting privacy Parameterization by Algorithm 2: Exp w-ever-priv ,β ( 1 λ , n , m ) A ′ , Π , t voting scheme Π and ( c 0 , c 1 ) ← A ′ () ( BB β , T ) ← A ′ Π () future adversary A ′ β ′ ← A ′ ( T , π T , BB β , guess ) if β = β ′ then A ′ selects the voting return 1 else choices return 0 end A ′ uses only the public view ( BB ) to Weak Everlasting Privacy for Π distinguish voting behaviour ∀A ′ , ∃ negligible function µ : ∀ n , m : Game-based version Pr[ Exp w-ever-priv , 0 ( 1 λ , n , m )] − A ′ , Π , t of practical Pr[ Exp w-ever-priv , 1 ( 1 λ , n , m )] ≤ µ ( λ ) A ′ , Π , t everlasting privacy of [ACKR13] 21 26

Recommend


More recommend