Jurnal Pengembang # 17

Selamat datang di Edisi 17 dari Kredit Jurnal Pengembang.

CREDITS | Indonesia
6 min readOct 1, 2018

Di sini Anda Akan Mempertahankan Siklus Credit Pengembangan Siklus juga informasi tentang apa yang akan datang. Kami senang untuk berbagi informasi yang kami buat ke platform sejak terakhir dan Pengujian Fase Satu.

Highlight

  • Public Testnet Version 2.0 Node sekarang tersedia untuk diunduh
  • Perbaikan Protokol Konsensus
  • Perbaikan Protokol Transportasi
  • Penghapusan VPN
  • Pembaruan Konsensus Besar
  • Pembaruan Kompresi Data
  • Perbaikan Dompet Desktop
  • Kredit Memantau Perbaikan
  • Optimasi Penyimpanan
  • Perbaikan Kontrak Pintar
  • Github Source Code updates

Versi Testnet Publik 2.0

Versi 2.0 yang sudah lama ditunggu dari Public Testnet kami sekarang tersedia untuk diunduh. Sudah 3 bulan sejak kami memperbarui Node pada Testnet kami. Dengan rilis terbaru ini kami telah memadukan semua peningkatan yang kami buat pada produk untuk memastikan komunitas kami dapat berpartisipasi dalam pengujian produk yang terbaik. Dengan rilis ini, VPN telah dihapus dan masalah Sinkronisasi sebelumnya telah dipecahkan. Saat ini ada dua versi perangkat lunak untuk Windows dan untuk sistem operasi Linux. Kami berharap komunitas kami yang bersemangat akan mengumpulkan node untuk membantu kami dalam menguji platform.

Perbaikan Protokol Konsensus

Beberapa perubahan pada Algoritma Konsensus telah dibuat untuk meningkatkan kinerja dan keamanan. Perubahan ini telah dimasukkan ke node Public Testnet yang tersedia untuk diunduh. Kami akan mempublikasikan artikel rinci tentang implementasi baru lebih lanjut.

Untuk mengoptimalkan kinerja jaringan kami telah menerapkan daftar pembaruan berikut:

  • Perbaikan mekanisme sinkronisasi
  • Algoritma Validasi Transaksi ditingkatkan untuk memproses beberapa transaksi dari dompet per putaran
  • Penambahan Perhitungan Biaya Transaksi
  • Persyaratan Penyimpanan Memori Tambahan untuk Data Biaya dengan biaya penyimpanan 2 byte per transaksi
  • Implementasi Serialisasi Verifikasi Tanda Tangan diperlukan untuk struktur transaksi baru
  • Panggilan berdasarkan waktu dari metode konsensus diuji dan disederhanakan untuk mendebug kondisi konsensus saat ini
  • Minimalisasi tumpukan panggilan dioptimalkan
  • Optimasi bekerja dengan kode termasuk fungsi dan panggilan variabel

Sebuah artikel yang merinci Protokol Konsensus dan perbaikan yang kami buat akan segera dipublikasikan.

Perbaikan Protokol Transportasi

1) Berbagai Perbaikan telah dilakukan pada protokol transportasi untuk menghilangkan kerugian dari solusi saat ini untuk mengumpulkan, mendistribusikan dan memproses paket transaksi yang belum dikonfirmasi. Pengoptimalan berikut dilakukan di bidang ini:

  • Pembuatan kumpulan transaksi pada node dan memungkinkan distribusinya ke node tetangganya
  • Mekanisme sinkronisasi, memastikan bahwa paket yang hilang diminta oleh hash mereka
  • Membagi paket transaksi menjadi sub-paket ketika jumlah transaksi lebih besar dari 500
  • Pembuatan daftar paket transaksi yang diproses dalam spreadsheet bulat untuk meningkatkan deserialization dan distribusinya
  • Peningkatan mekanisme distribusi blok. Blok sekarang dibentuk pada node penulisan dan diciptakan kembali pada semua node jaringan melalui fungsi karakteristik

2) Untuk mengurangi jumlah transfer data redundan, mekanisme distribusi paket dioptimalkan, memastikan pengurangan lalu lintas antara node tetangga selama distribusi blok di jaringan

3) Algoritma kompresi data LZ4 diimplementasikan menggantikan algoritma kompresi data Snappy sebelumnya

4) Identifikasi simpul jaringan melalui kunci publik diimplementasikan. Informasi tentang alamat IP node individu hanya tersedia untuk tetangga langsungnya, yang bertukar paket. Karena informasi ini tidak termasuk dalam spreadsheet bulat atau blok, ini memastikan jaringan benar-benar anonim;

5) Sekarang mungkin untuk terhubung ke jaringan tanpa server sinyal. Sebagai solusi sementara, sampai perbaikan selesai di tempat, penguji node dapat memasukkan alamat node tetangga secara manual untuk melewati server sinyal.

6) IPv6 sekarang didukung pada level protokol.

Dompet Desktop

Kesalahan antarmuka pengguna diperbaiki dan berfungsi untuk mengoptimalkan interaksi dengan pengguna ditambahkan. Pembaruan berikut dimasukkan:

  • Masalah dengan jendela modal ganda selama peluncuran node telah diperbaiki
  • Masalah dengan daftar dropdown telah diperbaiki
  • Interaksi tombol adalah animasi
  • Transaksi hash sekarang ditampilkan dalam sejarah transaksi
  • Sekarang mungkin untuk memilih bidang dompet yang berisi kunci publik dan pribadi saat membuat dompet
  • Sekarang mungkin untuk menyimpan kontrak pintar
  • Sekarang mungkin untuk bekerja dengan node secara asynchronous

Monitor

Untuk meningkatkan visualisasi informasi kami menambahkan kemampuan untuk skala transaksi per grafik detik. Masalah dengan pengguliran horizontal grafik adalah tetap. Kami juga menambahkan kemampuan bagi pengguna untuk memilih rentang titik untuk tampilan monitor.

Penyimpanan

Untuk mengoptimalkan kinerja aplikasi dan bandwidth jaringan, tugas-tugas berikut dilakukan:

  • Menerapkan prosedur untuk serialisasi dan deserialization dari format transaksi yang dioptimalkan
  • Memperbaiki struktur basis data
  • Mengoptimalkan penyimpanan mata uang internal dengan menyimpan kunci publik dan ID dompet dengan cara yang lebih ringkas
  • Ukuran transaksi yang dioptimalkan.

Kontrak pintar

  • Arsitektur operasi kontrak cerdas ditingkatkan
  • Standar untuk pembuatan token pada platform KREDIT dikembangkan
  • Daftar metode, termasuk contoh kontrak cerdas, akan dipublikasikan nanti di Portal Pengembang Credits

Pembaruan Github

Kami akan menempatkan kepentingan yang lebih besar dalam menerbitkan karya kami ke Github dengan memperbarui kode sumber yang diterbitkan secara berkala (ditargetkan setiap 5–7 hari). Kode sumber dari versi node terbaru akan dirilis sesegera mungkin.

Saat ini kode berikut tersedia di Github kami:

Kode sumber

Modul jaringan

Contoh API

Kriptografi

Algoritme Kompresi Bertingkat

Implementasi Algoritma Blake2s / 2b Hashing

Apache Thrift

Database

Kurva Elliptic ed25519 Implementasi

Credits Monitor

Kode sumber

Credits API

Apache Thrift-based API

Laporan bug

1) Proses sinkronisasi membutuhkan waktu yang lama. Ini terjadi karena fakta bahwa sinkronisasi didasarkan pada konsensus. Permintaan blok terjadi sekali per putaran. Jumlah blok tersinkronisasi tergantung pada kapasitas jaringan, jarak geografis dari node yang memproses blok, dan kehadiran interaksi antara node yang diminta dan pemrosesan.

2) Saldo dompet tidak segera diperbarui. Untuk mendapatkan informasi yang akurat, diperlukan untuk memeriksa Credits Monitor. Ketidaksesuaian dengan versi JAWA yang berbeda mungkin menjadi alasan dari cacat ini, semua permintaan dompet dijalankan berdasarkan JAVA dan dikirimkan ke node melalui Apache Thrift.

3) Menampilkan saldo yang tidak menguntungkan dari dompet adalah mungkin. Port 8081 dan port 80 diperlukan untuk operasi node yang benar. Jika salah satu port direntangkan dalam proses lain, ketepatan kerja node dilanggar. Pada saat yang sama, penundaan transaksi dapat terjadi, termasuk transaksi yang mengacu pada pelaksanaan kontrak cerdas serta kesalahan menampilkan saldo dompet.

4) Transaksi tidak selalu ditransfer ke jaringan. Alasannya adalah ketidakcocokan dengan JAVA. Terkadang transaksi dapat dihasilkan secara tidak benar.

5) Bidang pengguna tidak diimplementasikan dalam rilis saat ini. Fungsi ini akan diselesaikan dalam versi yang akan datang.

6) Credits Desktop Wallet tidak menampilkan komisi. Status transaksi dan “komisi” yang diajukan belum diterapkan di bagian “detail transaksi”. Jendela pop-up “sukses” setelah mengirim transaksi menunjukkan bahwa transaksi telah dikirim untuk diproses tetapi tidak menunjukkan apakah transaksi telah berlalu.

--

--

CREDITS | Indonesia

CREDITS is an open blockchain platform with autonomous smart contracts and the internal cryptocurrency