![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
goland实现区块链
Clown95
a low coder
展开
-
Golang实现区块链(二)—工作量证明(poW)
在上一篇的文章中我们实现一个简单的区块链结构。相信大家都知道比特币的挖矿,本文就将基于上篇文章来实现poW挖矿功能。上篇文章地址:https://blog.csdn.net/yang731227/article/details/82932990挖矿原理在讲poW之前我们先来讲讲以比特币为例的挖矿原理,其实说挖矿其实并不准确,我们应该称其为记账。记账是把交易记录、交易时间、账本序号、上一个...原创 2018-10-04 00:16:00 · 1387 阅读 · 1 评论 -
Golang实现区块链(三)—数据持久化(2)添加CLI交互接口
上章我们实现了区块对BoltDB的写入,现在我们来完善下,可以通过命令行从BoltDB中查询区块。完善持久化上章我们实现的逻辑是这样的:1.创建DB文件,并打开2.创建桶3.创世区块链序列化4.把创世区块的Hash添加到DB中5.把创世区块添加到链中现在我们来把完善逻辑:打开DB文件检测是否已经有区块链存在如果存在创建新区块链实例把刚建的这个区块链信息的作为最后一块区...原创 2018-10-10 11:54:27 · 916 阅读 · 5 评论 -
Golang实现区块链(四)—交易
title: Golang实现区块链(四)—交易tags: go,blockchain到目前为止我们已经实现了区块链的持久化和交互界面。但是比特币中最核心的交易功能,我们还没能实现它,本章就将对区块链交易功能进行实现。比特币交易原理在实现交易功能之前,我们首先了解下比特币的交易原理,比特币采用的是 UTXO 模型,并非账户模型,并不直接存在“余额”这个概念,余额需要通过遍历整个交易历史...原创 2018-10-25 14:18:05 · 2264 阅读 · 1 评论