1 | % $Id$ |
---|
2 | \documentclass[notes]{beamer} |
---|
3 | \usepackage[french]{babel} |
---|
4 | \usepackage[T1]{fontenc} |
---|
5 | \usepackage{moreverb} |
---|
6 | \usepackage{graphicx} |
---|
7 | |
---|
8 | \mode<presentation> |
---|
9 | { |
---|
10 | \definecolor{beamerstructure}{RGB}{143,79,112} |
---|
11 | \definecolor{sidebackground}{RGB}{230,242,250} |
---|
12 | \color{beamerstructure} |
---|
13 | \usetheme[secheader]{Madrid} |
---|
14 | \usepackage{times} |
---|
15 | \userightsidebarcolortemplate{\color{sidebackground}} |
---|
16 | \beamertemplateballitem |
---|
17 | } |
---|
18 | |
---|
19 | \AtBeginSection[] |
---|
20 | { |
---|
21 | \begin{frame}<beamer> |
---|
22 | \frametitle{Plan} |
---|
23 | \tableofcontents[currentsection,hideothersubsections] |
---|
24 | \end{frame} |
---|
25 | } |
---|
26 | |
---|
27 | \title{Epoll - Vote en ligne} |
---|
28 | \subtitle{FPW - 2009} |
---|
29 | \author{Olivier Thauvin} |
---|
30 | \date{\today} |
---|
31 | |
---|
32 | \begin{document} |
---|
33 | |
---|
34 | \frame{\titlepage} |
---|
35 | |
---|
36 | \begin{frame} |
---|
37 | \tableofcontents[hideallsubsections] |
---|
38 | \end{frame} |
---|
39 | |
---|
40 | \section{Vote électronique} |
---|
41 | |
---|
42 | \begin{frame} |
---|
43 | \frametitle{Généralités} |
---|
44 | |
---|
45 | \vfill |
---|
46 | \begin{block}{http://fr.wikipedia.org/wiki/Vote\_électronique} |
---|
47 | \textit{Le vote électronique est un système de vote automatisé, notamment des scrutins, |
---|
48 | à l'aide de systèmes informatiques.} |
---|
49 | \end{block} |
---|
50 | \pause |
---|
51 | \vfill |
---|
52 | |
---|
53 | \begin{alertblock}{Est-ce bien ?} |
---|
54 | \begin{itemize} |
---|
55 | \small{ |
---|
56 | \item Impossibilité de contrôle par l'électeur (voir la commission électorale) |
---|
57 | \pause |
---|
58 | \begin{itemize} |
---|
59 | \item techniquement compliqué |
---|
60 | \pause |
---|
61 | \item logiciel souvent opaque |
---|
62 | \pause |
---|
63 | \item contrôle visuel impossible |
---|
64 | \end{itemize} |
---|
65 | } |
---|
66 | \pause |
---|
67 | \item le syndrome "L'ordinateur ne se trompe jamais" |
---|
68 | \end{itemize} |
---|
69 | \end{alertblock} |
---|
70 | \pause |
---|
71 | \vfill |
---|
72 | |
---|
73 | \begin{block}{Références} |
---|
74 | \begin{itemize} |
---|
75 | \item \href{http://www.ordinateurs-de-vote.org/}{http://www.ordinateurs-de-vote.org/} |
---|
76 | \item \href{http://www.cnil.fr/}{http://www.cnil.fr/} |
---|
77 | \end{itemize} |
---|
78 | \end{block} |
---|
79 | \vfill |
---|
80 | \end{frame} |
---|
81 | |
---|
82 | \section{Epoll ?} |
---|
83 | |
---|
84 | \begin{frame} |
---|
85 | \frametitle{Contexte} |
---|
86 | \begin{block}{LATMOS} |
---|
87 | \begin{itemize} |
---|
88 | \item Laboratoire CNRS |
---|
89 | \pause |
---|
90 | \item Laboratoire Atmosphères, Milieux, Observation Spatiales |
---|
91 | \pause |
---|
92 | \item Environ 300 personnes |
---|
93 | \pause |
---|
94 | \item 4 sites (Verrières le Buisson, Vélizy, Paris et St Maur) |
---|
95 | \end{itemize} |
---|
96 | \end{block} |
---|
97 | \vfill |
---|
98 | \pause |
---|
99 | \begin{block}{CL} |
---|
100 | \begin{itemize} |
---|
101 | \item Conseil de laboratoire |
---|
102 | \item 3 membres de droits |
---|
103 | \item 10 membres élus parmis les personnels |
---|
104 | \item des personnels invités |
---|
105 | \end{itemize} |
---|
106 | \end{block} |
---|
107 | \end{frame} |
---|
108 | |
---|
109 | \begin{frame} |
---|
110 | \frametitle{Pourquoi ?} |
---|
111 | \vfill |
---|
112 | \begin{block}{Le LATMOS} |
---|
113 | Demande de vote électronique de la direction |
---|
114 | \end{block} |
---|
115 | \pause |
---|
116 | \vfill |
---|
117 | \begin{block}{Logiciel libre} |
---|
118 | Rien de bien satisfaisant |
---|
119 | \end{block} |
---|
120 | \pause |
---|
121 | \vfill |
---|
122 | \begin{block}{solutions payantes} |
---|
123 | Entre 1500 et 5000 euros |
---|
124 | \end{block} |
---|
125 | \pause |
---|
126 | \vfill |
---|
127 | \begin{block}{Sujet intéressant} |
---|
128 | Surtout quand il me donne des arguments contre |
---|
129 | \end{block} |
---|
130 | \vfill |
---|
131 | \end{frame} |
---|
132 | |
---|
133 | \begin{frame} |
---|
134 | \frametitle{Résumé} |
---|
135 | \vfill |
---|
136 | \begin{block}{Application web} |
---|
137 | \begin{itemize} |
---|
138 | \pause |
---|
139 | \item accessible avec un simple navigateur |
---|
140 | \pause |
---|
141 | \item envoi des identifiants par mail |
---|
142 | \pause |
---|
143 | \item pas d'intervention de l'administrateur |
---|
144 | \end{itemize} |
---|
145 | \end{block} |
---|
146 | \pause |
---|
147 | \vfill |
---|
148 | \begin{block}{Les fondations} |
---|
149 | \begin{itemize} |
---|
150 | \item Perl (\href{http://www.perl.org/}{http://www.perl.org/}) |
---|
151 | \item Catalyst (\href{http://www.catalystframework.org/}{http://www.catalystframework.org/}) |
---|
152 | \pause |
---|
153 | \end{itemize} |
---|
154 | \begin{itemize} |
---|
155 | \item PostgreSQL (\href{http://www.postgresql.org}{http://www.postgresql.org}) |
---|
156 | \end{itemize} |
---|
157 | \end{block} |
---|
158 | \vfill |
---|
159 | \end{frame} |
---|
160 | |
---|
161 | \section{Epoll 1.0 (aujourd'hui)} |
---|
162 | |
---|
163 | \subsection{Utilisation} |
---|
164 | |
---|
165 | \begin{frame} |
---|
166 | \frametitle{Création du vote} |
---|
167 | \begin{block}{La commission électorale} |
---|
168 | \begin{enumerate} |
---|
169 | \item demande de création |
---|
170 | \pause |
---|
171 | \item confirmation de la demande (par mail) |
---|
172 | \pause |
---|
173 | \item configuration du vote (dont date début/fin) |
---|
174 | \pause |
---|
175 | \item inscription des électeurs |
---|
176 | \pause |
---|
177 | \item envois des identifiants au électeurs |
---|
178 | \end{enumerate} |
---|
179 | \end{block} |
---|
180 | \end{frame} |
---|
181 | |
---|
182 | \begin{frame} |
---|
183 | \frametitle{Le vote} |
---|
184 | \begin{block}{Les électeurs} |
---|
185 | \begin{enumerate} |
---|
186 | \item réception du mail avec url, login et mot de passe |
---|
187 | \pause |
---|
188 | \item authentification sur le site |
---|
189 | \pause |
---|
190 | \item choix |
---|
191 | \pause |
---|
192 | \item confirmation des choix |
---|
193 | \pause |
---|
194 | \item affichage du numéro du bulletin |
---|
195 | \pause |
---|
196 | \item réception d'un accusé de réception par mail |
---|
197 | \end{enumerate} |
---|
198 | \end{block} |
---|
199 | \end{frame} |
---|
200 | |
---|
201 | \begin{frame} |
---|
202 | \frametitle{Le dépouillement} |
---|
203 | \vfill |
---|
204 | \begin{block}{La commission électorale} |
---|
205 | \begin{enumerate} |
---|
206 | \item consolidation des choix libres si besoin |
---|
207 | \pause |
---|
208 | \item marquage des bulletins invalides |
---|
209 | \end{enumerate} |
---|
210 | \end{block} |
---|
211 | \pause |
---|
212 | \vfill |
---|
213 | \begin{block}{Dès la fin du vote} |
---|
214 | \begin{itemize} |
---|
215 | \item Les résultats (provisoires) sont disponibles |
---|
216 | \item La liste de bulletins est disponible |
---|
217 | \end{itemize} |
---|
218 | \end{block} |
---|
219 | \vfill |
---|
220 | \end{frame} |
---|
221 | |
---|
222 | \subsection{Respect des règles} |
---|
223 | |
---|
224 | \begin{frame}[fragile] |
---|
225 | \frametitle{Anonymat} |
---|
226 | \vfill |
---|
227 | \begin{block}{stockage} |
---|
228 | Pas de relation entre l'électeur et le bulletin |
---|
229 | \end{block} |
---|
230 | \pause |
---|
231 | \vfill |
---|
232 | |
---|
233 | \begin{exampleblock}{Émargement} |
---|
234 | \begin{tabular}{|c|c|c|} |
---|
235 | \hline |
---|
236 | Mail&IP&heure de vote\\ |
---|
237 | \hline |
---|
238 | \hline |
---|
239 | thauvin@latmos.ipsl.fr&134.157.16.151&\verb+2009-03-19 15:31:56+\\ |
---|
240 | \hline |
---|
241 | \end{tabular} |
---|
242 | \end{exampleblock} |
---|
243 | \pause |
---|
244 | \vfill |
---|
245 | |
---|
246 | \begin{exampleblock}{Le bulletin} |
---|
247 | \begin{tabular}{|c|c|} |
---|
248 | \hline |
---|
249 | Id&Contenu\\ |
---|
250 | \hline |
---|
251 | \hline |
---|
252 | f4f667c78a2178095c3bae4d&oui\\ |
---|
253 | \hline |
---|
254 | \end{tabular} |
---|
255 | \end{exampleblock} |
---|
256 | \vfill |
---|
257 | \end{frame} |
---|
258 | |
---|
259 | \begin{frame} |
---|
260 | \frametitle{Éviter les tricheries} |
---|
261 | \vfill |
---|
262 | \begin{block}{Côté base de données} |
---|
263 | \begin{itemize} |
---|
264 | \pause |
---|
265 | \item le vote est transactionnel (tout ou rien) |
---|
266 | \pause |
---|
267 | \item contraintes référentielles |
---|
268 | \end{itemize} |
---|
269 | \end{block} |
---|
270 | \pause |
---|
271 | \vfill |
---|
272 | \begin{block}{Contrôle par l'utilisateur} |
---|
273 | \begin{itemize} |
---|
274 | \item nombre de votants et nombre de bulletins disponibles |
---|
275 | \pause |
---|
276 | \item liste d'émargement disponible |
---|
277 | \pause |
---|
278 | \item liste des bulletins disponible dès la fin du vote |
---|
279 | \end{itemize} |
---|
280 | \end{block} |
---|
281 | \vfill |
---|
282 | \end{frame} |
---|
283 | |
---|
284 | \begin{frame} |
---|
285 | \frametitle{Les problèmes} |
---|
286 | \vfill |
---|
287 | \pause |
---|
288 | \begin{alertblock}{Le Mail} |
---|
289 | \begin{itemize} |
---|
290 | \item n'est pas chiffré |
---|
291 | \item est interceptable |
---|
292 | \end{itemize} |
---|
293 | \end{alertblock} |
---|
294 | \pause |
---|
295 | \vfill |
---|
296 | \begin{alertblock}{La base de données} |
---|
297 | \begin{itemize} |
---|
298 | \pause |
---|
299 | \item lecture: accès aux résultats avant la fin du vote |
---|
300 | \item écriture: modification des résultats (mais cela devrait se voir) |
---|
301 | \end{itemize} |
---|
302 | \end{alertblock} |
---|
303 | \vfill |
---|
304 | \pause |
---|
305 | \begin{alertblock}{L'application elle même} |
---|
306 | S'assurer de l'intégrité du code |
---|
307 | \end{alertblock} |
---|
308 | \vfill |
---|
309 | \end{frame} |
---|
310 | |
---|
311 | \section{Le résultat} |
---|
312 | |
---|
313 | \subsection{Capture d'écran} |
---|
314 | |
---|
315 | % padding pour les bordures |
---|
316 | \setlength\fboxsep{0pt} |
---|
317 | |
---|
318 | \begin{frame} |
---|
319 | \frametitle{Page principale} |
---|
320 | \center{ |
---|
321 | \fbox{\includegraphics[height=0.8\textheight]{welcome}} |
---|
322 | } |
---|
323 | \vfill |
---|
324 | \end{frame} |
---|
325 | |
---|
326 | \begin{frame} |
---|
327 | \frametitle{Le vote} |
---|
328 | \center{ |
---|
329 | \fbox{\includegraphics[height=0.8\textheight]{vote}} |
---|
330 | } |
---|
331 | \vfill |
---|
332 | \end{frame} |
---|
333 | |
---|
334 | \begin{frame} |
---|
335 | \frametitle{Présentation des résultats} |
---|
336 | \center{ |
---|
337 | \fbox{\includegraphics[height=0.8\textheight]{results}} |
---|
338 | } |
---|
339 | \vfill |
---|
340 | \end{frame} |
---|
341 | |
---|
342 | \begin{frame} |
---|
343 | \frametitle{Lites des bulletins} |
---|
344 | \center{ |
---|
345 | \fbox{\includegraphics[height=0.8\textheight]{ballots}} |
---|
346 | } |
---|
347 | \vfill |
---|
348 | \end{frame} |
---|
349 | |
---|
350 | \section{L'avenir:~Epoll 2} |
---|
351 | |
---|
352 | \subsection{Recommandation de la CNIL} |
---|
353 | |
---|
354 | \begin{frame} |
---|
355 | \frametitle{Référence: la CNIL} |
---|
356 | \begin{alertblock}{Essayer d'appliquer:} |
---|
357 | \textit{Délibération n. 03-036 du 1er juillet 2003 portant |
---|
358 | adoption d'une recommandation relative à la sécurité des systèmes de |
---|
359 | vote électronique}. |
---|
360 | \end{alertblock} |
---|
361 | \end{frame} |
---|
362 | |
---|
363 | \begin{frame} |
---|
364 | \frametitle{CNIL: Verrouillage de l'urne} |
---|
365 | \begin{block}{L'ouverture devrait necessiter plusieurs personnes} |
---|
366 | \begin{itemize} |
---|
367 | \item l'application pourrait demander plusieurs mots de passe |
---|
368 | \item pas de solution fiable au niveau des données |
---|
369 | \end{itemize} |
---|
370 | \end{block} |
---|
371 | \end{frame} |
---|
372 | |
---|
373 | \begin{frame} |
---|
374 | \frametitle{CNIL: Chiffrement} |
---|
375 | \begin{alertblock}{Données en clair dans la base} |
---|
376 | \begin{itemize} |
---|
377 | \item Le gestionnaire SQL y a accès |
---|
378 | \item Elles sont des les backup |
---|
379 | \end{itemize} |
---|
380 | \end{alertblock} |
---|
381 | \vfill |
---|
382 | \pause |
---|
383 | \begin{block}{Chiffrer les bulletins} |
---|
384 | \begin{itemize} |
---|
385 | \item{chiffrer\ldots} |
---|
386 | |
---|
387 | Opérationnel pour la prochaine version |
---|
388 | \begin{itemize} |
---|
389 | \item Clef asymétrique pour le vote |
---|
390 | \item Bulletins chiffré avec clef symétrique aléatoire |
---|
391 | \item Clef des bulletins chiffré avec clef du vote |
---|
392 | \end{itemize} |
---|
393 | \pause |
---|
394 | \item{{\ldots}sur le poste du votant} |
---|
395 | |
---|
396 | Pb: comment supporter les différents OS ? |
---|
397 | \begin{itemize} |
---|
398 | \item javascript ? applet java ? |
---|
399 | \item application sur le poste + XML/RPC ? |
---|
400 | \end{itemize} |
---|
401 | \end{itemize} |
---|
402 | \end{block} |
---|
403 | \end{frame} |
---|
404 | |
---|
405 | \begin{frame}[fragile] |
---|
406 | \frametitle{Somme de contrôle de l'application} |
---|
407 | \begin{block}{La CNIL dit:} |
---|
408 | "L'application doit effectuer une somme de contrôle de son code" |
---|
409 | \end{block} |
---|
410 | \vfill |
---|
411 | \pause |
---|
412 | \begin{block}{Ma réponse:} |
---|
413 | \begin{itemize} |
---|
414 | \item l'appli se contrôle elle même~?! |
---|
415 | \pause |
---|
416 | \begin{verbatim} |
---|
417 | sub check { print "Cheksum OK: " . |
---|
418 | "17ca809b185d59563d8776bac260c4b6\n" } |
---|
419 | \end{verbatim} |
---|
420 | \pause |
---|
421 | \item les gestionnaires de paquets le font (\verb+rpm+, \verb+dpkg+, \ldots) |
---|
422 | \pause |
---|
423 | \item il faudrait aussi controler: |
---|
424 | \begin{itemize} |
---|
425 | \item \verb+perl+ + les modules utilisés |
---|
426 | \item le SGDB |
---|
427 | \item le système (kernel, programmes, \dots) |
---|
428 | \end{itemize} |
---|
429 | \end{itemize} |
---|
430 | \end{block} |
---|
431 | \end{frame} |
---|
432 | |
---|
433 | \subsection{Autres idées} |
---|
434 | |
---|
435 | \begin{frame}[fragile] |
---|
436 | \frametitle{Idées} |
---|
437 | \vfill |
---|
438 | \begin{block}{} |
---|
439 | \begin{itemize} |
---|
440 | \pause |
---|
441 | \item pouvoir changer son vote |
---|
442 | \begin{itemize} |
---|
443 | \item est-ce raisonnable ? |
---|
444 | \item il faut retrouver l'ancien bulletin |
---|
445 | \end{itemize} |
---|
446 | \pause |
---|
447 | \item support de plusieurs langues (i18n) |
---|
448 | \pause |
---|
449 | \item rendre un vote privé |
---|
450 | \pause |
---|
451 | \item votes non anonymes |
---|
452 | \pause |
---|
453 | \item pouvoir redemander un mot de passe (électeurs) |
---|
454 | \pause |
---|
455 | \item sortie imprimable des résultats |
---|
456 | |
---|
457 | Fait: sortie en \verb+pdf+ avec \LaTeX. |
---|
458 | \pause |
---|
459 | \item redondance des données (CNIL) |
---|
460 | \pause |
---|
461 | \item \ldots |
---|
462 | \end{itemize} |
---|
463 | \end{block} |
---|
464 | \end{frame} |
---|
465 | |
---|
466 | \section{Fin} |
---|
467 | |
---|
468 | \begin{frame} |
---|
469 | \frametitle{Questions et remarques} |
---|
470 | \vfill |
---|
471 | \begin{block}{Le projet} |
---|
472 | \href{http://forge.ipsl.jussieu.fr/epoll}{http://forge.ipsl.jussieu.fr/epoll:} |
---|
473 | \begin{itemize} |
---|
474 | \item le code |
---|
475 | \item la documentation |
---|
476 | \item lien vers la liste de diffusion |
---|
477 | \end{itemize} |
---|
478 | \end{block} |
---|
479 | \vfill |
---|
480 | \begin{block}{La démo} |
---|
481 | \href{http://forge.ipsl.jussieu.fr/epoll/demo}{http://forge.ipsl.jussieu.fr/epoll/demo} |
---|
482 | \end{block} |
---|
483 | \vfill |
---|
484 | \pause |
---|
485 | \begin{block}{Avez-vous:} |
---|
486 | \begin{itemize} |
---|
487 | \item des questions~? |
---|
488 | \item des remarques~? |
---|
489 | \end{itemize} |
---|
490 | \end{block} |
---|
491 | \vfill |
---|
492 | \end{frame} |
---|
493 | |
---|
494 | \end{document} |
---|