Python 区块链 - 开发客户端


客户是持有 TPCoins 并通过网络上其他供应商(包括他自己的供应商)进行商品/服务交易的人。我们应该为此目的定义一个Client类。为了为客户创建全球唯一的标识,我们使用 PKI(公钥基础设施)。在这一章中,我们就来详细谈谈这个问题。

客户应该能够将钱从他的钱包发送给另一个已知的人。同样,客户应该能够接受来自第三方的资金。为了花钱,客户将创建一个交易,指定发送者的姓名和要支付的金额。为了接收资金,客户将向第三方(本质上是资金的发送者)提供他的身份。我们不会将客户持有的余额存储在他的钱包中。在交易过程中,我们会计算实际余额,以确保客户有足够的余额进行付款。

为了开发Client类以及项目中的其余代码,我们需要导入许多 Python 库。下面列出了这些 -

# import libraries
import hashlib
import random
import string
import json
import binascii
import numpy as np
import pandas as pd
import pylab as pl
import logging
import datetime
import collections

除了上述标准库之外,我们还将签署交易、创建对象的哈希值等。为此,您将需要导入以下库 -

# following imports are required by PKI
import Crypto
import Crypto.Random
from Crypto.Hash import SHA
from Crypto.PublicKey import RSA
from Crypto.Signature import PKCS1_v1_5

下一章我们来谈谈客户类。