Creadores de código – ¿Aplicación que usa Litecoin? ¡Así que veamos el modo de prueba de regresión! (Parte 2)

Esta es la segunda parte de una serie de artículos para desarrolladores, cuyo objetivo es comprender mejor el funcionamiento de las monedas digitales de la mejor manera que un desarrollador conoce: ¡CODANDO!

Consulte la parte 1 antes:

¡Empecemos!

La mayoría de los desarrolladores que quieren empezar a trabajar en el desarrollo de aplicaciones con criptomonedas, creen que necesitan asignar una máquina en la nube para ello, siguiendo las especificaciones de la moneda elegida …

Vaya, las especificaciones recomendadas para Bitcoin, por ejemplo, son:

Requisitos del sistema

Aunque u m no es la especificación pesada y costosa de colocar en la nube, todavía tiene su valor. ¿Y ejecutar localmente? No todo el mundo puede permitirse 200 GB de espacio libre en su disco, especialmente hoy en la era de las SSD

Entonces, sin ningún problema, vayamos a la solución.

Como se explicó en el artículo anterior, Bitcoin tiene diferentes redes, Mainnet (red principal) y Testnet (red de prueba global), pero podemos encontrar una tercera red, Regtest, es una red local de Bitcoin, donde tendremos nuestra propia blockchain y actuaremos como mineros de nuestra red, este modo consume casi nada de tu espacio en disco (porque podemos elegir el tamaño de nuestra cadena) y mucho menos de procesamiento y memoria, a lo largo del artículo, entenderemos mejor esos factores, pero pongámonos manos a la obra, ¡gestionemos nuestra propia cadena de datos!

Vayamos dentro de nuestro contenedor docker creado en el artículo anterior.

Nota: si eliminó su contenedor, simplemente extraiga la imagen en el centro de la ventana acoplable: $ docker pull leonbonetti / litecoin_node: 1.0

Para ingresar al contenedor, simplemente use el comando docker adjuntar & quot; nombre de su contenedor & quot;

Y dentro de él, ejecutaremos litecoind simplemente cambiando el indicador -testnet a -regtest

Bien, nuestro servicio se está ejecutando, si tiene curiosidad por ver cuánto consume este servicio de memoria, CPU, etc., simplemente use el comando $ docker stats fuera de su contenedor

Empezaremos a realizar algunas interacciones con nuestro nodo, para eso usaremos litecoin-cli. Lo primero que debemos hacer es verificar el saldo de nuestra cuenta.

El valor devuelto debe haber sido: 0.00000000

Ahora comenzaremos a comprender una parte extremadamente importante de los nodos, cómo funcionan las direcciones y las cuentas.

Date cuenta de que al final del comando getbalance utilicé un conjunto de comillas vacías, esto representa la cuenta en la que quiero ver el saldo, la cuenta predeterminada cuando iniciamos un nuevo nodo, siempre es: " "

para comprender mejor qué son estas "cuentas", pondré un diagrama a continuación.

Este no es el diagrama técnico, pero nos ayudará a comprender cómo funcionan las cuentas.

Estamos acostumbrados a las direcciones de las monedas, sin embargo, cada dirección pertenece a una cuenta y cada cuenta pertenece a una billetera.

Cuando usamos el comando $ getbalance & quot; & quot; , le pedimos que devuelva el valor de la suma de UTXO de todas las direcciones en la cuenta estándar ("").

Nota: No se preocupe por el término UTXO por ahora, lo entenderemos más adelante

Genial, sabemos que todo está funcionando, pero ahora necesitamos crear una cadena de bloques para nosotros, esto es extremadamente simple de hacer, solo use el siguiente comando:

El comando generate crea una cadena de bloques donde su altura es el número pasado como parámetro, en este caso, acabamos de crear una cadena con 101 bloques.

Su devolución debe haber sido similar a esta:

Esta información dentro de la matriz es el hash de los bloques creados, si está interesado en ver el contenido de un bloque, puede usar el getblock & quot; hash & quot;

Ejemplo:

Su devolución debe haber sido similar a esta:

Obs: Todos los elementos de esta declaración se entenderán durante la serie de artículos

Ahora que tenemos nuestra cadena de bloques, veamos nuestro saldo nuevamente:

Si creó los 101 bloques, su devolución debería ser: 50.00000000

Comprendamos de dónde vino ese dinero:

Al extraer un bloque y propagarlo en la red, el minero recibe una recompensa de X litecoins, esta recompensa al inicio de la red es de 50 Litecoins, en el caso de bitcoin, esta recompensa cae a la mitad cada 4 años. Por curiosidad, la recompensa actual de la red Bitcoin es de 12,5 BTC por bloque

En nuestra red de prueba, como somos el minero, recibimos la recompensa, sin embargo solo es válida a partir del bloque centésimo (100), ya que se requieren 100 confirmaciones para su recepción, es decir, del bloque 101 , tenemos 50 Litecoins.

Es importante señalar que en esta red de prueba, a solo 50 bloques del centésimo, se paga la recompensa de 50 Litecoins

Ahora que tenemos algo de dinero, comencemos a comprender cómo funcionan los tokens. Para hacer esto, ejecutemos el siguiente comando:

Obtuvimos los siguientes comentarios:

El txid representa nuestra transacción, como su nombre lo indica, es la identificación de la transacción, si está interesado en saber a qué cuenta se dirigió esta transacción, simplemente escriba el siguiente comando:

Devolución:

La cuenta receptora se especificó dentro de detalles , en el ejemplo anterior era la cuenta predeterminada ("")

¿Codificamos? Ve al siguiente artículo: