Rapports d'expertise et témoignages · Leçon 3 sur 4
Visualiser les flux et présenter des éléments de preuve visuels aux tribunaux
14 min de lecture
La plupart des lecteurs d’un rapport de traçage regardent d’abord les images, et certains ne lisent jamais le texte. Les juges et les jurés se souviennent du graphe de flux bien après avoir oublié le tableau des transactions. Les figures constituent ainsi la partie la plus persuasive d’un dossier relatif aux cryptoactifs, mais aussi la plus susceptible d’être contestée : un graphique qui affiche davantage de certitude que le rapport, ou dont le lien avec les données ne peut être retracé, peut nuire à la crédibilité de tout ce que dit l’expert par ailleurs. Cette leçon explique comment choisir et construire le bon visuel, en préserver la fidélité et la lisibilité, et en faire une pièce qu’un tribunal peut comprendre, vérifier et sur laquelle il peut s’appuyer. Le rapport qui accompagne les figures est traité dans la leçon 9.2.
Choisir le visuel en fonction de la question
Partez de la question à laquelle le lecteur doit obtenir une réponse, et non de l’outil que vous avez ouvert.
| Question du lecteur | Visuel le plus adapté | Ce qu’il masque |
|---|---|---|
| Quel montant est allé où ? | Diagramme de Sankey | Chronologie, transactions individuelles |
| Comment ces adresses sont-elles reliées, et par quel chemin ? | Graphe de flux | Montants, sauf s’ils sont indiqués |
| Quand les événements se sont-ils produits, et dans quel ordre ? | Frise chronologique | Structure du réseau |
| Quelles adresses appartiennent à quelle entité ? | Carte des regroupements | Sens des flux et chronologie |
| Comment un solde ou un volume a-t-il évolué au fil du temps ? | Graphique en courbes ou en barres | Contreparties |
Tout visuel simplifie, et chacun masque quelque chose. Une figure destinée au tribunal doit présenter une seule affirmation : si le rapport comporte quatre constatations, il peut nécessiter quatre figures, ou une vue d’ensemble accompagnée de figures détaillées, chacune rattachée au numéro d’une constatation.
Diagrammes de Sankey
Un diagramme de Sankey représente les flux par des bandes dont la largeur est proportionnelle à la valeur transférée. Il porte le nom de Matthew Sankey, qui en a utilisé un en 1898 pour montrer le rendement énergétique d’une machine à vapeur, et constitue le moyen le plus clair de montrer comment une somme a été répartie. Exemple détaillé : l’adresse d’un attaquant détient 941,2 ETH après conversion de son butin, et trois bandes en partent : 600 ETH vers un service de conversion inter-chaînes, 300 ETH vers un pont et 41,2 ETH restés sur place. Les largeurs sont dans le rapport 600 : 300 : 41,2, de sorte que le lecteur voit immédiatement que près des deux tiers ont pris la même direction.
Règles pour préserver la fidélité d’un diagramme de Sankey :
- Conservez la valeur. Ce qui entre dans un nœud est égal à ce qui en sort, plus ce qui y reste. Représentez les frais, les soldes non dépensés et les montants non tracés par des bandes explicites (« frais 0,002 BTC », « non déplacés 41,2 ETH », « non tracés ») ; ne les laissez jamais disparaître sans explication.
- Une seule unité par diagramme. Dessinez un diagramme de Sankey par actif, ou convertissez les valeurs dans une seule devise au moment de chaque transfert et indiquez la source du cours.
- Ordonnez les colonnes par saut ou par date, de gauche à droite, et précisez le critère retenu.
- Évitez les cycles. Les flux en boucle relèvent d’un graphe de flux.
Les données sous-jacentes à un diagramme de Sankey constituent une liste d’arêtes (source, cible, valeur), produite directement à partir d’une table du dossier contenant les transferts d’ETH tracés, avec les mêmes colonnes que transactions (leçon 2.7) :
-- Liste d’arêtes pour un Sankey : valeur transférée entre entités étiquetées
SELECT
COALESCE(ls.entity, t.from_address) AS source,
COALESCE(lt.entity, t.to_address) AS target,
SUM(t.value) / 1e18 AS eth_moved, -- valeur en wei, comme dans transactions
COUNT(*) AS transfers
FROM traced_transfers t
LEFT JOIN labels ls ON ls.address = t.from_address
LEFT JOIN labels lt ON lt.address = t.to_address
GROUP BY 1, 2
ORDER BY eth_moved DESC;
Les jointures gauches utilisent les noms des entités lorsqu’une étiquette existe et conservent sinon l’adresse brute. Un regroupement unique « Sans étiquette » fusionnerait au contraire des adresses sans rapport entre elles et représenterait des flux qui n’ont jamais eu lieu. Les jointures supposent une seule étiquette par adresse (sinon, les sommes sont multipliées ; voir la leçon 2.8), et la division par 1e18 donne un nombre à virgule flottante dans de nombreux moteurs ; effectuez donc une conversion vers un type décimal de haute précision lorsque l’exactitude des chiffres est importante.
Graphes de flux, frises chronologiques et cartes des regroupements
Un graphe de flux représente les adresses ou les entités par des cases et les transferts par des flèches : c’est la représentation naturelle du travail de traçage (leçon 3.1).
- Utilisez une disposition en couches, de gauche à droite, chaque colonne correspondant à un saut ou à une étape temporelle, afin que les lecteurs suivent l’argent comme un texte. Les dispositions par forces sont réservées à l’exploration : la position y résulte de l’algorithme, et deux nœuds dessinés à proximité semblent liés même lorsqu’ils ne le sont pas.
- Distinguez les observations des inférences. Utilisez des flèches pleines pour les transferts enregistrés sur la blockchain ; des flèches en pointillés pour les inférences (une correspondance de pont fondée sur le montant et le temps, une identification de sortie de monnaie rendue), en indiquant à côté leur niveau ou le terme de vraisemblance retenu.
- Étiquetez les arêtes avec le montant, la date et une référence courte de transaction ; conservez le hachage complet en annexe.
- Montrez où le traçage s’est arrêté, et pourquoi : « service de conservation, documents demandés » ou « traçage non poursuivi ». Cette limite résulte d’un choix, elle ne marque pas la fin du parcours de l’argent.
- Limitez la taille du graphe. Au-delà d’environ 30 à 50 nœuds, un graphe cesse d’être lisible. Regroupez les chaînes d’épluchage (« chaîne d’épluchage, 9 sauts ») et les regroupements d’adresses dans des cases uniques, avec les détails en annexe.
Quel que soit l’outil utilisé (parmi les outils ouverts figurent Graphviz pour les dispositions en couches et Gephi ou Cytoscape pour l’exploration), exportez la liste d’arêtes avec la figure.
Une frise chronologique répond aux questions « quand » et « dans quel ordre », souvent plus importantes au tribunal que le chemin suivi, car elle relie les événements sur la blockchain aux témoignages et montre s’il était possible de procéder à un gel à temps. Affichez les heures des blocs en UTC avec leurs hauteurs et, lorsque des événements doivent être comparés aux récits de témoins, indiquez également l’heure locale vécue par ces témoins, en précisant le décalage horaire. Utilisez un couloir par blockchain dans les affaires inter-chaînes, afin que le dépôt sur un pont et le déblocage correspondant soient côte à côte. Distinguez les événements sur la blockchain (une transaction confirmée) des événements hors blockchain (le signalement de la victime, une demande de gel, une arrestation) par la forme ou le couloir, et pas seulement par la couleur. Laissez les intervalles visibles : une pause de trois semaines avant un dépôt est un élément de preuve ; signalez toute rupture d’axe.
Une carte des regroupements montre la résolution d’entités : chaque regroupement apparaît comme un conteneur avec ses adresses ou leur nombre, et chaque motif de lien (entrées communes, adresse de dépôt partagée) est représenté par un style de ligne distinct. Si la surface des bulles représente une grandeur, précisez s’il s’agit du nombre d’adresses ou du solde, et avertissez le lecteur lorsqu’un regroupement est anormalement grand (leçon 4.4).
Les cartes géographiques présentent un risque particulier. La géolocalisation IP issue des données des fournisseurs est approximative, et les adresses peuvent appartenir à des VPN, à des hébergeurs ou à des réseaux mobiles. Représentez ces localisations par une région ou un rayon, avec la source et la date, jamais par un repère dans une rue. Le siège social d’un fournisseur, ses serveurs et ses clients peuvent se trouver dans trois pays différents ; une carte indiquant « où l’argent est allé » doit préciser lequel de ces éléments elle représente.
Une figure est une pièce produite au tribunal
Au tribunal, une figure fait partie des éléments de preuve, ou constitue au moins une synthèse sur laquelle le tribunal s’appuie. Le fait qu’un graphique soit considéré comme une preuve à part entière ou seulement comme une aide varie selon les systèmes ; dans tous les cas, traitez-le comme une pièce produite au tribunal. Il lui faut un identifiant unique et une version correspondant au rapport, la limite des données retenues et les données sources, les lignes des annexes étayant chaque arête, montant et date, ainsi que l’auteur et l’outil. Générez les figures à partir des données plutôt que de les dessiner, et conservez le fichier d’entrée avec son hachage afin que l’expert de la partie adverse puisse reproduire la même image :
{
"figure_id": "FIG-04",
"version": 2,
"title": "Movement of the stolen 41.6 BTC, 14 to 16 March 2026",
"source_file": "fig04_edges_v2.csv",
"source_sha256": "9c1e…a07b",
"appendix_rows": "A14-A31, B3-B9",
"data_cutoff": {"bitcoin_block": 941350, "ethereum_block": 24812000},
"generated_with": {"tool": "open-source graph layout library", "version": "12.1"},
"supersedes": "FIG-04 v1, report v1.0",
"author": "Examiner 2"
}
Si une figure change entre le rapport et l’audience, le manifeste en consigne la raison, et la version présentée au tribunal doit être celle qui a été communiquée. Une figure qui apparaît pour la première fois à l’audience, ou qui diffère de la version communiquée, est facilement contestable et peut être écartée (leçon 8.4).
Concevoir pour la salle d’audience
Une figure destinée au tribunal s’adresse au juge ou à la formation de jugement, aux décideurs non professionnels lorsque le système en prévoit, et à l’expert de la partie adverse, qui vérifiera chaque chiffre. Ils peuvent la découvrir dans des dossiers imprimés, souvent photocopiés en niveaux de gris et réduits ; projetée dans une salle d’audience à plusieurs mètres de distance ; sur des écrans partagés lors d’audiences en visioconférence ; ou dans des fichiers électroniques sur n’importe quel appareil. Concevez-la pour les conditions les plus défavorables : imprimez-la en niveaux de gris au format du dossier, regardez-la projetée depuis le fond d’une salle et vérifiez que chaque étiquette est lisible sans zoomer.
- Placez la légende en premier, en haut : « trait plein : transfert enregistré sur la blockchain ; trait en pointillés : inférence de l’expert, avec son niveau de confiance ».
- Utilisez des noms simples : « adresse de dépôt sur la plateforme d’échange K », et non « regroupement 88412 ».
- Rendez compte de toute la valeur : si 41,6 BTC sont entrés, montrez où sont allés les 41,6 BTC, y compris les frais, les soldes non déplacés et les montants non tracés.
Montrer l’incertitude
L’incertitude clairement exprimée dans le rapport disparaît souvent dans la figure. Attribuez un niveau de confiance à chaque arête inférée en reprenant les termes du rapport, tels que « éléments fortement probants » ou « très probable », sans les renforcer. Montrez des fourchettes lorsque les méthodes divergent : si la méthode FIFO attribue 2,0 BTC à la plateforme d’échange K et que la méthode de répartition proportionnelle en attribue 0,7 BTC (leçon 3.3), montrez les deux valeurs ou la fourchette, et non le chiffre le plus avantageux. Montrez les candidats : un déblocage de pont choisi parmi trois est représenté avec les autres possibilités ou annoté « 1 candidat sur 3 dans la fenêtre ». Arrondissez dans la figure, soyez exact en annexe : « environ 2,95 BTC » dans l’image, huit décimales dans le tableau ; « 1 912 400,000000 USDC » dans une figure suggère une certitude sur l’attribution que le montant ne permet pas d’établir. Datez chaque valeur en monnaie fiduciaire, avec la source du cours et en précisant si elle correspond au moment de chaque transfert, du vol ou du rapport ; sur un marché volatil, ces valeurs peuvent varier du simple au multiple.
Éviter les visuels trompeurs
Les visuels induisent plus souvent en erreur par leur mise en page que par des données erronées :
- Axes tronqués ou incohérents : un graphique en barres commençant à 900 ETH donne l’impression que 950 est le double de 925. Utilisez une même échelle pour les graphiques destinés à être comparés.
- Surface et longueur : si le rayon d’une bulle représente la valeur, doubler le rayon quadruple la surface. Faites varier la surface, et non le rayon.
- Les échelles logarithmiques non signalées sont lues comme des échelles linéaires.
- Couleurs connotées : le rouge pour une entité seulement suspectée suggère un verdict ; réservez les couleurs d’alerte aux faits établis, comme un contrat d’exploitation de faille confirmé.
- Omission sélective : ne montrer que les chemins qui atteignent le suspect et écarter des flux plus importants dirigés ailleurs.
Avant qu’une figure soit intégrée au dossier, un relecteur qui ne l’a pas réalisée procède à une vérification avant l’audience :
| Vérification | Question à poser |
|---|---|
| Cohérence | La figure exprime-t-elle ou suggère-t-elle une certitude absente du rapport ? |
| Formulation neutre | Les étiquettes sont-elles exemptes de conclusions juridiques telles que « blanchiment » ou « produit du crime » ? |
| Couleurs neutres | Les couleurs d’alerte sont-elles réservées aux faits établis ? |
| Exhaustivité | Les flux qui s’éloignent du suspect sont-ils représentés aussi clairement que ceux qui se dirigent vers lui ? |
| Test d’équité | L’expert de la partie adverse conviendrait-il que la figure reflète les données, même s’il conteste l’inférence ? |
| Test du support | La figure est-elle lisible imprimée en niveaux de gris et projetée depuis le fond de la salle ? |
| Légende | La légende énonce-t-elle le message essentiel dans les termes du rapport et cite-t-elle la constatation ? |
Une animation qui fait « filer » les fonds d’une adresse à l’autre suggère une rapidité et une certitude que les données ne permettent pas nécessairement d’étayer, et ne peut pas figurer dans un dossier imprimé. Préparez une version statique de chaque séquence animée, communiquez les deux et veillez à ce que l’image finale soit identique à la figure statique.
Accessibilité
Les rapports sont lus sur téléphone, imprimés en niveaux de gris et lus par des personnes présentant une déficience de la vision des couleurs, qui touche environ 1 homme sur 12 et 1 femme sur 200. Les Règles pour l’accessibilité des contenus Web (WCAG 2.1 et 2.2) fournissent des objectifs utiles même pour les documents : un contraste du texte d’au moins 4,5:1 (3:1 pour le texte de grande taille), d’au moins 3:1 pour les éléments graphiques porteurs de sens, comme les lignes et les bandes, et ne jamais utiliser la couleur seule pour transmettre une information. Le trait plein pour les observations et le trait en pointillés pour les inférences fonctionnent aussi en niveaux de gris. Donnez à chaque figure un texte de remplacement ou une légende qui énonce le message essentiel (« les deux tiers des fonds sont allés au service de conversion inter-chaînes »), et pas seulement une description (« un diagramme de Sankey »), et incluez le tableau sous-jacent en annexe afin que les utilisateurs de lecteurs d’écran et les relecteurs disposent des mêmes informations.
Points clés pour l’examen : adapter le visuel à la question (Sankey pour les montants, graphe de flux pour les chemins, frise chronologique pour l’ordre, carte des regroupements pour la résolution d’entités) et limiter chaque figure à une seule affirmation ; règles du diagramme de Sankey (conservation, frais et montants non tracés explicites, une seule unité, aucun cycle) ; construction d’une liste d’arêtes sans fusionner les adresses sans étiquette ; dispositions en couches et dispositions par forces ; flèches pleines pour les transferts enregistrés, en pointillés et assorties d’un niveau de confiance pour les inférences, et indication de l’endroit où le traçage s’est arrêté ; UTC avec heure locale précisée et distinction des événements sur la blockchain et hors blockchain dans les frises chronologiques ; géolocalisation IP représentée par une région avec sa source, jamais par un repère dans une rue ; figure traitée comme une pièce produite au tribunal avec identifiant, version, limite des données retenues, hachage de la source et lignes des annexes, et conformité avec la version communiquée ; conception pour l’impression en niveaux de gris et la projection ; présentation des fourchettes selon les méthodes, des candidats à une correspondance et des valeurs datées en monnaie fiduciaire ; mises en page trompeuses et vérification avant l’audience ; versions statiques des animations ; objectifs WCAG de 4,5:1 pour le texte et de 3:1 pour les éléments graphiques.
Questions d’entraînement
Vérifiez votre compréhension. Ces questions ne comptent pas pour l’examen.
Connectez-vous pour enregistrer votre progression et reprendre là où vous vous êtes arrêté. C’est gratuit. Se connecter