Upload
olympe
View
35
Download
2
Embed Size (px)
DESCRIPTION
Sme lý Palko v Ohiu alebo pán Turing ide voliť. Pavol Černý GJH , Január 200 9. Čo je Ohio ? Kto je Turing? Bonus: čo je na obrázku ?. Sme lý Palko v Ohiu alebo pán Turing ide voliť. Pavol Černý GJH , January 200 9. Voľby v roku 2000. Volebné automaty. - PowerPoint PPT Presentation
Citation preview
Smelý Palko v Ohiualebo
pán Turing ide voliť
Pavol ČernýGJH, Január 2009
Smelý Palko v Ohiualebo
pán Turing ide voliť
Pavol ČernýGJH, January 2009
•Čo je Ohio?•Kto je Turing?
•Bonus: čo je na obrázku?
3
Voľby v roku 2000
4
Volebné automaty
•Homér Simpson má problém.
(tu bolo video ako Simpsonovci volili)
5
iVotronic
6
M100 Scanner
7
M650 Scanner
8
ES&S Systém -- úvodné nastavenia
9
ES&S Systém -- zbieranie výsledkov
10
PEB
11
Unity
aplikácia na zrátavanie výsledkov hlasy[kandidat] = hlasy[kandidat]+1 ?? nie: 365.000 riadkov.. v C, C++, Cobol,
Java and Visual Basic
12
Ako sme hľadali
13
Čo sme našli
14
Tlačiareň
15
Tlačiareň 2
16
Zámky a kľúče
17
Ako si vyrobiť PEB
18
Ako si vyrobiť PEB
19
Softvérové chyby
Buffer overflowvrátiť nebezpečný (a dlhý) string
Vrátiť dáta z viacerých okrskov týka sa optických scannerov
Žiadna (alebo zlá) kryptografiana prenosových médiach
20
Úplný útok
1. Volič-zločinec začne proces nahrávania nových volebných dát na iVotronic pomocou emulovaného QA PEBu (3 mins)
2. Volič-zločinec využije buffer-overflow chybu a nahrá nový firmware naiVotronic (15 mins)
3. Volič-zločinec odletí do Severnej Kórei
21
Úplný útok
4. pri zbere dát sa od infikovaného iVotronic-u zreportujú vymyslené výseldky a infikuje sa back-end Unity
5. pri ďalších voľbach sa infikujú všetky ostatné iVotronic-y, M100vky a M650ky.
22
Prečo niekto konečne nenapíše program, ktorý by skontroloval,
či iné programy robia to, čo majú?
23
Prečo niekto konečne nenapíše program, ktorý by skontroloval,
či iný program skončí?
24
Skúsme si to predstaviť
bool Zastaví?(string Program, string vstup)
Program P
(zdrojový kód)
Vstup
Zastaví?
Áno / Nie
25
Hrajme sa ďalej
bool Zastaví?(string Program, string vstup)
bool Trik(string program) {
if Zastaví?(program,program) {
while true {};
} else {
return true;
}
}
26
Hrajme sa ďalej
Trik(“bool Trik(string program) { if Zastaví?(program,program) {
while true {};
} else {
return true;
}
}
“);
27
Inými slovami...bool Trik(string program) {
if Zastaví?(program,program) {
while true {};
} else {
return true;
}
}
Trik(Trik)
28
Zastaví Trik(Trik)???bool Trik(string program) {
if Zastaví?(program,program) {
while true {};
} else {
return true;
}
}
Predstavme si, že Trik(Trik) zastaví:
ale to znamená, že funkcia Zastaví? vraví, že Trik(Trik) nezastaví
29
Zastaví Trik(Trik)???bool Trik(string program) {
if Zastaví?(program,program) {
while true {};
} else {
return true;
}
}
Predstavme si, že Trik(Trik) nezastaví:
ale to znamená, že funkcia Zastaví? vraví, že Trik(Trik) zastaví
30
???
31
Funkcia Zastaví? neexistuje.
32
Záver
Dajte sa na informatiku! (ak chcete..) Volebné automaty – zdá sa, že je ešte
dosť práce Písať spoľahlivé programy - ako na to? .. Výpočet .. moc zaujímavý pojem – v
matematike, fyzike, biológii