# Blockchain Introduction
2020 Fall, CSIE 5300, Tue A:18:30-19:20, BC:19:30-21:10, at DT 德田 R104
To add or audit(courseauditors@gmail.com), please come to the first lecture to know the course.
We adopt [NTUCOOL](https://cool.ntu.edu.tw/courses/3845) in class but no remote lectures.
[:point_up:](https://hackmd.io/4B8EfN00SrisMcrKis_m9g) up layer
[:point_left:](https://hackmd.io/nq-45tR2Rr2HAnu9KFftOA) last year
## Forum
* [Lecture Notes](/QMdKVF_0R3WpBTopqkt-TQ?view)
* [Myth Correction](https://hackmd.io/q5oRmL0YSzy99zdfsBbKFw)
* [Neutral Number Theory](https://hackmd.io/QMdKVF_0R3WpBTopqkt-TQ?view#Neutral-Number)
* [Benevolence License](/KpMx2d-wQd2t_gwQ97D9Cg#Benevolence-License)
* [OurForum](https://hackmd.io/_1GglHblRlu8fICR-koWFA?view), [Blockchain Forum](https://hackmd.io/Nv9zOaytT0ukfa6dA3YWWw?view)
## Announcement
* 0915: Lectures begin. Please group in NTUCOOL. CSIE_guest WiFi access is posted in NTUCOOL.
* 0922: Classroom moves to 德田 104.
* 1021: Create your team notes using HackMD's [team space](https://hackmd.io/s/tutorials#Team-Space). Make a public team note to share your Issue Campaign, Proposal, and Project.
* 1105: Midterm on NTUCOOL. Take home. Due 11/11 11:59PM.
* 1212: send email by individual before 1/17 to TA of letter grades for peer appraisal of each team on Campaign Issue and Project Demo such as
```
Group 1 2 3 4 5 6
Issue A B- C D F A+
Demo D C B- A A+ F
Member A- B+ C D F, leader(inclusive) only, on the name order of demo page.
```
* 0121: [Final scores and grades](https://drive.google.com/file/d/1ZLEd220KGyp1L-0z5ZBlEYN8VRAu51wZ/view?usp=sharing). NTU COOL scores will be updated later. Final grades will be submit by 1/25. Happy New Year!
* 0125: Grades in NTU COOL are updated. Scores there might be truncation error.
## Homework
* Download bitcoin source code, compile it, and run it.
* Suppose many people throw many-face dices in many rooms. The one with the hash value of the number thrown and room ID les than or equal to some number target wins, i.e. SHA256(number thrown, room ID) ≤ target. How do we estimate how many times the winner threw?
* Each team builds a paper tower with 10 A4 used paper in 10 minutes using only hands, with no tape, glue, knife … The higher, the better. Send a photo < 3MB and a text file, the smaller, the better, (to a blockchain) to prove your work.
## Projects
* BlockChain
* Forum
* Browser
* Consensus
* TPS
* Hot/Cold IPFS
* GDPR
* Return Policy
* Cash/Interest
* Cross Chain
* Distributed Exchange
* Liquidity
* Barter
* OurChain
* STO
* ZKContract
* Lightning Network
* Offline Transaction
* GrandChain
* 祖鏈, 公公鏈
* ChainFoundry
* ChainBook
* ChainProject
* Fintech
* Insurtech
* Regtech
* Legaltech
* Suptech
### Reports
Team | 1 | 2 | 3 | 4 | 5 | 6 |
-------- | -------- | -------- | -------- | -------- | -------- | -------- |
Campaign Issue |[區塊鏈就是分散式的雲端資料庫?](/q5oRmL0YSzy99zdfsBbKFw#8-區塊鏈就是分散式的雲端資料庫?) | [區塊鏈一定有區塊嗎?談談 IOTA](/q5oRmL0YSzy99zdfsBbKFw#4-區塊鏈就是分散式的雲端資料庫?) |[使用區塊鏈就比較安全嗎?討論分散式系統的挑戰](/A38a5jJDTJya9VKiKaFVfQ)|[運用區塊鏈儲存的資料一定正確嗎?](/q5oRmL0YSzy99zdfsBbKFw#5-運用區塊鏈儲存的資料一定正確嗎) |[區塊鏈一定要去中心化嗎?](https://hackmd.io/q5oRmL0YSzy99zdfsBbKFw#6-區塊鏈一定要去中心化嗎) | [區塊鏈完全匿名?](/q5oRmL0YSzy99zdfsBbKFw#7-區塊鏈完全匿名) |
| 個評 |A+, 言簡意賅, 出處與格式可再加強 |C, 遲交, 連結不對, 內容不實, 沒有修正, 將予刪除|A-, 遲交, 錯字, 宜突顯自己想法與解法 | B, 老生常談, 太簡短 | A-, 連結不對, 去中心化不只為了抗審查, 還是信任的來源 | B+, 老生常談, 太簡短 |
| Proposal |[Group1](/WX6G0KGFSYeDN2lkWydZEQ)|[Group2: Angio](https://hackmd.io/NoyUadqDTzieavKJW0D5oQ)|[Group3: Dual offline payment](/dtpVZnPrTd6Lys_cLfBe-Q?both)|[病例共享](/VPIJuf2QROa7ntrGTTpXJQ)|[Group 5](/OwPpw9z7QIut4MW-FRm6-g?both)|[Group 6](/@csie5300-109/ryYJP10DP)|
Presentation order |12/22 | 11/17 |12/1|11/24 |12/15| 12/8 |
Presentation slides | [slide](https://docs.google.com/presentation/d/1bd-XZNcnYT-h0Pgi0bLUG303RWShktErxB7iJkyqHFc/edit?usp=sharing) | https://hackmd.io/VvfPU-9sR02-u8OsxDUFRA?both |[Group3 Presentation](/dtpVZnPrTd6Lys_cLfBe-Q?both)|[link](/VPIJuf2QROa7ntrGTTpXJQ)|[Group5 Presentation](https://hackmd.io/OwPpw9z7QIut4MW-FRm6-g)|[Slide](/@csie5300-109/ryYJP10DP)
Demo slides| [slide](https://docs.google.com/presentation/d/1CJ65WFLXq3a3mmcgSAJt5zS1tYWRUTM5DhXZ6SMDLiQ/edit?usp=sharing) |[slide](https://hackmd.io/T_fj68u6TkyAGwCuxp85AA)|[slide](https://drive.google.com/file/d/1TZ14jX3K3-GcDz76R4CemcpRDPDskYxx/view?usp=sharing)|[slide](https://onedrive.live.com/edit.aspx?resid=E926F7DDB6984A49!5296&ithint=file%2cpptx&authkey=!AEeMfztif5q2YTE)|[slide](https://docs.google.com/presentation/d/1WeqApA6ZxgM5oaEhyEDLzRXxm1xNNEQ5_2BAbaRHFjQ/edit?ts=5ff56d9c#slide=id.gb3b5bf5eba_0_65)| [slide](https://docs.google.com/presentation/d/1-gfaPn5-TMtPwMoJ1LSthvMGQXDjVOscHyb4uERYb0w/edit?usp=sharing)
Demo Video | [黏著幣](https://drive.google.com/file/d/1d3Ab5F0z0T2rJWErOHbY4z6lu7o1g5uk/view?usp=sharing)| [Angio 幣](https://drive.google.com/file/d/1dBP5wMQMPypSPQRsgQ7Xukeq-epBHAUy/view?usp=sharing) https://youtu.be/9qKEfP3fT48 | [換匯1](https://drive.google.com/file/d/1dCLzEQMgloYnAIe3YFZJMkYx5WO_b4BI/view?usp=sharing)[,2](https://drive.google.com/file/d/1dDrVzDwQ8rI6CEqeqAClA0sWdb3cylFw/view?usp=sharing)| [電子病歷](https://drive.google.com/file/d/1dEC06P3XC0_AxA2Wu4vOJL2Wv_FBuG06/view?usp=sharing) | [假新聞防治](https://drive.google.com/file/d/1dFX_1dbhs98FRcD0WtjhdwOwE-29L9JA/view?usp=sharing) | [PoS](https://drive.google.com/file/d/1dFX_1dbhs98FRcD0WtjhdwOwE-29L9JA/view?usp=sharing) |
|內容|A+|A|A|A+|A+|A-|
|表現|A |A+|A|A|A|A-|
|投影片製作|A|A+|A+|A|A-|A-|
|根的使用|A|A-|A|A-|A|A-|
|個評|體:服務, 用:黏著; 以用為體要更一般化, 如各種服務通用的品牌黏著幣; 隨機挖礦等同與不同步挖礦; 價值不會無中生有, 一定是累積而成。|體:臍帶血, 用:證券; 宜深入證券化的臍帶血 在設計與使用上有何不同, 實作與臍帶血無關的相關訊息錢包, 並沒有解決新問題, 能開源錢包更有貢獻; 與保險如何聯通的說明不夠。 |幣的價值只能發生在本鏈中, 移轉他鏈前要先凍結, 不同幣種跟同一幣種的流動性管理 都是難度高可深入探討的問題, 跨鏈要先解決同步的問題。|體:角色, 用:識別; 賦予ID角色的特性 有助於緩解去識別化的問題, 去識別化無法一般化解決, 只能針對應用特性分層級解決; 各(公私)醫院資料欄位不可能統一格式; 退群不是辦法, 只能以誘因招攬; 與保險結合不是簡單問題。| 假新聞體用混合區分不易, 新聞要經過整理與編輯 是創作不是紀錄, 心定不偏最難, 作假有其目的, 從目的來破才不會防不勝防; AI 與 NLP 怎麼做進區塊鏈來用要先釐清, 但都無法完全解決假新聞的問題, 降低假新聞的曝光度(確定真新聞才報導且有獎勵)應該是方向。| 完全隨機亂數函數不存在, 有模擬就有失真, 區塊鏈信任的來源重點 在無人為操控並非在完全隨機, Hash 也不是完全亂數, 但是One-way難可逆, 可提供無人為操控夠隨機的分散式信任; 金融犯罪假假真真, 假 stake 五花八門防不勝防, 多個 stakes 不會比較去中心化, 多個莊家還是中心不可靠。|
|總評|缺乏數字數據與實作, 體用不分; 代表每個人的通用自主 ID 是第一步;| 續前項, 根不只是最重要的特色, 是用來調整設計面對目標; 一樣的不同滿街都是, 不一樣的同才能突出; | 續前項, 區塊鏈的資料無法進行壓縮減量, 只能整理後封存, IPFS不是萬靈丹; 要先同步時間資料才能同步; | 續前項, 檢驗五善根信勤念定慧 與五毒根貪嗔癡慢疑, 有助於釐清設計目標, 但是本質上還是要深入了解該應用, 訂出數字(最好是公式), 以實值檢驗最準確; | 續前項, 現存的工具如 AI, NLP, 物聯網, 天網等做不進區塊鏈內, 硬做太貴, 以用為體, 只能參考, 同步是問題要先解決, 區塊鏈還是以提供信任為根本的 實踐符合人性之系統平台; | 續前項, 體用不分與倒果為因 是多年來速食教育的結果, 隨手可得的資料、知識、解答或廣告推波助瀾, 錯以為 Google 來的或是多數(錢多)就是對的, 不自覺讓大家慢慢失去判斷是非善惡 與深入問題解決問題的能力與習慣, 這都只會是 k<1 的累積。這個班與課是社會的縮影, 以上所評上課應該都有提過, 可惜懂的不多, 教育制度與社會風氣所造成的學習態度與效果真有問題, 希望我們認真體會勇猛精進, 去惡根學善根, 聽聞→遇碰→看見→知曉→學習→懂得→覺識→做到→悟道→解脫→上岸。歡迎來坐, 後會有期, 謝謝大家(包含沒講話與亂講話的), 新年快樂!|
## Scores
Grading (subject to change):
```
● participation +-5%
● proposal 5% Please post your proposal in your team page
● Forum Discussion 10% (peer-scoring) Team Leader Campaign
● take-home midterm 10% by individual (peer-scoring co-verify)
● Presentation 20% (peer-scoring)
● project result 40% (50% peer appraisal)
● Project report 15%
```
# Documents
* [Course Outline](/JtXJC8-MRiqMVbSqPCDMQA)
## Slides
* Look up in NTUCOOL.
## References
* [build ourchain line by line](https://hackmd.io/Bo8C0LogQfmq_eSuOExr0w)
* [bitcoin wiki](https://en.bitcoin.it/wiki/Main_Page), [source code, bips](https://github.com/bitcoin)
* [Mastering Bitcoin 2nd Edition - 繁中](https://github.com/ChenPoWei/bitcoinbook_2nd_zh/blob/master/README.md), English one can be found therein.
* [Mastering Ethereum - 繁中](https://github.com/ChenPoWei/ethereumbook_zh/), English one can be found therein.
* [區塊鏈原理設計與應用](https://poweichen.gitbook.io/blockchain-guide-zh/)
* Distributed Systems, concepts and design, Fifth Edition, George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair, 2012
* Distributed Systems, design concepts, Sunil Kumar, 2017
* 區塊鏈革命, [2017](https://www.books.com.tw/products/0010753736), [2018](https://www.books.com.tw/products/F014192806).
* [related Talks](http://goo.gl/jHZL3T)
* [OurChain相關教學](/2sQMDW3RRLaubAuXdKPImQ)
* [2018 Blockchain Introduction](https://hackmd.io/7NoLU08gTHeNHXM5v1knyQ)
* Media
* https://www.quora.com/
* https://medium.com/
* https://www.chainnews.com/
* Tools
* [Bitcoin block explorer](https://www.blockchain.com/explorer)
* [Ethereum block explorer](https://etherscan.io/)
* [CC market cap charts](https://coinmarketcap.com/charts/)
* [Bitnodes](https://bitnodes.earn.com/nodes/)
* [Bitcoin Developer Guide](https://bitcoin.org/en/developer-guide)
## TA
* name
* 康譽騰
* mail
* lab408TA@gmail.com
* office hours (請先來信預約)
* 每周二,下午一點到兩點
* location
* 德田館 R408