ARK Core: Apa Selanjutnya..?
arkecosystem·@yayan·
0.000 HBDARK Core: Apa Selanjutnya..?
 **ARK Core v2 baru telah berjalan stabil di ARK Public Network selama lebih dari dua minggu, dan pengembangan tidak akan melambat dalam waktu dekat! Kami akan terus meningkatkan dan menerapkan fitur-fitur baru dengan masukan dari masyarakat dan khalayak yang lebih luas.** Pekerjaan telah dimulai pada beberapa fitur baru yang menarik untuk ARK Core. Dengan v2 selesai, tim pengembangan akan meluncurkan jadwal rilis yang jauh lebih agresif. Dalam posting ini, kami ingin menguraikan beberapa perubahan yang akan datang dan garis besar umum untuk bulan depan. Peningkatan ini akan menggunakan versi standar yang menganut model Semver : - **MAJOR**: 2.0.0 adalah rilis non-mundur awal yang kompatibel di Mainnet. - **MINOR**: 2.x.0 akan menambah fungsi baru dan mencakup perubahan yang lebih besar dan fitur baru yang memperkenalkan dampak akhir yang lebih tinggi (2.1.0, 2.2.0,…). - **PATCH**: 2.0.x akan perbaikan bug yang kompatibel ke belakang, perbaikan kecil dan fitur tambahan kecil (2.0.1, 2.0.11, ...). Meskipun secara teknis mengikuti model Semver, rilis "Minor" kami akan jauh lebih kecil daripada. Dalam postingan ini, kami akan membahas fitur dan perubahan yang lebih besar dalam peningkatan versi Core yang akan datang (harap perhatikan bahwa urutan integrasi dapat berubah). **ARK Core 2.1.0: Sepenuhnya Bermigrasi dari JavaScript ke TypeScript**  Tim pengembangan Core telah mulai bekerja pada migrasi penuh Core v2 dari JavaScript ke TypeScript. TS memungkinkan untuk pengecekan tipe statis bersama dengan fitur ECMAScript terbaru. TypeScript juga merupakan bahasa yang jauh lebih ketat daripada JavaScript dan memungkinkan Anda melihat kesalahan yang bisa tidak diperhatikan. Lebih mudah digunakan dan memungkinkan untuk debug kesalahan yang lebih cepat. Untuk pengembang, sangat sedikit yang akan berubah karena sintaksnya hampir sama dengan JavaScript (Typescript adalah superset JavaScript). TypeScript sangat masuk akal untuk mengembangkan proyek yang perlu ditingkatkan dan memiliki berbagai pengembang yang berkontribusi. Kami sudah berada di tahap akhir untuk berpindah dari JS ke TS. Setelah pengujian implementasi TS baru di Jaringan Pengembang ARK selesai, tim ARK akan merilis basis kode dan Delegasi akan memutakhirkan ARK Public Network. **ARK Core 2.2.0: Perbaikan Infrastruktur untuk AIP 11 & AIP 18** Peningkatan ARK Core 2.2.0 akan membawa beberapa peningkatan infrastruktur yang diperlukan untuk pengembangan AIP 11 & 18. Ini termasuk meningkatkan VendorField hingga 256 byte untuk membuka lebih banyak kasus penggunaan dan kemungkinan untuk memanfaatkan sepenuhnya SmartBridge kami pendekatan. Kami juga akan mengubah ID blok. ID blok baru akan disimpan sebagai 256 hex id secara default (sama seperti yang telah kita lakukan dengan ID transaksi). Ini untuk mencegah potensi blokir blok bentrok dengan ketinggian blok ARK. Di sisi komunikasi P2P, kita akan mulai memanfaatkan kekuatan serialisasi, mengurangi bandwidth jaringan dan membuat rantai kita lebih ramping. Node tidak akan lagi berkomunikasi melalui format payload JSON yang dapat dibaca manusia, sebaliknya kami akan mengaktifkan data serial dan mengirim buffer serial transaksi dan pemblokiran melalui jaringan P2P. Salah satu perubahan terbesar, paling memakan waktu dan menarik bagi pengguna akhir (dan bisnis) adalah integrasi jenis transaksi baru yang akan memberikan kasus penggunaan tambahan dan alat untuk Ekosistem ARK. Akan ada total 4 jenis transaksi baru, dengan satu yang ditingkatkan untuk mendukung input data yang lebih besar. Jenis TX baru akan menjadi: - **Timelock** - Ini pada dasarnya adalah jenis kontrak cerdas sederhana yang membatasi pengeluaran sejumlah ARK pada alamat yang ditentukan sampai waktu atau ketinggian blok depan yang telah ditentukan sebelumnya terpenuhi. Ini berguna untuk kontrak dan saluran pembayaran berbasis hash. Timelocks juga dapat digunakan untuk mengunci ARK untuk alasan apa pun (mencegah pengeluaran, keamanan, ...). - **Multipayments** - Untuk mengurangi payload pada blockchain dan akun untuk volume besar transaksi, Anda dapat menggabungkan (batch) pembayaran ke dalam transaksi multi-pembayaran. Ini juga akan mengurangi biaya per pembayaran. (misal: mengirim 16 tx dalam pembayaran gabungan sekaligus hanya menimbulkan satu biaya tx saja daripada 16 biaya berbeda.) Ini pasti akan berguna bagi para delegasi yang menjalankan pembayaran harian ke banyak alamat pemungutan suara. Pada awalnya kami akan membatasi ini menjadi 16 kemungkinan output (16 pembayaran per transaksi) dan meningkat dengan kebutuhan dengan pengujian lebih lanjut. - **Delegasikan pengunduran diri** - Ini memberi delegasi opsi untuk mengundurkan diri dari posisi mereka sebagai delegasi dengan membuat tidak mungkin bagi masyarakat untuk memilih delegasi yang mengundurkan diri. - **IPFS** - Serupa dengan Vendorfield SmartBridge kami, dengan aturan khusus tentang apa yang dapat dimasukkan ke dalam bidang IPFS (yaitu: hash dari file). Contoh penggunaan untuk ini adalah menyediakan cara mudah untuk memberi stempel waktu dan secara opsional mengenkripsi dan memverifikasi file melalui antarmuka yang akan kami bangun. Penerapan jenis IPFS tx ini tidak akan mengizinkan penyimpanan data di blockchain karena untuk itu Anda perlu menjalankan node IPFS khusus, tetapi ini akan menyediakan jenis tx untuk memverifikasi integritas data file melalui blockchain. Untuk mempelajari lebih lanjut tentang AIP-11, [klik di sini](https://github.com/ArkEcosystem/AIPs/blob/master/AIPS/aip-11.md). **AIP 18 - Protokol multi-tanda tangan** ARK Core v2 sudah mendukung multi-tanda tangan, tetapi implementasi saat ini kurang. Dengan demikian, kami telah memutuskan untuk menerapkan protokol yang jauh lebih kuat dan berguna. Kami cenderung menerapkan "Simple Schnorr Multi-Signatures" seperti yang dijelaskan dalam [makalah ini](https://eprint.iacr.org/2018/068). *Protokol lawas :* - Aturan 1 - pendaftaran multisign: *ownerPublickey* (dari mana alamat itu berasal), daftar kunci publik (N), *seumur hidup* (dari 1 hingga 72 jam), minimum *min* (0 <M <N + 1), daftar N tanda tangan . - Aturan 2 - penerimaan transaksi: minimum M tanda tangan berbeda yang terkait dengan kunci publik yang berbeda harus dimasukkan ke dalam transaksi. - Aturan 3 - jika tidak ada cukup tanda tangan, transaksi ditebar ke dalam kumpulan transaksi untuk jam buka hingga tanda tangan cukup dikirim melalui API (aturan ini telah dihapus dari penerapan saat ini) *Protokol baru:* - Seumur hidup dihapus dari protokol bersama dengan aturan di atas 3. - Alamat berasal dari kombinasi kunci publik yang dilakukan, menghapus kebutuhan basis kunci publik *pemilik58_check (versi + ripemd160 (sha256 (concat (pk1, ..., pkn))))*. - Versi yang diusulkan adalah* 0x05* untuk mencocokkan versi P2SH pada Bitcoin (alamat yang dimulai dengan 3). Untuk mempelajari lebih lanjut tentang AIP-18, [klik di sini](https://github.com/ArkEcosystem/AIPs/blob/master/AIPS/aip-18.md). **ARK Core 2.4.0: Aplikasi Inti CLI dan Inti melalui benang global** Core akan menjadi modul npm yang dapat diinstal dan berinteraksi dengan global. Misalnya Anda akan dapat memanggil *relay bahtera: mainnet* setelah menginstal inti melalui *benang global add @ arkecosystem / inti*. Konfigurasi dan opsi akan dikelola dengan cara yang sama melalui konfigurasi bahtera, yang akan memunculkan antarmuka untuk mengelolanya. Ini pada dasarnya akan menjadi pendekatan alternatif dari Ark Core Commander untuk semua yang ingin memiliki segalanya sebagai bagian dari paket Core untuk mengelola node mereka dengan beberapa perintah sederhana (misalnya. Bahtera pembaruan, bahtera relay: restart, bahtera pemalsu: start , relay bahtera: monitor, ...). **ARK Core 2.5.0: Halfway to v3 - Menjatuhkan semua dukungan legacy API dan RPC (v1)** EOL (End of Life) untuk v1 API dan RPC lama akan datang setengah jalan melalui siklus pengembangan v2 kami. Ini kemungkinan akan sekitar pertengahan 2019, yang memberikan semua pengembang yang masih mengandalkan API v1 cukup waktu untuk bermigrasi ke API v2. Kami akan mengumumkan tanggal pasti kapan dukungan akan berakhir untuk v1 dan RPC setelah kami lebih dekat untuk menyelesaikan rilis 2.3.0. Jika Anda masih menggunakan API RPC atau v1 lama, silakan lihat dokumentasi kami untuk API v2 dan JSON-RPC yang baru : - API v2 docs: [https://docs.ark.io/api/public/v2/](https://docs.ark.io/api/public/v2/) - JSON-RPC docs: [https://docs.ark.io/api/json-rpc/](https://docs.ark.io/api/json-rpc/) Menyingkirkan kode API warisan juga akan lebih lanjut membersihkan basis kode kami dan membantu agar sesuai dengan tren dan standar API terbaru. **ARK Core 2.6.0: Tulis ulang layer P2P untuk memanfaatkan teknologi yang berbeda untuk meningkatkan kinerja dan kehandalan** P2P, atau Peer To Peer layer, adalah tempat komunikasi antara node ARK terjadi. Ini adalah tingkat komunikasi untuk node untuk berinteraksi satu sama lain - melewati data bolak-balik, sampai pada kesimpulan berdasarkan seperangkat aturan yang telah ditetapkan, ... (misalnya. Forger node 1: “Hei, saya ingin menyertakan blok ini dalam rantai. ", Forger node 2:" OK, semua sepertinya bagus, kamu punya restuku! ”). Dengan panggilan API hanya ada satu masalah - setiap permintaan API memerlukan koneksi baru untuk dibuka, dan setiap permintaan menambahkan waktu tambahan. Ada beberapa opsi di sini dan kami akan melakukan penelitian ekstensif untuk memberikan peningkatan dan peningkatan kinerja terbaik secara keseluruhan tanpa membahayakan keamanan. Saat ini kami sedang menyelidiki beralih dari melakukan P2P melalui API ke P2P melalui Websockets. Dengan demikian kita pertama akan melakukan POC P2P melalui Websockets dan melihat apakah solusi yang paling layak untuk meningkatkan lapisan P2P. Kami akan melakukan pengujian dan perbandingan ekstensif (semua pro dan kontra) dan jika terbukti menjadi solusi yang lebih baik daripada penerapan saat ini, kami akan memindahkannya ke produksi. Keuntungan dari Websockets atas permintaan API adalah Anda dapat membuka koneksi persisten dengan node lain. Sekarang, Anda hanya mengirim data sesuka Anda tanpa perlu membuka koneksi baru untuk setiap permintaan yang Anda buat. Ini tidak hanya mengurangi kebisingan luar, tetapi juga menyediakan transfer data yang jauh lebih cepat antar node.  ###### Salah satu ide untuk peningkatan lapisan P2P adalah beralih ke Websockets Ini hanyalah salah satu dari ide-ide yang saat ini beredar, dan kami akan menyelami lebih dalam hal ini setelah kami lebih dekat dengan siklus pengembangan v2 ini. **ARK Core 2.7.0: Menerapkan Pengunduhan Paralel** Salah satu hambatan dari lapisan P2P saat ini di atas API juga memblokir unduhan ketika Anda menyinkronkan simpul Anda dari jaringan. Saat ini kami mengunduh blok dalam paket 400, satu demi satu yang dua hingga tiga kali lebih cepat daripada v1, tetapi masih membutuhkan banyak waktu untuk menyinkronkan dari blok 0 ke ketinggian saat ini (ini dapat bervariasi tergantung pada banyak faktor - kecepatan koneksi, perangkat keras, rekan-rekan lain yang Anda unduh dari). Saat ini sinkronisasi dari nol membutuhkan waktu mulai 8 jam hingga 15 jam. Proses ini dapat ditingkatkan dengan menerapkan "pengunduhan paralel". Koneksi dapat dibuka dengan beberapa node, bukan hanya satu, dan sejumlah besar blok yang berbeda dapat diunduh secara bersamaan dari berbagai node. Node penerima "merekatkan" mereka bersama-sama dalam urutan yang sesuai, seperti ketika mengunduh file melalui torrent di mana Anda terhubung ke "benih" dan mengunduh berbagai data yang berbeda dari file akhir yang sama. Menerapkan pengunduhan berurutan / paralel akan memberikan peningkatan kinerja lainnya dan akan mengurangi waktu sinkronisasi hingga beberapa jam. Pengunduhan blok paralel kemungkinan besar akan dilakukan melalui aliran karena ini adalah salah satu fitur paling kuat dari Node.JS. **ARK Core 2.8.0: Prasetel konfigurasi, hot reload dan pembaruan yang lebih mudah** Kami akan menyediakan lebih banyak opsi preset saat memulai node Inti Anda untuk hal-hal seperti pertukaran, pemalsuan, relai API, relai minimal (murni relai, tidak ada API publik atau titik akhir permukaan umum lainnya) untuk menyediakan konfigurasi konfigurasi nol lebih cepat yang akan secara eksponensial membantu Anda bangun dan berjalan tergantung pada use case dan spesifikasi kebutuhan Anda. Dengan rilis ini kami juga akan menerapkan "reload panas". Ketika konfigurasi diubah, plugin yang dipengaruhi oleh perubahan akan dimuat ulang saat runtime dan tidak perlu proses Core untuk memulai ulang. **ARK Core 2.9.0: Menerapkan API compliant JSON publik penuh** JSON-API akan didasarkan pada API v2 kami yang sudah ditingkatkan, tetapi akan diperpanjang hingga 100% kompatibel dengan spesifikasi [JSON API](https://jsonapi.org/). Dengan mengikuti konvensi berbagi JSON API, kita akan dapat meningkatkan produktivitas, mengambil keuntungan dari perkakas umum dan fokus pada penyediaan format standar yang dapat dengan mudah diikuti oleh siapa saja yang ingin menerapkan atau berinteraksi dengan blockchain ARK. JSON API adalah format yang berfungsi dengan HTTP. Ini menjelaskan bagaimana klien harus meminta atau mengedit data dari server, dan bagaimana server harus menanggapi permintaan tertentu. Tujuan utama dari JSON API adalah untuk mengoptimalkan permintaan HTTP; baik dalam hal jumlah permintaan dan ukuran paket data yang dipertukarkan antara klien dan server; terkadang menghilangkan permintaan jaringan sepenuhnya. **ARK Core 3.0.0: Plugin sistem refactor** Pada akhir siklus peningkatan v2, perubahan dan peningkatan tambahan akan dilakukan ke sistem plugin saat ini. Saat ini plugin berisi file index.js yang hanya mengekspor objek dengan informasi tentang plugin dan cara mendaftarkannya. Sistem plugin refactored akan menyediakan dukungan untuk verifikasi plugin dan pengembangan yang lebih efisien melalui antarmuka yang disediakan yang harus dipenuhi oleh plugin untuk menjamin implementasi yang sama di seluruh Core. **Di mana ArkVM (AVM) dalam hal ini..?** Jangan khawatir! ArkVM bukan bagian dari siklus pengembangan kerangka inti dan akan dikembangkan secara paralel sebagai proyek independen. Kami akan menulis lebih banyak tentang masalah ini setelah kami memiliki spesifikasi akhir dan merencanakan sepenuhnya beres. **Epilog** Ini meringkas rencana kami untuk Core pada 2019. Banyak rencana pengembangan Core akan dikembangkan secara paralel. Anda akan dapat melacak kemajuan kami melalui proyek GitHub di sini (tonggak dan tugas akan ditambahkan dalam beberapa hari mendatang) : - **[https://github.com/ArkEcosystem/core/milestones](https://github.com/ArkEcosystem/core/milestones)** Harap dicatat bahwa kami dapat mengatur ulang tonggak. Beberapa peningkatan dapat dilakukan sebelum yang lain dan dengan demikian didorong setelah selesai. Kami akan mencoba untuk mengikuti tata letak ini sebanyak mungkin. Kami akan memperbarui semua orang jika kami memutuskan untuk mengambil rute yang berbeda pada tahap tertentu selama pengembangan. *Sumber : [BoldNinja](https://blog.ark.io/@BoldNinja)* ---- <center>**@yayan** https://img.esteem.ws/39eup3jxp4.gif </center>
👍 luffnoisy, yayan, curx, zapncrap, penyuteverest, saiba911, acknowledgement, thetroublenotes, steembahasa, borneoairbrush, zulfan88, sireh, nazirullsafry, imran01, zulfa0109, fikar1213, faisalus, djamidjalal, amrizane, riyadhie, nandacoa, valhein, muliadi98, nredwo84, lemanan74, oneonone, fahimstudio, codet20, zanis, tania22, abnys, sittishabir, cbkkeken, razzor, zulff, jeef-zone, idayrus, zhafira, suryaalison, luthfinanda, zharifa, banglun, bangsai, syech87, muhdine, mdadham, nawiaceh, msfa, mzo88, napeng, animhamdan, daniizwan, mucha, adivender, fahrisukses93, maliakafaiza, teukukamil, fikasteem, mujasteem, nekcan3, habibieolivera, gohtian, lucamodric7, nyakrahmat, muhibpaya2, ocan, nekmudagroh, idizz89, sukandar, nekcan, kaka8, apa.him, berniesanders, niniandini, nextgencrypto, thecyclist, engagement, iflagtrash, randomthoughts, thedelegator, ngc, peurot, machroezar, kymio, syawalkoki, syawalims, aidilfazli, fuad2, nadyatulfirdha, owner99, teukumuhas, nasrina.nasir, eu-id, demo, esteem.app, good-karma, feruz, mysteem, esteemapp, bluemoon, rijalaronaceh, catataniranda, jarunik, hadipedia,