没有合适的资源?快使用搜索试试~ 我知道了~
区块链:研究与应用4(2023)100112使用时间泄漏的以太坊交易的鲁棒聚类固定节点俞聪聪a,陈阳b,*,郑彻a,朱烈煌ba北京理工大学计算机学院,北京,100081b北京理工大学网络空间科学与技术学院,北京,100081A R T I C L E I N F O关键词:区块链以太坊交易相关性网络分析数据挖掘A B S T R A C T以太坊作为第一个支持智能合约的区块链平台越来越受到关注。数据挖掘已经成为分析以太坊交易的重要工具。然而,现有的方法有缺点,包括部分交易和易受隐私增强技术。在本文中,我们提出了一个计划的交易相关的节点作为一个实体,它可以覆盖所有的交易,同时是抵抗隐私增强技术。利用从N个固定节点中继的时间戳来描述事务的网络属性,我们对从同一源节点进入网络的事务进行聚类。实验结果表明,该方法能以97%的精度判定两笔交易是否来自同一源节点。1. 介绍作为第一个支持智能合约的区块链平台,以太坊备受关注,市值为3475亿美元[1]。在以以太坊为代表的加密货币系统中,用户可以自由地请求与其真实身份无关的名字,并通过它们进行交易,由用户持有的私钥控制。但是,没有人知道假名的真实身份,这保护了用户的隐私。由于身份的匿名性和巨大的市场价值,以太坊上经常发生各种恶意行为,包括欺诈,因此,一些研究机构和公司已经开始在区块链上备份公开可用的数据,以分析不同别名之间的相关性,从而为同一用户识别不同的别名,以评估加密货币资产,监控金融流量,并支持执法[2]。在以太坊中,研究人员主要通过分析账户的交易时间、费用、金额和其他反映用户习惯的特征来利用假名背后的用户的独特性[3,4]。 通过提出规则来识别属于同一用户的帐户,研究人员可以对网络范围内的交易进行统计分析。此外,研究人员还调查了特定场景的特殊规则(例如,寄存地址复用、空投多方参与等)并提出了基于这些规则的方法来关联不同交易的发起人[3,5,6]。然而,这些相关方法需要知道每个交易的发起者和接收者的账户地址,因此受到阻塞交易的发起者和接收者之间的链路的硬币混合协议的同时,满足这些特殊标准的事务很少,而对于剩余的大多数事务,这些方法是无能为力的,如图所示。1.一、因此,我们的目标是提出一种新的相关性方法,可以应用于绝大多数的一般交易,同时表现出良好的鲁棒性,隐私增强技术。我们利用所有事务共享的网络属性来考虑事务相关性。 与以前将用户视为实体的做法不同,我们将节点视为实体,并对从同一源节点进入网络的事务进行聚类。这种新的思维方式带来了巨大的好处。首先,通过利用网络信息,我们可以避免隐私增强技术的影响,同时覆盖所有交易。其次,通过了解实体内一个交易的IP,我们可以了解实体内所有交易的IP,这允许以非常低的成本在整个网络上跟踪交易第三,通过大规模地将事务映射到IP,我们可以从一个新的角度(数量)来分析P2P网络中的节点* 通讯作者。电子邮件地址:yccong1211@163.com(C. Yu),yangchen666@bit.edu.cn(C. Yang)。https://doi.org/10.1016/j.bcra.2022.100112接收日期:2022年4月28日;接收日期:2022年10月18日;接受日期:2022年10月20日2096-7209/©2022作者。出版社:Elsevier B.V.代表浙江大学出版社。这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表区块链:研究与应用杂志主页:www.journals.elsevier.com/blockchain-research-and-applicationsC. Yu等人区块链:研究与应用4(2023)1001122Fig. 1. 用户作为实体的缺点而不仅仅是出度和入度。要将节点作为实体进行群集,存在两个主要挑战。首先,很难通过部署的公共节点收集的网络信息来表示事务的网络属性,进而区分不同的事务发起节点。 在以太坊P2P网络中有接近10,000个完整节点,没有办法在不要求探测节点表现出异常行为的情况下区分这10,000个节点(例如,到网络上的节点的大范围连接)。其次,如果网络拓扑动态变化,则难以保证有效性在P2P网络中,每个节点都可以自由选择连接到其相邻节点,因此网络拓扑结构会不断变化。为了解决第一个挑战,我们通过定义同源和非同源事务对1,将区分全网络约10,000个完整节点的问题转换为区分同源和非同源事务的问题。通过部署探测器连接到选定的固定节点,通过分析用户的行为模式,我们提出了规则来构建同源和非同源事务对作为后续分析的数据集。为了避免网络波动的影响,我们设计了一种新的特征提取方法来表征事务对的发起节点的相似性本文的其余部分组织如下。在第2节中,我们简要描述了交易提交的过程,并总结了以太坊中交易相关性和时间戳利用的最新研究然后,我们在第3节中描述我们的方法的概述。接下来,我们分别在第4节和第5节中介绍了相似性的数据构建方法和在第6节中,我们评估所提出的方法的有效性。最后,我们在第7节进行了简短的讨论,并在第8节结束本文。2. 背景和相关工作为每个交易构建一个固定的维度表示获得统一的表达式使我们能够发现同源和非同源事务对之间的差异此外,我们通过分析用户的行为习惯,构造了同源和非同源事务对的规则,并利用该规则构造了一个数据集来验证我们的方法。为了解决第二个挑战,我们分析了以太坊中广泛传播交易的过程,并设计了一种新的表示来描述同源交易对的相似性利用两个广播中固定节点的相对时间之间的差异来度量两个事务的网络属性的相似性,从而确定两个事务的发起节点是否相同。为了避免网络波动的影响,我们进一步对表达式进行特征提取,从实际时间戳中提取相似的特征表达式我们将主要贡献总结如下:提出了以节点为实体。通过部署探测器连接到选定的固定节点以收集网络时间戳,我们可以对从同一源节点进入网络的事务对进行此外,我们部署的探测器只需要像正常节点一样行事,并且是隐蔽的,难以检测。实验结果证明了该方法的有效性。1同源和非同源事务对的定义见第3节。2.1. 交易提交有两种类型的节点:运行eth协议的全节点[7]和运行les协议的轻节点[8]。 拥有所有区块数据,完整节点复制和验证交易,并在区块链上维护以太坊状态。全节点可以直接参与网络消息广播,直接向网络提交交易。轻节点只拥有区块头,不参与消息转发或区块链状态维护,只能通过全节点间接与网络交互。当用户想要发起交易时,他首先输入所需的基本信息,包括to(收款人的账户地址),amount(要转账的金额),gas price(每种气体给出的价格)等,通过他的客户。然后,客户端将使用椭圆曲线数字签名算法(ECDSA)使用其私钥对交易进行签名。私钥唯一地控制帐户,并且拥有私钥的人拥有帐户的命令。一般来说,私钥作为文件存储在本地电子设备上,并由账户持有人保密。除了通过全节点和轻节点提交交易外,用户还可以通过受信任的远程节点提交交易。通过钱包(移动钱包和浏览器钱包),用户可以连接到由第三方提供和控制的远程可信全节点[9]。通过可信节点,用户可以在不下载区块数据或区块头的情况下发起交易●●●C. Yu等人区块链:研究与应用4(2023)1001123ffiffiffiffi我知道了2.2. 广播战略全节点可以将交易直接广播到网络中,但轻节点需要首先将交易广播到全节点。以太坊中全节点的通信过程总结如下:节点首先通过发现v4协议发现邻居节点[10];然后尝试通过加密握手建立连接[11],这是与比特币P2P网络的主要区别,也是从少量固定节点观察网络的起源;最后,一旦建立连接,运行基于RLPx的应用级协议:eth[7]进行通信,交易和块目前在网络中运行的两个最重要的eth协议是eth65和eth66。运行eth65及其更新版本的节点在事务池中接收到新事务后,将首先随机选择N个对等节点并将交易内容直接发送给它们其中N是不知道事务的节点的邻居的数量。对于剩余的N个节点,如果对等节点运行协议eth64或其以前的版本,交易内容将直接发送,因为这些协议永远不会请求事务内容。如果对等节点运行eth65或其更高版本,则将发送事务散列当一个节点接收到一个交易哈希时,该节点首先等待500 ms。 在此期间,如果没有收到来自其他节点的内容,则节点将选择之前转发过交易哈希的任何上游节点,并发送“GetTx“消息来请求交易内容。 在收到上游节点回复的交易内容后,节点将验证交易的有效性和签名,并将该交易转发给不知道该交易的邻居。2.3. 相关工作最早对数字货币隐私的分析始于2011年,当时Reid和Harrigan [12]为比特币交易构建了两种结构:交易网络和用户网络。然后,Androulaki等人提出了多输入地址聚类。[13],Meiklejohn等人提出了交换地址聚类[14 ]第10段。然而,与比特币基于UTXO的模型不同,以太坊是基于账户的模型,这些方法无法应用于以太坊。因此,研究人员根据用户习惯和特定场景设计了新的以太坊交易关联方法。用户习惯。同一用户拥有的多个账户将在行为习惯上表现出相似性,研究人员可以通过提取与用户习惯相关的特征来关联交易。Payette等人 [15]提取了34个与以太坊账户用户习惯相关的特征,这些账户进行了大量交易,包括交易数量,交易金额,并将账户地址与这些特征进行了聚类。B'eres等人[3]发现了新的交易特征,包括一天中活跃的时间、费用和交易网络上的位置。Linoy等人[4]分析了智能合约的代码风格,以关联EOA账户,即合约账户的创建者具体情况。 在以太坊中,有一些特殊的场景,其中该场景中的交易机制反映了账户之间的关系。在以太坊中,有一些特殊的场景,其中该场景中的交易机制反映了账户之间的关系。Victor [5]发现了三种特殊的场景:(i)存款地址重用,(ii)空投多方参与,以及(iii)自我授权执行交易相关。 B'eres等人[3]结合了以太坊智能合约Tornado Cash的使用模式,以及Biryukov等人的“金额打印”思想[6]为Tornado Cash提取由于所有这些方法都将用户视为实体,因此很明显,这些聚类规则的缺点是只覆盖少量交易,并且容易受到隐私增强技术的影响[16]。P2P网络信息的应用主要集中在比特币溯源研究,将交易映射到其源IP。Kaminsk首先通过网络时间戳跟踪交易,并提出了转发交易的第一个节点可能是它起源的节点的想法[17]。通过在P2P网络中部署探测器来连接网络中的节点,研究人员可以收集广播信息并分析与源节点相关的定时信息[183. 系统概述在本节中,我们首先描述整体系统架构,然后进一步阐述我们的动机。首先,我们给出以下两个定义:Homestay事务对。 同源事务对是从同一源节点进入网络的两个事务。非同源事务对。它是指从不同的源节点进入网络的两个交易。3.1. 系统架构我们的目标是通过在网络中广播的时间戳,基于事务进入网络的源节点将事务聚类到同一个实体中。 与现有的基于比特币P2P的网络方法相同,我们都需要收集网络中广播交易的节点的时间戳。不同之处在于,我们不是利用前N个中继时间戳,而是利用N个固定节点中继的时间戳。因此,对于每个事务,我们获得源自N个所选节点的N维每个时间戳是指从交易的源节点到固定节点的由于网络拓扑在短时间内不会发生实质性变化,因此同一源节点到N个选定节点的距离应该相对有限我们可以通过比较两个事务对应的N维“距离“向量的相似度来判断两个事务是否属于同一个该系统的整体架构如图所示。2,由三个主要部分组成。第一个组件收集以太网中所有事务的中继信息,然后存储此日志信息,以供后续组件分析。第二个组件标记同源和非同源事务对日志信息作为原始数据集的基础上提出的规则,用户行为。我们将这些事务对作为原始数据集,其中每个数据样本是一对事务的时间戳,样本的标签是这对事务是否同源。为了解决事务对中存在的维度不一致性第三个组件对数据集执行相对化和特征提取,并构造特征集。一旦获得了特征集,它就可以用来训练分类器,以识别未知的一对事务是否由于用于交易标记的信息与用于交易识别的信息不相关,我们通过交叉证实两者来证明该方法的有效性。3.2. 工作说明本节将详细介绍3.1节所述的体系结构,包括从获取事务信息到识别网络中同源事务对步骤1:收集网络中的交易。为了分析网络传播中同源交易对的相似性,我们部署了探测节点来监控整个以太坊网络。固定节点被选为链路的邻居,我们将收到广播到不同固定节点的每个事务的时间戳。C. Yu等人区块链:研究与应用4(2023)1001124m;j¼图二. 系统概述。Tx表示事务,ti表示第m个事务对中第i个事务的第j个结 我们为每个事务构造一个时间向量来度量事务的广播过程。由于我们选择固定的节点作为邻居,每个事务的时间戳向量将具有固定的维度,每个时间戳都来自所选节点。 我们记录了发起人帐户和时间戳向量为后续分析的每一个交易。步骤2:构造同源事务对。通过分析用户的安全寻求行为,我们发现用户只会在短时间内从一个完整的节点发起事务。 基于这一事实,我们提出了规则来识别同源对,并进一步确定非同源对相结合的交易帐户和启动的时间。 我们通过将两个不相关的时间戳向量标记为同源或非同源来构建原始数据集,如第4节所述。步骤3:描述网络属性并提取特征。利用以前的标签的同源事务或没有,我们进行了联合分析的两个时间戳向量的事务对。 为了容忍由于网络波动而导致的维度不一致,构造了两个向量(box t和trend t)来分别描述交易对的对应节点的时间戳的绝对时间变化和趋势变化,如第5节所示。 通过从这两个向量中提取特征,我们构建了一个特征数据集,其中每个样本都是一个事务对的特征,指示两个广播的相似性,并且样本被标记为事务对是否同源。3.3. 动机一旦事务被提交到P2P网络,它就开始从源节点广播消息第一轮将事务广播到源节点的邻居,第二轮将事务广播到作为新起始节点的邻居的邻居,依此类推,最后广播到整个网络。在网络中,事务从源节点广播到目标节点所花费的时间可以在一定程度上反映它们之间的距离;距离源节点越远,事务广播到该目标节点所花费的时间就越长。选择一个源节点,事务到达不同的目标节点需要不同的时间。选择目标节点从网络中的不同源节点进行广播,并且事务到达该目标节点所花费的时间将是不同的。因此,我们可以通过确定事务从源节点广播到目标节点所需的时间来选择目标节点并区分不同的源节点。目标节点。由于事务的开始时间是未知的,我们无法计算事务的广播时间来测量从源节点到目标节点的我们使用两个节点接收的事务的时间戳之间的差异来测量从源节点到该事务的两个节点的距离的差异,从而区分不同的源节点。我们将一个节点作为参考节点,并将其他节点的时间戳转换为相对于参考节点的时间戳从源节点到参考节点和其他节点的时间戳的差异用于测量源节点的位置通过选择多个节点,我们可以区分不同的源节点,并确定两个交易是否从同一个源节点进入网络整个网络中大约有10,000个完全同步的节点。从理论上讲,不考虑相对时间戳的具体数据,只考虑时间戳的顺序,我们可以通过以下方式区分整个网络的全同步节点:九个节点(8!40,320> 10,000;其中一个用作参考节点)。由于网络延迟和事务广播策略的影响,事务广播所花费的时间与源节点到目标节点的距离并不严格正相关,相对时间戳也不能严格区分不同的源节点。然而,从同一个源节点开始的两个广播进程的时间戳仍然显示出一些节点之间的显著相似性。以tx1、tx2、tx3和tx4为例,如图3所示。我们可以在tx1和tx2的时间序列之间找到明显的相似性,尽管某些节点具有不同的趋势;例如,来自节点的时间序列TX1的节点20到节点21是上升的,但TX2是下降的。4. 数据集构建在本节中,我们将描述数据收集和数据集构建的过程4.1. 数据收集由于在Ether中的交易广播期间没有公开可用的数据集记录中继信息,因此我们决定部署我们的节点进行信息收集。我们部署了一个运行快速同步模式的geth客户端[22]作为以太网主网中的探测节点由于以太坊中的完整节点向每个连接广播事务,而无需首先验证其邻居的同步状态,因此我们可以接收到C. Yu等人区块链:研究与应用4(2023)1001125图三. 四笔交易的样本。TX1和TX2是同源事务对,TX3和TX4是同源事务对。在同步块2的同时在网络中广播事务。我们修改了客户端的源代码,以记录每个接收到的交易信息,包括时间戳,交易哈希,发送方帐户地址和接收到的交易的转发节点IP为了收集以太坊网络中的中继信息,我们设计了一个监控网络,网络拓扑如图所示。 四、网络拓扑中有三种类型的节点:探测节点、固定节点和普通节点。探测节点是我们部署来收集有关网络的中继信息的节点固定节点是我们选择来描述整个网络属性的节点正常节点是网络中负责事务转发的其他完整节点。请注意,固定节点也是正常节点,但它们与正常节点之间的唯一区别是固定节点直接连接到探测节点。我们唯一控制的节点是探测节点。由于我们不需要监控特定源节点的信息,因此任何正常节点都可以是我们的源节点。网络中的任何交易从源节点发起后,都会被中继到固定节点,然后由固定节点中继到探测节点,探测节点记录接收到的中继信息,包括交易哈希、节点IP、发起者账户、时间戳等,最终得到大量的日志消息--30946,150条记录,每条记录都是固定节点中继的交易消息当然,同样的反-信任节点。拥有本地节点(全节点和轻节点)的用户必须通过他们控制的节点发起交易,这更安全。因此,这些用户发起的多个事务从由用户控制的本地节点进入网络,即,多个事务从相同的源节点进入网络。当然,也有一些用户拥有多个本地节点来发起交易,但是每当发起交易时,用户必须使用其私钥进行签名,该私钥以文件的形式存储在本地设备上。用户频繁地向第二本地节点传送私钥文件的概率相对较低,因为这种操作是繁琐的,并且存在很大的私钥泄漏风险。没有本地节点的用户通过他们的钱包链接到可信的第三方节点来发起交易,将交易转发到第三方节点,然后第三方节点将交易广播到网络。因此,该第三方节点能够将交易发起者IP与账户相关联,这意味着用户的身份被暴露。虽然可以使用Tor来隐藏IP,但这仍然在一定程度上损害了隐私。因此,这些用户在发起多个交易时不会频繁地在第三方可信节点之间切换,可以避免隐私泄露。因此,我们提出了识别同源交易的规则。启发式1.房屋交易。如果两个事务tx,tx 由同一帐户发起的事件发生在操作时,我们会收到具有不同时间戳的多个副本124.2. 同源和非同源事务对如第2.1节所述,用户可以通过三种方式向网络广播事务:全节点、轻节点和远程见图4。监控网络的网络拓扑。N表示P2P网络中F是我们的探针节点连接到的固定节点注意,在我们的监控网络中,任何节点都可以成为源节点。时间t1、t2,并且t1和t2之间的时间差小于某个小阈值,则认为tx1和tx2从同一个源节点进入网络。就误报而言,我们无法在不询问交易发起人的情况下验证这一点然而,基于用户将保护其私钥文件以避免隐私泄露的事实,我们认为这一规则是合理的。基于同一个节点不能被两个用户同时持有的事实,我们提出了一个非同源事务规则启发式2. 非同源交易。在短时间内,一个账户发起两个交易tx1和tx2,这两个交易在时间t1和t2发生。另一个账户发起交易tx3和tx4,其发生在时间t3和t4。如果在t1、t2和t3、t4之间存在时间交叉,则认为TX3、TX4和TX1、TX2从不同节点进入网络。在启发式2中,tx1和tx2是同源事务。TX3和TX4是同源事务。两个同源交易对具有不同的发起者账户,并且在交易发起时相交这两个同源交易对是由不同的用户发起的,而不是同一用户的不同账户。结果,两对同源事务被认为是从不同的源节点进入网络。2在go-ethereum v1.10.2中,一旦探测器被部署,我们就可以记录交易,而无需等待探测器完成同步。C. Yu等人区块链:研究与应用4(2023)10011264.3. 构建数据集同源和非同源事务对的具体构造如下。我们将此时间阈值设置为10min。以10 min为时间间隔,我们将记录的日志消息划分为多个间隔。对于每个时间间隔,我们使用Python脚本提取日志信息并保存事务散列、时间、发起者帐户、转发节点IP等。JSON格式。对于每个事务,我们保留一个列表(IP,时间),其中时间是相对的(减去每个事务的最小时间戳)。此外,我们排除了只收到几个副本的事务,以及存在异常大的时间数据的事务(例如,相对时间超过10秒),这可能是异常网络中断的影响最后,基于启发式1和启发式2构造同源和非同源事务对.下一步是使参考节点统一。现有的方法根据前N个节点的相对时间(减去首次收到事务的时间)来测量事务的转发路径,从而确定源节点的相似性。然而,由于网络波动,在不同广播期间首先接收交易的节点不一致。它们只能获得减去不同节点时间戳的相对时间,无法准确描述源节点的网络属性。 为了解决不同事务对中相对时间的参考节点不一致的问题,我们选择一个固定的参考节点,使得数据中的所有相对时间都相对于该节点,以确保数据表示的一致性。总体流程在算法1中示出。由于我们在网络波动时将到探测节点的最大连接数设置为默认值(50),因此每个事务对的维数在15到32之间记录数据中有多笔交易属于同一个发起人账户。我们进一步统计了短时间内发起多笔交易的账户数量,如图所示。五、反式作用对的最终数量见表1。图五. 事务对的维度分布。表1数据处理的统计类型原始交易交易对30,946,150 748,7745,7045. 相似性特征提取虽然我们部署的探测器连接选定的邻居节点,但由于网络波动的影响,探测器与某些邻居节点的链接偶尔会断开,这导致我们收集的时间戳具有不同的维度。此外,我们通过选择邻居节点来度量网络中的不同源节点,从而确定事务对是否同源。这将使我们的方法依赖于相邻节点的选择 当某些事务的中继邻居节点不一致时,我们的方法的有效性会降低。因此,为了通用性和可移植性,我们构造了一种不受维度约束和邻居节点约束的同源事务对的网络属性描述方法,如算法2所示。避免了对相邻节点的依赖,而不是从原始数据中提取特征,我们构造了一个全新的表示两个广播的事务对的相似性。 如3.3节所述,网络拓扑在短时间内是恒定的,从同一个源节点开始的两个广播进程将有一定的概率通过相同的路径到达指定节点。 如果两个节点通过相同的路径到达,则两个广播中的两个节点之间的时间差保持相同。 我们使用多对节点之间的时间戳差异来度量不同事务的源节点的相似性。C. Yu等人区块链:研究与应用4(2023)1001127我我¼ ×利用特征工程中的分裂盒方法计算事务对的绝对时间差值我们用神经网络和传统的机器学习模型,包括支持向量机(SVM),通过计算最大边际超平面对样本框,t1-t2n,i1n(一)DecisionTree,它将对象的属性映射到样本值,t¼I;2 ½;]预测未知输入; RandomForest,它使用多棵树其中t1和t2表示两个事务的相对时间戳继承学习;和XGBoost,一个优化的分布式梯度增强算法。然后选择合适的模型当它们分别由节点IP i中继时,事务对中的tx 1和tx 2。 I是设定的时间间隔,表示时间波动的公差。注意,[0,I ]的相对时间差被分配给相同的框。不同节点之间的时间趋势是另一个关键属性,我们通过以下等式计算任意两个节点的趋势作为分类器。Biryukov和Tikhomirov [23]描述了具有前N个时间戳的交易的网络属性。 他们通过为每个节点分配权重来放松对时间抖动的敏感性,然后使用权重向量的相似性来确定两个事务是否从同一个源节点进入网络。1 1 2 2trend(趋势)(1)(i)(j)(2)(j2211ti-tjti-tj我们计算F1分数来衡量每个实验的效果其中第二项是第一项的倒数,主要是为了避免分母选择对结果的影响。我们得到了全新的反式作用对相似性的表达式:box t和trend t. 直观地说,如果一对事务从同一个源节点进入网络,相邻节点将表现出更多的相似性。因为t1和t2是数字-F12p×r(3)普尔其中p和r分别是正样本的精确度和召回率。精确度和召回率是根据真阳性(TP)计算的假阳性(FP)、真阴性(TN)和假阴性(FN)。的我我在接近的情况下,框t中的对应元素将更接近0,并且趋势t中的元素将更接近2。我们分别对箱t和趋势t进行统计特征提取,包括均值、标准差、最小值、第一四分位数、中位数、第三四分位数、最大值、极差、峰度、偏度、绝对均值差、中位数绝对差和四分位差。我们进一步统计了盒子t中一些关键数据的百分比(大于0、小于0、等于0、大于b、小于-4b,b与I有关)和趋势t(大于0,小于0,正和,负和,总和,大于3,小于-3,大于4,小于-4,大于5,小于-5)。最后,对于每对交易,我们获得了一个48维特征来衡量它们的网络属性。6. 绩效评价在本节中,我们评估所提出的方法的有效性我们首先介绍了实验装置和最佳模型。然后将固定N个中继时间戳的两种交易描述方法与前N个中继时间戳进行比较,以证明固定N个中继时间戳的优越性。最后,我们演示了鲁棒性的特征提取方法的节点尺寸的限制。6.1. 初步6.1.1. 测试床和数据集在这个实验中,我们将同源和非同源反式作用对作为模型的输入我们使用两个数据集,原始数据集,由一系列与参考节点统一的相对时间戳组成,以及一个特征数据集,由从原始数据中提取的特征组成为了避免数据分割对公式为p <$TP/(TP <$FP)和r <$TP/(TP <$FN)。6.2. 模型评价我们首先评估了所提出的方法用于识别同源事务对的有效性。 以原始数据集作为输入,我们用神经网络、SVM、DecisionTree、Random-Forest和XGBoost进行了实验。对于这些经典的机器学习模型,我们首先使用GridSearch来确定最佳超参数(例如,内核、伽马、C、n_估计等),岩心参数见表2。 使用最优超参数,训练模型,然后用于确定验证集中的样本类别。对于神经网络,我们构造了一个具有两个隐藏层和一个输出层的模型两个隐藏层后面是一个激活函数ReLU,输出层是一个Softmax函数,它将结果归一化为样本属于特定类的概率。此外,我们使用焦点损失[24]作为神经网络的损失函数来解决困难样本的问题。神经网络是原始数据集上最好的分类器,识别同源事务对的F1得分为97%,优于传统的机器学习模型,如图所示。第六章DecisionTree的性能最差,只能以87%的精度识别同源事务。在原始数据集中,所有特征都具有相同的幅度和物理意义(时间戳)。但是,每个时间戳对性能没有实际影响,所有时间戳之间的趋势决定了这对时间戳是否同源。决策树依赖于个体特征进行分类,在学习方面存在困难表2分类器的超参数。分类器参数实验结果,进行10倍交叉验证。的一个数据集作为一个整体分为10个副本,其中每个数据副本支持向量机max_depth< $6,max_features< $0.3,min_samples_split ¼4包含来自两个类别的相同数量的样本然后,我们取9个副本作为训练集,1个副本作为验证集,记录实验结果,重复10次,并将平均值视为最终结果。6.1.2. 基线为了更全面地了解所提出的方法的性能,我们将其与以下方法进行比较:决策树max_depth ¼6,max_features¼0.3,min_samples_split ¼ 4RandomForestn_estimators< $15,max_features<$0.5,max_depth<$8,min_samples_split< $12XGBoost learning_rate< $0.3222,n_estimators< $500,max_depth<$10,subsample < $0.8,colsample_bytree <$0.9神经网络损失:FocalLoss,层:3,激活函数¼ReLu●●不6.1.3. 性能度量C. Yu等人区块链:研究与应用4(2023)1001128见图6。模型的性能。DT、RF和NN分别是Deci- sionTree、RandomForest和Neural Network的缩写。同构事务对的相似性,并且也更容易受到由于网络波动引起的异常时间戳的影响。RandomForest的较好性能表明,通过构建多个DecisionTree进行集成学习,可以避免异常值的影响,降低过拟合的可能性。实验结果表明,神经网络在学习所有时间戳之间的趋势方面是最好的,我们将使用神经网络进行后续分析。请注意我们的时间间隔设置当时间间隔较长时,从同一节点广播的两个事务可能由于拓扑变化而经历完全不同的广播,并且在收集的时间戳序列之间可能不存在任何相似性。此外,用户连接到的节点可能例如重新加入网络并且由于通信链路的故障而处于网络中的不同位置重启实验结果表明,当我们设置时间间隔时,见图7。不同文件夹下输出概率大于0.6、0.7、0.8和0.9的分布。处理前N个时间戳,如Ref.[23],这是我们的组合方案。在我们的比较中,两个数据集是相似的,具有相同的交易和交易维度。然而,一个数据集的样本是从固定数量的N个节点中继的时间戳,而其他数据集的样本则使用前N个时间戳进行加权。 结果显示在Fig. 6表明,从N个固定节点中继的时间戳可以更好地描述交易的网络属性。此外,我们将整体性能与Biryukov和Tikhomirov [23]的方法进行了比较,他们提出了一种调整的匿名度来衡量攻击者获得的信息量,与完美匿名相比(较低表示获得更多d调整1-11-e调整1-d调整(4)到1 h,模型不能收敛。当我们缩小时间间隔时,-PN¼pilog2pi模型将无法学习同质事务的相似性di¼1log2N(五)因为样本数据量很小根据一个探测节点和它的邻居之间的稳定连接,我们经验性地将这个时间限制设置为10分钟。6.3. 正确性分析本节分析了基于事务层的事务标记和基于网络层的事务识别的正确性。我们提出的交易标签规则是基于用户的行为习惯,利用账户地址和交易时间。交易识别主要基于交易广播时间。 账户地址和交易时间对广播时间没有影响,只有发起节点的IP对广播时间有影响。他们使用的信息是不一致和不相关的。实验结果表明,我们能够以很高的准确率识别由规则标记的同源事务被两者发现可以表明交易确实是同源的。 高准确率证明交易标签及交易识别的有效性。图7显示了模型的概率输出分布。平均88%的样本可以以大于0.9的概率被识别,这表明我们的阳性和阴性样本之间存在足够的差异(即,在我们的同源和非同源对之间),以便模型以高概率分类这也证明了我们在4.2节中的规则。6.4. 固定N与第一个N为了说明从N个固定节点中继的时间戳可以更好地描述交易的网络属性,我们将前N个时间戳作为比较。请注意,我们执行相同的数据其中e表示我们的概率分布和真实分布之间的中位平方误差。由于该公式与N直接相关(d的分子线性增加,而分母线性增加),并且Biryukov和Tikhomirov使用了5个交易,因此我们也使用5个交易进行比较。一般来说,我们不是从验证集中随机选择5个事务,而是使用模型输出的概率分布来计算事务输出的一般概率p0。从输出概率分布,我们可以计算平均概率p0。利用精度pre,我们可以计算出p1,这是属于阳性样本的概率。p1¼p0·预处理1-p0预处理1-预处理(6)因此,我们可以计算我们的攻击的调整匿名度表3所示的结果表明,我们可以获得更多的信息,虽然我们连接更少的节点。这不仅与不同数字货币的广播机制有关,还因为从固定N个节点中继的时间戳可以更好地描述交易的网络属性。6.5. 不同层面在本小节中,我们将评估数据维度对表3表现在亲密度上。方法网络节点空闲插槽dadj固定以太坊3510.563比留科夫和季霍米罗夫[23]比特币1000250.879C. Yu等人区块链:研究与应用4(2023)1001129¼见图8。 具有不同输入维度的分类器的精确度和召回率同源事务识别准确性,探索在不影响网络性能的情况下可以实现在这个实验中,我们使用一个神经网络,一个最优模型,作为原始数据集中的分类器,调整网络隐藏层的维度以适应不同的数据维度,并最终在召回率,精度和F1方面测量实验结果。利用从N个固定节点中继的时间戳作为输入,模型的性能随着节点N的增加而提高。当N达到40时,分类器可以以98%的精度识别同源事务,如图所示。八、注意,40是任何正常节点都可以连接到的数字,即,任何普通节点都可以以98%的精确度确定在短时间窗口内发起的两个事务是否从同一源节点进入网络,只要它按照所选节点的顺序记录事务的网络时间戳P2P网络中事务的广播可以粗略地认为是以源节点为根构建树的过程从不同的源节点广播将建立不同的树。在两棵树中,同一个源节点作为根节点,固定的节点将在相似的位置。因此,你知道的固定节点越多,你就越能分辨出两棵树是否相似。当描述具有前N个时间戳的事务的网络属性时,该模型无法在N > 30时区分同源和非同源对,如图所示。八、这是一个很大的问题。模型不收敛,因为在N>30时,模型在-从训练集中构造并将所有输入分配给非同源事务对的类别当前N个节点的时间作为模型的输入时,输入的每个维度都是相对时间(减去某个最小时间)。然而,由于接收事务副本的第一个节点在广播与广播之间不同,因此不同事务的时间戳序列的参考节点并不一致,因此相对时间的特征无效。N越大,节点顺序的变化就越大,不同输入之间相同维度的数据相关性就6.6. 特征提取网络中的波动可能导致邻近节点集合的变化,从而导致用于训练和验证的邻近节点集合不一致。在本小节中,我们研究了相邻节点集合的变化对识别精度的影响,并进一步探讨了第5节中特征提取的有效性。我们首先评估了不同数据维度对特征提取效果的影响,如图所示。第九章 随着维数的增加,模型的精确率和召回率增加,并在N 36处达到最大值;然后,精确率保持在约0.85,召回率保持在0.93左右。不同维度的查全率普遍高于查准率,表明该模型可以识别同源事务对中的相似性,但相似性也存在于一些非同源事务对中,这些非同源事务对被误识别为同源事务对。这可能是因为非同源事务对的两个源节点在网络中彼此接近,导致类似的广播过程。见图9。 不同维度数据的特征提取性能。在较低维度下,模型在特征提取后比使用原始数据表现更好,但在较高维度下,使用原始数据作为输入允许模型更多地了解同构事务对的相似性。因此,我们可以在训练集和验证集的交集的维数由于网络波动而较低时应用特征提取,并在较高时使用原始数据。我们进一步评估了不同的交叉维度对特征提取性能 我们通过使用训练集中不同相邻节点中继的时间戳和验证来模拟实际中由于网络波动而导致的节点差异。为了避免网络拓扑变化的影响,我们收集同一时期的交易进行验证。 如图 10,交集维数越少,模型识别准确率损失越大,甚至可能难以区分同源和非同源交易对。图10. 由于邻域限制导致的性能损失。水平坐标的分母表示数据的维数,分子表示训练集和验证垂直坐标表示有和没有尺寸差异的相对C. Yu等人区块链:研究与应用4(2023)100112107. 讨论为了确保探测节点的隐蔽性,我们只将其用于正常行为,并记录接收到的每个事务的时间戳我们不再扩大由探测节点连接的邻居的数量,这在一定程度上降低了模型的分类精度。然而,这是值得的,因为可以通过部署多个(例如,3)连接到不同固定节点的探测节点该方法的第一个限制是复杂性高我们量化了两个事务的时间戳的相似性,而不是源节点的属性虽然这避免了只针对特定节点的缺点,但它也导致我们只能通过以两对两的方式比较来识别同源事务的集群因此,在对整个网络中,我们需要进行n2次比较,这是一个相当繁琐的操作。第二个限制是我们只能判断两个交易的起始时间接近当两个事务以较长的时间间隔发起时,网络的拓扑结构发生变化,导致事务两次广播到同一节点的路径不同,相对时间无法衡量两者广播路径的差异。在未来,我们将通过选择永久连接到网络的重要相邻节点来避免拓扑变化的影响我们的计划只是一个初步的探索与节点作为实体的聚类在未来,我们将探索更有效的表示网络属性,以提高适
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Haskell编写的C-Minus编译器针对TM架构实现
- 水电模拟工具HydroElectric开发使用Matlab
- Vue与antd结合的后台管理系统分模块打包技术解析
- 微信小游戏开发新框架:SFramework_LayaAir
- AFO算法与GA/PSO在多式联运路径优化中的应用研究
- MapleLeaflet:Ruby中构建Leaflet.js地图的简易工具
- FontForge安装包下载指南
- 个人博客系统开发:设计、安全与管理功能解析
- SmartWiki-AmazeUI风格:自定义Markdown Wiki系统
- USB虚拟串口驱动助力刻字机高效运行
- 加拿大早期种子投资通用条款清单详解
- SSM与Layui结合的汽车租赁系统
- 探索混沌与精英引导结合的鲸鱼优化算法
- Scala教程详解:代码实例与实践操作指南
- Rails 4.0+ 资产管道集成 Handlebars.js 实例解析
- Python实现Spark计算矩阵向量的余弦相似度
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功