Une des choses les plus utiles sur un réseau blockchain est que n’importe qui peut créer et posséder un « olla » en générant un keypair cryptographique. L’utilisation de la cryptographie pour l’authentification signifie que tout le monde peut accéder aux ressources réseau. Ils sont toujours disponibles dans le monde entier pour toute personne disposant d’une connexion Internet.

C’est une grande victoire pour créer l’égalité des chances, mais keypairs viennent avec des questions d’utilisabilité. Le problème le plus difficile est la responsabilité personnelle qui y est associée. Les utilisateurs doivent trouver un moyen de protéger les clés privées ou les mots de semence correspondants. Si leur sécurité échoue, ils pourraient perdre l’accès à leurs biens ou les faire voler.

Une autre question importante concerne les clés publiques elles-mêmes. Ils sont généralement longues et déroutantes chaînes de caractères, ce qui rend l’interaction blockchain difficile. Ils sont plus sujets aux erreurs que les numéros de compte bancaire ou les adresses e-mail, de sorte que les transferts accidentels sont plus susceptibles de se produire.

Les développeurs Neo travaillent sur un service de domaine natif pour améliorer cette conception. Les utilisateurs pourront mapper leurs adresses à des noms de domaine faciles à utiliser. Cela permet de fournir une compatibilité native au niveau du protocole, ce qui améliore les solutions tierces.

Codage base58

Il est peu probable que les utilisateurs de Neo et d’autres blockchains aient interagi avec une clé publique réelle. La plupart des utilisateurs sont plutôt familiers avec les adresses publiques, les représentations codées de ces clés. Ces adresses sont conçues pour être un peu plus facile à travailler avec.

Le format Base58

a permis cette première étape vers des adresses lisibles par l’homme. Inventé par Satoshi Nakamoto, il a d’abord été mis en œuvre en Bitcoin. Comme Base64, il convertit les données binaires en caractères ASCII, avec une différence clé destinée à améliorer la lisibilité de la sortie.

La différence est l’exclusion de six personnages problématiques. Quatre sont des caractères qui peuvent apparaître similaires dans certaines polices, «0» vs «O» et «i» vs «l». Les deux autres sont des caractères non alphanumériques, généralement « » et « » dans la plupart des implémentations Base64.

En conséquence, la sortie de l’encodage Base58 est immédiatement plus conviviale. Prenons, par exemple, la clé publique de Neo3 02f68dd3c2966a890c8968fb9f71e55ab48dc99889b179fbd6a188056fc999c1e0. Après le traitement, la dernière étape étant l’encodage base58, le formulaire final est
NbnPGLE386Gc6mAqhHeumKbp37zhGPXLzH
.

Il ya quelques autres avantages secondaires aussi. Satoshi lui-même a commenté ces derniers dans
Mise en œuvre de Base58 de Bitcoin
:

Satoshi commente l’utilité de Base58.

Neo hérite également d’une autre fonctionnalité de l’implémentation De Base58 de Bitcoin, étapes de contrôles supplémentaires

. Quatre octets de code de vérification des erreurs dérivés à l’aide de SHA-256

permettent de détecter certaines erreurs, un avantage qui a été noté lors de l’opposition

à une proposition de suppression de Base58 de Neo3.

Proposition de service Alias

Base58 est un pas dans la bonne direction, aidant à rendre les adresses rapides à reconnaître. Malgré cela, la saisie de données pour les transactions peut encore être intimidante. Même les utilisateurs chevronnés effectuent souvent des transferts de test avant de se sentir en sécurité pour déplacer une somme importante.

Pour que les applications blockchain soient accessibles aux masses, d’autres améliorations sont nécessaires. Certaines solutions tierces ont évolué pour répondre à cette demande, Ethereum Name Service

ou son homologue néo-basé

par NEL. L’inconvénient de ces services, c’est qu’ils ne sont pas normalisés ou natifs du protocole. Cela signifie qu’ils ne sont disponibles que dans les applications qui choisissent de les intégrer.

L’ajout de contrats natifs dans Neo3 permet la possibilité d’une prise en charge personnalisée des noms de compte au niveau du protocole. Chaque application basée sur Neo serait en mesure de prendre en charge ces alias sans dépendances. Une solution native
rendre l’ensemble de la plate-forme plus convivial
.

Les discussions concernant cette exigence ont débuté pour la première fois à l’Assemblée communautaire néo-américaine en 2019. Mengyu Liu, un développeur de logiciels NGD, fournirait plus tard
première solution proposée
.

Le service fournirait alias pour l’adresse et l’adresse à la cartographie NeoID (Source: Neo GitHub)

La proposition était pour un service qui permettrait aux utilisateurs de créer et de lier des alias mémorables à une adresse. Pour éviter l’usurpation d’identité, il serait lié à NeoID pour vérifier l’authenticité. Ces alias peuvent être enregistrés, supprimés et modifiés via le contrat ou le service natif. Des fonctions supplémentaires seraient incluses pour la conversion entre les alias et les adresses.

Plusieurs avantages ont été notés; le service doit être léger et avoir une économie simple. Il serait également facile à utiliser pour les développeurs, qui pourraient l’appeler en contrat par le biais de l’API interop.

La proposition de service alias a atteint bon nombre des objectifs visés par les discussions initiales. Cependant, l’approche a été abandonnée au profit d’un service de domaine de style DNS. Mis en œuvre comme un contrat natif, ce service permettrait aux utilisateurs de gérer leurs propres noms de domaine plus facilement. Dans le prochain article, nous allons explorer la conception de cette solution, actuellement à l’étude pour Neo3.