-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBlock.java
More file actions
66 lines (56 loc) · 1.3 KB
/
Copy pathBlock.java
File metadata and controls
66 lines (56 loc) · 1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package com.mindata.blockchain.block;
import cn.hutool.crypto.digest.DigestUtil;
/**
* 区块
* @author wuweifeng wrote on 2018/2/27.
*/
public class Block {
/**
* 区块头
*/
private BlockHeader blockHeader;
/**
* 区块body
*/
private BlockBody blockBody;
/**
* 该区块的hash
*/
private String hash;
/**
* 根据该区块所有属性计算sha256
* @return
* sha256hex
*/
private String calculateHash() {
return DigestUtil.sha256Hex(
blockHeader.toString() + blockBody.toString()
);
}
public BlockHeader getBlockHeader() {
return blockHeader;
}
public void setBlockHeader(BlockHeader blockHeader) {
this.blockHeader = blockHeader;
}
public BlockBody getBlockBody() {
return blockBody;
}
public void setBlockBody(BlockBody blockBody) {
this.blockBody = blockBody;
}
public String getHash() {
return hash;
}
public void setHash(String hash) {
this.hash = hash;
}
@Override
public String toString() {
return "Block{" +
"blockHeader=" + blockHeader +
", blockBody=" + blockBody +
", hash='" + hash + '\'' +
'}';
}
}