¿Dónde se escribe el script P2SH?

Entiendo que cuando estoy haciendo una transacción, estoy bloqueando esos bitcoins a quien proporcione la solución a un script que tiene el hash que publiqué.

Pero, ¿dónde se escribe el hash?

Supongo que no está en la cadena de bloques, ya que este sistema de pago se realiza para que podamos ahorrar espacio. Puedo imaginar que los nodos almacenan una base de datos de hash de scripts previamente escritos en la cadena de bloques, de modo que cuando ven un hash de script, pueden encontrar el script correcto para él. Otra opción era que el destinatario proporcionaría el script en el momento de la transacción, pero luego los otros nodos no podrían verificar el resultado final del script, porque el script no estaría en la cadena de bloques.

Hola araqueto, he intentado reducir el efecto de pared de texto de tu pregunta para que sea más accesible. En la segunda mitad de su pregunta, ha estado haciendo muchas preguntas más, que se basan en especulaciones incorrectas sobre la respuesta de la primera pregunta. Sentí que no agregaron a su pregunta y los eliminé. Si todavía está interesado en esa parte de su pregunta, publique una pregunta de seguimiento por separado.

Respuestas (1)

El guión es mantenido por el destinatario previsto; él es el responsable de conservarlo y no perderlo. Los nodos no almacenan ninguna base de datos de los scripts.

El usuario proporciona el script al gastar el p2sh como parte de los datos de scriptSig. Para conocer la especificación exacta de cómo se estructuran estos datos, consulte BIP 16 de Gavin Andresen . Esto permite que los otros nodos validen que el script se canjeó correctamente.

El propósito de p2sh no es limitar los datos en la cadena de bloques, eso sigue siendo el mismo. Es, según el BIP, "trasladar la responsabilidad de proporcionar las condiciones para canjear una transacción del remitente de los fondos al redentor".

De hecho, P2SH en realidad da como resultado que se incluyan más datos en la cadena de bloques. Sin embargo, la mayor parte de esos datos van a scriptSigs, que son más fáciles de podar.