Mise à jour # 2 de Crypto.com Chain Dev


Nous sommes heureux de partager la deuxième mise à jour pour les développeurs de Crypto.com Chain, la solution de chaîne de blocs publique sécurisée et hautes performances qui permet de réaliser gratuitement des transactions de paiement cryptographiques instantanées entre clients et commerçants, partout dans le monde.

Les sujets abordés incluent:

  • Crypto.com Code du prototype de testnet de la chaîne open source disponible sur Github.com;
  • Détails sur le modèle comptable initial et les schémas de signature;
  • Mises à jour de la fiche technique Crypto.com.

La chaîne Crypto.com devient Open Source

Le prototype préliminaire de code testnet a été placé sur Github, le site Web d'hébergement de référentiel de code source ouvert très populaire: www.github.com/crypto-com/chain.

Licence Open Source

Le code est publié sous la licence Apache (version 2.0). Sous réserve des termes et conditions de la licence, elle est accordée aux utilisateurs "une licence perpétuelle, mondiale, non exclusive, gratuite, non protégée par le droit d'auteur et irrévocable pour la reproduction, la préparation d'œuvres dérivées, l'affichage public, l'exécution publique, la sous-licence et la distribution de l'œuvre et desdites œuvres dérivées sous forme de source ou d'objet"Nous pensons qu'un tel caractère inclusif de la licence Apache encouragera la poursuite du développement et de l'intégration du code Crypto.com dans des logiciels tiers.

Référentiel de code

Le code dans Github est préliminaire et expérimental: nous espérons continuer à ajouter des fonctionnalités et à mettre à jour le code dans les mois à venir pour améliorer la fonctionnalité et la stabilité.

En attendant, tout le monde est invité à cloner le référentiel Github et à l'expérimenter. Vous pouvez trouver les instructions dans la Lire Record.

Pour les contributeurs potentiels, lisez les directives de contribution dans le CONTRIBUER Record. Ce fichier est également un bon début si vous souhaitez signaler des problèmes, demander des fonctionnalités ou ajouter votre propre code au projet. Notre équipe de développement abordera ces éléments, comme décrit dans les directives de contribution.

Programme de récompenses en cours

De plus, nos récompenses BountySource sont toujours en cours et nous souhaitons plus de présentations. Nous voudrions remercier kazcw, wews64et denim2x pour leurs contributions continues qui abordent certains des sujets sélectionnés.

Modèle comptable et schémas de signature.

Semblable à Bitcoin, le prototype de chaîne Crypto.com utilise le modèle UTXO (transaction non utilisée) pour la comptabilisation des transactions. La principale différence réside dans les types de sorties: alors que les types de sorties sont flexibles "programmables" en Bitcoin (en utilisant le script Bitcoin), Crypto.com Chain utilise un ensemble fixe de types de sorties qui capturent des fonctionnalités essentielles.

Actuellement, il existe deux types de sorties de transaction dans le prototype de chaîne:

  1. Sorties bloquées par rapport à une adresse de type Ethereum: ce type de sorties pourrait être déverrouillé à l'aide de l'algorithme de signature numérique à courbe elliptique (ECDSA). Ces sorties sont principalement utilisées pour garantir la compatibilité avec les versions précédentes et pour le "swap" initial d'un statut instantané ERC20.
  2. Sorties bloquées par rapport à la racine d'une arborescence Merkle à clé publique: ces types de sorties pourraient être déverrouillés en fournissant une feuille (clé publique), une route Merkle et une signature Schnorr. Ce type permet le codage compact de l'autorisation de transaction à seuil responsable, de sorte qu'elle puisse être utilisée dans de nombreuses applications, y compris les dépôts bloqués Pour plus d'informations, nous vous recommandons ces deux articles:

Pour mettre en œuvre les schémas de signature mentionnés ci-dessus, nous prévoyons d'utiliser la même bibliothèque cryptographique à courbe elliptique que celle utilisée dans Bitcoin et Ethereum, afin que les clés privées existantes puissent être utilisées pour signer des transactions dans la chaîne Crypto.com.

Nous maintenons actuellement un fork de Rust Wrap autour de la bibliothèque secp256k1 C: https://github.com/crypto-com/rust-secp256k1-zkp. Nous prévoyons de migrer notre code vers la bibliothèque ascendante, une fois que les fonctionnalités supplémentaires (signatures Schnorr et MuSig) auront été trouvées dans la base de code Bitcoin Core.

Mise à jour technique

Lors du développement du prototype de la chaîne, nous avons mis à jour le livre blanc technique de la chaîne Crypto.com (publié pour la première fois en décembre 2018), en particulier le Consensus sous-section Cette partie contient maintenant plus de détails sur Tendermint Core qui était mentionné dans Crypto.com Chain Dev Update # 1.

Ensuite

Nous travaillons sur plusieurs tâches, y compris, par exemple, une architecture flexible pour la création de client qui facilitera les implémentations de portefeuille et les intégrations tierces.

Une fois qu'elles se matérialiseront, nous vous fournirons plus de détails dans les prochaines mises à jour de développement.