Cet article se veut être une introduction au principe de traçabilité de l’information. Nous allons voir dans cet article comment la publication d’empreintes sur une blockchain permet de faire émerger la confiance entre tous les intervenants et l’assurance d’un consensus sur la véracité et l’authenticité de l’information.
La traçabilité sous-entend connaître l’état d’un système d’information et suivre les évolutions des états de ce système. Le but ici est donc de donner une accessibilité à certains états par lesquels passe ce système pour tous les intervenants devant vérifier l’authenticité de l’information.
La confiance entre les utilisateurs est réalisée grâce à la publication de preuves, des empreintes indiquant qu’une information est connue, appelées empreintes ou preuves d’existence. Ces empreintes peuvent également être signées cryptographiquement par l’utilisateur qui les émet. Ceci permet de stipuler quel utilisateur connaît une donnée dans le passé (sans divulguer l’information). Ainsi l’ensemble du système permet de tracer l’information et la vérification ultérieure de cette information par tous les utilisateurs du système.
Pour mettre en place la traçabilité d’un objet par exemple, on peut déclarer et publier publiquement des empreintes d’un ou plusieurs de ses états. Ces empreintes sont utilisées pour permettre de vérifier que l’émetteur possède bien une information, comme par exemple prouver qu’une donnée était connue dans le passé.
Les fonctions de hachage sont des algorithmes cryptographiques qui prennent en entrée des données de taille variable et produisent une sortie de taille fixe, appelée valeur de hachage. Cette valeur est une empreinte qui possède toutes les qualités requises. L’idée fondamentale est qu’elle doit représenter de manière unique la donnée fournie en entrée.
Les fonctions de hachage sont conçues pour être en particulier :
Ainsi, on sait créer une preuve unique pour n’importe quelle donnée.
Une fonction de hachage permet donc de vérifier que quelqu’un connaissait bien une donnée en recalculant l’empreinte des informations et en la comparant avec l’empreinte originale.
Le scénario classique est donc qu’un acteur a une information en sa possession, il va donc créer une empreinte et la rendre publique, de tel sorte que si il a besoin de prouver qu’il connaissait cette information, il pourra toujours révéler l’information initiale plus tard.
Inscrire des empreintes (preuves d’existence) dans un stockage immuable est appelée ancrage. L’ancrage représente la mise à disposition de preuve d’existence faite par un utilisateur à un moment donné.
La dernière décennie a mis en lumière la technologie Blockchain qui permet un stockage immuable, sécurisé et traçable. Cette technologie trouve une synergie particulièrement puissante avec le principe de preuve d’existence. En effet, les propriétés intrinsèques de la blockchain apporte l’assurance que
Un autre avantage d’utiliser une blockchain est qu’on s’appuie sur un réseau existant, et donc ne nécessite pas de mettre en place du hardware pour stocker les données.
Pour mettre en place un système d’ancrage sur blockchain, il suffit de créer un programme sur blockchain (appelé smart contract) qui permet de publier une empreinte. Une fois qu’un smart contract est publié sur la blockchain, tous les utilisateurs peuvent interagir avec ce smart contract et ainsi ancrer une empreinte.
Ainsi l’ancrage de données sur blockchain permet de construire une base de données de preuves certifiées et vérifiables.
Voici quelques-uns des intérêts essentiels de l'utilisation d'un ancrage:
L’ancrage est un processus découpable qui peut être effectué parallèlement sur plusieurs blockchains (pour un besoin de redondance, ou bien pour un besoin de parallélisation). Les problèmes de mise à l'échelle sont courants dans les blockchains publiques populaires. En utilisant deux blockchains distinctes, les entreprises peuvent équilibrer la charge de travail. Par exemple, certaines transactions peuvent être effectuées sur une blockchain, tandis que d'autres peuvent être exécutées sur une autre, répartissant ainsi la charge et améliorant la scalabilité globale.
En utilisant deux blockchains différentes, les entreprises peuvent aussi renforcer la sécurité de leurs opérations. On ne perd rien à faire à nouveau des empreintes d’empreintes, car les empreintes finales ne peuvent être retrouvées qu’avec l’information initiale. On peut donc ancrer sur une blockchain une information plus réduite mais qui possèdera des bonnes propriétés.
En cas de faille de sécurité ou d'attaque sur l'une des blockchains, les données et les opérations sur l'autre blockchain restent intactes, assurant ainsi la continuité des activités. On peut aussi avoir une blockchain plus résistante que l’autre et donc une sécurité accrue.
Par ailleurs, pour des raisons de mise à l’échelle, les blockchains se déclinent également en sous-système appelé blockchains dite de couche 2 qui apportent de meilleures performances et qui sont synchronisées avec la blockchain principale. En effet, les blockchain de couche 2 permettent une plus grande quantité de messages ancrés par seconde et un moindre coût d’ancrage, mais la synchronisation avec la blockchain principale nécessite un délai d’attente plus important. L’utilisation de blockchain de couche 2 est recommandée quand le cas d’utilisation accepte de la latence.
La transparence permet aux entreprises de suivre de manière exhaustive et immuable le parcours de leurs produits tout au long de la chaîne d'approvisionnement.
Les cas d'utilisation sont diversifiés : depuis l'industrie alimentaire, où la provenance des produits peut être vérifiée à chaque étape, jusqu'à la logistique, où la localisation précise des marchandises est enregistrée en temps réel. Cette traçabilité est cruciale pour garantir la qualité des produits, prévenir les contrefaçons et assurer la conformité aux normes réglementaires. De plus, elle renforce la confiance des consommateurs envers les marques, car ces derniers peuvent vérifier l'authenticité des produits qu'ils achètent. Dans les secteurs alimentaire et pharmaceutique, par exemple, la traçabilité permet de suivre l'origine des produits, d'identifier rapidement les produits défectueux ou contaminés et de retirer ces produits du marché, garantissant ainsi la sécurité des consommateurs. En cas d'incident, comme une contamination alimentaire, la traçabilité permet aux entreprises de réagir rapidement et de minimiser les pertes en identifiant rapidement la source du problème et en retirant les produits défectueux du marché.
Dans le cas du digital, la traçabilité est encore plus fondamentale, elle est présente partout, pour garantir l’authenticité des objets. Les institutions, les programmes informatiques, internet, la blockchain, la plupart des services en bénéficient déjà dans une forme ou une autre. De plus, dans un contexte où la protection de la vie privée est devenue une préoccupation majeure, la traçabilité transparente et sécurisée peut aider à établir des normes éthiques et à renforcer la confidentialité des données, ce qui est crucial pour la conformité aux réglementations telles que le RGPD (Règlement général sur la protection des données) en Europe. En somme, dans le monde numérique, la traçabilité est un pilier essentiel pour garantir la sécurité, la confiance et la protection de la vie privée des utilisateurs. En analysant les données de traçabilité, les entreprises peuvent identifier des tendances, des préférences des clients et des inefficacités dans leurs opérations, ce qui peut conduire à des innovations produit et à des améliorations continues des processus.
La confiance entre les acteurs d’aujourd’hui est incontournable à de multiples égards. Pour l’obtenir, on peut utiliser l’outil des preuves d’existence sous forme d’empreinte ancrée sur blockchain. On a ainsi composé un processus permettant une certification de données (sans en divulguer le contenu) et une vérification de données (avec révélation a posteriori). Cet ancrage peut s’appuyer sur la technologie blockchain qui apporte par ses propriétés inhérentes de la sécurité, la traçabilité, la transparence, et l’immuabilité des données.