Clustering und Attribution · Lektion 4 von 8
Bewertung der Clusterqualität
8 Min. Lesezeit
Ein Cluster ist eine Hypothese über die Kontrolle, und Hypothesen müssen überprüft werden. Analysten, die nicht angeben können, wie gut ihre Cluster sind, können auch nicht angeben, wie sehr einem darauf aufbauenden Befund zu vertrauen ist. Diese Lektion behandelt, wie die Clusterqualität gemessen wird, was die Forschungsliteratur über Fehlerraten von Heuristiken herausgefunden hat, wie sich ein Clusterkollaps erkennen lässt und wie Sie zeigen können, dass eine Schlussfolgerung auch bei vertretbaren Änderungen der Methode Bestand hat.
Ground Truth und ihre Verzerrungen
Die Bewertung von Clustern erfordert Ground Truth: Adressen, deren kontrollierende Instanz unabhängig von den zu prüfenden Heuristiken bekannt ist. Echte Ground Truth ist selten, und jede Quelle weist Verzerrungen auf:
| Quelle | Was sie bietet | Verzerrung |
|---|---|---|
| Eigene Testtransaktionen | Gesichertes Wissen über einige wenige Adressen pro Dienst | Sehr geringer Umfang; nur Dienste |
| Eigenveröffentlichungen von Entitäten | Vollständige Listen für einige Börsen oder Protokolle | Organisationen, die sich für eine Veröffentlichung entscheiden |
| Datenlecks und beschlagnahmte Daten | Tatsächliche Wallet-Inhalte | Selten, veraltet, nur ein Wallet-Typ |
| Mit Labels versehene Datensätze von Analyseunternehmen oder Behörden | Groß und vielfältig | Teilweise mit denselben Heuristiken erstellt, wodurch Zirkelschlüsse drohen |
| Durch Verhalten offengelegte Labels | Millionen von Beispielen, etwa Wechselgeld, das später durch gemeinsame Verwendung als Transaktionseingang offengelegt wird | Überrepräsentiert Wallets, die Adressen wiederverwenden oder gemeinsam als Transaktionseingänge verwenden |
| Einträge in Namensdiensten (kontobasierte Blockchains) | Selbst deklarierte Verknüpfungen zwischen Adressen | Nutzer, die sich für die Registrierung von Namen entscheiden |
Nick (2015, eine Masterarbeit zur Deanonymisierung in Bitcoin) ist ein seltenes Beispiel auf Grundlage eines Datenlecks: Eine Datenschutzschwachstelle in den Bloom-Filtern von Lightweight-Wallets legte die Adressbestände realer Wallets offen, und die Common-Input-Heuristik fand mehr als 69 % der darin enthaltenen Adressen. Möser und Narayanan (2022, „Wiederbelebung des Adressclusterings in Bitcoin“) verwendeten durch Verhalten offengelegte Labels: 35,26 Millionen Transaktionen, deren Wechselgeld später durch die Common-Input-Regel offengelegt wurde. Keine der beiden Untersuchungen beruht auf einer Zufallsstichprobe aller Nutzer, und beide sind an ihren jeweiligen Zeitraum gebunden. Betrachten Sie jede veröffentlichte Fehlerrate als „an dieser Ground Truth zu diesem Zeitpunkt gemessen“.
Präzision und Recall für Cluster
Präzision fragt danach, wie viel von dem, was die Methode zusammengefasst hat, tatsächlich zusammengehört; Recall fragt danach, wie viel von dem, was zusammengehört, die Methode gefunden hat. Bei Clustern gibt es zwei gängige Zählweisen.
Ein Rechenbeispiel: Entität E kontrolliert 10 Adressen und Entität F kontrolliert 4. Die Methode erzeugte Cluster C, das 8 Adressen von E und alle 4 von F enthält (eine fälschliche Zusammenführung), während sich die übrigen 2 Adressen von E in einem separaten Cluster befinden.
- Adressebene (C wird als Cluster von E bewertet): Präzision = 8 ÷ 12 = 0,67; Recall = 8 ÷ 10 = 0,80.
- Paarweise: C enthält 12 × 11 ÷ 2 = 66 Adresspaare. Korrekte Paare sind E–E (8 × 7 ÷ 2 = 28) plus F–F (4 × 3 ÷ 2 = 6), also 34. Paarweise Präzision = 34 ÷ 66 = 0,52. Tatsächlich existieren 45 echte Paare für E plus 6 für F, also 51; paarweiser Recall = 34 ÷ 51 = 0,67.
Die paarweise Zählung bestraft fälschliche Zusammenführungen stärker, weil eine Zusammenführung viele falsche Paare auf einmal erzeugt. Das entspricht der Art und Weise, wie Zusammenführungen die Analyse beeinträchtigen. Geben Sie stets an, welche Zählweise einer Kennzahl zugrunde liegt.
-- Präzision und Recall jedes Clusters auf Adressebene gegenüber der Ground Truth
WITH overlap AS (
SELECT c.cluster_id, g.entity_id, COUNT(*) AS shared
FROM clusters c
JOIN ground_truth g ON g.address = c.address
GROUP BY c.cluster_id, g.entity_id
),
ranked AS (
SELECT o.*, SUM(shared) OVER (PARTITION BY cluster_id) AS labeled_in_cluster,
ROW_NUMBER() OVER (PARTITION BY cluster_id ORDER BY shared DESC) AS rk
FROM overlap o
),
entity_size AS (SELECT entity_id, COUNT(*) AS n FROM ground_truth GROUP BY entity_id)
SELECT r.cluster_id, r.entity_id,
r.shared * 1.0 / r.labeled_in_cluster AS precision,
r.shared * 1.0 / e.n AS recall
FROM ranked r
JOIN entity_size e ON e.entity_id = r.entity_id
WHERE r.rk = 1;
Die Abfrage zählt für jedes Cluster, wie viele seiner Adressen mit Ground Truth zu jeder Entität gehören, wählt die dominierende Entität aus und teilt die Überschneidung durch die mit Labels versehenen Adressen des Clusters (Präzision) sowie durch die bekannte Größe der Entität (Recall). Adressen ohne Ground Truth werden ignoriert. Das ist die ehrliche Vorgehensweise: Sie sind unbekannt, nicht korrekt. Die Multiplikation mit 1,0 verhindert eine Ganzzahldivision in Engines, die Nachkommastellen abschneiden.
Prüfungen, die keine Ground Truth erfordern
Bei den meisten realen Untersuchungen gibt es für die beteiligten Entitäten keine Ground Truth. Interne Konsistenzprüfungen können dennoch Probleme aufdecken:
- Konsistenz der Fingerabdrücke. Adressen, die von derselben Wallet kontrolliert werden, weisen tendenziell denselben Skripttyp, dieselbe Transaktionsversion, ähnliche Locktime-Gewohnheiten und ein ähnliches Gebührenmuster auf. Ein Cluster, dessen Ausgabetransaktionen viele nicht zusammenpassende Fingerabdrücke aufweisen, führt wahrscheinlich mehrere Wallets zusammen. Kappos et al. (2022, „Wie man eine Million abschält: Validierung und Erweiterung von Bitcoin-Clustern“) verwendeten solche clusterweiten Merkmale, um durch CoinJoins verunreinigte Cluster von sauberen Clustern zu trennen.
- Zeitliche Kohärenz. Bei einem Cluster, dessen Adressen in weit auseinanderliegenden Zeiträumen aktiv waren und bei dem nur eine einzige Transaktion diese Zeiträume verbindet, sollte diese Transaktion näher untersucht werden.
- Verhaltenskohärenz. Ein Cluster, das sich in einem Teil wie eine Börse verhält (Tausende von Einzahlungen und Sweeps) und in einem anderen wie ein einzelner Nutzer (eine Handvoll manueller Zahlungen), kann aus zwei Entitäten bestehen, die durch eine einzige Verknüpfung verbunden sind.
- Größenverteilung. Ein sprunghafter Anstieg der Größe der größten Cluster nach einer Methodenänderung deutet eher auf neue falsche Verknüpfungen als auf neue Erkenntnisse hin.
Keine dieser Prüfungen beweist, dass ein Cluster korrekt ist, aber jede kann zeigen, dass es wahrscheinlich falsch ist.
Was die Forschung über Fehlerraten zeigt
| Studie | Heuristik | Berichtetes Ergebnis |
|---|---|---|
| Meiklejohn et al. (2013, „Eine Handvoll Bitcoins“) | Einmaliges Wechselgeld (Heuristik 2), verfeinert | Etwa 0,17 % falsch positive Ergebnisse, gemessen anhand späterer Adresswiederverwendung |
| Kappos et al. (2022) | Dieselbe Heuristik, auf verifizierten Clustern | 51,64 % Falschentdeckungsrate; strengere Heuristik 12,7 %; eigene Methode 0,62 % und 0,02 % |
| Nick (2015) | Common Input | Mehr als 69 % der Wallet-Adressen gefunden (Recall) |
| Möser und Narayanan (2022) | Wechselgeldklassifikator, der Heuristiken und Fingerabdrücke kombiniert | Etwa 82 % des Wechselgelds bei etwa 0,06 % falsch positiven Ergebnissen gefunden |
| Victor (2020, „Heuristiken zum Adressclustering für Ethereum“); Wu et al. (2022, Open-Source-Studie zu Tutela) | Wiederverwendung von Ethereum-Einzahlungsadressen und weitere Heuristiken | 17,9 % der aktiven EOAs ohne Ground Truth geclustert; 39,4 % Recall gegenüber Clustern aus Namensdiensten |
Daraus ergeben sich vier Schlussfolgerungen. Fehlerraten hängen stark davon ab, wie sie gemessen werden: Dieselbe Wechselgeldheuristik erzielt 0,17 % beim eigenen Falsifikationstest ihrer Autoren und 51,64 % bei unabhängigen verifizierten Clustern neun Jahre später. Heuristiken altern, wenn sich Wallet-Software und Nutzergewohnheiten ändern. Die Kombination mehrerer Signale ist jeder einzelnen Regel überlegen. Und Heuristiken für das Kontomodell sind weiterhin weitgehend unvalidiert.
Clusterkollaps
Ein Clusterkollaps tritt auf, wenn falsche Verknüpfungen nicht zusammengehörige Entitäten zu einem Supercluster zusammenführen. Die Literatur bietet mehrere Beispiele:
- Die naive Wechselgeldheuristik von Meiklejohn et al. erzeugte ein Cluster mit 1,6 Millionen Schlüsseln, das Mt. Gox, Instawallet, BitPay und Silk Road enthielt.
- Möser und Narayanan stellten fest, dass eine naive Zusammenführung auf Grundlage ihres Wechselgeldklassifikators ein Cluster mit 223,9 Millionen Adressen erzeugte, das 113 von 273 unabhängig mit Labels versehenen Clustern aufnahm. Einschränkungen auf Grundlage des vorhergesagten Ausgabeverhaltens verhinderten 413.608 Zusammenführungen; das größte verbleibende Cluster umfasste 40,5 Millionen Adressen, und sieben Paare mit Labels versehener Cluster wurden dennoch zusammengeführt.
- Harrigan und Fretter (2016, „Die erstaunliche Wirksamkeit des Adressclusterings“) schlossen das Mt.-Gox-Cluster vollständig aus, weil eine Schlüsselimportfunktion die Common-Input-Regel dort unzuverlässig machte.
Praktische Warnsignale:
- Labelkonflikte: Zwei verschiedene Börsen oder eine Börse und ein Mixer landen in einem Cluster.
- Zusammenführungen großer Cluster: Harrigan und Fretter beobachteten, dass große Cluster selten auf natürliche Weise zusammengeführt werden. Solche Zusammenführungen sollten daher überprüft werden.
- Plötzliches Wachstum: Ein Cluster gewinnt in einem einzigen Snapshot einen großen Teil seiner Größe hinzu.
- Einzelne kritische Verknüpfungen: Eine einzige Transaktion ist dafür verantwortlich, dass zwei große Komponenten verbunden werden; suchen Sie diese in der Beweistabelle und untersuchen Sie sie.
Sensitivitätsanalyse
Eine Sensitivitätsanalyse ermittelt einen Befund erneut mit verschiedenen vertretbaren Methoden und berichtet, wie er sich verändert. Eine typische Abstufung:
| Heuristiksatz | Mittelfluss von Cluster X zu Börsen |
|---|---|
| Nur Common Input, CoinJoins ausgeschlossen | 120 BTC |
| Zusätzlich starke Wechselgeldverknüpfungen | 141 BTC |
| Zusätzlich alle Wechselgeldverknüpfungen | 410 BTC |
Hier stimmen die ersten beiden Zeilen weitgehend überein, während die dritte den Wert beinahe verdreifacht. Ein sorgfältiger Bericht würde „mindestens 120 BTC und etwa 141 BTC unter Einbeziehung starker Wechselgeldverknüpfungen“ angeben und 410 BTC als unzuverlässig behandeln, da dieser Wert wahrscheinlich durch eine Zusammenführung aufgebläht wurde. Die Forschung zeigt denselben Effekt im großen Maßstab: Möser und Narayanan stellten fest, dass die Ergänzung ihres Wechselgeldclusterings die geschätzten Mittelflüsse von Darknet-Marktplätzen zu Börsen um 13,8 % erhöhte und einen Schätzwert für die Umlaufgeschwindigkeit von Coins um etwa 11,9 % senkte. Die Methodenwahl verändert zentrale Kennzahlen.
Dokumentation der Annahmen
Jeder Bericht, der sich auf Cluster stützt, sollte Folgendes festhalten:
- den Heuristiksatz, seine Version und seine Schwellenwerte (zum Beispiel den CoinJoin-Filter und den Grenzwert für den Wechselgeldscore);
- den Datensnapshot: Blockchain, Blockhöhe und Version des Nodes oder Datensatzes;
- die zur Bewertung der Cluster verwendete Ground Truth, ihren Umfang und ihre bekannten Verzerrungen;
- gemessene oder zitierte Fehlerraten mit Quelle und Datum;
- ausgeschlossene bekannte Clusterkollapse und überprüfte Zusammenführungen;
- die Sensitivitätsergebnisse für jeden zentralen Befund;
- Quellen und Qualitätsstufen der Labels (siehe die Lektion Von der Adresse über die Entität zur Person: Attribution und Labeling).
Diese Dokumentation ermöglicht es einem Prüfer, die Cluster zu reproduzieren, eine bestimmte Verknüpfung infrage zu stellen und zu erkennen, welche Schlussfolgerungen Bestand hätten, falls sich eine Heuristik als falsch erweisen sollte. Die Lektion Verfassen des forensischen Berichts: Konfidenz und Sprache zeigt, wo diese Dokumentation im Abschlussdokument hingehört.
Prüfungsschwerpunkt: Ground-Truth-Quellen und ihre Verzerrungen, einschließlich Zirkelschlüssen bei Anbieterlabels; Präzision und Recall auf Adressebene im Vergleich zur paarweisen Berechnung sowie die Berechnung beider anhand eines kleinen Beispiels; warum paarweise Kennzahlen fälschliche Zusammenführungen stärker bestrafen; was die Forschungszahlen zeigen, vor allem 0,17 % gegenüber 51,64 % für dieselbe Wechselgeldheuristik und warum selbst eine Falsch-Positiv-Rate von 0,06 % bei großem Maßstab Cluster zum Kollaps bringen kann; Clusterkollaps und seine Warnsignale; Sensitivitätsanalyse und Angabe einer robusten Untergrenze; Dokumentation von Heuristiken, Schwellenwerten, Snapshot, Ground Truth und Fehlerraten.