Analisis mendalam tentang prinsip dasar ERC-6551

Ditulis oleh: @0xCygaar Diterjemahkan oleh: MetaCat

Artikel ini adalah deskripsi singkat tentang bagaimana ERC-6551 memungkinkan NFT apa pun untuk memiliki semua jenis aset kripto.

Mari kita mulai dengan apa yang sebenarnya terjadi pada sebagian besar NFT.

NFT di Ethereum hanyalah entri data dalam kontrak cerdas yang memberi tahu Anda siapa pemilik NFT, siapa yang dapat mentransfer NFT, dan seperti apa metadata NFT itu. Berikut adalah fungsi yang mengembalikan informasi tentang NFT yang diberikan:

Dapatkan Pemilik NFT tertentu

Dapatkan tokenURI dari NFT yang diberikan

Dapatkan alamat dompet tempat NFT yang diberikan disetujui

Saat Anda membuat NFT, Anda tinggal menyetel nilai pemilik entri data (alamat dompet). Saat Anda mentransfer NFT, Anda cukup mengubah nilai pemilik (alamat dompet). Dua gambar berikut adalah pengaturan kode kepemilikan terkait dalam kontrak ERC721:

Fungsi mint dalam kontrak ERC721

Fungsi transfer dalam kontrak ERC721

Sebagian besar kontrak NFT sesederhana itu. Seperti yang kita lihat di atas, tidak ada kode yang memungkinkan NFT ini untuk memiliki token NFT, ETH, atau ERC20 lainnya.

Kontrak pintar tidak dapat diubah, jadi bagaimana ERC-6551 mengizinkan NFT untuk memiliki aset lain?

Jawabannya adalah: registri + dompet kontrak.

Dompet kontrak pintar (dompet CA) hanyalah kontrak pintar yang dapat menerima NFT, ERC20 atau ETH dan juga melakukan transaksi sewenang-wenang. Dompet kontrak ini memiliki alamatnya sendiri (seperti semua kontrak pintar).

Jika Anda tidak terbiasa dengan pendaftar, Anda dapat menganggapnya sebagai kontrak cerdas individu yang menyimpan informasi. Registri ERC-6551 berisi: informasi yang menyatakan NFT mana yang dipetakan ke dompet smart contract mana, dan juga menggunakan proxy untuk membuat dompet smart contract (tidak masalah jika Anda mengetahuinya).

Kode kontrak pendaftaran?

Misalnya, Azuki #4567 mungkin memetakan ke dompet smart contract di alamat 0x243F4E0d556EFD1006c52E85A6ddFb6748A4C0b7. Satu NFT dapat mengontrol beberapa akun kontrak, tetapi setiap akun kontrak hanya dimiliki oleh satu NFT, seperti yang ditunjukkan pada gambar di bawah ini:

Nah, kami sekarang memiliki registri yang dapat membuat dompet untuk NFT dan menautkan NFT ke dompet, dan dompet yang terikat NFT ini sekarang dapat digunakan sebagai dompet biasa. Dompet ini dapat mentransfer ETH, membeli token NFT atau Swap ERC20, tentunya transaksi harus dimulai oleh pemilik NFT.

Saya ingin menegaskan kembali bahwa dompet yang terikat NFT ini adalah kontrak pintar. Mereka mirip dengan dompet multi-tanda tangan di mana seseorang harus memanggil fungsi pada kontrak agar dompet dapat melakukan tindakan tertentu. Untuk dompet ERC-6551, pemilik NFT akan memanggil uteCall di dompet untuk memulai transaksi.

Jadi apa yang istimewa dari dompet terikat NFT ini? Saat pemilik yang mengontrol NFT berubah, kontrol dompet juga berubah secara bersamaan. Mengontrol NFT berarti Anda mengontrol semua yang ada di dompet yang terikat NFT, dan NFT akan berubah dari satu aset menjadi paket aset yang dibundel.

TL; DR: ERC-6551 memungkinkan semua NFT memiliki dompet dengan menggunakan registri dan dompet kontrak pintar. Registri membuat dompet kontrak dan mengaitkan dompet kontrak dengan NFT. Dompet kontrak dapat menyimpan aset lain, dan hanya pemilik NFT yang dapat melakukan transaksi di dompet ini.

Lihat Asli
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Hadiah
  • Komentar
  • Bagikan
Komentar
0/400
Tidak ada komentar
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)