使用 Truffle 部署智能合約到 BSC 區塊鏈並在 BscScan 上提交認證

做法

新增 .env 檔,填入 BscScan 的 API KEY 以及錢包私鑰。

1
2
BSCSCAN_API_KEY=
PRIVATE_KEY=

修改 .gitignore 檔。

1
.env

安裝依賴套件。

1
npm i dotenv @truffle/hdwallet-provider truffle-plugin-verify --save

修改 truffle-config.js 檔。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
const HDWalletProvider = require('@truffle/hdwallet-provider');
require('dotenv').config();

const { BSCSCAN_API_KEY, PRIVATE_KEY } = process.env;

module.exports = {
networks: {
development: {
host: '127.0.0.1',
port: 7545,
network_id: '*',
},
bsc: {
provider: () => new HDWalletProvider(PRIVATE_KEY, 'https://bscrpc.com'),
network_id: 56,
timeoutBlocks: 200,
skipDryRun: true,
},
},
compilers: {
solc: {
version: '0.8.14',
settings: {
optimizer: {
enabled: false,
runs: 200,
},
},
},
},
plugins: [
'truffle-plugin-verify',
],
api_keys: {
bscscan: BSCSCAN_API_KEY,
},
};

執行部署。

1
truffle migrate --network bsc

提交認證。

1
truffle run verify MyContract --network bsc