Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

elements-cli unblindrawtransaction cannot unblind own sent payments

Aperta
#1,375 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cpp
Ambito
blockchain, cli

Direzione di ricerca

Inizia riproducendo il problema con elements-cli usando getrawtransaction, unblindrawtransaction e decoderawtransaction, confrontando gli ID delle transazioni e ogni output prima e dopo l'unblinding. Il lavoro è completato quando unblindrawtransaction preserva il txid originale e sblocca ogni output applicabile, inclusi i pagamenti inviati e non solo gli output di proprietà del wallet.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

There are two bugs:

  1. unblindrawtransaction method changes TxId of the transaction
  2. it does not unblind all outputs, but only those coming back to the wallet (change or deposits)

Have a look:

~ $ elements-cli listtransactions
...
 {
    "address": "tex1q5w27zcjlvrry5fkgez2mvk5jsp8t8c887w7kj9",
    "category": "send",
    "amount": -0.00001234,
    "txid": "97bd4529dcbc5b04b600976031d0ace907ab458121b1d61049029ee1a36c94ae",
...                                                                                                            ...
~ $ elements-cli getrawtransaction 97bd4529dcbc5b04b600976031d0ace907ab458121b1d61049029ee1a36c94ae true
{
  "txid": "97bd4529dcbc5b04b600976031d0ace907ab458121b1d61049029ee1a36c94ae",
...
  "vout": [
    {
      "value-minimum": 0.00000001,
      "value-maximum": 45035996.27370496,
...
    },
    {
      "value-minimum": 0.00000001,
      "value-maximum": 45035996.27370496,
...    },
    {
      "value": 0.00000026,
...        "type": "fee"
      }
..  "hex": "0200000001011a2b2ac527...715192888e9d55f52c0000",
...
}
~ $ elements-cli unblindrawtransaction 0200000001011a2b2ac527...88e9d55f52c0000
{
  "hex": "0200000001011a2b2ac...192888e9d55f52c0000"
}
~ $ elements-cli decoderawtransaction 0200000001011a2b2ac...192888e9d55f52c0000
{
  "txid": "7e7a2d8f297509bab56b9493c95e299b00fef58e80f77f523b96b78e56edcc30",
...
  "vout": [
    {
      "value": 0.00002112,
      "asset": "144c654344aa716d6f3abcc1ca90e5641e4e2a7f633bc09fe3baf64585819a49",
...
    },
    {
      "value-minimum": 0.00000001,
      "value-maximum": 45035996.27370496,
...
}

Lingua principale
C++
Stelle
1.2k
Fork
418
Merge medio
1g 12h
PR unite (30g)
13

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ElementsProject/elements

Tutte le issue di ElementsProject/elements

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.