一个简单的区块链数据库。

BlockchainDataBase的Python项目详细描述


simpleblockchaindatabaseOpen Source Helpers

在这个存储库中,您可以找到一个基于区块链技术的简单数据库。

IN THIS MOMENT THE DATABASE JUST WORK AS LOCALLY AND ONE DEVICE

版本

1.1.4

许可证

MIT License

要求

python=3.6

项目结构

├── BlockchainDataBase
│   ├── Data
│   │   ├── __init__.py
│   │   ├── DBManage.py
│   ├── __init__.py
│   ├── Block.py
│   ├── Blockchain.py
├── Test
│   ├── Test1.py
│   ├── Test2.py
│   ├── Test3.py
│   ├── Test4.py
├── LICENSE
├── README.md
├── setup.py

测试

  • test1.py,此测试只创建区块链的genesis块。
  • test2.py,此测试将一个块添加到区块链并打印块。
  • test3.py,此测试向区块链中添加2个区块,打印区块并验证区块链。
  • test4.py,显示所有块。

安装

来自官方pypi.org

python -m pip install BlockchainDataBase

来自test.pypi.org

python -m pip install --index-url https://test.pypi.org/simple/ BlockchainDataBase

配置

如果要更改数据库上的文件夹或在此文件中执行的数据库名称,可以在文件夹中找到json格式的配置文件。

# The data saves on %APPDATA% directory.
├── BlockchainDataBase
│   ├── Data
│   │   ├── config.json
config.json

{
    "DEFAULT": {
        "DATABASE_NAME": "blockchain_database.bc",
        "CONFIG_FILE": "config.json"
    }
}

示例

初始化区块链。

from BlockchainDataBase.Blockchain import Blockchain

bc = Blockchain()

在区块链中添加一个区块。

data = {"Data": "dataResult"}
bc.add_block(data)

显示区块链中的所有区块。

bc.print_blocks()

验证区块链以检查是否未损坏

bc.validate_chain()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
正在从节点解密字符串。Java中的js?   java未来超时和IO超时   java apache camel多播以异步方式执行聚合   java需要710次尝试在Android和Raspberry Pi之间建立socket连接   在Java中使用“+,”循环绘制形状   java安卓:如何计算两点之间的距离   java多线程Hello World   刷新后缓存共享变量的java Freemarker模板   java我试图通过迭代用整数填充数组,但我得到了ArrayIndexOutOfBoundsException   JNI C++到java 32位图像的不正确显示   java哪个更快:克隆还是使用流?   java cache2k和Generic T不能很好地结合在一起   java如何在读取文件之前更新文件内容?   java如何在GWT中从JSNI方法调用JSNI方法   将MySQL类型文本映射到Java Hibernate的类型   java如何按长度对字符串排序   java RecyclerView:在滚动期间不断更改数据