Lewati ke konten utama

Deploy Token ERC-20 Standar Anda ke Lisk

Dalam tutorial ini, Anda akan belajar cara bridge token ERC-20 standar dari Ethereum ke Lisk menggunakan Sistem Bridge Standar.
Tutorial ini ditujukan untuk developer yang sudah memiliki token ERC-20 di Ethereum dan ingin membuat representasi token tersebut di Lisk.

Tutorial ini menjelaskan cara menggunakan OptimismMintableERC20Factory untuk deploy token ERC-20 standar di jaringan Lisk atau Lisk Sepolia.
Token yang dibuat oleh contract factory ini kompatibel dengan sistem Bridge Standar dan mencakup logika dasar untuk deposit, transfer, dan withdrawals.
Jika Anda ingin menyertakan logika khusus di dalam token L2 Anda, lihat tutorial Bridge Token ERC-20 Kustom Anda ke Lisk.

Dependensi

Prasyarat

catatan

Anda dapat deploy token ERC-20 Standar Anda di Lisk Mainnet dengan menggunakan proses yang sama.
Untuk deploy ke mainnet, pastikan wallet Anda memiliki ETH yang cukup.

Teks berikut mencakup perintah untuk Lisk dan Lisk Sepolia demi kemudahan Anda.
Untuk informasi lebih lanjut, lihat jaringan Lisk yang tersedia dan cara menghubungkan wallet ke jaringan tersebut.

Dapatkan ETH di Sepolia dan Lisk Sepolia

Tutorial ini menjelaskan cara membuat token ERC-20 yang di-bridge di Lisk Sepolia.
Anda perlu mendapatkan sejumlah ETH di kedua testnet ini.

info

Anda dapat menggunakan ETH Sepolia Faucet untuk mendapatkan ETH di Sepolia.
Anda dapat menggunakan Superchain Faucet untuk mendapatkan ETH di Lisk Sepolia.

Dapatkan Alamat Token ERC-20 L1

Anda memerlukan token ERC-20 L1 untuk tutorial ini.
Jika Anda sudah memiliki token ERC-20 L1 yang di-deploy di Ethereum Mainnet atau Sepolia, Anda dapat melewati langkah ini.
Untuk Sepolia, Anda dapat menggunakan token uji coba yang berada di alamat 0x5589BB8228C07c4e15558875fAf2B859f678d129, yang memiliki fungsi faucet() untuk me-mint token.

Membuat Token ERC-20 L2

Setelah Anda memiliki token ERC-20 L1, Anda dapat menggunakan OptimismMintableERC20Factory untuk membuat token ERC-20 L2 yang sesuai di jaringan Lisk atau Lisk Sepolia.
Semua token yang dibuat oleh factory ini mengimplementasikan interface IOptimismMintableERC20 dan kompatibel dengan sistem Bridge Standar.
Untuk membuat token ERC-20 L2, lakukan langkah-langkah berikut:

1. Tambahkan private key ke environment Anda

Anda memerlukan private key untuk menandatangani transaksi.
Atur private key Anda sebagai variabel environment menggunakan perintah export.
Pastikan private key ini sesuai dengan alamat yang memiliki ETH di jaringan Lisk atau Lisk Sepolia.

export TUTORIAL_PRIVATE_KEY=0x...

2. Tambahkan URL RPC Lisk ke environment Anda

Anda memerlukan URL RPC untuk terhubung ke jaringan Lisk atau Lisk Sepolia.
Atur URL RPC Anda sebagai variabel environment menggunakan perintah export.

export TUTORIAL_RPC_URL=https://rpc.sepolia-api.lisk.com

3. Tambahkan alamat token ERC-20 L1 Anda ke environment

Anda perlu mengetahui alamat token ERC-20 L1 Anda untuk membuat representasi token tersebut di jaringan Lisk atau Lisk Sepolia.
Atur alamat token ERC-20 L1 Anda sebagai variabel environment menggunakan perintah export.

# Replace this with your L1 ERC-20 token if not using the testing token!
export TUTORIAL_L1_ERC20_ADDRESS=0x5589BB8228C07c4e15558875fAf2B859f678d129

4. Deploy token ERC-20 L2 Anda

Anda sekarang dapat deploy token ERC-20 L2 Anda menggunakan OptimismMintableERC20Factory.
Gunakan perintah cast untuk memicu fungsi deployment pada contract factory.
Contoh perintah berikut akan membuat token dengan nama "My Standard Demo Token" dan simbol "L2TKN".
Alamat token ERC-20 L2 yang dihasilkan akan mint di konsol.

cast send 0x4200000000000000000000000000000000000012 "createOptimismMintableERC20(address,string,string)" $TUTORIAL_L1_ERC20_ADDRESS "My Standard Demo Token" "L2TKN" --private-key $TUTORIAL_PRIVATE_KEY --rpc-url $TUTORIAL_RPC_URL --json | jq -r '.logs[0].topics[2]' | cast parse-bytes32-address

Jika semua berjalan dengan lancar, Anda akan menerima respons berisi alamat contract yang baru saja di-deploy:

0x891C582b83F69B7c2d3107cd73A3e491CB33962F
Menggunakan factory tidak direkomendasikan untuk production

Factory memudahkan proses deployment contract secara instan.
Namun, kelemahannya adalah Anda tidak memiliki kendali atas source code dari contract yang akan di-deploy karena proses ini dilakukan oleh factory.

Selain itu, verifikasi contract tersebut di Blockscout tidak begitu mudah dilakukan, karena source code contract diperlukan untuk proses verifikasi.