首页 > 编程语言 > 详细

Java 实现区块链中的区块,BLOCK的实现

时间:2018-04-25 18:44:24      阅读:194      评论:0      收藏:0      [点我收藏+]
1、区块是区块链的基础单元

区块链由若干个区块组成,区块是区块链的基础单元

技术分享图片

2、区块链中区块的基本属性

区块6个属性的说明-Index 区块的索引值,区块链中的唯一键
区块6个属性的说明-Timestamp 区块的时间戳,用于区分区块的产生时间
区块6个属性的说明-Hash 区块的hash值是整个区块各个内容整体计算出的hash值
区块6个属性的说明-Previous Hash 前一个区块的hash值
区块6个属性的说明-Data 区块链的数据存储部分,例如比特币是用来存储交易数据
区块6个属性的说明-Nonce(挖矿原理,比特币难度举例) nonce值是形成有效hash的计算出来的
3、区块链区块的代码实现

package cn.wenwuyi.blockchain.pojo;

/**
 * 
 * 类名:Block.java
 * 描述:区块实体类
 * 时间:2018年3月12日 下午7:03:50 
 * @author cn.wenwuyi
 * @version 1.0
 */
public class Block {
    /**
     * 索引
     */
    private int    index;
    /**
     * 前一个区块的hash值
     */
    private String previousHash;
    /**
     * 时间戳
     */
    private long   timestamp;
    /**
     * 数据,交易数据等
     */
    private String data;
    /**
     * hash值
     */
    private String hash;
    /**
     * nonce值(难度系数)
     */
    private long nonce;

    public Block() {
    }

    public Block(int index, String previousHash, long timestamp, String data, String hash,long nonce) {
        this.index = index;
        this.previousHash = previousHash;
        this.timestamp = timestamp;
        this.data = data;
        this.hash = hash;
        this.nonce = nonce;
    }

    public int getIndex() {
        return index;
    }

    public void setIndex(int index) {
        this.index = index;
    }

    public String getPreviousHash() {
        return previousHash;
    }

    public void setPreviousHash(String previousHash) {
        this.previousHash = previousHash;
    }

    public long getTimestamp() {
        return timestamp;
    }

    public void setTimestamp(long timestamp) {
        this.timestamp = timestamp;
    }

    public String getData() {
        return data;
    }

    public void setData(String data) {
        this.data = data;
    }

    public String getHash() {
        return hash;
    }

    public void setHash(String hash) {
        this.hash = hash;
    }

    public long getNonce() {
        return nonce;
    }

    public void setNonce(long nonce) {
        this.nonce = nonce;
    }

}

Java 实现区块链中的区块,BLOCK的实现

原文:http://blog.51cto.com/4577390/2107812

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!