¿Cómo verifica un nodo SegWit un bloque?

Sé que el nodo que no es SegWit podría verificar un bloque sin witness.

Para el nodo SegWit, ¿es witnessnecesario verificar un bloque? Porque sé que witnessestán comprometidos como wtxidnodo merkle en coinbase. ¿Cuál es el propósito del wtxidnodo Merkle?

Si witensses necesario para el nodo SegWit, ¿puedo decir que witnesses parte de la cadena de bloques en la vista del nodo SegWit?

Respuestas (2)

Para el nodo SegWit, ¿es witnessnecesario verificar un bloque? Porque sé que witnessestán comprometidos como wtxidnodo merkle en coinbase. ¿Cuál es el propósito del wtxidnodo Merkle?

Si un bloque contiene transacciones que tienen testigos, si el bloque no tiene un testigo, el nodo Segwit aún lo validará, pero encontrará que no es válido. Debido a que segwit es una bifurcación suave, los nodos de Segwit aún saben cómo se ven los bloques sin testigos y pueden verificarlos como tales. Esto se debe a que la estructura del bloque en realidad no cambió, lo que cambió fue la estructura de la transacción.

Si witensses necesario para el nodo SegWit, ¿puedo decir que witnesses parte de la cadena de bloques en la vista del nodo SegWit?

Sí.

Así que los mineros se quedarán con todos witnessy nunca los desecharán, ¿no es así? La gente siempre dice que el tamaño del bloque no ha cambiado y witnessque no es parte de la cadena de bloques después de implementar Segwit. Pero ahora lo tengo. Es solo para la vista del nodo que no es SegWit. Tu respuesta me aclara. ¡Gracias!

Bueno, un nodo segwit clasificará un bloque que tenga transacciones sin un testigo como 'no válido'.

Vea esta respuesta, Verificación de transacciones por minero VS nodo completo con y sin SegWit

Creo que responde la mayor parte de su pregunta mejor / más en profundidad de lo que podría.

Entonces, el tamaño de bloque de 1 MB es solo para nodos que no son SegWit y es más de 1 MB para nodos SegWit, ¿verdad?
Eso no es realmente cierto. Simplemente hay una nueva unidad de "peso" que se define como 4*tamaño_no_testigo + tamaño_testigo, que está restringido a 4000000. Si un bloque tiene 1000000 bytes de datos que no son testigos, no hay más espacio para datos testigos.