Midnight publie Ledger 9.1.0.0 pour le prochain hard fork du réseau

Cette version met à jour les bibliothèques utilisées pour générer et vérifier des preuves à connaissance nulle et introduit des changements dans les paramètres de coût des transactions. Certains développeurs de contrats devront régénérer les clés de vérification.

By SongMarketCap

Updated:

Midnight News - Midnight publie Ledger 9.1.0.0 pour le prochain hard fork du réseau

Midnight a publié Ledger 9.1.0.0, la première version complète du logiciel Ledger destinée au prochain hard fork du réseau. Cette mise à jour ajoute la prise en charge des signatures ECDSA et introduit des changements dans la génération des preuves, le traitement des transactions et la validation de la sécurité.

L'équipe a également publié Proof Server 9.0.0, un service hors chaîne qui génère les preuves à connaissance nulle utilisées dans les transactions Midnight. Les notes de version de Ledger ne précisent pas de date pour le hard fork.

Bibliothèques de preuves mises à jour et prise en charge d'ECDSA

Le logiciel Ledger définit la structure des transactions et les règles de mise à jour de l'état du réseau. Ledger 9.1.0.0 fait suite à une série de versions candidates et a été promu depuis la version 9.1.0.0-rc.7 après validation par l'assurance qualité.

Son principal changement est le passage à midnight-zk-stdlib v2 et midnight-circuits v7, des bibliothèques utilisées pour générer et vérifier des preuves à connaissance nulle. Ces preuves permettent de vérifier des informations sans révéler les données privées sous-jacentes. Les preuves et les clés de vérification créées avec l'ancienne zk-stdlib v1 restent vérifiables avec cette nouvelle version.

Ledger 9 prend également en charge les signatures ECDSA, un standard de signature cryptographique utilisé par des réseaux tels que Bitcoin et Ethereum. En outre, le serveur de preuves prend en charge zkir v3, une version plus récente de la représentation intermédiaire utilisée pour les circuits cryptographiques.

Cette version introduit une transaction système appelée UnlockToTreasury, qui déplace des fonds d'un pool verrouillé vers la trésorerie. Elle marque également la première publication des paquets Rust de Ledger 9 sur crates.io, y compris le nouveau paquet midnight-ledger-v9.

Midnight met à jour les paramètres de coût des transactions

Ledger 9 introduit un prix plancher explicite régi par des paramètres du ledger. Il remplace également un précédent facteur de coût computationnel par des facteurs distincts pour la validation, l'application garantie et l'application faillible des transactions.

Les frais de transaction Midnight sont payés en utilisant DUST, une ressource du réseau générée au fil du temps à partir de jetons NIGHT enregistrés. Cette version modifie la manière dont l'enregistrement DUST est comptabilisé, en utilisant l'heure du bloc plutôt que l'heure déclarée dans la transaction.

Plusieurs correctifs traitent des pannes potentielles dans le traitement de l'état du portefeuille et le traitement des frais de pont. Cette version reprend également les correctifs de sécurité précédemment livrés au mainnet via Ledger 8.1.2 et 8.1.3, y compris un décodage et une validation plus stricts des données utilisées dans les appels de contrat.

[NEWSBREAK]

Clés de vérification et problèmes connus pour les développeurs

Les bibliothèques de preuves mises à jour modifient les clés de vérification pour certains types de circuits. Selon les notes de version, les contrats concernés sont ceux qui utilisent des circuits zkir v2 avec hash_to_curve ou des circuits zkir v3 qui encodent un scalaire Jubjub. Leurs clés de vérification doivent être régénérées; les clés v0 et v1 restent inchangées.

Les outils qui construisent ou sérialisent les paramètres du ledger doivent inclure le nouveau prix plancher et les facteurs de coût. Le code qui construit manuellement les enveloppes de signature doit également adopter la méthode de construction partagée.

Les notes de version répertorient deux défauts connus. Un appel de contrat qui dépense une pièce protégée et réécrit la monnaie peut être rejeté pour dépassement de son budget de gas sur une chaîne dont l'arbre des engagements n'est pas vide. Un autre problème peut entraîner l'échec d'un contrôle du temps de rejet pour un appel de contrat payé avec exactement une dépense DUST; les notes indiquent que l'utilisation de deux dépenses DUST ou plus permet d'éviter ce problème.

Les paquets Ledger 9 sont publiés sous le scope npm @midnightntwrk. L'ancien scope @midnight-ntwrk continue de recevoir des versions pour le moment.