ElementsProject / ElementsProject/elements
We should bump the surjectionproof default # of inputs from 3 to 7+
- Lingua principale
- C++
- Stelle
- 1.2k
- Fork
- 416
- Merge medio
- 1g 23h
- PR unite (30g)
- 15
Descrizione
I meant to do this in 0.21 but forgot. Maybe could slip into the next rc.
Background:
* The surjection proofs are zkps of the statement "this output's asset ID is equal to that of one of these N inputs", where N is chosen by the signer and is currently max(3, n_inputs) in the Elements wallet.
* There is a separate surjection proof on every blintded output
* The weight of a surjection proof is 32 * (N+1) bytes, so currently they max out at 128 bytes.
* So by at most doubling the size of the proof, to 256 bytes, we could increase this 3 to 7
Our rangeproofs currently default to about 4k; post-bulletproofs these will be a bit under 700 bytes. So I think spending an extra 128 bytes per output is well-worth it for improved privacy.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia individuando il codice del wallet Elements che sceglie N per le surjection proofs e conferma dove è impostato il valore predefinito corrente max(3, n_inputs). Aggiorna il comportamento predefinito a 7, quindi verifica che le prove possano raggiungere 256 byte e che i controlli delle prove esistenti del wallet continuino a passare.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- cryptography
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 42/100