Dans ce nouveau post, nous allons parler de l’utilisation possible de la technologie blockchain dans la communication scientifique. J’ai découvert sur Twitter un article publié sur le blog d’actualités de Digital Science, qui parle du potentiel de la technologie blockchain dans la recherche scientifique. Digital Science & Research est une entreprise fondée par l’anglais Timmo Hannay et exploitée par le grand groupe éditorial Holtzbrinck, qui contrôle certaines des plus grandes maisons d’édition du monde, telles que Springer Nature et MacMillan. Après avoir travaillé chez Nature, fondé et dirigé Digital Science et Overleaf, Hannay aide maintenant à diriger SAGE. Autrement dit, c’est un jeu de géants.
Digital Science se concentre sur la production de logiciels et de services numériques pour les chercheurs et les institutions de recherche. Dans ce post, ils présentent le rapport “Blockchain for Research Digital Science Report” [1], un document qui expose les perspectives actuelles de l’impact potentiel de la technologie blockchain sur la recherche et la communication académiques. De plus, ils lancent un financement spécial pouvant aller jusqu’à 30 000 dollars pour la recherche sur l’utilisation de la blockchain en science: le “Catalyst Grant for the Blockchain”. Les candidatures sont ouvertes jusqu’au 15 janvier 2018 et couvrent des propositions allant de la création de cryptomonnaies ou de cryptoprotocoles à la formation de groupes influençant la mise en œuvre de cette nouvelle technologie dans la recherche scientifique. C’est un signe clair que le monde de la publication académique organisée observe de près la blockchain et souhaite participer à cette application émergente de la technologie.
Mais en fin de compte, qu’est-ce que la blockchain? On peut traduire cette expression par “chaîne de blocs”, ce qui correspond assez fidèlement à sa structure de base. La chaîne de blocs est une “chaîne” formée de structures numériques appelées blocs, qui sont des paquets de données ayant une structure standardisée: ils contiennent un pointeur cryptographique (hash pointer) les reliant au bloc précédent, une horodatation (timestamp) et un ensemble de données stockées. Chaque bloc est donc une petite base de données, ou pour être plus précis, l’ensemble des blocs constitue une base de données distribuée entre des entités distinctes. Le grand saut conceptuel de la chaîne de blocs réside dans le fait qu’il est impossible de modifier avec succès un bloc sans changer toute la chaîne. Pour changer toute la chaîne, chaque pointeur cryptographique (créé à l’aide d’une fonction de hachage SHA 256) de chaque bloc doit être recalculé. Si la chaîne est suffisamment longue, la puissance de calcul requise pour chaque opération de modification serait loin d’être négligeable, rendant l’opération entière impossible. De plus, la chaîne de blocs n’a pas de serveur central et peut être stockée sur un nombre arbitraire de serveurs (nœuds). Une fraction également arbitraire de ces nœuds rivalise pour effectuer les calculs cryptographiques nécessaires à la génération du prochain bloc (c’est ce qu’on appelle “miner la chaîne de blocs”) en échange d’une récompense.
Dans le cas de la première implémentation de la chaîne de blocs de l’histoire, la monnaie numérique Bitcoin, la difficulté des calculs nécessaires pour créer un nouveau bloc est contrôlée par un ensemble de règles du système et chaque nœud tente de trouver la bonne réponse en variant un nombre arbitraire enregistré dans le bloc, appelé le nonce. L’opération cryptographique nécessaire à cela suit un protocole appelé preuve de travail (proof-of-work) et est un exemple d’une attaque par force brute sur le problème. La récompense se présente sous forme d’unités monétaires de la cryptomonnaie. En d’autres termes, les “mineurs” (les serveurs qui rivalisent avec des calculs intensifs) qui “trouvent” (remportent la compétition numérique et génèrent un bloc avant les autres) un bloc reçoivent des cryptomonnaies en échange. Le réseau de la chaîne de blocs est décentralisé et accumule de plus en plus de puissance de calcul dans la compétition entre les “mineurs”. Ainsi, il devient pratiquement impossible de modifier le réseau de la chaîne de blocs au fil du temps. Par conséquent, modifier les données enregistrées dans les blocs de la chaîne est considéré comme impossible et les enregistrements insérés dans la chaîne de blocs sont dits immuables.
Cela résout un problème majeur et ancien en technologie de l’information: comment faire confiance aux données numériques obtenues à partir de n’importe quel serveur? Normalement, la présence d’une autorité centralisée correspondant à une institution du monde réel, en laquelle toutes les parties impliquées ont confiance, est nécessaire. Les failles pour d’éventuels problèmes sont évidentes. Satoshi Nakamoto, le créateur énigmatique de la blockchain et du Bitcoin, a créé une solution en combinant des concepts déjà existants, tels que celui d’un réseau distribué et celui d’une preuve de confiance cryptographique, afin de garantir que la chaîne de blocs soit fiable pour les utilisateurs anonymes sans la présence d’une autorité centrale. Évidemment, une telle fiabilité n’est pas inhérente à n’importe quelle chaîne de blocs et dépendra de ses caractéristiques et de sa mise en œuvre. Actuellement, la cryptomonnaie Bitcoin survit sans aucun historique de problèmes de sécurité dans sa chaîne de blocs. Ce n’est pas le cas de plusieurs centaines de “clones” de cryptomonnaies (altcoins) qui ont émergé suite au succès du Bitcoin, dont beaucoup sont clairement frauduleuses et certaines sont impliquées dans des problèmes graves de sécurité.
Dans le cas du Bitcoin, les données stockées dans les blocs sont les transactions entre les utilisateurs du réseau, sous la forme d’une structure appelée Merkle Root, formant un “registre numérique”, mais pratiquement n’importe quel type de données peut être stocké dans la chaîne de blocs du Bitcoin ou dans d’autres chaînes similaires. Actuellement, il existe déjà des entreprises en phase de déploiement précoce qui proposent un “service de notarisation” où les documents peuvent être “enregistrés” de manière permanente sur le réseau. Cette fonction notariale peut déjà être utilisée par les chercheurs pour enregistrer leurs publications (obtenant ainsi un enregistrement temporel immuable qui atteste de leur revendication de priorité sur une découverte). Cependant, ce qui se profile pour la recherche scientifique est beaucoup plus vaste et englobe tout le cycle de production et de publication des données de recherche.
Mon intérêt personnel pour l’utilisation de la chaîne de blocs est récemment né d’une constatation quelque peu perturbante: comme beaucoup, j’utilise le programme de contrôle de version Git pour organiser localement et le dépôt de code GitHub pour stocker mes données, mes recherches, etc. Git trace efficacement chaque version de votre travail en lui attribuant un hachage SHA 256. Ainsi, il est impossible de falsifier votre code ou vos données sans votre connaissance. Du moins, c’est ce que je pensais, si naïvement. Comme l’a démontré de manière convaincante Mike Gerwitz dans son histoire d’horreur, non seulement il est possible, mais c’est même très facile de modifier vos données et même l’historique temporel de l’arborescence des enregistrements Git. Cela est possible car Git possède ces fonctionnalités intégrées, qui ne sont pas difficiles à utiliser (un tutoriel rapide et clair peut être consulté sur un blog de Link Intersystems). J’ai alors imaginé un scénario dans lequel un directeur de recherche impliqué dans une fraude altère nerveusement ses bases de données, y compris les comptes personnels de ses scientifiques, afin d’échapper à une condamnation. Très sinistre. Comment faire confiance à sa propre base de données dans ce cas? Même avec le soutien d’une institution externe et centralisée comme GitHub?
C’est à ce moment-là que j’ai pensé à la blockchain et à son immuabilité. Parfait pour conférer aux données de recherche dans des projets sensibles (comme la recherche de nouveaux médicaments pour les êtres humains) ou dans des projets publics tels que la Science Ouverte, un degré de confiance difficilement atteignable autrement. En tant qu’ardent défenseur du concept de Science Ouverte, j’ai rapidement compris le rôle crucial que la chaîne de blocs peut jouer en tant que fournisseur de confiance décentralisé. Cela libérerait la recherche ouverte des doutes entourant la possibilité de plagiat. Ce principe de fourniture de confiance peut être utilisé dans tout le cycle de vie de la recherche scientifique, unifiant la collecte, l’analyse et la présentation des données en un seul maillon de fiabilité.
Mais cela ne s’arrête pas là. Une autre possibilité d’impact de la technologie de la blockchain dans la recherche scientifique est le financement direct à partir de cryptomonnaies. Cela ouvrirait une perspective intéressante: la même chaîne de blocs utilisée pour la recherche et la publication des données scientifiques pourrait également être utilisée pour financer ces mêmes activités scientifiques. Les institutions souhaitant promouvoir la recherche pourraient ainsi auditer en temps réel les projets financés en utilisant l’outil de financement lui-même. C’est presque surréaliste, n’est-ce pas?
Cela explique certainement le grand intérêt de l’industrie de la publication académique pour cette technologie. Celui qui la maîtrisera sera en tête d’une course qui promet de changer radicalement et durablement la façon dont le monde scientifique travaille. Mais la chaîne de blocs est-elle réellement applicable à la science? Pour essayer d’en savoir plus à ce sujet, je me suis rendu sur le site du projet Blockchain for Science, dont le créateur, Soenke Bartling, a été interviewé pour le document de Digital Science. Dans sa FAQ, le créateur du projet fait preuve d’une grande vision, avançant plusieurs idées audacieuses (allant même jusqu’à déclarer que sa “frontière ultime” est “l’humanité multi-planétaire”), mais il reconnaît objectivement que les bases de données décentralisées, immuables, etc., basées sur la blockchain “seront inutiles à moins que les scientifiques soient éduqués sur leurs avantages et qu’un mouvement soit créé”. Les auteurs se positionnent comme fournisseurs de cette éducation au monde universitaire. Ainsi, nous pouvons conclure à partir de ce projet, qui en est encore à un stade conceptuel, que la mise en œuvre de la chaîne de blocs dans la science en est encore à un stade précoce, antérieur à toute application pratique.
Cependant, je vois un point que même les auteurs de ce projet semblent encore négliger certaines possibilités: selon leurs déclarations, les problèmes d’incompatibilité des informations, d’absence d’informations préalables, de métadonnées inexistantes, entre autres, “seront éventuellement résolus et, après cela, comment organiser le partage de ces données?”, suggérant que la chaîne de blocs sera utile “à la prochaine grande étape”. En réalité, le projet Blockchain for Science manque une grande opportunité d’utiliser la chaîne de blocs même avant l’opportunité de diffusion de l’information. Le problème unificateur de toutes ces questions est un “problème de fiabilité entre plusieurs parties qui interagissent”, une situation pour laquelle la chaîne de blocs a été utilisée avec beaucoup de succès (la création d’une cryptomonnaie exige la résolution de problèmes tels que le “double dépense”). Ainsi, je crois qu’une mise en œuvre appropriée de la chaîne de blocs pourrait résoudre, entre autres, les problèmes liés à la fiabilité des bases de données (y compris les données omises), à la fiabilité de la publication scientifique (améliorant ou remplaçant le système d’évaluation par les pairs) et à la transparence du “financement de la science” (créant peut-être un système où seuls les “résultats”, même théoriques, autorisent le financement d’un projet, et le jugement n’est pas centralisé).
Assisterons-nous à ce jour de notre vivant?
Références:
- Science, Digital; van Rossum, Joris (2017): Blockchain for Research. figshare. doi:10.6084/m9.figshare.5607778.v1