Infrastruktur Web3 yang aman, terukur, dan dapat ditingkatkan
Ringkasan
Dengan munculnya blockchain infrastruktur Internet baru, pengembang menyebarkan puluhan ribu aplikasi terdesentralisasi dengan sangat cepat. Sayangnya, karena stabilitas yang buruk, biaya tinggi, throughput rendah, dan beberapa masalah keamanan, blockchain belum diadopsi secara luas. Agar dapat digunakan secara luas di era Web3, infrastruktur blockchain harus meniru karakteristik infrastruktur cloud, yaitu menyediakan platform yang kredibel, terukur, hemat biaya, dan terus dioptimalkan untuk banyak aplikasi terdesentralisasi.
Untuk mengatasi tantangan ini, kami meluncurkan blockchain Aptos dengan skalabilitas, keamanan, keandalan, dan kemampuan peningkatan sebagai prinsip desain inti. Blockchain Aptos telah dikembangkan bersama oleh lebih dari 350 pengembang di seluruh dunia selama tiga tahun terakhir [1]. Ini menawarkan inovasi baru dalam konsensus, desain kontrak cerdas, keamanan sistem, kinerja, dan desentralisasi. Kombinasi dari teknologi ini akan memberikan dasar yang kuat untuk membawa Web3 ke khalayak yang lebih luas:
1. Blockchain Aptos secara native mengintegrasikan dan menggunakan bahasa Move untuk mencapai eksekusi transaksi yang cepat dan aman [2]. Move Prover, alat verifikasi formal untuk kontrak pintar yang dikembangkan dalam bahasa Move, memberikan jaminan tambahan untuk konstanta dan operasi kontrak. Pendekatan yang berfokus pada keamanan ini memungkinkan pengembang untuk melindungi perangkat lunak dengan lebih baik dari entitas jahat.
2. Model data Aptos memungkinkan pengelolaan kunci yang fleksibel dan opsi hosting hibrid. Ini, bersama dengan transparansi transaksi pra-tanda tangan dan protokol klien ringan yang praktis, bersama-sama memberikan pengalaman pengguna yang lebih aman dan dapat dipercaya.
3. Untuk mencapai throughput tinggi dan latensi rendah, blockchain Aptos menggunakan pendekatan pipelined dan modular pada tahap utama pemrosesan transaksi. Khususnya, operasi seperti distribusi transaksi, pemesanan metadata blok, eksekusi transaksi paralel, penyimpanan batch, dan verifikasi buku besar berjalan secara bersamaan. Pendekatan ini memanfaatkan sepenuhnya semua sumber daya perangkat keras yang tersedia, meningkatkan efisiensi perangkat keras, dan mencapai pemrosesan paralel tingkat tinggi.
4. Berbeda dengan mesin eksekusi paralel yang perlu mendapatkan data untuk dibaca dan ditulis sebelum membaca dan menulis, yang menghancurkan atomisitas transaksi, blockchain Aptos tidak menetapkan batasan seperti itu pada pengembang. Ini menyediakan aplikasi dengan throughput yang lebih tinggi dan latensi yang lebih rendah, dan menyederhanakan pengembangan dengan menjamin atomisitas dari transaksi yang kompleks.
5. Arsitektur modular Aptos memastikan fleksibilitas klien dan dioptimalkan untuk peningkatan yang sering. Selain itu, untuk menyebarkan inovasi teknologi baru dengan cepat dan mendukung kasus penggunaan Web3 baru, blockchain Aptos menyediakan protokol manajemen perubahan on-chain tertanam.
6. Blockchain Aptos sedang bereksperimen dengan inisiatif masa depan di luar kinerja validator tunggal: desain modular dan mesin eksekusi paralelnya mendukung sharding internal validator, sementara sharding status homogen (sharding status homogen) menyediakan throughput horizontal. tanpa memperkenalkan kompleksitas tambahan untuk operator node.
[1] Penafian hukum: Buku putih ini dan isinya bukanlah penawaran untuk menjual token apa pun, atau penawaran untuk mendorong pembelian token apa pun. Kami menerbitkan buku putih ini semata-mata untuk menerima umpan balik dan komentar publik. Tidak ada dalam dokumen ini yang dapat ditafsirkan sebagai jaminan atau janji tentang bagaimana blockchain Aptos atau tokennya (jika ada) akan mengembangkan, memanfaatkan, atau mengakumulasi nilai. Aptos hanya menguraikan rencananya saat ini, yang dapat berubah sesuai kebijaksanaannya dan yang keberhasilannya akan bergantung pada sejumlah faktor di luar kendalinya. Pernyataan masa depan tersebut harus melibatkan risiko yang diketahui dan tidak diketahui, yang dapat menyebabkan kinerja aktual dan hasil di periode mendatang berbeda secara materi dari yang kami jelaskan atau tersirat dalam buku putih ini. Aptos tidak berkewajiban memperbarui rencananya. Tidak ada jaminan bahwa pernyataan apa pun di kertas putih akan terbukti akurat, karena hasil aktual dan kejadian di masa mendatang mungkin berbeda secara materi. Harap jangan terlalu mengandalkan pernyataan di masa mendatang.
1. Pembukaan
Di era Web2, layanan seperti komunikasi, media sosial, keuangan, game, belanja, dan media streaming audio dan video disediakan oleh perusahaan terpusat yang memiliki izin data pengguna (seperti Google, Amazon, Apple, dan Meta). Perusahaan-perusahaan ini memanfaatkan perangkat lunak khusus aplikasi untuk mengoptimalkan infrastruktur pengembangan untuk kasus penggunaan yang ditargetkan dan menerapkan aplikasi tersebut kepada pengguna yang menggunakan infrastruktur cloud. Infrastruktur cloud menyediakan akses ke layanan infrastruktur virtual atau fisik, seperti penyewaan mesin virtual (VM) dan perangkat keras bare-metal yang berjalan di pusat data di seluruh dunia (seperti AWS, Azure, dan Google Cloud). Hasilnya, membangun layanan Internet Web2 yang mampu menjangkau miliaran pengguna tidak pernah semudah sekarang ini. Namun, Web2 mengharuskan pengguna untuk secara eksplisit mempercayai entitas terpusat, persyaratan yang semakin menimbulkan kekhawatiran sosial.
Untuk mengatasi masalah ini, era Internet baru telah dimulai: Web3. Di Internet versi Web 3, blockchain telah muncul untuk menyediakan buku besar yang terdesentralisasi dan tidak dapat diubah, memungkinkan pengguna untuk berkomunikasi satu sama lain dengan aman dan andal tanpa perlu mempercayai perantara pengendali atau entitas terpusat. Mirip dengan bagaimana layanan dan aplikasi Internet Web2 bergantung pada infrastruktur cloud, aplikasi terdesentralisasi dapat menggunakan blockchain sebagai lapisan infrastruktur terdesentralisasi untuk menjangkau miliaran pengguna di seluruh dunia.
Namun, meskipun ada banyak blockchain, Web3 belum diadopsi secara luas [3]. Sementara teknologi terus memajukan industri, blockchain yang ada masih tidak dapat diandalkan. Biaya transaksi mahal, throughput rendah, seringnya kehilangan aset karena masalah keamanan, dan ketidakmampuan untuk mendukung respons waktu nyata. Dibandingkan dengan infrastruktur cloud yang memberdayakan layanan Web2 dan berhasil menjangkau miliaran orang, blockchain belum membawa aplikasi Web3 ke ketinggian yang sama.
2. Visi Aptos
Visi Aptos adalah menyediakan blockchain yang dapat membawa adopsi arus utama ke Web3 dan memberdayakan ekosistem aplikasi terdesentralisasi untuk mengatasi masalah pengguna di dunia nyata. Misi kami adalah mendorong ketinggian baru dalam keandalan, keamanan, dan kinerja blockchain dengan menyediakan arsitektur blockchain yang fleksibel dan modular. Arsitektur harus mendukung peningkatan yang sering, adopsi cepat dari teknologi terbaru, dan dukungan terbaik di kelasnya untuk kasus penggunaan yang muncul.
Kami membayangkan membangun jaringan yang terdesentralisasi, aman, dan dapat diskalakan yang dijalankan oleh tata kelola komunitas. Karena permintaan infrastruktur tumbuh di seluruh dunia, sumber daya komputasi blockchain berskala horizontal dan vertikal untuk memenuhi permintaan tersebut. Saat kasus penggunaan baru dan kemajuan teknologi muncul, jaringan harus sering ditingkatkan dan lancar tanpa mengganggu pengguna. Biarkan pengguna tidak lagi memperhatikan masalah terkait infrastruktur. Pengembang dan pengguna akan memiliki akses ke berbagai opsi untuk pemulihan kunci, pemodelan data, standar kontrak pintar, pengorbanan penggunaan sumber daya, privasi, dan kemampuan menyusun. Pengguna yakin bahwa aset mereka aman, tersedia, dan dapat diakses hampir tanpa biaya. Siapa pun dapat dengan aman dan mudah melakukan transaksi yang tidak dapat diubah dengan pihak yang tidak dipercaya di seluruh dunia. Blockchain akan ada di mana-mana seperti infrastruktur cloud.
Untuk mewujudkan visi ini, kemajuan teknologi yang signifikan harus dilakukan. Pengalaman kami dalam mengembangkan, meningkatkan, dan menerapkan blockchain Diem (pendahulu blockchain Aptos) selama tiga tahun terakhir telah menunjukkan bahwa jaringan dapat terus meningkatkan protokol tanpa mengganggu klien [4]. Pada awal tahun 2020, mainnet Diem dikerahkan ke selusin node dengan beberapa penyedia dompet. Pada tahun berikutnya, tim kami melakukan dua peningkatan besar pada protokol konsensus dan kerangka kerja inti. Kedua pemutakhiran selesai tanpa waktu henti bagi pengguna. Di blockchain Aptos, kami telah membuat serangkaian peningkatan radikal pada tumpukan teknologi, sembari mengambil keamanan, transparansi, dan peningkatan yang sering dilakukan sebagai fungsi inti yang terinspirasi oleh blockchain Diem. Kami memberikan penekanan khusus pada metode baru pemrosesan transaksi (seperti yang dijelaskan dalam Bagian 7) dan pendekatan baru untuk desentralisasi dan tata kelola jaringan.
Dengan peningkatan berkelanjutan dan pengembangan blockchain Aptos, kami akan terus memperbarui protokol dan desain, dan merilis versi terbaru dari kertas putih pada saat itu. Berikut ini, kami menjelaskan keadaan blockchain Aptos saat ini dan rencana untuk masa depan.
3. Tinjauan
Seperti yang ditunjukkan pada Gambar 1, blockchain Aptos terdiri dari sekelompok validator (Validator), yang menggunakan mekanisme konsensus Byzantine Fault Tolerance (BFT) dan Proof of Stake (POS) untuk menerima dan memproses transaksi pengguna. Pemegang Token mengunci atau menjaminkan token mereka di validator pilihan mereka (Validator). Bobot voting konsensus dari masing-masing validator sebanding dengan jumlah token yang dipertaruhkan. Validator dapat aktif dan berpartisipasi dalam keputusan konsensus. Demikian pula, jika node verifikasi tidak memiliki cukup token yang dijanjikan, atau diputar keluar dari set validator, atau sedang offline saat menyinkronkan status blockchain, atau protokol konsensus menolak partisipasinya dalam konsensus karena kinerja historis yang buruk, maka Validator mungkin juga tidak aktif.
Klien adalah bagian mana pun dari sistem yang perlu mengirimkan transaksi atau menanyakan status dan riwayat blockchain. Klien dapat memilih untuk mengunduh dan memverifikasi data yang telah ditandatangani dan diverifikasi oleh validator. *Full Node* adalah klien yang mereplikasi transaksi dan status blockchain dari node validator atau node penuh lainnya di jaringan. Mereka mungkin memangkas beberapa riwayat transaksi dan catatan status blockchain sesuai kebutuhan untuk mendapatkan kembali ruang penyimpanan yang memadai. Klien ringan hanya mempertahankan satu set node validasi saat ini dan dapat dengan aman meminta status blockchain parsial dari node penuh. Dompet adalah contoh umum klien ringan.
Untuk memenuhi kebutuhan infrastruktur Web3 yang aman, cepat, andal, dan dapat diskalakan untuk adopsi luas, blockchain Aptos dibangun berdasarkan prinsip desain inti berikut:
- Melalui bahasa pemrograman smart contract Move [5] yang baru, eksekusi logika on-chain yang cepat dan aman, serta kemampuan audit dan analisis prosedural yang sederhana. Blockchain Aptos mewarisi dari blockchain Diem dan terus mengembangkan Move.
- Throughput yang sangat tinggi dan latensi rendah dicapai melalui metode pemrosesan transaksi batch, pipeline, dan paralel.
- Tidak seperti mesin eksekusi paralel yang ada yang melakukan pra-identifikasi data untuk dibaca/ditulis dan menghancurkan atomisitas transaksi, blockchain Aptos secara inovatif menggunakan teknologi Block-STM sebagai mesin eksekusi paralel, yang secara efektif mendukung atomisitas jenis kelamin transaksi kompleks yang sewenang-wenang.
- Optimalkan kinerja dan tata kelola yang terdesentralisasi melalui rotasi validator yang dipertaruhkan dengan cepat dan pelacakan reputasi validator.
- Peningkatan kemampuan dan konfigurasi adalah prinsip desain yang paling penting, sehingga infrastruktur dapat merangkul kasus penggunaan baru dan teknologi terkini.
- Lulus pengujian tingkat komponen yang ketat seperti pemodelan ancaman dan desain modular untuk penerapan yang mulus, memastikan keamanan dan keandalan operasi yang tinggi.
- Skalabilitas throughput horisontal terdesentralisasi yang terjamin. Sharding, diturunkan dari program dan model data, merupakan konsep penting dalam penskalaan horizontal.
Bab 4 menjelaskan bagaimana pengembang dapat berinteraksi dengan blockchain Aptos melalui bahasa Move. Bab 5 menjelaskan model logis. Bab 6 merinci bagaimana blockchain Aptos memungkinkan pengalaman pengguna yang aman melalui metode verifikasi yang kuat. Bab 7 menjelaskan inovasi kinerja utama seputar pipelining, batching, dan paralelisasi. Bab 8 merinci berbagai opsi untuk berbagai jenis klien untuk menyinkronkan status dengan node lain. Bab 9 menjelaskan rencana kami untuk kepemilikan dan tata kelola komunitas. Terakhir, Bab 10 membahas arah kinerja masa depan dengan tetap mempertahankan desentralisasi.
4. Pindahkan bahasa pemrograman
Move adalah bahasa pemrograman kontrak pintar baru yang berfokus pada keamanan dan fleksibilitas. Blockchain Aptos menggunakan model objek Move untuk merepresentasikan status ledgernya (lihat Bagian 5.5), dan menggunakan kode Move (modul) untuk menyandikan aturan transisi status. Transaksi yang diajukan oleh pengguna dapat mencakup penerbitan modul baru, peningkatan modul yang ada, menjalankan fungsi antarmuka yang ditentukan dalam modul, dan skrip yang dapat langsung berinteraksi dengan antarmuka publik modul.
Ekosistem Move menyertakan kompiler, mesin virtual, dan banyak alat pengembangan lainnya. Move terinspirasi oleh bahasa pemrograman Rust, yang mengklarifikasi kepemilikan data melalui konsep seperti tipe linier.Move menekankan kelangkaan, pelestarian, dan kontrol akses sumber daya. Modul Pindah menentukan siklus hidup, penyimpanan, dan mode akses dari setiap sumber daya. Ini memastikan bahwa sumber daya seperti Koin tidak dapat dicetak tanpa kredensial yang tepat, tidak dapat dibelanjakan dua kali, dan tidak dapat hilang.
Meskipun terdapat kode yang tidak tepercaya, Move masih dapat menggunakan alat verifikasi bytecode untuk memastikan keamanan jenis dan memori. Untuk membantu menulis kode yang lebih dapat dipercaya, Move menyertakan pemverifikasi tipe, Move Prover [6], yang dapat memverifikasi kebenaran fungsional program Move sesuai dengan spesifikasi yang diberikan.Fungsi verifikasi tipe ini telah diintegrasikan ke dalam bahasa Move.
Selain akun pengguna dan konten akun yang sesuai, keadaan buku besar terdistribusi juga berisi konfigurasi on-chain dari blockchain Aptos. Konfigurasi jaringan ini mencakup sekumpulan validator yang aktif saat ini, atribut janji, dan konfigurasi berbagai layanan dalam blockchain Aptos. Dukungan Move untuk peningkatan kemampuan modul dan kemampuan program penuh memungkinkan perubahan konfigurasi yang mulus, serta dukungan untuk peningkatan ke blockchain Aptos itu sendiri (kedua jenis peningkatan ini telah dilakukan berkali-kali di mainnet pribadi, dan tidak ada catatan downtime).
Tim Aptos selanjutnya menambahkan fitur Pindahkan untuk mendukung kasus penggunaan Web3 yang lebih luas. Seperti dijelaskan dalam Bagian 5.5 di bawah, blockchain Aptos memungkinkan kontrol sumber daya yang sangat halus. Fitur ini tidak hanya secara efektif mendukung eksekusi paralel, tetapi juga hampir memperbaiki biaya untuk mengakses dan mengubah data. Selain itu, blockchain Aptos menyediakan dukungan tabel yang dibangun di atas penyimpanan berbutir halus, yang memungkinkan kumpulan data berskala besar (misalnya, kumpulan besar NFT) untuk diimplementasikan dalam satu akun. Pada saat yang sama, Aptos mendukung akun bersama atau otomatis yang sepenuhnya diwujudkan secara on-chain. Hal ini memungkinkan organisasi otonom terdesentralisasi (DAO) yang kompleks untuk berbagi akun dan menggunakan akun tersebut sebagai wadah untuk kumpulan sumber daya yang heterogen.
5. Model Logis
Status ledger dari blockchain Aptos mewakili status semua akun di rantai. Status ledger menggunakan unsigned 64-bit integer untuk pembagian versi, sesuai dengan jumlah transaksi yang dijalankan oleh sistem saat ini. Siapa pun dapat mengirimkan transaksi ke blockchain Aptos untuk mengubah keadaan buku besar. Setelah transaksi dieksekusi, output transaksi dihasilkan. Keluaran dari transaksi terdiri dari nol atau lebih operasi untuk memanipulasi status buku besar (disebut set tulis), serangkaian kejadian yang dihasilkan (lihat Bagian 5.1.1), gas yang dikonsumsi, dan status transaksi yang dieksekusi.
5.1 Transaksi
Transaksi yang ditandatangani berisi informasi berikut:
- Autentikator Transaksi: Pengirim menggunakan autentikator transaksi yang menyertakan satu atau lebih tanda tangan digital untuk memverifikasi bahwa transaksi telah diautentikasi.
- Alamat Pengirim: Alamat akun pengirim.
- Muatan: Muatan merujuk ke fungsi antarmuka on-chain yang ada, atau berisi fungsi (disebut skrip) untuk dieksekusi sebagai bytecode sebaris. Selain itu, satu set parameter input dikodekan dalam array byte. Untuk transaksi peer-to-peer, parameter masukan mencakup informasi penerima dan jumlah transfer.
- Harga Gas (dalam mata uang tertentu/unit Gas): Ini adalah jumlah per unit Gas yang bersedia dibayar oleh pengirim untuk melaksanakan transaksi. Biaya gas mengacu pada pembayaran biaya komputasi, jaringan dan penyimpanan. Gas adalah unit perhitungan abstrak tanpa nilai nyata yang melekat.
- Jumlah gas maksimum: Gas maksimum adalah jumlah maksimum unit gas yang boleh dikonsumsi sebelum transaksi dibatalkan. Minimal harus ada saldo harga satuan Gas dikalikan jumlah maksimal satuan Gas di rekening, jika tidak maka transaksi akan dihentikan selama proses verifikasi.
- SequenceNumber : Nomor urut transaksi. Nomor urut dalam transaksi harus sesuai dengan nomor urut yang tersimpan di rekening pengirim pada saat transaksi dijalankan. Setelah transaksi berhasil dijalankan, nomor urut akun bertambah untuk mencegah serangan replay.
- Waktu kedaluwarsa: Stempel waktu setelah itu transaksi tidak lagi valid.
- ID Blockchain: Mengidentifikasi validitas transaksi di blockchain, memberi pengguna perlindungan lebih lanjut terhadap kesalahan penandatanganan.
Pada setiap versi i, perubahan status diwakili oleh tuple (Ti, Oi, Si), yang masing-masing berisi transaksi, keluaran transaksi, dan status buku besar setelah transaksi. Diberikan fungsi deterministik Terapkan, jalankan transaksi Ti, status buku besar Si-1, hasilkan keluaran transaksi Oi dan status buku besar baru Si. Yaitu, Terapkan(Si-1*,Ti*) → 〈Oi,Si〉.
5.1.1 Acara
Peristiwa dipancarkan selama eksekusi transaksi. Setiap modul Move dapat menentukan eventnya sendiri dan memilih kapan akan memancarkannya pada waktu eksekusi. Misalnya, selama transfer uang, akun pengirim dan penerima masing-masing akan memancarkan SentEvent dan ReceivedEvent. Data akan disimpan di buku besar dan dapat dilihat melalui node Aptos. Setiap acara terdaftar memiliki indeks unik yang dapat digunakan untuk menanyakan detail acara.
Beberapa peristiwa yang dipancarkan ke indeks peristiwa yang sama menghasilkan aliran peristiwa, yang merupakan daftar peristiwa dengan setiap entri berisi nomor, jenis, dan data yang bertambah dari 0. Setiap peristiwa harus didefinisikan dengan beberapa jenis. Mungkin ada beberapa peristiwa berbeda yang ditentukan oleh jenis yang sama atau serupa, terutama saat menggunakan obat generik. Acara memiliki data terkait. Prinsip umum untuk developer modul Move adalah menyertakan semua data yang diperlukan untuk memahami perubahan sumber daya yang mendasarinya yang disebabkan sebelum dan sesudah eksekusi transaksi, yang mengubah data dan mengirimkan peristiwa.
Transaksi hanya dapat menghasilkan peristiwa, bukan membacanya. Desain ini memungkinkan transaksi untuk dieksekusi hanya dengan keadaan saat ini dan masukan dari transaksi saat ini (daripada informasi historis, misalnya peristiwa yang dihasilkan sebelumnya).
5.2 Akun
Setiap akun diidentifikasi dengan nilai unik 256-bit yang disebut alamat akun. Buat akun baru dalam keadaan ledger (lihat Bagian 5.5), yang dapat dibuat dengan memanggil fungsi create_account(addr) Move ketika akun yang sudah ada mengirim transaksi. Ini biasanya terjadi ketika transaksi mencoba mengirim token Aptos ke alamat akun yang belum dibuat. Untuk kenyamanan, Aptos juga mendukung fungsi transfer(dari, ke, jumlah), yang akan membuat akun secara default jika tidak ada sebelum transfer.
Untuk membuat akun baru, pengguna terlebih dahulu membuat pasangan kunci penandatanganan: (vk,sk). Selanjutnya, pengidentifikasi skema tanda tangan (ssid) disambungkan bersama dengan kunci publik vk, dan alamat akun baru dari skema tanda tangan spesifik diperoleh melalui hash terenkripsi H: addr=H(vk, ssid).
Setelah membuat akun baru di addr alamat, pengguna dapat menandatangani transaksi yang akan dikirim dari akun di addr, menggunakan kunci pribadi sk untuk menandatangani. Pengguna juga dapat memutar sk, baik secara aktif mengubah sk atau merespons kemungkinan kebocoran kunci pribadi. Operasi pengubahan kunci privat tidak akan mengubah alamat akun, karena alamat akun hanya dibuat dari kunci publik.
Blockchain Aptos tidak menautkan akun ke identitas dunia nyata. Seorang pengguna dapat membuat banyak akun dengan membuat beberapa pasangan kunci. Akun yang dikendalikan oleh pengguna yang sama tidak secara intrinsik tertaut satu sama lain.
Namun, untuk kemudahan pengelolaan aset, satu pengguna masih dapat mengelola banyak akun dalam satu dompet. Fleksibilitas ini memberikan anonimitas kepada pengguna, dan kami mencoba menggunakan lebih banyak primitif yang menjaga privasi di versi mendatang (primitif yang menjaga privasi). Seperti yang dijelaskan di Bagian 7.4, beberapa akun yang dimiliki oleh pengguna atau grup pengguna juga menyediakan jalan untuk meningkatkan konkurensi eksekusi.
5.3 Pindahkan modul
Sebuah modul Move berisi bytecode Move yang mendeklarasikan tipe data (struktur) dan prosedur. Itu diidentifikasi oleh alamat akun yang mendeklarasikan modul bersama dengan nama modul. Misalnya, pengidentifikasi untuk modul mata uang pertama pada Gambar 2 adalah 0x1::coin. Sebuah modul dapat bergantung pada modul lain pada rantai, seperti yang ditunjukkan pada modul dompet pada Gambar 2, dan kode modul lain dapat digunakan kembali.
Modul harus unik di dalam akun, yaitu nama modul harus tetap unik di setiap akun. Misalnya, akun dengan alamat 0x1 pada Gambar 2 tidak dapat mengklaim modul lain bernama koin. Di sisi lain, akun di alamat 0x3 dapat mendeklarasikan modul bernama koin, dan pengenal modul ini adalah 0x3:koin. Perhatikan bahwa 0x1::coin::Coin dan 0x3::coin::Coin adalah jenis yang berbeda dan tidak dapat digunakan secara bergantian dan juga tidak memiliki kode modul yang sama. Sebaliknya, 0x1::coin::Coin dan 0x1::coin::Coin> adalah instance berbeda dari tipe generik yang sama dan tidak dapat digunakan secara bergantian, tetapi dapat berbagi kode modul umum.
Modul di bawah alamat yang sama akan digabungkan ke dalam *paket (paket)* yang sama. Pemilik alamat ini menerbitkan paket secara keseluruhan di rantai, termasuk bytecode dan metadata paket. Metadata paket menentukan apakah suatu paket dapat ditingkatkan atau tidak diubah. Untuk paket perangkat lunak yang dapat diupgrade, pemeriksaan kompatibilitas dilakukan sebelum pemutakhiran diizinkan: fungsi antarmuka yang ada tidak dapat diubah, dan tidak ada sumber daya yang dapat disimpan dalam memori. Namun, pemutakhiran dapat menambah fungsi dan sumber daya baru.
Kerangka kerja Aptos terdiri dari pustaka inti dan konfigurasi blockchain Aptos, yang didefinisikan sebagai paket modul yang dapat diupgrade secara berkala (lihat Bagian 9.2).
Gambar 3: Contoh data on-chain
5.4 Sumber Daya
Mirip dengan modul, alamat akun juga dapat memiliki nilai data yang terkait dengannya. Di setiap alamat akun, nilai data ditentukan berdasarkan jenisnya, dan di bawah setiap akun, setiap jenis nilai data harus tetap unik. Menggunakan Gambar 3 sebagai contoh, alamat 0x50 menyimpan satu nilai, di mana 0x3::coin::Coin adalah tipe yang sepenuhnya memenuhi syarat. 0x3 adalah alamat modul Coin, Coin adalah nama modul, dan Coin adalah nama tipe data. Nilai data umum juga dapat digunakan, dan contoh umum yang berbeda diperlakukan sebagai jenis yang berbeda. Ini penting untuk skalabilitas, memungkinkan instance yang berbeda berbagi kode fungsi yang sama.
Aturan untuk mengubah, menghapus, dan menerbitkan nilai dikodekan dalam modul yang menentukan tipe data. Aturan keamanan dan validasi Move mencegah kode atau entitas lain untuk secara langsung membuat, memodifikasi, atau menghapus instans tipe data yang ditentukan dalam modul lain.
Memiliki paling banyak satu nilai tingkat teratas dari setiap jenis di bawah alamat terdengar membatasi. Namun, ini bukan masalah dalam praktiknya, karena pengembang dapat menghindari batasan apa pun dengan mendefinisikan tipe pembungkus yang berbeda dengan tipe data yang sama sebagai variabel anggota. Struktur Wallet (pada Gambar 3) adalah contoh cara menggunakan jenis pembungkus.
Perlu juga dicatat bahwa tidak semua tipe data dapat disimpan secara on-chain. Agar instans data memenuhi syarat sebagai nilai tingkat teratas, tipe data harus memiliki kemampuan Kunci. Selain itu, kemampuan Penyimpanan diperlukan untuk nilai bersarang. Tipe data dengan dua kemampuan juga disebut sumber daya.
5.5 Status Buku Besar
Dari perspektif mesin virtual Move (Move VM), setiap akun terdiri dari kumpulan nilai dan struktur data nilai kunci. Struktur data ini disebut entri dan disimpan dalam format Binary Normalized Serialization (BCS). Desain struktur data ini memungkinkan pengembang untuk menulis kontrak pintar yang dapat dieksekusi secara efisien ketika sejumlah kecil data disalin ke sejumlah besar akun; mereka juga dapat menulis kontrak pintar yang dapat dieksekusi secara efisien ketika sejumlah besar data terkonsentrasi sejumlah kecil akun. Pindahkan modul disimpan mirip dengan data akun, tetapi di bawah namespace terpisah. Status buku besar Genesis menentukan kumpulan akun awal dan status terkaitnya saat blockchain diinisialisasi.
Saat diluncurkan, blockchain Aptos akan diwakili oleh satu status buku besar. Namun, seiring penyebaran penggunaan dan perkembangan teknologi, Aptos akan memperluas jumlah shard untuk meningkatkan throughput (yaitu mengaktifkan beberapa status ledger) dan mendukung transaksi yang memindahkan atau mengakses aset di seluruh shard. Setiap status ledger akan mempertahankan semua aset on-chain dari shard tertentu, dan menyediakan model akun yang sama, serta penyimpanan data nilai kunci yang terperinci, menyediakan biaya yang hampir tetap untuk akses penyimpanan.
6. Pengalaman pengguna yang aman
Untuk menjangkau miliaran pengguna Internet, pengalaman pengguna Web3 harus aman dan nyaman. Pada bagian ini, kami akan menjelaskan beberapa inovasi dari blockchain Aptos untuk mencapai tujuan ini.
6.1 Perlindungan Kelayakan Transaksi
Menandatangani transaksi berarti penandatangan memberi otorisasi kepada blockchain untuk mengirimkan dan melaksanakan transaksi itu. Terkadang pengguna menandatangani transaksi tanpa hati-hati atau menyadari bahwa mereka sedang dimanipulasi. Untuk mengurangi risiko ini, blockchain Aptos membatasi kelayakan transaksi dan melindungi penanda tangan agar tidak terkunci dalam operasi konfirmasi tanpa batas. Saat ini Aptos menyediakan tiga langkah perlindungan yang berbeda: nomor seri pengirim, waktu kedaluwarsa transaksi, dan ID rantai yang ditentukan.
Nomor urut transaksi hanya dapat dikirimkan satu kali per rekening pengirim. Oleh karena itu, jika pengirim menemukan bahwa nomor urut rekening saat ini ≥ nomor urut transaksi t, maka t sudah di-commit, atau t tidak akan pernah di-commit (karena nomor urut yang digunakan oleh t sudah diambil oleh transaksi lain).
Waktu blockchain ditingkatkan dengan presisi tinggi dan frekuensi tinggi (biasanya sub-detik), lihat Bagian 7.3.1 untuk detailnya. Jika waktu blockchain melebihi waktu kedaluwarsa transaksi t, sekali lagi, t telah dilakukan, atau t tidak akan pernah dilakukan.
Setiap transaksi memiliki ID rantai yang ditetapkan untuk mencegah serangan replay oleh entitas jahat antara lingkungan blockchain yang berbeda (mis. lintas testnet dan mainnet).
6.2 Manajemen kunci berbasis gerakan
Seperti disebutkan di Bagian 5.2, akun Aptos mendukung rotasi kunci (rotasi kunci), yang merupakan fitur penting yang mengurangi risiko kebocoran kunci pribadi, serangan jarak jauh, dan peretasan algoritme kriptografi yang ada di masa mendatang. Selain itu, akun Aptos cukup fleksibel untuk mendukung model penyimpanan hybrid baru, di mana pengguna dapat mendelegasikan kemampuan untuk merotasi kunci pribadi akun ke satu atau lebih penjaga dan entitas tepercaya lainnya. Kebijakan kemudian ditentukan melalui modul Pindahkan yang memungkinkan entitas tepercaya ini memutar kunci dalam keadaan tertentu. Misalnya, entitas mungkin merupakan kunci multisig kout-of-n yang dipegang oleh banyak pihak tepercaya, sehingga menyediakan layanan pemulihan kunci jika kunci pengguna hilang (mis. 20% bitcoin saat ini terkunci di akun [7]) .
Selain itu, meskipun banyak dompet menyediakan berbagai skema pemulihan kunci seperti kunci pribadi yang didukung cloud, perhitungan multi-pihak, dan pemulihan sosial, skema ini tidak didasarkan pada implementasi blockchain (yaitu, off-chain). Oleh karena itu, setiap dompet harus mengimplementasikan skema manajemen kuncinya sendiri, dan bagi pengguna, manajemen kunci menjadi kotak hitam. Sebaliknya, fungsi manajemen kunci di Aptos menyediakan operasi manajemen kunci yang lengkap dan transparan, dan pada saat yang sama sangat mengurangi kesulitan penerapan solusi manajemen kunci dompet.
6.3 Transparansi transaksi yang ditandatangani sebelumnya
Hari ini, sebagian besar dompet buram untuk transaksi yang mereka tandatangani. Oleh karena itu, pengguna sering kali tertipu oleh transaksi berbahaya yang mengakibatkan hilangnya dana dan serangkaian konsekuensi serius. Bahkan blockchain yang dapat menanyakan data dari setiap transaksi pada rantai tidak dapat menghindari kerugian ini. Saat ini hanya ada sedikit perlindungan pengguna, yang membuat pengguna terpapar berbagai macam serangan.
Untuk mengatasi masalah ini, ekosistem Aptos menyediakan layanan pra-eksekusi transaksi: hasil transaksi (dalam bentuk yang dapat dibaca manusia) diberikan kepada pengguna sebelum mereka menandatanganinya. Aptos akan membantu mengurangi penipuan dengan menggabungkan layanan pra-eksekusi transaksi dengan serangan yang diketahui sebelumnya dan kontrak pintar berbahaya. Selain itu, Aptos memungkinkan dompet memberlakukan pembatasan pada transaksi selama eksekusi. Pelanggaran pembatasan ini akan mengakibatkan transaksi dibatalkan untuk lebih melindungi pengguna dari aplikasi jahat atau serangan rekayasa sosial.
6.4 Protokol Klien Ringan Praktis
Hanya mengandalkan sertifikat TLS/SSL penyedia API untuk membangun kepercayaan antara klien dan server blockchain tidak cukup melindungi klien. Bahkan jika ada sertifikat yang valid, dompet dan klien tidak dapat menjamin keaslian dan integritas data yang diberikan kepada mereka. Oleh karena itu, penyedia API dapat mengembalikan data blockchain yang salah atau berbahaya, menipu pihak ketiga, dan melakukan serangan pembelanjaan ganda.
Gambar 4: Semua fase siklus hidup pemrosesan transaksi benar-benar independen dan dapat diparalelkan
Untuk mencegah hal ini terjadi, Aptos menyediakan protokol pembuktian status dan klien ringan yang dapat digunakan dompet dan klien untuk memverifikasi validitas data yang disediakan oleh server pihak ketiga yang tidak tepercaya. Selain itu, seperti dijelaskan dalam Bagian 7.6.2, menggunakan bukti status berbasis stempel waktu, klien ringan dapat melacak perubahan dalam konfigurasi jaringan (*perubahan zaman)* atau menyinkronkan dari node tepercaya saat ini (*jangkar)* Terbaru status [8], untuk menjaga status akun secara real-time (mis., dalam hitungan detik). Dengan stempel waktu berfrekuensi tinggi dan bukti status berbiaya rendah, Aptos menyediakan layanan yang aman bagi klien.
Selain itu, node Aptos juga menyediakan banyak antarmuka penyimpanan berkinerja tinggi. Setelah lebih lanjut menyempurnakan antarmuka ini di masa mendatang, mereka akan mendukung bukti data dan akun tertentu pada rantai langganan. Hal ini memungkinkan klien ringan untuk menyimpan hanya data minimal yang dapat diverifikasi di masa mendatang tanpa menjalankan node penuh atau memproses transaksi dalam jumlah besar.
7. Pemrosesan transaksi yang efisien, batch, dan paralel
Untuk memaksimalkan throughput, meningkatkan konkurensi, dan mengurangi kerumitan rekayasa, proses pemrosesan transaksi blockchain Aptos dibagi menjadi beberapa tahapan. Setiap tahap sepenuhnya independen dan dapat diparalelkan secara independen, mirip dengan arsitektur prosesor superscalar modern. Ini tidak hanya memberikan manfaat kinerja yang signifikan, tetapi juga memungkinkan blockchain Aptos untuk menawarkan model interaksi validator-klien baru. Misalnya:
- Klien diberi tahu ketika transaksi tertentu termasuk dalam kumpulan transaksi yang dipesan. Transaksi yang ditahan dan valid umumnya dilakukan segera.
- Klien diberi tahu ketika sekumpulan transaksi yang dipesan dipesan. Oleh karena itu, untuk mengurangi keterlambatan dalam menentukan hasil dari transaksi yang akan dieksekusi, klien dapat mengeksekusi transaksi secara lokal alih-alih menunggu node validasi jarak jauh untuk menyelesaikan eksekusi.
- Klien dapat memilih untuk menunggu pemverifikasi mengeksekusi transaksi yang diautentikasi, lalu menyinkronkan status transaksi yang telah selesai (lihat Bagian 8).
Desain modul Aptos membantu meningkatkan kecepatan pengembangan dan siklus rilis yang lebih pendek, dan pengembang dapat mengoptimalkan modul individual alih-alih keseluruhan sistem. Demikian pula, desain modular menyediakan jalur terstruktur untuk menskalakan validator, memungkinkan validator memanfaatkan sumber daya komputasi, jaringan, dan penyimpanan dari beberapa mesin. Gambar 4 menunjukkan berbagai fase pemrosesan dari siklus hidup pemrosesan transaksi.
7.1 Pemrosesan batch
Batching adalah pengoptimalan efisiensi yang penting untuk setiap tahap pemrosesan Aptos. Saat menyiarkan transaksi, validator mengelompokkan transaksi ke dalam batch; selama fase konsensus, batch digabungkan menjadi blok. Fase eksekusi, penyimpanan, dan autentikasi ledger juga merupakan operasi batch, memberikan peluang untuk menyusun ulang, mengurangi operasi (seperti komputasi ganda atau verifikasi tanda tangan), dan eksekusi paralel.
Transaksi batch mungkin mengalami sedikit penundaan, seperti menunggu 200ms untuk mengisi batch sebelum menyebarkan transaksi. Namun, waktu tunggu maksimum untuk batching dan ukuran batch maksimum dapat dikonfigurasi, memungkinkan jaringan terdesentralisasi untuk mengoptimalkan latensi dan efisiensi secara otomatis. Batching memungkinkan penetapan prioritas pasar biaya yang efisien untuk transaksi sambil menghindari serangan denial of service (DoS) oleh klien jahat.
7.2 Siaran transaksi berkelanjutan
Menurut sudut pandang utama Narwhal & Tusk [9], propagasi transaksi dan konsensus di Aptos dipisahkan. Validator terus-menerus mentransfer kumpulan transaksi satu sama lain sambil memanfaatkan semua sumber daya jaringan yang tersedia. Setiap batch didistribusikan oleh pemverifikasi v dipertahankan dan intisari batch yang ditandatangani dikirim kembali ke v. Tanda tangan tertimbang 2f + 1 apa pun pada intisari kumpulan membentuk Bukti Ketersediaan (PoAv) sesuai dengan persyaratan konsensus yang ditentukan dalam Bagian 7.3. Bukti seperti itu (PoAv) menjamin bahwa setidaknya validator jujur berbobot f+1 telah menyimpan batch, sehingga semua validator jujur akan dapat mengambilnya sebelum dieksekusi.
Transaksi tertunda yang tidak terbatas dapat membuat serangan DoS yang menyebabkan node validator kehabisan penyimpanan dan macet. Untuk mencegah hal ini, setiap kumpulan transaksi memiliki stempel waktu terkait. Cap waktu pada batch memungkinkan pengumpulan sampah yang efisien oleh validator. Selain itu, mekanisme kuota untuk node validator tunggal juga dirancang untuk memastikan bahwa bahkan dalam kasus yang paling ekstrim (seperti potensi serangan Bizantium), ruang tidak akan habis. Pada saat yang sama, ada batasan jumlah data dalam batch, dan Aptos akan memverifikasi ukuran data dalam penyimpanan persisten. Terakhir, melalui beberapa optimalisasi untuk cache transaksi dan pembersihan data transaksi yang berlebihan, tidak hanya biaya penyimpanan yang dikurangi, tetapi juga integrasi performa tinggi dari mesin eksekusi paralel dijamin.
7.3 Blokir penyortiran metadata
Ada kesalahpahaman umum bahwa kecepatan konsensus yang lambat adalah hambatan utama untuk throughput tinggi dan latensi rendah dari blockchain. Salah satu inovasi utama dari blockchain Aptos adalah pemisahan tugas terkait non-protokol dari tahap konsensus, seperti propagasi transaksi, eksekusi/penyimpanan transaksi, dan otentikasi buku besar. Dengan memisahkan propagasi transaksi dari fase konsensus, pengurutan dapat dilakukan pada bandwidth yang sangat rendah (hanya blok metadata dan bukti), menghasilkan throughput transaksi yang tinggi dan latensi yang minimal.
Hari ini, blockchain Aptos menggunakan versi terbaru DiemBFTv4 [10], sebuah protokol konsensus BFT yang responsif secara optimis. Biasanya, konsensus hanya memerlukan dua perjalanan pulang pergi jaringan (seluruh waktu perjalanan pulang pergi jaringan biasanya kurang dari 300 milidetik), dan validator abnormal disesuaikan secara dinamis melalui mekanisme reputasi pemimpin [11]. Mekanisme reputasi pemimpin on-chain akan mempromosikan reputasi validator yang berhasil mengirimkan blok selama "periode jendela", dan menurunkan validator yang tidak berpartisipasi. Mekanisme baru ini secara signifikan meningkatkan kinerja sistem terdesentralisasi, memberikan insentif yang tepat untuk node, dan meminimalkan dampak validator yang tidak aktif pada throughput dan latensi.
DiemBFTv4 menjamin keaktifan di bawah sinkronisasi parsial dan keamanan di bawah asinkron Ketika total saham validator lebih besar dari atau sama dengan 3f + 1, mungkin ada paling banyak validator yang salah dengan bobot pasak. Sejak 2019, DiemBFTv4 telah menjalani pengujian ekstensif dengan lusinan operator node dan ekosistem multi-dompet dalam beberapa iterasi. Kami juga bereksperimen dengan penelitian terbaru kami (misalnya Bullshark [12]) dan protokol lain yang mengandalkan riwayat blok dan komunikasi terkait untuk menentukan pemesanan dan finalitas metadata blok.
Blok konsensus dan stempel waktu proposal diusulkan oleh pemimpin dan disetujui oleh validator lain, seperti yang ditunjukkan pada Gambar 5. Penting untuk dicatat bahwa setiap blok konsensus hanya berisi metadata dan bukti kumpulan. Tidak diperlukan transaksi aktual dalam blok konsensus, karena PoAV memastikan bahwa kumpulan transaksi tersedia pada tahap eksekusi setelah pemesanan metadata blok (lihat Bagian 7.2). Validator dapat memberikan suara pada proposal pemimpin setelah bukti diverifikasi dan kriteria metadata blok terpenuhi (misalnya, stempel waktu proposal tidak boleh melebihi waktu kedaluwarsa blok).
7.3.1 Waktu blockchain
Blockchain Aptos menetapkan setiap blok yang diusulkan dan semua transaksi terkait dalam blok tersebut sebagai perkiraan, stempel waktu fisik yang disepakati. Stempel waktu ini mendukung sejumlah kasus penggunaan penting. Misalnya:
- Logika terkait waktu dalam kontrak pintar. Misalnya, pengembang ingin memberi kode bahwa semua tawaran untuk lelang harus diterima sebelum jam 12 siang pada hari Kamis.
- Saat oracle menerbitkan data on-chain, stempel waktu on-chain yang akurat dan tepercaya diperlukan untuk mengkorelasikan peristiwa dan menangani latensi dari data dunia nyata.
- Klien dapat mengetahui seberapa mutakhir mereka di blockchain. Untuk alasan keamanan, untuk menghindari data basi dan serangan jarak jauh, klien harus memiliki akses ke stempel waktu presisi tinggi saat status akun diperbarui.
- Mengaudit blockchain dengan stempel waktu tepercaya dapat memberikan korelasi yang kuat dengan peristiwa off-chain, seperti memastikan bahwa pengeluaran yang ditegakkan secara hukum seperti yang diharapkan.
- Kedaluwarsa transaksi didasarkan pada stempel waktu komit terbaru. Sebagai perlindungan tambahan untuk transaksi sisi klien, klien dapat memilih waktu kedaluwarsa transaksi, seperti yang dijelaskan di Bagian 6.1.
Blockchain Aptos memberikan jaminan berikut untuk stempel waktu semua transaksi dalam satu blok:
- Di blockchain, stempel waktu meningkat secara monoton. Misalkan blok B1
- Jika stempel waktu T dari blok transaksi dikonfirmasi, maka setidaknya f + 1 validator yang jujur percaya bahwa titik waktu T telah berlalu. Pemverifikasi yang jujur hanya dapat memberikan suara pada blok ketika jamnya sendiri ≥ stempel waktu blok T. Lihat Bagian 7.2.
- Jika blok transaksi memiliki sejumlah tanda tangan konsensus pada stempel waktu T, maka pemverifikasi yang jujur akan melakukannya
Stempel waktu terbaru diperbarui pada setiap blok yang dikomit dan digunakan sebagai stempel waktu untuk semua transaksi di blok itu. Saat jaringan sinkron, satu blok transaksi dilakukan untuk setiap perjalanan bolak-balik jaringan, memberikan pembaruan cepat dan pengaturan waktu yang sangat andal. Pemesanan yang lebih halus dalam blok transaksi dapat ditentukan jika diinginkan.
7.4 Eksekusi transaksi paralel
Setelah metadata blok konsensus disortir, semua node validator, node penuh, atau klien dapat menjalankan transaksi. Setidaknya 2f+1 weighted validator memiliki transaksi yang sedang berjalan pada batch yang diusulkan. Karena propagasi transaksi berkelanjutan, validator jujur lainnya akan menerima kumpulan transaksi dari waktu ke waktu. Jika node validator yang jujur belum menerima kumpulan transaksi yang dipesan pada saat mencapai fase eksekusi, ia dapat mengunduhnya dari 2f+1 validator tertimbang pasak, yang diketahui memiliki setidaknya f+1 validator tertimbang pasak (tidak kurang dari setengah penandatangan PoAV dengan bobot pasak) jujur.
Tujuan penting dari blockchain adalah untuk mencapai pemrosesan paralel sebanyak mungkin. Blockchain Aptos dimulai dari dua aspek model data dan mesin eksekusi.
7.4.1 Model Data Paralel
Model data bahasa Move secara native mendukung pengalamatan data dan modul secara global. Transaksi dengan data dan akun yang tidak tumpang tindih dan bertentangan dapat dijalankan secara paralel. Mengingat desain pipeline yang digunakan di Aptos, penataan ulang transaksi dapat mengurangi konflik dan dengan demikian meningkatkan konkurensi.
Bahkan jika transaksi mengubah rangkaian nilai on-chain yang sama, sebagian besar transaksi masih dapat dijalankan secara paralel. Blockchain Aptos memperkenalkan konsep baru, tulis delta, yang menjelaskan modifikasi pada status akun daripada status akun yang dimodifikasi (mis. penambahan bilangan bulat daripada sekadar menentukan nilai akhir). Semua pemrosesan transaksi dapat dilakukan secara paralel, dan kemudian penulisan delta ke nilai yang bertentangan dilakukan dalam urutan yang benar untuk memastikan hasil yang deterministik.
Seiring waktu, blockchain Aptos akan terus menyempurnakan model data dengan meningkatkan konkurensi (mis., memanfaatkan petunjuk baca/tulis) dan meningkatkan pengalaman pengembang, memungkinkan pengembang untuk membuat, memodifikasi, dan menggabungkan nilai on-chain secara lebih alami. Move memberikan fleksibilitas untuk peningkatan fitur tingkat bahasa dan khusus platform.
7.4.2 Mesin eksekusi paralel
Mesin eksekusi paralel Block-STM mendeteksi dan mengelola konflik transaksi yang dipesan sambil melakukan kontrol konkurensi optimis untuk mencapai paralelisme maksimum di bawah urutan tertentu [13].
Transaksi batch diparalelkan menggunakan kunci optimis dan diverifikasi setelah eksekusi. Kegagalan validasi akan mengakibatkan eksekusi ulang. Block-STM menggunakan struktur data multi-versi untuk menghindari konflik tulis-tulis. Semua penulisan ke lokasi yang sama disimpan dengan versinya, yang berisi ID mereka dan berapa kali penulisan ulang secara optimis. Ketika transaksi tx membaca data memori, ia akan memperoleh transaksi dengan tinggi blok tertinggi yang muncul sebelum tx dari struktur data multi-versi dalam urutan yang telah ditetapkan, dan menulis nilai transaksi dan versi terkaitnya.
Block-STM telah diintegrasikan ke dalam blockchain Aptos Untuk memahami potensi kinerja Block-STM, kami menggunakan basis data dalam memori, dengan transaksi perpindahan point-to-point yang bermakna (non-trival) (misalnya: 8 baca dan 5 tulis ) sebagai tolok ukur yang berdiri sendiri, hanya untuk eksekusi (bukan end-to-end). Pada Gambar 6, kami menunjukkan hasil eksekusi Blok-STM. Setiap blok berisi 10.000 transaksi, dan jumlah akun menentukan tingkat konflik dan perselisihan.
Pada persaingan rendah, TPS Block-STM 16 kali lipat dari eksekusi linier 32-thread, dan pada persaingan tinggi, TPS Block-STM juga meningkat 8 kali lipat. Tidak seperti mesin eksekusi paralel blockchain lainnya, Block-STM mampu secara dinamis dan transparan (tanpa diminta pengguna) menangkap paralelisme intrinsik dari setiap beban kerja. BlockSTM dapat secara bersamaan mendukung transaksi yang lebih kompleks daripada lingkungan eksekusi paralel yang memerlukan pengetahuan lanjutan tentang lokasi data yang akan dibaca atau ditulis. Properti ini menghasilkan transaksi yang lebih sedikit tetapi lebih efisien, mengurangi biaya, dan memberikan latensi yang lebih rendah bagi pengguna. Lebih penting lagi, membagi hal-hal menjadi beberapa transaksi kecil merusak atomisitas transaksi (semua operasi tidak dapat dibagi, baik semua operasi berhasil atau gagal semua). Menggabungkan semantik transaksional ekspresif dengan eksekusi paralel di Block-STM memungkinkan pengembang mendapatkan yang terbaik dari kedua dunia.
Perhatikan bahwa langkah pemesanan metadata blok tidak menghalangi pemesanan ulang transaksi selama fase eksekusi paralel. Untuk mengoptimalkan kinerja konkurensi untuk eksekusi paralel, transaksi dapat disusun ulang di seluruh blok. Satu-satunya persyaratan adalah bahwa penataan ulang semua validator yang jujur harus tidak dapat diubah. Mengoptimalkan eksekusi paralel dan menambahkan pengacakan ke penataan ulang dapat meningkatkan kinerja dan berpotensi mencegah teknologi miner extractable value (MEV) dari penataan ulang oleh transaksi validator dengan motif tersembunyi. Dalam desain pipeline ini, strategi anti-MEV "order-then-reveal" (Order-then-reveal) juga dapat ditambahkan.
Blok-STM dan pemesanan ulang transaksi adalah teknik pelengkap untuk meningkatkan konkurensi eksekusi. Mereka dapat digabungkan dengan petunjuk akses baca/tulis transaksional untuk konkurensi tambahan.
7.5 Penyimpanan massal
Hasil dari fase eksekusi paralel adalah kumpulan tulis dari semua transaksi dalam grup. Set tulis ini dapat disimpan dalam memori untuk kecepatan eksekusi maksimum dan kemudian digunakan sebagai cache untuk blok berikutnya atau kumpulan blok yang akan dieksekusi. Setiap penulisan yang tumpang tindih hanya perlu ditulis ke penyimpanan stabil satu kali. Jika validator gagal sebelum menyimpan set tulis dalam memori, validator dapat melanjutkan eksekusi paralel dari fase pemesanan metadata blok. Memisahkan penyimpanan massal kumpulan tulis dari langkah eksekusi paralel memastikan bahwa eksekusi paralel dapat berjalan secara efisien. Singkatnya, batching set tulis mengurangi jumlah operasi penyimpanan dan memanfaatkan operasi I/O yang lebih efisien dan lebih besar.
Jumlah memori yang dicadangkan untuk cache set tulis dapat dikonfigurasi secara manual berdasarkan per mesin dan menyediakan mekanisme tekanan balik alami. Granularitas pemrosesan batch dapat berbeda dari granularitas blok eksekusi paralel jika penyetelan diperlukan untuk lingkungan I/O dan memori tertentu.
7.6 Otentikasi Buku Besar
Pada titik ini (penyimpanan batch), masing-masing validator pada pipeline telah menghitung status baru untuk blok transaksi yang dilakukan. Namun, untuk secara efisien mendukung klien ringan yang diautentikasi dan sinkronisasi status, blockchain Aptos mengimplementasikan otentikasi buku besar untuk riwayat buku besar dan status buku besar. Perbedaan utama dengan blockchain Aptos adalah bahwa autentikasi buku besar tidak berada pada jalur kritis pemrosesan transaksi, dan bahkan dapat berjalan sepenuhnya di luar kendali jika diperlukan.
7.6.1 Verifikasi riwayat akun
Validator menambahkan transaksi, bersama dengan output eksekusinya, ke dalam struktur data ledger yang diautentikasi secara global. Bagian dari keluaran transaksi adalah kumpulan penulisan status, termasuk perubahan yang dilakukan pada status global yang dapat diakses oleh Pindahkan. Validator singkat untuk struktur data ini adalah komitmen yang mengikat ke riwayat buku besar, yang mencakup kumpulan transaksi yang baru dieksekusi. Mirip dengan eksekusi transaksi, pembuatan struktur data ini bersifat deterministik.
Setiap pemverifikasi menandatangani autentikator pendek ke dalam versi baru database yang dihasilkan. Validator berbagi satu sama lain set validator pendek bertanda tangan terbaru mereka, secara kolektif menggabungkan pengesah pendek bertanda kuorum, dan juga saling berbagi validator pendek bertanda kuorum terbaru.
Menurut properti protokol BFT, dengan menggunakan tanda tangan kolektif ini, klien dapat mempercayai bahwa versi database mewakili riwayat buku besar yang lengkap, valid, dan tidak dapat diubah. Klien dapat meminta validator apa pun (atau salinan database pihak ketiga mana pun, seperti simpul penuh) untuk membaca nilai database, dan menggunakan validator dan bukti data yang diperlukan untuk memverifikasi hasilnya.
7.6.2 Sertifikasi status berkala
Seluruh status global yang dapat diakses oleh bahasa Pindahkan dapat digabungkan pada titik mana pun dalam sejarah menjadi validator singkat, serupa dengan ringkasan riwayat buku besar. Karena sifat akses acak dari negara global (tidak seperti sejarah buku besar lampiran saja), mempertahankan sertifikasi ini mahal. Namun, ketika memperbarui struktur data dalam batch besar, kita dapat menghitung pembaruan secara paralel dan juga memanfaatkan setiap tumpang tindih antara bagian-bagian yang harus diperbarui ketika setiap nilai status individual berubah. Blockchain Aptos secara sadar menggunakan validasi periodik dari keadaan global untuk mengurangi duplikat pembaruan bersama.
Selama periode waktu yang ditentukan dan dapat dikonfigurasi, jaringan menerbitkan transaksi titik pemeriksaan status, yang bagian hasilnya mencakup autentikator status global. Versi ini disebut pos pemeriksaan negara. Semakin besar jarak antara dua titik pemeriksaan, semakin rendah biaya yang diamortisasi untuk memperbarui struktur data autentikasi negara dengan setiap transaksi.
Dengan titik pemeriksaan status, orang dapat membaca nilai status apa pun dengan cara yang tidak dapat dipercaya tanpa menyimpan semua status global. Kemampuan ini bekerja dengan baik untuk aplikasi seperti sinkronisasi status inkremental, penyimpanan sharded di seluruh node validator, node validator stateless, dan klien ringan yang dibatasi penyimpanan.
Namun, karena pos pemeriksaan negara bersifat periodik, memperoleh bukti versi tertentu dari status buku besar memerlukan eksekusi transaksi tambahan secara bergantian untuk negara bagian yang hilang, atau memperoleh bukti yang memuatnya dari riwayat buku besar yang diverifikasi.
Pos pemeriksaan negara dikaitkan dengan versi transaksi tertentu dalam riwayat buku besar, dan dengan demikian terikat dengan stempel waktu yang terkait dengan kumpulan transaksi yang disebutkan di Bagian 7. Stempel waktu memungkinkan klien ringan untuk memahami ketepatan waktu nilai status yang telah terbukti. Dengan tidak adanya stempel waktu, bukti klien ringan hanya dapat memastikan validitas status sebelumnya dari waktu yang lama, yang memberikan sedikit jaminan asosiatif. Selain itu, stempel waktu bukti negara diperlukan untuk melacak akses historis dan audit (misalnya: menghitung saldo rata-rata token per jam dalam cadangan token).
Pos pemeriksaan negara dapat dihasilkan berdasarkan pos pemeriksaan negara sebelumnya dan perubahan negara selanjutnya dalam hasil transaksi. Oleh karena itu, mempertahankan pos pemeriksaan status ke penyimpanan yang stabil tidak perlu berada di jalur kritis pemrosesan transaksi. Selain itu, retensi poin verifikasi negara juga memiliki efek pemrosesan batch yang menguntungkan. Meng-cache pos pemeriksaan status terbaru (atau lebih tepatnya delta di antara mereka) dalam memori, dan hanya membuang pos pemeriksaan status periodik ke penyimpanan yang stabil, dapat sangat mengurangi konsumsi bandwidth penyimpanan. Pilihan bagaimana pos pemeriksaan dipertahankan tidak memengaruhi perhitungan struktur data yang diverifikasi. Oleh karena itu, ini merupakan pilihan untuk setiap node: operator node dapat melakukan trade-off yang sesuai antara kapasitas memori dan bandwidth penyimpanan.
8. Sinkronisasi Negara
Blockchain Aptos bertujuan untuk menyediakan sistem dengan throughput tinggi dan latensi rendah untuk semua peserta dalam ekosistem. Oleh karena itu, blockchain harus menyediakan protokol sinkronisasi status yang efisien untuk menyebarkan, memverifikasi, dan mempertahankan data blockchain ke klien ringan, node penuh, dan node verifikasi [14]. Selain itu, mengingat sumber daya perangkat keras pengguna yang berbeda, protokol sinkronisasi juga harus kompatibel dengan keterbatasan dan perbedaan sumber daya yang ada di jaringan. Sebagai contoh, itu harus memungkinkan node penuh arsip untuk memverifikasi dan menyimpan seluruh status dan riwayat blockchain, sementara juga memungkinkan klien ringan untuk secara efisien mengakses hanya sebagian kecil dari status blockchain.
Untuk mencapai fitur ini, blockchain Aptos menggunakan riwayat buku besar tersertifikasi dan bukti status yang disediakan oleh validator, full node, dan sinkronisasi lainnya (lihat Bagian 7.6.1) untuk mengimplementasikan protokol sinkronisasi yang fleksibel dan dapat dikonfigurasi. Khususnya, peserta jaringan dapat memilih strategi sinkronisasi yang berbeda untuk mengoptimalkan kasus dan kebutuhan penggunaan mereka sendiri.
Misalnya, Aptos menyediakan berbagai strategi sinkronisasi untuk node penuh, termasuk strategi sinkronisasi penuh; dan strategi yang mengabaikan catatan sejarah dan menggunakan jangkar untuk hanya menyinkronkan status blockchain terbaru. Aptos menyediakan berbagai strategi sinkronisasi untuk klien ringan, termasuk strategi sinkronisasi parsial yang dapat menyinkronkan akun atau data tertentu; dan strategi dapatkan data terverifikasi yang bisa mendapatkan saldo akun terverifikasi. Dalam semua kasus, Aptos memungkinkan peserta untuk memperoleh, memproses, dan menyimpan jumlah dan versi data tertentu melalui konfigurasi konfigurasi.
Melalui protokol sinkronisasi status yang fleksibel dan dapat dikonfigurasi ini, Aptos dapat memenuhi kebutuhan berbagai pelanggan dan memberikan strategi sinkronisasi yang lebih canggih dan efisien di masa mendatang.
9. Tata Kelola Masyarakat
Blockchain Aptos akan dimiliki, dioperasikan, dan diatur oleh komunitas yang luas dan beragam. Token asli Aptos akan digunakan untuk biaya transaksi dan jaringan, peningkatan protokol, dan pemungutan suara tata kelola untuk proses on-chain/off-chain, serta mengamankan blockchain melalui model proof-of-stake (PoS). Model ekonomi spesifik token Aptos akan dirilis nanti.
9.1 Biaya Transaksi dan Jaringan
Semua transaksi Aptos memiliki harga satuan biaya (ditentukan dalam token Aptos), memungkinkan validator untuk memprioritaskan transaksi dengan nilai tertinggi dalam jaringan. Selain itu, pada setiap tahap model pipeline, terdapat banyak peluang untuk mengabaikan transaksi bernilai rendah (sejauh mungkin untuk memastikan bahwa blockchain tetap dapat berjalan secara efisien pada kapasitas sistem maksimum). Seiring waktu, penerapan biaya akan memastikan bahwa biaya penggunaan blockchain Aptos sebanding dengan biaya sebenarnya dari penerapan perangkat keras, pemeliharaan, dan operasi node. Selain itu, aplikasi yang dirancang oleh pengembang dapat melakukan kompromi antara komputasi, penyimpanan, dan jaringan sesuai dengan biaya yang berbeda.
9.2 Tata Kelola Jaringan
Setiap pengoptimalan dan iterasi fitur utama pada blockchain Aptos akan melalui beberapa tahap, termasuk proposal, implementasi, pengujian, dan penerapan. Struktur ini memberikan peluang bagi pihak yang berkepentingan dan pemangku kepentingan untuk memberikan umpan balik, berbagi keprihatinan, dan memberikan saran. Sebagai tahap akhir, penyebaran biasanya dilakukan dalam dua langkah. Pertama, versi perangkat lunak dengan fitur baru akan diterapkan ke setiap node, dan kedua, fitur tersebut akan diaktifkan, misalnya, melalui flag fitur atau variabel konfigurasi on-chain.
Setiap penerapan perangkat lunak oleh operator node harus kompatibel ke belakang untuk memastikan bahwa perangkat lunak baru dapat dioperasikan dengan versi yang didukung. Proses penerapan versi perangkat lunak baru mungkin memakan waktu beberapa hari untuk memperhitungkan operator di zona waktu yang berbeda dan masalah eksternal apa pun. Setelah jumlah node yang cukup ditingkatkan, pengaktifan fitur baru dapat dipicu oleh titik sinkronisasi, seperti tinggi blok yang telah disepakati sebelumnya atau peralihan zaman. Dalam situasi darurat (misalnya ketika downtime tidak dapat dihindari), restart dapat diaktifkan melalui perubahan manual dan paksa oleh operator node, dan dalam kasus terburuk diaktifkan oleh hard fork di jaringan.
Berbeda dengan blockchain lainnya, blockchain Aptos mengkodekan konfigurasinya secara on-chain. Setiap validator dapat melakukan sinkronisasi dengan keadaan blockchain saat ini dan secara otomatis memilih konfigurasi yang benar (misalnya, protokol konsensus dan versi kerangka kerja Aptos) berdasarkan nilai on-chain saat ini. Berdasarkan fungsi ini, pemutakhiran di blockchain Aptos mulus dan instan.
Untuk mengaktifkan fleksibilitas dan konfigurasi selama proses pengaktifan, blockchain Aptos akan mendukung tata kelola on-chain di mana pemegang token dapat memilih berdasarkan bobot token yang dipertaruhkan. Protokol pemungutan suara on-chain bersifat publik, dapat diverifikasi, dan dapat instan. Tata kelola on-chain juga memungkinkan hasil non-biner tanpa penyebaran perangkat lunak. Misalnya, parameter protokol pemilihan pemimpin on-chain dapat dimodifikasi melalui tata kelola on-chain, sementara titik sinkronisasi yang diketahui sebelumnya tidak dapat menangani modifikasi dinamis, karena semua perubahan harus diketahui sebelumnya.
Tata kelola on-chain dapat digunakan selama proses manajemen pemutakhiran dari waktu ke waktu. Misalnya:
1. Pemegang Token memilih on-chain untuk beralih ke skema tanda tangan baru yang tahan kuantum
2. Pengembang mengimplementasikan dan memverifikasi rencana tanda tangan baru dan membuat versi perangkat lunak baru.
3. Validator memutakhirkan perangkat lunak mereka ke versi yang lebih baru.
4. Pemegang Token memilih on-chain untuk mengaktifkan skema tanda tangan baru, konfigurasi on-chain diperbarui, dan perubahan diterapkan.
Sebagai proyek open source, tata kelola blockchain Aptos sangat bergantung pada umpan balik komunitas yang kuat dan tata kelola on-chain. Dalam beberapa kasus, mungkin masih diperlukan untuk mengaktifkan pemutakhiran off-chain, tetapi ini akan diminimalkan seiring waktu.
9.3 Bukti Konsensus Sumpah Pasak
Untuk berpartisipasi dalam validasi transaksi pada blockchain Aptos, seorang validator harus memiliki saham minimum token Aptos. Selama proses pemilihan leader dalam propagasi transaksi, bobot voting dan pemesanan metadata blok, jumlah stake mempengaruhi 2f + 1 bobot stake PoAv secara proporsional. Validator memutuskan distribusi hadiah antara mereka dan staker masing-masing. Stakers dapat memilih sejumlah validator untuk mempertaruhkan token mereka untuk distribusi hadiah yang telah disepakati sebelumnya. Di akhir setiap zaman, validator dan staker masing-masing akan diberi hadiah melalui modul Move on-chain terkait.
Setiap validator dengan agunan yang memadai bebas untuk bergabung dengan blockchain Aptos. Semua parameter, termasuk nilai taruhan minimum yang disyaratkan, dapat diatur oleh pengaktif on-chain yang dijelaskan di Bagian 9.2.
10. Performa
Seperti dijelaskan dalam Bagian 7, blockchain Aptos mampu mencapai throughput optimal dan efisiensi perangkat keras melalui pipa pemrosesan transaksi paralel, optimal batch, dan modular. Inisiatif kinerja tambahan seperti peningkatan konsensus, penulisan tertunda, petunjuk transaksi, dan caching jalur kritis akan terus meningkatkan throughput dan meningkatkan efisiensi dari waktu ke waktu.
Hari ini, throughput blockchain sering diukur dalam transaksi per detik. Namun, ini adalah cara yang tidak tepat untuk membandingkan sistem mengingat berbagai tingkat biaya dan kompleksitas transaksi dan infrastruktur. Penundaan transaksi juga cacat, karena komitmen untuk penyelesaian dimulai dan diakhiri secara berbeda dalam eksperimen yang berbeda.
Selain itu, beberapa sistem memerlukan pengetahuan sebelumnya tentang input dan output transaksi dan memaksa transaksi logis untuk dipecah menjadi transaksi yang lebih kecil dan tidak rumit. Memisahkan transaksi menghasilkan pengalaman pengguna yang buruk dan secara artifisial memengaruhi latensi dan throughput, mengabaikan apa yang ingin dicapai pengembang. Sebaliknya, pendekatan Aptos memberikan pengembang kebebasan tak terbatas untuk membangun dan mengukur throughput dan latensi terhadap kasus penggunaan dunia nyata daripada transaksi sintetik.
Aptos Blockchain akan terus mengoptimalkan kinerja masing-masing validator, serta bereksperimen dengan teknik penskalaan yang menambahkan lebih banyak validator ke jaringan. Ada trade-off yang jelas di kedua arah. Setiap blockchain yang mampu melakukan eksekusi paralel dapat mendukung konkurensi yang lebih besar dengan membutuhkan perangkat keras yang lebih kuat atau bahkan membangun setiap validator sebagai kelompok mesin yang terpisah. Namun, ada batasan praktis untuk jumlah validator global, yang sesuai dengan biaya dan kerumitan operator validator. Kebangkitan dan popularitas database tanpa server di layanan cloud telah menggambarkan bahwa hanya ada sedikit entitas yang mampu menerapkan dan memelihara jenis sistem terdistribusi kompleks ini secara efektif.
10.1 Pecahan keadaan homogen
Awalnya, blockchain Aptos akan diluncurkan dengan status ledger tunggal. Seiring waktu, jaringan Aptos akan mengambil pendekatan unik untuk skalabilitas horizontal sambil tetap terdesentralisasi. Ini akan dicapai melalui keadaan beberapa buku besar yang di-sharded, yang masing-masing menyediakan API homogen dan menggunakan sharding sebagai konsep utama. Token Aptos akan digunakan untuk biaya transaksi, setoran, dan tata kelola semua pecahan.
Data dapat ditransfer antar pecahan melalui jembatan homogen. Pengguna dan pengembang dapat memilih skema sharding mereka sendiri sesuai dengan kebutuhan mereka. Misalnya, pengembang dapat mengusulkan shard baru, atau mengelompokkan pengguna dalam shard yang ada untuk mencapai konektivitas tinggi dalam shard. Selain itu, pecahan mungkin memiliki karakteristik sistem yang berbeda. Satu shard dapat dioptimalkan untuk komputasi dengan SSD, dan shard lainnya dapat dioptimalkan untuk penyimpanan besar berperforma rendah. Dengan menyediakan fleksibilitas perangkat keras di antara shard yang berbeda, pengembang dapat memaksimalkan pemanfaatan sumber daya sistem untuk aplikasi mereka.
Singkatnya, sharding status homogen menawarkan potensi penskalaan throughput horizontal, memungkinkan pengembang untuk memprogram dengan satu status umum di seluruh shard, dan memungkinkan dompet dengan mudah memasukkan data shard untuk penggunanya. Ini memberikan keunggulan kinerja yang signifikan, dikombinasikan dengan kesederhanaan platform smart contract Move terpadu.
Referensi
- "Aptos-core," 2022.
Dokumentasi daring. Tersedia di: https://github.com/aptos-labs/aptos-core - "Pindah," 2022.
Dokumentasi daring. Tersedia di: https://github.com/move-language/move - Matsuoka, C. Dixon, E. Lazzarin, dan R. Hackett. (2022) Presentasi laporan Status Enkripsi 2022. Dokumentasi daring. Tersedia di: https://a16z.com/tag/state-crypto-2022/
- Amsden, R. Arora, S. Bano, M. Baudet, S. Blackshear, A. Bothra, G. Cabrera, C. Catalini, K. Chalkias, Cheng, A. Ching, A. Chursin, G. Danezis, GD Giacomo , DL Dill, H. Ding, N. Doudchenko, Gao, Z. Gao, F. Garillot, M. Gorven, P. Hayes, JM Hou, Y. Hu, K. Hurley, K. Lewi, C. Li, Z .Li, Malkhi, S. Margulis, B. Maurer, P. Mohassel, L. de Naurois, V. Nikolaenko, T. Nowacki, O. Orlov, Perelman, A. Pot, B. Proctor, S. Qadeer, Rain, D. Russi, B. Schwab, S. Sezer, A. Sonnino, H. Venter, L. Wei, N. Wernerfelt, B. Williams, Q. Wu, X. Yan, T. Zakian dan R. Zhou, “libra Blockchain," 2019.
Dokumentasi daring. Tersedia di: https://developers.diem.com/papers/the-diem-blockchain/2020-05-26.pdf - Blackshear, E. Cheng, DL Dill, V. Gao, B. Maurer, T. Nowacki, A. Pott, S. Qadeer, DR Rain, S. Sezer, T. Zakian, and R. Zhou, “Move: A The Bahasa Sumber Daya yang Dapat Diprogram," 2019.
[Online]. Tersedia di: https://developers.diem.com/papers/diem-move-a-language-with-programmableresources/2019-06-18.pdf - Dill, W. Grieskamp, J. Park, S. Qadeer, M. Xu, dan E. Zhong, "Verifikasi Formal Kontrak Cerdas yang Cepat dan Andal dengan Validator Pindah," diterbitkan dalam Alat dan Algoritma untuk Konstruksi dan Analisis Sistem, D. Fisman dan G. Rosu, Eds.Cham: Penerbitan Internasional Springer, 2022, hlm.183-200.
- Popper (2021) Kata sandi yang hilang mengunci kekayaan bitcoin para jutawan.
Dokumentasi daring. Tersedia di: https://www.nytimes.com/2021/01/12/technology/bitcoin-passwords-wallets-fortunes.html - Diem Group, "Sinkronisasi Negara dan Verifikasi Informasi Komitmen dalam Sistem yang Dikonfigurasi Ulang", 2020.
Dokumentasi daring. Tersedia di: https://github.com/aptos-labs/aptoscore/blob/main/documentation/tech-papers/lbft-verification/lbft-verification.pdf - Danezis, L. Kokoris-Kogias, A. Sonnino, dan A. Spiegelman, "The narwhal and the tusk: mempool berbasis dag dan konsensus bft yang efisien," diterbitkan dalam Proceedings of the Seventeenth European Conference on Computer Systems, ser. EuroSys' 22. New York, NY, USA: Association for Computing Machinery, 2022, hal.34-50.
Dokumentasi daring. Tersedia di: https://doi.org/10.1145/3492321.3519594 - Diem Group, "Diembft v4: Replikasi Mesin Negara di diem Blockchain", 2021.
Dokumentasi daring. Tersedia di: https://developers.diem.com/papers/diem-consensus-state-machine-replication-in-the-diemblockchain/2021-08-17.pdf - Cohen, R. Gelashvili, L. Kokoris-Kogias, Z. Li, D. Malkhi, A. Sonnino, dan A. Spiegelman, “Ketahuilah para pemimpin Anda,” CoR, vol.abs/2110.00960, 2021.
Dokumentasi daring. Tersedia di: https://arxiv.org/abs/2110.00960 - Spiegelman, N. Giridharan, A. Sonnino, dan L. Kokoris-Kogias, “Bullshark: Implementasi praktis dari protokol Dag bft,” dalam Proceedings of the 20th Conference on Computer and Communications Security (CCS), ser.CCS [22 ]. Los Angeles, CA, USA: Asosiasi Mesin Komputasi, 2022.
- Gelashvili, A. Spiegelman, Z. Xiang, G. Danezis, Z. Li, Y. Xia, R. Zhou, dan D. Malkhi, “Block-stm: Menskalakan blok dengan mengubah kutukan penyortiran menjadi berkah bagi performa Rantai Eksekusi," 2022.
Dokumentasi daring. Tersedia di: https://arxiv.org/abs/2203.06871 - Lind, "Evolusi Sinkronisasi Status: Jalan Menuju 100.000+ Transaksi per Detik, Latensi Sub-Detik di Aptos," 2022.
Dokumentasi daring. Tersedia di: https://medium.com/aptoslabs/52e25a2c6f10
Sumber artikel: Buildler DAO
Berita lainnya tentang scalable web3 servers
Berita lainnya tentang scalable web3 servers
Solana Foundation 'disagrees' with SEC's claim SOL is a security
The Solana Foundation has tweeted its disagreement with the SEC’s framing of SOL as a security. The regulator called Solana’s native coin a security in its lawsuit against Binance.
TheBlockThe EU Goes Ahead Of The U.S In Crypto Adoption Regulations
The regulation is expected to become active 20 days from the publication date.
NulltxBinance Hit With Suspension Notice In Nigeria By Market Regulator
In a significant move, Nigeria's market regulator has issued a directive to suspend the operations of Binance, the largest cryptocurrency exchange globally, within the country.
BitcoinistCrypto.com Shuts Down US Institutional Exchange Amid Regulatory Concerns
Crypto.com, the Singapore-based exchange, has announced that it will shut down its institutional exchange service for US customers due to limited demand.
BitcoinistCZ Warns Employees After Leak of Binance Internal Chat
Binance CEO has warned staff to consider other career options if they are unsatisfied.
BeincryptoNorth Korean hackers used shadow IT workers to carry out crypto heists
N. Korean hackers employ thousands of shadow workers that pose as recruiters or potential employees to infiltrate crypto firms.
OthersUS SEC Calls These 67 Cryptocurrencies Worth $100 Billion As Securities
The US SEC has expanded the list of cryptocurrency it has deemed securities so far to 67, adding 16 new cryptocurrencies to the list.
OthersSEC Lawsuits Fuel Bitcoin and Ethereum Exodus From Exchanges
In the wake of these events, a substantial amount of bitcoin and ethereum has been withdrawn from exchanges.
OthersDaily Digest - 12 June 2023
Check out important crypto news from the last 24 hours.
Coinlive