有向加权图 最大弱连通分支_硬币的反面:基于图深度学习的区块链地址身份识别方法...

前言

最近我们的专栏一直在讲隐私保护,我们都知道匿名性是区块链的重要特征之一。以比特币为例,发生交易时,只有双方的公钥会被展示,而不会暴露其他个人身份信息。这种匿名性也成为了数字货币以及建立在其之上的分布式金融(DeFi)和传统货币以及金融系统最大的差别之一。

这种匿名性是否在一定程度上可以被揭示呢?答案是肯定的,就像一枚硬币一定存在正反两面,利用链上数据的公开透明性,也可以挖掘更多的信息。

我们团队的最新研究成果就做了这方面的尝试,通过对大量链上交易数据进行分析,对账户地址的行为模式进行建模,从而可以对其身份类型进行预测。相关论文“A Graph Learning based Approach for Identity Inference in DApp Platform Blockchain”被IEEE Transactions on Emerging Topics in Computing(影响因子6.043)收录。

以太坊地址的身份识别

从以太坊开始,链上的用户行为更丰富了。首先不同于比特币采用的UTXO模型,以太坊采用了账户余额模型(Account/Blance model),地址被分为了Externally Owned Account(即普通账户)和Contract Account(即智能合约账户)。而对于交易而言,除了普通转账交易,也引入了智能合约交互的行为。今年大热的DeFi,各种DApp(例如一度造成以太坊拥堵的CryptoKitties、博彩等等),其实都是基于智能合约实现的。

那我们为什么需要地址身份识别呢?首先,通过对这些地址的分析,我们可以对整个区块链生态有更深的认识:例如我们能够判断每次以太坊币价的波动究竟和哪类地址更相关(矿工、交易所还是那些大户);甚至我们还可以识别出那些诈骗地址,以太坊上充斥着大量冒充ICO钱包或者返利DApp的账户,通过身份识别,我们可以在转账前判断对方是否存在诈骗的嫌疑。

传统的地址识别方法,主要包括人工标注以及代码分析等方式。前者通过用户手动打标签的方式,我们在Etherscan上面可以看到很多交易所和ERC-20代币的地址都会被标识出来,但是这种方式依赖大量人力,面对几乎是无穷的以太坊地址(目前已使用的独立地址已经突破了1亿),我们不可能依靠手动的方式来标注所有地址,并且这种标注也不能保证实时性,例如交易所偶尔也会更换自己的归集地址,这个时候就需要去手动更新。基于代码分析的地址识别也是近几年的研究热点,通过对智能合约的源码进行分析从而判断其是否存在恶意后门或者漏洞,这种方法具有较高的精准度但是实现起来难度很大,最重要的是,相当多的智能合约并未公开源码,这些智能合约无法通过上述方法进行识别。

有没有其他更为通用且简单的方法呢?

我们将以太坊在三个月内的链上行为表示成一张图,其中的节点是不同的公钥地址,边是不同地址之间的联系(交易和智能合约交互)。那么大概这个图就长这个样子:

f36a0eb33544d4a2a43102030aa311e4.png

我们先忽略那些五颜六色的边,你可能会意识到这个超级网络有一些特别的地方:比如有些地址会有大量边与之相连(我们称之为出入度);以及有些地址直接的边非常多(意味着一段时间内交互频繁)。当然这个图还比较简单,如果我们引入更多的参数(比如交易的金额,调用智能合约的类型),这就形成了一个有向加权图,于是我们就可以用一些基于图的分析算法了。

我们的解决方法

在论文中,我们设计了一种基于图深度学习的区块链地址身份识别方法I2GL(Identity Inference approach by Graph deep Learning)。简单来说,我们通过构造上述的有向加权图,为每个节点生成具有辨识性的特征表示(embedding),然后对节点表示分类,预测节点的类型(矿工、矿池、交易所、投资者或是诈骗地址等)。

e53754c50a4eb7f12a1fdfb4092aaa2c.png

如上图所示,首先我们使用图神经网络(Graph Neural Networks)生成节点的表示。在图神经网络中,信息通过图的拓扑连接进行传播,不断更新节点表示。图神经网络也是近几年非常火的研究热点,主要应用在化学分子图、知识图谱、社交网络等中。

但是这里的区块链的有向加权图与这些图存在着以下区别:(1)区块链的交易图规模更大。要知道,仅仅在2018年的头三个月中,以太坊上的活跃地址就有一千多万个,它们之间进行了一亿多次交互。而图神经网络评测广泛使用的一个公开数据集Citeseer仅有几千个节点和几千条边。这对于神经网络模型的计算量和存储是一个挑战。(2)以太坊中地址之间包含多种不同类型的活动:转账、智能合约创建及激活等。这些不同的活动类型也是我们辨别用户身份的关键。(3)区块链交易图中的时间信息很重要,比如矿工地址的交易行为比较规律,诈骗地址则往往会在一小段时间发生密集交易,之后因为骗局暴露而销声匿迹。

面对区块链交易图的独有特征,我们设计了全新的I2GL模型。它利用图卷积网络,在图结构上进行卷积,将大型交易图转化成低维向量表示,并同时保持结构知识。为了刻画节点之间的不同行为,我们在图中创建了多种类型的边,使每种行为的信息分别传递,并最终汇总起来形成节点表示。

同时我们也观察到地址之间交互频率也是一个很重要的特征,例如我们发现诈骗地址和普通地址的交易频率就存在着显著差异。

5c4281ddd828de8e84f3fc9f81a6b6a9.png

为了捕捉到这个特性,我们还构建了一个时间密度信息的矩阵,使时间特征包含到模型中去。

在最后的实验中,I2GL也取得了不俗的效果,对地址的分类能力超过了DeepWalk、rGCN等图模型。

89819f6998ad0847e6280c805c4ece72.png

随着DeFi的兴起,我们终于迎来了真正意义上的区块链落地应用,然而在这个去中心化的匿名网络中,信用体系的缺失也会产生潜在的风险。正如硬币的正反面,区块链的匿名性和公开透明性看似充满着矛盾,却也有着密不可分的关系,我们的研究也是探寻其中奥秘的一次尝试。

对我们的研究感兴趣的同学欢迎留言交流,或者关注我们的公众号。

http://weixin.qq.com/r/GUiEgLLE5XqZKfbjbx2d (二维码自动识别)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值