TRU REPUTATION - Memanfaatkan Web3.js Dan Mocha Dalam Proyek Truffle



TRU.LTD

Hallo Semua.

Mengingat sifat Cryptocurrency dan Ethereum Virtual Machine (EVM) pada khususnya, pengujian kode pre-release lebih penting daripada platform ' Move Fast and Break Thing ' lainnya dimana mereka hanya mempertaruhkan pendapatan mereka daripada pengguna mereka.

Penambalan tidak mudah dalam sistem yang tidak berubah, memperbaiki bug dan eksploitasi setelah fakta tidak langsung. Dengan kendala tersebut, kami telah merancang sistem untuk:
  • Pastikan pengujian pra-rilis agresif untuk mengurangi area permukaan serangan
  • Sertakan Automated Security & Code Auditing.
  • Termasuk kemampuan untuk menggunakan peningkatan berdasarkan konsensus untuk memastikan bahwa masyarakat memiliki Tru Reputasi Protocol sebanyak Tru Ltd lakukan.
Selain menambal, kami telah mengamati sejumlah keyakinan yang tidak didukung oleh bukti teknis dalam proyek lain yang telah menyebabkan kejadian bermasalah yang membahayakan tidak hanya proyek yang dipermasalahkan, namun juga sistem eko ​​yang lebih luas. Kami percaya satu-satunya cara untuk mengurangi risiko ini adalah dengan membuktikan stabilitas, keamanan dan niat kode. Terlalu sering, audit keamanan sebagai acara tunggal atau semi reguler dianggap sebagai obat mujarab dalam masyarakat dan bukan proses yang berkesinambungan.

Pendekatan kita

Komunitas pengembangan etereum masih cukup muda, dan ketika memulai proyek ini, kami melihat beberapa ciri yang umum terjadi pada komunitas pengembangan baru: kurangnya cakupan pengujian unit, dokumentasi yang buruk, dan tidak adanya audit otomatis Kontrak Cerdas untuk memverifikasi yang diketahui atau vektor serangan potensial diperbaiki.

Dengan pemikiran tersebut, kami memutuskan untuk membakukan pendekatan kami terhadap semua proyek Soliditas masa depan. Dengan menggabungkan Praktik Terbaik (seperti Praktik Terbaik Konsumsi Terbaik ), untuk menggunakan Kerangka Truffle , untuk menyetujui standar dan menerapkan standar pada mereka, untuk memastikan pengujian otomatis sebanyak mungkin, untuk menjamin semua kode berjalan melalui Development > Test > Production siklus rilis

Kami telah menerapkannya sebagai berikut:

Strategi Pengujian

Kami telah menetapkan peraturan berikut untuk pengujian di Tru Ltd tentang Kontrak Cerdas:
  • Tes Unit Otomatis harus dibuat untuk mencakup sebanyak mungkin cabang.
  • Akhir untuk Mengakhiri Pengujian harus diciptakan untuk mencakup kemungkinan skenario dunia nyata sebanyak mungkin.
  • Semua kode harus lulus uji regresi.
  • Kasus tepi harus didokumentasikan dan diuji.
  • Teknik pengapian harus diungkit terhadap semua kode.
Memanfaatkan Kerangka Truffle dan menciptakan serangkaian 'pembantu' kami telah menciptakan rangkaian tes untuk mencakup semua hal di atas. Cakupan kode 100% telah dicapai dengan memanfaatkan Web3.js dan Mocha dalam proyek Truffle.

Juga, serangkaian tes fuzzing diciptakan di Mocha untuk memastikan bahwa kontrak berperilaku setelah klik berulang dengan data acak. Fuzzing masih dalam tahap awal dalam EVM dan Solidity, tapi kami bekerja untuk alat bantu fuzzing langsung untuk menguji kode EVM daripada hanya menguraikannya melalui Web3 seperti sekarang.

Merasa bebas untuk garpu ini, jalankan tes sendiri atau sarankan tes tambahan via bug atau PR. Kami mencoba untuk mencapai posisi di mana masyarakat dapat memiliki harapan pengujian kode dan ketahanan yang sama, dan mempermudah pengembang baru untuk mencapai keadaan itu dengan cepat.

Dokumentasi

Salah satu keluhan terbesar pendatang baru pada komunitas Pengembangan Etereum, dan mereka yang mencoba memahami secara teknis bagaimana proyek bekerja, dan memvalidasi apa yang diklaim, adalah kurangnya dokumentasi.

Dengan demikian, kami telah membuat satu set lengkap Dokumentasi Tokoh Reputasi Tru - yang mencakup segala hal mulai dari sumber, dependensi, strategi pengujian, persyaratan proyek dan pembacaan lebih lanjut.

Jika Anda memiliki saran untuk dokumentasi tambahan, mohon kembangkan bug atau PR.

Audit keamanan

Setiap komit Token Reputasi Tru juga dikenai sejumlah teknik auditing untuk memastikan vektor serangan yang diketahui tidak dapat dieksploitasi terhadap kode tersebut. Alat yang digunakan untuk ini adalah:
  • Oyente  - Audit dihasilkan secara otomatis saat komit ke repositori
  • Mythril  - Audit dihasilkan secara otomatis saat komit ke repositori
  • Verifikasi Kontrak Etherscan  - Dilaksanakan secara manual pada saat penyebaran ke setiap jaringan publik termasuk Test Networks.
Kami telah berusaha untuk memastikan setiap komit terhadap repositori Reputasi Token Tru telah diuji secara otomatis, cakupan kode dihasilkan, dan audit Oyente dan Mythril juga dihasilkan - memungkinkan pelacakan keamanan dan kualitas kode dari waktu ke waktu. Untuk rincian lebih lanjut tentang bagaimana konfigurasi bisa dibaca, Tru Reputasi Token Documentation .

Rinkeby Instance

Selain menguji & mengaudit sumber Soliditas, kami juga telah membuat turunan Token Reputasi Tru di Rinkeby TestNet . Saat ini kami menjalankan simulasi lengkap Pre-Sale pada Instance ini, dan kemudian akan menjalankan Simulasi CrowdSale berikutnya dengan maksud agar Tru Reputation Protocol dalam keadaan bekerja penuh di Rinkeby sebelum menerapkannya ke Jaringan Utama Ethereal.

Dengan demikian, merasa bebas untuk berpartisipasi dalam Pre-Sale menggunakan Ethereal gratis palsu dari Faucet Rinkeby, umpan balik apa pun yang paling dihargai dan yang berpartisipasi sekarang akan membuat penggunaan Tru Reputation Protocol on Rinkeby lebih mudah karena komponen-komponen itu online. Rinciannya adalah sebagai berikut:
Tru Reputasi Token Smart Contract Rinkeby Alamat - 0x3cc6363e5c791f804811e883b0af73cfba1b841d
Tru Reputasi Token Pre-Sale Smart Contract Rinkeby Alamat - 0x9a921ee90d0404c8f3f2eb974c8b3a415da142d5
Ada tanggapan

Jangan ragu untuk mengkloning atau garpu Token Reputasi Tru dan rujuk kembali ke tujuan Anda. Setiap masukan atau saran sangat diterima - dan jika Anda menemukan penggunaan dalam repositori, struktur, atau metodologinya, merasa bebas untuk membagikannya. Jika Anda ingin menghubungi kami, Anda dapat mengomentari pos ini atau menggunakan salah satu saluran berikut:


Saluran Protokol Reputasi Telegram Tru: https://t.me/truprotocol

Telegram Tru Reputation Protocol Group Chat: https://t.me/truchat

Slack Invite: https://tru.ltd/slack

Apa berikutnya?

Saat kami membangun peluncuran Tru Reputation Protocol, kami akan mengumumkan Pre-Sale - rincian yang sedang diselesaikan dengan maksud untuk meluncurkan Pre-Sale pada awal tahun 2018 dengan versi pertama dari Tru Reputation Protocol untuk diikuti tak lama setelah itu Rincian akan diumumkan dalam beberapa hari mendatang.

Beberapa Sumber Untuk Referensi:


Nama bitcointalk :Aray80

Postingan populer dari blog ini

ECOINOMIC - The Financial Services Platform Based On Crypto Assets

PYCOIN.IO - Privacy Maintaining Knowledge Based Knowledge Based Knowledge Platform

VIVIDTOKEN - Augmented Portfolio And Social Crypto App