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

Python011

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.Khan Academy;2.Udemy;3. Lynda;4.Coursera;5.PluralSight等。另外,学习区块链你还得知道区块链与编程语言的关系。学习区块链开发建议建立在Go语言和java基础上,而且Go语言的学习难度比Java略低。

Khan Academy

如果你想重温一下你的比特币知识,或者从头开始学习加密货币,知识点讲解的很彻底,并且会让你在区块链的道路上走向正确的方向。您可以通过8个独立的步骤,从基本的概述到对加密哈希函数、数字签名、工作量证明和区块链安全性的解释。

2.Udemy

你不会因为参加2小时的在线课程而得到哈佛大学的教育。但实际上, 作为一个区块链爱好者, Udemy 可能更有用。根据你的技术水平, 这里的每个人都有很多东西。

对于那些想了解区块链基本知识的人来说, 有一个很好的课程叫做“ 区块链和比特币的基础”。在上面的课程中,你可以得到2小时的课程,可下载的资源,以及在你想要完成课程后,你可以随时访问课程的机会。

如果这能激励你继续上课,你也会得到证书。但最重要的是,你会对比特币的基本概念有一个深刻的了解。

3. Lynda

LinkedIn的Lynda提供了跨越所有级别的大量不同课程。

4.Coursera

Coursera的价格随着复杂性的不同而不同,尽管它们确实有一些免费的选择,鼓励你购买单独的补充课程材料。

课程由斯坦福、麻省理工学院和普林斯顿等大学的教授创建和教授,如果你想寻找优秀的导师,课程设置是个明智的选择。通过这些课程,你不会得到普林斯顿的证书,但是你会接触到一些学术界最聪明的人。

其中一个特别突出的课程是“比特币和加密技术”,该课程由普林斯顿大学的四位主要教授进行教授。这是一个为期11周的计划,涵盖密码学、比特币挖掘、规则、挖掘谜题,甚至还有一个关于altcoins的章节。此外,本课程还包括详细的讲课、练习、继续阅读和家庭作业。

5.PluralSight

PluralSight充满了新的技术课程,这些课程都是实际操作和具体的。例如,如果你想学习MySQL或Javascript等编程语言。