# goblockchain **Repository Path**: alan223/goblockchain ## Basic Information - **Project Name**: goblockchain - **Description**: 使用go写一个区块链 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-06-08 - **Last Updated**: 2025-06-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Go语言实现简易区块链 - 学习进度记录 > 📖 参考教程:[用Go语言开发区块链从零到一](https://www.zhihu.com/column/c_1425139266972626944) --- ## ✅ 第一次更新 **更新内容:** 1. 构建基本的区块和区块链数据结构 2. 添加区块链运行、创世块和普通区块的创建方法 3. 引入工作量证明(POW)算法,设置难度和目标 4. 实现交易机制,引入比特币的 UTXO 模型 5. 实现基本交易功能:查询余额、构建交易、打包上链等 **重点学习:** - 区块链的基本特性、原理与运行流程 - 如何使用 Go 语言实现区块链的数据结构 - POW 挖矿算法的原理与实现方法 - UTXO 模型的运作机制与转账逻辑 --- ## ✅ 第二次更新 **更新内容:** 1. 将区块链数据持久化存储到数据库(Badger)中 2. 所有区块链读写操作统一改为基于数据库 3. 引入交易池,每次出块从交易池中打包交易 4. 添加命令行程序,增强用户交互性 **重点学习:** - 区块链的持久化存储方案 - Badger 数据库的基本用法 - 迭代器设计思想的实践 - Go 语言命令行程序的构建方法 - 数据序列化与反序列化操作技巧 ---