$\displaystyle\quad=\frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,\xi_{i}+q_{i}^{\ast}\right\rangle\left\langle
y,\,\xi_{i}+q_{i}^{\ast}\right\rangle-\left\langle
x^{\ast},\,(\widehat{\mu}\widehat{\mu}^{\top})y\right\rangle$
$\displaystyle\quad=\frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,(\xi_{i}\xi_{i}^{\top}-\widehat{\mu}\widehat{\mu}^{\top})y\right\rangle+\left\langle
x^{\ast},\,\xi_{i}\right\rangle\left\langle
y,\,q_{i}^{\ast}\right\rangle+\left\langle
x^{\ast},\,q_{i}^{\ast}\right\rangle\left\langle
y,\,\xi_{i}\right\rangle+\left\langle
x^{\ast},\,q_{i}^{\ast}\right\rangle\left\langle
y,\,q_{i}^{\ast}\right\rangle.$

Letting $V\coloneqq\widehat{\Sigma}-\widehat{\mu}\widehat{\mu}^{\top}$, we see
that $V=\frac{1}{N}\sum_{i=1}^{N}(\xi_{i}-\widehat{\mu})\xi_{i}^{\top}$, and
$\frac{1}{N}\sum_{i=1}^{N}\left\lvert\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle\right\rvert^{2}=\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle$, from which we simplify

$\begin{cases}\begin{aligned} \frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,\xi_{i}\right\rangle\left\langle y,\,q_{i}^{\ast}\right\rangle\ &=\
\rho\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle\frac{\frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle\left\langle\xi_{i},\,x^{\ast}\right\rangle}{\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}}&&=\ \rho\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle},\\\ \frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,q_{i}^{\ast}\right\rangle\left\langle y,\,\xi_{i}\right\rangle\ &=\
\rho\left\lVert
x^{\ast}\right\rVert_{*}\frac{\frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle\left\langle\xi_{i},\,y\right\rangle}{\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}}&&=\ \rho\left\lVert
x^{\ast}\right\rVert_{*}\frac{\left\langle
x^{\ast},\,Vy\right\rangle}{\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}},\\\ \frac{1}{N}\sum_{i=1}^{N}\left\langle
x^{\ast},\,q_{i}^{\ast}\right\rangle\left\langle
y,\,q_{i}^{\ast}\right\rangle\ &=\ \rho^{2}\left\lVert
x^{\ast}\right\rVert_{*}\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle\frac{\frac{1}{N}\sum_{i=1}^{N}\left\lvert\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle\right\rvert^{2}}{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}&&=\ \rho^{2}\left\lVert
x^{\ast}\right\rVert_{*}\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle.\end{aligned}\end{cases}$

Employing the above relations, we see that the objective function in (74)
simplifies to

$\displaystyle\left\langle\big{(}\Sigma_{\mathds{P}^{\ast}}-\widehat{\mu}\widehat{\mu}^{\top}\big{)}x^{\ast},\,y\right\rangle$
$\displaystyle=\left\langle x^{\ast},\,Vy\right\rangle+\rho\left\lVert
x^{\ast}\right\rVert_{*}\frac{\left\langle
x^{\ast},\,Vy\right\rangle}{\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}}+\rho\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}+\rho^{2}\left\lVert
x^{\ast}\right\rVert_{*}\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle$
$\displaystyle=\Big{(}\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}+\rho\left\lVert
x^{\ast}\right\rVert_{*}\Big{)}\left(\frac{\left\langle
x^{\ast},\,Vy\right\rangle}{\sqrt{\left\langle
x^{\ast},\,Vx^{\ast}\right\rangle}}+\rho\left\langle
y,\,\mathrm{bar}{q}_{x^{\ast}}\right\rangle\right).$

In view of the inclusion (74), the sufficient optimality condition (75)
follows immediately. Consequently, the inclusion
$x^{\ast}\in\operatorname*{argmin}_{x\in\mathcal{X}}\ V(x,\mathds{P}^{\ast})$
also holds.

Optimality of $\mathds{P}^{\ast}$ for the maximization condition. Similar to
the proof of the minimization condition, we establish the maximization
condition of the saddle point by showing that the first order optimality
conditions are satisfied. We first recall from (53) (with
$v=\mu_{\mathds{P}^{\ast}}=\widehat{\mu}$) that

$\eta_{x^{\ast}}\;=\;\left\lVert
x^{\ast}\right\rVert_{*}^{2}+\frac{\left\lVert
x^{\ast}\right\rVert_{*}}{\rho}\sqrt{\left\langle
x^{\ast},\,(\widehat{\Sigma}-\widehat{\mu}\widehat{\mu}^{\top})x^{\ast}\right\rangle}.$

On the one hand, if $\left\langle
x^{\ast},\,\big{(}\widehat{\Sigma}-\widehat{\mu}\widehat{\mu}^{\top}\big{)}x^{\ast}\right\rangle=0$,
we have $\eta_{x^{\ast}}=\left\lVert x^{\ast}\right\rVert_{*}^{2}$, in which
case, we conclude from assertion (ii-c) of Lemma 6.3 that $0\in
q(\eta_{x^{\ast}},\xi_{i},\widehat{\mu})$ for all $i=1,2,\ldots,N$. Moreover,
$\left\langle
x^{\ast},\,\big{(}\widehat{\Sigma}-\widehat{\mu}\widehat{\mu}^{\top}\big{)}x^{\ast}\right\rangle=0$
also implies that $\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle=0$, and hence $q_{i}^{\ast}=0$
for all $i=1,2,\ldots,N$. Thus, we have $q_{i}^{\ast}\in
q(\eta_{x^{\ast}},\xi_{i},\mu_{\mathds{P}^{\ast}})$ for all $i=1,2,\ldots,N$.

On the other hand, if $\left\langle
x^{\ast},\,\big{(}\widehat{\Sigma}-\widehat{\mu}\widehat{\mu}^{\top}\big{)}x^{\ast}\right\rangle\neq
0$, we have $\eta_{x^{\ast}}>\left\lVert x^{\ast}\right\rVert_{*}^{2}$, in
which case, we see

$q^{\ast}_{i}=\frac{\rho\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle}{\sqrt{\left\langle
x^{\ast},\,(\widehat{\Sigma}-\widehat{\mu}\widehat{\mu}^{\top})x^{\ast}\right\rangle}}\mathrm{bar}{q}_{x^{\ast}}=\frac{\left\lVert
x^{\ast}\right\rVert_{*}\left\langle
x^{\ast},\,\xi_{i}-\widehat{\mu}\right\rangle}{\eta_{x^{\ast}}-\left\lVert
x^{\ast}\right\rVert_{*}^{2}}\mathrm{bar}{q}_{x^{\ast}}\;\in\;q(\eta_{x^{\ast}},\xi_{i},\widehat{\mu})\quad\text{for
all }i=1,2,\ldots,N,$

where the last inclusion follows from assertion (ii-b) of Lemma 6.3 since
$\mathrm{bar}{q}_{x^{\ast}}\in\operatorname*{argmax}_{\left\lVert\mathrm{bar}{q}\right\rVert\leqslant
1}\ \left\langle x^{\ast},\,\mathrm{bar}{q}\right\rangle$. Finally, noting
that $\widehat{\mu}=\mu_{\mathds{P}^{\ast}}$, we have $q_{i}^{\ast}\in
q(\eta_{x^{\ast}},\xi_{i},\mu_{\mathds{P}^{\ast}})$ for all $i\leqslant N$.
Since
$\mathds{P}^{\ast}=\frac{1}{N}\sum_{i=1}^{N}\delta(\xi-\xi_{i}-q_{i}^{\ast})$,
we conclude from Lemma 6.4 that
$\mathds{P}^{\ast}\in\operatorname*{argmax}_{\mathds{Q}\in\mathcal{P}}\ {\rm
d}V_{x^{\ast}}(\mathds{P}^{\ast};\mathds{Q})$. Thus, $\mathds{P}^{\ast}$
satisfies the first order optimality conditions which are also sufficient.
Hence, in view of Remark 3.5, we conclude that the inclusion
$\mathds{P}^{\ast}\in\operatorname*{argmax}_{\mathds{P}\in\mathcal{P}}\
V(x^{\ast},\mathds{P})$ also holds. Therefore, $(x^{\ast},\mathds{P}^{\ast})$
is indeed a saddle point of (44). The proof is now complete. ∎

#### Proofs for the case of ellipsoidal support, $(\Xi=\mathcal{E}_{M})$.

###### Proof of Lemma 6.6.

Letting $q^{\prime}\coloneqq q+\xi$, the maximization problem (51) can be
equivalently written in terms of $q^{\prime}$ as:

$\sup_{\\{q^{\prime}:\left\langle
q^{\prime},\,Mq^{\prime}\right\rangle\leqslant 1\\}}\ \left\langle
q^{\prime},\,\big{(}xx^{\top}-\eta\mathbb{I}_{n}\big{)}q^{\prime}\right\rangle+2\left\langle
q^{\prime},\,\eta\xi-(xx^{\top})v\right\rangle+\big{(}(x^{\top}v)^{2}-\eta\left\lVert\xi\right\rVert_{2}^{2}\big{)}.$
(76)

Even though $M\succeq 0$, which makes the feasible set of (76) convex; it is
to be observed that the objective function is concave if and only if
$\eta\geqslant\left\lVert x\right\rVert_{2}^{2}$. Therefore, (76) is not a
convex problem in general. However, we observe that (76) is a quadratically
constrained quadratic program, that is strictly feasible. For such problems,
the _S-procedure_ guarantees an equivalent reformulation as a tractable SDP

$\begin{cases}\begin{aligned} &\min_{\lambda\in[0,+\infty),\
\theta\in\mathbb{R}}&&-\theta\\\
&\operatorname*{subject\;to}&&\begin{bmatrix}\eta\mathbb{I}_{n}-xx^{\top}+\lambda
M&(xx^{\top})v-\eta\xi\\\
(xx^{\top})v^{\top}-\eta\xi^{\top}&\eta\left\lVert\xi\right\rVert_{2}^{2}-(x^{\top}v)^{2}-\lambda-\theta\end{bmatrix}\succeq
0,\end{aligned}\end{cases}$ (77)

with the optimal values of (77) and (76) being equal. Moreover, if
$(\theta^{\ast},\lambda^{\ast})$ is a solution to the SDP (77), we also
conclude from the S-procedure that
$q^{\prime}=\big{(}\eta\mathbb{I}_{n}-xx^{\top}+\lambda^{\ast}M\big{)}^{-1}\big{(}\eta\xi-
xx^{\top}v\big{)}$, is an optimal solution to the maximization problem (76).
Consequently, for every $\eta\geqslant 0$, we conclude

$q(\eta,\xi)=-\xi+\big{(}\eta\mathbb{I}_{n}-xx^{\top}+\lambda^{\ast}M\big{)}^{-1}\big{(}\eta\xi-
xx^{\top}v\big{)},$

is a solution to the maximization problem (76). Substituting for each
$i=1,2,\ldots,N$, the maximization problem over $q_{i}$ in (50) with its
equivalent SDP (77), we immediately arrive at (56). Now, suppose
$(\eta^{\ast},\lambda^{\ast},\theta^{\ast})$ is a solution to the SDP (56).
Then, the pair $(\mathds{Q}_{x},\eta_{x})$ as given by (57) is a solution to
the FW problem (49) and its dual (50), respectively. This concludes the proof.
∎

## References

  * [1] D. P. Bertsekas, Control of uncertain systems with a set-membership description of the uncertainty., PhD thesis, Massachusetts Institute of Technology, 1971.
  * [2] D. Bertsimas, D. B. Brown, and C. Caramanis, Theory and applications of robust optimization, SIAM review, 53 (2011), pp. 464–501.
  * [3] J. Blanchet, L. Chen, and X. Y. Zhou, Distributionally robust mean-variance portfolio selection with Wasserstein distances, Management Science, 68 (2022), pp. 6382–6410.
  * [4] J. Blanchet, K. Murthy, and F. Zhang, Optimal transport-based distributionally robust optimization: Structural properties and iterative schemes, Mathematics of Operations Research, 47 (2022), pp. 1500–1529.
  * [5] S. P. Boyd and L. Vandenberghe, Convex optimization, Cambridge university press, 2004.
  * [6] J. Cai, J. Li, and T. Mao, Distributionally robust optimization under distorted expectations, Available at SSRN 3566708, (2020).
  * [7] Y. Chen and Y. Hu, Multivariate coherent risk measures induced by multivariate convex risk measures, Positivity, 24 (2020), pp. 711–727.
  * [8] K. L. Clarkson, Coresets, sparse greedy approximation, and the frank-wolfe algorithm, ACM Transactions on Algorithms (TALG), 6 (2010), pp. 1–30.
  * [9] E. Delage and Y. Ye, Distributionally robust optimization under moment uncertainty with application to data-driven problems, Operations research, 58 (2010), pp. 595–612.
  * [10] J. C. Duchi and H. Namkoong, Learning models with uniform performance via distributionally robust optimization, The Annals of Statistics, 49 (2021), pp. 1378–1406.
  * [11] E. Erdoğan and G. Iyengar, Ambiguous chance constrained problems and robust optimization, Mathematical Programming, 107 (2006), pp. 37–61.
  * [12] M. Frank and P. Wolfe, An algorithm for quadratic programming, Naval research logistics quarterly, 3 (1956), pp. 95–110.
  * [13] R. Gao, Finite-sample guarantees for Wasserstein distributionally robust optimization: Breaking the curse of dimensionality, Operations Research, (2022).
  * [14] R. Gao and A. Kleywegt, Distributionally robust stochastic optimization with Wasserstein distance, Mathematics of Operations Research, (2022).
  * [15] J. Goh and M. Sim, Distributionally robust optimization and its tractable approximations, Operations research, 58 (2010), pp. 902–917.
  * [16] E. Y. Hamedani, A. Jalilzadeh, N. S. Aybat, and U. V. Shanbhag, Iteration complexity of randomized primal-dual methods for convex-concave saddle point problems, arXiv preprint arXiv:1806.04118, 5 (2018).
  * [17] M. Jaggi, Revisiting frank-wolfe: Projection-free sparse convex optimization, in International Conference on Machine Learning, PMLR, 2013, pp. 427–435.
  * [18] R. Jiang and Y. Guan, Data-driven chance constrained stochastic program, Mathematical Programming, 158 (2016), pp. 291–327.
  * [19] C. Kent, J. Blanchet, and P. Glynn, Frank-wolfe methods in probability space, preprint available at arXiv:2105.05352, (2021).
  * [20] D. Kuhn, P. Mohajerin Esfahani, V. A. Nguyen, and S. A. S., Wasserstein distributionally robust optimization: Theory and applications in machine learning, in Operations research & management science in the age of analytics, Informs, 2019, pp. 130–166.
  * [21] N. Lanzetti, S. Bolognani, and F. Dörfler, First-order conditions for optimization in the Wasserstein space, arXiv preprint arXiv:2209.12197, (2022).
  * [22] L. Liu, Y. Zhang, Z. Yang, R. Babanezhad, and Z. Wang, Infinite-dimensional optimization for zero-sum games via variational transport, in International Conference on Machine Learning, PMLR, 2021, pp. 7033–7044.
  * [23] H. M. Markowitz, Portfolio selection, the journal of finance. 7 (1), 1952.
  * [24] P. Mohajerin Esfahani and D. Kuhn, Data-driven distributionally robust optimization using the Wasserstein metric: Performance guarantees and tractable reformulations, Mathematical Programming, 171 (2018), pp. 115–166.
  * [25] A. Nemirovski, Prox-method with rate of convergence o (1/t) for variational inequalities with lipschitz continuous monotone operators and smooth convex-concave saddle point problems, SIAM Journal on Optimization, 15 (2004), pp. 229–251.
  * [26] A. Nemirovskij and D. Yudin, Problem complexity and method efficiency in optimization, New York, (1983).
  * [27] Y. Nesterov, Introductory lectures on convex optimization: A basic course, vol. 87, Springer Science & Business Media, 2003.
  * [28] Y. Nesterov, Smooth minimization of non-smooth functions, Mathematical programming, 103 (2005), pp. 127–152.
  * [29] D. H. Nguyen and T. Sakurai, A particle-based algorithm for distributional optimization on$\backslash$textit $\\{$Constrained Domains$\\}$ via variational transport and mirror descent, arXiv preprint arXiv:2208.00587, (2022).
  * [30] V. A. Nguyen, S. S. Abadeh, D. Filipović, and D. Kuhn, Mean-covariance robust risk measurement, preprint available at arXiv:2112.09959, (2021).
  * [31] G. Pflug and D. Wozabal, Ambiguity in portfolio selection, Quantitative Finance, 7 (2007), pp. 435–442.
  * [32] K. Postek, D. den Hertog, and B. Melenberg, Computationally tractable counterparts of distributionally robust constraints on risk measures, SIAM Review, 58 (2016), pp. 603–650.
  * [33] H. Rahimian and S. Mehrotra, Distributionally robust optimization: A review, preprint available at arXiv:1908.05659, (2019).
  * [34] N. Rujeerapaiboon, D. Kuhn, and W. Wiesemann, Robust growth-optimal portfolios, Management Science, 62 (2016), pp. 2090–2109.
  * [35] H. Scarf, A min max solution of an inventory problem, Studies in the mathematical theory of inventory and production, (1958).
  * [36] S. Shafieezadeh-Abadeh, L. Aolaritei, F. Dörfler, and D. Kuhn, New perspectives on regularization and computation in optimal transport-based distributionally robust optimization, preprint available at arXiv:2303.03900, (2023).
  * [37] S. Shafieezadeh-Abadeh, P. Mohajerin Esfahani, and D. Kuhn, Distributionally robust logistic regression, Advances in Neural Information Processing Systems, 28 (2015).
  * [38] J. E. Smith and R. L. Winkler, The optimizer’s curse: Skepticism and postdecision surprise in decision analysis, Management Science, 52 (2006), pp. 311–322.
  * [39] H. Song, X. Zeng, Y. Chen, and Y. Hu, Multivariate shortfall and divergence risk statistics, Entropy, 21 (2019), p. 1031.
  * [40] F. Uhlig, A recurring theorem about pairs of quadratic forms and extensions: A survey, Linear algebra and its applications, 25 (1979), pp. 219–237.
  * [41] J. Wang, R. Gao, and Y. Xie, Sinkhorn distributionally robust optimization, preprint available at arXiv:2109.11926, (2021).
  * [42] W. Wiesemann, D. Kuhn, and M. Sim, Distributionally robust convex optimization, Operations Research, 62 (2014), pp. 1358–1376.
  * [43] J. Zhen, D. Kuhn, and W. Wiesemann, Mathematical foundations of robust and distributionally robust optimization, preprint available at arXiv:2105.00760, (2021).
  * [44] S. Zymler, D. Kuhn, and B. Rustem, Worst-case value at risk of nonlinear portfolios, Management Science, 59 (2013), pp. 172–188.


# Demystifying Fraudulent Transactions and Illicit Nodes
in the Bitcoin Network for Financial Forensics

Youssef Elmougy  Georgia Institute of TechnologyAtlantaGA 30332USA and  Ling
Liu  Georgia Institute of TechnologyAtlantaGA 30332USA

(2023)

###### Abstract.

Blockchain provides the unique and accountable channel for financial forensics
by mining its open and immutable transaction data. A recent surge has been
witnessed by training machine learning models with cryptocurrency transaction
data for anomaly detection, such as money laundering and other fraudulent
activities. This paper presents a holistic applied data science approach to
fraud detection in the Bitcoin network with two original contributions. First,
we contribute the Elliptic++ dataset, which extends the Elliptic transaction
dataset to include over $822k$ Bitcoin wallet addresses (nodes), each with
$56$ features, and $1.27M$ temporal interactions. This enables both the
detection of fraudulent transactions and the detection of illicit addresses
(actors) in the Bitcoin network by leveraging four types of graph data: (i)
the transaction-to-transaction graph, representing the money flow in the
Bitcoin network, (ii) the address-to-address interaction graph, capturing the
types of transaction flows between Bitcoin addresses, (iii) the address-
transaction graph, representing the bi-directional money flow between
addresses and transactions (BTC flow from input address to one or more
transactions and BTC flow from a transaction to one or more output addresses),
and (iv) the user entity graph, capturing clusters of Bitcoin addresses
representing unique Bitcoin users. Second, we perform fraud detection tasks on
all four graphs by using diverse machine learning algorithms. We show that
adding enhanced features from the address-to-address and the address-
transaction graphs not only assists in effectively detecting both illicit
transactions and illicit addresses, but also assists in gaining in-depth
understanding of the root cause of money laundering vulnerabilities in
cryptocurrency transactions and the strategies for fraud detection and
prevention. The Elliptic++ dataset is released at https://www.github.com/git-
disl/EllipticPlusPlus.

Blockchain, Anomaly Detection, Financial Forensics

††journalyear: 2023††copyright: acmlicensed††conference: Proceedings of the
29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining; August
6–10, 2023; Long Beach, CA, USA††booktitle: Proceedings of the 29th ACM SIGKDD
Conference on Knowledge Discovery and Data Mining (KDD ’23), August 6–10,
2023, Long Beach, CA, USA††price: 15.00††doi: 10.1145/3580305.3599803††isbn:
979-8-4007-0103-0/23/08††ccs: Security and privacy Intrusion/anomaly detection
and malware mitigation††ccs: Applied computing Network forensics††ccs:
Computing methodologies Machine learning

##  1\. Introduction

The emergence of cryptocurrency, initiated by Bitcoin (Nakamoto, 2008), has
kindled an adoption of a new exchange system in which financial transactions
can be completed without an intermediary. This popularity has been perceived
as a catalyst for the integration of cryptocurrencies into the payment systems
of traditional financial institutions, enabling processing of exchanges
between fiat money and cryptocurrency. To allow for immense volumes of such
exchanges, financial institutions must provide rigid security against high
risk transactions from fraudulent activities and assure compliance with anti-
money laundering (AML) regulations. Although machine learning (ML) models have
become a popular tool for anomaly detection and risk assessment of
cryptocurrency transactions in recent years, we argue that fraud detection
models trained for financial forensics should revolve around two goals: (i)
prioritizing higher recall with a (reasonable) trade-off on precision, since
the penalty of classifying an illicit transaction/account as licit far
outweighs that of the reverse, and (ii) allowing explainability (and
derivation of proof) on the risk of transactions/accounts.

Bitcoin (Nakamoto, 2008) is the most widely used cryptocurrency. Analyzing its
blockchain will provide a basis of reference. The Elliptic dataset (Weber et
al., 2019) is the largest labelled Bitcoin transaction data publicly
available. The dataset consists of over $203k$ transactions labelled illicit,
licit, and unknown. It provides a good entry into fraudulent transaction
analysis. However, the Elliptic dataset (Weber et al., 2019) consists of only
Bitcoin transactions, without features of the addresses involved and the
different interactions between pairs of addresses. Hence, the forensic
analysis using the Elliptic dataset suffers from a prominent downfall: when a
model predicts an illicit transaction, the addresses responsible cannot be
clearly identified since a transaction may be associated with several input
and output addresses.

The first contribution of this paper is the Elliptic++ dataset, which extends
the Elliptic dataset to include all the Bitcoin wallet addresses (actors) and
their temporal interactions associated to the transactions in the Elliptic
dataset. Hence, forensics performed using the Elliptic++ dataset can identify
fraudulent transactions and dishonest actors in the Bitcoin network and will
also allow explainability as to why a wallet address associated with a
transaction is illusive and dishonest. The construction of the Elliptic++
dataset contributes a novel way in collecting and visualizing Blockchain data,
using wallet addresses as the center of a risk detection model. We collect
Blockchain data associated with the Elliptic dataset (transactions). We first
augment each transaction in the transactions dataset with $17$ additional
features, then we crawl the Blockchain to create the Elliptic++ dataset,
consisting of the feature-enhanced transactions dataset and the actors (wallet
addresses) dataset. The actors dataset includes over $822k$ labelled wallet
addresses, each described with 56 features, and over $1.27M$ temporal
occurrences (interactions) across the same time steps (as those recorded in
the Elliptic dataset). With our Elliptic++ dataset, one can perform anomaly
detection of fraudulent activities, such as illicit transactions and
fraudulent actors. We also include four types of graphs: the Money Flow
Transaction Graph, the Actor Interaction Graph, the Address-Transaction Graph,
and the User Entity Graph. These graphs contribute to both mining and
visualization of the connections of transactions and the interactions among
wallet addresses through their transactions.

The second contribution of the paper is performing fraud detection using the
Elliptic++ dataset and the four graph representations by combining diverse ML
algorithms and feature optimizations. We observe that Random Forest (RF) with
feature refinement offers the best-performing model: on the transactions
dataset, it achieves $98.6\%$ precision and $72.7\%$ recall compared to
$97.5\%$ precision and $71.9\%$ recall when using RF without feature
refinement; on the actors dataset, RF with feature refinement achieves
$92.1\%$ precision and $80.2\%$ recall, compared to $91.1\%$ precision and
$78.9\%$ recall when using RF without feature refinement. Furthermore, the
fraud detection using the Elliptic++ dataset allows for in-depth understanding
of the root cause of fraudulent activities in cryptocurrency transactions
through semantic and statistical explainability, shining light on the
strategies for fraud detection and prevention.

##  2\. Related Work

Since the introduction of the Elliptic dataset in 2019 by Weber et al. (Weber
et al., 2019), there have been numerous efforts on data labelling and anomaly
detection using ML models. Lorenz et al. (Lorenz et al., 2020) assumed minimal
access to labels, and proposes an active learning solution by leveraging a
smaller subset of the available labels. Oliveira et al. (Oliveira et al.,
2021) proposed GuiltyWalker, a detection method that computes new features
based on the structure of a transaction-to-transction graph and the distance
to known illicit transactions. Alarab et al. (Alarab et al., 2020) presented a
comparative analysis of the Elliptic dataset using different supervised
learning methods. Loa et al. (Loa et al., 2022) proposed Inspection-L, a graph
neural network framework for anomaly detection, and similarly, Alarab et al.
(Alarab and Prakoonwit, 2022) proposed a graph-based LSTM with a graph
convolutional network to detect illicit transactions.

More generally, there is increasing interest in AML in the context of
financial transactions and cryptocurrency networks, such as Bitcoin or
Ethereum. Combinatorial optimization methods for identifying transactions from
graphs, including statistical deviation and dense subgraph discovery methods,
have been explored in (Sun et al., 2022; Chen et al., 2023). The lack of
labelled data and the imbalanced data are two major challenges for fraud
detection when using supervised learning (Bartoletti et al., 2018; Hu et al.,
2019; Monamo et al., 2016b) or unsupervised learning (Monamo et al., 2016a, b;
Pham and Lee, 2016a, b; Hirshman et al., 2013). Some efforts have also focused
on de-anonymizing mixed transactions by Bitcoin-dedicated graph-based
approaches (Biryukov et al., 2014; Koshy et al., 2014; Biryukov and
Tikhomirov, 2019; Wu et al., 2021a). Regarding Bitcoin account profiling,
Michalski et al. (R. Michalski and Macek, 2020) built a small dataset of
$9,000$ addresses and applied supervised learning to characterize nodes in the
Blockchain as miner or exchange, indicating the need of countermeasures for
preserving the desired level of anonymity. To the best of our knowledge, our
Elliptic++ dataset is the largest public Bitcoin account dataset with
$822,942$ addresses.

Existing works on Ethereum account profiling and phishing account detection
exclusively focus on graph representation learning methods (Sihao Hu and Liu,
2023a, b). For Ethereum account profiling, (Shen et al., 2021) and (Zhou et
al., 2022) applied either Graph Convolution Network (GCN) (Kipf and Welling,
2016) or a hierarchical graph attention encoder (HGATE) to infer the identity
of Ethereum accounts based on learning latent features using node-embedding
and subgraph-embeddings. TTAGNN (Li et al., 2022) generate node embedding by
combining LSTM encoder and Graph Attention Network (GAT) (Veličković et al.,
2017). For detecting phishing accounts, Trans2Vec (Wu et al., 2020) and its
variants (Lin et al., 2020a, b) utilize a graph based random walk algorithm on
transaction time and amount information. The cascade method (Chen et al.,
2020) leverages statistical feature extraction and a lightGBM-based ensemble
algorithm. It is worth to note that given the difference in fundamental
settings (UTXO and account models), it is not straightforward to apply the
existing graph representation learning models developed for profiling Ethereum
accounts to profiling Bitcoin accounts on the Bitcoin network.

Compared to the literature, this paper presents novel contributions from two
perspectives. First, it describes and makes publicly available a labelled
dataset with Bitcoin blockchain transactions and wallet addresses. The main
benefit of this dataset is that it allows more accurate fraud detection models
and algorithms to be developed. Second, it uses the dataset to showcase the
detection of illicit blockchain transactions, illicit actors, and the risks of
de-anonymizing users based on address clustering. For this, it utilizes a
number of baseline machine learning models.

Table 1. Data structure for an example transaction node in the transactions
dataset: (1) features, row of all $183$ feature values for txId, (2) edgelist,
all incoming and outgoing edges involving txId, and (3) classes, the class
label for txId. txs_features.csv
---
txId | Time step | LF_1 | $\cdots$ | LF_93 | AF_1 | $\cdots$ | AF_72 | TXS_in | $\cdots$ | BTC_out_total
272145560 | 24 | -0.155493 | $\cdots$ | 1.135279 | -0.159681 | $\cdots$ | 1.521399 | 1 | $\cdots$ | 2.77279994
| txs_edgelist.csv |  | txs_classes.csv |  |  |  |  |
| txId1 | txId2 |  | txId | class |  |  |  |  |
| 272145560 | 296926618 |  | 272145560 | 1 |  |  |  |  |
| 272145560 | 272145556 |  |  |  |  |  |  |  |
| 299475624 | 272145560 |  |  |  |  |  |  |  |

##  3\. The Elliptic++ Dataset

The Elliptic++ dataset consists of $203k$ Bitcoin transactions and $822k$
wallet addresses. It leverages elements from the Elliptic
dataset111www.kaggle.com/datasets/ellipticco/elliptic-data-set (Weber et al.,
2019), a published dataset deanonymizing $99.5\%$ of Elliptic transaction
data222www.kaggle.com/datasets/alexbenzik/deanonymized-995-pct-of-elliptic-
transactions, and the Bitcoin addresses dataset obtained by using our Bitcoin
Blockchain333www.blockchain.com scraping pipeline. A detailed description of
the data collection pipeline is included in the Appendix.

###  3.1. Transactions Dataset

The transactions dataset consists of a time-series graph with $49$ distinct
time steps, $203,769$ transactions (nodes), and $234,355$ directed edges
representing the payment flows. Each transaction node is labelled as illicit,
licit, or unknown; with $2\%$ ($4,545$) labelled as class-$1$ (illicit),
$21\%$ ($42,019$) as class-$2$ (licit), and the remaining transactions are
unknown with regard to licit/illicit, hence labelled as class-$3$. Three csv
files are used, as shown in Table 1. Each transaction node has an entry in
txs_features.csv, with numerical data for $183$ transaction features, and an
entry in txs_classes.csv, representing its class label ($1$: illicit, $2$:
licit, $3$: unknown). Each edge has an entry in txs_edgelist.csv (indexed by
two transaction IDs), representing money flow from one transaction to another.
Among the $183$ node features, $166$ features are inherited from the Elliptic
dataset, i.e., the time step, $93$ local features, representing local
information about the transaction, and $72$ aggregate features, obtained by
aggregating transaction information one-hop forward/backward. The remaining
$17$ node features are gathered by our Elliptic++ data collection pipeline
(with the exception of the $0.5\%$ of transactions that were not deanonymized)
as augmented features and are shown in Table 2. Figure 1 shows the
distribution of transactions across the three classes in each of the 49 time
steps.

Table 2. Transactions dataset augmented features. Feature |  Description
---|---
$BTC_{in}$ |  Total BTC incoming
$BTC_{out}$ |  Total BTC outgoing
each has 5 values: |  total, min, max, mean, median
$Txs_{in}$ |  Number of incoming transactions
$Txs_{out}$ |  Number of outgoing transactions
$Addr_{in}$ |  Number of input addresses
$Addr_{out}$ |  Number of output addresses
$BTC_{total}$ |  Total BTC transacted
$Fees$ |  Total fees in BTC
$Size$ |  Total transaction size
|  single value
Figure 1. Number of transactions by time step.

Table 3. Actors (wallet addresses) dataset features. Feature |  Description
---|---
Transaction related: |
$BTC_{transacted}$ |  Total BTC transacted (sent+received)
$BTC_{sent}$ |  Total BTC sent
$BTC_{received}$ |  Total BTC received
$Fees$ |  Total fees in BTC
$Fees_{share}$ |  Total fees as share of BTC transacted
Time related: |
$Blocks_{txs}$ |  Number of blocks between transactions
$Blocks_{input}$ |  Number of blocks between being an input address
$Blocks_{output}$ |  Number of blocks between being an output address
$Addr\;interactions$ |  Number of interactions among addresses
each has 5 values: |  total, min, max, mean, median
$Class$ |  class label: {illicit, licit, unknown}
Transaction related: |
$Txs_{total}$ |  Total number of blockchain transactions
$Txs_{input}$ |  Total number of dataset transactions as input address
$Txs_{output}$ |  Total number of dataset transactions as output address
Time related: |
$Timesteps$ |  Number of time steps transacting in
$Lifetime$ |  Lifetime in blocks
$Block_{first}$ |  Block height first transacted in
$Block_{last}$ |  Block height last transacted in
$Block_{first\;sent}$ |  Block height first sent in
$Block_{first\;receive}$ |  Block height first received in
$Repeat\;interactions$ |  Number of addresses transacted with multiple times
|  single value
Table 4. Data structure for an example address in the actors dataset: (1)
features, row of $56$ feature values for address, (2) classes, the class label
for address, (3) AddrAddr, all edges involving address in the actor
interaction graph, (4) AddrTx, all edges as involving address as the input
address in the address-transaction graph, and similarly (5) TxAddr, as the
output address.

wallets_features.csv address time step txs_input $\cdots$ lifetime_blocks
$\cdots$ Addr_interactions_median 39sfuA8pY4UfybgEZi7uvA13jkGzZpsg5K 23 420
$\cdots$ 18145 $\cdots$ 1 AddrAddr_edgelist.csv wallets_classes.csv
input_address output_address address class 39sfuA8pY4UfybgEZi7uvA13jkGzZpsg5K
1ML…kTL 39sf…sg5K 1 AddrTx_edgelist.csv TxAddr_edgelist.csv input_address txId
txId output_address 39sfuA8pY4UfybgEZi7uvA13jkGzZpsg5K 272145560 322554634
39sfuA8pY4UfybgEZi7uvA13jkGzZpsg5K

Figure 2. Number of wallet addresses by time step.

###  3.2. Actors (Wallet Addresses) Dataset

The actors (wallet addresses) dataset is a graph network of $822,942$ wallet
addresses, each with $56$ features as shown in Table 3. Five csv files are
used, as shown in Table 4. Each address has an entry in wallets_features.csv,
with numerical data for the time step and $56$ address features listed in
Table 3 for each transaction it was involved in, and an entry in
wallets_classes.csv, representing its class label ($1$: illicit, $2$: licit,
$3$: unknown). A wallet address is labelled illicit if it has at least $1$
edge with an illicit transaction, otherwise it is labelled licit if the ratio
of its total unknown transactions (edges) to its total licit transactions
(edges) is $>3.7$ or unknown if $\leq 3.7$. The ratio ”$3.7$” is calculated
using the total ratio of unknown transactions to licit transactions in the
transactions dataset. We also create AddrAddr_edgelist.csv to record the
pairwise interactions of input and output addresses through Bitcoin
transactions. Each entry represents the input address and output address
relationship of one transaction. If there are multiple transactions between a
pair of addresses, then there are multiple entries in this table.
Additionally, we create AddrTx_edgelist.csv, where each entry represents the
relationship between an input address and a transaction, and
TxAddr_edgelist.csv, with each entry representing a directed connection
between a transaction and an output address. With these data structures, the
Elliptic++ dataset can be used to build the address-to-address graph (Section
3.3.2), and the address-transaction graph (Section 3.3.3), in addition to the
transaction-to-transaction money flow graph (Section 3.3.1).

The distribution of address classes are $2\%$ ($14,266$) class-$1$ (illicit),
$31\%$ ($251,088$) class-$2$ (licit), and the remaining are unknown
(class-$3$). When populated using temporal information provided by the time
steps in the transactions dataset, we obtain $1,268,260$ wallet address
occurrences across all time steps, including $2\%$ ($28,601$) illicit
addresses, $27\%$ ($338,871$) licit addresses, and $71\%$ ($900,788$) unknown
addresses, as shown in Figure 2.

###  3.3. Graph Visualization

In this section, we provide a detailed explanation with visualization of the
Elliptic++ dataset using four types of graphs: Money Flow Transaction Graph,
Actor Interaction Graph, Address-Transaction Graph, and User Entity Graph.
Each graph has its own unique importance.

  * •

The Money Flow Transaction Graph shows BTC flow from one transaction to the
next, allowing exploration of the spatial and temporal patterns surrounding a
given transaction.

  * •

The Actor Interaction Graph shows the pairwise interactions among input and
output addresses of transactions, showing the density of the k-hop
neighborhoods of wallet addresses.

  * •

The Address-Transaction Graph is a heterogenous graph showing flow of BTC
across transactions and addresses, allowing an evaluation of purposes of a
transaction and the relationships among addresses of the same transaction.

  * •

The User Entity Graph is an address cluster graph that allows for potential
linking of addresses controlled by a specific user, which further de-
anonymizes their identity and purpose.

####  3.3.1. Money Flow Transaction Graph

This is a directed graph where nodes represent transactions and edges
represent directed BTC flows from one transaction to the next. Figure 3
visualizes the distribution of all transactions in time step $32$. We choose
three transactions (one per class) representing the unknown (yellow), illicit
(blue), and licit (red) classes, and display sub-graphs of their four-hop
neighbourhoods as shown in the left, middle, and right of Figure 3. All
neighbour nodes are shown, though for visual clarity, some edges are
abbreviated with dotted arrows signifying that a particular node has two (or
more) outgoing edges of the same pattern as the graph is traversed further.
This displays the potential utility of exploring the spatial and temporal
patterns surrounding a given transaction.

It is important to note that some time steps produce sparse transaction
graphs, e.g. time step $14$, while others produce dense transaction graphs,
e.g. time step $32$. We provide a comparison in the Appendix (see Figure 14).
This difference in graph density drastically affects the node neighborhood
patterns, with some time steps creating shallow, wide money flow transaction
graphs, while other time steps creating deep, narrow money flow transaction
graphs. Moreover, although there are only $2\%$ illicit transactions within
the dataset, they are evidently spread out across each time step and hence the
ML model trained for anomaly detection over the earlier sequence of time steps
can be leveraged to perform forensics on the later part of the sequence of
time steps.

Figure 3. Money flow transaction graphs for selected unknown (left), illicit
(middle), and licit (right) transactions in time step $32$ (top shows
distribution of TS $32$ transactions).

####  3.3.2. Actor Interaction Graph

This is a directed graph where nodes represent addresses and edges represent
pairwise interactions among input and output addresses of transactions. Figure
4 visualizes the distribution of all addresses in time step $32$. Unlike
Figure 3 where transaction interactions are captured in terms of money flows,
Figure 4 displays the interactions at the address level as opposed to
transaction level. The grey area is due to the density of edges. Here, the
density of the address graphs at a given time step impact the density of the
$k$-hop neighborhood of a wallet address node. We provide a comparison of
actor interaction graphs at time steps $14$ and $32$ in the Appendix (see
Figure 15).

Figure 4. Distribution of wallet addresses in time step $32$.

####  3.3.3. Address-Transaction Graph

This is a heterogeneous directed graph supported by our Elliptic++ dataset. It
has two types of nodes, the transaction node (circle) and the address node
(square), and two types of edges, the sender-to-transaction edges, each of
which represents the BTC flow from an input address (sender) to a transaction,
and the transaction-to-receiver edges, each of which represents the BTC flow
from a transaction to an output address. Figure 5 shows an address-transaction
graph of selected transactions and addresses anchored at a given actor (i.e.,
the Illicit Actor $13$) in time step $32$. The flow and quantity of input and
output addresses provide information regarding the purposes of a transaction
and the relationships among addresses connected by the same transaction. We
provide a visual comparison of the distributions of all transactions and
addresses at both time steps in the Appendix (see Figure 16).

Figure 5. An address-transaction graph for selected nodes in time step $32$
featuring Illicit Actor $13$ at the root.

Figure 6. A user entity graph created by grouping transactions with $\geq 1$
common element in each set into unique users and adding edges across users if
a path existed between groups of transactions in the original graph.

####  3.3.4. User Entity Graph

This graph is generated by address clustering analysis rather than direct
construction using the Elliptic++ dataset. Clustering addresses involves
taking the set of all addresses $\mathscr{A}$ as training data to build a
clustering model which creates a set of disjoint subsets
$\mathcal{U}=\left\\{U_{1},U_{2},...,U_{n}\right\\}$ (where
$U_{1},U_{2},...,U_{n}$ represents $n$ clusters of addresses in $\mathscr{A}$)
such that $\bigcup_{i=1}^{n}C_{i}=\mathscr{A}$. By treating each cluster (sub-
graph) as one user, we construct a user-entity graph of $n$ nodes, where each
node represents a user in the Bitcoin network and the edges represent
interactions between unique users through Blockchain transactions. Address
clustering is performed in four steps. First, for each transaction, the set of
input addresses associated with the transaction is collected. Second,
transactions whose address sets are overlapping with one or more addresses are
grouped into a unique user. Third, the address-transaction graph is searched
to highlight all transactions corresponding to each user. Finally, the
highlighted address-transaction graph is converted into a user entity graph.
Figure 6 shows the resulting user graph from the same subset of addresses and
transactions in Figure 5. Refer to Section A.4 in the Appendix (Figure 17) for
a detailed explanation and visualization of the clustering process. Bitcoin
address clustering is a hot research topic (Androulaki et al., 2013; Reid and
Harrigan, 2013; Meiklejohn et al., 2013; Zhang et al., 2020) due to its
potential of linking addresses controlled by a specific user, effectively
deanonymizing the identity of those users.

Table 5. The distribution of the number of illicit actors (that appear in $1$,
$2-4$, and $\geq 5$ time steps) by time step.

Time step 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 illicit actor appears in
$1$ time step 68 69 42 186 36 8 233 116 384 26 185 47 342 74 193 174 118
illicit actor appears in $2-4$ time steps 5 1 3 15 2 1 28 7 21 11 7 2 4 0 6 8
8 illicit actor appears in $\geq 5$ time steps 0 0 0 0 2 2 5 4 3 3 2 1 2 0 2 1
6

Time step 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 illicit actor
appears in $1$ time step 77 122 405 612 692 376 532 1096 704 43 97 372 130 131
759 270 447 illicit actor appears in $2-4$ time steps 4 5 20 16 18 17 40 9 21
1 7 52 11 24 23 7 11 illicit actor appears in $\geq 5$ time steps 2 4 5 4 5 3
12 1 9 2 1 9 4 6 8 5 2

Time step 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 illicit actor appears
in $1$ time step 427 588 428 180 127 436 168 395 93 277 23 505 193 370 631
illicit actor appears in $2-4$ time steps 9 5 5 9 0 14 8 12 11 6 9 4 11 17 20
illicit actor appears in $\geq 5$ time steps 6 4 7 5 2 3 6 3 1 1 1 0 0 1 1

##  4\. Fraud Detection Methodology

###  4.1. Dataset Preprocessing

We used an effective $70/30$ train-test split with respect to time steps for
both the transactions and actors datasets, with time steps $1$ to $34$ for
training and time steps $35$ to $49$ for testing. Figure 7 graphically shows
the distribution of data points (top for transactions, bottom for actors) of
all three classes by time step for both the training and testing sets. We
provide a detailed distribution of the number of transactions and addresses
for all three classes in each of the $49$ steps in the Appendix (Tables 12 and
13 respectively). Due to the underlying class imbalance across illicit and
licit classes, normalization and standardization transformations are applied.
The augmented features in the transactions dataset and all features in the
actors dataset are transformed by scaling each feature using the MinMaxScaler
to the range $(0,1)$, reducing imbalance and assisting with model convergence
(Kramer, 2016).

Figure 7. The distribution of the number of transactions and addresses by time
step for training and testing sets.

(a) a (b) b

###  4.2. Machine Learning Models

Previous studies (Oliveira et al., 2021; Weber et al., 2019) indicate that
ensemble methods perform better than graph neural networks, hence the ML
models used for evaluation included Random Forest (RF) (Breiman, 2001),
Multilayer Perceptrons (MLP) (Bishop and Nasrabadi, 2006), Long Short-Term
Memory (LSTM) (Hochreiter and Schmidhuber, 1997), and Extreme Gradient
Boosting (XGB) (Chen and Guestrin, 2016). We also include Logistic Regression
(LR) (Hosmer Jr et al., 2013) as the baseline. LR is a single layer neural
network which estimates the probability of an event, such as licit or illicit,
based on independent variables. RF is an ensemble of classification trees
trained on samples with random subsets of features for each decision,
evaluating a final decision from averaging all decision trees. MLP is an
artificial neural network with at least three layers where data features are
fed into input neurons that assign probability vectors for classes as outputs.
The Scikit-learn python library was used for LR (default parameters with 1000
max iterations), RF (default parameters with 50 estimators), and MLP
(parameters: 1 hidden layer with 50 neurons, 500 epochs, Adam optimizer, 0.001
learning rate). LSTM is a recurrent neural network that has feedback
connections and is capable of learning long-term dependencies (sequences of
data as compared to single data points). The TensorFlow python library was
used for LSTM (hyper-parameters: sigmoid activation, Adam optimizer, 30
epochs, binary cross-entropy loss function, 15 embedding output dims). XGB is
a supervised learning algorithm which predicts variables by combining
estimates of prior models. The XGBoost python library was used for XGB
(default parameters with ”multi:softmax” objective and 2 classes).

###  4.3. Fraud Detection Evaluation Metrics

The metrics used to verify the models were Precision (ratio of correct
classifications), Recall (proportion of actual positive labels correctly
classified), F1 Score (harmonic mean of precision and recall), and Micro-Avg
F1 (Micro-F1) Score (ratio of correct classifications to total
classifications). In some cases to distinguish between classifiers with close
performance, the Matthews Correlation Coefficient (MCC) is used due to its
suitability for unbalanced datasets and its prior use on financial fraud and
cryptocurrency-related studies (Awoyemi et al., 2017; Zareapoor et al., 2015;
Zola et al., 2019; Agarwal et al., 2021). We provide the formal definition of
these metrics in Section A.2 of the Appendix. In addition, to gain deeper
understanding of the different ML models and their classification performance
for illicit transactions and illicit addresses, we conduct the following three
case studies: (i) EASY cases: all models classify an illicit transaction
correctly; (ii) HARD cases: all models classify an illicit transaction
incorrectly; and (iii) AVERAGE cases: some models failed to classify an
illicit transaction but $\geq 1$ models classified correctly.

##  5\. Results and Analysis

Figure 8. Trend comparison for selected features from the transactions (left)
and actors (right) datasets. Green highlight shows good correlation, red shows
unclear correlation.

###  5.1. Statistical Analysis of the Dataset

The building blocks of the Elliptic++ dataset are the transaction features and
address features, which directly impact the quality of information gained by
the models and quality of classification explainability into the root cause of
fraudulent activities. Figure 8 shows three chosen features for the
transactions (left) and actors (right) datasets, with feature values in y-axis
and time steps in x-axis. We conjecture that important dataset features will
show a reflective trend that clearly distinguishes between the illicit and
licit classes. Such features will provide a level of interpretation into the
risk assessment of a transaction or an actor. In Figure 8, the green curves of
the features in the top two rows show the trend of licit transactions (left)
and licit actors (right), which are distinctly different from the red curves
of illicit transactions (left) and dishonest actors (right). Conversely, some
features may not contribute to the detection of illicit transactions and
actors, such as the two features in the bottom row. For example, the curves
for the illicit and licit transactions in Local Feature $53$ can be clearly
differentiated through visual analysis, while Local Feature $15$ does not
display any visual clue on illicit v.s. licit transactions over all time
steps. Similar observations are found in the actors dataset.

We can further expand the statistical analysis on the behavioral trends of
actors by their features captured in our Elliptic++ dataset, e.g., life span,
number of transactions involved, and distribution of actors, which provide
additional level of explainability to both the dataset and the
classification/detection model performance for illicit/licit/unknown actors.
Figure 9 shows the timeline of $15$ illicit actors that transact in $\geq 5$
time steps. For instance, Illicit Actor 1 transacts in $15$ time steps, while
Illicit Actor 15 transacts in only $6$ time steps. A similar figure for
illicit actors existing in only $1$ time step ($14,007$ illicit actors) is
included in the Appendix (see Figure 19). Moreover, the number of involved
transactions within each time step varies across illicit actors as shown in
Figure 10 for the five selected actors. Table 5 (shown on the previous page)
provides the distribution of illicit actors across time steps categorized into
3 sets.

Figure 9. Timeline of illicit actors in $\geq 5$ time steps, each point
represents at least one illicit transaction involved in.

Figure 10. Number of transactions per time step for Illicit Actor $13$
(purple), $1$ (green), $5$ (orange), $14$ (Lblue), and $8$ (Dblue).

Regarding the Bitcoin users, clustering addresses using the previously
discussed four steps in Section 3.3.4 created $146,783$ user entities. Table 6
shows some relevant statistics. Each user controlled a varying number of
addresses, with $98.72\%$ of users controlling $\leq 10$ addresses, while only
$0.02\%$ of users controlled $\geq 1$K addresses.

Table 6. Statistics for Bitcoin users in the Elliptic++ Dataset. # Users | $146,783$
---|---
# Addresses per User: Min | $1$
# Addresses per User: Median | $1$
# Addresses per User: Mean | $2.73$
# Addresses per User: Max | $14,885$
% Users w/ $1-10$ Addresses | $98.72\%$
% Users w/ $11-1K$ Addresses | $1.26\%$
% Users w/ $1K-\max$ Addresses | $0.02\%$
Table 7. Illicit transactions results using individual/ensemble of classifiers. EC refers to classification on Elliptic dataset (Weber et al., 2019), TX is on our Elliptic++ transactions dataset. Model | Precision | Recall | F1 Score | Micro-F1
---|---|---|---|---
$\textrm{LR}^{\textrm{EC}}$ | 0.326 | 0.707 | 0.446 | 0.886
$\textrm{LR}^{\textrm{TX}}$ | 0.328 | 0.707 | 0.448 | 0.884
$\textrm{RF}^{\textrm{EC}}$ | 0.940 | 0.724 | 0.818 | 0.979
$\textrm{RF}^{\textrm{TX}}$ | 0.975 | 0.719 | 0.828 | 0.980
$\textrm{MLP}^{\textrm{EC}}$ | 0.476 | 0.673 | 0.558 | 0.931
$\textrm{MLP}^{\textrm{TX}}$ | 0.611 | 0.613 | 0.612 | 0.949
$\textrm{LSTM}^{\textrm{EC}}$ | 0.665 | 0.350 | 0.459 | 0.946
$\textrm{LSTM}^{\textrm{TX}}$ | 0.709 | 0.223 | 0.339 | 0.942
$\textrm{XGB}^{\textrm{EC}}$ | 0.812 | 0.717 | 0.761 | 0.971
$\textrm{XGB}^{\textrm{TX}}$ | 0.793 | 0.718 | 0.754 | 0.969
2 classifiers ensemble, selecting top 3 classifiers
$\textrm{RF+MLP}^{\textrm{EC}}$ | 0.987 | 0.624 | 0.765 | 0.975
$\textrm{RF+MLP}^{\textrm{TX}}$ | 0.989 | 0.635 | 0.773 | 0.975
$\textrm{RF+XGB}^{\textrm{EC}}$ | 0.960 | 0.704 | 0.812 | 0.979
$\textrm{RF+XGB}^{\textrm{TX}}$ | 0.977 | 0.706 | 0.820 | 0.979
$\textrm{MLP+XGB}^{\textrm{EC}}$ | 0.457 | 0.737 | 0.564 | 0.926
$\textrm{MLP+XGB}^{\textrm{TX}}$ | 0.974 | 0.596 | 0.739 | 0.972
3 classifiers ensemble, selecting top 3 classifiers
$\textrm{RF+MLP+XGB}^{\textrm{EC}}$ | 0.947 | 0.719 | 0.817 | 0.979
$\textrm{RF+MLP+XGB}^{\textrm{TX}}$ | 0.962 | 0.723 | 0.826 | 0.980
Table 8. Illicit actors results using individual/ensemble of classifiers. AR is classification on our Elliptic++ actors dataset. Model | Precision | Recall | F1 Score | Micro-F1
---|---|---|---|---
$\textrm{LR}^{\textrm{AR}}$ | 0.477 | 0.046 | 0.083 | 0.964
$\textrm{RF}^{\textrm{AR}}$ | 0.911 | 0.789 | 0.845 | 0.990
$\textrm{MLP}^{\textrm{AR}}$ | 0.708 | 0.502 | 0.587 | 0.974
$\textrm{LSTM}^{\textrm{AR}}$ | 0.922 | 0.033 | 0.064 | 0.965
$\textrm{XGB}^{\textrm{AR}}$ | 0.869 | 0.534 | 0.662 | 0.980
$2$ classifiers ensemble, selecting top $3$ classifiers
$\textrm{RF+MLP}^{\textrm{AR}}$ | 0.967 | 0.403 | 0.568 | 0.978
$\textrm{RF+XGB}^{\textrm{AR}}$ | 0.959 | 0.530 | 0.682 | 0.982
$\textrm{MLP+XGB}^{\textrm{AR}}$ | 0.929 | 0.324 | 0.481 | 0.975
$3$ classifiers ensemble, selecting top $3$ classifiers
$\textrm{RF+MLP+XGB}^{\textrm{AR}}$ | 0.933 | 0.572 | 0.709 | 0.983

###  5.2. Model Evaluation and Analysis

Table 9. Classification results on the testing dataset showing distributions of EASY, HARD, AVERAGE cases among time steps 35 to 49. Total of each case is $49$, $243$, and $791$ respectively. For the AVERAGE case, distributions are shown for cases where only $1$ model (all shown), only $2$ models (top 2 shown), only $3$ models (top 2 shown), and only $4$ models (top 1 shown) classified correctly. Time Step | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | TOTAL
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
EASY | 32 | 0 | 2 | 5 | 5 | 1 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 49
HARD | 4 | 0 | 10 | 7 | 4 | 28 | 6 | 36 | 22 | 20 | 4 | 1 | 21 | 27 | 53 | 243
| LR | 0 | 0 | 3 | 0 | 2 | 3 | 0 | 6 | 2 | 3 | 1 | 0 | 1 | 9 | 2 |
| RF | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
AVERAGE | MLP | 0 | 0 | 1 | 1 | 0 | 2 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 791
LSTM | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0
XGB | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0
RF,XGB | 4 | 0 | 0 | 1 | 2 | 1 | 17 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0
LR,MLP | 1 | 0 | 0 | 1 | 0 | 2 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0
RF,MLP,XGB | 5 | 6 | 0 | 8 | 3 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0
| LR,RF,XGB | 6 | 1 | 10 | 27 | 18 | 10 | 5 | 21 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| RF,MLP,XGB,LR | 124 | 24 | 12 | 57 | 45 | 55 | 81 | 159 | 0 | 1 | 0 | 1 | 0 | 0 | 0 |

Table 7 and Table 8 show the results of all models trained on the transactions
dataset and the actors dataset respectively. From Table 7, the results for the
transactions dataset in Elliptic++ (labelled TX) show an increase in
performance in most of the metrics for all of the models, compared to the
Elliptic dataset (labelled EC). This can be attributed to our addition of $17$
augmented features to each transaction, which in turn improves the
generalization performance and the explainability of both the transaction
dataset and the fraudulent transaction detection models. It is observed that
$RF^{TX}$ is the best-performing model (followed by $XGB^{TX}$ and $MLP^{TX}$)
with a precision of $97.5\%$ and recall of $71.9\%$. Although $RF^{TX}$ and
$RF^{EC}$ have comparable precision and recall performance, $RF^{TX}$ is
better as the MCC values are $0.83$ vs $0.81$. Table 7 also shows the results
of $2-$ and $3-$classifier ensembles by selecting the top $3$ models (RF, XGB,
MLP). The best performing $2-$ and $3-$classifier ensembles are those using
Elliptic++. In comparison, the $LR$, $MLP^{EC}$, and $LSTM$ models are
ineffective with $<50\%$ precision/recall (highlighted in red). Table 8 shows
the results for the actors dataset. It is observed that $RF^{AR}$ is the best-
performing model (followed by $XGB^{AR}$ and $MLP^{AR}$) with a precision of
$91.1\%$ and recall of $78.9\%$. Also, the best $2-$ and $3-$classifier
ensembles ($RF+XGB^{AR}$ and $RF+MLP+XGB^{AR}$) show increases in precision
($95.9\%$,$93.3\%$ vs $91.1\%$), but decreases in recall ($53.0\%$,$57.2\%$ vs
$78.9\%$), indicating the member models of $2-$ and $3-$classifier ensembles
are not complimentary and have high negative correlation (Wu et al., 2021b).
The $LR^{AR}$ and $LSTM^{AR}$ models are ineffective with extremely low recall
(highlighted in red).

###  5.3. EASY, HARD, and AVERAGE cases Analysis

To further understand the performance of RF models against other models, and
the performance results of their best performing $2-$ and $3-$classifier
ensembles, we analyze their performance in terms of the EASY, HARD, and
AVERAGE cases as defined in Section 4.3. Table 9 (shown on the next page)
provides a temporal split of the classification results across the test time
steps of 35 to 49 for the EASY case, HARD case, and AVERAGE case respectively.
It is important to note that AVERAGE cases present the opportunities for
further optimizations. For the AVERAGE cases (correct classification by $1\leq
x\leq 4$ models), all combinations are shown for each individual model, for
the $2/3$ models scenario we show top 2 combinations, and for the $4$ models
scenario we show top 1 combination. First, the case where the $4$ models RF,
MLP, XGB, and LR correctly classify the transaction accounts for $71\%$ of the
AVERAGE cases. Second, the cases where RF classifies incorrectly only make up
for $<1\%$ of the AVERAGE cases. This motivates us to focus on optimization of
the RF model with feature refinement.

Figure 11. Top $10$ and bottom $10$ features for the transactions dataset
(left) and actors dataset (right).

(a) a (b) b

###  5.4. Model Optimization by Feature Refinement

Given that the RF is the best performing model, we explore feature refinement
to further optimize RF. By examining the results from decision trees, we
combine feature importance, permutation feature importance, and drop column
feature importance to show the top $10$ and bottom $10$ features by importance
on both transactions dataset and actors dataset, as shown in Figure 11a for TX
and Figure 11b for AR. For the transactions dataset, the $17$ augmented
features produced a collective $12\%$ importance, with the transaction size
feature alone responsible for $4.1\%$. For the actors dataset, $35\%$ of the
features were responsible for $80\%$ of the importance, with the total address
interaction as the most important feature. Interestingly, a connection can be
made to the set of top and bottom $10$ features with the features highlighted
in Figure 8. It can be seen that there is a link from the green highlight to
the top $10$ features, and likewise with the red highlight and bottom $10$
features. This solidifies that features providing visual proof of the risk
attribute to a larger classification importance, and vice versa. The top and
bottom $2$ of each feature type in both datasets are included in the Appendix
Section A.5 for reference. Using this analysis, we run the best
$1-$/$2-$/$3-$classifiers ensembles with selected features instead of the full
set of features. Tables 10 and 11 show the model performance results for
transactions and wallet addresses (actors) respectively. Interestingly, the
feature refined models show an average improvement of $0.92\%$, $1.17\%$, and
$0.89\%$ for precision, recall, and F1 score respectively on the transactions
dataset, and similarly $1.07\%$, $3.1\%$, and $1.13\%$ on the actors dataset.

Table 10. Illicit transactions classification results using selected features, labelled as $\psi$, Micro-F1 denotes Micro-Avg F1. Model | Precision | Recall | F1 Score | Micro-F1
---|---|---|---|---
$\textrm{RF}^{\textrm{TX}}$ | $0.975$ | $0.719$ | $0.828$ | $0.980$
$\textrm{RF}^{\textrm{TX${}^{\psi}$}}$ | 0.986 | 0.727 | 0.836 | 0.981
$\textrm{RF+XGB}^{\textrm{TX}}$ | $0.977$ | $0.706$ | $0.820$ | $0.979$
$\textrm{RF+XGB}^{\textrm{TX${}^{\psi}$}}$ | 0.987 | 0.717 | 0.826 | 0.980
$\textrm{RF+MLP+XGB}^{\textrm{TX}}$ | $0.962$ | $0.723$ | $0.826$ | $0.980$
$\textrm{RF+MLP+XGB}^{\textrm{TX${}^{\psi}$}}$ | 0.968 | 0.729 | 0.834 | 0.980

The increase in recall is also evident in the RF trees voting. Figures 12a and
12b show the cumulative votes of $50$ RF trees for $9$ chosen
transactions/addresses before (left) and after (right) selecting important
features for both the transactions and actors datasets respectively. This
demonstrates a trend that when some non-contributing features are dropped,
those transactions/addresses that are close to the correct manifold in
classification will in turn be classified correctly by more trees, increasing
in the number of correct votes.

Figure 12. Cumulative votes for 50 RF trees for (a) chosen transactions and
(b) addresses before (left) and after (right) feature selection and
refinement.

(a) a (b) b

##  6\. Concluding Remarks

With the rapid growth of the cryptocurrency ecosystem, there is a growing
demand for robust financial forensics on the blockchain networks. This paper
makes three original contributions.

First, we collect and contribute the Elliptic++ dataset, combining over 203k
transactions and 822k addresses, and providing four graph representations
(Money Flow Transaction Graph, Actor Interaction Graph, Address-Transaction
Graph, User Entity Graph) that allow for mining and visualizations of
connections for anomaly detection. This enables the detection of both illicit
transactions and illicit accounts in Bitcoin networks.

Second, we leverage the four unique graph representations to showcase the
fraud detection of illicit transactions, illicit actors (wallet addresses),
and the risks of de-anonymization of users using clustering of addresses. We
demonstrate the utility of the Elliptic++ dataset for detecting fraudulent
transactions and illicit accounts using representative machine learning
approaches, including Random Forest, Logistic Regression, Multilayer
Perceptrons, LSTM, and Extreme Gradient Boosting. We analyze why Random Forest
(RF) is the best-performing model for fraud detection, achieving $97.5\%$
precision and $71.9\%$ recall on the transactions dataset, and $91.1\%$
precision and $78.9\%$ recall on the actors dataset. We also provide
comparative analysis of their performance and provide the explainability of
the ML algorithms through visualization of all four types of graphs. In
addition, we also provide explainability of the performance comparison through
detailed analysis on the time series of selected transaction features, and the
time series of account features over the time steps of the Elliptic++ dataset.

Third, to further improve the accuracy of the ML algorithms for detecting
fraudulent transactions and illicit accounts, we employ ensemble methods to
improve the generalization performance of individual ML algorithms. We study
ensemble learning with two and three member models, with detailed analysis on
the effectiveness of ensemble methods through EASY, HARD and AVERAGE cases.
Motivated by our ensemble learning analysis, we show that model training using
selective features instead of all extracted features of transactions and of
addresses can further improve RF precision and recall performance by $0.92\%$
and $1.17\%$ respectively for the transactions dataset, and $1.07\%$ and
$3.1\%$ respectively for the actors dataset. The combination of ensembles and
importance-based feature pruning not only demonstrates the utility of the
Elliptic++ dataset for fraud detection in Bitcoin network, but also showcases
the importance of root cause analysis of fraudulent activities through
semantic and statistical explainability of ML algorithms.

The Bitcoin blockchain is the first and the largest cryptocurrency network,
boasting as the most widely used cryptocurrency. We believe that the
methodology used for collecting the Elliptic++ dataset and the approach
developed to exhibit the utilities of this dataset for fraud detection in
Bitcoin network can be leveraged to analyze other types of currencies and
blockchain networks, including Monero, ZCash, and Ethereum, to name a few.
Moreover, the graph representations and the use of time series representations
of transaction/account features over the time steps provides guidelines for
developing financial forensics models that can be beneficial to other
blockchains with high performance and explainability.

The Elliptic++ dataset and its tutorials are made publicly available at
https://www.github.com/git-disl/EllipticPlusPlus. We conjecture that making
this dataset publicly available will enable the applied data science
researchers to conduct financial forensics on the Bitcoin cryptocurrency
network and develop more effective fraud detection models and algorithms.

Table 11. Illicit actors classification results using selected features, labelled as $\psi$ and compared with AR. Micro-F1 denotes Micro-Avg F1. Model | Precision | Recall | F1 Score | Micro-F1
---|---|---|---|---
$\textrm{RF}^{\textrm{AR}}$ | 0.911 | 0.789 | 0.845 | 0.990
$\textrm{RF}^{\textrm{AR${}^{\psi}$}}$ | 0.921 | 0.802 | 0.858 | 0.990
$\textrm{RF+XGB}^{\textrm{AR}}$ | 0.959 | 0.530 | 0.682 | 0.982
$\textrm{RF+XGB}^{\textrm{AR${}^{\psi}$}}$ | 0.967 | 0.543 | 0.686 | 0.982
$\textrm{RF+MLP+XGB}^{\textrm{AR}}$ | 0.933 | 0.572 | 0.709 | 0.983
$\textrm{RF+MLP+XGB}^{\textrm{AR${}^{\psi}$}}$ | 0.945 | 0.601 | 0.718 | 0.984

#### Acknowledgement

This research is partially sponsored by the NSF CISE grants 2302720 and
2038029, an IBM faculty award (002114), and a CISCO edge AI grant (001927).
Any opinions, findings, and conclusions or recommendations expressed in this
material are those of the author(s) and do not necessarily reflect the views
of the National Science Foundation or other funding agencies and companies
mentioned above.

## References

  * (1)
  * Agarwal et al. (2021) Rachit Agarwal, Shikhar Barve, and Sandeep Kumar Shukla. 2021\.  Detecting malicious accounts in permissionless blockchains using temporal graph properties.  _Applied Network Science_ 6, 1 (2021), 1–30.
  * Alarab and Prakoonwit (2022) Ismail Alarab and Simant Prakoonwit. 2022.  Graph-based lstm for anti-money laundering: Experimenting temporal graph convolutional network with bitcoin data.  _Neural Processing Letters_ (2022), 1–19.
  * Alarab et al. (2020) Ismail Alarab, Simant Prakoonwit, and Mohamed Ikbal Nacer. 2020\.  Comparative analysis using supervised learning methods for anti-money laundering in bitcoin. In _Proceedings of the 2020 5th International Conference on Machine Learning Technologies_. 11–17.
  * Androulaki et al. (2013) Elli Androulaki, Ghassan O Karame, Marc Roeschlin, Tobias Scherer, and Srdjan Capkun. 2013.  Evaluating user privacy in bitcoin. In _International conference on financial cryptography and data security_. Springer, 34–51.
  * Awoyemi et al. (2017) John O Awoyemi, Adebayo O Adetunmbi, and Samuel A Oluwadare. 2017\.  Credit card fraud detection using machine learning techniques: A comparative analysis. In _2017 international conference on computing networking and informatics (ICCNI)_. IEEE, 1–9.
  * Bartoletti et al. (2018) Massimo Bartoletti, Barbara Pes, and Sergio Serusi. 2018\.  Data mining for detecting bitcoin ponzi schemes. In _2018 Crypto Valley Conference on Blockchain Technology (CVCBT)_. IEEE, 75–84.
  * Biryukov et al. (2014) Alex Biryukov, Dmitry Khovratovich, and Ivan Pustogarov. 2014\.  Deanonymisation of clients in Bitcoin P2P network. In _Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security_. 15–29.
  * Biryukov and Tikhomirov (2019) Alex Biryukov and Sergei Tikhomirov. 2019.  Deanonymization and linkability of cryptocurrency transactions based on network analysis. In _2019 IEEE European symposium on security and privacy (EuroS &P)_. IEEE, 172–184.
  * Bishop and Nasrabadi (2006) Christopher M Bishop and Nasser M Nasrabadi. 2006.  _Pattern recognition and machine learning_. Vol. 4.  Springer.
  * Breiman (2001) Leo Breiman. 2001\.  Random forests.  _Machine learning_ 45, 1 (2001), 5–32.
  * Chen et al. (2023) Huiping Chen, Grigorios Loukides, Robert Gwadera, and Solon P Pissis. 2023.  Heavy Nodes in a Small Neighborhood: Algorithms and Applications. In _Proceedings of the 2023 SIAM International Conference on Data Mining (SDM)_. SIAM, 307–315.
  * Chen and Guestrin (2016) Tianqi Chen and Carlos Guestrin. 2016.  Xgboost: A scalable tree boosting system. In _Proceedings of the 22nd acm sigkdd international conference on knowledge discovery and data mining_. 785–794.
  * Chen et al. (2020) Weili Chen, Xiongfeng Guo, Zhiguang Chen, Zibin Zheng, and Yutong Lu. 2020.  Phishing Scam Detection on Ethereum: Towards Financial Security for Blockchain Ecosystem.. In _IJCAI_. 4506–4512.
  * Hirshman et al. (2013) Jason Hirshman, Yifei Huang, and Stephen Macke. 2013\.  Unsupervised approaches to detecting anomalous behavior in the bitcoin transaction network.  _Technical report, Stanford University_ (2013).
  * Hochreiter and Schmidhuber (1997) Sepp Hochreiter and Jürgen Schmidhuber. 1997.  Long short-term memory.  _Neural computation_ 9, 8 (1997), 1735–1780.
  * Hosmer Jr et al. (2013) David W Hosmer Jr, Stanley Lemeshow, and Rodney X Sturdivant. 2013\.  _Applied logistic regression_. Vol. 398.  John Wiley & Sons.
  * Hu et al. (2019) Yining Hu, Suranga Seneviratne, Kanchana Thilakarathna, Kensuke Fukuda, and Aruna Seneviratne. 2019\.  Characterizing and detecting money laundering activities on the bitcoin network.  _arXiv preprint arXiv:1912.12060_ (2019).
  * Kipf and Welling (2016) Thomas N Kipf and Max Welling. 2016.  Semi-supervised classification with graph convolutional networks.  _arXiv preprint arXiv:1609.02907_ (2016).
  * Koshy et al. (2014) Philip Koshy, Diana Koshy, and Patrick McDaniel. 2014\.  An analysis of anonymity in bitcoin using p2p network traffic. In _International Conference on Financial Cryptography and Data Security_. Springer, 469–485.
  * Kramer (2016) Oliver Kramer. 2016\.  _Machine learning for evolution strategies_. Vol. 20.  Springer.
  * Li et al. (2022) Sijia Li, Gaopeng Gou, Chang Liu, Chengshang Hou, Zhenzhen Li, and Gang Xiong. 2022\.  TTAGN: Temporal Transaction Aggregation Graph Network for Ethereum Phishing Scams Detection. In _Proceedings of the ACM Web Conference 2022_. 661–669.
  * Lin et al. (2020a) Dan Lin, Jiajing Wu, Qi Yuan, and Zibin Zheng. 2020a.  Modeling and understanding ethereum transaction records via a complex network approach.  _IEEE Transactions on Circuits and Systems II: Express Briefs_ 67, 11 (2020), 2737–2741.
  * Lin et al. (2020b) Dan Lin, Jiajing Wu, Qi Yuan, and Zibin Zheng. 2020b.  T-edge: Temporal weighted multidigraph embedding for ethereum transaction network analysis.  _Frontiers in Physics_ 8 (2020), 204.
  * Loa et al. (2022) Wai Weng Loa, Gayan K Kulatillekea, Mohanad Sarhana, Siamak Layeghya, and Marius Portmanna. 2022\.  Inspection-L: Self-Supervised GNN Node Embeddings for Money Laundering Detection in Bitcoin.  (2022).
  * Lorenz et al. (2020) Joana Lorenz, Maria Inês Silva, David Aparício, João Tiago Ascensão, and Pedro Bizarro. 2020.  Machine learning methods to detect money laundering in the bitcoin blockchain in the presence of label scarcity. In _Proceedings of the First ACM International Conference on AI in Finance_. 1–8.
  * Meiklejohn et al. (2013) Sarah Meiklejohn, Marjori Pomarole, Grant Jordan, Kirill Levchenko, Damon McCoy, Geoffrey M Voelker, and Stefan Savage. 2013\.  A fistful of bitcoins: characterizing payments among men with no names. In _Proceedings of the 2013 conference on Internet measurement conference_. 127–140.
  * Monamo et al. (2016a) Patrick Monamo, Vukosi Marivate, and Bheki Twala. 2016a.  Unsupervised learning for robust Bitcoin fraud detection. In _2016 Information Security for South Africa (ISSA)_. IEEE, 129–134.
  * Monamo et al. (2016b) Patrick M Monamo, Vukosi Marivate, and Bhesipho Twala. 2016b.  A multifaceted approach to Bitcoin fraud detection: Global and local outliers. In _2016 15th IEEE International Conference on Machine Learning and Applications (ICMLA)_. IEEE, 188–194.
  * Nakamoto (2008) Satoshi Nakamoto. 2008\.  Bitcoin: A peer-to-peer electronic cash system.  _Decentralized Business Review_ (2008), 21260.
  * Oliveira et al. (2021) Catarina Oliveira, João Torres, Maria Inês Silva, David Aparício, João Tiago Ascensão, and Pedro Bizarro. 2021\.  GuiltyWalker: Distance to illicit nodes in the Bitcoin network.  _arXiv preprint arXiv:2102.05373_ (2021).
  * Pham and Lee (2016a) Thai Pham and Steven Lee. 2016a.  Anomaly detection in bitcoin network using unsupervised learning methods.  _arXiv preprint arXiv:1611.03941_ (2016).
  * Pham and Lee (2016b) Thai Pham and Steven Lee. 2016b.  Anomaly detection in the bitcoin system-a network perspective.  _arXiv preprint arXiv:1611.03942_ (2016).
  * R. Michalski and Macek (2020) D. Dziubaltowska R. Michalski and P. Macek. 2020.  Revealing the character of nodes in a blockchain with supervised learning.  _IEEE Access_ (2020).
  * Reid and Harrigan (2013) Fergal Reid and Martin Harrigan. 2013.  An analysis of anonymity in the bitcoin system.  In _Security and privacy in social networks_. Springer, 197–223.
  * Shen et al. (2021) Jie Shen, Jiajun Zhou, Yunyi Xie, Shanqing Yu, and Qi Xuan. 2021.  Identity inference on blockchain using graph neural network. In _International Conference on Blockchain and Trustworthy Systems_. Springer, 3–17.
  * Sihao Hu and Liu (2023a) Bingqiao Luo Shengliang Lu Bingsheng He Sihao Hu, Zhen Zhang and Ling Liu. 2023a.  BERT4ETH: Pre-training of Transformer Encoder Representation for Ethereum Fraud Detection. In _The Web Conference_. May 2-4, 2023, Austin, TX).
  * Sihao Hu and Liu (2023b) Ka Ho Chow Fatih Ilhan Selim Tekin Sihao Hu, Tiansheg Huang and Ling Liu. 2023b.  Etherum Account Profiling and De-anonymization via Pseudo-Siamese BERT.  _Technical Report, Georgia Tech_ (2023).
  * Sun et al. (2022) Xiaobing Sun, Wenjie Feng, Shenghua Liu, Yuyang Xie, Siddharth Bhatia, Bryan Hooi, Wenhan Wang, and Xueqi Cheng. 2022\.  MonLAD: Money laundering agents detection in transaction streams. In _Proceedings of the Fifteenth ACM International Conference on Web Search and Data Mining_. 976–986.
  * Veličković et al. (2017) Petar Veličković, Guillem Cucurull, Arantxa Casanova, Adriana Romero, Pietro Lio, and Yoshua Bengio. 2017.  Graph attention networks.  _arXiv preprint arXiv:1710.10903_ (2017).
  * Weber et al. (2019) Mark Weber, Giacomo Domeniconi, Jie Chen, Daniel Karl I Weidele, Claudio Bellei, Tom Robinson, and Charles E Leiserson. 2019\.  Anti-money laundering in bitcoin: Experimenting with graph convolutional networks for financial forensics.  _arXiv preprint arXiv:1908.02591_ (2019).
  * Wu et al. (2021a) Jiajing Wu, Jieli Liu, Weili Chen, Huawei Huang, Zibin Zheng, and Yan Zhang. 2021a.  Detecting mixing services via mining bitcoin transaction network with hybrid motifs.  _IEEE Transactions on Systems, Man, and Cybernetics: Systems_ 52, 4 (2021), 2237–2249.
  * Wu et al. (2020) Jiajing Wu, Qi Yuan, Dan Lin, Wei You, Weili Chen, Chuan Chen, and Zibin Zheng. 2020\.  Who are the phishers? phishing scam detection on ethereum via network embedding.  _IEEE Transactions on Systems, Man, and Cybernetics: Systems_ (2020).
  * Wu et al. (2021b) Yanzhao Wu, Ling Liu, Zhongwei Xie, Ka-Ho Chow, and Wenqi Wei. 2021b.  Boosting ensemble accuracy by revisiting ensemble diversity metrics. In _Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition_. 16469–16477.
  * Zareapoor et al. (2015) Masoumeh Zareapoor, Pourya Shamsolmoali, et al. 2015\.  Application of credit card fraud detection: Based on bagging ensemble classifier.  _Procedia computer science_ 48, 2015 (2015), 679–685.
  * Zhang et al. (2020) Yuhang Zhang, Jun Wang, and Jie Luo. 2020.  Heuristic-based address clustering in bitcoin.  _IEEE Access_ 8 (2020), 210582–210591.
  * Zhou et al. (2022) Jiajun Zhou, Chenkai Hu, Jianlei Chi, Jiajing Wu, Meng Shen, and Qi Xuan. 2022\.  Behavior-aware Account De-anonymization on Ethereum Interaction Graph.  _arXiv preprint arXiv:2203.09360_ (2022).
  * Zola et al. (2019) Francesco Zola, Maria Eguimendia, Jan Lukas Bruse, and Raul Orduna Urrutia. 2019.  Cascading machine learning to attack bitcoin anonymity. In _2019 IEEE International Conference on Blockchain (Blockchain)_. IEEE, 10–17.

##  Appendix A Appendix

###  A.1. Dataset Collection

The Bitcoin blockchain contains a huge number of transactions since its
inception. Given that our goal of data collection is for fraud detection on
the Bitcoin network, we use the 203k transactions collected in the Elliptic
dataset as the seeds of our crawling module for two reasons. First, the
Elliptic dataset is the largest labelled Bitcoin transaction data publicly
available. Second, the Elliptic dataset only contains transactions in the
Bitcoin network labeled as licit, illicit, and unknown. To enable detection of
both fraudulent transactions and illicit accounts, we need to collect all
accounts involved in the Elliptic transaction dataset. The data acquisition
pipeline for the Elliptic++ dataset is shown in Figure 13 and is described as
follows.

Figure 13. Elliptic++ dataset collection pipeline using our blockchain parsers
and extractors.

First, we design and implement a blockchain parser which takes de-anonymized
transactions as input, scrapes the public Blockchain, and augments additional
features to the transactions. The augmented features include information
regarding the transaction including number of incoming/outgoing edges, number
of input/output addresses, amount of incoming/outgoing BTC, and much more

Next, the output from the blockchain transactions parser is fed into our
extractor that parses the addresses involved in the transactions and scrapes
the public Blockchain to gather the corresponding address-related features.
These features include transaction and time related information.

We define the transaction data structure (see Table 1) and account data
structure (see Table 4) such that the parsers and extractors will organize,
clean, and store the data based on these structures. Furthermore, we collect
those account features that are needed in the construction of the four types
of graph representations: (a) Money Flow Transaction Graph, (b) Actor
Interaction Graph, (c) Address-Transaction Graph, and (d) User Entity Graph.
These graphs enable mining and visualizations of account and transaction
connections for anomaly detection.

In addition, to identify and define the important features for all accounts
involved in the Elliptic transaction dataset, as outlined above, a major
technical challenge was the resource demand. The collection, cleaning,
parsing, and labeling of the dataset were computation and storage intensive.
We leveraged the High Performance Computing (HPC) Clusters at the Georgia
Institute of Technology (the PACE clusters444www.pace.gatech.edu), taking
several weeks to complete the extraction of all accounts and their features
present in the Elliptic++ dataset.

Figure 14. Distribution of transactions in time steps $14$ (left) and $32$
(right).

Figure 15. Distribution of wallet addresses in time steps $14$ (left) and $32$
(right).

Figure 16. Distribution of transactions and wallet addresses in time steps
$14$ (left) and $32$ (right).

###  A.2. Fraud Detection Evaluation Metrics

The accuracy of the models is verified using five metrics: Precision, Recall,
F1 Score, Micro-Avg F1 Score, and Matthews Correlation Coefficient. The
explanations have the following components: true positive (TP), false positive
(FP), false negative (FN), and true negative (TN).

  1. (1)

Precision \- the fraction of positive points that were correctly classified.
It is calculated by:

$Precision=\frac{TP}{TP+FP}$

  2. (2)

Recall \- the fraction of actual positive points that were correctly
classified. It is calculated by:

$Recall=\frac{TP}{TP+FN}$

  3. (3)

F1 Score \- the harmonic mean of precision and recall. It is calculated by:

$F1=2\cdot\frac{precision\cdot recall}{precision+recall}$

  4. (4)

Micro-Avg F1 Score \- similar to F1 Score, but using the total number of TP,
FP, and FN instead of individually for each class. It is calculated by:

$MicroAvg\;\;F1=\frac{TP}{TP+\frac{1}{2}\cdot(FP+FN)}$

  5. (5)

Matthews Correlation Coefficient (MCC) \- measures the quality of binary
classifications, taking into account the difference between predicted values
and actual values. It ranges from $[-1,\;+1]$ with the extreme values $-1$ and
$+1$ in cases of perfect misclassification and perfect classification
respectively. It is calculated by:

$MCC=\frac{(TP\cdot TN)-(FP\cdot
FN)}{\sqrt{(TP+FP)\cdot(TP+FN)\cdot(TN+FP)\cdot(TN+FN)}}$

###  A.3. Graph Visualization

Figures 14, 15, and 16 show the distributions of transactions and/or wallet
addresses for the Money Flow Transaction Graph, the Actor Interaction Graph,
and the Address-Transaction Graph respectively. Specifically, they show a
comparison between distributions in time step $14$, which produce more sparse
graphs, and time step $32$, which produce more dense graphs. The grey area is
due to the density of the edges.

Figure 17. Clustering Bitcoin addresses: (a) collect the set of input
addresses for each transaction in the address-transaction graph; (b) group
transactions with $\geq 1$ common element in each set into unique users; (c)
highlight transactions within each user in the original graph; and (d) convert
highlighted address-transaction graph into a user graph, with edges across
users if a path existed between groups of transactions in the original graph.

###  A.4. Bitcoin Address Clustering

The Bitcoin address clustering process discussed in this study is referred to
as the multiple input addresses heuristic. This heuristic takes advantage of
the fact that in order to transact correctly, a user must provide the
signatures corresponding to the private keys and the public key wallet
addresses for all the input addresses, thus, a user must have access over all
private keys. Hence, allowing for the assumption that all input addresses of a
transaction can be attributed to the same user. This is demonstrated in Figure
18, where the input addresses addr1, addr2, addr3, and addr4 are grouped into
User $U_{1}$, while input addresses addr5 and addr6 are grouped into User
$U_{2}$. Figure 17 shows the address clustering process using the four steps
discussed in Section 3.3.4, producing a user graph on the right.

Figure 18. Bitcoin address clustering based on multiple input addresses
heuristic in an address-transaction graph.

###  A.5. Statistical Analysis of the Dataset

Figure 19. Number of transactions for illicit actors appearing in only $1$
time step. Each point is a unique illicit actor. Y-axes are in $\log$ scale.

Figure 19 shows illicit actors that exist in only $1$ time step ($14,007$
total illicit actors). Aside from providing information about the timeline of
the illicit actors, it displays the distribution of the illicit actors among
the dataset for these types of actors. For example, in time step 6 there are 8
illicit actors, in time step 14 there are 74 illicit actors, and in time step
32 there are 759 illicit actors.

Figure 20 is an extension of the dataset feature analysis and feature
refinement by displaying the top $2$ and bottom $2$ of each feature class in
(a) the transactions dataset (left: local features, right: aggregate
features), and (b) the actors dataset (left: transactions features, right:
time features). This further solidifies the explainability behind the risk of
transactions and actors through the visual (and numerical) distinction among
the illicit and licit classes. In all green highlighted figures, one can
clearly classify between both classes. Though, this is unlike the red
highlighted figures where there is no characteristic trend among both classes.

Figure 20. Trend comparison for features in the transactions dataset (left)
and actors dataset (right). Green highlight shows good correlation (top 2
rows), while red highlight shows unclear correlation (bottom 2 rows).

###  A.6. Data Distribution

Tables 12 and 13 show the numerical distribution within each class by time
step for the transactions and actors datasets respectively.

Table 12. Numerical distribution of the number of transactions of each class by time step. First two tables are for the training set and the third table is for the testing set. Time step | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
Unknown | 5733 | 3427 | 5342 | 4253 | 4921 | 3843 | 4845 | 3292 | 4218 | 5755 | 3600 | 1541 | 3719 | 1605 | 3021 | 2445 | 2574
Illicit | 17 | 18 | 11 | 30 | 8 | 5 | 102 | 67 | 248 | 18 | 131 | 16 | 291 | 43 | 147 | 128 | 99
Licit | 2130 | 1099 | 1268 | 1410 | 1874 | 480 | 1101 | 1098 | 530 | 954 | 565 | 490 | 518 | 374 | 471 | 402 | 712
Time step | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
Unknown | 1587 | 2761 | 3391 | 2896 | 4131 | 2978 | 3466 | 1720 | 2006 | 883 | 1369 | 3101 | 1959 | 2106 | 3202 | 2710 | 1971
Illicit | 52 | 80 | 260 | 100 | 158 | 53 | 137 | 118 | 96 | 24 | 85 | 329 | 83 | 106 | 342 | 23 | 37
Licit | 337 | 665 | 640 | 541 | 1605 | 1134 | 989 | 476 | 421 | 182 | 199 | 845 | 441 | 604 | 981 | 418 | 478
Time step | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
Unknown | 4166 | 4685 | 2808 | 2135 | 1577 | 3270 | 4210 | 4986 | 3693 | 3384 | 4377 | 2807 | 4275 | 2483 | 1978
Illicit | 182 | 33 | 40 | 111 | 81 | 112 | 116 | 239 | 24 | 24 | 5 | 2 | 22 | 36 | 56
Licit | 1159 | 1675 | 458 | 645 | 1102 | 1099 | 1016 | 1915 | 1346 | 1567 | 1216 | 710 | 824 | 435 | 420
Table 13. Numerical distribution of the number of wallet addresses of each
class by time step. First two tables are for the training set and the third
table is for the testing set.

Time step 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Unknown 26465 15878 26213
31035 24621 17029 23357 17631 23819 38271 18250 10343 26813 5912 11500 9064
17066 Illicit 96 99 58 266 54 17 463 267 960 120 494 77 918 156 447 427 321
Licit 24547 16292 4835 8647 10465 1957 7902 16229 3894 8454 10576 2875 3288
1941 6671 2315 4039

Time step 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 Unknown 6413
11633 32483 21725 28827 14101 19396 12231 16434 9130 6489 17180 8882 13328
15679 10109 9914 Illicit 189 320 950 1256 1491 734 1083 2243 1334 89 219 979
287 312 1730 561 908 Licit 1643 3220 6315 16576 9693 7301 3518 8314 2360 1000
920 3811 2931 5119 4873 7675 5546

Time step 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 Unknown 23898 34887
16578 16820 9679 23564 22123 31496 24953 16255 22201 17719 19726 13638 10030
Illicit 943 1226 804 400 282 801 454 967 156 497 42 626 256 433 789 Licit 6229
11130 3455 4039 4881 10233 7033 11142 7302 10631 11057 4723 8106 8783 4385