Brevet FR3148658A1 — publié le 20241115

La présente invention concerne un procédé de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier à un deuxième portefeuille électronique, caractérisé en ce qu’il comprend la mise en œuvre d’étapes de : Etablissement d’un canal de communication ad-hoc entre des premier et deuxième terminaux (2a, 2b) implémentant les portefeuilles électroniques, chacun associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration n’est pas dépassée, exécution de ladite transaction par les terminaux (2a, 2b) via ledit canal de communication ad-hoc, et mise à jour desdits portefeuilles électroniques, et des journaux de transaction associés ; Lors d’une connexion du premier et/ou du deuxième terminal (2a, 2b) à une passerelle (1) via un réseau étendu (10) Transfert dudit journal de transactions ; Mise en œuvre d’au moins une vérification de la cohérence dudit journal de transaction par la passerelle (1) ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone; [Fig. 1] Procédé de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique. DOMAINE TECHNIQUE GÉNÉRAL La présente invention se rapporte au domaine du paiement électronique. Plus précisément, elle concerne un procédé de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique. ETAT DE L’ART On appelle « Central Bank Digital Currency », CBDC (en français « Monnaie numérique de banque centrale », MNBC), la forme numérique de l’argent fiduciaire (qu’on appelle les « espèces »), c’est-à-dire une monnaie électronique provenant d'une banque centrale. Une unité de monnaie numérique a la même valeur qu’une unité de monnaie « papier » traditionnelle, puisqu’elle a été émise par une banque centrale, et peut être utilisée n’importe où, tant que le point de vente où l'on veut payer propose cette option. Les principaux avantages d'une CBDC sont qu'elle permet de payer de manière sécurisée et instantanée, sans risque de se faire voler. Ce type de monnaie numérique est par exemple déjà déployé en Chine depuis avril 2021 à titre d’expérimentation, en tant que yuan numérique (e-CNY). Pour utiliser une CBDC, chaque utilisateur peut installer un portefeuille électronique (« wallet ») sur un terminal personnel tel qu’un smartphone, le créditer par exemple depuis son compte bancaire (ce qui est l’équivalent d’un retrait d’argent), et une interaction entre deux terminaux (par exemple via une communication sans fil de proximité) permet un transfert d’unités de monnaie numérique, au même titre qu’un billet passerait d’une main à une autre. La difficulté est d’empêcher la duplication frauduleuse de monnaie électronique, via ce que l’on appelle le « double spending », c’est-à-dire le transfert des mêmes unités de monnaie électronique dans deux transactions. Egalement, il faut éviter le « double credit », qui pourrait avoir lieu en cas de rejeu d’une transaction indiquée comme échouée. A ce titre, les CBDC utilisent généralement un registre (« ledger ») en particulier distribué (en général de type chaîne de blocs), à l’instar de ce qui se fait par exemple pour les cryptomonnaies. La mise en œuvre d’un algorithme de consensus permet de garantir le contenu correct des données et d’assurer efficacement l’absence de fraude. Cependant, cela implique une connexion permanente des terminaux des utilisateurs au réseau internet. Cependant, pour que la monnaie numérique soit réellement équivalente à la monnaie fiduciaire, il doit être possible de la transférer de la monnaie en toutes circonstances sans la nécessité d’une connexion réseau et de manière totalement anonyme. L’invention vient améliorer la situation. PRÉSENTATION DE L’INVENTION La présente invention se rapporte donc selon un premier aspect à un procédé de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique, caractérisé en ce qu’il comprend la mise en œuvre d’étapes de : Etablissement d’un canal de communication ad-hoc entre un premier terminal implémentant le premier portefeuille électronique et un deuxième terminal implémentant le deuxième portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécution de ladite transaction par les premier et deuxième terminaux via ledit canal de communication ad-hoc, et mise à jour desdits premier et deuxième portefeuilles électroniques, et des journaux de transaction associés ; Lors d’une connexion du premier terminal et/ou du deuxième terminal à une passerelle via un réseau étendu Transfert dudit journal de transactions associé au portefeuille électronique implémenté par le(s)dit(s) premier terminal et/ou deuxième terminal connecté(s) ; Mise en œuvre d’au moins une vérification de la cohérence dudit journal de transaction par la passerelle ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Selon des caractéristiques avantageuses et non limitatives : L’étape (b) n’implique aucune connexion à ladite passerelle, et en particulier aucune connexion au réseau. ledit canal de communication ad-hoc entre le premier terminal et le deuxième terminal est un canal de communication sans-fil de courte portée, en particulier NFC, ou un canal de communication optique. Le procédé comprend une étape (a0), mise en œuvre par le premier terminal et/ou deuxième terminal lors d’une connexion à la passerelle via ledit réseau étendu, de création sécurisée du premier et/ou du deuxième portefeuille électronique. L’étape (a0) est répétée à chaque mise en œuvre de l’étape (c), de sorte à renouveler le(s)dit(s) premier et/ou deuxième portefeuille électronique. L’étape (a0) comprend la définition d’une nouvelle date d’expiration dudit premier et/ou deuxième portefeuille électronique. Chacun du premier et du deuxième portefeuille électronique est en outre associé à au moins une limite d’utilisation, l’étape (b) n’étant en outre mise en œuvre que lesdites limites d’utilisation de chacun du premier et du deuxième portefeuille électronique ne sont pas dépassées, l’étape (a0) comprenant la réinitialisation desdites limites. Chacun du premier et du deuxième portefeuille électronique est en outre associé à un identifiant unique de portefeuille électronique, l’étape (b) comprenant, pour chacun du premier et du deuxième portefeuille électronique, la construction d’un triplet (identifiant unique du portefeuille électronique / date d’expiration / identifiant local de transaction) identifiant de manière unique ladite transaction. Chacun du premier et du deuxième portefeuille électronique est en outre associé à une paire d’une clé privée et d’une clé publique, l’étape (a0) comprenant la génération d’une nouvelle paire de clés, la construction dudit identifiant unique de portefeuille électronique à partir de la clé publique, et l’obtention de versions signées par la passerelle de ladite clé publique et de la date d’expiration. L’étape (b) comprend en outre, pour au moins le premier portefeuille électronique, la signature avec la clé privée dudit premier portefeuille électronique, du triplet identifiant de manière unique ladite transaction, d’un montant de monnaie électronique transféré lors de la transaction, et d’un horodatage de la transaction. Chaque terminal comprend un élément de sécurité, ladite transaction étant exécutée à l’étape (b) dans lesdits éléments de sécurité. L’étape (c) est mise en œuvre pour chacun du premier terminal et du deuxième terminal, la sous-étape b. comprenant la vérification qu’on retrouve la même transaction du point de vue du premier terminal et du deuxième terminal décrite dans les journaux des premier et deuxième portefeuilles électroniques. L’étape b. comprend la sélection d’un niveau de vérification de la cohérence dudit journal de transaction parmi plusieurs niveaux possibles, et la mise en œuvre dudit niveau de vérification sélectionné, dont un niveau de vérification de traçabilité de la monnaie électronique transférée, dans lequel chaque unité de la monnaie électronique présente une identifiant unique et la passerelle vérifie en outre qu’un même fragment d’une unité de la monnaie électronique n’est présent à un instant donné que dans un seul portefeuille électronique. Selon un deuxième aspect, l’invention concerne un premier terminal implémentant un premier portefeuille électronique, caractérisé en ce qu’il est configuré pour : Etablir un canal de communication ad-hoc avec un deuxième terminal implémentant un deuxième portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécuter via ledit canal de communication ad-hoc une transaction relative au transfert de monnaie numérique du premier portefeuille électronique au deuxième portefeuille électronique, et mettre à jour ledit premier portefeuille électronique et le journal de transaction associé ; Lors d’une connexion du premier terminal à une passerelle via un réseau étendu Transférer ledit journal de transactions associé au premier portefeuille électronique ; Mettre en œuvre au moins une vérification de la cohérence dudit journal de transaction par la passerelle ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Selon un troisième aspect, l’invention concerne un deuxième terminal implémentant un deuxième portefeuille électronique, caractérisé en ce qu’il est configuré pour : Etablir un canal de communication ad-hoc avec un premier terminal implémentant un premier portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécuter via ledit canal de communication ad-hoc une transaction relative au transfert de monnaie numérique du premier portefeuille électronique au deuxième portefeuille électronique, et mettre à jour ledit deuxième portefeuille électronique et le journal de transaction associé ; Lors d’une connexion du deuxième terminal à une passerelle via un réseau étendu Transférer ledit journal de transactions associé au deuxième portefeuille électronique ; Mettre en œuvre au moins une vérification de la cohérence dudit journal de transaction par la passerelle ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Selon un quatrième et un cinquième aspect, l’invention concerne un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon le premier aspect de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique ; et un moyen de stockage lisible par un équipement informatique sur lequel est enregistré un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon le premier aspect de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique PRÉSENTATION DES FIGURES D’autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description qui va suivre d’un mode de réalisation préférentiel. Cette description sera donnée en référence aux dessins annexés dans lesquels : la est un schéma d’un système pour la mise en œuvre du procédé selon l’invention ; la est un logigramme illustrant les étapes d’un mode de réalisation du procédé selon l’invention. DESCRIPTION DÉTAILLÉE Architecture En référence à la , la présente invention concerne un procédé de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique, le cas échéant sans connectivité, et permettant de réutiliser immédiatement cette monnaie numérique pour un nouveau transfert vers un éventuel troisième portefeuille électronique. Le premier portefeuille électronique est implémenté par un premier terminal 2a et le deuxième portefeuille électronique est implémenté par un deuxième terminal 2b. Le premier et/ou le deuxième portefeuille électronique est typiquement celui d’un individu, et le premier/deuxième terminal 2a, 2b est alors typiquement son terminal personnel, tel qu’un smartphone. Alternativement, ce peut être le portefeuille électronique d’une entité, par exemple un commerce, et alors le terminal est typiquement un équipement fixe tel qu’une caisse enregistreuse. Par portefeuille électronique, ou « wallet », on entend une application adaptée pour stocker une quantité de monnaie électronique (CBDC), et mettre en œuvre des transactions, qui sont en pratique de trois types : Le crédit, c’est-à-dire le chargement du wallet avec de la monnaie électronique depuis un compte bancaire (équivalent à un retrait au distributeur) ; Le débit, c’est-à-dire la sortie de monnaie électronique vers un compte bancaire (équivalent à un dépôt d’espèces à la banque) ; Le transfert d’un wallet à un autre (équivalent à un échange de monnaie classique). Les deux premiers ne posent pas de difficulté car ils ne peuvent être mis en œuvre que sur des bornes dédiées ou en ligne, et donc impliquent nécessairement une connexion à internet. En revanche, le transfert, qui est la transaction qui nous intéresse, doit pouvoir être fait n’importe où, et le présent procédé va permettre une transaction de gré à gré totalement « offline », en français « hors ligne », c’est-à-dire sans connexion réseau. Chaque terminal 2a, 2b comprend des moyens de traitement de données 21a, 21b (un processeur), et un élément de sécurité 20a, 20b (Secure Element, SE), c’est-à-dire un microprocesseur dédié fermé de type enclave (qui peut le cas échéant faire partie des moyens de traitement de données 11). Comme l’on verra Le terminal 2a, 2b est typiquement un terminal mobile tel qu’un smartphone, une tablette tactile, mais également un TPE, ou tout périphérique. Chaque terminal 2a, 2b est connectable à un réseau étendu 10 tel que internet, et via celui-ci à une passerelle 1 d’un système de gestion de la monnaie électronique, en particulier un réseau décentralisé pour le stockage distribué d’une base de données de type blockchain, mais ce peut être alternativement un réseau de serveurs classiques. Cet aspect est connu de l’homme du métier et ne sera pas décrit plus en détails. On comprend dans tous les cas que la passerelle 1 est un équipement de confiance, sous le contrôle d’une autorité telle que la banque centrale Par « connectable » on entend que chaque terminal 2a, 2b peut se connecter au réseau 10, mais ne lui est pas forcément connecté lors de la mise en œuvre de la transaction, de sorte à permettre le fonctionnement « hors ligne ». Enrôlement De manière connue, le premier et le deuxième portefeuille électronique disposent typiquement d’une date expiration et d’une paire de clés (clé publique/clé privée) pour la mise en œuvre des transactions, et chacun est un applet signé par un entité d’autorité (en particulier la passerelle 1) exécuté de manière sécurisé dans l’élément de sécurité 20a, 20b. Préférentiellement au moins la clé privée est stockée par l’élément de sécurité 20a, 20b. A ce titre, comme représenté par la , le procédé commence avantageusement par une étape (a0) d’enrôlement, c’est-à-dire de création sécurisée du premier et/ou du deuxième portefeuille électronique, respectivement le premier/deuxième terminal 2a, 2b, qui implique une connexion à la passerelle 1 et donc au réseau 20. Comme l’on va voir chaque portefeuille électronique est associé à une date d’expiration (au-delà de laquelle il n’est plus possible de mettre en œuvre de transaction sur le portefeuille), de sorte qu’on distingue le tout premier enrôlement, des enrôlements suivants qui sont en pratique des renouvellements qui doivent être régulièrement répétés. Chaque occurrence de l’étape (a0) définit une « session hors ligne » de wallet à renouveler avant l’expiration. De manière préférée l’étape (a0) contient les sous-étapes suivantes : Si besoin, installation de l’applet signé sur le premier/deuxième terminal 2a, 2b ; Génération (en particulier par l’élément de sécurité 20a, 20b) d’une (nouvelle) paire de clés, et obtention d’un identifiant unique de portefeuille électronique à partir de la clé publique de ladite paire (typiquement par hachage) ; Enregistrement du portefeuille électronique auprès de la passerelle 1 (après authentification), qui va : Définir une (nouvelle) date d’expiration du portefeuille électronique ; Signer la clé publique du portefeuille électronique et ladite date d’expiration avec une clé privée de la passerelle 1 (qui est en pratique une clé de l’autorité sous le contrôle de laquelle la passerelle 1 est) ; Dans le cas d’un renouvellement, on a également une réinitialisation d’éventuels limites d’utilisation du portefeuille électronique (parmi limite de nombre de transactions, limite de solde, limite de montant de transaction unique, limite de montant de transaction cumulé, etc.). En outre, la monnaie électronique est naturellement conservée. L’étape (a0) peut en outre comprendre l’obtention par le terminal 2a, 2b d’une d’horodatage « de référence », c’est-à-dire un horodatage attesté par une autorité (typiquement la passerelle), permettant de limiter les possibilités de truquer un horodatage ultérieur. Comme l’on verra plus loin, un nouvel enrôlement (a0) est préférentiellement mis en œuvre à chaque resynchronisation faisant suite à une ou plusieurs transactions hors ligne. On comprend que de manière préférée, en l’absence de transactions, le wallet n’attend pas d’atteindre la date d’expiration avant de relancer un enrôlement (a0), et que par exemple l’étape (a0) est mise en œuvre automatiquement dès que possible (à la première connexion à la passerelle 1) dans un intervalle de temps donné avant la date d’expiration. Par exemple, si on prévoit des portefeuilles expirant au bout d’une semaine, on peut prévoir que les terminaux 2a, 2b cherchent à le renouveler deux jours avant son expiration. Procédé Le présent procédé résout très astucieusement les problèmes de l’art antérieur en combinant trois mécanismes : Un système de transaction entièrement hors ligne ; Un mécanisme de vérification de transaction asynchrone ; et Les portefeuilles à date d’expiration. En effet, plutôt que de tenter en vain de sécuriser les transactions, ce qui n’est possible qu’en cas de fonction en ligne permanent, le procédé laisse les transactions avoir lieu entièrement hors ligne, et les contrôle en décalé à la resynchronisation grâce à plusieurs niveaux de vérification que l’on détaillera plus loin. Cela ne pose aucun problème grâce à la date d’expiration : dans un hypothétique cas où un utilisateur frauduleux empêcherait la resynchronisation par exemple en mettant son terminal en mode avion, il atteindrait la date d’expiration et son portefeuille deviendrait bloqué. En résumé, de manière paradoxale le présent procédé tolère un certain risque de fraude lié à la possibilité de transaction purement hors ligne, en utilisant le nécessaire renouvellement du portefeuille comme un mécanisme de contrôle a posteriori impossible à contourner. Le procédé commence par une étape (a) d’établissement d’un canal de communication ad-hoc entre le premier terminal 2a implémentant le premier portefeuille électronique et un deuxième terminal 2b implémentant le deuxième portefeuille électronique. Par canal de communication ad hoc, on entend une liaison directe entre les deux terminaux 2a, 2b, sans intermédiaire, en particulier pas via le réseau 10, de sorte à donner la capacité de mise en œuvre « hors ligne » des transactions. L’étape (a) est ainsi une étape d’appariement des terminaux 2a, 2b, volontairement réalisée par leurs utilisateurs en vue de permettre le transfert de monnaie électronique. On parle également de connexion p2p (peer-to-peer). Il s’agit avantageusement d’un canal de communication sans-fil de courte portée, par exemple en NFC en mettant les deux terminaux 2a, 2b en vis-à-vis, mais également en Bluetooth ou Wi-Fi Direct, ou encore un canal de communication optique par exemple en flashant avec le deuxième terminal 2b un QR code affiché par le premier terminal 2a. Ensuite, dans une étape (b), ladite transaction est exécutée par les premier et deuxième terminaux 2a, 2b, en particulier dans lesdits éléments sécurisés 20a, 20b, via ledit canal de communication ad-hoc. L’étape (b) comprend la mise à jour desdits premier et deuxième portefeuilles électroniques en conséquence. En l’espèce, si la transaction est le transfert de X unités de monnaies électronique, le 1 er portefeuille voit son solde varier de –X et le 2 e portefeuille voit son solde varier de +X. Il est important de comprendre que l’étape (b) peut être mise en œuvre « hors ligne », et n’implique par conséquent aucune communication avec ladite passerelle 1, et en particulier aucune connexion au réseau 10. Les terminaux 2a, 2b peuvent même être mis en « mode avion ». Bien entendu l’un et/ou l’autre des terminaux 2a, 2b peut alternativement être connecté au réseau 10 (et ce sera en pratique la majorité des cas), mais cette connexion n’est pas utilisée, et en tout état de cause la transaction n’est pas accomplie différemment. La transaction peut être exécutée de toute manière connue de l’homme du métier, mais de manière préférée, elle implique un certain nombre de mécanismes de sécurité qui, s’ils ne remplaceront jamais la sécurité permise par un fonctionnement en ligne, permettent de bloquer l’essentiel des tentatives de fraudes. En particulier, l’étape (b) comprend avantageusement tout ou parties des sous-étapes suivantes : Authentification du premier utilisateur sur le premier terminal 2a (preuve de consentement) ; Authentification mutuelle des portefeuilles électroniques (grâce à l’identifiant signé) Vérification de la cohérence des dates de transactions entre les terminaux 2a, 2b (pour éviter qu’un utilisateur ait altéré l’heure de son terminal pour contourner une expiration) et vérification que la date d’expiration d’aucun des portefeuilles n’est dépassée. Génération d’un identifiant de transaction, et construction d'une transaction avec, pour au moins le premier portefeuille électronique (et avantageusement chacun du premier et du deuxième portefeuille), un triplet (identifiant unique de portefeuille électronique / date d’expiration / identifiant local de transaction). A noter que ledit identifiant local de transaction est pour un portefeuille donné dans la mesure où n’est pas possible de générer directement un identifiant unique de transaction du fait du caractère potentiellement en ligne de la transaction. Il est typiquement incrémenté à chaque nouvelle transaction impliquant le portefeuille. En revanche, le triplet (identifiant unique de portefeuille électronique / date d’expiration / identifiant de transaction) est nécessairement unique ; Signature dudit triplet, du montant et d’un horodatage avec la clé secrète du portefeuille (ainsi que d’une éventuelle liste d’unités ou fragments d’unités de monnaie électronique impliqués dans ladite transaction, voir plus loin) ; Mise à jour d’un journal de transactions. On note qu’aucune donnée personnelle n’y est avantageusement renseignée pour garantir la vie privée des utilisateurs : tous les identifiants sont pseudo anonymisées. Le triplet unique signé permet une transaction rejouable autant que nécessaire afin de palier au problème de communication éventuel entre les terminaux 2a, 2b tout en assurant que la monnaie électronique soit transférée au final une et une seule fois. Et il reste tout à fait possible de mettre en œuvre plusieurs transactions similaires (mêmes portefeuilles et même montant) puisqu’on aura par contre des triplets différents. Ensuite, le procédé comprend comme expliqué une étape (b) de resynchronisation. Si les terminaux 2a, 2b étaient connectés en ligne, elle a lieu simultanément, sinon elle a lieu à la prochaine connexion du premier terminal 2a et/ou du deuxième terminal 2b à une passerelle 1 via le réseau étendu 10 On note qu’on peut avoir (avant l’étape (c)) plusieurs occurrences des étapes (a) et (b), c’est-à-dire plusieurs transaction hors ligne successives, et notamment des transactions impliquant les mêmes unités de monnaie virtuelles, qui sont donc retransférées, la resynchronisation concernera en effet toutes les transactions dans l’intervalle de temps. L’étape (c) comprend ainsi les sous-étapes suivantes : Transfert du journal de transactions du premier terminal 2a et/ou du deuxième terminal 2b, en pratique chacun dès qu’il est connecté à la passerelle ; Mise en œuvre d’au moins une vérification de la cohérence de chaque journal de transaction par la passerelle 1 ; Si au moins une incohérence est détectée, mise à jour desdits premier et deuxième portefeuilles électroniques en conséquence. Vérifications Par vérification de la cohérence du journal de transaction, on entend croisement avec toutes les informations dont dispose la passerelle 1, ce qui permet la détection d’anomalies soit dans le journal en lui-même, soit de contradictions avec un autre journal, et en particulier entre le journal du premier portefeuille et le journal du second portefeuille, qu’on appellera « incohérences » dans tous les cas. De manière générale, la passerelle 1 va vérifier au moins dans les journaux : qu’on retrouve la même transaction (celle qu’on vient d’exécuter) du point de vue du premier terminal 2a et du deuxième terminal 2b avec les mêmes montants et même horodatage, i.e. la cohérence des identifiants de transaction et des informations associées ; le cas échéant que l’horodatage du journal est cohérent avec l’horodatage de référence, pour éviter par exemple que l’utilisateur ait pu truquer l’horloge de son terminal 2a, 2b de sorte à mettre en œuvre une transaction alors que la date d’expiration était dépassée ; le cas échéant les signatures (la passerelle dispose des clés publiques des portefeuilles, permettant de contrôler, pour chacun du premier et du deuxième portefeuille, les signatures du triplet, du montant et de l’horodatage) ; le cas échéant l’absence de franchissements des limites d’utilisation des portefeuille électronique. Préférentiellement plusieurs paradigmes de vérification, correspondant à plusieurs niveaux de sécurité, peuvent être mis en œuvre pour vérifier de plus en plus loin ladite cohérence de chaque journal, et la sous-étape b. comprend la sélection d’un niveau de vérification de la cohérence dudit journal de transaction parmi les niveaux possibles, et la mise en œuvre dudit niveau de vérification sélectionné : Selon un premier niveau, on met en œuvre seulement une vérification des variations de solde, dite vérification « balance based ». On vérifie ici la cohérence des variations de solde des portefeuilles avec les transactions décrites dans les journaux ; Selon un deuxième niveau, on met en œuvre une vérification de traçabilité de la monnaie électronique transférée, dite vérification « funding based », portant sur le suivi des unités de monnaies électronique. En effet, de manière préférée, la monnaie électronique est « tokenisée » et fragmentable, ce qui signifie que chaque unité de la monnaie présente un identifiant unique (de la même manière qu’un billet de banque), et les unités impliquées dans la transaction (i.e. celles qui constituent le montant transféré) sont renseignées dans le journal. On comprend qu’une même unité (ou fragment d’unité) ne peut être présente à un instant donné que dans un seul portefeuille électronique, sinon c’est que l’on est en présence de « double spending ». A noter qu’on peut prévoir qu’une unité présente elle aussi une durée d’expiration, qui l’empêche d’être retransférée jusqu'à la prochaine resynchronisation (occurrence de l’étape (a0)) ; Selon un troisième niveau, dit « full history », on met en œuvre une vérification de l’historique complet de transaction, il s’agit d’une version plus poussée de la vérification de traçabilité dans lequel on détermine de manière complète la chaîne de transfert des unités de monnaie électronique, de portefeuille en portefeuille. Une telle vérification nécessite une puissance de calcul nettement plus forte, et n’est avantageusement mise en œuvre qu’en cas de suspicion de fraude, de sorte à mener une vérification plus poussée. Si au moins une incohérence est détectée, une gestion d’exception est déclenchée visant à identifier l’origine de cette incohérence et/ou à la corriger. Cette gestion d’exception peut éventuellement nécessiter un certain délai le temps de récupérer et de traiter des données complémentaires lors de la synchronisation d’autres portefeuilles. En fonction des conclusions de cette analyse et en cas de fraude, des actions complémentaires peuvent être mise en œuvre comme des vérifications supplémentaires (telle qu’une levée d’anonymat) et/ou des sanctions telle que la désactivation immédiate du portefeuille électronique concerné et le déclenchement de poursuites du détenteur. Les transactions étant finales, les portefeuilles ayant interagi légitimement ne seront pas impactés. Si au contrairement aucune incohérence n’est identifiée, comme expliqué un nouvel enrôlement (a0) est mis en œuvre de sorte à définir une nouvelle date d’expiration et autoriser de nouvelles transactions hors ligne. Terminal Selon un deuxième et un troisième aspect, l’invention concerne les terminaux 2a et/ou 2b pour la mise en œuvre du procédé selon le premier aspect. Le premier et le deuxième terminal 2a, 2b implémentent chacun un premier et un deuxième portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions, et comprennent des moyens de traitement de données 21a, 21b et préférentiellement des élément sécurisés 20a, 20b pour l’exécution d’une transaction de transfert de monnaie électronique. Le premier terminal 2a est configuré pour : Etablir un canal de communication ad-hoc avec le deuxième terminal 2b ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécuter via ledit canal de communication ad-hoc une transaction relative au transfert de monnaie numérique du premier portefeuille électronique au deuxième portefeuille électronique, et mettre à jour ledit premier portefeuille électronique et le journal de transaction associé ; Lors d’une connexion du premier terminal 2a à une passerelle 1 via un réseau étendu 10 Transférer ledit journal de transactions associé au premier portefeuille électronique ; Mettre en œuvre au moins une vérification de la cohérence dudit journal de transaction par la passerelle 1 ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Le deuxième terminal 2b est configuré pour : Etablir un canal de communication ad-hoc avec le premier terminal 2a ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécuter via ledit canal de communication ad-hoc une transaction relative au transfert de monnaie numérique du premier portefeuille électronique au deuxième portefeuille électronique, et mettre à jour ledit deuxième portefeuille électronique et le journal de transaction associé ; Lors d’une connexion du deuxième terminal 2b à une passerelle 1 via un réseau étendu 10 Transférer ledit journal de transactions associé au deuxième portefeuille électronique ; Mettre en œuvre au moins une vérification de la cohérence dudit journal de transaction par la passerelle 1 ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone Produit programme d’ordinateur Selon un quatrième et un cinquième aspects, l’invention concerne un produit programme d’ordinateur comprenant des instructions de code pour l’exécution (sur les moyens de traitement de donnés 21a, 21b du terminal 2a, 2b) d’un procédé selon le premier aspect de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique, ainsi que des moyens de stockage lisibles par un équipement informatique (par exemple les moyens de stockage de données 22a, 22b du terminal 2a, 2b) sur lequel on trouve ce produit programme d’ordinateur. Procédé de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique, caractérisé en ce qu’il comprend la mise en œuvre d’étapes de : Etablissement d’un canal de communication ad-hoc entre un premier terminal (2a) implémentant le premier portefeuille électronique et un deuxième terminal (2b) implémentant le deuxième portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécution de ladite transaction par les premier et deuxième terminaux (2a, 2b) via ledit canal de communication ad-hoc, et mise à jour desdits premier et deuxième portefeuilles électroniques, et des journaux de transaction associés ; Lors d’une connexion du premier terminal (2a) et/ou du deuxième terminal (2b) à une passerelle (1) via un réseau étendu (10) Transfert dudit journal de transactions associé au portefeuille électronique implémenté par le(s)dit(s) premier terminal (2a) et/ou deuxième terminal (2b) connecté ; Mise en œuvre d’au moins une vérification de la cohérence dudit journal de transaction par la passerelle (1) ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Procédé selon la revendication 1, dans lequel l’étape (b) n’implique aucune connexion à ladite passerelle (1), et en particulier aucune connexion au réseau (10). Procédé selon l’une des revendications 1 et 2, dans lequel ledit canal de communication ad-hoc entre le premier terminal (2a) et le deuxième terminal (2b) est un canal de communication sans-fil de courte portée, en particulier NFC, ou un canal de communication optique. Procédé selon l’une des revendications 1 à 3, comprenant une étape (a0), mise en œuvre par le premier terminal (2a) et/ou deuxième terminal (2b) lors d’une connexion à la passerelle (1) via ledit réseau étendu (10), de création sécurisée du premier et/ou du deuxième portefeuille électronique. Procédé selon la revendication 4, dans lequel l’étape (a0) est répétée à chaque mise en œuvre de l’étape (c), de sorte à renouveler le(s)dit(s) premier et/ou deuxième portefeuille électronique. Procédé selon l’une des revendications 5 et 6, dans lequel l’étape (a0) comprend la définition d’une nouvelle date d’expiration dudit premier et/ou deuxième portefeuille électronique. Procédé selon la revendication 6, dans lequel chacun du premier et du deuxième portefeuille électronique est en outre associé à au moins une limite d’utilisation, l’étape (b) n’étant en outre mise en œuvre que lesdites limites d’utilisation de chacun du premier et du deuxième portefeuille électronique ne sont pas dépassées, l’étape (a0) comprenant la réinitialisation desdites limites. Procédé selon l’une des revendications 1 à 7, dans lequel chacun du premier et du deuxième portefeuille électronique est en outre associé à un identifiant unique de portefeuille électronique, l’étape (b) comprenant, pour chacun du premier et du deuxième portefeuille électronique, la construction d’un triplet (identifiant unique du portefeuille électronique / date d’expiration / identifiant local de transaction) identifiant de manière unique ladite transaction. Procédé selon l’une des revendications 6 et 7 et la revendication 8 en combinaison, dans lequel chacun du premier et du deuxième portefeuille électronique est en outre associé à une paire d’une clé privée et d’une clé publique, l’étape (a0) comprenant la génération d’une nouvelle paire de clés, la construction dudit identifiant unique de portefeuille électronique à partir de la clé publique, et l’obtention de versions signées par la passerelle (1) de ladite clé publique et de la date d’expiration. Procédé selon la revendication 9, dans lequel l’étape (b) comprend en outre, pour au moins le premier portefeuille électronique, la signature avec la clé privée dudit premier portefeuille électronique, du triplet identifiant de manière unique ladite transaction, d’un montant de monnaie électronique transféré lors de la transaction, et d’un horodatage de la transaction. Procédé selon l’une des revendications 1 à 10, dans lequel chaque terminal (2a, 2b) comprend un élément de sécurité (20a, 20b), ladite transaction étant exécutée à l’étape (b) dans lesdits éléments de sécurité (20a, 20b). Procédé selon l’une des revendications 1 à 11, dans lequel l’étape (c) est mise en œuvre pour chacun du premier terminal (2a) et du deuxième terminal (2b), la sous-étape b. comprenant la vérification qu’on retrouve la même transaction du point de vue du premier terminal (2a) et du deuxième terminal (2b) décrite dans les journaux des premier et deuxième portefeuilles électroniques. Procédé selon la revendication 12, dans lequel l’étape b. comprend la sélection d’un niveau de vérification de la cohérence dudit journal de transaction parmi plusieurs niveaux possibles, et la mise en œuvre dudit niveau de vérification sélectionné, dont un niveau de vérification de traçabilité de la monnaie électronique transférée, dans lequel chaque unité de la monnaie électronique présente une identifiant unique et la passerelle (1) vérifie en outre qu’un même fragment d’une unité de la monnaie électronique n’est présent à un instant donné que dans un seul portefeuille électronique. Premier terminal (2a) implémentant un premier portefeuille électronique, caractérisé en ce qu’il est configuré pour : Etablir un canal de communication ad-hoc avec un deuxième terminal (2b) implémentant un deuxième portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécuter via ledit canal de communication ad-hoc une transaction relative au transfert de monnaie numérique du premier portefeuille électronique au deuxième portefeuille électronique, et mettre à jour ledit premier portefeuille électronique et le journal de transaction associé ; Lors d’une connexion du premier terminal (2a) à une passerelle (1) via un réseau étendu (10) Transférer ledit journal de transactions associé au premier portefeuille électronique ; Mettre en œuvre au moins une vérification de la cohérence dudit journal de transaction par la passerelle (1) ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Deuxième terminal (2b) implémentant un deuxième portefeuille électronique, caractérisé en ce qu’il est configuré pour : Etablir un canal de communication ad-hoc avec un premier terminal (2a) implémentant un premier portefeuille électronique, chacun du premier et du deuxième portefeuille électronique étant associé à une date d’expiration et à un journal de transactions ; Si ladite date d’expiration de chacun du premier et du deuxième portefeuille électronique n’est pas dépassée, exécuter via ledit canal de communication ad-hoc une transaction relative au transfert de monnaie numérique du premier portefeuille électronique au deuxième portefeuille électronique, et mettre à jour ledit deuxième portefeuille électronique et le journal de transaction associé ; Lors d’une connexion du deuxième terminal (2b) à une passerelle (1) via un réseau étendu (10) Transférer ledit journal de transactions associé au deuxième portefeuille électronique ; Mettre en œuvre au moins une vérification de la cohérence dudit journal de transaction par la passerelle (1) ; Si au moins une incohérence est détectée, déclenchement d’une gestion d’exception asynchrone. Produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon l’une des revendications 1 à 13 de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique, lorsque ledit programme est exécuté sur un ordinateur. Moyen de stockage lisible par un équipement informatique sur lequel est enregistré un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon l’une des revendications 1 à 13 de mise en œuvre d’une transaction relative au transfert de monnaie numérique d’un premier portefeuille électronique à un deuxième portefeuille électronique.