码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2018-04-25 19:04:25      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:区块链   区块   java区块链   java区块链技术   区块链技术   

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的实现

标签:区块链   区块   java区块链   java区块链技术   区块链技术   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!