¿Qué es Sha3Uncles?

¿Qué es el campo Sha3Uncles en la cadena de bloques? ¿Y por qué es lo mismo para los tíos 3, 4 y 7? ¿Y por qué ParentHash para estos tíos también es lo mismo?

https://etherscan.io/uncle/0x5cd50096dbb856a6d1befa6de8f9c20decb299f375154427d90761dc0b101109
https://etherscan.io/uncle/0xedc7a92c2a8aa140b0afa26db4ce8e05994a67d6fc3d736ddd77210b0ba565bb
https://etherscan.io/uncle/0x4b8729311c5b59f418c5154fd54d85e6a8b42eabf83a1d3c05c754a8f10354cc

¿Es como un puntero para probar el almacenamiento donde se almacenan todos los tíos?

En el código fuente se declara así:

type Header struct {
    ParentHash  common.Hash    `json:"parentHash"       gencodec:"required"`
    UncleHash   common.Hash    `json:"sha3Uncles"       gencodec:"required"`
    ...
}

Entonces, ¿es Uncl E o Uncl ES ?

Buena pregunta. No aparece en EtherScan, pero el hash principal que todos comparten ( 0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3) es el hash de block 0. Block 0no fue "minado" en el sentido típico, por lo que los tíos podrían tener algo que ver con los algoritmos de consenso que intentan resolverse. Ni idea :-)
(Creo que sha3Uncleses un hash combinado de todos los tíos para un padre dado, lo que podría explicar por qué es lo mismo para los 3).
@RichardHorrocks tienes toda la razón, como siempre. Responde la pregunta Acepto

Respuestas (2)

No es una respuesta completa, pero...

No aparece en EtherScan, pero el hash principal que todos comparten ( 0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3) es el hash del bloque 0.

El bloque 0 no fue "minado" en el sentido típico (no recuerdo cómo lo hicieron), por lo que los tíos podrían tener algo que ver con los algoritmos de consenso que intentan resolverse cuando la red principal cobró vida por primera vez. Pero eso es solo especulación.

Por el código, parece que sha3Uncleses un hash combinado de todos los tíos para un padre determinado, lo que explicaría por qué es lo mismo para los 3.

Como saben, se incentiva a los mineros en la red Ethereum a incluir una cantidad de tíos cada vez que se extrae un bloque. Esto puede sonar muy extraño al principio, ya que permite que los bloques "huérfanos" aún brinden una recompensa a los mineros.

Los tíos tienen una recompensa más baja que los bloques normales. Cuando esté minando, un porcentaje de los bloques minados serán tíos al final, lo que reducirá nuestro rendimiento diario.

De hecho, los tíos son recompensados, lo que ayuda a asegurar la red al hacer que la cadena sea "más pesada". Esto, a su vez, se fomenta al recompensar a los mineros por incluir a sus tíos. Un ciclo virtuoso, por así decirlo.