Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

EastTang/BlockChain

Open more actions menu

Repository files navigation

基于分布式账本的交易网络

软件功能

  1. 参考比特币系统,实现去中心交易网络。每个人管理自己的钱包,所有交易由账本记录,而账本存放在由众多节点组成的去中心网络。
  2. 目前已实现查看链(账本)、余额计算节点交易挖矿(记账)等个体基本交易操作,同时针对多用户多节点网络环境,配置了节点广播和记录账本同步的功能,确保同一网络下的各节点顺利交易
  3. 另外,对传输层进行拓展,实现了集体聊天室功能,网络中各节点可以在软件内进行文本信息交流
  4. 考虑到用户信息保密保护,对传输层数据增设了初步的DES加密模块,并且根据实际需要后续可拓展应用其它加密算法

模块设计

  • 总体结构

    总体架构

  • 多节点逻辑处理流程

    image-20201229132058122

  • 传输模块

    image-20201229132147479

  • 数据加密模块

    image-20201229132208283

界面布局

  • 主界面

    image-20201229113051525
    • 用户信息
      • 用户ID:当前用户在本网络中的唯一标识
      • 注册时间
      • 余额:分为已入账(已经记录到区块中,不能轻易改变,可信度高)、未入账(另外包含了交易池的交易记录,等待写入账本。可信度相对不高)
    • 单节点
      • 链:查看当前区块链记录,即查看账本
      • 余额:遍历账本和交易池,计算并更新用户余额
      • 交易:呼出交易窗口,新建一笔交易
      • 挖矿:根据内置算法,计算区块hash取得工作量证明,获取系统奖励;挖取到的新区块会被添加到当前节点的链上,等待其他节点同步
    • 多节点
      • 广播节点:将当前节点的IP地址广播到网络中,其他节点接收到数据会注册本节点,并回拨其IP到本节点
      • 节点列表:查看当前已注册的节点和用户,其中内置用户"0"为系统,用户“Test”作测试使用
      • 同步最长链:广播消息到网络,请求其它节点发送链信息,接收到回拨信息后进行比对验证和替换
    • 信息输出框:展示必要系统操作状态和聊天信息
    • 聊天编辑框和发送按钮:支撑聊天室功能
  • 交易窗口

    image-20201229130353693
    • 填写交易信息和提交交易记录,交易记录会广播到当前网络,其他节点接收后录入其交易池
    • 其中发送方固定为当前用户ID,接收方为节点列表内以记录的用户

使用流程

  1. 解压软件包,共两个文件config.jsonBlockchain_app.exe,放在同一目录下

  2. 连接指定热点或WiFi,查看本机IP,将IP地址填入config.json"ip":,替换已有配置后保存文件并退出;端口号默认不变

    {
        "ip": "Your IP Address",
        "port": 9527
    }
  3. 双击运行Blockchain_app.exe,打包封装后启动速度较慢,稍等一分钟

  4. 主页面出现后,为保证体验顺利,请先点击“广播节点”按钮以注册节点到网络

  5. 后续即可自行操作

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.