ElementsProject / ElementsProject/elements
pset: PartiallySignedTransaction::GetUnsignedTx does not work correctly when issuance assets have null values
- 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
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