Modernizing Electronic Elec/ons The DemTech Project Carsten - - PowerPoint PPT Presentation

modernizing electronic elec ons the demtech project
SMART_READER_LITE
LIVE PREVIEW

Modernizing Electronic Elec/ons The DemTech Project Carsten - - PowerPoint PPT Presentation

Modernizing Electronic Elec/ons The DemTech Project Carsten Schrmann May I introduce myself Diplom Informa/k (Karlsruhe, 1993) M.S. in Logic and


slide-1
SLIDE 1

Modernizing ¡Electronic ¡Elec/ons ¡ The ¡DemTech ¡Project ¡

Carsten ¡Schürmann ¡ ¡

slide-2
SLIDE 2

May ¡I ¡introduce ¡myself ¡

  • Diplom ¡Informa/k ¡(Karlsruhe, ¡1993) ¡
  • M.S. ¡in ¡Logic ¡and ¡Computa/on ¡(CMU, ¡1995) ¡
  • PhD. ¡in ¡Pure ¡and ¡Applied ¡Logic ¡(CMU, ¡2000) ¡
  • Assistant ¡Professor ¡(Yale, ¡2000) ¡
  • Associate ¡Professor ¡(ITU, ¡2005) ¡
  • Director ¡of ¡PhD ¡School ¡(ITU, ¡2008) ¡

¡ ¡

slide-3
SLIDE 3

Every ¡Vote ¡MaSers ¡

Tiny ¡Systema/c ¡Vote ¡Manipula/on ¡Can ¡Swing ¡Elec/ons ¡

[Di ¡Franco, ¡Petro, ¡Shear, ¡Vladimirov ¡2001, ¡Yale ¡Technical ¡Report ¡1285] ¡

slide-4
SLIDE 4

Electronic ¡Elec/on ¡ Internet ¡Elec/on/Remote ¡Vo/ng ¡ Tradi/onal ¡Elec/on ¡

slide-5
SLIDE 5
slide-6
SLIDE 6
slide-7
SLIDE 7

Evolu/on ¡Danish ¡Democra/c ¡Process ¡

[1849] ¡Danish ¡Elec/on ¡Law, ¡show ¡of ¡hands ¡ ¡ [1901] ¡Secret ¡ballots ¡ [1915] ¡Women’s ¡right ¡to ¡vote ¡ [1920] ¡Vote ¡by ¡leSer ¡(for ¡sailors), ¡relaxed ¡’53 ¡ [1953] ¡Folke/nget ¡(Parliament) ¡ [1970] ¡Danish ¡abroad, ¡right ¡to ¡vote ¡for ¡Folke/nget ¡ ¡ [1978] ¡Legal ¡vo/ng ¡age: ¡18 ¡ [1984] ¡Rosengreens ¡soaware ¡for ¡seat ¡assignment ¡

slide-8
SLIDE 8

Electoral ¡ Process ¡

¡ Business ¡ Make ¡money ¡ Build ¡a ¡business ¡ ¡ Implementa.on ¡ Must ¡work ¡ Must ¡be ¡efficient ¡ Must ¡be ¡lawful ¡ ¡ Technology ¡ ¡ ¡ Poli.cs ¡ Modernize ¡ Include ¡more ¡ voters ¡

Conflic/ng ¡Interests ¡

slide-9
SLIDE 9

Electoral ¡ Process ¡

¡ Business ¡ Make ¡money ¡ Build ¡a ¡business ¡ ¡ Implementa.on ¡ Must ¡work ¡ Must ¡be ¡efficient ¡ Must ¡be ¡lawful ¡ ¡ Technology ¡ Improve ¡quality ¡ Improve ¡trust ¡ Poli.cs ¡ Modernize ¡ Include ¡more ¡ voters ¡

Conflic/ng ¡Interests ¡

slide-10
SLIDE 10

Power ¡of ¡Informa/on ¡Technology ¡

Invalidates ¡old ¡assump/ons ¡

slide-11
SLIDE 11

Power ¡of ¡Informa/on ¡Technology ¡

Enables ¡new ¡solu/ons ¡

slide-12
SLIDE 12

Hypothesis ¡

It ¡is ¡possible ¡to ¡ modernize ¡the ¡ electoral ¡process ¡ while ¡balancing ¡the ¡ trust ¡of ¡the ¡people ¡

  • n ¡the ¡

trustworthiness ¡of ¡ the ¡deployed ¡

  • technology. ¡
slide-13
SLIDE 13

DemTech ¡Objec/ves ¡

  • Consult ¡decision ¡makers ¡wrt. ¡risk ¡analysis ¡ ¡
  • Evolve ¡the ¡democra/c ¡process ¡
  • Cer/fica/on ¡technology ¡
  • Help ¡solve ¡a ¡“global” ¡problem ¡
  • Be ¡construc/ve ¡
  • Conduct ¡cukng-­‑edge ¡security ¡research ¡
  • Produce ¡results ¡that ¡have ¡an ¡impact ¡
  • Build ¡models ¡of ¡trust ¡
  • Evaluate ¡our ¡findings ¡empirically ¡
slide-14
SLIDE 14

Consor/um ¡

slide-15
SLIDE 15

External ¡Advisory ¡Board ¡

  • 1. Independent ¡panel ¡
  • 2. Reviews ¡progress ¡
  • 3. Allows ¡elec/on ¡stakeholders ¡to ¡take ¡ownership ¡

Composi/on ¡ ¡Nicoline ¡Nyholm ¡Miller ¡ ¡ ¡Jørgen ¡Elklit ¡ ¡Kasper ¡Møller ¡Hansen ¡ ¡… ¡

slide-16
SLIDE 16

¡Focus ¡Area ¡1 ¡

Theory ¡ ¡ Logical ¡Frameworks ¡ Programming ¡Languages ¡ ¡

slide-17
SLIDE 17

Technol

  • gy ¡

800 ¡million ¡transistors ¡ > ¡50 ¡million ¡loc ¡ > ¡89 ¡million ¡loc ¡

Problem: ¡ Auditability/Accountability ¡

slide-18
SLIDE 18

Idea ¡#1 ¡

The ¡vote ¡cas/ng ¡device ¡is ¡a ¡computer, ¡but ¡not ¡a ¡ general ¡purpose ¡one. ¡It, ¡and ¡its ¡soaware, ¡should ¡be ¡as ¡ absolutely ¡simple ¡as ¡possible. ¡It ¡should ¡not ¡be ¡nearly ¡as ¡ complex ¡as ¡a ¡standard ¡PC, ¡for ¡example. ¡It ¡needs ¡only ¡a ¡ touch ¡screen, ¡a ¡slow ¡processor ¡and ¡bus, ¡minimal ¡ working ¡RAM, ¡and ¡only ¡one ¡or ¡two ¡kinds ¡of ¡I/O ¡port ¡ (e.g. ¡serial, ¡USB, ¡or ¡PCMCIA); ¡it ¡needs ¡no ¡rota/ng ¡ storage ¡devices, ¡no ¡network ¡card, ¡no ¡sound ¡card ¡ (except ¡for ¡units ¡for ¡the ¡handicapped), ¡no ¡advanced ¡ graphics, ¡and ¡no ¡clock, ¡no ¡keyboard, ¡and ¡no ¡mouse. ¡

[Bruck, ¡Jeffersen, ¡Rivest, ¡2001] ¡

slide-19
SLIDE 19

Idea ¡#2 ¡

¡ ¡ ¡ ¡ ¡A ¡vo.ng ¡system ¡is ¡so?ware-­‑independent ¡if ¡an ¡ undetected ¡change ¡or ¡error ¡in ¡its ¡so?ware ¡ cannot ¡cause ¡an ¡undetectable ¡change ¡or ¡error ¡ in ¡an ¡elec.on ¡outcome. ¡

¡Rivest, ¡Ron ¡and ¡Wack, ¡John ¡(2006) ¡ ¡On ¡the ¡ no(on ¡of ¡"so,ware ¡independence" ¡in ¡vo(ng ¡ systems ¡

Soaware ¡Independence ¡

slide-20
SLIDE 20

Idea ¡#3 ¡

  • Cer/ficates ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡[CS ¡‘09] ¡
  • Trace ¡emikng ¡computa/ons ¡
  • Simple ¡cer/ficate ¡checker ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(< ¡2000 ¡loc) ¡

Opera/onal ¡Seman/cs ¡ ¡

  • f ¡the ¡elec/on ¡machine ¡

Cer/ficate ¡ Physical ¡World ¡ Voters ¡

slide-21
SLIDE 21

Elec/on ¡Domain ¡Specific ¡Language ¡

evcasea: ¡ ¡ ¡ ¡ ¡{E:exp} ¡{E1:exp} ¡{W:val} ¡{E2:exp} ¡ ¡ ¡ ¡ ¡ ¡ ¡eval ¡E ¡a* ¡-­‑> ¡ ¡ ¡eval ¡E1 ¡W ¡-­‑> ¡ ¡ ¡eval ¡(case ¡E ¡E1 ¡E2) ¡W. ¡ ¡ evcaseb: ¡ ¡ ¡ ¡ ¡{E:exp} ¡{E2:exp} ¡{W:val} ¡{E1:exp} ¡ ¡eval ¡E ¡b* ¡-­‑> ¡ ¡eval ¡E2 ¡W ¡-­‑> ¡ ¡ ¡eval ¡(case ¡E ¡E1 ¡E2) ¡W. ¡ ¡ ¡ evlam: ¡ ¡ ¡ ¡ ¡ ¡{E:val ¡-­‑> ¡exp} ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡eval ¡(lam ¡([x:val] ¡E ¡x)) ¡(lam* ¡([x:val] ¡E ¡x)). ¡

Defini/on ¡

  • Logical ¡Framework ¡LF ¡
  • Atomic ¡steps ¡
  • Published ¡ahead ¡elec/ons ¡
  • Known ¡by ¡all ¡
slide-22
SLIDE 22
slide-23
SLIDE 23

From ¡Law ¡To ¡Soaware ¡

Example: ¡Irish ¡Vo/ng ¡Law ¡

  • Single ¡Transferable ¡Vote ¡
  • Law ¡= ¡Specifica/on ¡
  • Soaware ¡(Re)cer/fica/on? ¡

Related ¡Work ¡[Kiniry ¡et ¡al ¡‘10] ¡

  • Translate ¡into ¡JML ¡
  • Check ¡with ¡ESC ¡Java ¡
  • Huge ¡conceptual ¡gap ¡

¡

slide-24
SLIDE 24

Idea ¡#4 ¡

  • Linear/Concurrent ¡Logic ¡ ¡ ¡ ¡ ¡[Cervesato ¡et ¡al ¡01] ¡
  • Specifica/on ¡and ¡Programming ¡Language ¡
  • Celf ¡System ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡[Schack-­‑Nielsen ¡11] ¡

¡ hSp://www.twelf.org/~celf ¡

slide-25
SLIDE 25

c/1 : count-ballots S H (s U) * uncounted-ballot C L * hopeful C N * !quota Q * !nat-less (s N) Q

  • o {counted-ballot C L *

hopeful C (s N) * count-ballots S H U}. c/2 : count-ballots (s (s S)) (s H) (s U) * uncounted-ballot C L * hopeful C N * !quota Q * !nat-lesseq Q (s N) * winners W

  • o {counted-ballot C L *

!elected C * winners (cons C W) * count-ballots (s S) H U}. c/3 : count-ballots (s z) H U * uncounted-ballot C L * hopeful C N * !quota Q * !nat-lesseq Q (s N) * winners W

  • o {counted-ballot C L *

!elected C * winners (cons C W) * !defeat-all}. c/4_1 : count-ballots S H U * uncounted-ballot C (cons C' L) * !elected C

  • o {uncounted-ballot C' L *

count-ballots S H U}. c/4_2 : count-ballots S H U * uncounted-ballot C (cons C' L) * !defeated C

  • o {uncounted-ballot C' L *

count-ballots S H U}. c/5_1 : count-ballots S H (s U) * uncounted-ballot C nil * !elected C

  • o {count-ballots S H U}.

c/5_2 : count-ballots S H (s U) * uncounted-ballot C nil * !defeated C

  • o {count-ballots S H U}.

c/6 : count-ballots S H z

  • o {defeat-min S H z}.

PR-­‑STV ¡

[deYoung ¡+ ¡CS] ¡

slide-26
SLIDE 26

Idea ¡#5: ¡Epistemic ¡Logic ¡

  • Knowledge, ¡possession, ¡asser/on ¡
  • A ¡la ¡Proof ¡carrying ¡FS ¡ ¡[Garg, ¡Pfenning] ¡ ¡
  • Lakce ¡of ¡trust ¡rela/onships ¡
  • Declassifica/on ¡
  • Work ¡in ¡progress ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡[with ¡DeYoung] ¡

¡ Public ¡ Vo/ng ¡Authority ¡ Voter ¡K ¡ Trusted ¡Third ¡Party ¡

slide-27
SLIDE 27

¡Focus ¡Area ¡2 ¡

Cryptography ¡ ¡

slide-28
SLIDE 28

(Full) ¡Homomorphic ¡Encryp/on ¡

  • Encryp/on ¡
  • Lax ¡Logic: ¡sec ¡α ¡
  • Idea: ¡due ¡to ¡Gentry ¡
  • HynML ¡
  • Vo/ng ¡machine: ¡

– no ¡decryp/on ¡keys ¡ – Slow ¡

let double (x:sec int) = let (enc y) = x in case y

  • f z => z

| (s y) => let (enc w) =

  • double (enc y)

in enc (s (s w)) in double (enc 3) end ¡

slide-29
SLIDE 29

¡Focus ¡Area ¡3 ¡

Soaware ¡Engineering ¡ ¡

slide-30
SLIDE 30

Trust ¡by ¡Design ¡

Why ¡do ¡people ¡trust? ¡

– Public ¡control ¡ – User ¡Verifiability ¡

Challenge: ¡

– Soaware ¡Engineering ¡ – User ¡Interfaces ¡Design ¡

Goal: ¡ Electronic ¡process ¡as ¡ trustworthy ¡as ¡the ¡ ¡ tradi.onal ¡process ¡

slide-31
SLIDE 31

¡Focus ¡Area ¡4 ¡

Social ¡Science ¡ Poli/cal ¡Science ¡ ¡

slide-32
SLIDE 32

Studies ¡of ¡Science ¡and ¡Technology ¡

  • Ethnographies ¡
  • History ¡of ¡trust ¡
  • Models ¡of ¡trust ¡

– Qualita/ve ¡ – Quan//ve ¡

  • User ¡Studies ¡
slide-33
SLIDE 33

Evalua/on ¡

slide-34
SLIDE 34

[2007] ¡Students ¡build ¡a ¡machine ¡ [2008] ¡University ¡Board ¡Member ¡Elec/on ¡ [2009] ¡Interior ¡ministry ¡forbids ¡experimenta/on ¡ ¡Municipality/Parliamentary ¡Elec/ons ¡ [2010] ¡Invited ¡speaker ¡at ¡E-­‑Elec/ons ¡Conference ¡ ¡ ¡in ¡Parliament ¡ [2010] ¡Consultant ¡to ¡the ¡governmental ¡ ¡ ¡“Board ¡of ¡Technology” ¡

History ¡

slide-35
SLIDE 35

From ¡the ¡Minister ¡of ¡the ¡Interior ¡Bertel ¡Haarder, ¡May ¡13,2011 ¡ ¡

slide-36
SLIDE 36

Real ¡Elec/ons ¡

[2013] ¡Municipali/y ¡(possibly ¡Luxembourg ¡parliament) ¡

– Wider ¡tests ¡if ¡permiSed ¡by ¡minister ¡of ¡the ¡interior ¡

[2014] ¡European ¡Government ¡Elec/on ¡

– If ¡we ¡agree ¡then ¡maybe ¡pilot ¡projects ¡

[2015] ¡Folke/nget ¡ ¡(Parliament) ¡

– If ¡we ¡agree ¡then ¡maybe ¡pilot ¡projects ¡

slide-37
SLIDE 37

Sta/s/cs ¡

  • 4 ¡Focus ¡areas ¡

– ¡PL, ¡Crypto, ¡Soaware ¡Engineering, ¡Social ¡Science ¡

  • Generously ¡funded ¡ ¡

– Thanks ¡to ¡the ¡Research ¡Council ¡for ¡Strategic ¡Research ¡ – IT ¡University ¡of ¡Copenhagen ¡ ¡ ¡

  • Start ¡date ¡7/1/2011 ¡
  • End ¡date ¡6/30/2016 ¡
  • 4 ¡PostDoc ¡posi/ons, ¡3 ¡years ¡each ¡
  • 6 ¡PhD ¡posi/ons ¡
slide-38
SLIDE 38

Thank ¡you ¡

www.demtech.dk ¡

slide-39
SLIDE 39

Related ¡Projects ¡

Vo/ng ¡Technology ¡Project ¡ ¡

– MIT, ¡CalTech ¡ – Rivest, ¡Katz, ¡et ¡al. ¡(affiliated ¡Ryan) ¡

Accurate ¡Project ¡ ¡

– Berkeley, ¡Johns ¡Hopkins, ¡Rice, ¡Stanford, ¡SRI ¡ – Rubin, ¡Wallach, ¡Dill, ¡Wagner ¡et ¡al. ¡

True ¡Voter ¡Verifiable ¡Elec/ons ¡

– Chaum ¡

… ¡

¡