Cuadra

El bloque es una combinación de un lote de transacciones y contiene el hash del bloque anterior en la cadena.Esto conecta los bloques juntos (en una cadena) porque el hash se deriva del cifrado de los datos del bloque.Esto evita el fraude porque cualquier cambio en cualquier bloque anterior invalida todos los bloques posteriores, y todos los hashes cambian y notan por todos los que ejecutan la cadena de bloques.

¿Por qué necesitamos bloques?

Para garantizar que todos los participantes en la red Polysmartchain se mantengan sincronizados y acuerden el historial exacto de una transacción, dividimos la transacción en múltiples bloques.Esto significa que docenas (o cientos) de transacciones se presentan, acordan y se sincronizan a la vez.

Con los compromisos espaciados, podemos dar a todos los participantes de la red el tiempo suficiente para llegar a un consenso, incluso si las solicitudes de transacción ocurren decenas de veces por segundo.Los bloques en Polysmartchain se comprometen aproximadamente cada 3 segundos.

Cómo funcionan los bloques

Para preservar el historial de transacciones, los bloques se ordenan estrictamente (cada nuevo bloque creado contiene una referencia a su bloque principal) y se ordenan estrictamente las transacciones dentro del bloque.Excepto en casos raros, en cualquier momento, todos los participantes en la red acuerdan el número exacto y el historial de bloques, y están trabajando para lanzar las solicitudes actuales de transacción activa al siguiente bloque.

Una vez que uno de los mineros de la red reúne (mina) un bloque, se propaga al resto de la red; Todos los nodos agregan este bloque al final de su cadena de bloques y continúan con la minería.

¿Qué contiene el bloque?

  • timestamp – hora de extraer el bloque.

  • blockNumber – la longitud de un bloque en el bloque de bloques.

  • baseFeePerGas -el costo mínimo por gas requerido para incluir una transacción en el bloque.

  • difficulty – el esfuerzo requerido para la minería.

  • mixHash – Un identificador único para el bloque.

  • parentHash – el identificador único del bloque anterior (así es como el bloque forma la cadena).

  • transactions –las transacciones contenidas en el bloque.

  • stateRoot –el estado completo del sistema: saldo de cuenta, almacenamiento de contrato, códigos de contrato y números aleatorios de la cuenta.

  • nonce – Hash, cuando se usa en combinación con mixHash, prueba que el bloque ha pasado la prueba de carga de trabajo.

Tiempo de bloqueo

El tiempo de bloque se refiere al tiempo que lleva extraer un nuevo bloque.En Polysmartchain, el tiempo de bloque promedio es de 3 segundos y se evalúa después de cada bloque.El tiempo de bloque esperado se establece como una constante a nivel de protocolo y se utiliza para asegurar la red cuando los mineros aumentan su potencia informática.El tiempo de bloque promedio se compara con el tiempo de bloque esperado y si el tiempo de bloque promedio es más alto, el encabezado del bloque será menos difícil.Si el tiempo de bloque promedio es más bajo, se incrementa la dificultad en el encabezado del bloque.

Tamaño de bloque

Un último punto importante es que el tamaño de los bloques mismos está limitado.El tamaño objetivo para cada bloque es de 15 millones de gas, pero el tamaño del bloque aumentará o disminuirá según la demanda de la red.El límite de bloque se limita a un máximo de 30 millones (el doble del tamaño del bloque objetivo).La cantidad total de gas consumida por todas las transacciones en el bloque debe estar por debajo del límite de gas del bloque.Esto es importante porque asegura que el bloque no crece arbitrariamente grande.Si los bloques pueden ser arbitrariamente grandes, los nodos completos menos capaces no se mantendrán al día con la red debido a los requisitos de espacio y velocidad.

Last updated