PIRL - Mise à niveau vers Lion Fork

Lion-fork-blog

Partager cette publication

Partager sur facebook
Partager sur linkedin
Partager sur twitter
Partager sur email

Comme vous le savez tous, PIRL est le premier à introduire les masternodes basés sur Ethash dans l'écosystème de la blockchain et à développer la première protection contre les attaques 51% pour les chaînes basées sur Ethash qui est utilisée dans plusieurs projets. Maintenant, ils ont réussi à faire de nouvelles mises à jour pour améliorer encore leur niveau de confidentialité. Tout le monde peut acheter PIRL avec EUR / USD et BTC. Un chat PIRL décentralisé est là pour la communication et vos informations personnelles sont hautement sécurisées sans aucun souci de fuite de détails privés. Grâce au portefeuille mobile officiel PIRL, les acheteurs et les vendeurs désireux peuvent facilement effectuer des transactions.    

L'un des changements majeurs est que PIRL est passé à «Lion Fork». Cette fourchette aidera à résoudre le problème lorsque la blockchain diverge vers deux voies vers l'avant, et Lion fork guidera la voie à suivre pour enregistrer la transaction. Pour faire de tels conseils, nous avons désactivé la bombe de difficulté et activé les fourches suivantes:

1. Bloc Constantinople

2. Petersburg Block

3. Istanbul Block

Dans la version 1.9.12, les modifications et correctifs suivants sont effectués pour accélérer le niveau d'efficacité du système

· Dans le backend, nous avons défini le compte zéro (0x00… 0) par défaut pour l'expéditeur eth_call si aucun n'a été spécifié (#20702).

· Une fonction CallOpts manquante. SetFrom est ajouté pour permettre à un expéditeur de modifier les paramètres des appels (#20721).

· Il est intéressant de noter que les constantes de découplage dans deux EIP sont appliquées ensemble à Istanbul (#20646).

· Correction d'une régression de la console qui perdait le support pour l'évasion et l'évasion (#20700). Escape () aide à coder une chaîne pour la rendre portable, afin qu'elle puisse être transmise sur n'importe quel réseau à n'importe quel ordinateur prenant en charge les caractères ASCII. De l'autre côté, unescape () est utilisé pour décoder la chaîne codée du côté récepteur.

· Correction d'un cycle d'interface commune (CI) défaillant en raison du caractère aléatoire des tests de scénario de récupération TX (#20712). Nous avons corrigé cet échec et testé avec succès les cas.

· Correction d'une fuite de goroutine dans la propagation des transactions (#20762). Une méthode pour résoudre ce problème pour suivre toutes les demandes en attente et ne revenir de la méthode externe que lorsque les demandes de goroutine sont terminées.

· Correction d'une possible course de données dans le téléchargeur (#20690). Nous avons corrigé toutes les incohérences qui surviennent précédemment dans le téléchargeur.

Dans la version 1.9.11, les modifications suivantes sont apportées afin de renforcer le fonctionnement du système

·   Découverte de pairs basée sur DNS est désormais activé dans Geth (#20592, #20660). Désormais, les nœuds Geth ont deux mécanismes indépendants pour trouver des pairs. Les listes DNS servent de mécanisme de secours lorsque des homologues ne peuvent pas être trouvés via le DHT.

La découverte basée sur DNS est un mécanisme centralisé, mais nous avons essayé de rendre le fonctionnement de ce mécanisme aussi transparent et sans autorisation que possible. Les listes publiques utilisées par défaut sont générées en analysant le DHT de découverte. À l'heure actuelle, il y a environ 1150 nœuds de réseau principal Ethereum routés publiquement dans la liste par défaut. Nos listes publiques desservent également les réseaux de test Ropsten, Goerli et Rinkeby. Nœuds exécutant n'importe quel client Ethereum qui implémente EIP-868 et EIP-2124 apparaîtra automatiquement dans les listes publiques.

Vous pouvez désactiver l'utilisation de la découverte basée sur DNS à l'aide de la combinaison d'indicateurs –discovery.dns «».

Si vous souhaitez créer une liste de nœuds basée sur DNS pour votre réseau privé ou public, veuillez consulter notre Guide de configuration de la découverte DNS. Nous espérons que des organisations autres que la Fondation Ethereum fourniront des listes publiques à l'avenir et intégreront volontiers ces listes dans la liste par défaut en utilisant la fonction de «lien» d'EIP-1459.

· Annonces de transactions via eth / 65 (EIP 2464) est maintenant implémenté et les connexions Geth <-> Geth devraient utiliser beaucoup moins de bande passante (#20234) pour l'échange de transactions. Cependant, les chiffres définitifs sont à deviner, car nous devons attendre le déploiement généralisé du réseau. Cette fonction dépend de la eth / 64 et eth / 65 mises à jour de protocole, qui ne sont pas encore prises en charge dans toutes les implémentations du client Ethereum. Alors que les connexions entre les clients compatibles utiliseront le nouveau protocole, geth restera compatible avec eth / 63 jusqu'à ce que les nouvelles versions du protocole soient suffisamment adoptées par le réseau public.

· Le moteur JavaScript sous-jacent à la console Geth et au moteur de règles Clef est passé de Otto à Goja, ce qui devrait le mettre en conformité avec ECMAScript 5.1+. Pas votre dernier et meilleur environnement.js bien sûr, mais nettement meilleur et plus rapide qu'auparavant (#20470, #20599). 

Fonctionnalités et corrections mineures

· Réduisez de quelques millisecondes chaque bloc via des optimisations internes de tri (#20481, #20488Les opérations de hachage sont utilisées pour optimiser et l'opération de validation est utilisée pour gérer les exceptions.

· Optimiser l'exécution de l'opcode EVM BLOCKHASH pour mieux gérer le pire des cas (#20589).

· Vérifier la disponibilité de l'espace de noms de l'API RPC pour détecter les fautes de frappe dans –rpcapi & co (#20597).

· Ajoutez geth dump genesis pour imprimer la configuration complète de la genèse et de la chaîne d'un nœud (#20191).

· Rétablir la notification du numéro de bloc en attente pendant la récupération du bloc (#20616).

· Correction d'une panique de traceur JavaScript lors de l'accès à la mémoire illégale (#20612).

· Correction d'un problème de connectivité RPC autour des connexions instables (#20414).

· Nettoyer le réseau principal C ++ et les nœuds de démarrage Geth Görli (#20610). Le bootnode C ++ est plus utilisé, nous avons donc intégré Geth Görli.

· Correction de la prise en charge bytes32 et bytes32 [] dans Clef (#20609).

Le verdict

Toutes les modifications (modifications et correctifs) sont faites pour augmenter l'efficacité et finalement la sécurité du système.

Abonnez-vous à notre newsletter

Recevez des mises à jour et apprenez des meilleurs

Plus à explorer

fr_FRFrançais
en_USEnglish nl_NLNederlands tr_TRTürkçe es_ESEspañol pt_PTPortuguês ru_RUРусский ko_KR한국어 zh_CN简体中文 hi_INहिन्दी fr_FRFrançais