Salut Habr! J'attire votre attention sur la traduction de l'
article "Avez-vous besoin d'une Blockchain"
Partie 1 (Gestion de la chaîne d'approvisionnement)
La blockchain a été introduite comme une innovation technologique qui pourrait conduire à une révolution dans les relations publiques et le commerce.Cette réputation est en partie liée à ses propriétés qui permettent aux parties de se méfier les unes des autres pour interagir et échanger des actifs financiers sans compter sur un tiers de confiance.
Dans cet article, nous analyserons de manière critique si la blockchain est vraiment la meilleure solution pour un cas d'utilisation spécifique.
Nous distinguons les chaînes de blocs publiques (sans autorisation) Bitcoin \ Ethereum et privées (avec autorisation) Hyperledger \ Corda et contrastons leurs propriétés avec celles des bases de données gérées de manière centralisée. nous montrerons une méthodologie structurée pour déterminer les approches techniques optimales pour résoudre des problèmes spécifiques appliqués. Nous analyserons trois cas: la gestion de la chaîne d'approvisionnement, les paiements interbancaires et internationaux et les organisations autonomes décentralisées.
- Fond de blockchain
Le nom blockchain provient d'une chaîne de blocs. Chaque bloc est associé au précédent via un hachage cryptographique. Un bloc est une structure de données qui vous permet de stocker une liste de transactions. Les nœuds de réseau de blockchain créent et échangent des transactions et modifient l'état de la blockchain. Les transactions peuvent donner un sens au montant d'argent, mais ne sont pas limitées à cette application et peuvent, par exemple, exécuter des programmes utilisateur appelés contrats intelligents.
Les différences suivantes sont caractéristiques des participants aux réseaux considérés. Comme pour toute base de données, un «écrivain» est une entité qui écrit l'état dans la base de données. Dans la blockchain, cela fait référence au participant impliqué dans le protocole de consensus et participant au remplissage de la blockchain avec des données. L'auteur écrit des transactions en blocs et ajoute des blocs à la blockchain. Un écrivain peut également être appelé «validateur». «Reader» est une entité qui n'est pas impliquée dans le remplissage de la blockchain, mais peut participer soit au processus de création de transactions, soit simplement lire, analyser ou auditer la blockchain.
Systèmes de blockchain publics
Bitcoin et Ethereum fournissent un exemple de réseaux publics ouverts et décentralisés. Tout nœud peut rejoindre et quitter le réseau et devenir un validateur ou un lecteur à tout moment. il n'y a pas d'organe directeur central qui contrôle l'adhésion ou restreint les lecteurs ou les écrivains. Cette ouverture implique la lisibilité des enregistrements par n'importe quel nœud. Cependant, l'utilisation de primitives cryptographiques offre la capacité technique de créer un réseau public de blockchain avec des informations privées cachées (Zerocash)
Systèmes de blockchain privés
Pour limiter le nombre de participants, les systèmes de blockchain dits privés ont été proposés. Ici, l'autorité centrale distribue les droits et les attributs des opérations de lecture et d'écriture à la blockchain. Pour garantir l'isolement et la confidentialité, les lecteurs et les écrivains peuvent avoir des chaînes de blocs parallèles distinctes connectées les unes aux autres. Les systèmes les plus connus sont Hyperledger et Corda R3.
- Les propriétés
La vérifiabilité publique permet à chacun de vérifier l'exactitude de l'état actuel du système. Dans les registres distribués, chaque état est approuvé par les validateurs; il s'agit d'un sous-ensemble limité de tous les utilisateurs. Cependant, tout observateur peut s'assurer que le statut du registre change conformément au protocole et que tous les observateurs auront le même type de registre. Dans les systèmes centralisés, différents observateurs peuvent avoir différents types d'état. Par conséquent, ils ne peuvent pas déterminer l'exactitude de la transaction. Au lieu de cela, ils devraient faire confiance à l'autorité centrale.
La transparence des données et le processus de mise à jour de l'État sont une exigence pour l'examen public. Cependant, la quantité d'informations disponibles pour le navigateur peut varier, et tous les participants n'ont pas besoin d'accéder à chaque élément d'information.
La confidentialité est un élément important de tout système. Il existe une contradiction interne entre confidentialité et transparence. La confidentialité est certainement plus facile à réaliser dans un système centralisé, car elle ne nécessite pas de transparence et d'examen public.
L'intégrité des informations garantit que les informations sont protégées contre les modifications non autorisées, c'est-à-dire que les données reçues sont correctes. L'intégrité de l'information est étroitement liée à l'examen public. Si le système fournit une vérifiabilité publique, n'importe qui peut vérifier l'intégrité des données; sinon, l'intégrité ne peut être assurée que si le système centralisé n'est pas compromis.
La redondance des données est importante pour de nombreux cas d'utilisation. Dans les systèmes de blockchain, la redondance est intrinsèquement assurée par la réplication sur les nœuds. Dans les systèmes centralisés, la redondance est généralement obtenue par réplication sur divers serveurs physiques et par création de sauvegardes.
Trust Anchor détermine qui représente la plus haute autorité
dans ce système, qui a le droit d'accorder et de révoquer des autorisations de lecture
et accès en écriture au système.
La contradiction entre transparence et confidentialité . Il existe un compromis inhérent entre transparence et confidentialité. Un système complètement transparent permet à quiconque de voir n'importe quelle partie des informations, c'est-à-dire que la confidentialité n'est pas assurée. De même, dans un système entièrement privé, il n'offre aucune transparence. Cependant, le système peut assurer une confidentialité garantie, sans fuite d'informations sur le statut de chaque participant individuel. La confidentialité dans le système public peut être obtenue à l'aide de méthodes cryptographiques, mais se fait généralement au détriment d'une efficacité moindre. La crypto-monnaie Zerocash, par exemple, utilise une cryptographie coûteuse en calcul pour garantir un anonymat complet, tout en offrant une transparence suffisante pour vérifier publiquement l'état du registre.
- Où la blockchain a-t-elle un sens En général, l'utilisation d'une blockchain ouverte ou fermée a du sens lorsque plusieurs entités se méfiant mutuellement veulent interagir et changer l'état du système, et au moins utiliser un tiers de confiance. Pour faciliter le processus de prise de décision, nous fournissons le diagramme de la Fig. 1. une ou plusieurs parties sont considérées qui écrivent l'état du système, c'est-à-dire l'auteur, c'est une entité avec le droit d'écrire dans une base de données typique ou un participant consensuel dans le système de blockchain.

S'il n'est pas nécessaire de stocker des données, une base de données n'est pas nécessaire du tout, c'est-à-dire que la blockchain, en tant que forme de base de données, est inutile. De même, s'il n'y a qu'un seul écrivain, la blockchain ne fournit pas de garanties supplémentaires et la base habituelle est mieux adaptée car elle offre de meilleures performances en termes de bande passante et de latence. Si un tiers de confiance (TPA) est disponible, il y a deux options. La première option est si le TPA est toujours en ligne, les opérations d'écriture peuvent lui être transférées et il peut fonctionner comme un vérificateur pour les transitions d'état. Deuxièmement, si TPA est généralement hors ligne, il peut fonctionner comme une autorité de certification dans la mise en place d'une blockchain autorisée, c'est-à-dire où tous les rédacteurs du système sont connus. Si tous les écrivains se font confiance, c'est-à-dire qu'ils supposent qu'aucun participant n'est malveillant, une base de données partagée en écriture est probablement la meilleure solution. S'ils ne se font pas confiance, l'utilisation d'une blockchain privée a du sens.
Selon que la vérification publique est requise, n'importe qui peut être autorisé à lire le statut (blockchain publique avec différenciation des droits) ou l'ensemble de lecteurs peut également être limité (blockchain privée avec différenciation des droits) Si l'ensemble d'auteurs n'est pas fixe et est inconnu des participants, comme c'est le cas avec avec de nombreuses crypto-monnaies telles que Bitcoin, une blockchain publique est une solution appropriée:

Dans le tableau 1, nous comparons certaines propriétés des chaînes de blocs publiques et privées et des bases de données centralisées. Dans un système centralisé, les performances en termes de retard et de débit sont bien meilleures que dans les systèmes de blockchain, car les systèmes de blockchain ont une complexité supplémentaire (communicative et informatique) en raison du mécanisme de consensus. Par exemple, Bitcoin prend actuellement en charge un débit d'environ 7 transactions par seconde (qui pourrait être étendu à environ 66 sans compromettre la sécurité), tandis qu'un système centralisé tel que Visa peut traiter plus de cinquante mille transactions à son apogée. Il existe un compromis entre la décentralisation, c'est-à-dire la façon dont le système s'adapte aux écrivains sans confiance mutuelle et bande passante, c'est-à-dire le nombre d'états de mise à jour que le système peut traiter à un moment donné. Au moment de décider de l'utilisation d'un système de blockchain, ce compromis doit également être pris en compte. - Cas d'utilisation
Gestion de la chaîne d'approvisionnement
Dans la gestion de la chaîne d'approvisionnement (SCM), le flux de matériaux et de services requis pour produire un produit donné comprend divers cycles intermédiaires de stockage et de production jusqu'à la livraison au point de consommation final. En règle générale, plusieurs sociétés interagissent et commercent à l'échelle mondiale au sein d'une chaîne d'approvisionnement donnée. En raison de cette complexité, les coûts associés à la gestion des actifs, des processus et de la détection des pannes sont particulièrement coûteux.
Plusieurs entreprises (par exemple, Skuchain, Provenance, Walmart, Everledger) annoncent des solutions basées sur la blockchain pour augmenter l'efficacité des solutions de gestion de la chaîne d'approvisionnement. Certains soutiennent même que la technologie de la blockchain ouvre la voie à la chaîne de la demande, au lieu des chaînes d'approvisionnement, où les entreprises bénéficieront d'une plus grande flexibilité pour interagir avec différents marchés et équilibrer les risques de prix. Le SCM traditionnel est piloté par la planification et les communications. La demande future est estimée sur la base de la demande passée et actuelle, des informations sont envoyées aux parties intéressées qui espèrent recevoir des informations pertinentes à temps afin de répondre aux changements, retards ou erreurs. Les entreprises décident quel produit sera commercialisé à quel moment et les clients contrôlent indirectement la demande.
Dans la gestion de la chaîne de la demande (DCM), l'intérêt des clients est au cœur - des prix réduits, un service client plus rapide et une entrée plus rapide sur le marché avec une idée ou un produit à viabilité minimale (MVP) ne sont que quelques exemples. DCM augmentera la flexibilité en exigeant que toutes les parties prenantes disposent de données en temps réel pour voir ce que les consommateurs veulent et achètent. Ainsi, tous les acteurs de la chaîne de la demande doivent être étroitement connectés au réseau. Contrairement à SCM, qui «optimise les flux» et peut se baser sur des évaluations de marché incomplètes et inexactes, DCM oblige les entreprises à avoir une vision complète et précise du marché et à choisir activement les meilleures solutions de fabrication. Ainsi, le flux d'informations dans DCM est du type pull et non du type push : les parties intéressées n'ont pas besoin d'attendre les notifications, elles peuvent demander activement l'état du système.

Les membres SCM varient considérablement selon les différentes chaînes d'approvisionnement, et les mêmes membres peuvent jouer différents rôles dans différentes chaînes d'approvisionnement. La base de la segmentation des différents acteurs de la chaîne d'approvisionnement est généralement déterminée par leur propriété dans la part du produit qui est produite. Cela signifie que pour chaque chaîne d'approvisionnement dans laquelle le participant est impliqué, une chaîne de blocs distincte est requise - ce qui dégrade clairement les performances de la décision finale.
Conformément à notre méthodologie de la section 3, SCM, la conservation des données est bien sûr requise. Plusieurs validateurs sont impliqués, c'est-à-dire divers participants SCM possédant une certaine part du produit final. Skuchain est conçu pour utiliser une seule source de confiance, ce qui élimine cependant le composant décentralisé de la blockchain et sera donc équivalent à un serveur central de confiance. Poursuivant notre méthodologie, SCM peut techniquement probablement toujours utiliser le TTP en ligne. Si cela n'est pas possible, au moins tous les validateurs seront connus, ce qui nous laisse le choix entre une blockchain publique ou privée. Ce raisonnement nous laisse avec la question de savoir si tous les validateurs peuvent faire confiance. La gestion de la chaîne d'approvisionnement a un problème inhérent
interface entre le monde numérique et physique. En règle générale, une personne ou une machine sous le contrôle d'un validateur est tenue d'enregistrer qu'un certain produit est arrivé à l'entrepôt et, par exemple, sa qualité convient. S'il n'y a pas de confiance dans le travail de ces employés, alors toute la chaîne d'approvisionnement est techniquement compromise, car toutes les données pourraient être fournies par un attaquant. Si, d'autre part, tous les valideurs sont fiables, la blockchain n'est pas nécessaire - une base de données ordinaire avec accès en écriture l'arrangera.
Veuillez noter que si, d'une manière ou d'une autre, la connexion entre le monde numérique et le monde physique est mise en œuvre de manière sûre, les considérations précédentes doivent être revues.
Paiements interbancaires et internationaux
voir suite
Organisations autonomes décentralisées
voir suite