- 将项目更名为 blockj
- 重构项目,重写了 80% 的代码,将项目拆分成一个多模块的项目,分为
blockj-base
,blockj-miner
,blockj-client
- 完全采用命令行的方式运行,不再依赖 IED
- 交互采用命令模式,不再通过浏览器调用 API 的形式
- 优化了区块同步和有以及存储服务
- 移除账号同步广播功能,各个节点根据交易记录生成本地账号
- 加入 swagger 依赖,生成 API 文档
- 调整 API 结构, 更新 README 文档
- 修复一些已知的bug
- 加入共识和自动挖矿
- 将项目名称修改为 ppblock
- 重构钱包生成算法,修改了签名算法,新增通过助记词创建钱包, 新增生成 keystore file 钱包文件功能
- 支持通过私钥字符串, 助记词,助记词+密码,keystore + 密码等多种方式恢复钱包(此处可以点赞)
- 修改了交易(Transaction) 和账户(Account)实体的数据结构, 职责更加明确,Account 不在存储公钥等数据,只存储地址和余额。
- 鉴于网上很多同学都吐槽说项目启动的时候一直不断的抛出异常,其实这是系统启动之后自动同步其他节点的最新区块数据导致的,因为 tio 配置的初始同步节点都没有启动,所以一直抛出连接超时的异常,其实这并不影响系统运行,但是为了方便那些有强迫症的同学(本人也是强迫症患者), 增加了 peer-discover 配置,可以手动关闭 p2p 网络同步,作为单节点测试运行。
- 添加发送交易后自动挖矿功能,可配置成手动挖矿,默认是自动挖矿,如果初学者建议配置手动挖矿,这样你能更清楚的了解整个区块链交易工作的流程
- 修复了一些已知的 Bug...
- 初步了完成的区块链的各个模块,包括账户,区块链,网络等模块实现
- 实现了账户创建,发送交易和挖矿功能
- 实现了网络功能,包括发送广播账户,广播区块,广播交易以及自动同步区块功能。