SlideShare a Scribd company logo
淺談電子投票的技術與困境
@INFAS 2017
關於我
● Allen Chou
● 高中二年級
● 身高
○ 沒有 190cm
○ 沒有打籃球
○ 上面的空氣不新鮮
○ 我爸媽都很高
○ 好,還有問題嗎?
● allenchou.cc
● s3131212@gmail.com
● FB: s3131212
● 沒在用 Instagram
今天來談談電子投票的一些基礎概念
Client Server
選票
Client Server
1. 安安,我想投給雷姆
Database
2. 要求雷姆 +1 3. 喔好,雷姆已經 +1
4. 投票完成,雷姆萬歲
好,就這樣,一個優秀的投票系統就這麼完成了
Q&A
謝謝大家 :)
電子投票的需求
等等,先讓我們複習一下公民
所以我說,有人記得選舉的四大原則嗎?
↑ 公民課的你
選舉四大原則
● 普遍選舉
● 平等選舉
● 直接選舉
● 秘密投票
先來看看傳統投票流程
1. 投票箱在公開環境受監督下的檢查裡面沒有東西並鎖上
2. 使用者在投票所門口驗證身份並拿選票
3. 進入投票室,圈選候選人,走出來,放進投票箱
4. 投票完成後,在公開環境受監督下移動至開票所
5. 在公開環境受監督下打開投票箱
6. 在公開環境受監督下拿出每一張票並計數
重新看一下這個設計圖
Client Server
1. 安安,我想投給雷姆
Database
2. 要求雷姆 +1 3. 喔好,雷姆已經 +1
4. 投票完成,雷姆萬歲
普遍選舉? 沒有任何形式
的驗證機制
Client Server
1. 安安,我想投給雷姆
Database
2. 要求雷姆 +1 3. 喔好,雷姆已經 +1
4. 投票完成,雷姆萬歲
平等選舉?直接選舉? 好像沒啥問題
Client Server
1. 安安,我想投給雷姆
Database
2. 要求雷姆 +1 3. 喔好,雷姆已經 +1
4. 投票完成,雷姆萬歲
秘密投票? 可以透過 Log 清楚
知道用戶選票內容
Client Server
1. 安安,我想投給雷姆
Database
2. 要求雷姆 +1 3. 喔好,雷姆已經 +1
4. 投票完成,雷姆萬歲
資安三原則
● 機密性 Confidentiality
● 完整性 Integrity
● 可用性 Availability
一些電子投票的原則
● 完整性
● 強韌性
● 非強制性
● 唯一性
● 匿名性
● 可驗證性
● etc.
1. 完整性 Completeness
● 合法投票者一定可以投票
2. 強韌性 Robustness
● 非法投票者無法投票
● 任何人都無法阻止別人投票
● 任何人都無法以任何形式破壞整體選舉
3. 非強制性 Uncoercibility
● 投票者一定可以忠於自己意願投票
● 無法向第三者證明自己的選票內容
● 不會被做成消波塊
4. 唯一性 Uniqueness
● 投票者只能投一次
5. 匿名性 Anonymity
● 投票者以外的人都不知道選票內容
● 選務單位在投票截止前(即未開票時)不會知道選票內容
● 即使看到選票,也不會知道這是誰投的
6. 可驗證性 Verifiability
● 投票者可以確認自己的票有被正確計算
● 同時不會洩漏自己選票內容(即非強制性)
電子投票的模型與問題
電子投票的基本模型
投票者客戶端
認證
投票
驗票
1. 我要投票
2. 這是你的選票
3. 這是我寫
好的選票
4. 驗證這是否
真的是他的票
5. 這是選票
,請統計
6. 教我怎麼讀這些票
電子投票的基本模型(有一點複雜版)
投票者客戶端
認證
投票
驗票
1. 我要投票2. 用公鑰加密過的選票
3. 這是我寫
好的選票
4. 給我該投票
者的金鑰
5. 這是選票
,請統計
6. 給我該投票者的金鑰
等等,什麼是金鑰?公鑰又是啥?
要開始密碼學的範疇囉!
蛤?不是說好沒密碼學的?
不這麼說你哪會來聽
非對稱加密 Public-key cryptography
1. Bob 要傳訊息給 Alice
2. Bob 拿 Alice 的公鑰 (Public Key) 對訊
息加密
3. Bob 傳加密過後的訊息給 Alice
4. Alice 拿自己的私鑰 (Private Key)對訊
息解密
數位簽章 Digital Signature
1. Alice 想要簽一筆資料
2. Alice 把資料拿去算 hash
3. Alice 拿自己的私鑰對 hash 值加
密
4. Alice 把資料連同加密過的 hash
值傳給 Bob
5. Bob 拿資料去算 hash
6. Bob 把加密過的 hash 值用 Alice
的公鑰解密
7. 比較兩者是否一樣
https://en.wikipedia.org/wiki/File:Digital_Signature_diagram.svg
由Tonghuix 以創用CC 姓名標示-相同方式分享 3.0 公開
因為密碼學的部分還沒有結束。
幫 QQ
其實聽不懂沒關係,反正知道有這名詞就好
盲簽 Blind signature
● 解決完整性的問題
● 由 David Chaum 提出
● 可以在不得知訊息內容的情況下對訊息簽章
所以,這有什麼好處?
1. 投票者拿到選票
2. 投票者將選票盲化並丟給認證中心
(依不同設計,盲簽與認證程序可能在投票前或後)
3. CA 檢查此投票者是否具有投票資格
4. 若有,則對選票做盲簽
5. 投票者拿到盲簽結果
6. 解密後得選票的簽章
7. 把選票與簽章丟給驗票中心
8. 驗票中心檢查簽章與選票是否吻合
亂數識別
● 解決完整性與可驗證性
● 需要一個完全公開、通訊加密、不
可追溯的平台
● 需要一個強大的亂數生產器
1. 投票者創造一個亂數
2. 投票者將亂數送給認證中心盲簽
3. 認證中心檢查該投票者是否有投票資格
並盲簽該亂數
4. 投票者填寫選票,創造數對:
( random_number,
signed_random_number, vote )
例如: ( 18763, 10sec, 西瓜榴槤雞)
5. 透過私密通道傳給驗票中心
6. 驗票中心將內容送至公開平台
7. 投票者至公開平台檢查自己的選票序號
(即亂數)是否存在
合併上面幾個概念
好啦,我有看到你絕望的表情。
密碼學快結束了,真的
2. 公開其公鑰
1. 生成金鑰
4. 傳送盲化後的選票
5. 盲簽
6. 回傳盲簽結果
7. 還原簽章
8. 進行投票並簽章
公開平台
投票者
認證中心
9. 以私密通道傳送
10. 驗證此選票是
否已計算過
3. 亂數生成
選票序號
11. 計算投票
12. 公開選票序號
13.檢視自己的票
是否有被計算
14.簽章以示自己
已確認
驗票中心
當然,實際作法遠比上面介紹還要複雜多了
如何打造一個私密且不可追溯的通訊?
Mix network
● 透過多個節點的混淆
達到不可追溯性
● 由 David Chaum 提出
(對,又是他)
● 一層一層解密並傳送
給指定收件者
● Onion routing(Tor)的
基礎概念
https://en.wikipedia.org/wiki/File:Decryption_mix_net.png
由 Primepq 製作並以 CC BY-SA 3.0 釋出
1. 各 Mix Node 公佈其公鑰
2. Alice 想用此通道傳訊息給 Bob,並希望通過兩個 Mix Node
3. Alice 取得 Mix Node 1 與 Mix Node 2 的公鑰 K1
與 K2
以及 Bob 的公鑰 KB
,並取
三個亂數 R1
與R2 與 RB
4. 計算 K1
( R1
, K2
( R2
, KB
( RB
, message), Bob ), Node2 ) 並傳送給 Node1
5. Node1 用其私鑰解密後得 ( R1
, K2
( R2
, KB
( RB
, message), Bob ), Node2 )
6. 得訊息為 K2
( R2
, KB
( RB
, message), Bob ),傳送給收件者 Node2
7. Node2 用其私鑰解密後得 ( R2
, KB
( RB
, message), Bob )
8. 得訊息為 KB
( RB
, message),傳送給收件者 Bob
9. Bob 用其私鑰解密後得 RB
, message
● 途中 Node1 與 Node2 皆只知道收件者與加密過的訊息,而不知其內容
● 若 Alice 沒有寫寄件者,則 Bob 無從得知訊息是從何而來
https://commons.wikimedia.org/wiki/File:Onion_diagram.svg
由 HANtwister 製作並以 CC BY-SA 3.0 釋出
https://en.wikipedia.org/wiki/File:Decryption_mix_net.png
由 Primepq 製作並以 CC BY-SA 3.0 釋出
摑面黨冥燼黨 國運昌隆黨
沒關係,看看你隔壁同學茫然的表情
不是只有你看不懂。
投票模糊化
1. 有效解決非強制性問題
2. 同時適用於紙本投票
3. 即使投票者與投票中心之間的加
密通道被攔截並破譯也無法取得
選票內容
1. 投票者所取得之選票上有打亂順序的候
選列表
2. 投票者送出選票時只有選項的編號,例
如「第二個選項」而非「雷姆」及還原順序
之密碼
3. 投票者取得投票憑證( Voting receipt)
4. 投票者銷毀選票,確保該排序不會外流
5. 驗票單位透過該密碼還原選票 內容
電子投票的問題
我們再複習一次傳統投票流程
1. 投票箱在公開環境受監督下的檢查裡面沒有東西並鎖上
2. 使用者在投票所門口驗證身份並拿選票
3. 進入投票室,圈選候選人,走出來,放進投票箱
4. 投票完成後,在公開環境受監督下移動至開票所
5. 在公開環境受監督下打開投票箱
6. 在公開環境受監督下拿出每一張票並計數
1. 原始碼驗證問題
● 電腦本身就是一個「黑箱」
● 無從得知電腦所運行的程式碼是否有問題
● 無法得知該程式碼是否有被惡意竄改過
● 驗證機制?
○ 無從得知電腦中計算與驗證 checksum 的軟體是否也是正確的
○ 檢驗的人也是可以被收買的
○ 紙本存根聯?
2. 監督問題
● 無從監督中間的傳輸過程與最後的開票程序
● 開票與計票也都是在一個不為人知的電腦裡黑箱運作
3. 資安問題
● 所有的系統都是可以被入侵的
● 傳輸選票的過程也可能被攔截與竄改
● DDoS 萬年老問題
2008 年美國總統大選的三星期前 ...
https://pdfs.semanticscholar.org/67c9/36ab3c07d2ad4d1d450779b0f1ab69176985.pdf
2006年美國期中選舉
https://s3.amazonaws.com/citpsite/publications/ts06EVT.pdf
所以,電子投票真的能取代傳統紙本投票嗎?
先單就網路投票(i-Voting)下去討論好了
網路投票的優點
● 使身障人士更方便投票
● 讓懶得出門的人也可以投票
● 偏遠地區的居民不必跋山涉水到
投票所
以 CC BY 2.5 釋出
https://en.wikipedia.org/w/index.php?curid=4517004
網路投票的客群
目標客群:
● 身障人士
● 偏遠地帶居民
● 懶得出門的選民
● 擁有一定程度電腦知識者
● 居住在有完善基礎建設的地區
非目標客群:
● 不熟悉電腦操作者
● 居住在基礎建設不足的地區
真的是這樣嗎?
接下來,我們以 2007 年愛沙尼亞選舉數據來檢驗吧
「從你家到最近的投票所然後再回家所需要的時間」
「從你家到最近的投票所然後再回家所需要的時間」
網路投票的效果其實沒有想像中那麼好 :(
根據某些研究,網路投票甚至加劇了參政的不平等
擁有相對高學歷、高收
入、主流民族者有較高
的比例使用網路投票
看完人家了,我們自己呢?
醒醒吧,我們連不在籍投票都搞不定
這是一張沒有人知道是啥的自然人憑證
如果你還沒看過,你也不必知道這是啥
當然,那些都是政治的東西了
其實是我時間快不夠了。
你知道嗎?學測還有 229 天
祝福學測戰士們考試順利,然後我要去閉關了 掰掰
Advanced Information Security
Summer School
有人說都沒人陪他參加
Got Your PW
專供資安人的資源與工具整理
https://gotyour.pw
Q&A
謝謝大家
然後,這次是真的了。
References(網站)
● https://en.wikipedia.org/wiki/Electronic_voting
● https://en.wikipedia.org/wiki/Electronic_voting_by_country
● https://en.wikipedia.org/wiki/Pr%C3%AAt_%C3%A0_Voter
● http://www.huffingtonpost.com/2012/10/22/electronic-voting-machines-2012_n_1992992.html
● http://citpsite.s3-website-us-east-1.amazonaws.com/oldsite-htdocs/voting/summary.html
● https://www.ted.com/talks/david_bismark_e_voting_without_fraud
● https://evoting.bismark.se/verifiable-electronic-voting/
● https://politics.stackexchange.com/questions/17/what-challenges-remain-for-online-voting
● http://content.time.com/time/politics/article/0,8599,2025696,00.html
● https://en.wikipedia.org/wiki/David_Chaum
● https://en.wikipedia.org/wiki/Blind_signature
● https://en.wikipedia.org/wiki/Voting_machine
● https://www.ptt.cc/bbs/CSSE/M.1402963558.A.68A.html
● https://www.quaxio.com/simple_auditable_anonymous_voting_scheme/
● https://en.wikipedia.org/wiki/Mix_network
● https://opinion.udn.com/opinion/story/6067/713558
● https://opinion.udn.com/opinion/story/6067/1697659
● http://join.gov.tw/index
● https://www.youtube.com/watch?v=ZDnShu5V99s
● https://politics.stackexchange.com/questions/24/is-it-possible-to-implement-an-electronic-voting-system-which-is-as-secure-as-pe
● https://en.wikipedia.org/wiki/End-to-end_auditable_voting_systems
References(論文)
● Security Analysis of the Diebold AccuVote-TS Voting Machine
● Elections with Unconditionally-Secret Ballots and Disruption Equivalent to Breaking RSA
● Can Internet voting increase political participation?
● 電子投票機制之實務研究
● An Internet Voting Scheme for Large-Scale Elections
● NCKU 電子投票系統之安全性分析
● 新型態之電子投票機制
以下是備用的投影片
m : 要簽章的訊息
s : m 的簽章
d : 簽章者的密鑰
e & N : 簽章者的公鑰
r : 要求簽章者提供的亂數
( r 滿足 gcd(r, N) = 1 )
1. 將 m 經處理,把 m’ 給簽章者
(此即 blind factor)
2. 簽章者用自己的私鑰算出 s’ 並回傳給要求者
3.要求簽章者回推 s
亂數驗證
● 解決完整性與可驗證性
● 需要一個完全公開、通訊加密、不
可追溯的平台
● 需要一個強大的亂數生產器
● 用戶需要一對公私鑰
● 無法符合強韌性
● 學術理論大於實務價值
1. 投票者建立一對金鑰,並將其公鑰傳至
公開平台
2. 投票者創造一個數對:
( random_number, vote )
例如: ( 18763, 西瓜榴槤雞 )
3. 投票者把票以加密通訊傳到公開平台
4. 所有投票者都完成投票後,把公開平台
上的票抓下來並檢查自己的票是否有在
裡面
5. 對所有選票進行簽章並回傳
6. 檢查是否所有投票者都有回傳簽章結果
,並核對票數與簽章數

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
Marius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
Expeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
Pixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
marketingartwork
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
Skeleton Technologies
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
SpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
Rajiv Jayarajah, MAppComm, ACC
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
Christy Abraham Joy
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
Vit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
MindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

淺談電子投票的技術與困境