VINUCHAIN
  • ®️VinuChain | VC
  • 📃WHITEPAPER
    • Whitepaper
      • Descargo de Responsabilidad
      • Resumen
      • 1. Introducción
      • 2. Antecedentes
      • 3. Protocolo VinuChain
      • 4. Mecanismo de Consenso
      • 5. Sistema de Cuotas
      • 6. Arquitectura de Red
      • 7. VinuChain Coin (VC)
      • Conclusión
      • Referencias
  • 👩‍💻DOCUMENTACIÓN TÉCNICA
    • VinuChain Testnet
      • Testnet Oficial
      • Nodo Testnet
      • Red Privada (Fakenet)
    • Validadores (Nodos)
      • Conviértase en Validador
      • Actualizar información del Validador
      • Llamadas de Delegación
      • Llamadas de Bloqueo de Stake
      • Llamadas de Recompensas
      • Llamadas al Validador
    • Opera
      • Crear un Validador
      • Contrato SFC
      • Lanzamiento del Validador
      • Nodo Sólo-Lectura
      • API Nodo
    • Contratos Inteligentes
      • Desplegar Contratos Inteligentes
Powered by GitBook
On this page
  1. DOCUMENTACIÓN TÉCNICA
  2. VinuChain Testnet

Red Privada (Fakenet)

Crea tu propia Red Privad (Fakenet)

Fakenet es una red privada optimizada para sus pruebas privadas. Generará una génesis que contendrá N validadores con staking iguales. Para lanzar un validador en esta red, todo lo que necesitas hacer es especificar un ID de validador que estás dispuesto a lanzar.

Presta atención a que las claves privadas de los validadores se generan de forma determinista en esta red, por lo que debes utilizarla sólo para pruebas privadas.

Mantener tu propia red privada es más complicado, ya que muchas de las configuraciones que se dan por sentadas en las redes oficiales necesitan ser configuradas manualmente.

Para ejecutar la fakenet con un solo validador (que funcionará prácticamente como una blockchain PoA), utilice:

$ opera --fakenet 1/1

Para ejecutar la fakenet con 5 validadores, ejecute el comando para cada validador:

$ opera --fakenet 1/5 # first node, use 2/5 for second node

Si tiene que lanzar un nodo no validador en fakenet, utilice 0 como ID:

$ opera --fakenet 0/5

Después de eso, tienes que conectar tus nodos. Conéctelos estáticamente o especifique un bootnode:

$ opera --fakenet 1/5 --bootnodes "enode://verylonghex@1.2.3.4:5050"

Scripts

  • iniciar red: ./start.sh;

  • detener red ./stop.sh;

  • limpiar datos y registros: ./clean.sh;

Puede especificar el número de validadores genesis configurando la variable de entorno N.

Ejemplo de transferencia de saldo

  • Iniciar red:

N=3 ./start.sh
  • Adjuntar js-console al node0 en ejecución:

go run ../cmd/opera attach http://localhost:4000
  • Comprueba el saldo para asegurarte de que node0 tiene algo que transferir (node0 js-console):

ftm.getBalance(ftm.accounts[0]);

la salida muestra el valor del saldo:

1e+27
  • Obtén la dirección de nodo1:

go run ../cmd/opera attach --exec "ftm.accounts[0]" http://localhost:4001

la salida muestra la dirección:

"0x02aff1d0a9ed566e644f06fcfe7efe00a3261d03"
  • Transferir cierta cantidad desde el nodo0 a la dirección del nodo1 como receptor (node0 js-console):

ftm.sendTransaction(
	{from: ftm.accounts[0], to: "0x02aff1d0a9ed566e644f06fcfe7efe00a3261d03", value:  "1000000000"},
	function(err, transactionHash) {
        if (!err)
            console.log(transactionHash + " success");
    });

la salida muestra el hash único de la transacción saliente:

0x68a7c1daeee7e7ab5aedf0d0dba337dbf79ce0988387cf6d63ea73b98193adfd success
  • Comprueba el estado de la transacción por su hash único (js-console):

ftm.getTransactionReceipt("0x68a7c1daeee7e7ab5aedf0d0dba337dbf79ce0988387cf6d63ea73b98193adfd").blockNumber

la salida muestra el número de bloque en el que se incluyó la transacción:

174
  • Tan pronto como la transacción se incluya en un bloque, verá el nuevo saldo de ambas direcciones de nodo:

go run ../cmd/opera attach --exec "ftm.getBalance(ftm.accounts[0])" http://localhost:4000
go run ../cmd/opera attach --exec "ftm.getBalance(ftm.accounts[0])" http://localhost:4001

salidas:

9.99999999978999e+26
1.000000000000001e+27
PreviousNodo TestnetNextValidadores (Nodos)

Last updated 1 year ago

👩‍💻