免學程式碼,教你輕鬆在以太坊測試鏈發幣

發幣可以很專業,但也可以超乎你想像的簡單歡迎體驗一下過氣議題:割韭菜起手式「發幣」

Eric Liou
7 min readDec 3, 2019

你好!新手上路,有錯還請指正。

Photo by Moose Photos from Pexels

免花錢,免懂程式,簡單體驗發幣

不知道你是否跟我一樣,在了解區塊鏈許多艱深的技術與原理時,無法想像自己可以實作什麼,但其實是有簡單方法的,本篇來分享一下,如何在以太坊測試鏈上發行代幣,你不必懂程式碼,也不必花你任何一毛錢。

誰適合閱讀本文章?

沒有程式語言背景,想玩玩實作,希望做完可以:

  • 跳脫對於區塊鏈,僅是文字上的想像,讓知識與實作連結。
  • 當有朋友或家人說:「啊,你最近有弄什麼東西出來了嗎?」,可以現場展現自己發的幣,甚至發送給他們。

開始之前的準備

先了解一些關鍵詞

  • 以太坊(乙太坊) Ethereum:可以想像它是一個基於區塊鏈技術的作業系統(類似iOS, Android)。
  • 智能合約 Smart Contract:可以看作它是一個基於以太坊系統的應用程式App。而我們要進行的發行代幣,就像是上架應用程式一樣,這個動作可稱作部署智能合約。
  • 測試網路 Test Network:區塊鏈的一個特性是上鏈的資料與程式碼都不可更改,所以我們需要一個測試環境,對我們寫好的智能合約進行各種測試,盡量減少出錯的狀況。
  • 區塊鏈錢包 Blockchain Wallet:任何人要與區塊鏈互動,例如:提交轉帳需求、查看資產狀況、部署智能合約等,會需要一個溝通工具,就是區塊鏈錢包。
以上都已簡短白話文的方式說明,僅為輔助後面的教學,絕對不是準確的名詞定義。

備妥所需工具

1. 有自己的以太坊區塊鏈錢包。

如果沒有錢包的朋友,可以去安裝與註冊 MetaMask ,網路上可以輕易找到教學文,很簡單的。另外,筆者也有寫了一篇「看完頓然開悟了!區塊鏈錢包使用指南(一)基礎入門知識」,可以了解一些基礎知識,參考看看。

2. 需要有Ropsten測試鏈的以太幣(乙太幣) Ether。

3. 發行代幣的程式碼。

4. 智能合約部署平台。

第二到四點,後面會教你如何取得或是直接提供給你,免擔心。

開始實作!

第一步,從測試鏈水龍頭(水管)取得 Ropsten測試鏈的乙太幣。

在區塊鏈上,除了查詢資料之外的互動,例如:轉帳、部署智能合約,啟動智能合約內的功能等,基本上都是需要花費原生加密貨幣,所以在發行代幣之前,我們需要先取得Ropsten測試鏈的乙太幣,接下來我以MetaMask錢包來示範,如何取得:

什麼是水龍頭(水管)?
簡單說就是給你領取免費加密貨幣的管道。有些水龍頭網站會放置廣告,以免費送加密貨幣為號召,吸引廣大用戶進入水龍頭網站瀏覽廣告,因而有廣告收入。
對於測試鏈而言,主要是為了提供無成本的測試環境給開發者,於是透過測試鏈水龍頭,提供免費的測試鏈加密貨幣,讓開發者可以使用。

第二步,設定你的代幣程式碼

在第二步驟開始之前,如果你看到程式碼就過敏的朋友,當然有貼心的免費工具,可以讓你直接跳過二三步驟。ERC20代幣產生器:ERC20 Token Generator
*Network欄位:選“Ropsten Test Network”
*Enable transfer欄位:選“Enable transfer during deploy”

先將下面一段的程式碼,複製下來。

[命名代幣]
將第13行程式碼的“X”的部分,改成你想要的代幣名稱
範例:我想發行豬豬幣PigPigToken,簡稱PIP
constructor() public ERC20Detailed(“PigPigToken”, “PIP”, 18) {

說明:ERC20Detailed("代幣的全名","代幣的簡稱",最小單位是小數點後幾位)
*最小單位是小數點後幾位:通常在乙太坊是填18,代表代幣最小單位到小數點的後18位。

[決定發行量]
將11行程式碼,改成你想要的發行量(修改1e之後的4)。
範例:我想要發行1,000,000顆
uint256 public constant INITIAL_SUPPLY = 1e6* (1e18);

說明:1e4代表10的4次方,就是10,000 ;1e6就是10的6次方,等於1,000,000。

第三步,進入線上編譯器部署程式碼

接下來,我們要透過一個可以與區塊鏈連線的服務,發送部署智能合約的要求,然後確認智能合約成功被部署,我以線上編譯器 Remix — Ethereum IDE 來做示範。

影片看得懂的朋友可以忽略以下詳解:

[步驟詳解]
00:00~00:08 切換成Remix舊版編輯器。
00:08~00:26 將編輯器預設程式碼刪除,更換成自己的代幣程式碼。
00:26~00:42 點選”Start to compile“按鈕,確認下方欄位無紅色警語。
00:42~00:58 點選tab”Run“,injected Web3代表使用插件軟體,確認插件軟體MetaMask是在測試鏈上,以及預計使用的帳戶。
00:58~01:21 點選”Deploy“(代表部署合約),接著至MetaMask確認部署合約,所需的測試鏈貨幣花費。
01:22~01:32 點選連結至ropsten.etherscan.io網站,觀看部署狀況。
01:32~01:51 成功部署,可點選Contract地址,找到資訊欄位的Token Tracker。
01:51~01:59 進去Token資訊,確認是否與當初設定相同”數量“”縮寫“”全名“。

第四步,查看帳戶與轉帳

先恭喜你已經成功將你自創的代幣上以太坊Ropsten測試鏈了✌️

然後,我們部署的程式碼中有_mint(msg.sender, INITIAL_SUPPLY) ,這代表著所有初次發行的代幣會先轉給發行者,發行者當然就是你囉!於是我們要利用MetaMask錢包去查詢有沒有進帳囉 😆,順便玩一下轉帳功能。

影片看得懂的朋友可以忽略以下詳解:

[從錢包加入自定代幣]
00:00~00:07 接續ropsten.etherscan.io網站,複製合約地址。
00:07~00:23 確認帳戶(地址)是發行者,點選“加入代幣”。
00:23~00:35 點選Tab“自訂代幣”,貼上合約地址,跳出代幣代號,點選“下一頁”。
00:35~00:39 系統跳出代幣餘額,點選“加入代幣”。
00:38~00:44 成功在發行者帳號內加入自訂代幣(數量與發行量相同)。
[在自己的帳戶內互轉自訂代幣]
00:44~00:53 點選“發送”,再點選“在我的帳戶間轉帳”,點選要轉到的帳戶(Test)。
00:53~01:14 輸入要轉的數量,選交易費(越快越貴),點“下一頁”確認交易內容。
01:14~01:25 等待交易完成,並切換至Test帳戶。
01:25~01:44 以同樣前述方式加入自訂代幣,確認收款數量,即轉帳成功!

總結

如果有完成實作的讀者,會感受到發幣真的可以很簡單,也就能夠理解為何ICO騙局會如此之多,當然ICO還需要白皮書、團隊成員與發表會等,但相對過去許多的金融體系籌資模式,更是簡單,更是快速。

若正向看待發幣,從其高度自由與程式碼開源,就可以感受到,區塊鏈的開源與去中心化是有它的普惠價值的,然而,工具沒有對錯,只有人用在何處的問題。

感謝閱讀,若有任何問題,歡迎留言指教!

拍手(claps)按鈕示範

如果喜歡這篇文章,可以透過拍手👏給我鼓勵一下。
*拍手按鈕可以點擊 1–50 次
*長按按鈕會自動增加次數。

歡迎至下方拍手鼓勵,謝謝大家 😄

--

--

Eric Liou

深深著迷於區塊鏈的思維,以相對白話,但不失完整性的方式,讓大家認識區塊鏈。