1. 区块链
1.1. 概念
区块链已成当今社会已经成为一个炙手可热的话题,大部分人可能对于区块链技术并不了解,像技术特点,主要作用,发展方向等。今天就跟大家聊聊你说不知道的区块链。
区块链最初是信息技术领域的一个专业术语。它是借由密码学串接并保护内容的串连文字记录,又称区块,当每一个区块包含了前一个区块的加密散列、相应时间戳记以及交易数据(通常用默克尔树(Merkle tree)算法计算的散列值表示),这样的设计使得区块内容具有难以篡改的特性。用区块链技术所串接的分布式账本能让两方有效纪录交易,且可永久查验此交易。
从本质上讲,区块链技术是一个共享数据库,存储于其中的数据或信息,对外只有两种动作插入或者查询。具有“不可伪造”、“全程留痕”、“可以追溯”、“公开透明”、“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任“基础,创造了可靠的“合作”机制,具有广阔的运用前景。
1.2. 应用方向
1.2.1. 重塑“社会、人”的信任体系
1.2.2. 回溯历史
1.2.3. 塑造公平的社会价值体系
2. 技术入门
CentOs 7.0
RAM: 4G
Cpu: 2 Cores
2.1. 以太坊
以太坊(英文Ethereum)是一个开源的有智能合约功能的公共区块链平台,通过其专用加密货币以太币(Ether,简称“ETH”)提供去中心化的以太虚拟机(Ethereum Virtual Machine)来处理点对点合约。
以太坊的概念首次在2013至2014年间由程序员Vitalik Buterin受比特币启发后提出,大意为“下一代加密货币与去中心化应用平台”,在2014年通过ICO众筹开始得以发展。
截至2018年2月,以太币是市值第二高的加密货币,仅次于比特币。
社区中为了简化,都叫它伊瑟琳。
2.1.1. 依赖软件
2.1.1.1. 依赖组件
[root@localhost ~]# yum install git wget bzip2 vim gcc-c++ ntp epel-release nodejs cmake -y
2.1.1.2. 运行组件
由于源码是基于go语言开发,需要配置go语言的环境,所以需要准备安装Go环境。
下载地址https://studygolang.com/dl/golang/go1.13.6.linux-amd64.tar.gz
[root@localhost ~]# wget https://studygolang.com/dl/golang/go1.13.6.linux-amd64.tar.gz
为了安全,我创建一个用户ethm,所属用户组dev
解压go压缩包,切换ethm用户下并添加环境
[ethm@localhost app]$ vi ~/.bashrc
[ethm@localhost app]$ source ~/.bashrc
[ethm@localhost app]$ go version
go version go1.13.6 linux/amd64
[ethm@localhost app]$