還是搞不懂區塊鏈?沒關係,至少要會玩DApp!

David YC Tseng
Lootex
Published in
6 min readMar 27, 2018

最早聽到區塊鏈是在玩Bitcoin挖礦時代,幾年過去了,聽到越來越多關鍵字「虛擬貨幣(Cryptocurrency)」、「ICO」、「智慧型合約(Smart Contract)」,區塊鏈的技術日新月異,到底技術圈在熱什麼?跟我們這些沒有碰過比特幣或是區塊鏈技術的人,到底會有什麼關係呢?

好消息是,以上那些詞你都不知道沒關係!但你至少要知道什麼是DApp。

前幾天最近很火的CryptoKittes——用以太幣養貓,以7,000萬美元完成了A輪的融資⋯⋯區區一隻又醜又虛擬的小貓咪可以以~340 萬台幣的價格成交。但確實,還是有許多人不知道怎麼玩。看完這系列的文章,你會了解:

  1. DApp 是什麼樣的概念呢?
  2. 中心化 vs 去中心化的世界觀
  3. 玩DApp之前,要做好什麼準備?
  4. 還有什麼DApp好玩?
  5. 我不想花錢,只想體驗一下怎辦?
完全不會想收藏的但本人還是買了4隻

不管未來的阿貓啊狗,至少要讓大家不・再・錯・過!

DApp 全名為 「Decentralized Application 」

就是去中心化的應用。

DApp = frontend + contracts。也就是以一個網頁或手機的前端介面(frontend),搭配一個以區塊鏈技術實作的智慧型合約(contract)。

“ DApp = frontend + contracts “ reference from ethereum.stackexchange.com

不禁讓人想到App這個詞開始爆紅的時候,你一定也被家裏長輩都會問著個詞是什麼意思吧。我們熟悉的 App = frontend + server,也就是以一個網頁或手機的前端介面(frontend),搭配一個中心化的伺服器(server)。以往我們熟知的Facebook、Instagram、任何網路遊戲和手遊,都是這樣的架構下創造出來的。

“ App = frontend + server “ reference from Client–server model wikipedia.org

這會是兩個世界觀,下面來舉個生活化的例子。

App不好嗎?為何要有DApp

就以Facebook為例子,以使用的角度來探討,若改成「完全去中心化」會變成什麼樣子吧。

首先,現今已有數以億計的使用者,在沒有付錢的情況下瘋狂的使用Facebook。而Facebook的服務是用中心化的伺服器,因此業者必須承擔了使用者的流量、每筆Po文和照片的儲存空間。

網站營運成本:Facebook付錢。

流量成本每日超過百萬,那Facebook豈不是虧爆了嗎?當然不能,所以Facebook必須想辦法賺錢。隨著時間演化出有個主流的賺錢方式,廣告商付錢給Facebook,把廣告頁面推到想要的使用者眼前。

Facebook利用使用者資料和曝光機會,賺取廣告商錢。

那麼我們使用者的?只要有可以上網的手機或電腦,加上一點點電力,就可以享用所有功能。

使用者的成本近乎為 0。

但使用者有一些風險,由於Facebook擁有這些中心化的伺服器:

任何資料包含Po文、照片、朋友資料(即數位資產)為Facebook擁有,若有天Facebook倒閉後,沒有業者有義務要備份這些資料,你將一無所有。

另一個先不討論個資的問題,很可能在不知情的情況下被做不正當的廣告用途⋯( 近日發生的5,000 萬名用戶的私人資訊外洩事件)

想像一個去中心化的Facebook呢?

這時候沒有單一業者或是個人擁有這個資料庫和服務。

假設有個功能和Facebook一模一樣的DApp,在區塊鏈上執行任何修改資料的行為(Po文、上傳照片或修改感情狀態),使用者都需要付錢,執行每段程式碼上都有代價,每個運算都有標價 —— 而這個錢就叫做Gas(燃料費)。

營運成本,使用者付費,為自己任何一筆資料更新付出Gas。

因為這時沒有人擁有這個資料庫,只有一個公定的加密演算法,誰驗證了資料的正確性,誰就能得到的獎賞。做這些事來維護這個資料的人,就叫礦工(Miner)。

Gas的作用,就是給區塊鏈上俗稱的礦工,作為獎勵。礦工們利用自己機器的運算能力,驗證完資料後寫入一個不可修改的區塊,並且得到使用者付出的 Gas 錢,也就是 Proof of work 的機制。

礦工付出運算能力,賺取使用者為了修改資料付出的費用。

而任何人都可以當礦工

看似簡單的概念,只要信任「加密技術和演算法」,就不用信任「任何單位」來持有所有資料。

有了這個觀念之後,你就會理解到為何玩 DApp 的過程中,每個步驟都要被坑錢 XD(Gas)。不是因為他們是強盜,而是這個去中心化世界的運作方式就是如此。

但也請記住,DApps 不一定要完全取代所有的中心化的服務架構,同一個服務應用,也可以並行交錯使用。

什麼用途適合做去中心化?

區塊鏈技術的特性就是:

任何過去的紀錄都是無法篡改的

若用一個用區塊鏈做的帳本,來紀錄 A 擁有多少顆虛擬貨幣,B 擁有多少顆。然後只提供一種功能,就是「修改帳本」。

將 A 紀錄修改少 50 個,同時將 B 的紀錄修改多 50 個,

礦工確認完合法後,就完成了比特幣的一筆新的交易紀錄。

利用區塊鏈的這個特性,這些數字有他的意義,於是「數位資產」就產生了,這就是比特幣(Bitcoin)。

後來一位比特幣的專欄作家,想到了利用區塊鏈上一個功能——「寫程式碼」,搖身一變,變成可以寫在這區塊鏈上的遊戲規則。從此以後開啟 DApp 的應用的一片天。只要規則寫好(Smart Contract),任何人都無法違背遊戲規則。因此可以透過設計好的規則,去定義、去產生『數位資產』,虛擬貨幣也是這樣產生的。

然而規則設計好之後,不得任意修改。

說了這麼多,下篇將進入玩DApp之前要做的準備。若你期待這類的文章,還請大家以「👏+10」支持,有錯誤的地方請多多指教,感謝!

最後⋯⋯不要懷疑

除了區塊貓,有個區塊草泥馬也只是剛好而已:

https://www.cryptoalpaca.pet/welcome/

[1] 補充:根據科技應用的生命週期(Technology adoption life cycle)現在還算超早期,擁有10個比特幣以上的位址僅佔0.69%(148,282個),實際應用更是小於這個比例。

Innovators 中的 Innovator

請以「👏」支持,感謝!

--

--

David YC Tseng
Lootex
Editor for

A probe. Looking for additional pylons. My life for Aiur.