Se debe proporcionar la prueba de Merkle correspondiente al desbloquear UTXO usando MAST, donde se incluirá el hash de un script no utilizado. Para la observación, parece posible adivinar el script no utilizado a partir del hash. Por ejemplo, podría obtener algunas claves públicas del script que se está ejecutando y luego combinar una de ellas con algunos bloqueos de tiempo para intentar hacer colisiones de hash.
Agregar sal al script parecería prevenir esto fácilmente, entonces, ¿por qué Taproot no ha hecho esto? ¿Esto se debe a que la colisión hash descrita anteriormente es básicamente inviable y agregar sal ocupa espacio adicional para los testigos?
En general, esto no debería ser una preocupación, ya que es casi seguro que cada script contiene al menos una clave pública, y puede usar claves públicas nuevas en cada rama.
Si aún le preocupa la privacidad del script revelado, puede modificar las claves públicas manualmente con algún secreto compartido entre todos los participantes (por ejemplo, el hash de concatenación de todos los scripts antes de modificar). O incluso puede agregar datos adicionales a uno usando un código de operación push y OP_DROP.
Las sales se usan para cosas como el almacenamiento de contraseñas donde varios usuarios pueden estar usando la misma contraseña. Al usar una sal, se ofusca a un observador de la base de datos qué usuarios están usando la misma contraseña debido a diferentes sales. La única motivación para usar salt en los scripts de Taproot sería si los usuarios estuvieran usando los mismos scripts de Taproot. Pero, como mínimo, las claves públicas de los usuarios serán diferentes (a menos que estén usando la misma clave privada) y, por lo tanto, ningún script Taproot será igual a menos que estén controlados por el mismo usuario.
Para decir lo obvio, los usuarios no deberían usar la misma contraseña (pésima higiene de la contraseña) para los servicios que no son de Bitcoin, pero es aún más serio para Bitcoin. Si los usuarios no generan una clave privada de Bitcoin con suficiente entropía, es probable que sus Bitcoin sean robados.
Para la observación, es posible adivinar el script no utilizado a partir del hash.
Adivinar la preimagen de una función hash segura es inviable. Solo se puede hacer a través de la fuerza bruta (probando muchas preimágenes posibles), pero hay tantas preimágenes posibles que es como buscar una aguja en un pajar.
sphpmp
miguel folkson
sphpmp
miguel folkson
sphpmp
sphpmp
pieter wuille