Python Blockchain - Introducción

En el tutorial sobre Blockchain, hemos aprendido en detalle sobre la teoría detrás de blockchain. La cadena de bloques es el bloque de construcción fundamental detrás de la moneda digital Bitcoin más popular del mundo. El tutorial abordó en profundidad las complejidades de Bitcoin explicando completamente la arquitectura blockchain. El siguiente paso es construir nuestra propia cadena de bloques.

Satoshi Nakamoto creó la primera moneda virtual del mundo llamada Bitcoin. Al observar el éxito de Bitcoin, muchos otros crearon sus propias monedas virtuales. Por nombrar algunos: Litecoin, Zcash, etc.

Ahora, es posible que también desee lanzar su propia moneda. Llamemos a esto como TPCoin (TutorialsPoint Coin). Escribirás una cadena de bloques para registrar todas las transacciones relacionadas con TPCoin. El TPCoin se puede utilizar para comprar pizzas, hamburguesas, ensaladas, etc. Puede que haya otros proveedores de servicios que se unan a su red y comiencen a aceptar TPCoin como moneda para ofrecer sus servicios. Las posibilidades son infinitas.

En este tutorial, entendamos cómo construir un sistema de este tipo y lanzar su propia moneda digital en el mercado.

Componentes involucrados en el desarrollo de proyectos Blockchain

Todo el desarrollo del proyecto blockchain consta de tres componentes principales:

  • Client
  • Miners
  • Blockchain

Cliente

El Cliente es quien comprará bienes de otros proveedores. El propio cliente puede convertirse en vendedor y aceptará dinero de otros contra los bienes que suministra. Suponemos aquí que el cliente puede ser tanto proveedor como receptor de TPCoins. Por lo tanto, crearemos una clase de cliente en nuestro código que tiene la capacidad de enviar y recibir dinero.

Minero

El minero es quien recoge las transacciones de un grupo de transacciones y las ensambla en un bloque. El minero debe proporcionar una prueba de trabajo válida para obtener la recompensa minera. Todo el dinero que el minero recaude como tarifa será para él. Puede gastar ese dinero en la compra de bienes o servicios de otros proveedores registrados en la red, tal como lo hace un Cliente descrito anteriormente.

Blockchain

Finalmente, una Blockchain es una estructura de datos que encadena todos los bloques extraídos en orden cronológico. Esta cadena es inmutable y, por lo tanto, resistente al temperamento.

Puede seguir este tutorial escribiendo el código presentado en cada paso en un nuevo cuaderno de Jupyter. Alternativamente, puede descargar el cuaderno de Jupyter completo desde www.anaconda.com .

En el próximo capítulo, desarrollaremos un cliente que utiliza nuestro sistema blockchain.