Dans cet article, nous discutons avec Kostas Chalkias, co-fondateur et cryptographe en chef chez Mysten Labs, de la façon dont l'innovation cryptographique est au cœur de la conception de Sui, et pourquoi les fonctionnalités à venir sont-elles si excitantes ?
**Q : Pouvez-vous expliquer brièvement le rôle des cryptographes dans la création de chaînes de blocs ? **
R : J'ai en fait travaillé avec l'un des premiers développeurs de Satoshi Nakamoto (Mike Hearn), j'ai un doctorat en cryptographie, et avant l'ère de la blockchain, je me concentrais principalement sur les limites académiques. En raison de cette implication, je peux vous dire avec précision que la crypto joue un rôle pour les entreprises d'infrastructure de blockchain, généralement décomposé en trois rôles clés.
Le premier est la recherche, vous devez être innovant en cryptographie car ce sont généralement des mathématiques très avancées, une partie de cela consiste à trouver de nouveaux algorithmes sympas, mais aussi à rechercher des algorithmes de rupture. Mon rôle précédent dans une entreprise de blockchain consistait à examiner les implémentations de cryptographie et à être un pirate informatique à la recherche d'attaques contre eux. Ce que vous faites, c'est "Vous êtes un mathématicien, vous êtes un cryptographe. Allez voir cette implémentation particulière d'un algorithme de signature numérique ou d'une balise aléatoire ou autre. Vérifiez que tout fonctionne. " C'est le domaine de la recherche.
Le second est la mise en œuvre, le concept de cryptographie appliquée. Les cryptographes appliqués reçoivent des demandes de la part des équipes produit -- "hé, nous voulons un nouveau schéma de signature plus rapide, ou nous voulons créer une nouvelle fonctionnalité de confidentialité pour nos clients ou nos clients ou la communauté." Et puis un cryptographe appliqué ne se contente pas de concevoir quelque chose, la recherche, mais aussi la met en œuvre. Parfois, un cryptographe appliqué doit également être un développeur de logiciels très fort, nécessitant de nouvelles optimisations dans le codage.
La dernière consiste à créer de nouveaux produits et à proposer leurs propres idées innovantes basées sur les primitives comprises par les cryptographes.
**Pour résumer, nous équilibrons la recherche, la mise en œuvre et le produit, ce qui est le rôle d'un cryptographe blockchain typique. **
**Q : Est-ce généralement la même personne qui peut faire les trois ? Ou divisé en groupes à mettre en œuvre? **
R : Pour Sui, parce que nous avons introduit tant d'innovations, nous avions besoin de plusieurs personnes travaillant sur de nombreux flux de travail. Je suis le principal cryptographe de Mysten Labs et l'un des fondateurs de Sui, donc je suis impliqué dans la plupart des travaux. Cependant, on ne peut pas tout faire seul et j'apprends encore de mon équipe.
Nous n'utilisons pas qu'un seul langage de programmation. Par exemple, utiliser le langage Rust pour une preuve de concept, mais nous avons ensuite réalisé que la plupart des internautes utilisent JavaScript ou TypeScript, et que les cryptographes ne peuvent pas tout écrire par eux-mêmes. Mais vous ne pouvez pas déléguer à un généraliste comme un ingénieur logiciel, car certaines optimisations nécessitent une connaissance des mathématiques avancées et des primitives cryptographiques, ou vous devrez peut-être interagir avec certaines bibliothèques que vous ne connaissez pas, vous avez donc besoin de quelqu'un d'autre pour prendre le relais l'oeuvre.
Notre équipe de recherche compte une dizaine de personnes et travaille au quotidien sur l'innovation et la mise en œuvre. Nous avons ces esprits "intelligents", et parfois je suis celui qui propose des idées, et parfois je suis la direction d'autres experts en cryptographie. Notre équipe peut aider à la mise en œuvre, ou fournir des ressources ou fournir des conseils sur la façon d'étendre et d'appliquer une idée intéressante.
Deux yeux ne suffisent pas, car la cryptographie est une partie extrêmement critique de l'infrastructure de la blockchain. Si quelque chose ne va pas, cela peut être GAME OVER, donc plus d'yeux sont nécessaires. De plus, beaucoup d'innovateurs sont nécessaires.
**Q : Quels sont les principaux développements et impacts de la recherche externe appliquée à la conception de Sui ? Quelles sont les principales innovations du dialogue interne ? **
R : En termes de cryptographie, les signaux externes qui nous ont influencés sont l'évolution des technologies telles que les preuves à connaissance nulle et les techniques générales de préservation de la vie privée proposées dans la littérature. Non seulement la blockchain fait de la cryptographie, mais il existe également des instituts de recherche et des départements universitaires dans le monde entier qui effectuent des travaux théoriques. Personnellement, je pense que Mysten Labs est très bon pour trouver de nouvelles théories dans des domaines qui n'ont jamais été mis en œuvre auparavant, certaines de ces hypothèses peuvent ne pas être exactes, mais nous les combinons avec notre technologie existante, et finalement nous propulsons pour créer un nouveau produit.
**Sui a une nouvelle fonctionnalité, Zero Knowledge Login (ZK Login), qui a vu le jour comme ça. Certaines technologies ont été proposées en externe, mais pas suffisamment pour fournir un mécanisme d'authentification transparent pour la blockchain L1, nous avons inventé une nouvelle fonctionnalité en plus, qui est une verticale interne de recherche appliquée, et enfin, nous avons proposé un plan de solution complet. **
Nous ne sommes pas une université, nous ne sommes pas seulement de la théorie, nous devons implémenter quelque chose de prêt pour la production, donc nous recevons des commentaires des discussions internes et externes. Souvent, nous lisons des articles scientifiques, nous assistons à des événements, nous sommes examinateurs et présentateurs, nous recevons des commentaires. Évidemment, nous convertissons tout cela en implémentation sur Sui.
Je me rends compte qu'une partie de notre code est ensuite utilisée par d'autres personnes, d'autres entreprises ou même des personnes extérieures à notre industrie, et vous finirez par voir de grandes entreprises prendre ce code et l'injecter dans leur propre infrastructure, pas nécessairement une installation de fondation blockchain.
L'innovation interne est souvent déclenchée par les équipes produit. Ils viendront nous voir et nous diront : "Ce n'est pas possible pour le moment, nous n'avons pas vu les recherches à ce sujet. Pouvez-vous comprendre cela ?"
Par exemple, le problème intéressant de l'activation d'adresses blockchain détectables mais avec confidentialité. Comment puis-je recevoir quelque chose sur votre adresse e-mail ou votre numéro de téléphone avant même que vous ayez créé un compte ? Imaginez une fonctionnalité de style Venmo dans laquelle je vous envoie des actifs, puis je les récupère lorsque vous réalisez qu'ils sont là. Résoudre ce problème nécessite un brainstorming en interne sur la façon de le faire correctement avec un état d'esprit de confidentialité. Prenant la théorie de l'extérieur, nous combinons tout cela dans un ensemble d'outils. La plupart du temps, nous y parvenons plutôt bien. Nous essayons de résoudre les problèmes ci-dessus, et il est rare de rencontrer un problème de produit sans solution.
**Q : Comment Move vous aide-t-il à créer ces innovations cryptographiques et à offrir une expérience plus sécurisée aux développeurs utilisant Sui ? **
R : J'étais un développeur Solidity, j'écrivais des contrats Ethereum, et j'étais également passionné par la rupture de contrats intelligents sur Ethereum. Mon premier travail consistait à auditer des contrats de loterie sur Ethereum, et j'ai réussi à détruire certains algorithmes. À l'époque, on pouvait presque dire que les algorithmes aléatoires étaient injustes et opaques. Cela m'a en fait appris que les développeurs de contrats intelligents sont généralement des ingénieurs qui écrivent de petits scripts. Les contrats intelligents ne sont pas de gros programmes, ni des bases de données complexes. Habituellement, quelqu'un avec seulement quelques jours de formation peut écrire un contrat intelligent et le déployer, mais cela nécessite un audit très minutieux, et il peut y avoir des pièges cachés dans les interactions web2 - web3 .
Nous avons réalisé que sur Ethereum, certaines des fonctionnalités de sécurité de Solidity posaient problème en raison de deux facteurs particuliers. Tout d'abord, les ingénieurs optimisent la compression pour réduire les coûts de gaz, ce qui peut amener les utilisateurs à manquer certains contenus car les cas extrêmes ne sont pas couverts. Et il y a aussi le problème des attaques de rentrée. C'est comme si un contrat intelligent payait un autre contrat intelligent sans mettre à jour son état. Ce vecteur d'attaque a causé des pertes financières importantes dans le passé, y compris le Ethereum DAO il y a de nombreuses années, qui a abouti à un fork Ethereum.
**Move n'a pas ces problèmes, en particulier pour les problèmes de réentrance, nous protégeons le code source à partir de zéro. Nous avons également apporté de nombreuses modifications au Facebook Move original en créant un langage Move plus centré sur l'objet, ce qui a beaucoup aidé à la réutilisation du code. Au lieu de copier-coller le code de contrat intelligent, puis d'apporter quelques modifications, vous pouvez appeler le code d'origine et obtenir de meilleures garanties de cohérence. **
De plus, dans Move, nous avons des objets pour tout. Dans Solidity, lorsque vous transférez quelque chose d'un contrat à un autre, vous ne savez généralement pas ce que c'est sans contexte. Est-ce l'adresse ? Est-ce un nombre ? Est-ce une URL d'image ? Lorsque vous traitez tout comme des objets, comme Java et C++ et tous les langages orientés objet, vous pouvez d'abord convertir vos projets côté client existants en un monde basé sur des contrats intelligents sans vous soucier des mécanismes de compression triplement optimisés. Parce que vous pouvez littéralement voir, c'est un objet "tigre", je vous transmets un objet "tigre".
Qu'en est-il de la cryptographie ? Lorsque vous possédez les articles, lorsque j'envoie quelque chose d'un portefeuille à une autre adresse, vous obtenez une fenêtre contextuelle indiquant "Vous transférez un NFT tigre. Ce NFT tigre a X caractéristiques". Grâce à la conception centrée sur l'objet, quel que soit l'objet que vous touchez, vous pouvez voir exactement ce que vous faites, ce qui peut vous aider à identifier tout problème avec vos transactions. De nombreux utilisateurs sont attirés par des logiciels malveillants ou des applications qui tentent de vous convaincre de signer quelque chose que vous ne voulez pas signer dans d'autres portefeuilles blockchain. Mais avec Move, c'est un peu plus difficile et l'utilisateur peut voir clairement ce qui se passe, ce qui améliore la sécurité de l'utilisateur final.
Une autre chose qui aide vraiment à concevoir des algorithmes plus intéressants et plus cool est la parallélisation activée par les objets. Disons que j'ai quelques billets, un billet de 10 $ et un billet de 100 $. Je peux le faire en parallèle si j'offre des factures à deux personnes à côté de moi.
Sur Ethereum, le concept de base est un solde de compte central à partir duquel vous pouvez transférer des choses. Donc si je veux envoyer ou recevoir des fonds, je dois commander ces transactions, je vais d'abord envoyer 100$, puis soumettre une transaction de 10$, en même temps si quelqu'un m'envoie des fonds, les 3 transactions doivent être séquencées, ce processus est coûteux de.
C'est là que nous obtenons tous les éléments intéressants du langage Move, et en tant que cryptographes, nous pouvons utiliser la parallélisation et la programmation orientée objet fournies par Move pour créer une meilleure sécurité et des algorithmes innovants plus cool. C'est toute l'idée. Par exemple, nous avons créé un programme de loterie. Bien que cela puisse sembler facile à première vue, pour être honnête, il est souvent très, très difficile de bien faire les choses, en particulier lors de la création de loteries multijoueurs avec des cas complexes, où les bons cryptographes brillent. Nous avons besoin d'un peu de hasard, vous devez acheter des billets de loterie qui peuvent être achetés en parallèle. Comment faites-vous cela sur la blockchain ? Move et ses primitives cryptographiques disponibles aident à fournir un écosystème cryptographique meilleur et plus sécurisé.
Je suis bien conscient que quelque chose comme un système de loterie peut être utilisé dans un produit où, disons, 300 billets sont disponibles, mais des milliers de personnes les veulent, et vous voulez qu'ils soient attribués au hasard ? Ce système est la base de Sui, et n'importe quelle entreprise peut l'ajouter à ses produits.
La bonne chose ici est que, en raison de la nature orientée objet de Sui, vous pouvez appeler le même contrat à partir de nombreux autres contrats intelligents différents. Nous avons le concept de composabilité, qui vous aide en fait à utiliser le même billet de loterie dans deux loteries différentes, ce qui est idéal pour créer de nouvelles expériences qui n'existaient pas auparavant.
Dans les jeux, vous avez besoin de hasard, et Sui est en fait l'une des meilleures blockchains. Pour un jeu de société, même les échecs, qui semblent être un jeu déterministe, vous devez savoir qui joue en premier. Qui est blanc et qui est noir (aux échecs, comme nous le savons, le blanc a l'avantage), cela nécessite une certaine transparence pour faire correspondre correctement différents joueurs dans le même jeu. Il existe également des applications gouvernementales. Imaginez que le bureau des impôts procède à un échantillonnage statistique et sélectionne les personnes à contrôler. Peuvent-ils vraiment apporter la preuve que l'échantillonnage statistique a été effectué de manière juste et transparente ?
S'il existe un algorithme d'une transparence indéniable qui offre un bon aléa non modifiable par les organisateurs, alors chaque loterie ou tirage au sort aura une nouvelle équité.
**Q : Vous avez récemment écrit un tweet sur l'importance de stocker les NFT en chaîne afin qu'ils restent dynamiques et changent avec le temps. Pouvez-vous en dire plus sur cette perspective, en particulier sur la façon dont la structure de données de Sui améliore l'utilité des NFT ? **
R : C'est un sujet très débattu. J'essaie d'expliquer que différentes infrastructures activent les propriétés NFT différemment, et lorsqu'il ne s'agit que d'une image statique, lorsque vous n'effectuez aucune opération à fort trafic sur cette image, la structure traditionnelle est vraiment bonne. Mais dans certains cas, comme les jeux, les joueurs espèrent tirer plus d'avantages du NFT, alors la structure traditionnelle du NFT n'est pas assez bonne.
Sui a des algorithmes qui permettent des NFT dynamiques dont les champs sont mis à jour chaque fois qu'une transaction se produit. Lorsque vous jouez à un jeu, vous avez un héros, vous gagnez, passez un niveau, vous pouvez obtenir de nouvelles armes ou pouvoirs, qui peuvent tous être enregistrés dans l'état de la blockchain et créer une sorte de tout nouveau genre. De plus, comme le coût de stockage sur Sui est bon marché, NFT peut être stocké sur la chaîne. Cela facilite la lecture et l'écriture de différents contrats intelligents sur la chaîne et permet la composabilité.
Sur d'autres chaines vous rencontrerez un problème car les modifications ne sont pas en l'état. Pour qu'un autre contrat intelligent lise votre contrat, il doit connaître votre structure, vous avez besoin d'un analyseur hors chaîne, ce qui crée des complications UX. Il y a aussi une logique conditionnelle dans certaines applications sympas où vous ne savez pas quel NFT vous touchez au moment de soumettre une transaction, alors que puis-je offrir du monde hors chaîne, ce n'est pas facile à mettre à l'échelle.
Il y a aussi la question des modèles de menace et le fait que certaines applications spécifiques peuvent tolérer la compression et le stockage hors chaîne. Mais en réalité, lorsque nous stockons quelque chose hors chaîne, nous modifions le modèle de menace. La raison en est généralement la centralisation, imaginez si un jour vous le stockez dans AWS et ensuite... Amazon tombe en panne. Amazon est une seule entreprise, si elle tombe en panne et que vous ne pouvez pas accéder à ces données hors chaîne particulières, vous ne pouvez pas les utiliser en chaîne ; et même si vous le pouviez, vous auriez même besoin des données pour générer la preuve que vous possédez en fait les données hors chaîne, car parfois, vous devez simplement le prouver, n'est-ce pas ? Pour le prouver, vous devez obtenir le contenu d'AWS, puis le hacher et envoyer une très petite quantité de données dans la blockchain, ce qui est vérifié dans une certaine mesure, mais si vous n'avez pas les données, vous ne pouvez pas prouver il Quel est le contenu de mon NFT.
Il y a donc un problème de centralisation, même si certaines personnes disent que ce n'est pas le cas, car nous pouvons le stocker à différents endroits. Je suis d'accord que si on arrive à avoir un design spécifique, tous ces modèles de menaces sont encodés dans la blockchain, mais l'autre problème c'est le délai. Le NFT est stocké sur d'autres chaines, ce qui va doubler le délai. Ce n'est pas ce qu'on veut Nous espérons que tout est stocké sur la chaîne tout en réduisant la latence.
**Q : Qu'est-ce qui vous enthousiasme le plus pour l'avenir de Sui ? **
R : C'est ma question préférée. La principale raison pour laquelle j'ai rejoint Mysten Labs est que je préfère un endroit où l'innovation est le moteur du développement de produits. Nous offrons quelque chose de nouveau à la communauté. J'ai même nommé mon fils Kryptos.
Si vous me posez des questions spécifiques sur les innovations de cryptage de Sui, une chose est sûre, nous autorisons de nombreuses façons de s'authentifier. En règle générale, la plupart des chaînes de blocs ne prennent en charge qu'un seul algorithme de signature, Ethereum a le sien, et Cardano et Solana en prennent un autre. Nous essayons de faire parler Sui à d'autres chaînes publiques, ce qui signifie que nous autorisons tous les algorithmes existants, ce qui signifie que nous sommes compatibles avec plus de portefeuilles. Les portefeuilles existants n'ont pas besoin de réinventer la roue, vous aimez l'algorithme basé sur Ethereum, nous le supportons, alors allez-y et utilisez-le. Vous utilisez un iPhone, alors vous n'avez même pas besoin d'un portefeuille, les iPhones et les appareils Android plus avancés ont cette puce de sécurité intégrée qui ne prend en charge que des algorithmes spécifiques, et nous le prenons en charge.
Ensuite, nous avons également le concept de multi-signature lui-même, si vous faites attention à la sécurité, la partie authentification de la cryptographie, qui est l'une des fonctionnalités phares de Sui, créera une nouvelle expérience d'authentification.
Une autre chose que j'aime beaucoup personnellement, c'est que nous avons introduit des preuves de connaissance zéro, une technologie de préservation de la vie privée à l'intérieur de Sui dès le premier jour. Ainsi, les gens peuvent désormais créer un système KYC avec autant de confidentialité que possible, ils peuvent même créer des transferts de montants confidentiels, tout en leur donnant également la possibilité de se conformer aux lois et aux auditeurs, nous mettons tout à disposition des développeurs. **
En plus de tous ces algorithmes, notre équipe d'ingénieurs en solutions de développement fournit en fait un très bon support. Nous travaillons tous les jours avec des équipes qui ne connaissent pas la cryptographie, elles n'ont pas de cryptographes, mais ont des idées vraiment sympas, et si nous avons des retours, nous les aidons à mettre en œuvre, quelque chose n'est pas disponible ou il y a un problème, nous Résolvez-les également avec une grande rapidité.
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
Dialogue avec le cryptographe en chef de Mysten Labs : comment l'innovation cryptographique devient-elle au cœur de la conception de Sui ?
Dans cet article, nous discutons avec Kostas Chalkias, co-fondateur et cryptographe en chef chez Mysten Labs, de la façon dont l'innovation cryptographique est au cœur de la conception de Sui, et pourquoi les fonctionnalités à venir sont-elles si excitantes ?
**Q : Pouvez-vous expliquer brièvement le rôle des cryptographes dans la création de chaînes de blocs ? **
R : J'ai en fait travaillé avec l'un des premiers développeurs de Satoshi Nakamoto (Mike Hearn), j'ai un doctorat en cryptographie, et avant l'ère de la blockchain, je me concentrais principalement sur les limites académiques. En raison de cette implication, je peux vous dire avec précision que la crypto joue un rôle pour les entreprises d'infrastructure de blockchain, généralement décomposé en trois rôles clés.
Le premier est la recherche, vous devez être innovant en cryptographie car ce sont généralement des mathématiques très avancées, une partie de cela consiste à trouver de nouveaux algorithmes sympas, mais aussi à rechercher des algorithmes de rupture. Mon rôle précédent dans une entreprise de blockchain consistait à examiner les implémentations de cryptographie et à être un pirate informatique à la recherche d'attaques contre eux. Ce que vous faites, c'est "Vous êtes un mathématicien, vous êtes un cryptographe. Allez voir cette implémentation particulière d'un algorithme de signature numérique ou d'une balise aléatoire ou autre. Vérifiez que tout fonctionne. " C'est le domaine de la recherche.
Le second est la mise en œuvre, le concept de cryptographie appliquée. Les cryptographes appliqués reçoivent des demandes de la part des équipes produit -- "hé, nous voulons un nouveau schéma de signature plus rapide, ou nous voulons créer une nouvelle fonctionnalité de confidentialité pour nos clients ou nos clients ou la communauté." Et puis un cryptographe appliqué ne se contente pas de concevoir quelque chose, la recherche, mais aussi la met en œuvre. Parfois, un cryptographe appliqué doit également être un développeur de logiciels très fort, nécessitant de nouvelles optimisations dans le codage.
La dernière consiste à créer de nouveaux produits et à proposer leurs propres idées innovantes basées sur les primitives comprises par les cryptographes.
**Pour résumer, nous équilibrons la recherche, la mise en œuvre et le produit, ce qui est le rôle d'un cryptographe blockchain typique. **
**Q : Est-ce généralement la même personne qui peut faire les trois ? Ou divisé en groupes à mettre en œuvre? **
R : Pour Sui, parce que nous avons introduit tant d'innovations, nous avions besoin de plusieurs personnes travaillant sur de nombreux flux de travail. Je suis le principal cryptographe de Mysten Labs et l'un des fondateurs de Sui, donc je suis impliqué dans la plupart des travaux. Cependant, on ne peut pas tout faire seul et j'apprends encore de mon équipe.
Nous n'utilisons pas qu'un seul langage de programmation. Par exemple, utiliser le langage Rust pour une preuve de concept, mais nous avons ensuite réalisé que la plupart des internautes utilisent JavaScript ou TypeScript, et que les cryptographes ne peuvent pas tout écrire par eux-mêmes. Mais vous ne pouvez pas déléguer à un généraliste comme un ingénieur logiciel, car certaines optimisations nécessitent une connaissance des mathématiques avancées et des primitives cryptographiques, ou vous devrez peut-être interagir avec certaines bibliothèques que vous ne connaissez pas, vous avez donc besoin de quelqu'un d'autre pour prendre le relais l'oeuvre.
Notre équipe de recherche compte une dizaine de personnes et travaille au quotidien sur l'innovation et la mise en œuvre. Nous avons ces esprits "intelligents", et parfois je suis celui qui propose des idées, et parfois je suis la direction d'autres experts en cryptographie. Notre équipe peut aider à la mise en œuvre, ou fournir des ressources ou fournir des conseils sur la façon d'étendre et d'appliquer une idée intéressante.
Deux yeux ne suffisent pas, car la cryptographie est une partie extrêmement critique de l'infrastructure de la blockchain. Si quelque chose ne va pas, cela peut être GAME OVER, donc plus d'yeux sont nécessaires. De plus, beaucoup d'innovateurs sont nécessaires.
**Q : Quels sont les principaux développements et impacts de la recherche externe appliquée à la conception de Sui ? Quelles sont les principales innovations du dialogue interne ? **
R : En termes de cryptographie, les signaux externes qui nous ont influencés sont l'évolution des technologies telles que les preuves à connaissance nulle et les techniques générales de préservation de la vie privée proposées dans la littérature. Non seulement la blockchain fait de la cryptographie, mais il existe également des instituts de recherche et des départements universitaires dans le monde entier qui effectuent des travaux théoriques. Personnellement, je pense que Mysten Labs est très bon pour trouver de nouvelles théories dans des domaines qui n'ont jamais été mis en œuvre auparavant, certaines de ces hypothèses peuvent ne pas être exactes, mais nous les combinons avec notre technologie existante, et finalement nous propulsons pour créer un nouveau produit.
**Sui a une nouvelle fonctionnalité, Zero Knowledge Login (ZK Login), qui a vu le jour comme ça. Certaines technologies ont été proposées en externe, mais pas suffisamment pour fournir un mécanisme d'authentification transparent pour la blockchain L1, nous avons inventé une nouvelle fonctionnalité en plus, qui est une verticale interne de recherche appliquée, et enfin, nous avons proposé un plan de solution complet. **
Nous ne sommes pas une université, nous ne sommes pas seulement de la théorie, nous devons implémenter quelque chose de prêt pour la production, donc nous recevons des commentaires des discussions internes et externes. Souvent, nous lisons des articles scientifiques, nous assistons à des événements, nous sommes examinateurs et présentateurs, nous recevons des commentaires. Évidemment, nous convertissons tout cela en implémentation sur Sui.
Je me rends compte qu'une partie de notre code est ensuite utilisée par d'autres personnes, d'autres entreprises ou même des personnes extérieures à notre industrie, et vous finirez par voir de grandes entreprises prendre ce code et l'injecter dans leur propre infrastructure, pas nécessairement une installation de fondation blockchain.
L'innovation interne est souvent déclenchée par les équipes produit. Ils viendront nous voir et nous diront : "Ce n'est pas possible pour le moment, nous n'avons pas vu les recherches à ce sujet. Pouvez-vous comprendre cela ?"
Par exemple, le problème intéressant de l'activation d'adresses blockchain détectables mais avec confidentialité. Comment puis-je recevoir quelque chose sur votre adresse e-mail ou votre numéro de téléphone avant même que vous ayez créé un compte ? Imaginez une fonctionnalité de style Venmo dans laquelle je vous envoie des actifs, puis je les récupère lorsque vous réalisez qu'ils sont là. Résoudre ce problème nécessite un brainstorming en interne sur la façon de le faire correctement avec un état d'esprit de confidentialité. Prenant la théorie de l'extérieur, nous combinons tout cela dans un ensemble d'outils. La plupart du temps, nous y parvenons plutôt bien. Nous essayons de résoudre les problèmes ci-dessus, et il est rare de rencontrer un problème de produit sans solution.
**Q : Comment Move vous aide-t-il à créer ces innovations cryptographiques et à offrir une expérience plus sécurisée aux développeurs utilisant Sui ? **
R : J'étais un développeur Solidity, j'écrivais des contrats Ethereum, et j'étais également passionné par la rupture de contrats intelligents sur Ethereum. Mon premier travail consistait à auditer des contrats de loterie sur Ethereum, et j'ai réussi à détruire certains algorithmes. À l'époque, on pouvait presque dire que les algorithmes aléatoires étaient injustes et opaques. Cela m'a en fait appris que les développeurs de contrats intelligents sont généralement des ingénieurs qui écrivent de petits scripts. Les contrats intelligents ne sont pas de gros programmes, ni des bases de données complexes. Habituellement, quelqu'un avec seulement quelques jours de formation peut écrire un contrat intelligent et le déployer, mais cela nécessite un audit très minutieux, et il peut y avoir des pièges cachés dans les interactions web2 - web3 .
Nous avons réalisé que sur Ethereum, certaines des fonctionnalités de sécurité de Solidity posaient problème en raison de deux facteurs particuliers. Tout d'abord, les ingénieurs optimisent la compression pour réduire les coûts de gaz, ce qui peut amener les utilisateurs à manquer certains contenus car les cas extrêmes ne sont pas couverts. Et il y a aussi le problème des attaques de rentrée. C'est comme si un contrat intelligent payait un autre contrat intelligent sans mettre à jour son état. Ce vecteur d'attaque a causé des pertes financières importantes dans le passé, y compris le Ethereum DAO il y a de nombreuses années, qui a abouti à un fork Ethereum.
**Move n'a pas ces problèmes, en particulier pour les problèmes de réentrance, nous protégeons le code source à partir de zéro. Nous avons également apporté de nombreuses modifications au Facebook Move original en créant un langage Move plus centré sur l'objet, ce qui a beaucoup aidé à la réutilisation du code. Au lieu de copier-coller le code de contrat intelligent, puis d'apporter quelques modifications, vous pouvez appeler le code d'origine et obtenir de meilleures garanties de cohérence. **
De plus, dans Move, nous avons des objets pour tout. Dans Solidity, lorsque vous transférez quelque chose d'un contrat à un autre, vous ne savez généralement pas ce que c'est sans contexte. Est-ce l'adresse ? Est-ce un nombre ? Est-ce une URL d'image ? Lorsque vous traitez tout comme des objets, comme Java et C++ et tous les langages orientés objet, vous pouvez d'abord convertir vos projets côté client existants en un monde basé sur des contrats intelligents sans vous soucier des mécanismes de compression triplement optimisés. Parce que vous pouvez littéralement voir, c'est un objet "tigre", je vous transmets un objet "tigre".
Qu'en est-il de la cryptographie ? Lorsque vous possédez les articles, lorsque j'envoie quelque chose d'un portefeuille à une autre adresse, vous obtenez une fenêtre contextuelle indiquant "Vous transférez un NFT tigre. Ce NFT tigre a X caractéristiques". Grâce à la conception centrée sur l'objet, quel que soit l'objet que vous touchez, vous pouvez voir exactement ce que vous faites, ce qui peut vous aider à identifier tout problème avec vos transactions. De nombreux utilisateurs sont attirés par des logiciels malveillants ou des applications qui tentent de vous convaincre de signer quelque chose que vous ne voulez pas signer dans d'autres portefeuilles blockchain. Mais avec Move, c'est un peu plus difficile et l'utilisateur peut voir clairement ce qui se passe, ce qui améliore la sécurité de l'utilisateur final.
Une autre chose qui aide vraiment à concevoir des algorithmes plus intéressants et plus cool est la parallélisation activée par les objets. Disons que j'ai quelques billets, un billet de 10 $ et un billet de 100 $. Je peux le faire en parallèle si j'offre des factures à deux personnes à côté de moi.
Sur Ethereum, le concept de base est un solde de compte central à partir duquel vous pouvez transférer des choses. Donc si je veux envoyer ou recevoir des fonds, je dois commander ces transactions, je vais d'abord envoyer 100$, puis soumettre une transaction de 10$, en même temps si quelqu'un m'envoie des fonds, les 3 transactions doivent être séquencées, ce processus est coûteux de.
C'est là que nous obtenons tous les éléments intéressants du langage Move, et en tant que cryptographes, nous pouvons utiliser la parallélisation et la programmation orientée objet fournies par Move pour créer une meilleure sécurité et des algorithmes innovants plus cool. C'est toute l'idée. Par exemple, nous avons créé un programme de loterie. Bien que cela puisse sembler facile à première vue, pour être honnête, il est souvent très, très difficile de bien faire les choses, en particulier lors de la création de loteries multijoueurs avec des cas complexes, où les bons cryptographes brillent. Nous avons besoin d'un peu de hasard, vous devez acheter des billets de loterie qui peuvent être achetés en parallèle. Comment faites-vous cela sur la blockchain ? Move et ses primitives cryptographiques disponibles aident à fournir un écosystème cryptographique meilleur et plus sécurisé.
Je suis bien conscient que quelque chose comme un système de loterie peut être utilisé dans un produit où, disons, 300 billets sont disponibles, mais des milliers de personnes les veulent, et vous voulez qu'ils soient attribués au hasard ? Ce système est la base de Sui, et n'importe quelle entreprise peut l'ajouter à ses produits.
La bonne chose ici est que, en raison de la nature orientée objet de Sui, vous pouvez appeler le même contrat à partir de nombreux autres contrats intelligents différents. Nous avons le concept de composabilité, qui vous aide en fait à utiliser le même billet de loterie dans deux loteries différentes, ce qui est idéal pour créer de nouvelles expériences qui n'existaient pas auparavant.
Dans les jeux, vous avez besoin de hasard, et Sui est en fait l'une des meilleures blockchains. Pour un jeu de société, même les échecs, qui semblent être un jeu déterministe, vous devez savoir qui joue en premier. Qui est blanc et qui est noir (aux échecs, comme nous le savons, le blanc a l'avantage), cela nécessite une certaine transparence pour faire correspondre correctement différents joueurs dans le même jeu. Il existe également des applications gouvernementales. Imaginez que le bureau des impôts procède à un échantillonnage statistique et sélectionne les personnes à contrôler. Peuvent-ils vraiment apporter la preuve que l'échantillonnage statistique a été effectué de manière juste et transparente ?
S'il existe un algorithme d'une transparence indéniable qui offre un bon aléa non modifiable par les organisateurs, alors chaque loterie ou tirage au sort aura une nouvelle équité.
**Q : Vous avez récemment écrit un tweet sur l'importance de stocker les NFT en chaîne afin qu'ils restent dynamiques et changent avec le temps. Pouvez-vous en dire plus sur cette perspective, en particulier sur la façon dont la structure de données de Sui améliore l'utilité des NFT ? **
R : C'est un sujet très débattu. J'essaie d'expliquer que différentes infrastructures activent les propriétés NFT différemment, et lorsqu'il ne s'agit que d'une image statique, lorsque vous n'effectuez aucune opération à fort trafic sur cette image, la structure traditionnelle est vraiment bonne. Mais dans certains cas, comme les jeux, les joueurs espèrent tirer plus d'avantages du NFT, alors la structure traditionnelle du NFT n'est pas assez bonne.
Sui a des algorithmes qui permettent des NFT dynamiques dont les champs sont mis à jour chaque fois qu'une transaction se produit. Lorsque vous jouez à un jeu, vous avez un héros, vous gagnez, passez un niveau, vous pouvez obtenir de nouvelles armes ou pouvoirs, qui peuvent tous être enregistrés dans l'état de la blockchain et créer une sorte de tout nouveau genre. De plus, comme le coût de stockage sur Sui est bon marché, NFT peut être stocké sur la chaîne. Cela facilite la lecture et l'écriture de différents contrats intelligents sur la chaîne et permet la composabilité.
Sur d'autres chaines vous rencontrerez un problème car les modifications ne sont pas en l'état. Pour qu'un autre contrat intelligent lise votre contrat, il doit connaître votre structure, vous avez besoin d'un analyseur hors chaîne, ce qui crée des complications UX. Il y a aussi une logique conditionnelle dans certaines applications sympas où vous ne savez pas quel NFT vous touchez au moment de soumettre une transaction, alors que puis-je offrir du monde hors chaîne, ce n'est pas facile à mettre à l'échelle.
Il y a aussi la question des modèles de menace et le fait que certaines applications spécifiques peuvent tolérer la compression et le stockage hors chaîne. Mais en réalité, lorsque nous stockons quelque chose hors chaîne, nous modifions le modèle de menace. La raison en est généralement la centralisation, imaginez si un jour vous le stockez dans AWS et ensuite... Amazon tombe en panne. Amazon est une seule entreprise, si elle tombe en panne et que vous ne pouvez pas accéder à ces données hors chaîne particulières, vous ne pouvez pas les utiliser en chaîne ; et même si vous le pouviez, vous auriez même besoin des données pour générer la preuve que vous possédez en fait les données hors chaîne, car parfois, vous devez simplement le prouver, n'est-ce pas ? Pour le prouver, vous devez obtenir le contenu d'AWS, puis le hacher et envoyer une très petite quantité de données dans la blockchain, ce qui est vérifié dans une certaine mesure, mais si vous n'avez pas les données, vous ne pouvez pas prouver il Quel est le contenu de mon NFT.
Il y a donc un problème de centralisation, même si certaines personnes disent que ce n'est pas le cas, car nous pouvons le stocker à différents endroits. Je suis d'accord que si on arrive à avoir un design spécifique, tous ces modèles de menaces sont encodés dans la blockchain, mais l'autre problème c'est le délai. Le NFT est stocké sur d'autres chaines, ce qui va doubler le délai. Ce n'est pas ce qu'on veut Nous espérons que tout est stocké sur la chaîne tout en réduisant la latence.
**Q : Qu'est-ce qui vous enthousiasme le plus pour l'avenir de Sui ? **
R : C'est ma question préférée. La principale raison pour laquelle j'ai rejoint Mysten Labs est que je préfère un endroit où l'innovation est le moteur du développement de produits. Nous offrons quelque chose de nouveau à la communauté. J'ai même nommé mon fils Kryptos.
Si vous me posez des questions spécifiques sur les innovations de cryptage de Sui, une chose est sûre, nous autorisons de nombreuses façons de s'authentifier. En règle générale, la plupart des chaînes de blocs ne prennent en charge qu'un seul algorithme de signature, Ethereum a le sien, et Cardano et Solana en prennent un autre. Nous essayons de faire parler Sui à d'autres chaînes publiques, ce qui signifie que nous autorisons tous les algorithmes existants, ce qui signifie que nous sommes compatibles avec plus de portefeuilles. Les portefeuilles existants n'ont pas besoin de réinventer la roue, vous aimez l'algorithme basé sur Ethereum, nous le supportons, alors allez-y et utilisez-le. Vous utilisez un iPhone, alors vous n'avez même pas besoin d'un portefeuille, les iPhones et les appareils Android plus avancés ont cette puce de sécurité intégrée qui ne prend en charge que des algorithmes spécifiques, et nous le prenons en charge.
Ensuite, nous avons également le concept de multi-signature lui-même, si vous faites attention à la sécurité, la partie authentification de la cryptographie, qui est l'une des fonctionnalités phares de Sui, créera une nouvelle expérience d'authentification.
Une autre chose que j'aime beaucoup personnellement, c'est que nous avons introduit des preuves de connaissance zéro, une technologie de préservation de la vie privée à l'intérieur de Sui dès le premier jour. Ainsi, les gens peuvent désormais créer un système KYC avec autant de confidentialité que possible, ils peuvent même créer des transferts de montants confidentiels, tout en leur donnant également la possibilité de se conformer aux lois et aux auditeurs, nous mettons tout à disposition des développeurs. **
En plus de tous ces algorithmes, notre équipe d'ingénieurs en solutions de développement fournit en fait un très bon support. Nous travaillons tous les jours avec des équipes qui ne connaissent pas la cryptographie, elles n'ont pas de cryptographes, mais ont des idées vraiment sympas, et si nous avons des retours, nous les aidons à mettre en œuvre, quelque chose n'est pas disponible ou il y a un problème, nous Résolvez-les également avec une grande rapidité.