Учебники

Python Blockchain — развивающийся клиент

Клиент — это кто-то, кто держит 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

В следующей главе давайте поговорим о классе клиента.