247 determination of ethical hackers like Alex Halderman. His |
247 determination of ethical hackers like Alex Halderman. His |
248 group thoroughly hacked them showing that election fraud is |
248 group thoroughly hacked them showing that election fraud is |
249 easily possible. They managed to write a virus that infected |
249 easily possible. They managed to write a virus that infected |
250 the whole system by having only access to a single machine. |
250 the whole system by having only access to a single machine. |
251 |
251 |
|
252 \begin{figure}[t] |
|
253 \begin{center} |
|
254 \begin{tabular}{c} |
|
255 \includegraphics[scale=0.45]{../slides/pics/dre1.jpg}\; |
|
256 \includegraphics[scale=0.40]{../slides/pics/dre2.jpg}\smallskip\\ |
|
257 \includegraphics[scale=0.5]{../slides/pics/opticalscan.jpg} |
|
258 \end{tabular} |
|
259 \end{center} |
|
260 \caption{Direct-Recording Electronic voting machines above; |
|
261 an optical scan machine below.\label{machines}} |
|
262 \end{figure} |
|
263 |
252 What made matters worse was that Diebold tried to hide their |
264 What made matters worse was that Diebold tried to hide their |
253 incompetency and inferiority of their products, by requiring |
265 incompetency and inferiority of their products, by requiring |
254 that election counties must not give the machines up for |
266 that election counties must not give the machines up for |
255 independent review. They also kept their source secret. |
267 independent review. They also kept their source secret. |
256 This meant Halderman and his group had to obatain a machine |
268 This meant Halderman and his group had to obatain a machine |
307 are taken, e-voting is very hard to get right.\bigskip |
319 are taken, e-voting is very hard to get right.\bigskip |
308 |
320 |
309 |
321 |
310 \noindent This brings us to the case of Estonia, which held in |
322 \noindent This brings us to the case of Estonia, which held in |
311 2007 the worlds first general election that used Internet. |
323 2007 the worlds first general election that used Internet. |
312 Again their solution made some good choices: |
324 Again their solution made some good choices: for example |
313 |
325 voter authentication is done via the Estonian ID card, |
314 %\subsubsection*{Questions} |
326 which contains a chip like credit cards. They also made most |
315 |
327 of their source code public for independent scrutiny. Of |
316 %Coming back to the question of why I use online banking, but |
328 this openness means that people (hacker) will look at your |
317 %prefer not to e-vote. |
329 fingers and find code such as |
|
330 |
|
331 {\footnotesize\lstinputlisting[language=Python,numbers=none] |
|
332 {../progs/estonia.py}} |
|
333 |
|
334 \noindent which can be downloaded from their github |
|
335 repository.\footnote{\url{https://github.com/vvk-ehk/evalimine/}} |
|
336 Also their system is designed such that Internet voting is |
|
337 used before the election: votes can be changed an unlimited |
|
338 amount of times, the last vote is tabulated, you can even |
|
339 change your vote on the polling day in person. This is an |
|
340 important security mechanism guarding against vote coercion, |
|
341 which of course is an important problem if you are allowed to |
|
342 vote via Internet. |
|
343 |
|
344 However, the weak spots in any Internet voting system are the |
|
345 voters' computers and the central server. Unfortunately, their |
|
346 system is designed such that they needs to trust the integrity |
|
347 of voters’ computers, central server components and also the |
|
348 election staff. In 2014, group of independent observers around |
|
349 Alex Halderman were able to scrutinise the election process in |
|
350 Estonia. They found many weaknesses, for example careless |
|
351 handling of software updates on the servers. They also |
|
352 simulated an election with the available software and were |
|
353 able to covertly manipulate results by inserting malware on |
|
354 the voters' computers. Overall, their recommendation is |
|
355 to abandon Internet voting and to go back to an entirely |
|
356 paper-based voting process. In face of state-sponsered |
|
357 cyber-crime (for example NSA), Internet voting cannot be made |
|
358 secure with current technology. They have a small video |
|
359 clip with their findings at |
|
360 |
|
361 \begin{center} |
|
362 \url{https://estoniaevoting.org} |
|
363 \end{center} |
|
364 |
|
365 \noindent This brings us to the question, what could be a |
|
366 viable electronic voting process in |
|
367 \underline{\textbf{\emph{theory}}} with current technology? |
|
368 In the literature one can find proposals such as |
|
369 |
|
370 \begin{enumerate} |
|
371 \item Alice prepares and audits some ballots, then casts an |
|
372 encrypted ballot, which requires her to authenticate to |
|
373 a server. |
|
374 |
|
375 \item A bulletin board posts Alice's name and encrypted |
|
376 ballot. Anyone, including Alice, can check the bulletin |
|
377 board and find her encrypted vote posted. This is to |
|
378 make sure the vote was received by the server. |
|
379 |
|
380 \item When the election closes, all votes are shuffled and the |
|
381 system produces a non-interactive proof of a correct |
|
382 shuffling. Correct in the sense that one cannot determine |
|
383 anymore who has voted for what. This will require a |
|
384 zero-knowledge-proof based shuffling procedure. |
|
385 |
|
386 \item After a reasonable complaint period to let auditors |
|
387 check the shuffling, all shuffled ballots are decrypted, |
|
388 and the system provides a decryption proof for each |
|
389 decrypted ballot. Again this will need a |
|
390 zero-knowledge-proof-type of method. |
|
391 |
|
392 \item Perform a tally of the decrypted votes. |
|
393 |
|
394 \item An auditor can download the entire (shuffled) election |
|
395 data and verify the shuffle, decryptions and tally. |
|
396 \end{enumerate} |
|
397 |
|
398 \noindent As you can see the whole process is not trivial at |
|
399 all and leaves out a number of crucial details (such as how to |
|
400 best distribute public keys). It even depends on a highly |
|
401 sophisticated process called \emph{zero-knowledge-proofs}. |
|
402 They essentially allow one to convince somebody else to know |
|
403 a secret without revealing what the secret is. This is a kind |
|
404 of cryptographiv ``magic'', like the Hellman-Diffie protocol |
|
405 which can be used to establish a secret even if you can only |
|
406 exchange postcards with your communication partner. We will |
|
407 look at zero-knowledge-proofs in a later lecture in more |
|
408 detail. |
|
409 |
|
410 The point of these theoretical/hot-air musings is to show that |
|
411 such an e-voting procedure is far from convenient: it takes |
|
412 much more time to allow, for example, for scrutinising whether |
|
413 the votes were cast correctly. Very likely it will also not |
|
414 pass the benchmark of being understandable to Joe Average. |
|
415 This was a standard a court rules that needs to be passed in |
|
416 the German election process. |
|
417 |
|
418 The overall conclusion is that an e-voting process involving |
|
419 the Internet cannot be made secure with current technology. |
|
420 Voting has just too high demands on integrity and ballot |
|
421 secrecy. This is different from online banking where the whole |
|
422 process is designed around authentication. If fraud occurs, |
|
423 you try to identify who did what (somebody’s account got zero; |
|
424 somewhere the money went). Even if there might be even more |
|
425 gigantic sums at stake in online banking than with voting, |
|
426 it can be solved. That does not mean there are no problems |
|
427 with online banking. But with enough thought, they can |
|
428 usually be overcome with technology we have currently. This |
|
429 is different with e-voting: even the best have not come |
|
430 up with something workable yet. |
|
431 |
|
432 |
318 |
433 |
319 %Why do I use e-polling in lectures? |
434 %Why do I use e-polling in lectures? |
320 |
435 |
321 %Imagine you have a perfectly secure internet voting system, by |
436 %Imagine you have a perfectly secure internet voting system, by |
322 %which I mean nobody can tamper with or steal votes between |
437 %which I mean nobody can tamper with or steal votes between |