【问题标题】:reading data stored into blockchain读取存储在区块链中的数据
【发布时间】:2018-06-23 21:47:10
【问题描述】:

我使用 arraylist 包含对象(块类)在 java 中实现了一个简单的区块链。

    public static ArrayList<Block> blockchain = new ArrayList<Block>();

...和包含我需要存储到区块链中的交易的块类。

  public Block(transaction data,String previousHash ) {

    this.data = data;

    this.previousHash = previousHash;

    this.timeStamp = new Date().getTime();


              this.hash = calculateHash(); 
}

事务类包含数据:文件病历的病历标题哈希.....

    public transaction(String title,String date,String pointer,int version,int nbdoctor,int nbsdoctor ,byte[] patient 
        ,String hashdata , ArrayList<byte []> permission , ArrayList<byte []> spermission ,byte[] newdoctorkey , byte[] newsdoctorkey ,
        byte[] removedoctor ,byte[] sremovedoctor) 

但我不知道如何从这个区块链中读取数据。 我想根据标题字段将数据放入事务对象中。 我想要一种快速的方法来访问区块链中的数据(进入数组列表)。

谢谢。

【问题讨论】:

    标签: arraylist blockchain


    【解决方案1】:

    这个问题的答案简单明了。 要读取存储在区块链中的区块中的数据,您需要一个“区块浏览器”。

    现在根据你所归属的区块链类型,你应该选择相关的区块浏览器。对于比特币区块链,你需要一个比特币浏览器;同样对于以太坊区块链,你需要一个以太坊浏览器。

    【讨论】:

    • Intellipaat 是一个众所周知的垃圾邮件网站。不要链接到它以增强您的答案,除非您来自那里,在这种情况下,请告诉我。
    • @Bhargav Rao - Roshan Raj 已经在他的个人资料中告诉我们他是 Intellipaat 的研究分析师。
    【解决方案2】:

    您似乎无法理解块的概念。一个块总是包含区块链中的多个交易。这些事务被构造为 Merkle 树,以提高读/写性能。如果你只在一个块中放置一个事务,那么使用一个块是没有意义的。此时,您不妨使用一个简单的哈希链,其中每个事务都包含对其前身的引用。

    更多请参考:https://en.wikipedia.org/wiki/Blockchain

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-05
      • 1970-01-01
      • 2013-04-25
      相关资源
      最近更新 更多