---
# System prepended metadata

title: demo 偷吃步

---

# demo 偷吃步 
## 乙太幣の單位
![](https://i.imgur.com/eSLQBnf.png)
## 開一個錢包go go go  ! ! ! 
### MetaMask
* MetaMask 是一個「用瀏覽器就能訪問的以太坊入口」，或者說是一個讓用戶以更低門檻與以太坊網絡進行交互的工具。它的本質是一個私鑰管理器，但你可以通過它直接參與各種的鏈上金融應用（DeFi）、遊戲、域名（ENS）、跨境支付等等。
* [出發摟，點開創帳號](https://chrome.google.com/webstore/category/extensions)
* Ropsten Test Network
    * 以太坊公開測試區塊鏈和網路，使用工作證明共識（挖礦）。在這個網路上的ETH沒有價值。
### test ether faucet
* 一個簡單的合約
```solidity=
// 合約開始啦
contract Faucet {

    // Give out ether to anyone who asks
    function withdraw(uint withdraw_amount) public {

        // Limit withdrawal amount
        require(withdraw_amount <= 100000000000000000);

        // Send the amount to the address that requested it
        msg.sender.transfer(withdraw_amount);
    }

    // Accept any incoming amount
    function () public payable {}
    }
```
* [Remix編譯器](https://remix.ethereum.org/)
### 啊我要怎麼讓合約上鏈? (版本很重要我使用的是0.4.19)
- [ ]  建立一個新的資料夾放入範例code
- [ ]  選擇版本 然後compile
- [ ]  DEPLOY & RUN TRANSACTIONS
- [ ]  在區塊鏈上創建合約
- [ ]  放錢錢進去
- [ ]  完成啦
:::danger
這只是簡述，詳細內容請各位去看官方文件或詳閱Mastering Ethereum
:::
### 我們做了啥?
1. 我們使用MetaMask創建了一個錢包，並且使用Ropsten測試網路上的一個faucet為它儲值。我們收到了發送到錢包以太坊地址的ether。然後我們把ether發送到faucet的以太坊地址。

2. 我們在Solidity中寫了一個faucet合約。使用Remix IDE將合約編譯為EVM Bytecode 。使用Remix進行交易，並在Ropsten區塊鏈上登記faucet合約。一旦登記，faucet合約有一個以太坊地址，我們發送一些ether。最後，我們構建了一個交易來調用 withdraw 函數，併成功請求了0.1 ether。該合約檢查了我們的請求，發送給我們0.1 ether並進行內部交易。

0x17B479D8b5D97FdFb4E7977A94bBEd827D76231B


