构建区块链 python(一)

构建区块链

前言

小编认为学习区块链如何工作的最快方法是建立一个区块链。虽然网上有很多教程或视频,小编也一一浏览过,但是觉得那些示例效果…小编喜欢边做边学,小编希望在看过这篇文章之后您将拥有一个运行正常的区块链,并对它们的工作原理有扎实的了解。

请记住!!!区块链是一个不变的顺序记录链,称为块。它们可以包含事务,文件或您真正喜欢的任何数据。但是重要的是,它们使用哈希值链接在一起。

前期准备

pip install Flask==0.12.2  requests==2.18.4 

开始流程

步骤1:建立区块链

打开你最喜欢的文本编辑器或IDE,我个人❤️ PyCharm。创建一个新文件,名为blockchain.py(代表区块链)。

创建一个区块链类

小编在这里创建一个 Blockchain类,其构造函数创建一个初始的空列表(用于存储我们的区块链),并创建另一个用于存储事务。

class Blockchain(object):
    def __init__(self):
        self.chain = []
        self.current_transactions = []
        
    def new_block(self):
        # Creates a new Block and adds it to the chain
        pass
    
    def new_transaction(self):
        # Adds a new transaction to the list of transactions
        pass
    
    @staticmethod
    def hash(block):
        # Hashes a Block
        pass

    @property
    def last_block(self):
        # Returns the last Block in the chain
        pass

Blockchain类负责管理链。它将存储事务,并具有一些用于将新块添加到链中的辅助方法。

块看起来像什么?

每个Block都有一个索引,一个时间戳(以Unix时间表示),一个事务列表,一个证明以及前一个Block的哈希值。
这是单个块的外观示例:

block = {
   
    'index': 1,
    'timestamp': 1506057125.900785,
    'transactions': [
        {
   
            'sender': "8527147fe1f5426f9dd545de4b27ee00",
            'recipient'
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值