
Baru-baru ini, Renaissance Insurance menerbitkan
sebuah artikel yang membahas tentang produk perangkat lunak untuk asuransi kargo. Kami mengembangkan produk ini berdasarkan pada platform Hyperledger Fabric. Di sekitar artikel, terjadi diskusi antara skeptis kripto dan penggemar kripto, orang-orang mengajukan sejumlah pertanyaan mendesak - mengapa mereka memerlukan blockchain, apakah blockchain non-publik memiliki hak untuk hidup, apa yang baik untuk Hyperledger dan sejenisnya. Saya ingin mengomentari masalah ini hari ini.
"Blockchain ada di sini hanya untuk PR dan hype"
Ini mungkin hal pertama yang dilakukan pengembang produk yang menggunakan blockchain yang berlaku untuk cryptocritics hari ini:
"Mengapa ini diperlukan di sini, karena tugas yang sama dapat diselesaikan dengan cara konvensional, tanpa blockchain."
Ya, kami benar-benar dapat menyelesaikan masalah yang sama tanpa blockchain. Tetapi jika kita mulai mencoba untuk memenuhi semua persyaratan yang terkait dengan keamanan informasi, saling percaya dan sebagainya, termasuk persyaratan seperti tanda tangan elektronik, maka kita ... akan menulis rantai-blok kita sendiri secara perlahan.
Misalkan peserta memberi tahu kami bahwa kami tidak memiliki kesempatan untuk mengganti sesuatu, karena peserta ingin mempercayai kami. Selain itu, akan lebih baik untuk memastikan konsistensi data, seperti yang mereka katakan, "out of the box", resistensi terhadap kegagalan sistem terdistribusi, metode pemulihan. Bagaimana ini bisa dilakukan? Sebagai contoh, kami mengambil satu set transaksi, menandatanganinya, mendapatkan hash dan menggunakannya untuk menandatangani set transaksi berikutnya, dan seterusnya. Hasilnya adalah rangkaian data yang tidak mungkin diubah apa pun. Pada umumnya, ini adalah blockchain yang sangat.
Ada perusahaan yang menggunakan sistem sendiri yang serupa dari awal, tetapi kami tidak mengerti intinya.
“Blockchain non-publik sama sekali bukan blockchain”
Kelompok pertanyaan kedua berasal dari para penggemar kripto yang berfokus pada penggunaan blockchain publik, terutama Ethereum. Pertanyaan-pertanyaan ini dipicu oleh kata-kata bahwa ketika memilih platform blockchain yang kami butuhkan:
- pemasok serius
- dukungan komunitas untuk pengembang profesional
- Kemerdekaan Ethereum
- kurangnya komunikasi dengan ICO
Tentu saja, serangkaian kriteria ini agak provokatif, karena mungkin tampak seolah-olah kita mengatakan bahwa pengembang non-profesional berpartisipasi dalam proyek ICO. Dan tentu saja, kami disalahkan atas fakta bahwa, "blockchain non-publik tidak dapat dianggap sebagai blockchain sama sekali."
Pertama, ada ketidakcocokan logis yang jelas: publisitas (dalam arti luas) sama sekali bukan kondisi untuk blockchain. Selain itu, semua kriteria formal untuk blockchain di Hyperledger sudah ada.
Omong-omong - solusi ini didukung oleh Linux Foundation, dan di sana mereka tidak mendukung siapa pun. Dalam hal ini, Linux Foundation dapat dianggap sebagai tanda kualitas. Tentu saja, kesalahan ditemukan dalam produk apa pun, dan dalam sumber Fabric kami juga menemukan mereka. Tetapi ada kesalahan dalam produk apa pun, terutama yang sedang berkembang.
“Kita perlu menggunakan blockchain publik yang terbukti”
Pendukung pendapat ini berasal dari ide ideal jaringan blockchain publik.
Setiap node memiliki banyak koneksi dengan yang lain, jaringan ini tahan terhadap segala kesulitan, keindahan. Anda bahkan dapat memenuhi skema yang mengesankan:

Tetapi situasi nyata dengan jaringan agak berbeda. Internet itu sendiri terdiri dari segmen besar yang terhubung satu sama lain bukan oleh sejumlah besar koneksi, tetapi oleh sejumlah kecil saluran trunk yang dilayani oleh beberapa perusahaan. Misalnya, jaringan Rostelecom terlihat seperti ini:

Misalnya, Kaliningrad terhubung ke dunia dengan hanya dua saluran milik Rostelecom dan Balttelecom. Dan itu hanya tergantung pada keinginan "orang dengan guntingan" bersyarat apakah segmen runet ini akan terhubung ke seluruh jaringan, dan khususnya ke jaringan Ethereum. Bayangkan situasinya: pertukaran lalu lintas dari beberapa segmen Runet dengan masternode Ethereum dimatikan dengan hanya memblokir TCP / UDP 30303 (atau bahkan lebih mudah - untuk sementara membatasi penemuan, tetapi ini hanya UDP), dan sementara tidak ada "koneksi", mereka berhasil menambang beberapa blok, membuat kesepakatan: misalnya, Vasya membeli mobil dari Petit seharga 10 et. Apa yang akan terjadi jika cukup waktu "ditahan" untuk keadaan seperti itu untuk subnet masternode, dan kemudian semuanya dikembalikan "sebagaimana mestinya"? Jelas bahwa ada penjelajah publik, tetapi ini lebih merupakan kontrol daripada pertahanan.
Selain itu, bahkan pada tahun 2019, serangan 51% dimungkinkan, seperti, misalnya, kasus BTC.com dan serangan BTC baru-baru ini pada Bitcoin Cache, atau, yang lebih berbahaya, serangan yang belum dikonfirmasi pada Ethereum. Kami memahami bahwa untuk komunitas crypto, prioritasnya sekarang adalah mengembangkan infrastruktur publik, dan ini mungkin berbeda dengan kepentingan sehari-hari perusahaan nyata. Jenis jaringan konsorsium digunakan oleh perusahaan besar, bank, organisasi asuransi, dan bagi mereka keadaan saat ini sistem blockchain publik belum memungkinkan mereka untuk digunakan dalam kepentingan bisnis nyata, dan bukan untuk prototipe atau sistem yang menduplikasi proses nyata.
Kelemahan kedua dari blockchain publik adalah transaksi berbayar. Ambil Ethereum yang sama: tidak ada departemen akuntansi Rusia yang dapat membeli gas, tidak ada cara hukum. Selain itu, biaya gas terkait dengan nilai tukar Ethereum, yang, seperti Anda ketahui, dapat berfluktuasi dalam kisaran yang sangat besar. Bisnis tidak menyukai ketidakpastian seperti itu.
"Tapi bagaimana mungkin pengguna Hyperledger Anda mengontrol informasi di blockchain?"
Jawabannya sangat sederhana. Setiap peserta dapat sepenuhnya menganalisis semua transaksi di saluran yang tersedia baginya, baik menggunakan Hyperledger Explorer dan menggunakan sistem kami, mendapatkan akses ke konten rekan yang terletak di infrastruktur peserta sendiri. Kami tidak akan membuat sistem publik karena beberapa alasan, di antaranya, terutama, persyaratan keamanan informasi peserta.
Manajemen arsitektur
Alasan lain kami menggunakan Hyperledger Fabric adalah karena kami membangun arsitektur yang terdiri dari beberapa saluran (saluran, dalam terminologi Hyperledger, adalah registri terpisah, blockchain dengan berbagai hak, hanya menghubungkan para peserta yang berpartisipasi dalam bisnis tertentu). proses). Kami dapat mengelola sistem dari sudut pandang menghubungkan peserta baru, tetapi kami tidak dapat mempengaruhi secara individu, misalnya, aturan untuk menghitung tarif asuransi. Tarif disepakati oleh semua peserta dengan akses.
Alternatif?
Jika kita berbicara tentang alternatif untuk Hyperledger, maka kita dengan serius hanya mempertimbangkan R3 Corda. Ini bukan blockchain, tetapi solusi yang lebih mudah, yang sekarang cukup aktif digunakan oleh bank dan organisasi keuangan lainnya.
Ethereum publik, sebagai alternatif, tidak cocok untuk alasan yang dijelaskan di atas. Kami memiliki bahasa yang agak segar, dan karenanya miskin untuk mengembangkan kontrak pintar Solidity, sejumlah kecil perpustakaan, kemampuan untuk bekerja dengan sistem eksternal melalui Oraclize. Selain itu, pertanyaan yang sangat besar muncul dari sudut pandang keamanan informasi: kontrak pintar dijalankan pada simpul pihak ketiga - misalnya, di Cina. Artinya, dari Cina atau Ukraina, permintaan untuk layanan di perusahaan harus datang, yang aksesnya harus disediakan dari mana-mana. Untuk keamanan bank atau perusahaan asuransi, ini tidak dapat diterima. Selain itu, harus dipahami bahwa kegiatan perusahaan asuransi diatur oleh Bank Sentral Federasi Rusia.
Dalam kasus kami, hanya ada satu cara untuk menggunakan jaringan publik - penahan. Dalam hal ini, jaringan publik digunakan secara eksklusif untuk mengkonfirmasi integritas, dan semua mekanisme lainnya adalah klasik, atau Kain Konsorsium-Hyperledger yang sama. Mungkin, setelah beberapa waktu, kami akan melakukan penahan di Ethereum yang sama jika bisnis melihat titik (dan peluang) dalam hal ini.
* * *
Kesimpulannya, keuntungan apa yang kita lihat di Hyperledger, karena itu kami menggunakan solusi ini dalam proyek kami untuk perusahaan asuransi dan keuangan?
- Bahasa yang kaya untuk menulis chaincode (kontrak pintar) (Golang, dan sekarang Java).
- Bebas dari faktor eksternal. Setidaknya faktor eksternal dapat dikendalikan.
- Kemampuan untuk memilih dan menggunakan sejumlah besar perpustakaan eksternal.
- Ketersediaan alat untuk semua peserta untuk melihat dan menganalisis blockchain.
- Manajemen arsitektur yang fleksibel.
- Masuknya proyek ke Linux Foundation, sebagai tanda kualitas dan tanda pendekatan yang serius.