Comment équipons-nous la blockchain

Il y a quelques mois, je voulais comprendre de quoi parlait tout ce battage médiatique: bitcoin, jetons, contrats intelligents, ICO. Avec Bitcoin, tout était relativement simple, car il y a un merveilleux bitcoinbook .


Avec les contrats intelligents, les choses étaient plus compliquées. Il s'est avéré que la raison n'est pas le meilleur nom. Lorsque nous entendons le mot «contrat», le sens juridique du terme vient à l'esprit: un contrat entre deux ou plusieurs parties. Et une telle compréhension des contrats intelligents a le droit d'exister, mais l'essence du phénomène est beaucoup plus large et le contrat n'est pas le cas le plus intéressant et le plus important.


Dans le sillage de la popularité des ICO, nous parlons de réglementation gouvernementale. Je ne suis fan ni de l'État ni de la réglementation, mais je dois admettre que l'État est l'une des institutions les plus importantes, et on ne peut pas s'en passer. Néanmoins, il me semble que la communauté a concentré ses efforts sur un cas particulier du problème, et non sur le plus important. Lorsqu'elle est utilisée correctement, la technologie considérée peut changer de façon méconnaissable de nombreux domaines de la vie. Au lieu d'envisager un cas isolé d'ICO et d'élaborer une réglementation «par analogie» avec l'IPO, vous devriez aborder la question de manière plus systématique.


Lorsqu'une nouvelle technologie apparaît et que l'on ne sait pas comment l'appliquer, il est tentant de se concentrer sur les anciens modèles. Il en était de même pour les smartphones: les premières versions des smartphones sur Windows Mobile tentaient d'intégrer l'interface du système d'exploitation de bureau dans un petit écran; avec des icônes, une souris et un bouton de démarrage. De tels smartphones pouvaient être utilisés, mais la véritable révolution s'est produite lorsque les développeurs ont réalisé qu'un smartphone n'est pas un petit ordinateur, mais quelque chose de fondamentalement différent, et l'interaction des utilisateurs devrait être construite sur des modèles complètement différents.


Poursuivant l'analogie avec un smartphone: les contrats intelligents ne sont pas des «contrats autoréalisateurs». Pour comprendre comment ils s'intégreront dans nos vies, vous devez comprendre ce qu'ils sont tous, puis réfléchir soigneusement à la façon dont leurs propriétés peuvent être utilisées à leur avantage.


Faites immédiatement une réserve que je ne prétends pas être un expert dans ce domaine. Le but de ce texte est d'exprimer ma vision et de stimuler le dialogue. Il se pourrait bien que dans certains endroits, j'ai dit des bêtises ou oublié quelque chose de très important. Dans ce cas, n'hésitez pas à commenter.


La deuxième mise en garde concerne les caractéristiques techniques des systèmes de blockchain. Par souci de simplicité, je suggère que toutes les garanties déclarées de ces systèmes sont en effet valables. Nous considérons les problèmes conceptuels d'application, de sorte que les vulnérabilités, les lacunes et les faiblesses d'implémentations spécifiques restent en dehors des crochets - c'est un sujet pour une discussion séparée, à laquelle je ne suis pas qualifié pour participer. De plus, lorsque j'utilise des mots comme «impossible», ils signifient en fait «très coûteux en termes de temps et de ressources». Les garanties de la blockchain sont de nature probabiliste, elles sont donc des «garanties» au sens pratique et non logique du terme.


L'ordinateur de Dieu


Pour commencer, je veux proposer d'oublier le mot «contrat» et de regarder le phénomène à distance.


Imaginez que vous avez un ordinateur. Cela fonctionne exactement comme les ordinateurs habituels. Vous pouvez y exécuter des programmes écrits dans des langages de programmation spéciaux. Cependant, il présente plusieurs caractéristiques importantes:


  • il ne peut pas être arrêté ou détruit
  • il garantit que les instructions du programme seront exécutées exactement comme le développeur les a écrites
  • toute personne ayant accès à Internet peut l'utiliser
  • chaque programme sait exactement quel utilisateur y accède, c'est-à-dire qu'aucun utilisateur ne peut usurper l'identité d'un autre
  • les programmes peuvent interagir avec d'autres programmes de la même manière que les utilisateurs

Dans la plupart des implémentations existantes, il existe une autre propriété: chaque utilisateur voit ce qui se passe «à l'intérieur» des programmes, c'est-à-dire que l'ordinateur ne peut pas cacher des informations privées. Cependant, ce n'est pas un principe fondamental, donc je l'ai placé en dehors de la liste principale.


À quoi ressemble le programme exécuté sur un tel ordinateur? Le programme comprend deux parties: les données et les règles pour les modifier. L'ordinateur garantit que les données ne seront pas modifiées, sauf si une règle l'autorise.


Pour une personne qui n'est pas familière avec la programmation, ce qui précède apportera très probablement peu de clarté, alors considérons un exemple élémentaire.


Contrefaçon


Vous êtes un fabricant de sacs à main haut de gamme. Tout le monde sait que le plus gros casse-tête de ces entreprises et de leurs clients est le faux. Eh bien, nous avons une solution.


Nous exécutons un programme sur notre ordinateur qui ressemble à ceci:


# :  :  &         : 349587 :     :     #  1:   ""   ,       "". 

Que se passe-t-il ensuite? Ensuite, nous, le fabricant, transférons le sac à l'entrepôt de gros, en changeant le propriétaire en «entrepôt de gros». Un représentant du magasin arrive à l'entrepôt de vente en gros, et l'entrepôt vend le sac au magasin et change le propriétaire dans un certificat électronique pour «stocker des sacs indécemment chers».


Un client vient au magasin à la recherche d'un sac. Voulant se protéger des contrefaçons et autres mauvaises surprises, il vérifie son ordinateur et voit ce qui suit:


 # : :      :  &         : 349587 :     #  1:   ""   ,       "". 

Le numéro 349587 estampillé sur le sac, voit le client. La société de fabrication a vraiment annoncé qu'elle avait sorti un sac avec un tel numéro de série, car personne d'autre ne peut se faire passer pour Horns and Hooves. Et, plus important encore, il existe une chaîne continue de transfert de marchandises, du fabricant de sacs au magasin.


Le client ne fait pas confiance au magasin. On soupçonne qu'il est plus rentable pour le propriétaire du magasin de vendre une copie convaincante cousue par les mains de travailleurs privés de leurs droits dans une sorte de pays chaud. Mais le client fait confiance au fabricant et aux garanties du système.


On peut dire: pourquoi ne pas coudre un faux avec le numéro de série 349587 ? Vous pouvez le faire, mais pour le vendre plus tard, vous devez être le propriétaire actuel d'un sac authentique, ce qui n'a aucun sens économique si vous échangez des sacs.


Ainsi, le client sait maintenant que le sac est authentique et n'a pas été volé.


Bien que cet exemple soit un jouet, il démontre l'une des caractéristiques les plus importantes des contrats intelligents: enregistrer la propriété et la transférer en toute sécurité entre les propriétaires.


Les systèmes de blockchain sont souvent appelés sans confiance, c'est-à-dire qu'ils permettent aux utilisateurs d'interagir sans se faire mutuellement confiance. Cela est vrai dans certains cas spéciaux (bitcoin), mais dans la plupart des situations, la confiance est toujours requise. Dans l'exemple de la contrefaçon, nous devons faire confiance au fabricant. Le système vous permet d'étendre cette confiance plus bas dans la chaîne.


L'argent numérique


Dans l'exemple ci-dessus, deux processus parallèles se produisent. Le droit de propriété passe du producteur au consommateur final, et l'argent se déplace dans la direction opposée. Il serait commode de combiner ces deux éléments.


Imaginez qu'une banque courageuse ait développé et lancé un contrat aussi intelligent:


 #  :  "" :    : 1000000   : 900000  : 500000  : 100000  : 0 #  1:    ""        . 2:            . 3:  ""           ( )   11. 

Pour garantir le fonctionnement d'un tel contrat, la banque devrait être en mesure de débiter et de retirer librement de l'argent des comptes des utilisateurs - comme c'est le cas actuellement lors du transfert d'espèces vers un compte virtuel. Autrement dit, les utilisateurs doivent faire confiance à la banque. Cependant, les transactions sont initiées par les utilisateurs et sont effectuées par le système; la seule chose que la banque fait est de garantir l'échange de jetons contre de la monnaie fiduciaire à un taux fixe.


Dans le contrat, vous pouvez également voir quelque chose d'étrange. Le sac possède également son propre compte bancaire. Un peu plus tard, il deviendra clair pourquoi cela est nécessaire, mais pour l'instant nous rappelons que les programmes peuvent interagir avec les programmes, c'est-à-dire que le contrat est en quelque sorte un utilisateur égal du système. Rien n'empêche donc le certificat d'avoir son propre compte. Bien sûr, le certificat ne peut pas venir à la banque et recevoir de l'argent ou mettre de l'argent sur le compte, mais ce n'est pas nécessaire.


Supposons qu'au moment où le sac a été libéré, chacun des quatre participants au processus avait déjà échangé une certaine quantité de monnaie nationale contre une monnaie virtuelle.


Dans sa forme originale, un certificat de contrat vous permet de posséder un sac et de transférer la propriété. Ajoutons-le pour que le sac puisse être vendu pour de l'argent virtuel, et que le vendeur et l'acheteur ne se fassent pas confiance - mais seulement à la banque et au fabricant.


 # : :      :  &         : 349587 :     : () : () #  1:   ""   ,       "". 2:      ""    . 3:      ""    . 4:    ""  ""   4.1:         ,   ,     ,     .  ""  ""  . 4.2:            ,        "". 

Il s'avère que maintenant le transfert de droits est lié au transfert d'argent virtuel. Ils se produisent simultanément ou ne se produisent pas du tout. Le vendeur n'a aucune raison de craindre qu'il transfère la propriété à l'acheteur et la banque annule la transaction. L'acheteur sait que s'il paie le montant requis, le droit lui sera transféré ou l'argent lui sera remboursé. Bien entendu, un tel contact ne peut garantir le transfert d'un objet physique de main en main, mais nous en parlerons ci-dessous.


Le principal service public


Malheureusement, dans la vraie vie, tout n'est pas si simple. Bien sûr, notre ordinateur n'identifie pas directement les utilisateurs (personnes). Pour l'identification, des clés de chiffrement spéciales sont nécessaires.


On les appelle la "clé privée" (elle doit être gardée secrète) et la "clé publique" - c'est l'identifiant de l'utilisateur dans le système, comme une connexion sur un site traditionnel. Les clés publiques et privées sont liées mathématiquement de telle manière que seul le propriétaire de la clé privée peut prouver qu'il est cet utilisateur, et pour cela, il n'est pas nécessaire de divulguer la clé privée. Il s'avère que l'accès de l'utilisateur au système est fourni par l'accès physique de l'utilisateur à la clé privée, qui est généralement stockée sur une sorte de support de stockage.


Il est supposé que celui qui a accès à la clé de la société "Horns and Hooves" est son représentant et agit dans son intérêt. Ce qui n'est bien sûr pas toujours le cas.


La clé peut être perdue ou volée. Vous pouvez forcer le propriétaire à effectuer les actions nécessaires pour l'attaquant. Dans notre exemple, le prix d'une telle vulnérabilité est de plusieurs centaines de dollars. Mais imaginez que nous ne vendons pas de sacs, mais, par exemple, des biens immobiliers ou des parts dans l'entreprise.


C'est là que l'État entre en jeu. Malgré le désir douteux de remplir de plus en plus de nouveaux domaines de la vie, l'État a plusieurs propriétés utiles: il est impersonnel, a le monopole de la violence et une grande marge de confiance. Quiconque a rencontré le travail de la machine d'état peut sourire amèrement à la dernière déclaration, mais c'est un fait. Les fonctions spécifiques de l'État ou de ses représentants peuvent perdre votre confiance, mais si vous regardez attentivement, il s'avère que nous faisons tous confiance aux documents et certificats délivrés par l'État (passeport d'un citoyen, permis de conduire, certificat de propriété). En concluant des transactions, nous supposons qu'elles sont reconnues par l'État et que nos intérêts sont protégés par celui-ci.


On dit parfois que la blockchain nous mènera à l'anarchie numérique, mais ce n'est rien de plus que des rêves. La cryptographie astucieuse ne nous sauve pas des problèmes de sécurité physique.


À quoi pourrait ressembler le rôle de l'État?


John Locke sur les stéroïdes


Le problème le plus évident à résoudre est l'accès physique de l'utilisateur à la clé et son identification. Le système doit être construit de telle manière que lorsqu'une clé est perdue, une personne ne perd pas l'accès à ses contrats. Pour ce faire, nous avons besoin d'une entité contrôlée par la clé spécifiée, mais l'État peut remplacer la clé à la demande d'un citoyen.


Autrement dit, dans tous les exemples ci-dessus, nous devons remplacer les utilisateurs (propriétaires clés) par un contrat spécial, qui symbolise une entité qui peut effectuer des actions juridiquement importantes (personne physique ou morale).


Imaginons que vous stockiez des jetons dans la banque Trust. Le compte est lié à une clé privée. En perdant une clé, vous perdrez à jamais l'accès aux jetons. Que se passera-t-il si le compte n'est pas lié à une clé, mais à un contrat qui est l'avatar d'un individu?


 #  :  :   :   2398457325034205873245 #  1:    . 2:         . 

Maintenant, en cas de perte de la clé, vous pouvez vous rendre dans l'État et demander à vous donner une nouvelle clé, en changeant le propriétaire de votre avatar. Pour bloquer immédiatement toutes les actions de ce contrat, vous pouvez avoir un fiduciaire qui a une telle opportunité.


Étant donné que l'État a notre confiance exclusive dans l'identification des personnes, il est difficile de s'en passer. La blockchain nous interdit-elle d'utiliser d'autres contrats intelligents, par exemple, basculer les jetons directement sur une clé, en contournant un certificat émis par l'État? En fait, cela n’interdit pas, mais l’État réglemente cette sphère - pas dans le sens de «dire à tout le monde comment vivre». Dans ce cas, cela signifie que l'État déclare: seuls les contrats intelligents conformes au formulaire établi sont sous ma protection . Si vous effectuez des transactions qui ne sont pas sous la forme établie et que quelque chose d'inattendu se produit, ce sont vos problèmes.


Nous avons remplacé l'utilisateur par un individu. Mais un contrat individuel a un émetteur, et c'est une autre entité importante: l'État. Cette entité devra également être présentée sous la forme d'un contrat intelligent, pour les mêmes raisons: la sécurité. Si un citoyen en cas de circonstances imprévues peut s'adresser à l'État pour obtenir de l'aide, l'État n'a nulle part où s'adresser. Je ne considérerai pas les détails de la mise en œuvre d'un tel contrat ici - c'est un sujet pour un article séparé. Très probablement, l'État devrait être contrôlé par plusieurs clés qui, en votant, peuvent exclure une clé si elle est compromise.


L'État contractuel symbolise la juridiction, le contrat souverain et social - comme vous le souhaitez. Un terme n'a pas encore été inventé pour lui, mais j'ai aimé le mot Empires . En général, emprunter la terminologie au droit romain antique me semble une bonne idée: les termes ne se recouperont pas, donc lors de la discussion, vous n'aurez pas à indiquer de quel type de citoyenneté nous parlons: un citoyen réel ou contractuel.


Prochaines étapes


Bien sûr, j'ai omis beaucoup de détails afin d'expliquer le concept en termes généraux. Le schéma est le suivant: nous transférons des entités juridiques vers des contrats intelligents, décrivant les règles par lesquelles elles interagissent. Les éléments de base du régime sont l'État, les individus, l'argent et la propriété, et c'est d'eux que l'on doit commencer.


Il est probable que les informations sur l'argent seront stockées dans un seul contact, et l'État accordera aux banques agréées le droit d'échanger des devises nationales contre des jetons.


Quelles autres entités juridiques seront transférées aux contacts intelligents?


  • entités juridiques: IP, LLC, AO
  • fiscalité
  • propriété de divers objets: immobilier, voitures
  • prêt garanti, avec transfert automatique de propriété en cas de non-respect des conditions du prêt
  • diverses licences
  • état civil: un individu peut être légalement incompétent, légalement incompétent, vivant, décédé, marié ou dans d'autres relations civiles
  • testament et héritage automatique
  • Vote et nomination: une personne élue peut être automatiquement «nommée» à un poste, avec le droit d'occuper un poste contractuel, et le titulaire du poste changera conformément aux règles

Tous les modèles d'affaires que j'ai rencontrés à ce jour sont liés au transfert d'anciens processus vers les rails des contrats intelligents. Nous avons entendu une promesse de nous sauver des intermédiaires, tandis que de nombreuses startups qui sont apparues sont apparues en train d'essayer de médier en utilisant la blockchain. Nous voyons tous les mêmes systèmes de paiement et plateformes de trading. J'espère que d'autres entreprises apparaîtront bientôt qui concentreront leurs efforts sur la fourniture d'une interface pratique à un système d'échange décentralisé commun et sur l'extraction d'informations commercialement utiles de la blockchain.

Source: https://habr.com/ru/post/fr407079/


All Articles