Apa itu Tendermint?

Tendermint adalah protokol peringkat rendah yang terdiri daripada dua bahagian utama: enjin konsensus blockchain dan antara muka aplikasi generik. Tendermint Core, mesin konsensus blockchain, memfasilitasi rangkaian peer-to-peer dan memberikan konsensus bukti-kepentingan (PoS). Aplikasi BlockChain Interface (ABCI), sebaliknya, berfungsi sebagai alat untuk blockchain untuk menghubungkan ke protokol Tendermint Core.

Tujuan Tendermint adalah untuk menjadi enjin blockchain. Ini bertujuan untuk menjadi alat yang dapat digunakan oleh pembangun untuk melangkau kriptografi yang tidak baik dan teknikal dan melompat ke tahap blockchain dan pengembangan aplikasi yang lebih tinggi.

Teras Tendermint

Tendermint Core adalah perisian sumber terbuka yang dibungkus yang terbuat dari dua bahagian utama. Terutama, enjin konsensus blockchain Byzantine Fault Tolerant. Kedua, protokol rangkaian p2p.

Konsensus Jeneral

Diikutsertakan dalam algoritma konsensus Tendermint adalah konsep asas Toleransi Kesalahan Byzantine (BFT). Untuk memahami BFT, perlu mempunyai gambaran keseluruhan mengenai penyelesaiannya: Masalah Jeneral Byzantine.

Sejak dulu lagi segelintir jeneral dan tentera mereka berusaha menyerang sebuah bandar. Untuk mengalahkan kota itu semua jeneral yang diperlukan untuk menyerang pada masa yang sama – kurang daripada penyertaan penuh bererti jeneral akan kalah. Masalahnya adalah bahawa tidak ada jeneral yang dapat mengetahui kapan harus menyerang kota. Mereka semua terpencil di setiap sisi kota dan komunikasi antara mereka tidak mungkin diselaraskan. Mesej boleh hilang, rosak atau dipalsukan.

Tendermint Whitepaper oleh Jae Kwon

The Tendermint Whitepaper oleh Jae Kwon

Cabaran yang dihadapi para jeneral bertambah buruk apabila lebih banyak orang atau mesej diambil kira. Proof-of-Stake BFT Tendermint membolehkan seratus pengesah mengesahkan lejar mereka dengan cepat dan selamat antara satu sama lain. Dengan kata lain, semua pengesah tahu kapan harus menyerang bandar.

Algoritma BFT Proof-of-Stake mengatasi Masalah Byzantine Generals dengan menggunakan model rangkaian separa segerak. Pada asasnya, ini bermaksud bahawa jeneral yang mengelilingi bandar – atau pengesah yang mengundi di blok – tidak perlu bertindak pada waktu yang ditetapkan. Blok tidak diundi mengikut jadual atau ukuran yang telah ditentukan.

Tendermint mencapainya dengan memberikan hak validator untuk mengemukakan blok. Setelah blok dicadangkan, pengesah memilih dalam proses deterministik berbilang pusingan. Maknanya, langkah pertama cukup tanpa pandang bulu dan langkah kedua mengikut perintah yang ditetapkan.

Dengan Tendermint, validator diputar pada format round-robin berwajaran deterministik. Semakin banyak kepentingan pengesah, semakin banyak kali mereka dipilih sebagai pemimpin. Pada masa ini, protokol dibatasi pada seratus pengesah, namun mungkin untuk meningkatkan jumlah pengesah jika diperlukan.

Antaramuka Blockchain Aplikasi

Tendermint Core yang tersusun di atas adalah Aplikasi BlockChain Interface (ABCI). ABCI adalah replikator aplikasi Byzantine Fault Tolerant yang ditulis dalam bahasa apa pun. Anda boleh meniru aplikasi blockchain anda yang ditulis dalam C ++, Python, Solidity, atau bahasa lain ke mesin blockchain BFT prefab.

ABCI adalah penterjemah, pembungkus, dan soket antara aplikasi blockchain dan mesin blockchain Tendermint yang mereka duduki.

Menangani Monolit

Meletakkan ABCI di atas Tendermint Core adalah langkah utama untuk menurunkan halangan akses di sekitar pengembangan dengan blockchain.

Sebilangan besar sistem blockchain mempunyai seni bina monolitik, sering menyekat bahasa yang boleh ditulis di atasnya. Sebagai contoh, mesin maya bytecode lengkap Ethereum Turing menghadkan anda kepada bahasa yang sesuai dengan kod bytec. Pada masa ini, hanya Serpent dan Solid.

Sebaliknya, ABCI membolehkan bahasa pengaturcaraan ditumpuk di atas dan masih serasi sepenuhnya dengan enjin Tendermint Core yang mendasari. Pembangun tidak perlu mengikuti susunan monolitik tunggal dari blockchain yang mereka pilih. Sebagai gantinya, mereka dapat menumpukan perhatian pada logistik aplikasi dan tetap agnostik blockchain.

Ekosistem Tendermint dan Cosmos

Ekosistem Cosmos termasuk Tendermint

Masa Depan Tendermint berada di Cosmos

Pencipta Tendermint sumber terbuka telah melaksanakan projek yang jauh lebih besar yang disebut Cosmos. Direkayasa untuk menjadi internet blockchain, rangkaian Cosmos bersama aplikasi berasaskan Tendermint.

Bahagian yang menarik dari Cosmos adalah bahawa aplikasi tidak semestinya harus dibina di atas Tendermint untuk berfungsi dalam ekosistem Cosmos. Cosmos memanfaatkan replicator aplikasi Tendermint oleh sudu keras rantaian yang ada ke Tendermint Core. Tendermint bukan hanya tempat berkembang untuk aplikasi blockchain yang dimodulasi tetapi mesin kloning blockchain juga.

Hanya untuk penjelasan lebih lanjut, berikut adalah bagaimana Jae Kwon, pengasas Tendermint, menerangkan sudu keras.

“Sudu keras: rantai baru yang mengambil kira keadaan dari rantai yang ada; bukan untuk bersaing, tetapi untuk memberikan akses yang luas. ” – Jae Kwon

Beberapa projek terkemuka yang ingin berusaha keras ke Cosmos adalah OmiseGo, 0x, dan FOAM. Token setiap projek kemudian akan wujud di atas Tendermint, kemudian dihubungkan ke rangkaian blockchain Cosmos.

Kesimpulannya

Tendermint Core dan ABCI bersama-sama membentuk Tendermint – mesin blockchain sumber terbuka untuk pemaju mana-mana bahasa pengaturcaraan untuk dikembangkan. Tendermint mengalihkan pemaju fokus dari kriptografi tahap rendah dan ke lapisan aplikasi.

Analogi mengenai apa yang dimaksudkan oleh Tendermint sebagai blockchain adalah membandingkannya dengan kanvas artis. Anda boleh mengemukakan banyak idea di atas kanvas, namun seorang seniman moden jarang sekali perlu memikirkan untuk membina dan mengembangkannya sendiri. Tendermint, seperti kanvas, adalah asas di mana anda dapat mencipta aplikasi blockchain yang tidak berkesudahan.