标题
    如何验证个人账户中的资产
    bybit2024-10-09 10:10:48

    默克尔树是包含哈希值的二叉树数据结构。二叉树中的一个节点最多有两个子节点,分别为左节点和右节点。默克尔树的每个叶节点都存有数据元的哈希值。只要获取到左右节点的数据,即可计算出主节点的完整信息。完整信息包含两个部分:钱包地址的余额数据和哈希数据。

    1. 余额数据:基于二叉树的数据结构,主节点的余额数据只能由所含左右节点的余额数据组成。
    2. 哈希数据:每个节点包括余额数据、二叉树的层次数据(图中虚线)和子节点的哈希数据(每个节点下所存储的左右节点数据)。

    image.png

     

    默克尔树通过计算验证,比如上图中所计算的绿色部分(B 和 D),并遵循以下两个标准:

    1.验证余额是否符合拆分原则。

    2.验证哈希值是否合法。

     

    默克尔树运用哈希函数,让用户在对紫色节点信息知之甚少的情况下,即可验证自己是否是完整树型的一部分。默克尔证明对各个用户而言是独一无二的。对于 24 层的默克尔树,用户需要长度为 24 个元素的余额数组来验证自己的余额信息,并且这个数组只用于验证用户的余额。

     

    只要获得的数据不超过默克尔树中用户数据总量的 50%,用户就无法根据已拥得的碎片化信息重构整个数据结构。因此,对于公司而言,默克尔树能确保公司整体资产信息不外泄,并保护用户的账户隐私。

     

    Bybit 提供以下两种验证方式:

     

     

     

    通过 Bybit 平台验证

    访问此页面,前往验证我的账户页面,即可查看个人的默克尔路径。我们以图形方式展示默克尔树验证的节点推导过程,让个人资产余额显示更加一目了然。
     

    image.png


    注意:我们会定期进行储量证明审计,以证明 Bybit 拥有足够的储量。 如果您在审计后创建了您的账户,或者您没有持有审计过的代币,您的账户将不会有任何相应的审计记录。

     

     

     

     

     



     

    通过自我验证工具——开源代码

    Bybit 已在 GitHub 发布默克尔树生成源代码和验证码,以协助用户自行完成余额验证流程。默克尔树的计算过程涉及海量用户数据的计算,通常由大数据和 Java 实现。Java 编码完全开放,供用户查验。

     

     

     

    背景

    Bybit 开源了以下编码,供专业用户自行验证。用户点击个人储备金证明页面“复制数据”,即可将数据复制到自己编程系统剪贴板的默克尔树证明文件中,并将此文件命名为“myProof.json”,存储于本地驱动器。


     

     

    操作方式

    1.创建可执行文件

    请下载最新的源代码文件,确保个人工作站或笔记本电脑已安装 JDK(1.8 及以上版本)和 Maven

     

    • 解决依靠、编译和打包问题

    image.png

     

     

     

    • 如下所示,检查项目当前文件夹中编译好的 jar 包

    image.png

     

     


    2.执行验证

    • 将从 Bybit 网站复制的证明文件粘贴至当前文件夹的新文件中,并将此文件命名为“myProof.json”。然后,执行以下命令:

    image.png

     

     

     

    • 下一步,运行经过验证的程序并观察输出数据

    image.png

    这篇文章有帮助吗?
    yesyes没有