Go lang制作一个简单的区块链

Python07

Go lang制作一个简单的区块链,第1张

区块链是一种数据存储的结构,通过GO语言可以方便的创建一个区块链

直接上代码

1:区块接口和方法

2:创建区块链类和方法

最后测试方法:

测试结果:

PS F:goblock>go run main.go

index: 0

times: 1640488480

PrevHash:

Hash: a91a1da064bd40523be90634584c7c6a23bef44390f855ce8ff671d48b8d9e06

data: 创世区块

-----------------------------------

index: 1

times: 1640488481

PrevHash: a91a1da064bd40523be90634584c7c6a23bef44390f855ce8ff671d48b8d9e06

Hash: 28b659f29d8c8564adc23861e2fa2291dd23d14d672f080fa80ab70dcde7c059

data: 交易记录:1

-----------------------------------

index: 2

times: 1640488482

PrevHash: 28b659f29d8c8564adc23861e2fa2291dd23d14d672f080fa80ab70dcde7c059

Hash: 12b668c4d98cade9d12d651598d302663bcf64435a4e6ed1987cd1d730f324ea

data: 交易记录:2

-----------------------------------

index: 3

times: 1640488483

PrevHash: 12b668c4d98cade9d12d651598d302663bcf64435a4e6ed1987cd1d730f324ea

Hash: c420f63c9a8f73672f23b353f5fd752dee644e0f764740d090319dacccfa7be6

data: 交易记录:3

-----------------------------------

index: 4

times: 1640488484

PrevHash: c420f63c9a8f73672f23b353f5fd752dee644e0f764740d090319dacccfa7be6

Hash: ff37f186a13a4871c398869a259f288e4f504c7adcb613172fc7fbfba6488a45

data: 交易记录:4

-----------------------------------

index: 5

times: 1640488485

PrevHash: ff37f186a13a4871c398869a259f288e4f504c7adcb613172fc7fbfba6488a45

Hash: 0911b845ed602ab4f9c726b3d5dacea6c388c9e0c28db60a4aad62d94720f860

data: 交易记录:5

-----------------------------------

index: 6

times: 1640488486

PrevHash: 0911b845ed602ab4f9c726b3d5dacea6c388c9e0c28db60a4aad62d94720f860

Hash: 8f0f744d190bf204b4441900df2412d99d613bc030ab607b736c99bf1da451b5

data: 交易记录:6

-----------------------------------

index: 7

times: 1640488487

PrevHash: 8f0f744d190bf204b4441900df2412d99d613bc030ab607b736c99bf1da451b5

Hash: 3f8181b0570d615bfd0cae38f38813a46413d2ef8f40fc0bd312b7ff93fa57c5

data: 交易记录:7

-----------------------------------

index: 8

times: 1640488488

PrevHash: 3f8181b0570d615bfd0cae38f38813a46413d2ef8f40fc0bd312b7ff93fa57c5

Hash: 17ca30a31359c73ecd9b7e43319e0736d0d3043f94e541e7b9e19914f192b8ea

data: 交易记录:8

-----------------------------------

index: 9

times: 1640488489

PrevHash: 17ca30a31359c73ecd9b7e43319e0736d0d3043f94e541e7b9e19914f192b8ea

Hash: becffe7bb98f299739f6205bf16996e73315b5b752765d36ba7fc050de4abe1c

data: 交易记录:9

-----------------------------------

1、服务器编程:以前你如果使用C或者C++做的那些事情,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。

2、分布式系统、数据库代理器、中间件:例如Etcd。

3、网络编程:这一块目前应用最广,包括Web应用、API应用、下载应用,而且Go内置的net/http包基本上把我们平常用到的网络功能都实现了。

4、开发云平台:目前国外很多云平台在采用Go开发,我们所熟知的七牛云、华为云等等都有使用Go进行开发并且开源的成型的产品。

5、区块链:目前有一种说法,技术从业人员把Go语言称作为区块链行业的开发语言。如果大家学习区块链技术的话,就会发现现在有很多很多的区块链的系统和应用都是采用Go进行开发的,比如ehtereum是目前知名度最大的公链,再比如fabric是目前最知名的联盟链,两者都有go语言的版本,且go-ehtereum还是以太坊官方推荐的版本。

自1.0版发布以来,go语言引起了众多开发者的关注,并得到了广泛的应用。go语言简单、高效、并发的特点吸引了许多传统的语言开发人员,其数量也在不断增加。

使用 Go 语言开发的开源项目非常多。早期的 Go 语言开源项目只是通过 Go 语言与传统项目进行C语言库绑定实现,例如 Qt、Sqlite 等。

后期的很多项目都使用 Go 语言进行重新原生实现,这个过程相对于其他语言要简单一些,这也促成了大量使用 Go 语言原生开发项目的出现。

Go语言与区块链 涉及到的领域有 区块链上层应用开发、区块链底层系统开发、高并发服务器、Web及微服务开发,分布式开发等。Go语言与区块链主打区块链底层系统,更加深入。

我知道的是传智播客开设了这个学科,他们有的学科都会有配套资料和免费课程,可以去看看。