前言
以下實作一個簡單的 Ponzi Scheme 智能合約,並宣稱有 2,920% 的年利率(APR),最後部署至 BSC 區塊鏈上。
建立專案
建立專案。
1 | mkdir eth-staking |
使用 truffle
指令初始化專案。
1 | truffle init |
新增 .gitignore
檔。
1 | /node_modules |
安裝依賴套件。
1 | npm install @openzeppelin/contracts |
實作
建立 contracts/Staking.sol
檔,實作質押合約。
1 | // SPDX-License-Identifier: MIT |
部署
新增 2_deploy_contracts.js
檔。
1 | const Staking = artifacts.require("Staking"); |
安裝依賴套件。
1 | npm i dotenv @truffle/hdwallet-provider truffle-plugin-verify --save |
新增 .env
檔。
1 | BSCSCAN_API_KEY= |
修改 truffle-config.js
檔。
1 | const HDWalletProvider = require('@truffle/hdwallet-provider'); |
執行部署。
1 | truffle migrate --network bsc |
提交認證
在 BscScan 提交認證。
1 | truffle run verify Staking --network bsc |