
Orbit 旨在通过递归遍历交易历史来探索区块链钱包的网络。数据以图形形式呈现,以揭示主要资金来源、资金去向及可疑连接。
注意: Orbit 仅运行于 Python 3.2 及以上版本。
让我们从爬取一个钱包的交易历史开始。
python3 orbit.py -s 1AJbsFZ64EpEfS5UAjAfcUG8pH8Jn3rn1F
爬取多个钱包的操作并无不同。
python3 orbit.py -s 1AJbsFZ64EpEfS5UAjAfcUG8pH8Jn3rn1F,1ETBbsHPvbydW7hGWXXKXZ3pxVh3VFoMaX
默认情况下,Orbit 从每个钱包获取最近 50 笔交易,但可以通过 -l 选项进行调整。
python3 orbit.py -s 1AJbsFZ64EpEfS5UAjAfcUG8pH8Jn3rn1F -l 100
Orbit 的默认爬取深度为 3,即它会获取目标钱包的历史记录,爬取新发现的钱包,然后再次爬取结果中的钱包。可以通过 -d 选项增加或减少爬取深度。
python3 orbit.py -s 1AJbsFZ64EpEfS5UAjAfcUG8pH8Jn3rn1F -d 2
仅与目标进行过少数交互的钱包可能并不重要,通过使用 -t 选项,可以指示 Orbit 在每一层只爬取前 N 个钱包。
python3 orbit.py -s 1AJbsFZ64EpEfS5UAjAfcUG8pH8Jn3rn1F -t 20
如果你想使用自己喜欢的图形查看器浏览收集到的数据,可以使用 -o 选项。
python3 orbit.py -s 1AJbsFZ64EpEfS5UAjAfcUG8pH8Jn3rn1F -o output.graphml
支持的格式
graphml(大多数图形查看器支持)json(用于原始数据处理)这是你的终端仪表盘。

扫描完成后,图形将自动在默认浏览器中打开。如果没有打开,请手动打开 quark.html。
如果你的图形看起来像下面这样杂乱无章,或者更糟糕,不用担心。

选择 Make Clusters 选项,使用社区检测算法形成聚类。之后,你可以使用 Color Clusters 为每个社区赋予不同颜色,然后使用 Spacify 选项修复重叠的节点和边。

边的粗细取决于两个钱包之间的交易频率,而节点的大小则取决于交易频率和节点的连接数。
由于 Orbit 使用 渲染图形,有关各种功能和控件的更多信息,请参阅 Quark 的 README。