<!-- //書本模式 -->
### 資訊安全期末報告
## 區塊鏈與資訊安全

##### 第十七組
##### 資科四 107703024 邱品晴
##### 資科四 107703052 張力文
##### 資科三 108703051 謝惟寧
---
### 目錄
1. 區塊鏈
1-a.區塊鏈的原理
1-b.區塊鏈的特色
1-c.區塊鏈的應用
2. 駭客攻擊區塊鏈的手法
2-a.攻擊資料層
2-b.攻擊網路層
2-c.攻擊共識層
2-d.攻擊應用層
---
## 區塊鏈

----
## 區塊鏈的原理
----
### 簡化版區塊鏈DEMO
https://andersbrownworth.com/blockchain/
----
### 區塊鏈lv1~區塊鏈lv6
1. sha256
2. block
3. blokc chain
4. block chain + P2P
5. block chain + P2P + 交易紀錄
6. block chain + P2P + 交易紀錄 + 數位簽章
----
#### lv1: sha256
可以將任意長度的文件訊息資料
壓縮成只有160位元的固定長度

----
#### lv2: block

規定: 只有以4個0開始的hash值才是合格的block
----
#### lv2: block

規定: 只有以4個0開始的hash值才是合格的block
----
#### lv3: block chain

前一個block的hash值會是
下一個block的prev值
----
#### lv3: block chain

##### 如果前一個block的data值有改動
##### 就算有已經重新mine過前一個block
##### 下一個block也會因為prev值有變
##### 使得下一個block是不合格的
----
#### lv4: block chain + P2P
<!-- P2p簡介 圖 -->

----
#### lv4: block chain + P2P



----
#### lv4: block chain + P2P



<!-- 改圖 -->
如果派大星對他自己的那條block chain動了手腳
就算他對全部的block都重新mine過了
它最前面的block的hash值還是會跟大多數人的block不同
在共識機制下,派大星的block會被淘汰
----
#### lv5: block chain + P2P + 交易紀錄
##### 在之前的block chain內存的都是無意義的字串

##### 這個版本的block chain則可以存好幾筆交易
----
#### lv5: block chain + P2P + 交易紀錄 + coinbase

我們記的交易內容只有誰給誰多少錢
在追帳的時候,將無法確認給錢的人到底有沒有那筆錢
為此,也紀錄誰擁有多少錢這項訊息
----
#### lv6: block chain + P2P + 交易紀錄 + 數位簽章
(最接近區塊鏈的版本)

使用公/私鑰製作幫交易紀錄製作數位簽章
<!-- 這樣即使該交易紀錄被篡改,
但是因為駭客不知道我我們的私鑰
所以該筆交易紀錄的簽章經過驗證後會是無效的。
-->
----
#### lv6: 使用數位簽章的好處
##### 如果有人想將
##### alice給bob 300彼特幣
##### 改成
##### alice給bob 10000彼特幣
###### 這筆交易的signature將會需要重新簽署
###### 而駭客並沒有alice本人的private key
###### 在使用alice的pubic key驗證新的signature後
###### 將發現這筆交易不是alice本人同意的
---
### 區塊鏈特色

<!-- 1. 去中心化
2. 不可竄改性
3. 匿名性
4. 共識機制
5. 加密 -->
----
### 區塊鏈特色: 去中心化
Decentralize
無需第三方介入,任何人都可以訪問整個資料庫及其完整的歷史記錄

<!-- 透過各獨立運作之節點分散儲存同一資料,
並利用演算法來進行資料同步,分散儲存於多個節點
以確保數位證據儲存的安全性。 -->
----
### 區塊鏈特色: 不可竄改性
Incorruptible
一旦數據寫入到區塊鏈 ,
任何人都無法輕易擅自更改數據信息

<!-- | |目的 |
| -------- | -------- |
| 1. | 保障資料庫的資料完整性 |
| 2. | 為了確保全程不可逆的操作與活動紀錄可追溯 | -->
----
### 區塊鏈特色: 匿名性
Anonymous
各區塊節點的身分信息不需要公開或是驗證
<!-- • 節點使用一組「英文+數字」的代碼
作為名稱 -->

----
### 區塊鏈特色: 共識機制
維護系統的運作順序與公平性,統一區塊鏈的版本
獎勵提供資源維護區塊鏈的使用者
• Proof-of-Work(PoW)
典型案例:比特幣
• Proof-of-Stake(PoS)
典型案例:以太坊
----
### 區塊鏈特色: 加密
Encrypted
用戶用於接收和發送數字貨幣的地址、公鑰和私鑰
都是通過使用非對稱或公鑰加密來創建的

<!--
| |目的 |
| -------- | -------- |
| 1. | 保護機密訊息 |
| 2. | 驗證發信者身分 | -->
---
### 區塊鏈應用
1. 比特幣
2. 以太幣
3. Defi
4. NFT
5. 產業應用
----
#### 區塊鏈應用 比特幣
第一個加密貨幣,2009年1月3日,創世區塊誕生。
比特幣協定數量上限為2100萬個,以避免通貨膨脹問題。
允許個人直接支付給他人,不需經過如銀行、清算中心、證券商、電子支付平台等第三方機構,
任何使用者只要擁有可連線網際網路的數位裝置皆可使用。
<!-- 避免了高手續費、繁瑣流程以及受監管性的問題, -->
----
#### 區塊鏈應用 比特幣
##### 使用方式:
下載比特幣錢包這個軟體
產生比特幣地址(公鑰)
並妥善保存私鑰
----
#### 區塊鏈應用 比特幣
##### 特色: 工作量證明

欲交易者在使用私鑰簽署完成後
向P2P上的其他節點廣播
其他節點會幫忙驗證
驗證成功後,等礦工找到使得該區塊合格的字串後,才會生成一個新的區塊
<!-- ----
##### 特色: 工作量證明
在礦工找到nounce值之後,才會生成一個新的區塊
在新的區塊生成之後,也需要將這個區塊向P2P上的其他用戶廣播,
獲得足夠多的確定之後才算挖礦成功,礦工可以獲得比特幣
-->
----
#### 區塊鏈應用
### 以太坊
以太幣是市值第二高的加密貨幣,僅次於比特幣。
使用區塊鏈技術,利用「志願者」運行節點來提供計算服務。

----
#### 區塊鏈應用 以太坊
##### 權益證明 (proof-of-stake):
不消耗大量電力、能源來取得新的區塊,
而是消耗大量的權益(金錢)來取得新的區塊。
(必須花錢購買加密貨幣,並將這些加密貨幣抵押在智能合約中。)

相較於工作量證明更有效率,可節省大量在挖礦時浪費的電腦資源。
----
#### 區塊鏈應用 以太坊
##### 智慧型合約 (smart contract):
儲存在區塊鏈上的程式,由各節點執行,需要執行程式的人支付手續費給節點的礦工或權益人。

開發者可以透過撰寫智能合約來開發Dapps(去中心化應用程式)
如同ios上app store上的app
Dapps的後端是跑在區塊鏈上的app
而Dapps的前端要使用什麼平台都可以
----
#### 區塊鏈應用 Defi
(Decentralized Finance)

寫在區塊鏈上的金融服務系統,
在這套系統上的買家、賣家、甚至貸方、借款人,都能進行點對點、不受中心監管的金融活動。
----
#### 區塊鏈應用 Defi

<!-- ----
#### 區塊鏈應用 Defi
<!-- 特色:
更有效率:移除競租(rent-seeking)壟斷的金融中介者
更開放、更普及的金融服務
透明性:任何人都能藉著智能合約來進行開放的交易
免監管、抗審查
不同金融服務更容易整合
DeFi交易速度通常都比CeFi快很多(如貸款審查、撥款過程)
-->
----
#### 區塊鏈應用 NFT
(non-fungible token)
讓人在虛擬世界裡,得以享有、保障財產的所有權

----
#### 區塊鏈應用 NFT
NFT舉例:

###### dodge的原圖價值$1億2千萬台幣
----
#### 區塊鏈應用 產業應用
供應鏈管理
與經過適當驗證的業務實踐相結合,區塊鏈提供可審
計的方法來記錄供應鏈。
健康/醫療記錄
區塊鏈有可能以比以前的方法更輕鬆的方式標準
化跨供應商的安全電子醫療記錄共用。
---
#### 區塊鏈跟傳統中心架構的比較

----
###### 區塊鏈跟傳統中心架構的比較

---
### 駭客攻擊區塊鏈的常見手法

<!-- 分層圖 -->
<!-- 
-->
----
### 資料層上的攻擊
<!-- 圖 -->

----
### 資料層上的攻擊
駭客主要目標:拿到使用者的私鑰
1. 惡意軟體
2. 釣魚攻擊
3. 不安全的網路位址
4. 粉塵攻擊
(駭客和詐欺者會試圖透過向比特幣及加密貨幣用戶的個人錢包發送少量的代幣,從而破壞其隱私權。然後,攻擊者會追蹤這些錢包的交易活動,並對多個位址進行綜合分析,以辨識出每個錢包背後的個人或公司。)
----
### 網路層上的攻擊

----
### 網路層上的攻擊
1. 阻斷服務攻擊(DDoS)
2. 洪水攻擊
3. BGP狹持攻擊(駭入IPS業者,透過誤導DNS地址,將流量導入錯誤的網站)
----
### 共識層上的攻擊

符合你的遊戲規則,但是它太強,所以可以做出很破格的事情
51%攻擊
----
### 共識層上的攻擊
1. 51%攻擊
2. 雙重支付(Double Spending)
3. 女巫攻擊(Sybil Attack
----
#### 共識層上的攻擊
### 51%攻擊

惡意礦工用他所有的幣買了一台車。在真實的區塊鏈上,
他的比特幣現在已經用完了。但在他的秘密版區塊鏈上,他並沒有將這筆交易打包
因此,他仍然擁有那些比特幣。
----
#### 共識層上的攻擊
### 51%攻擊

區塊鏈存在著最長鏈共識,
簡單來說,如果網路中出現兩個版本的區塊鏈,
全網礦工會選擇最長的那一條為準。
----
#### 共識層上的攻擊
### 51%攻擊

如果惡意礦工擁有超過51%的算力,
他就有較大的機會比其他礦工更快地將區塊添加到區塊鏈。
當惡意礦工創建的秘密區塊鏈比真實區塊鏈長時,
他就會突然將這個版塊的區塊鏈廣播到網路上,
其他礦工會發現這個區塊鏈版本比他們正在處理的版本更長,
協議便會誘使他們切換到這個鏈,秘密區塊鏈因此被視為真實的區塊鏈。
----
#### 共識層上的攻擊
### 雙重支付:

買方使用同一個比特幣進行2次交易
在分散式的系統中可能會有一部份的人也接受了第一筆交易,
在分散式的系統中可能會有一部份的人也接受了第二筆交易,
區塊鏈將會進行臨時分叉,而最後只會有一個最長的鏈將會被留下來。
----
#### 共識層上的攻擊
### 女巫攻擊
攻擊者創一大堆分身,影響共識機制的判斷。

----
### 應用層上的攻擊

----
### 應用層上的攻擊
利用第三方開發者漏洞

The DAO創投組織採用了以太坊技術,建立了一個智能合約平臺,
在2016年被駭客成功攻擊了,盜領了約370萬個以太幣,約等於5,000萬美金。
該次攻擊跟他們使用的smart contract沒有關係,而是一位開發者留下的漏洞
可以被無窮迴圈一直提款,
最後採用應分岔的方式,強行改寫被盜領的紀錄。
---
謝謝大家撥空觀賞
---
組內分工
資料整理、投影片製作:邱品晴、張力文
上台報告:謝惟寧
---
參考資料
• https://www.mirrormedia.mg/story/20190221mit004/
• https://www.informationsecurity.com.tw/article/article_detail.aspx?aid=8649
• https://ictjournal.itri.org.tw/Content/Messagess/contents.aspx?MSID=74425
75 57510131250&MmmID=654304432061644411
• https://www.inside.com.tw/article/14304-p2p-decentralized-
blockchain- bitcoin
• https://www.ithome.com.tw/news/139472
• https://www.rayskyinvest.com/13163/blockchain-information-
security-hacker
• https://www.chainnews.com/zh-hant/articles/199419572838.htm
{"metaMigratedAt":"2023-06-16T17:36:24.407Z","metaMigratedFrom":"YAML","title":"Untitled","breaks":true,"slideOptions":"{\"transition\":\"slide\",\"slideOptions\":null}","contributors":"[{\"id\":\"fd8753d8-d3f1-42d1-9d9c-3068882df242\",\"add\":13863,\"del\":5826}]"}