Pengantar model UTXO stateful

Jan 24 2023
Menggabungkan ekspresi model akun & keamanan model UTXO. Artikel ini adalah ikhtisar tingkat tinggi tentang model stateful UTXO, mengapa diciptakan, cara kerjanya, dan apa yang dimungkinkannya.

Menggabungkan ekspresi model akun & keamanan model UTXO.

Artikel ini adalah ikhtisar tingkat tinggi tentang model stateful UTXO, mengapa diciptakan, cara kerjanya, dan apa yang dimungkinkannya. Model stateful UTXO (sUTXO) adalah salah satu inovasi utama yang dibawa oleh Alephium, bersama dengan Proof-of-less-work (PoLW), algoritme sharding Blockflow, Alphred Virtual Machine , dan bahasa pemrograman Ralph.

Apa itu UTXO & Model Akun?

UTXO dan model berbasis akun adalah standar akuntansi yang paling umum digunakan dalam blockchain. Keduanya memungkinkan pengguna & sistem untuk melacak saldo aset crypto.

Model klasik UTXO (Unspent Transaction Output) terkenal digunakan untuk melacak akuntansi di blockchain Bitcoin . Itu juga ditemukan di Bitcoin Cash, Zcash, Litecoin, Dogecoin, Dash, dan banyak lagi…

Di UTXO , tidak ada akun atau saldo di lapisan protokol, hanya transaksi. Koin disimpan sebagai buku besar keluaran transaksi yang tidak terpakai (UTXO) & transaksi baru menggunakan UTXO yang ada untuk menghasilkan UTXO baru. Kapan saja, agar dompet dapat menunjukkan saldonya kepada pengguna, ia harus mengumpulkan semua UTXO yang terkait dengan alamat publik pengguna tertentu karena yang disimpan adalah kumpulan semua UTXO, bukan daftar akun & saldo.

Model ini sederhana untuk dipahami secara konseptual, skalanya baik, dan sangat transparan. Ini memiliki beberapa kelemahan: tidak memiliki status dan tidak cukup ekspresif untuk pengembang, artinya sulit untuk membangun program kompleks di atasnya.

Model akun lebih intuitif dan lebih dekat ke basis data klasik. Ini mencatat kenaikan/penurunan saldo alamat saat transaksi terjadi. Perubahan ini ditulis dalam blockchain, menciptakan keadaan global (catatan global dari saldo saat ini di semua alamat). Struktur ini lebih mudah diakses dan lebih mudah dikuasai oleh developer, memungkinkan sistem yang lebih “ ekspresif ”: developer dapat membuat program yang lebih kompleks & kuat (disebut smart contract).

Model akun juga memiliki keterbatasan: eksekusi paralel sulit, MEV adalah hambatan konstan, dan seringkali tidak memiliki pemeriksaan keamanan yang cukup untuk mengamankan tingkat kontrak pintar.

Stateful UTXO: Yang terbaik dari kedua dunia

Model stateful UTXO (sUTXO) menggabungkan keunggulan keduanya: model ini mendapat manfaat dari keamanan model UTXO dan ekspresi model akun.

Ini dicapai dengan benar-benar menggunakan keduanya… tetapi untuk hal yang berbeda! UTXO digunakan untuk aset/token dan model akun untuk smart contract dan status.

Token sebagai warga negara kelas satu

Di sUTXO, semua token ditangani secara asli dan disimpan di UTXO persis seperti ALPH. Ini berbeda dengan Bitcoin, yang tidak dapat menangani token. Tapi itu juga menandai perbedaan besar dengan Ethereum karena membutuhkan wadah seperti ERC20 dan 721 untuk menangani token, yang menimbulkan kerumitan dan sering menimbulkan risiko keamanan di masa lalu.

Pendekatan ini disebut "Token sebagai warga negara kelas satu." Tidak perlu membuat standar dan tidak ada risiko dalam penerapannya: semuanya ada di sana, asli! VM (mesin virtual ) juga memungkinkan pemeriksaan bawaan untuk meningkatkan keamanan transfer.

Tentu saja dimungkinkan untuk membuat standar baru di atas Alephium untuk token dengan fitur berbeda, tetapi fungsi inti (penerbitan, transfer, akuntansi) sudah ada di dalamnya.

Status: Kontrak Cerdas (dan aman).

Apa yang disebut " keadaan " dalam ilmu komputer, dapat dilihat sebagai "penyimpanan". Sistem stateful "menyimpan" apa yang terjadi sebelumnya dan dapat menggunakan item dari memorinya untuk membangun tindakan baru.

sutxo disebut "stateful" karena menambahkan elemen "state" ke model UTXO klasik, yang tidak memiliki kewarganegaraan. Seperti yang dijelaskan Seba : “ UTXO tidak memiliki kewarganegaraan, artinya tidak ada dua transaksi yang dapat memengaruhi UTXO yang sama. Transaksi tidak mengacu pada input apa pun di luar UTXO yang dikonsumsi. Karena UTXO dapat dijalankan secara paralel, UTXO tidak cocok untuk aplikasi, seperti smart contract, yang bersifat stateful. “

Itu sangat berguna bagi pengembang yang ingin membangun program yang memanfaatkan keadaan blockchain: kontrak pintar yang terkenal! Pengembang menggunakan kontrak pintar tersebut untuk membangun aplikasi terdesentralisasi. Dan dApps itu memungkinkan orang menggunakan blockchain untuk hal-hal yang berguna: meminjam, meminjamkan, memperdagangkan, membuat & memperdagangkan NFT, bermain game, dan menciptakan masa depan!

Hutan pohon Merkle agar tetap bersih!

Pohon Merkle adalah struktur data khusus yang digunakan untuk menyimpan informasi secara dapat diverifikasi. Alephium menggunakan tiga Pohon Merkle per grup: satu untuk aset ( set UTXO ), satu untuk status kontrak, dan satu lagi untuk logika kontrak (kodenya).

Ini bagus, karena untuk kontrak cerdas tertentu, data di pohon Merkle negara bagian mungkin sering berubah, tetapi pohon kode/logika Merkle tidak akan berubah! Hal ini memungkinkan Alephium untuk menghindari terlalu kembung dengan kode & data yang tidak berguna.

Dan untuk menjaga hal-hal seringan mungkin, sutxo mengaktifkan sewa penyimpanan negara : ketika kontrak pintar diterapkan, pengembangnya harus membayar deposit sebesar 1 ALPH untuk melindungi lapisan negara dari spamming.

Penyebar kontrak akan mengembalikan deposit ini ketika kontrak pintar dihancurkan dan dihapus dari blockchain!

sutxo & VM Alphred bekerja sama dengan baik!

sutxo memiliki banyak manfaat tambahan jika digabungkan dengan inovasi alephium lainnya! Misalnya, mesin virtual Alephium (Alphred) tahu persis bahwa transfer token terjadi pada kontrak cerdas. Dalam hal ini, mesin virtual memverifikasi transfer untuk memeriksa apakah dikirim sesuai dengan aturan kontrak pintar.

Alephium juga memiliki instruksi mesin virtual bawaan untuk memutakhirkan atau memigrasi kontrak pintar. Ini memungkinkan pengembang untuk memutakhirkan kontrak pintar untuk memulihkan logika dan memperbaiki bug. Opsi saat ini di EVM adalah menggunakan kontrak proxy untuk mengaktifkan migrasi ini, yang menambah banyak kerumitan.

Mengapa Anda harus peduli?

Ini adalah peningkatan besar bagi pengembang, karena kemampuan untuk memiliki model akun yang ditingkatkan dengan model khusus untuk penanganan token (UTXO) menjadikan model sutxo sebagai dasar yang kuat untuk membangun kontrak pintar dengan jaminan bahwa manajemen aset yang aman adalah prioritas.

Akan ada detail lebih lanjut tentang model sutxo dalam wawancara mendatang dengan Cheng Wang tentang topik tersebut, karena ini adalah bagian penting dari kumpulan teknologi Alephium. Di bawah ini adalah dua video dia mempresentasikan model sutxo dan interaksinya dengan VM & bahasa pemrograman Alephium, satu di EthCC, dan yang lainnya di Crypto Talk Series.

Posting selanjutnya dalam seri teknologi ini akan menampilkan Alphred, Mesin Virtual! Untuk mengetahui lebih lanjut tentang PoLW di sini.

Jika Anda memiliki pertanyaan lebih lanjut tentang topik ini, silakan datang ke Alephium's Discord , Telegram , atau hubungi Twitter !