Mengujicoba Ethereum Cloud dan Solusi Privasi dan Skalabilitas Cloud untuk umum

Tren blockchain terus mendapatkan momentum. Semakin banyak ahli memprediksi adaptasi universal dari teknologi ini dalam waktu dekat. Saat ini, beberapa masalah yang belum terselesaikan masih belum terselesaikan.

Pertama-tama, sistem blockchain modern tidak skala dengan baik. Misalnya, bandwidth Ethereum hanya 20 transaksi per detik, dan meskipun banyak keuntungannya, itu tidak cocok untuk bisnis besar.

Pada saat yang sama, Ethereum dihargai karena perlindungannya yang kuat terhadap peretasan dan pemadaman jaringan. Jadi Anda tidak harus menulisnya. Jauh lebih disarankan untuk memperbaiki kekurangan Ethereum dan mengubahnya menjadi keuntungan.



Plasma Cash sebagai solusi untuk privasi dan skalabilitas dalam Ethereum


Plasma adalah teknologi yang diperkenalkan oleh Vitalik Buterin, salah satu pendiri proyek Ethereum, pada konferensi EthCC di Paris pada tahun 2018. Plasma dikembangkan bersama dengan Joseph Pune, pendiri Lightning Network, dan diumumkan sebagai solusi yang meningkatkan daya komputasi blockchain Ethereum. Berita Plasma pertama bocor ke media pada tahun 2017.

Platform ini adalah level eksternal dari kontrak pintar yang dapat berinteraksi dengan blockchain utama, sehingga menurunkan rantai root, mengurangi biaya transaksi untuk kontrak pintar dan aplikasi terdesentralisasi (DApps).

Informasi terperinci tentang pengembangan disajikan dalam dokumen β€œ Plasma: Kontrak Cerdas Mandiri yang Dapat diskalakan ”, tertanggal Agustus 2017.

Buterin mengakui bahwa Plasma memiliki masalah skalabilitas: setiap pengguna harus mengunduh dan mengautentikasi setiap blok Plasma, yang mencegah penskalaan eksponensial.

Untuk memperbaiki kekurangan ini, Plasma Cash dikembangkan - rantai anak perusahaan yang terdiri dari kontrak pintar dan jaringan pribadi berdasarkan Node.js, yang secara berkala mentransfer statusnya ke rantai akar (Ethereum). Ini memberikan desentralisasi, keamanan dan skalabilitas pada blockchain, sehingga memecahkan Trilemma Skalabilitas.

Keuntungan penting dari Plasma Cash dibandingkan dengan Plasma adalah bahwa ia menarik perhatian pengguna hanya pada blok-blok yang mengandung koin yang menarik bagi mereka:
"Sekarang pengguna perlu memeriksa ketersediaan dan kebenaran rantai Plasma hanya untuk indeks khusus terkait koin yang ingin mereka belanjakan, miliki, dan yang menarik mereka," kata Buterin.

Menurut pengembang, Plasma Cash adalah obat yang efektif untuk meretas Ethereum. Setiap koin Plasma memiliki pemilik dan unik. Tidak ada yang bisa memiliki koin pengguna lain tanpa sepengetahuannya. Pemegang koin dapat mencegah potensi penarikan dana secara curang melalui sistem "keluhan" dengan menghadirkan "bukti" -nya dalam sejarah koinnya.

Menguji Uang Tunai Plasma di Mongo Atlas


Karena kebaruannya, Plasma Cash masih sedikit dipelajari. Pakar Blockchain secara aktif menguji interaksinya dengan berbagai layanan dan basis data cloud, memperbaiki kekurangan dan menemukan cara untuk memperbaikinya. Secara khusus, tes dalam Mongo Atlas mengungkapkan keuntungan berikut ketika bekerja dengan Plasma:

  1. Perlindungan yang andal terhadap kehilangan data , karena beberapa replika disinkronkan di antara mereka dalam sebuah cluster.
  2. Akses cepat , karena cluster dapat dibuat di tiga platform cloud paling populer: Amazon, Google, Azure. Akibatnya, simpul Plasma Cash dapat digunakan di banyak pusat data yang terletak dekat dengan Mongo Atlas. Kami telah membuktikan bahwa kecepatannya tidak turun banyak, bahkan jika node Plasma digunakan di pusat data yang lebih jauh.
  3. Node read-only plasma dapat dihubungkan ke satu cluster Mongo dan terletak di berbagai belahan dunia, yang meningkatkan skalabilitas geo (node ​​lebih dekat dengan pengguna).
  4. Menyebarkan simpul baru itu mudah , karena Anda tidak perlu menyinkronkan kembali semuanya. Anda cukup menghubungkan ke cluster Mongo yang ada atau dengan cepat membuat salinan dan mengkonfigurasi koneksi ke sana.
  5. Melakukan penskalaan basis data mudah . Seiring waktu, data menjadi lebih besar, dan Anda dapat meningkatkan ukuran node di cluster sesuai kebutuhan.



Kami menggunakan server berikut untuk pengujian:

  • 3 server Azure virtual, Standar E4s v3 (4 vcpus, memori 32 GiB). Pada setiap server 3 node diangkat. Salah satunya dapat mengirimkan blok ke rantai root.
  • Setiap node terhubung ke Mongo Atlas cluster M50, yang berisi 3 node dalam mode replika.

Tes 1


3 node masing-masing menerima 100r transaksi. Secara total, semua 9 node berisi 300 ribu transaksi dan token.


Status awal: blok terakhir # 213; 0 transaksi dan token disimpan dalam basis data.

00:00 - 3 skrip diluncurkan yang menghasilkan dan mengirim 100 ribu transaksi
00:29 - Pengiriman 100k transaksi ke node # 1 dan # 2 dimulai
00:32 - Pengiriman 100 ribu transaksi ke simpul # 3 telah dimulai
00:32 - Node # 1 mengambil 11703 transaksi dari pool dan membentuk blok # 214 (9fb)
00:34 - Noda # 2 mengambil 27088 transaksi dari kolam dan membentuk blok # 214 (ef4)
00:34 - Blok # 214 (9fb) ditandatangani dan dikirim ke node lain untuk divalidasi
00:36 - Noda # 3 mengambil 11900 transaksi dari kolam dan membentuk blok # 214 (983)
00:37 - Blok # 214 (9fb) divalidasi dan dikirim ke rantai root
00:38 - Blok # 214 (983) ditandatangani dan dikirim ke node lain untuk divalidasi
00:38 - Blok # 214 (ef4) ditandatangani dan dikirim ke node lain untuk divalidasi
00:40 - Blok # 214 (983) divalidasi dan dikirim ke rantai root
00:41 - Semua node menerima informasi dari rantai root yang memblokir # 214 (9fb) telah ditambahkan dan 11703 transaksi mulai diterapkan
00:45 - Semua node menerima informasi dari rantai root yang memblokir # 215 (983) telah ditambahkan dan 11900 transaksi mulai berlaku
00:51 - Blok # 214 (ef4) divalidasi dan dikirim ke rantai root
00:52 - Node # 1 mengambil 51.469 transaksi dari pool dan membentuk blok # 216 (ea0)
00:56 - Noda # 3 mengambil 55102 transaksi dari kolam dan membentuk blok # 216 (f75)
00:58 - Skrip demo menyelesaikan tugasnya untuk simpul # 2
00:58 - Blok # 216 (ea0) ditandatangani dan dikirim ke node lain untuk divalidasi
00:58 - Semua node menerima informasi dari rantai root yang memblokir # 216 (ef4) telah ditambahkan dan 27088 transaksi mulai berlaku
01:04 - Blok # 216 (f75) ditandatangani dan dikirim ke node lain untuk divalidasi
01:14 - Noda # 2 mengambil 72.912 transaksi dari kolam dan membentuk blok # 217 (f85)
01:15 - Skrip demo menyelesaikan tugasnya untuk node # 1 dan # 2
01:17 - Blok # 216 (f75) dan # 216 (ea0) divalidasi dan dikirim ke rantai root
01:21 - Blok # 217 (f85) ditandatangani dan dikirim ke node lain untuk divalidasi
01:26 - Blok # 217 (f75) dan # 218 (ea0) ditambahkan ke rantai root dan node mulai menerapkan transaksi 51469 dan 55102, masing-masing
01:27 - Blok # 217 (a85) divalidasi dan dikirim ke rantai root
01:41 - Noda # 1 mengambil 36828 transaksi dari kolam dan membentuk blok # 219 (46f)
01:41 - Noda # 3 mengambil 32.998 transaksi dari kolam dan membentuk blok # 219 (bb3)
01:43 - Semua node menerima informasi dari rantai root yang memblokir # 219 (a85) telah ditambahkan dan 72912 transaksi mulai diterapkan
01:46 - Blok # 219 (46f) ditandatangani dan dikirim ke node lain untuk divalidasi
01:46 - Blok # 219 (bb3) ditandatangani dan dikirim ke node lain untuk divalidasi
01:53 - Noda # 2 memproses semua transaksi 100k yang ada di pool
02:37 - Blok # 219 (bb3) divalidasi dan dikirim ke rantai root
02:41 - Blok # 219 (46f) divalidasi dan dikirim ke rantai root
02:48 - Blok # 220 (bb3) dan # 221 (46f) ditambahkan ke rantai root dan node mulai menerapkan 32998 dan 36828 transaksi, masing-masing
02:54 - Node # 1 memproses semua transaksi 100k yang ada di pool
02:55 - Noda # 3 memproses semua transaksi 100k yang ada di pool
04:12 - Semua node berisi 300 ribu transaksi dan token blok terakhir # 221

Tes 2


3 node menerima 1kk transaksi. Total dalam semua 9 node berisi 3kk transaksi dan token.



Status awal: blok terakhir # 213; 0 transaksi dan token disimpan dalam basis data.

00:00 - 3 skrip diluncurkan yang menghasilkan dan mengirim transaksi 1kk
02:29 - Mulai mengirim transaksi 1kk ke node # 1 dan # 2
02:33 - Noda # 1 mengambil 11668 transaksi dari kolam dan membentuk blok # 222 (510)
02:35 - Blok # 222 (510) ditandatangani dan dikirim ke node lain untuk divalidasi
02:37 - Blok # 222 (510) divalidasi dan dikirim ke rantai root
02:38 - Noda # 2 mengambil 46378 transaksi dari kolam dan membentuk blok # 222 (a9d)
02:38 - Mulai mengirim transaksi 1kk ke simpul # 3
02:41 - Noda # 3 mengambil 5504 transaksi dari kolam dan membentuk blok # 222 (387)
02:42 - Blok # 222 (387) ditandatangani dan dikirim ke node lain untuk divalidasi
02:44 - Blok # 222 (a9d) ditandatangani dan dikirim ke node lain untuk validasi
02:44 - Blok # 222 (387) divalidasi dan dikirim ke rantai root
02:49 - Blok # 222 (a9d) divalidasi dan dikirim ke rantai root
02:56 - Blok # 222 (510) # 223 (387) dan # 224 (a9d) ditambahkan ke rantai root dan node mulai menerapkan transaksi 11668, 5504 dan 46378, masing-masing
03:09 - Noda # 1 mengambil 177170 transaksi dari kolam dan membentuk blok # 225 (e50)
03:09 - Node # 3 mengambil 119327 transaksi dari pool dan membentuk blok # 225 (ccc)
03:10 - Noda # 2 mengambil 149.772 transaksi dari kolam dan membentuk blok # 225 (404)
03:26 - Blok # 225 (ccc) ditandatangani dan dikirim ke node lain untuk divalidasi
03:32 - Blok # 225 (404) ditandatangani dan dikirim ke node lain untuk divalidasi
03:33 - Blok # 225 (e50) ditandatangani dan dikirim ke node lain untuk divalidasi
03:53 - Blok # 225 (ccc) divalidasi dan dikirim ke rantai root
04:03 - Blok # 225 (e50) divalidasi dan dikirim ke rantai root
04:04 - Blok # 225 (404) divalidasi dan dikirim ke rantai root
04:06 - Semua node menerima informasi dari rantai root yang memblokir # 225 (ccc) telah ditambahkan dan 119327 transaksi mulai diterapkan
04:14 - Semua node menerima informasi dari rantai root yang memblokir # 226 (404) telah ditambahkan dan 149772 transaksi mulai berlaku
04:16 - Semua node menerima informasi dari rantai root yang memblokir # 227 (e50) telah ditambahkan dan 177170 transaksi mulai diterapkan
04:32 - Node # 3 mengambil 209436 transaksi dari kolam dan membentuk blok # 228 (1e9)
04:40 - Noda # 2 mengambil 212.669 transaksi dari kolam dan membentuk blok # 228 (e38)
04:40 - Noda # 1 mengambil 190144 transaksi dari kolam dan membentuk blok # 228 (861)
05:02 - Blok # 228 (1e9) ditandatangani dan dikirim ke node lain untuk divalidasi
05:08 - Blok # 228 (861) ditandatangani dan dikirim ke node lain untuk divalidasi
05:10 - Blok # 228 (e38) ditandatangani dan dikirim ke node lain untuk divalidasi
06:13 - Blok # 228 (1e9) divalidasi dan dikirim ke rantai root
06:13 - Blok # 228 (861) divalidasi dan dikirim ke rantai root
06:13 - Blok # 228 (e38) divalidasi dan dikirim ke rantai root
06:39 - Blok # 228 (861) # 229 (1e9) dan # 230 (e38) ditambahkan ke rantai root dan node mulai menerapkan transaksi 190144, 209436 dan 212669, masing-masing
07:07 - Noda # 1 mengambil dari kolam transaksi 199770 dan membentuk blok # 231 (e04)
07:09 - Noda # 2 mengambil 190473 transaksi dari kolam dan membentuk blok # 231 (36e)
07:09 - Noda # 3 mengambil 178807 transaksi dari kolam dan membentuk blok # 231 (f43)
07:34 - Blok # 231 (e04) ditandatangani dan dikirim ke node lain untuk divalidasi
07:37 - Blok # 231 (36e) ditandatangani dan dikirim ke node lain untuk divalidasi
07:37 - Blok # 231 (f43) ditandatangani dan dikirim ke node lain untuk divalidasi
08:49 - Blok # 231 (e04) divalidasi dan dikirim ke rantai root
08:51 - Blok # 231 (f43) divalidasi dan dikirim ke rantai root
08:52 - Blok # 231 (36e) divalidasi dan dikirim ke rantai root
09:47 - Blok # 231 (e04) # 232 (f43) dan # 233 (36e) ditambahkan ke rantai root dan node mulai menerapkan transaksi 199770, 178807 dan 190473, masing-masing
10:16 - Noda # 1 mengambil 153075 transaksi dari kolam dan membentuk blok # 234 (e04)
10:16 - Noda # 2 mengambil 168035 transaksi dari kolam dan membentuk blok # 234 (36e)
10:16 - Noda # 3 mengambil 166685 transaksi dari kolam dan membentuk blok # 234 (f43)
10:42 - Blok # 234 (56d) ditandatangani dan dikirim ke node lain untuk divalidasi
11:59 - Blok # 234 (1bb) divalidasi dan dikirim ke rantai root
12:02 - Blok # 234 (58a) divalidasi dan dikirim ke rantai root
12:02 - Blok # 234 (56d) divalidasi dan dikirim ke rantai root
12:48 - Blok # 234 (1bb) # 235 (58a) dan # 236 (56d) ditambahkan ke rantai root dan node mulai menerapkan transaksi 153075, 168035 dan 166685, masing-masing
13:14 - Node # 1 mengambil 112226 transaksi dari kolam dan membentuk blok # 237 (5c0)
13:16 - Node # 2 mengambil 87550 transaksi dari kolam dan membentuk blok # 234 (58a)
13:16 - Node # 3 mengambil 99594 transaksi dari pool dan membentuk blok # 234 (56d)
13:30 - Blok # 237 (5c0) ditandatangani dan dikirim ke node lain untuk divalidasi
13:32 - Blok # 237 (58a) ditandatangani dan dikirim ke node lain untuk divalidasi
13:34 - Blok # 237 (56d) ditandatangani dan dikirim ke node lain untuk divalidasi
14:47 - Blok # 237 (58a) divalidasi dan dikirim ke rantai root
14:53 - Blok # 237 (5c0) tidak divalidasi untuk waktu yang ditentukan
14:53 - Semua node menerima informasi dari rantai root yang memblokir # 237 (58a) telah ditambahkan dan 87550 transaksi mulai berlaku
14:54 - Blok # 237 (56d) divalidasi dan dikirim ke rantai root
15:02 - Noda # 1 mengambil 181206 transaksi dari kolam dan membentuk blok # 238 (c5f)
15:06 - Semua node menerima informasi dari rantai root yang memblokir # 238 (56d) telah ditambahkan dan mereka mulai menerapkan 99594 transaksi
15:12 - Noda # 2 mengambil 51.990 transaksi dari kolam dan membentuk blok # 239 (ad8)
15:20 - Blok # 239 (ad8) ditandatangani dan dikirim ke node lain untuk divalidasi
15:25 - Noda # 3 mengambil 46685 transaksi dari kolam dan membentuk blok # 239 (857)
15:30 - Blok # 238 (c5f) ditandatangani dan dikirim ke node lain untuk divalidasi
15:34 - Blok # 239 (857) ditandatangani dan dikirim ke node lain untuk divalidasi
16:32 - Blok # 239 (857) divalidasi dan dikirim ke rantai root
16:42 - Semua node menerima informasi dari rantai root yang memblokir # 239 (857) telah ditambahkan dan 46685 transaksi mulai diterapkan
16:42 - Blok # 238 (c5f) divalidasi dan dikirim ke rantai root
16:42 - Blok # 239 (ad8) tidak divalidasi untuk waktu yang ditentukan
16:54 - Noda # 2 mengambil 96882 transaksi dari kolam dan membentuk blok # 240 (e6e)
16:56 - Noda # 3 mengambil 39704 transaksi dari kolam dan membentuk blok # 240 (a47)
17:02 - Blok # 240 (a47) ditandatangani dan dikirim ke node lain untuk divalidasi
17:02 - Blok # 240 (e6e) ditandatangani dan dikirim ke node lain untuk divalidasi
17:18 - Semua node menerima informasi dari rantai root yang memblokir # 240 (c5f) telah ditambahkan dan 181206 transaksi mulai diterapkan
17:45 - Blok # 240 (a47) divalidasi dan dikirim ke rantai root
17:47 - Noda # 1 mengambil 54956 transaksi dari kolam dan membentuk blok # 241 (170)
17:59 - Blok # 241 (170) ditandatangani dan dikirim ke node lain untuk divalidasi
18:09 - Semua node menerima informasi dari rantai root yang memblokir # 241 (a47) telah ditambahkan dan 181206 transaksi mulai diterapkan
18:20 - Noda # 3 mengambil 39104 transaksi dari kolam dan membentuk blok # 242 (955)
18:24 - Blok # 240 (e6e) divalidasi dan dikirim ke rantai root
18:28 - Blok # 242 (955) ditandatangani dan dikirim ke node lain untuk divalidasi
18:09 - Semua node menerima informasi dari rantai root yang memblokir # 242 (e6e) telah ditambahkan dan 96882 transaksi mulai berlaku
19:06 - Skrip demo menyelesaikan tugasnya untuk simpul # 1
19:08 - Skrip demo menyelesaikan tugasnya untuk simpul # 2
19:08 - Noda # 2 mengambil 48241 transaksi dari kolam dan membentuk blok # 243 (fde)
19:14 - Blok # 243 (fde) ditandatangani dan dikirim ke node lain untuk divalidasi
19:18 - Blok # 241 (170) tidak valid untuk waktu yang ditentukan
19:28 - Node # 1 mengambil 86.967 transaksi dari pool dan membentuk blok # 243 (37c)
19:35 - Blok # 242 (955) divalidasi dan dikirim ke rantai root
19:40 - Blok # 243 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
20:05 - Semua node menerima informasi dari rantai root yang memblokir # 243 (955) telah ditambahkan dan 39104 transaksi mulai berlaku
20:15 - Blok # 243 (fde) divalidasi dan dikirim ke rantai root
20:19 - Noda # 3 mengambil 42.981 transaksi dari kolam dan membentuk blok # 244 (9b5)
20:26 - Blok # 244 (9b5) ditandatangani dan dikirim ke node lain untuk divalidasi
20:28 - semua node menerima informasi dari rantai root yang memblokir # 244 (fde) ditambahkan dan 48241 transaksi mulai berlaku
20:32 - Node # 2 memproses semua transaksi 1kk yang ada di kumpulan
21:05 - Blok # 243 (37c) tidak divalidasi untuk waktu yang ditentukan
21:15 - Node # 1 mengambil 86.967 transaksi dari pool dan membentuk blok # 245 (37c)
21:32 - Blok # 245 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
21:42 - Blok # 244 (9b5) divalidasi dan dikirim ke rantai root
21:50 - Semua node menerima informasi dari rantai root yang memblokir # 245 (9b5) telah ditambahkan dan 42981 transaksi mulai berlaku
22:04 - Noda # 3 mengambil 45.361 transaksi dari kolam dan membentuk blok # 246 (3f9)
22:11 - Blok # 246 (3f9) ditandatangani dan dikirim ke node lain untuk divalidasi
22:51 - Blok # 245 (37c) tidak divalidasi untuk waktu yang ditentukan
23:01 - Node # 1 mengambil 86.967 transaksi dari pool dan membentuk blok # 246 (37c)
23:08 - Skrip demo menyelesaikan tugasnya untuk simpul # 3
23:15 - Blok # 246 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
23:32 - Blok # 246 (3f9) tidak valid untuk waktu yang ditentukan
23:42 - Noda # 3 mengambil 52173 transaksi dari kolam dan membentuk blok # 246 (71d)
23:51 - Blok # 246 (71d) ditandatangani dan dikirim ke node lain untuk divalidasi
24:38 - Blok # 246 (37c) tidak divalidasi untuk waktu yang ditentukan
25:01 - Node # 1 mengambil 86.967 transaksi dari pool dan membentuk blok # 246 (37c)
25:06 - Blok # 246 (71d) divalidasi dan dikirim ke rantai root
25:12 - Blok # 246 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
25:14 - Semua node menerima informasi dari rantai root yang memblokir # 246 (71d) telah ditambahkan dan 52173 transaksi mulai berlaku
25:29 - Node # 3 memproses semua transaksi 1kk yang ada di pool
26:40 - Blok # 247 (37c) tidak divalidasi untuk waktu yang ditentukan
26:47 - Noda # 1 mengambil 86.967 transaksi dari kolam dan membentuk blok # 247 (37c)
27:03 - Blok # 247 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
28:29 - Blok # 247 (37c) tidak divalidasi untuk waktu yang ditentukan
28:35 - Node # 1 mengambil 86.967 transaksi dari pool dan membentuk blok # 247 (37c)
28:49 - Blok # 247 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
30:13 - Blok # 247 (37c) tidak divalidasi untuk waktu yang ditentukan
30:23 - Noda # 1 mengambil 86.967 transaksi dari kolam dan membentuk blok # 247 (37c)
30:38 - Blok # 247 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
32:00 - Blok # 247 (37c) tidak divalidasi untuk waktu yang ditentukan
32:11 - Node # 1 mengambil 86.967 transaksi dari pool dan membentuk blok # 247 (37c)
32:26 - Blok # 247 (37c) ditandatangani dan dikirim ke node lain untuk divalidasi
33:49 - Blok # 247 (37c) tidak divalidasi untuk waktu yang ditentukan
33:59 - Noda # 1 mengambil 86.967 transaksi dari kolam dan membentuk blok # 247 (37c)
34:12 - Blok # 247 (37c) ditandatangani dan dikirim ke orang lain validasi
node 35:34 - Blok # 247 (37c) divalidasi dan dikirim ke rantai root
35:54 - Semua node menerima informasi dari rantai root yang memblokir # 247 (37c) telah ditambahkan dan 86967 transaksi
36:11 mulai berlaku Node # 1 memproses semua transaksi 1kk yang ada di
kumpulan 55:12 - simpul pertama memproses semua transaksi 3kk



Ringkasan


Terungkap bahwa server virtual Azure tidak memiliki kekuatan pemrosesan yang cukup untuk menangani sejumlah besar transaksi. Tetapi dengan tugas utama dari tes, yaitu, untuk mendemonstrasikan kerja dari Plasma Cash dengan MongoDB, sistem tersebut berhasil dengan baik.

Kami mengundang Anda untuk mengunjungi GitHub proyek: https://github.com/opporty-com/Plasma-Cash/tree/new-version

artikel ditulis bekerjasama dengan Alexander Nashivanom , pengembang senior Pintar Solusi Inc .

Sebelumnya, tim pengembangan Opporty sudah menguji kecepatan Plasma Cash. Hasilnya disajikan dalam artikel ini .

Source: https://habr.com/ru/post/id475000/


All Articles