💻基于区块链的记忆app的服务端,python实现,并参加dorahacks黑客马拉松。
Branch: master
Clone or download
Pull request Compare This branch is 6 commits ahead of xilibi2003:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
web
.gitignore
Dockerfile
LICENSE
Pipfile
Pipfile.lock
README-en.md
README.md
blockchain-pc.py
blockchain.py
post_test.py

README.md

针对区块链app应用的改进

APP地址:https://github.com/cloisonne/Drifting

增加block属性

改进了block属性,以与记忆app(一款基于区块链的心情分享、漂流瓶社交应用)配合。

    def new_block(self, proof: int, my_message: str, previous_hash: Optional[str]) -> Dict[str, Any]:
        """
        生成新块

        :参数proof: 工作量证明算法给出的证明
        :参数previous_hash: 上一个块的哈希值
        :return: 一个新块
        """

        block = {
            'index': len(self.chain) + 1,
            'my_message': my_message,
            'timestamp': time(),
            'transactions': self.current_transactions,
            'proof': proof,
            'previous_hash': previous_hash or self.hash(self.chain[-1]),
        }

加入web端,与flask交互

php实现 需要搭建apache+php环境。

修改了挖矿等方法的method

@app.route('/mine', methods=['GET','POST'])

post_test

用于模拟post,发送挖矿请求。


以下是原作者的README

用Python从零开始创建区块链

本文是博客:用Python从零开始创建区块链 的源码. 翻译自Building a Blockchain

博客地址| 英文README

安装

  1. 安装 Python 3.6+ is installed.
  2. 安装 pipenv.
$ pip install pipenv 
  1. 创建virtual env.
$ pipenv --python=python3.6
  1. 安装依赖.
$ pipenv install 
  1. 运行节点:
    • $ pipenv run python blockchain.py
    • $ pipenv run python blockchain.py -p 5001
    • $ pipenv run python blockchain.py --port 5002

Docker运行

另一种方式是使用Docker运行:

  1. 克隆库
  2. 构建docker容器
$ docker build -t blockchain .
  1. 运行
$ docker run --rm -p 80:5000 blockchain
  1. 添加多个节点:
$ docker run --rm -p 81:5000 blockchain
$ docker run --rm -p 82:5000 blockchain
$ docker run --rm -p 83:5000 blockchain

贡献

深入浅出区块链 想做好的区块链学习博客。 博客地址 欢迎大家一起参与贡献,一起推动区块链技术发展。