Brevet FR3049101A1 — publié le 20170922

- 1 - INTRODUCTION La présente invention se rapporte au domaine de la gestion des contrats intelligents. Plus particulièrement, l'invention a trait à des moyens adaptés notamment pour sécuriser des contrats intelligents et les relier à des identités digitales, sans divulgation, à travers un réseau informatique décentralisé. Les systèmes de gestion de contrats intelligents, comme ceux utilisés par les banques et les assurances présentent des limitations connues. En particulier, il n'est pas possible d'y intégrer la gestion des identités digitales, les cocontractants sont contraints en raison de la centralisation de ces systèmes de faire confiance à un tiers dont ils ne peuvent qu'espérer que la gestion des données et l'éthique correspond à leurs attentes. D'autres procédés, visant à pallier ces limitations sont ainsi connus. En particulier, il est possible, par l'intermédiaire des technologies basées de chaînes de blocs - plus généralement désigné par le terme anglo-saxon de « Blockchain » de gérer des contrats à travers des blocs de messages. Néanmoins avec ce type de technologies il n'est pas possible de traiter les contrats de façon unitaire ni même de les relier à des identités digitales. Cette technologie oblige de traiter les contrats dans un bloc de transactions et de les valider à travers la validation dudit bloc, de la même façon il est nécessaire de télécharger tous les blocs pour pouvoir récupérer les données associées audit contrat. Ces contrats ne sont pas associés intrinsèquement à des identités digitales ce qui pose le problème de l'exécution obligatoire d'un contrat, enfin et pour les mêmes raisons, toute notion de réputation ou de certification associée à l'exécution d'un contrat intelligent devient impossible. C'est pourquoi il existe un besoin pour des moyens de gestion de contrats intelligents permettant d'associer l'exécution dudit contrat à au moins une identité digitale donnée, de traiter les validations desdits contrats de façon unitaire, mais également de pouvoir traiter l'exécution d'un contrat intelligent à travers un réseau décentralisé disposant en outre de tiers de confiance à confiance limitée. Un objet de l'invention est de fournir des moyens de gérer des contrats intelligents associés ou non à une identité digitale à travers un réseau 3049101 - 2 - informatique décentralisé. Un autre objet de l'invention est de fournir un moyen de généraliser le chiffrement desdits contrats intelligents à travers des identités digitales et leurs données associées. Un autre objet de l'invention est de fournir un moyen de rendre l'exécution d'un contrat obligatoire à travers une 5 imbrication avec d'autres contrats intelligents ou d'autres identités digitales. Un autre objet est l'utilisation de tiers de confiance à confiance limitée permettant d'une part de ne valider un contrat qu'à la condition où celui-ci respecte les conditions associées au contrat lui-même, mais aussi aux conditions associées à d'autres contrats ou d'autres identités digitales. Un 10 autre objet est la gestion des multi-signatures associées à la validation, la modification ou l'exécution d'un contrat. Un autre objet de l'invention est de permettre les transferts de valeurs à partir ou à destination d'un contrat, de permettre l'intégration d'éléments extérieurs comme la météo ou encore des éléments périodiques comme un abonnement mensuel. Un autre objet est de 15 permettre le financement participatif, la gestion de prêts, de votes électroniques ou d'échanges non financiers. Enfin, un objet de l'invention est de permettre à partir des éléments d'exécution d'un contrat de pouvoir associer aux cocontractants des éléments de réputation et de certification. 20 3049101 5 BRÈVE DESCRIPTION DES FIGURES D'autres particularités et avantages de la présente invention apparaîtront, dans la description ci-après de modes de réalisation, en 5 référence au dessin annexé, dans lesquels : [Figure 1] vue schématique de la transmission et de la validation d'un message relatif à un contrat intelligent comportant les dispositifs émetteurs (1) et (2), les dispositifs récepteurs (3) et (4) intégrés dans un réseau décentralisé. 10 3049101 -6 DESCRIPTION DÉTAILLÉE En référence notamment à la figure 1, un procédé mis en oeuvre 5 dans un réseau comportant au moins un premier (1) et un deuxième (2) dispositif émetteur et au moins un premier (3) et un deuxième (4) dispositif récepteur, tous adaptés pour réaliser des calculs cryptographiques va maintenant être décrit. 10 Le procédé de mise en place de contrat intelligent est caractérisé d'une part par un accord explicite de chacun des cocontractants matérialisés par une signature cryptographique, mais également par la validation dudit contrat par des tiers de confiance, matérialisé par la présence de messages de validation (8) générés par au moins un dispositif récepteur (3). Chacun des 15 dispositifs récepteurs ayant la charge non seulement de vérifier la validité des conditions dudit contrat, mais également de vérifier les précédents messages de validation générés par d'autres dispositifs récepteurs. Enfin l'ensemble des contrats sont gérés à travers des chaînes de contrat, c'est à dire d'une part que tout nouveau message généré sur la chaîne dudit contrat devra indiquer la 20 clé de contrôle du précédent message dudit contrat, mais également que toute modification dudit contrat devra faire l'objet d'un nouvel ajout de message sur ladite chaîne de contrat. La figure 1 représente la matérialisation d'un message trivial de 25 type contrat comprenant : - Un premier message transmis par le dispositif émetteur (1) contenant : - (CTRA) : clé de contrôle de la clé privée relative au contrat ; (CCSP) : clé de contrôle de la clé publique partagée par les dispositifs récepteurs utilisée pour chiffrer les informations à 30 destination des dispositifs récepteurs ; (EVENT) : zone chiffrée avec une des clés publiques partagées par les dispositifs récepteurs contenant la liste des évènements déclencheurs dudit contrat, par exemple une date d'échéance, une identité digitale, un autre contrat intelligent ou tout type 35 d'évènement extérieur au dispositif ; - (D) : date de génération dudit contrat ; - (CONTCTRA) : les conditions du contrat stockées sous forme d'algorithme ou de texte ainsi que la clé de contrôle de la clé 3049101 -7 d'unicité associée aux dispositifs récepteurs (la clé d'unicité associée aux dispositifs récepteurs étant générée à partir de la clé d'unicité d'un utilisateur combinée à la première clé partagée des dispositifs récepteurs) et d'éventuels contrats de délégations, cette 5 zone pouvant être : - publique dans le cas par exemple d'un appel d'offres ouvert à tous ; ou - chiffré : dans le cas de clauses confidentielles où les conditions sont alors chiffrées avec une nouvelle clé générée 10 aléatoirement. - (CHIFDISPR) : zone chiffrée avec une des clés publiques partagées des dispositifs récepteurs contenant : - ladite clé privée générée aléatoirement pour chiffrer les clauses du contrat ; 15 - la clé publique associée à la clé privée dudit contrat ; - la clé publique de la clé d'unicité associée aux dispositifs récepteurs de l'émetteur dudit contrat ; - (CHIFCCTRA) : zones chiffrées avec les clés publiques des cocontractants dudit contrat contenant : 20 la clé privée dudit contrat pour les cocontractants habilités à proposer une mise à jour du contrat (il est à noter qu'une clause spécifique peut demander par exemple une signature particulière pour valider cette nouvelle version de contrat sur la chaîne de contrat relative audit contrat) ; 25 - ladite clé privée générée aléatoirement pour chiffrer les clauses du contrat ; - et toute autre information à destination des cocontractants ; - (SIG) : zone contenant la signature du message avec la clé relative à la clé de contrôle (CTRA) et la signature du message avec la clé 30 d'unicité de l'émetteur du message ; - Un deuxième message transmis par le dispositif émetteur (2) contenant : - (INFOC2) contenant : - une zone chiffrée à destination des dispositifs récepteurs contenant la clé publique de la clé d'unicité associée à la 35 première clé partagée des dispositifs récepteurs de l'utilisateur du dispositif émetteur (2) ainsi que d'éventuelles informations relatives audit contrat ; 3049101 - 8 - - une zone chiffrée à destination des cocontractants contenant la clé de contrôle de la clé d'unicité associée aux dispositifs récepteurs de l'utilisateur du dispositif émetteur (2) ainsi que d'éventuelles informations relatives au contrat ; 5 - (SIGC2) : zone contenant la signature du message avec la clé relative à la clé de contrôle (CTRA) prouvant ainsi que le cocontractant a accès aux données émises par l'émetteur du premier message et la signature du message avec la clé d'unicité de l'émetteur du deuxième message. 10 - un premier dispositif récepteur (3) vérifie la conformité de la demande et du respect des conditions associées audit contrat ainsi qu'aux identités digitales des cocontractants et ajoute un message de validation seulement si toutes les conditions sont respectées. - un deuxième dispositif récepteur (4) vérifie la conformité de la demande 15 et du respect des conditions associées audit contrat ainsi qu'aux identités digitales des cocontractants et ajoute un second message de validation seulement si toutes les conditions sont respectées et que les vérifications sont concordantes avec le premier dispositif récepteur (3). 20 La figure 1 peut décrire par exemple une souscription de contrat d'assurance d'un agriculteur souhaitant assurer sa récolte contre la sècheresse. Dans ce cas de figure, les partis sont identifiés, le montant, le délai d'échéance et les conditions météorologiques sont des éléments factuels et prouvables. Le contrat lie donc deux individus en tant qu'individus ou 25 délégués d'une entreprise sur le paiement d'un montant défini si les conditions sont réunies. Un abonnement est considéré d'une part comme un contrat sur la délivrance d'un service et d'autre part comme un ensemble de 30 reconnaissances de dettes avec des échéances différentes. La souscription d'un prêt tout comme pour un abonnement est considérée d'une part comme un contrat sur la délivrance d'une somme d'argent et d'autre part comme un ensemble de reconnaissances de dettes 35 avec des échéances différentes. Le procédé d'appel d'offres, quant à lui, est consultable par tout ou partie des utilisateurs et des dispositifs récepteurs du système. Les 3049101 -9 personnes ou dispositifs à même d'y répondre pourront alors négocier les termes du contrat par une contre proposition validée ou non par le demandeur. Les systèmes de financements participatifs, - plus généralement 5 désigné par le terme anglo-saxon de « Crowdfunding » sont intégrés dans le dispositif à travers des messages associés à un ou plusieurs contrats (ledit contrat étant apte à recevoir des échanges de valeurs). Ces financements pourront ainsi être tracés, non répudiables et correspondre aux différents cas de figure qui existent aujourd'hui pour ces financements (Dons, en échange de 10 récompense, sous forme de prêt où sous forme d'investissement en capital). Les "achats typés" tout comme les reconnaissances de dettes sont des besoins réels et n'ont à l'heure actuelle ni de solutions rentables (coût de gestion des bons d'achat) ni de solution universelle (chaque enseigne dispose 15 de son propre bon d'achat). Également, les "achats typés" sont une réelle préoccupation dans les transferts d'argent vers les pays en voie de développement, où l'émetteur souhaite être certain que l'argent envoyé servira bien à un achat spécifique (médicaments ou nourriture, etc.). 20 Le dispositif permettant de lier une somme d'argent avec un contrat, le procédé permet ainsi de gérer de façon automatique ces cas d'usage. La « réputation » d'un marchand peut par exemple servir de référence en condition de ces achats. 25 Les échanges non financiers représentent une part importante des échanges, qui aujourd'hui n'ont pas de solution simple et universelle. La solution proposée dans le cadre de cette invention s'appuie d'une part sur des contrats de gré à gré qui n'auront une valeur que pour les deux personnes relatives à cet échange. Mais ils auront également la particularité d'être 30 mutables à la condition où le destinataire accepte cette mutabilité. - A a rendu un service à B « d'une valeur de 1 » pour avoir tondu sa pelouse. - C est déjà redevable à A de la même valeur. - B au moment de prêter la perceuse à C acquitte sa dette envers A. 35 Les contrats intelligents tels que décrits dans cette invention pourront s'appuyer sur la capacité d'un dispositif émetteur à certifier un individu comme unique à travers une clé d'unicité. Cette première 3049101 - 10 - caractéristique permettra ainsi à toute personne, qu'elle ait été certifiée ou non par un État, d'être reconnue comme un individu unique et permettre par exemple de ne voter qu'une seule fois sur un vote mondial ou d'être identifié de façon unique à travers les contrats souscrits. Comme l'ensemble des 5 procédés de cette invention, il suffit de « prouver » par un mécanisme cryptographique la détention de cette clé d'unicité pour être identifié de façon univoque. Ladite clé d'unicité peut être utilisée dans le cas par exemple d'un 10 vote électronique mondial où la première preuve nécessaire : celle de l'unicité d'un votant s'appuie sur la capacité d'un dispositif émetteur à la certifier. Le vote électronique est un réel enjeu pour les démocraties. Ce procédé permet aux citoyens d'un pays donné après une nécessaire phase d'habilitation de pouvoir voter en assurant à un État que chaque personne a bien été habilitée 15 et n'a voté qu'une seule fois, que le décompte des votes totaux et par sousdivision (communes...) pourra être vérifié de façon publique, que le système permet la délégation d'habilitation correspondant à l'existant et qu'en cas de fraude liée par exemple à une délégation d'habilitation, tous les votes des personnes associées pourront être invalidés. 20 D'autre part, chaque votant doit avoir la certitude que son vote ne puisse pas être dévoilé ou corrélé, il doit pouvoir également vérifier que son vote a bien été pris en compte et qu'il n'a pas été modifié. Le procédé de vote électronique se base d'une part sur la clé 25 d'unicité associée à un pays (calculée en fonction de la clé d'unicité propre à un individu et de la clé publique dudit pays), sur la clé d'unicité dudit individu associée à une commune, sur une clé générée aléatoirement par un dispositif émetteur et d'autre part sur un mécanisme de clés partagées entre les dispositifs récepteurs, le procédé de vote comporte les étapes suivantes : 30 - Le votant par l'intermédiaire d'un dispositif émetteur transmettra un premier message contenant : - La clé de contrôle relative au contrat de vote électronique ; - La clé publique et la signature relative à une clé d'unicité associée audit État chiffrée avec la dernière clé publique dudit État ; 35 - La clé publique et la signature relative à une clé d'unicité associée à ladite commune chiffrée avec la dernière clé publique de ladite commune ; 3049101 - Une clé de contrôle « votant » relative à une clé générée aléatoirement par le dispositif émetteur chiffrée avec la dernière clé publique partagée par les dispositifs récepteurs. - La commune par l'intermédiaire d'un dispositif émetteur et seulement si 5 l'identité du votant est validée transmettra un premier message de validation, contenant : Une clé de contrôle du contenu du premier message validé, la date de validation, la dernière clé publique relative à ladite identité digitale commune ainsi qu'une signature de l'ensemble du 10 message de validation. - L'État par l'intermédiaire d'un dispositif émetteur et seulement si l'identité du votant est validée transmettra un deuxième message de validation, contenant : - Une clé de contrôle du contenu du premier message validé, la 15 date de validation, la dernière clé publique relative à ladite identité digitale État ainsi qu'une signature de l'ensemble du message de validation. - Au moins un dispositif récepteur (3) et seulement si l'ensemble des signatures sont valides transmettra un troisième message de validation 20 contenant : - Une clé de contrôle du contenu du premier message transmis, du premier et du deuxième message de validation, la date de validation, la dernière clé publique relative audit dispositif récepteur ainsi qu'une signature de l'ensemble du message de 25 validation. Suite à ces étapes, le votant est alors en mesure de voter de façon anonyme, tous les éléments de corrélations ayant été supprimés, il lui suffit alors de transmettre un deuxième message en utilisant la clé de contrôle du 30 contrat de vote ainsi que la clé de contrôle « votant » dans lequel il indique le vote de son choix, le vote peut être pris en compte après qu'au moins un dispositif récepteur ait validé le vote. Procédé de gestion des habilitations et des révocations (pour 35 structures de type hiérarchique comme un État, une entreprise, une association) ou les structures de type démocratique (chaque membre ayant le même pouvoir) les délégations sont stockées sous forme de contrats et 3049101 -12- intègrent donc la clé d'unicité de l'individu associée à la première clé partagée des dispositifs récepteurs, le contrat permet d'une part de donner un cadre « conditionnel » à cette délégation (délais, périmètre d'application...), mais aussi technique en y incorporant une ou plusieurs clés privées permettant de mettre 5 à jour d'autres messages sans pour autant substituer l'individu lui-même en signant personnellement un message. Chaque délégation indique l'arbre de délégation dont elle est issue afin d'invalider une branche complète par exemple après la constatation d'une fraude. Le respect des règles est assuré par les dispositifs récepteurs qui pour chaque transaction faisant intervenir 10 cette délégation auront à parcourir l'arbre de délégation et à exécuter les conditions du contrat sous peine d'être banni de la liste des dispositifs récepteurs habilités. Les conditions de révocation seront soit automatiques (expiration de la période de délégation) ou manuelles, dans le cadre des révocations manuelles seuls les individus autorisés en auront le droit. 15 La notion d'exécution obligatoire est fondamentale dans un système qui permet « la reconnaissance de dettes » ou l'exécution de contrat. Les dispositifs récepteurs auront en charge de vérifier tous les contrats associés à une identité digitale avant de l'exécuter, les dispositifs 20 récepteurs pourront alors interdire ou autoriser une opération en fonction d'autres contrats. L'innovation apportée dans le procédé de livraison est la nonrépudiabilité de l'authentification d'un individu, son identifiant unique et le 25 chainage entre les transactions financières et les contrats « intelligents » ainsi la gestion d'une livraison d'un colis est gérée à travers un contrat. L'objectif, bien que d'apparence superflue dans les pays développés, la livraison des marchandises est un réel frein au développement et au commerce dans les pays en voie de développement. L'objectif est donc de responsabiliser 30 l'ensemble des maillons de la chaîne. Ces contrats pourront donc être exécutés par un prestataire reconnu comme "La Poste", mais aussi, et à l'extrême par un particulier à partir du moment ou celui-ci dispose d'une « identité unique » et qu'il a reçu l'accord explicite du demandeur, le demandeur pourra consulter le taux de succès des livraisons ainsi que la réputation de ce 35 dernier. Le procédé répond également à un autre besoin très partiellement couvert actuellement qui est la livraison d'argent liquide, problématique dans 3049101 - 13 - les endroits ne disposant pas de distributeurs automatiques de billets. Ainsi après diffusion d'un appel d'offre sous forme de contrat, plusieurs prestataires pourront proposer ce service contre rémunération. Comme dans tout contrat si le destinataire s'est vu impliqué dans plusieurs contrats problématiques les 5 prestataires l'écarteraient rapidement de la liste des clients. Le procédé répond également à un autre besoin qui est de pouvoir relier les mécanismes humains à des mécanismes informatiques et cryptographiques à travers des chaînes de messages relatives à des contrats 10 intelligents. Par exemple, le procédé permet de relier des mécanismes institutionnels de tiers de confiance existant pour un État, une organisation, une entreprise au mécanisme des chaînes de messages. Ce procédé permet ainsi, et par exemple, de gérer les conditions d'un contrat d'un testament appliqué par une identité digitale habilitée par la chaîne de contrats de l'ordre 15 des notaires lui-même habilité par la chaîne des contrats d'un État. Ledit mécanisme permet ainsi de débloquer un contrat de « testaments » par l'intermédiaire d'un tiers de confiance réel. Le procédé est caractérisé, en outre, en ce qu'il permet de stocker, 20 contrôler en permanence la confidentialité et la disponibilité de données spécifiques, par exemple les données de santé d'un individu à travers une chaîne de messages de type contrats. Ce type de contrat spécifique permet de distinguer les données d'un praticien comme les ordonnances médicales ou un compte rendu de visite permettant de suivre la santé d'un patient et des 25 données appartenant aux patients et qu'il souhaite mettre à disposition du praticien pour une durée déterminée. Le praticien peut demander l'accès pour un autre praticien au patient et le patient pourra demander la suppression complète des desdites données. Ledit procédé permet ainsi de gérer les divulgations et les accès aux données par des contrats. Par exemple dans le 30 cas d'un patient et d'un praticien et afin de garantir un maximum de contrôle sur ses données, le patient co-valide avec le praticien le contenu du fichier, le patient aura par la suite la possibilité de rendre strictement confidentielles ces données (le patient est le seul à même de déchiffrer ces données) ou de les partager avec le praticien. Le praticien de son côté aura la possibilité d'y 35 intégrer quelques notes qui lui permettront de garder un historique des consultations. REVENDICATIONS1) Procédé mis en oeuvre dans un réseau décentralisé comportant au moins un dispositif émetteur et au moins un dispositif récepteur adapté 5 pour exécuter au moins un contrat intelligent par l'intermédiaire d'au moins une identité digitale. 2) Procédé comportant au moins un dispositif récepteur adapté en outre pour conditionner l'exécution d'au moins un contrat intelligent par l'intermédiaire d'au moins un autre contrat intelligent. 10 3) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre pour conditionner la validation d'au moins un message à l'exécution d'au moins une condition d'au moins un contrat intelligent. 4) Procédé selon l'une quelconque des revendications 15 précédentes, comportant au moins un dispositif récepteur adapté en outre pour ne pas valider au moins un message tant qu'au moins une condition d'au moins un contrat intelligent n'est pas exécuté. 5) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre 20 pour conditionner la souscription et l'exécution d'au moins un contrat intelligent par l'intermédiaire d'au moins une signature cryptographique. 6) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre pour réaliser au moins un transfert de valeurs relatif à au moins un contrat 25 intelligent. 7) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre pour conditionner l'exécution d'au moins un contrat intelligent à au moins un élément extérieur audit au moins un dispositif récepteur. 30 8) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre pour conditionner et associer l'exécution d'au moins un contrat intelligent à au moins élément périodique. 9) Procédé selon l'une quelconque des revendications 35 précédentes, comportant au moins un dispositif récepteur adapté en outre à gérer au moins un financement participatif par l'intermédiaire d'au moins un contrat intelligent et au moins une identité digitale. 3049101 -4 10) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre à gérer au moins un prêt de valeurs par l'intermédiaire d'au moins un contrat intelligent et au moins une identité digitale. 11) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre à gérer au moins un vote électronique par l'intermédiaire d'au moins un contrat intelligent et au moins une identité digitale. 12) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre à gérer les accès aux données santé par l'intermédiaire d'au moins un contrat intelligent et au moins une identité digitale. 13) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre à 15 gérer les achats typés par l'intermédiaire d'au moins un contrat intelligent. 14) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre à gérer au moins un échange non financier par l'intermédiaire d'au moins un contrat intelligent et au moins une identité digitale. 20 15) Procédé selon l'une quelconque des revendications précédentes, comportant au moins un dispositif récepteur adapté en outre à ajouter des éléments de certification et des éléments de réputation relatifs à au moins un contrat intelligent et au moins une identité digitale.