ElementsProject / ElementsProject/elements

pset: PartiallySignedTransaction::GetUnsignedTx does not work correctly when issuance assets have null values

Abierto
#1,126 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
C++
Estrellas
1.2k
Forks
416
Merge medio
1 d 23 h
PR fusionados (30 d)
15

Descripción

According to the consensus validation rules, we must supple Null values for issunace/reissuance instead of explicit zero. However, the current code for tries does something else:
https://github.com/ElementsProject/elements/blob/c80e926d6e29d5a9524182767967884091665405/src/psbt.cpp#L126-L132

Fix would be to have
1) two separate if else statements for issunace/re-issuance.
2) force_unblinded is always used. There is no way to do explicit issuances in the current pset workflow.

This calculation causes `walletprocesspsbt` to create signatures that do not validate because the sighash is calculated incorrectly.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Inspecciona src/psbt.cpp en las líneas 126-132 y sigue PartiallySignedTransaction::GetUnsignedTx para los valores de activos de issuance y reissuance. Compara la transacción sin firmar resultante y el sighash con las reglas de validación del consenso y, a continuación, prueba el flujo de walletprocesspsbt. El trabajo estará terminado cuando las firmas generadas se validen para casos de issuance que involucren valores null.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
cpp
Área
blockchain
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.