Menu

Seeing the Network

Blockchain transactions form a directed graph. Every transfer connects a source address to a destination address. Every smart-contract interaction connects a caller to a contract and, through internal calls, to other contracts and addresses. When these individual edges are aggregated across millions of transactions, a rich network structure emerges — clusters of related wallets, hub addresses that route flows between communities, and multi-hop paths that trace the movement of value from origin to destination.

Tabular databases can store transaction records efficiently, but they struggle with the queries that make graph structures analytically valuable. Finding the shortest path between two addresses through an arbitrary number of intermediary hops, detecting tightly connected communities of wallets, or computing the centrality of a particular address within a flow network — these are fundamentally graph operations, and they become prohibitively slow when expressed as recursive joins against a relational schema.

Ludopoly Analytics stores its transaction relationship data in Neo4j, a purpose-built graph database. Addresses become nodes. Transactions become edges with properties — timestamp, value, chain of origin, contract type. This representation enables the platform to run the graph algorithms that power both its AML and behavioural analytics capabilities at interactive speeds.

ABCMixerDECEXFGHCommunity clusterSuspicious pathExit pointRed edges trace a suspicious flow through a mixer contract — invisible in tabular data, obvious in a graph

Path-Finding and Hop Analysis

The most direct application of graph analysis is tracing the path that value takes from an origin address to an exit point. In a laundering scenario, funds rarely move in a single direct transfer. They pass through multiple intermediary wallets — sometimes dozens — with each hop designed to obscure the relationship between the source and the destination. Path-finding algorithms running on Neo4j can identify these chains in seconds, even when the number of intermediate hops is large and the transactions span multiple blockchain networks.

Cross-chain hop analysis extends this capability across network boundaries. When the platform's event capture layer links a bridge deposit on Ethereum with a corresponding mint on Arbitrum, the graph database incorporates both events as edges in the same graph. This allows path-finding queries to follow value across chains, revealing laundering patterns that exploit bridge contracts to fragment their on-chain trail.

Community Detection and Centrality

Community detection algorithms identify clusters of addresses that transact primarily with each other. These clusters often correspond to real-world entities — a group of wallets controlled by the same actor, a set of addresses participating in the same DeFi protocol, or a money-laundering ring that recycles funds through a closed loop of intermediaries. Detecting these clusters provides compliance teams with a structural view of suspicious networks rather than a flat list of individual flagged addresses.

Centrality analysis reveals the most influential nodes within a graph. An address with high betweenness centrality sits on many shortest paths between other addresses, making it a likely intermediary in fund-routing operations. An address with high degree centrality transacts with an unusually large number of counterparties. These centrality metrics, when combined with the AML engine's risk scores, help compliance teams prioritise their investigations — focusing first on the hub addresses that connect the most suspicious activity.

Graph queries power both compliance and developer analytics use cases. The same infrastructure that traces laundering paths also maps user interaction networks for dApp developers, revealing which features attract the most connected users and how on-chain communities form around specific protocols.

Real-Time Graph Updates

The graph database is not a static snapshot. As new transactions are processed through the data pipeline, the corresponding edges and nodes are added to the graph in near real-time. This ensures that path-finding and community-detection queries always reflect the current state of on-chain activity rather than a stale historical view. Batch processes run periodically to recompute centrality scores and community boundaries, but the underlying graph data is continuously current.