Python Blockchain 简明教程

Python Blockchain - Developing Client

客户端是指持有 TPCoin 并与网络上的其他供应商(包括他自己的供应商)进行商品/服务交易的人。我们应该为此目的定义一个 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

在下一章中,让我们讨论客户端类。