ElementsProject / ElementsProject/elements

Non-witness transactions cannot include issuances

Ouverte
#473 4 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
consensus
Langage dominant
C++
Étoiles
1.2k
Forks
416
Merge moyen
1 j 23 h
PR mergées (30 j)
15

Description

Transaction serialization requires that witness-empty transactions have empty witness vectors for inputs and outputs. While fixing the OOB access in VerifyAmounts we accidentally softforked out the ability to have issuances in transactions with no other witness data. In real-life usage this is fairly unlikely, since any blinding, any segwit signatures, and any peg-in data make this not true.

related: https://github.com/ElementsProject/elements/pull/472

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start by reading the transaction serialization rules described in the issue and the VerifyAmounts path, then compare the related pull request #472. The fix is complete when transactions containing issuances can serialize and verify without any other witness data, while witness-empty transactions still preserve their required empty witness vectors.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cpp
Domaine
blockchain
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.