# Logos Lab weekly report <style> .blue {color: #1E90FF;} </style> <style> .green {color: green;} </style> ## 7/9 所有報告都要 : **top down** (不管是內部還是外部) - 讓報告完整一點:把一些之前的簡單講一夏 - 講最重要的 - 報告分成兩種 - 還差DATA MODEL 和 FLOW 之間的關係 - ticket format 都要擺出來 內部:實作細節(30-60分鐘) 外部:大綱(10分鐘) backgroud, 一些threat model 可以提一下 ### 可以開始補齊的地方: - 變成怎樣的c library - 系統圖的每一個部分都要對應到某一個module或library(storage -> ROM driver, crypto -> mbedTLS) - 想東西要存在m2354哪裡,怎麼存 (ROM, driver) - 要怎麼存 (ROM driver) - android (sqlite) (crypto, data format)在simulate的時候就要有 - 硬體那邊的threat 也要列出來 - 排一個時間表和分工表 - 出廠前的安全機制 - 確保可以對到我們的open source - 多數決(rule)要在有說服力一點 ### 建議 沒有設計目標 知道目標後架構還是稍微簡略 細節還是不夠多(ticket, 通訊協議) 蔡老師聽不懂(講給外面的人聽不懂) ### next week - 時間表分工表 - 內部以及外部文件 - 下次要有**task表,時間表,分工表,兩個報告(對外,對內)** ## 分工 - 涂幸宸: - [x] 外部報告 - [x] 出廠前的安全確認M2354 - [x] 硬體的threat model - 林and張: - DATA MODEL 和 FLOW 之間的關係 - ticket format 都要擺出來 - 系統圖的每一個部分都要對應到某一個module或library(storage -> ROM driver, crypto -> mbedTLS)(m2354) - 想東西要存在m2354哪裡,怎麼存 - 寫code (c++) - 吳: - 系統圖的每一個部分都要對應到某一個module或library(storage -> database(SQLite, Firebase, etc.), crypto -> java.security)(Android) - 寫code(Java) - 問題: 實作時如何處理eID - 陳: - 出廠前的安全確認 - 多數決的rule ## 7/16 - 把之前的一些建議補進來這裡 - 遇到的問題 - 去看一下其他paper的spec怎麼寫的 - 慢慢做成之後要報告的樣子 - 有甚麼章節(有甚麼問題,怎麼解決)(spec(結案報告)) - **要把分工再分的細一點** - 把大的framework先build起來 - 再分下去填填看 - 一次包含很多選舉怎麼辦 - 目標選舉成功或失敗 - 讓一堆人都可以破壞這個選舉穩定性->很怪 - 討論人不相信機器可以先不用(這是更大的問題) - 要討論機器去看自己有沒有問題 - ### 建議 - ppt易讓人誤解(n-1/n) ## 7/22 (外部報告) ### 念祖 - 詳細講解potential threats那邊 - 可能會想知道為什麼安全 - 主動分析為什麼我們的系統是安全的比較好 - u-guard來的太突然,跟e-voting的連結 - self-storing(自己的資料要被誰取用)可以強調 - 感覺可以說明在e-voting中eID和u-guard的作用 - 漏掉admin設定config時搞鬼怎麼辦 - 縮短overview ### 奕君 - 專題評審 -> 6~8分鐘 - 要把這個presentation弄得完整一點 - 要報告進度就報告進度,讓教授找bug - 和問問題要分開 - 一開始提到的requirement,後面要有提到 - 人力成本 - 時間成本 - 公開性 - 安全性 - 匿名性(可以和threat model連起來) - 可驗證性 - 架構鬆散(要把key point 提出來) - 什麼是evoting - 現在的evoting或普通的voting怎麼了 - 我們用了什麼方法解決 - 手機+m2354這套系統怎麼樣怎麼樣比較好 - 可以怎麼解決前面的問提 - 我們的方法真的可以解決(驗證) - 大部分實作原理講解果就好 - 可以把**匿名性和可驗證性**如何在我們的project體現 - 參考別人的書面報告和簡報(柏翰) - 照著學長給的系統圖(改成我們的版本)從新分配時間 我覺得可以照這個大綱 Motivation/Key Issues(投票的原則們) Problems(現行投票or電子投票的問題) Background and Related Work Solutions(把前面提到的問題說明我們如何解決) Threats分析(說明我們的系統如何確保投票原則) Applications/Possible Extensions ## 7/30 (外部報告) ppt:[連結](https://docs.google.com/presentation/d/1f6EC9rYp9_-YBYUqbMnsTZGVbWyE-JFd/edit?fbclid=IwY2xjawEVuntleHRuA2FlbQIxMAABHfzW27QMUPm6urHklGiIbEU2dN9hhMBmpzDc_13YXg4b-7rIsfpZQhjQVw_aem_Y1-tN9jBG25QOv3-zfoiXA#slide=id.p1) ### 柏漢 - 要解決的痛點只有兩個太少([page 3](https://docs.google.com/presentation/d/1f6EC9rYp9_-YBYUqbMnsTZGVbWyE-JFd/edit?fbclid=IwY2xjawEVuntleHRuA2FlbQIxMAABHfzW27QMUPm6urHklGiIbEU2dN9hhMBmpzDc_13YXg4b-7rIsfpZQhjQVw_aem_Y1-tN9jBG25QOv3-zfoiXA#slide=id.g2159a971341_0_932)) - PPT看起來很白 - 每一頁ppt之間可以有連接 - 不要放一堆字,用圖表示(可以放新聞標題再口述細節)([page 5](https://docs.google.com/presentation/d/1f6EC9rYp9_-YBYUqbMnsTZGVbWyE-JFd/edit?fbclid=IwY2xjawEVuntleHRuA2FlbQIxMAABHfzW27QMUPm6urHklGiIbEU2dN9hhMBmpzDc_13YXg4b-7rIsfpZQhjQVw_aem_Y1-tN9jBG25QOv3-zfoiXA#slide=id.g2ef16825263_0_127)) - ![image](https://hackmd.io/_uploads/rJ5mA8UYR.png) - 紅外線的點點 - approach可以從更high level地方開始講(不要直接放u-gaurd) - FSM放在後面感覺比較合理一點 - 聽的人想要聽甚麼(痛點)(遇到甚麼技術上的問題) - 講清楚問題在哪還有我們怎麼解決(由大到小) ### 念祖 - e-voting有甚麼問題讓大家反對 - 對給出的範例再給一頁來解釋為啥他們不信任(page 5) - 沒有說怎麼解決隱私性的問題 - 簡報方面沒有說到 ### 奕君 - 研究現有電子投票系統 - 先講什麼是投票>再講投票的問題 - 給的不具體(沒有流程圖) - (提出的問題怎麼確定夠完整)我們提出的問題要去查一下文獻,看其他人要怎麼說([page 3](https://docs.google.com/presentation/d/1f6EC9rYp9_-YBYUqbMnsTZGVbWyE-JFd/edit?fbclid=IwY2xjawEVuntleHRuA2FlbQIxMAABHfzW27QMUPm6urHklGiIbEU2dN9hhMBmpzDc_13YXg4b-7rIsfpZQhjQVw_aem_Y1-tN9jBG25QOv3-zfoiXA#slide=id.g2159a971341_0_932)) - 需要一個投票的圖,不是ureka([page 8](https://docs.google.com/presentation/d/1f6EC9rYp9_-YBYUqbMnsTZGVbWyE-JFd/edit?fbclid=IwY2xjawEVuntleHRuA2FlbQIxMAABHfzW27QMUPm6urHklGiIbEU2dN9hhMBmpzDc_13YXg4b-7rIsfpZQhjQVw_aem_Y1-tN9jBG25QOv3-zfoiXA#slide=id.g2cd3c762c76_0_120)) - 整個系統的細節都要再圖裡面(技術細節) - 方法的部分還要再完善一點(對比?,) - 可信投票機器、protocol 要講的技術點 - 不要讓別人覺得我們隨便做做 - voting senerio 不要說我們目前只做董事會,就說我們只是為了好展示所以限縮範圍([page 12](https://docs.google.com/presentation/d/1f6EC9rYp9_-YBYUqbMnsTZGVbWyE-JFd/edit?fbclid=IwY2xjawEVuntleHRuA2FlbQIxMAABHfzW27QMUPm6urHklGiIbEU2dN9hhMBmpzDc_13YXg4b-7rIsfpZQhjQVw_aem_Y1-tN9jBG25QOv3-zfoiXA#slide=id.g2159a971341_0_498)) ## 8/6 跟教授報告流程 : 1. 時間表 我們目前做了什麼 之後要做什麼 2. PPT展示 PPT: [連結](https://docs.google.com/presentation/d/15mAh4I_SAKkABZKwDdLEDiPb5JyvqyRj/edit?fbclid=IwY2xjawEe71VleHRuA2FlbQIxMAABHWt_BQ36VMM6jk5u7hCwGmEUJ78HSsO7vo44jR6aYv6Srbcf41NjMnVQRQ_aem_skC_jJtYyXW-I7nUzydJww) 3. 問題與討論 - 對簡報的建議 - Rule問題 ### 奕君 - approach 是啥 - 跳blockchain好奇怪 - 比較pros and cons 怪怪的,沒有順序性 - 傳統 -> 電子(local or 雲端) -> 區塊鏈 > 阿為啥我們用local電子加上區塊鏈 - ***要有一頁做出全部的比較的表格*** - 成本想一下 - 印尼比印度大(X) - 我們做了一個比傳統系統還爛的題目 QQ - 不要講得我們的東西很爛 - 我們的重點是投票機 和ureka (區塊練少講點) - 流程圖給出來才能解釋後面的技術細節 - ex: 不是每一個人撿到都是可以用的 ### 柏漢 - page3. 附來源 - page 6 好像evoting缺點很多?(林:但確實很多啊) 要講的好像瑕不掩瑜。 建議放在介紹evoting那頁,不然銜接怪怪的 - block chain要放在implementation(不要放imple第一頁) - approach, implementation好像混在一起了 - page 15沒有標題 - 標題標題 - ![image](https://hackmd.io/_uploads/B1SuFq1q0.png) - workflow 隱藏起來擺後面 ### 念祖 - :smile: - - 匿名性講得不錯,但安全性就比較不足 ## 8/8 ### 奕君 - 現在voting有什麼問題可以用e-voting解決->我們的e-voting可不可以更好 - 口頭有講了,但是可能要放個投影片 - 傳統 -> 電子(local or 雲端) -> 區塊鏈 > 阿為啥我們用local電子加上區塊鏈 - 發展要一層一層說下來 - 區塊鏈只是一個附加的,要把前面的邏輯說完整 - **主軸應該是我們要去信任那個voting machine** - 我們要著重在voting machine驗證可信度 - app 裡面加rule反而是其次 ### 柏漢 - page 3 - blockchain那邊可以修一夏 - 花太多篇幅在講別人的blockchain existed solution - 提到概念就好不要講得太仔細 - 印度的evm 其他的實體電子投票機要去survey一下 - 流程要在改一下 - 先把直觀的解決方法接在別人的問題的後面 ### 念祖 ### 老師 - 為什麼要這個東西要講清楚 - 到我們的做法那邊跳太快 (page ) - **為什麼**要分三個 : 講為什麼醬做最重要 - 要用一個present的技巧把它分簡單講過去 - 用現實的傳統的投票狀況下去帶到我們的解法(用現有的問題去帶到我們改進的問題) - 現有的voting machine有什麼問題? (用一句話就好) - (傳統):現有傳統的是不可信任的 - (我們):所以要證明我們是可信任的 - voter的問題? - (傳統):是不是legal voter的問題 - (我們): - admin的問題 - (傳統):現有傳統的是不可信任的 - (我們):所以要證明我們是可信任的 - eid比較複雜 先不要考慮太多 以董事會來說 - 把名單放進去 - admin把我們要投票的人的Public key進去 - admin去eid 那邊找那些public key - 驗證 - 假投票 - 不適在名單上的也去頭頭看 - 更多的challenge - 正式 - admin config 把合法的名單將進去 - voter 找 admin 拿uticket, admin verify 後就給 - voter 那u票去投票 - machine 會去verify在不再名單裡面 - player 是不是可能重複投票 - 結束 - admin發一張計票的U票給machine - tally玩打rticket給admin - R票用大法官的key去加密(可以去看誰投給誰) - 要透過公開程序 - 這是advanced - 感覺是不用去在用app再去challenge????? - **懷疑機器內部的問題怎麼解決** - 假投票 - 還有人懷疑怎麼辦???(advanced problem) ## 8/13 ref: [Report](https://docs.google.com/presentation/d/15mAh4I_SAKkABZKwDdLEDiPb5JyvqyRj/edit?fbclid=IwY2xjawEoKbRleHRuA2FlbQIxMAABHbthcbqbdPHsjVXEx_CbD5LPHZP_8HrYxduA7DSe-ybh0GxE0mM9UVhgsQ_aem_IC9WaX7pS_Y-nzL0S80X9Q#slide=id.p1) ### 奕君 - 傳統投票 - 要講現況(大多數都是紙本) (用地圖那張) - 人事費用便宜 - 缺點(除非票數近沒有人會驗票) - 沒辦法快速開票 (人多) - 說服人家為甚麼要往e-voting前進 Question: 印尼是用甚麼投票 - 他們可以能很像要用電子投票 ![image](https://hackmd.io/_uploads/rkq8ApO5C.png) - 改一下這個[table](https://docs.google.com/presentation/d/15mAh4I_SAKkABZKwDdLEDiPb5JyvqyRj/edit?fbclid=IwY2xjawEoKbRleHRuA2FlbQIxMAABHbthcbqbdPHsjVXEx_CbD5LPHZP_8HrYxduA7DSe-ybh0GxE0mM9UVhgsQ_aem_IC9WaX7pS_Y-nzL0S80X9Q#slide=id.g27a158164f4_0_0) - 縱軸是屬性,橫軸是方法,裡面打勾打叉 - 一開始沒有show我們的方法 - 然後最後解釋完之後再跳同一張圖並把我們的方法加上 - Goal要明確一點 - 講細一點(如何達成) - 要著重在哪 - implementation前面要有design的重點[page 11](https://docs.google.com/presentation/d/15mAh4I_SAKkABZKwDdLEDiPb5JyvqyRj/edit?fbclid=IwY2xjawEoKbRleHRuA2FlbQIxMAABHbthcbqbdPHsjVXEx_CbD5LPHZP_8HrYxduA7DSe-ybh0GxE0mM9UVhgsQ_aem_IC9WaX7pS_Y-nzL0S80X9Q#slide=id.g27a19024da8_0_134)要提前把我們所用的技術先講出來做一個overview - tee - verify(工廠) - ... - evaluation那一頁放一張表 ![image](https://hackmd.io/_uploads/ByzUq0_9C.png) ### 柏漢 - method, design, idea 講出來 (在high level最重要)(page 11後面連接) - 強調你的結果 idea? ### 念祖 - security 是一個很大的屬性,可能要再細分成更精準的用字 - 甘特圖以任務為導向 ## 8/25 可參考柏漢的影片:https://youtu.be/X5HdeOsgGUg?feature=shared ### 奕君 - 表其實還不錯 但是要具體疑點像是便利性(可以拆成 可以remote...) - 並且要加上原因 - 另外再一個表示重點我們要解決的 ### 柏漢 - [page 29, 10] 表格 fast slow medium的標準在哪(要定義清楚) - secrecy 的標準有沒有達到之類的?? - 可以用勾勾或叉叉來表示(有或沒有) - 為什麼要列出Money 不是一個需要考慮的項目 - 可以參考別的voting paper的criteria ### 念祖 - [page 11] 可以加上我們這個特色是要解決上述哪個問題 - [page 29] 可以再次用文字的方式說明我們解決了那些痛點 - 離線,trust。透過找文獻說明為甚麼我們要這樣做 ## 8/12 ### 奕君 - 要有正確性匿名性,透明性有點曖昧 ### 念祖 - remote 搭叉叉觀感不好,想一下怎麼優化這裡 11/5 簡報問題 1. 標題沒有破題 : 有什麼突破性的方法解決現行E-Voting的問題 * 作票/隱私性/強制投票 * 為什麼TEE可以解決這個問題 2. 紙本投票簡要提一下就好,現在也開始用電子投票 3. 回到作票/隱私性/強制投票的問題,專注全國性投票。去掉cyber attack,因為大家都會受攻擊 4. 跳太快,因為還不知道問題跟解決方法。要根據問題寫解法,再帶出細節 * 要講出選M2354的原因是因為他有哪些特性剛好符合我們系統需要的 5. 為什麼要分成這三個角色?為什麼有區塊鏈? * 三個角色 -> 三權分立 * 用access control,並都有訪問紀錄 * 要講出道理 6. 把為什麼這樣做簡單說一下比單純陳述好 7. 同6 * 用challenge-response確定voter身分等等 8. 從user來看系統呈現很簡單 9.