区块链的可追溯性来源于区块链数据结构的特殊性。在区块链系统中,它的链式结构是从创世区块开始的,其后系统产生的所有区块都通过父区块的哈希值前后相连,并最终能追溯到创世区块。
由于每个区块都包含一段时间内系统进行的所有交易数据,因此完整的区块链数据包含了自创世区块以来,系统所有进行的交易及交易前后的关联信息。同时,得益于区块链信息的不可篡改特性,使得这种可追溯性是可靠可信的。
随着区块链架构体系的不断发展,越来越多的研究对区块进行改造从而实现了对空间属性的支持。
因此,区块链技术可以为数据打上时空标签,通过在区块中加入数据的时间和空间信息,将同样内容的数据集标识为不同的数据集个体,从而解决了数据要素流通中数据集可以被无限复制而无法辨识的难题,实现数据来源可确认。
const SimpleStorage=artifacts.require("SimpleStorage");
module.exports=function(deployer){
deployer.deploy(SimpleStorage);
};
pragma solidity^0.8.0;
contract SimpleStorage{
uint256 private value;
function setValue(uint256 newValue)public{
value=newValue;
}
function getValue()public view returns(uint256){
return value;
}
}
const Web3=require("web3");
const ganache=require("ganache-cli");
const web3=new Web3(ganache.provider());
web3.eth.getAccounts().then(accounts=>{
console.log(accounts);
});