1.数据层主要描述区块链技术的物理形式,是区块链上从创世区块起始的链式结构,每个区块包含了区块上的随机数、时间戳、公私钥数据等,是整个区块链技术中底层的数据结构。
2.网络层:包括分布式组网机制、数据传播机制和数据验证机制等
网络层的主要目的是实现区块链网络中节点之间的信息交流。网络层主要通过P2P技术实现分布式网络的机制,网络层包括P2P组网机制、数据传播机制和数据验证机制,因此区块链本质上是一个P2P(点对点)网络,具备自动组网的机制,节点之间通过维护一个共同的区块链结构来保持通信。每一个节点既接收信息,也产生信息。
3.共识层:主要包含共识算法以及共识机制,
负责点对点模式的有效识别认证;共识层能让高度分散的节点在去中心化的区块链网络中高效地针对区块数据的有效性达成共识,是区块链的核心技术之一,也是区块链社群的治理机制。
数据层、网络层、共识层是构建区块链技术的必要元素,也是核心层,缺少任何一层都不能称之为真正意义上的区块链技术。
contract Sample
{
//状态变量
uint256 data;
address owner;
//定义事件
event logData(uint256 dataToLog);
//函数修改器
modifier onlyOwner() {
if(msg.sender!=owner) throw;
}
//构造器,名字与合约名一致
function Sample(uint256 initData,address initOwner) {
data = initData;
owner = initOwner;
}
//函数
function getData() returns (uint256 returnedData) {
return data;}
function setData() returns (uint256 newData) onlyOwner {
logData(newData);
}
data = newData;
}