250a8de58d717cafc741c1e6acf0887c.ppt
- Количество слайдов: 35
Lessons from Internet voting during 2002 FIFA World. Cup Korea/Japan. TM International Research center for Information Security (IRIS) Information and Communications University (ICU) May 27, 2004 Prof Kwangjo Kim kkj@icu. ac. kr
Contents n Introduction n System Design n Implementation Details n Voting Result n Concluding Remarks May 27, 2004 DIMACS Workshop 2
Introduction (1) n A project “VOTOPIA” carried out by effective collaboration among some of the prominent Korean and Japanese IT firms and research institutes l l n Korea: IRIS, KISTI, KSIGN, LG CNS, SECUi. COM, STI, VOCOTECH Japan: NTT, University of Tokyo IRIS, affiliated to ICU, Korea - initiated, managed, and coordinated the project May 27, 2004 DIMACS Workshop 3
Introduction (2) n Korea/Japan teams initiated the idea of VOTOPIA(*) in 2000, in order to show their strong support to the most prestigious mega event "2002 FIFA World Cup Korea/Japan(TM)". n Korea PKI l l 10 M broadband Internet users at home 3 M certificate holders for Internet banking, e-auction, etc. n Verify secure Internet system using cryptographic primitives and show its usefulness as replacement of paper voting. * VOTOPIA is in no way associated with FIFA and does not intend to violate international legal issues and digital copy rights. May 27, 2004 DIMACS Workshop 4
System Design (1) n Remote Internet voting based on blind signature under PKI for large scale election n Anyone registered once can cast a vote n 2 times voting to select MVP and Best GK l l l Preliminary vote (period. candidates, notification) : (Jun. 1 ~14, 32 teams, June 15 10 AM) Main vote(period. candidates, notification) : (Jun. 16 ~ 30, 16 teams, June 30 12 PM) one team has 20 players and 3 GKs n Meet basic cryptographic requirements ü Privacy : All votes must be secret ü Completeness : All valid votes are counted correctly ü Soundness : The dishonest voter cannot disrupt the voting ü Unreusability : No voter can vote twice ü Eligibility : No one who isn’t allowed to vote can vote ü Fairness : Nothing can affect the voting May 27, 2004 DIMACS Workshop 5
System Design (2) n Client side Fast and easy, user-friendly web interface • No tamper-proof device provided • Consider various kinds of platforms, OS browsers, and Internet speed • Allow as many voters can cast n Server side • • Highly secure network and computer system • • Anti-hacking such as DOS attack, etc Large DB handling Fault-tolerance and high reliability Reasonable processing when registering and voting May 27, 2004 DIMACS Workshop 6
Paper Voting Registration Counting Voting at Booth Poll list Observer/ Administrator Voters Secret voting Voting office Tallying Identification by poll list May 27, 2004 Voting Sheet DIMACS Workshop # slip 7
Internet Voting Voters Web servers R 1. After setting up secure session, download registration form R 2. Send encrypted public key & registration information with session key CA server R 3. Request certificate R 4. Issue certificate nload. Dow g votin t apple R 5. Save certificate V 1 C 2 . R V 3. Request Schnorr blind signature V 4. Receive Schnorr blind signature Admin server V 5. Verify admin’s blind signature . S C 3 V 2. Encrypt the ballot with counter’s public key in El. Gamal encryption en ec dq eiv ue ry et he DB server fo rt fin al all yin re su g lt V 6. Send encrypted ballot & admin’s digital signature V 7. Verify admin’s signature & decrypt ballot using counter’s private key Counter server May 27, 2004 DIMACS Workshop V 8/C 1. Save all decrypted ballots 8
Registration Stage Voters (After setting up secure session) R 1. Download registration form R 2 -1. Fill out the registration form R 2 -2. Generate private/public key pair R 2 -3. Save private key in safe R 2 -4. Encrypt the registration information & public key with session key R 2 -5. Send encrypted message (public key & registration information) Web servers R 3 -1. Decrypt encrypted message R 3 -2. Generate request for certificate CA server R 3 -3. Send request for certificate R 4. Issue certificate R 51. info Save rma regi tion stra & c tion ert ific ate R 5 -2. Registration completed DB server May 27, 2004 DIMACS Workshop 9
Voting Stage Web servers Voters V 1. Download voting applet V 2. Encrypt the ballot with counter’s public key in El. Gamal encryption V 3 -1. Request Schnorr blinding factor V 3 -2. Save Schnorr blinding factor V 3 -3. Receive Schnorr blinding factor DB server V 3 -4. Blind the encrypted ballot using received blinding factor V 3 -5. Generate voter’s Schnorr signature on the ballot V 3 -6. Send voter’s Schnorr sig. & blinded info V 3 -7. Request & receive voter’s certificate V 3 -8. Request & receive voter’s blinding factor V 4 -2. Receive admin’s blind signature Admin server V 3 -9. Verify voter’s digital signature V 4 -1. Generate admin’s blind signature V 5. Verify admin’s blind signature V 6. Send encrypted ballot & admin’s digital signature Counter server May 27, 2004 V 7 -1. Verify admin’s digital signature V 7 -2. Decrypt the ballot using counter’s private key V 8. Save all decrypted ballots DIMACS Workshop 10
Counting Stage Counter server C 1. Save all decrypted ballots Voters Web servers DB server C 2. Send query for tallying C 3 -1. Ballot counting C 3 -2. Receive the final result C 3 -3. Post the final result C 3 -4. Look up the final result May 27, 2004 DIMACS Workshop 11
Configuration of Servers (1) KISTI Backbone Network Cisco 6506/opal http: //mvp. worldcup 2002. or. kr VLAN 1 Firewall SECUi. Wall Compaq Proliant ML 530 L 4 Switch CSS 11800 VLAN 10 Gb. E mvp 01 SUN V 880 May 27, 2004 Gb. E mvp 02 SUN V 880 Gb. E mvp 03 mvp 04 SUN Enterprise 3000 SUN Enterprise 6500 Web Servers ADMIN Servers DIMACS Workshop Gb. E mvpsvr Compaq DB Server 12
Configuration of Servers (2) May 27, 2004 DIMACS Workshop 13
Implementation n Client • Java 1. 2, JLOCK+ • MS Explorer 4. 0 on Windows 98 /ME/XP/2000 • Korean, Japanese, English and Chinese n Web, DB, Admin, and Counter Servers l Solaris 2. 5. 4 (SUN OS 5. 8), Oracle DB 8. 0. 6 , JDBC l Tomcat 3. 1, Apache 1. 3. 12, JSSWEB+ n Encryption and Certificate • El. Gamal encryption & Schnorr (blind) signature • Simplified X. 509 v 3 certificate issued by CA server May 27, 2004 DIMACS Workshop 14
Homepage(http: //mvp. worldcup 2002. or. kr) May 27, 2004 DIMACS Workshop 15
Registration Page May 27, 2004 DIMACS Workshop 16
Voting Page May 27, 2004 DIMACS Workshop 17
Data Size & Voting Time n Data Size l Applet for SSL Connection at R 1 n l Voting Client Applet at V 1 n l 215 KB Voter’s Registration Information at R 2 -1 n l 207 KB Avg 50 Bytes Key Size : Security / Performance Trade-off n n n Voter : 256 bit El. Gamal Encryption & 512 bit Schnorr Signature Administrator : 256 bit Schnorr Blind Signature & 512 bit Schnorr Verification Counter : 256 bit El. Gamal Decryption n Voting Time (V 1 - V 6) l Avg 2 (or 3) min. under Pentium III 100 M LAN (or 56 K modem) l Including Admin’s & Counter’s Server Computation Time : avg 195 msec May 27, 2004 DIMACS Workshop 18
Sample Vote (1) Voter's ID : tank 02's private key Private Key x: 9 fa 840 a 6974 fc 04810 db 89 b 73461 bb 8 d 561 a 20 bd Security Parameters: p: c 16 cbad 34 d 475 ec 5396695 d 694 bc 8 bc 47 e 598 e 23 b 5 a 9 d 7 c 5 cec 82 d 65 b 6827 d 44 e 95 378484730 c 0 bff 1 f 4 cb 56 f 47 c 6 e 51054 be 89200 f 30 d 43 dc 4 fef 9624 d 4665 b q : b 7 b 810 b 58 c 0934 f 642878 f 360 b 96 d 7 cc 26 b 53 e 4 d g: 4 c 53 c 726 bdbfbba 6549 d 7 e 731939 c 6 c 93 a 869 a 27 c 5 db 17 ba 3 cac 589 d 7 b 3 e 003 fa 735 f 290 cfd 07 a 3 ef 10 f 35155 f 1 a 2 ef 70335 af 7 b 6 a 5211 a 1103518 fba 44 e 9718 Admin's public key Public Key y: c 0 ace 983 c 8 c 4346 b 99 b 54 e 96505 f 94 b 7 b 2 ba 25 d 6764 c 16 fcb 9 f 239 cbc 447402 f Security Parameters: p : f 668 a 94 f 0 ce 284 e 30776 b 59 b 319 fec 12 ba 069 d 10 c 56498 e 2 bd 0 cb 42 f q : e 3109 c 1 fd 13 c 8 d 637 f 6 c 39 e 6 c 0 a 6 e 9 df g : a 7688634018 f 161 c 62 de 5014 ca 99 e 983759 fb 4 f 67 b 575 bbc 4 b 51 d 32392177 a 40 May 27, 2004 DIMACS Workshop 19
Sample Vote (2) Counter's public key Public Key y: b 6 fbabc 9259 a 1267 fcde 3 a 82 ebc 060781 c 9404 b 7 caf 4 c 07837 fb 86 b 1054207 fb Security Parameters: p : e 204679 a 6 b 62 fe 440 c 0 bfea 01223 d 98 b 7 b 65 a 6 b 1095962 b 41 d 502 d 21 q : ad 9 c 0 afead 1 c 2 e 24900 e 4799 ddcade 6 b g : 329 d 730 dea 5 e 5 cff 79 b 9 a 46968414 e 16 ec 610 dbdd 3 e 1 b 7 d 090 aec 0 bdef 310411 Message from Admin 1(tilde. A): 2004 d 4 c 5 ff 693 b 20 ad 4574 a 062 c 1 eb 80 d 6 e 2 e 0 d 79639 f 755 cd 9 e 4 de 14593 f 9 ceec Vote : 10000001431000000160 Tag : 4277 bb 955 fad 5 f 86 Encoded vote(vi) : 31303030313433313030303136304277 bb 955 fad 5 f 86 Message for El. Gamal encryption : 31303030313433313030303136304277 bb 955 fad 5 f 86 May 27, 2004 DIMACS Workshop 20
Sample Vote (3) Random number k for El. Gamal encryption : 4 af 1 c 2911 bd 5 f 59789307 fd 12366436 e 68 dbd 0 ae G(=g^k mod p) : 316 aafb 99 ed 1 a 7565 e 09 d 795 a 1 c 4 bc 1 bc 884 f 5069 b 3 e 3 af 12 c 61976 bd 929 cd 35 M(=m*(y^k) mod p) : 9 f 88 bcf 0128 a 500 c 218 c 8 fbde 13 a 21 ca 8 eae 32 caa 58 ac 9339 d 8 c 3 a 5 eaa 79489 d Encrypted vi(ev) : 4400209 f 88 bcf 0128 a 500 c 218 c 8 fbde 13 a 21 ca 8 eae 32 caa 58 ac 9339 d 8 c 3 a 5 eaa 79489 d 0020316 aafb 99 ed 1 a 7565 e 09 d 795 a 1 c 4 bc 1 bc 884 f 5069 b 3 e 3 af 12 c 61976 bd 929 cd 3 5 Blinding encrypted vi Random commitment tilde. A for blinding given by signer 4 d 4 c 5 ff 693 b 20 ad 4574 a 062 c 1 eb 80 d 6 e 2 e 0 d 79639 f 755 cd 9 e 4 de 14593 f 9 ceec Message to be blinded 4400209 f 88 bcf 0128 a 500 c 218 c 8 fbde 13 a 21 ca 8 eae 32 caa 58 ac 9339 d 8 c 3 a 5 eaa 79489 d 00 20316 aafb 99 ed 1 a 7565 e 09 d 795 a 1 c 4 bc 1 bc 884 f 5069 b 3 e 3 af 12 c 61976 bd 929 cd 35 May 27, 2004 DIMACS Workshop 21
Sample Vote (4) Blinding factor u : 1 a 35 c 544169 b 7 df 3 cde 2488 f 5 ae 6179 ad 3 c 50 ea 7 Blinding factor v : e 1254 df 36 ad 334 dc 92 e 7 f 5 c 75224 f 2 b 77 b 179924 r'(=tilde. A * g^u * y^v) : 8 ac 9 e 4 f 8917 d 0961 a 017 b 0706 bb 2 cc 9145161 dab 9 b 01322849 ce 97878 ffb 67 d 5 e'(=hash(r', msg)mod q) : 2 c 81051411 f 5826 f 47 fa 9825 b 579 bb 6 eb 97 bf 01 d e (= e'-v mod q) : 2 e 6 c 5340785 edaf 6347 edc 4523 fbb 296 ff 0 b 40 d 8 Blinded ev(tilde. C=e) : 2 e 6 c 5340785 edaf 6347 edc 4523 fbb 296 ff 0 b 40 d 8 Message for Schnorr Sig. : 2 e 6 c 5340785 edaf 6347 edc 4523 fbb 296 ff 0 b 40 d 8 random factor k of Schnorr Sig. : b 09 bd 1 ea 81 f 8 f 91 c 2 ec 9 cc 8 a 805 b 4150 ced 8 bf 37 r(=g^k mod p) : a 04164 bfc 61 f 673 d 77 d 29 aae 45 fb 503394823 bbf 96 bb 1407 acdbbf 2 a 76069313204 ae 1 cf 8 e 9 fc 8862 f 3 d 07 c 27 ac 2 f 6 dc 529 d 47 d 5 e 06 f 2450715 a 1 a 5034 c 996 ff voter's sig. (s, e) of message tilde. C Schnorr Sig. factor e (= hash(r, msg) mod q) : 3 b 6226900 a 5333 f 29 f 8 c 0 ca 99 b 1 c 0 c 5 aeee 5 a 1 c 7 Schnorr Sig. factor s (= k - e*x mod q) : 12 ed 689 be 782 fbcae 8 d 8 f 823226997769 fc 469 d 0 May 27, 2004 DIMACS Workshop 22
Sample Vote (5) Message to admin 2 (eai=(s, e)|tilde. C|tilde. A) : 8 e 0054001 e 00066 b 6 d 616 e 3232001490 a 9 ab 12 dc 8 f 91 be 844 dc 57575 ff 741 f 6565 bab 300320030002 e 0502001412 ed 689 be 782 fbcae 8 d 8 f 823226997769 fc 469 d 000143 b 6226900 a 5333 f 29 f 8 c 0 ca 99 b 1 c 0 c 5 aeee 5 a 1 c 700142 e 6 c 5340785 edaf 6347 edc 4523 fbb 296 ff 0 b 40 d 8002004 d 4 c 5 ff 693 b 20 ad 4574 a 06 2 c 1 eb 80 d 6 e 2 e 0 d 79639 f 755 cd 9 e 4 de 14593 f 9 ceec Message from admin 2, that is, admin's blind signature (ezc) : 53001 d 000561646 d 696 e 001411 cc 6504 f 02 e 79 e 6811 c 8046 cf 13 ebb 47 d 4 f 6 e 6600320030002 e 05020 0148 bcd 80 bd 228501354422 eacf 5032171 ee 491725000142 e 6 c 5340785 edaf 6347 edc 4523 fbb 296 ff 0 b 40 d 8 Unblinding Admin's blind sig. factor s (= omega-e*x mod q) : 8 bcd 80 bd 228501354422 eacf 5032171 ee 4917250 Admin's sig. factor s' (= s+u mod q) : a 603460139207 f 291205335 eab 182 eb 9 b 85680 f 7 Admin's sig. factor e' (= e+v) : 2 c 81051411 f 5826 f 47 fa 9825 b 579 bb 6 eb 97 bf 01 d Unblinded admin sig. (bs) : 2 e 05020014 a 603460139207 f 291205335 eab 182 eb 9 b 85680 f 700142 c 81051411 f 5826 f 47 fa 9825 b 579 bb 6 eb 97 bf 01 d Message to Bubo(esev=bs||ev) 76002 e 05020014 a 603460139207 f 291205335 eab 182 eb 9 b 85680 f 700142 c 81051411 f 5826 f 47 fa 9825 b 579 bb 6 eb 97 bf 01 d 004400209 f 88 bcf 0128 a 500 c 218 c 8 fbde 13 a 21 ca 8 eae 32 caa 58 ac 9339 d 8 c 3 a 5 ea a 79489 d 0020316 aafb 99 ed 1 a 7565 e 09 d 795 a 1 c 4 bc 1 bc 884 f 5069 b 3 e 3 af 12 c 61976 bd 929 cd 35 Vote Result : 10000001431000000160 May 27, 2004 DIMACS Workshop 23
Daily Access Record May 27, 2004 DIMACS Workshop 24
IIS Attack Monitored in Error. log File at Apache Server [Thu Jul 4 23: 59: 48 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/msadc/. . %5 c. . /. . %5 c/. . ? . . /winnt/system 32/cmd. exe [Thu Jul 4 23: 59: 48 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . 유. . /winnt/system 32/cmd. exe [Thu Jul 4 23: 59: 48 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . 헃. . /winnt/system 32/cmd. exe [Thu Jul 4 23: 59: 48 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . %5 c. . /winnt/system 32/cmd. exe [Thu Jul 4 23: 59: 48 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . %2 f. . /winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/c/winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/d/winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . %5 c. . /winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/_vti_bin/. . %5 c. . /winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/_mem_bin/. . %5 c. . /winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/msadc/. . %5 c. . /. . %5 c/. . ? . . /winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . 유. . /winnt/system 32/cmd. exe [Fri Jul 5 01: 06: 56 2002] [error] [client 210. 107. 135. 145] File does not exist: /user/mvp/public_html/scripts/. . 헃. . /winnt/system 32/cmd. exe May 27, 2004 DIMACS Workshop 25
# of Typical Hacking (Filtered by IDS) (1) Type of Hacking Date May 27, 2004 DIMACS Workshop 26
# of Typical Hacking (Filtered by IDS) May 27, 2004 DIMACS Workshop (2) 27
Packet Control(by Firewall) (1) n Allowed Packet (Jun. 7 th , 2002) Allowed Packet May 27, 2004 DIMACS Workshop 28
Packet Control(by Firewall) (2) n Disallowed Packet & Session (Jun. 7 th , 2002) Disallowed Packet May 27, 2004 DIMACS Workshop Allowed Session 29
Statistics of Preliminary voting n. Age: l. Below 10 yrs: 9 (1. 0%), 11~ 20 yrs: 200 (22. 1%), 21~30 yrs: 454 (50. 3%), 31~40 yrs: 176 (19. 5%), 41~50 yrs: 49 (5. 4%), 51~60 yrs: 7 (0. 8%), Above 61 yrs: 8 (0. 9%) n Continents: l. Asia: 863 (95. 6%), Europe: 16 (1. 8%), North America: 10 (1. 1%), Oceania: 4 (0. 4%), South America: 6 (0. 7%), Africa: 4 (0. 4%) May 27, 2004 DIMACS Workshop 30
Top 10 MVP’s after Preliminary Voting May 27, 2004 DIMACS Workshop 31
Statistics of Main Voting n. Age: l. Below 10 yrs: 13 (0. 4%), 11~ 20 yrs: 1, 725 (47. 1%), 21~30 yrs: 1, 551 (42. 4%), 31~40 yrs: 270 (7. 4%), 41~50 yrs: 85 (2. 3%), 51~60 yrs: 13 (0. 4%), Above 61 yrs: 5 (0. 1%) n Continents: l. Asia: 3, 604 (98. 4%), Europe: 23 (0. 6%), North America: 20 (0. 5%), Oceania: 8 (0. 2%), South America: 4 (0. 2%), Africa: 3 (0. 1%), n List of nations more than 5 voters : l. Korea: 3, 474. Japan: 90, Vietnam: 18. China: 14, Canada: 8, USA: 7, India: 6 , Australia: 6, France: 5, Netherlands, Brazil, Denmark, England, Germany, Russia, Peru, Taiwan, Indonesia, Finland, Spain, etc. May 27, 2004 DIMACS Workshop 32
Top 10 MVP’s May 27, 2004 DIMACS Workshop 33
Concluding Remarks n Lessons we learned l Need Performance/Security Trade-off l Proper anti-Hacking mechanisms due to double screening n l S/W Portability n l l Firewall (H/W) , Intrusion Detection System(S/W) Platform independent by Java Impossible to meet all the security requirements Multiple voting by different ID’s due to weak identification n Further Works l More secure and practical Internet voting system to FIFA World. Cup 2006™ in Germany shared with our code n l Extensions n n l Against DDOS Strong authentication (bio-identification), Mobile Internet voting Absence voting, I-polling Trial Overcome Non-technical Problems(Digital Divide, Political Consensus, legal issue, etc. ) May 27, 2004 DIMACS Workshop 34
Thank you for your attention Q&A May 27, 2004 DIMACS Workshop 35


