serai/processor/src
Justin Berman 92d8b91be9
Monero: fix decoy selection algo and add test for latest spendable (#384)
* Monero: fix decoy selection algo and add test for latest spendable

- DSA only selected coinbase outputs and didn't match the wallet2
implementation
- Added test to make sure DSA will select a decoy output from the
most recent unlocked block
- Made usage of "height" in DSA consistent with other usage of
"height" in Monero code (height == num blocks in chain)
- Rely on monerod RPC response for output's unlocked status

* xmr runner tests mine until outputs are unlocked

* fingerprintable canoncial select decoys

* Separate fingerprintable canonical function

Makes it simpler for callers who are unconcered with consistent
canonical output selection across multiple clients to rely on
the simpler Decoy::select and not worry about fingerprintable
canonical

* fix merge conflicts

* Put back TODO for issue #104

* Fix incorrect check on distribution len

The RingCT distribution on mainnet doesn't start until well after
genesis, so the distribution length is expected to be < height.

To be clear, this was my mistake from this series of changes
to the DSA. I noticed this mistake because the DSA would error
when running on mainnet.
2024-02-19 21:34:10 -05:00
..
multisigs Correct a couple years of accumulated typos 2023-12-17 02:06:51 -05:00
networks Monero: fix decoy selection algo and add test for latest spendable (#384) 2024-02-19 21:34:10 -05:00
tests support input encoded data for bitcoin network (#486) 2024-02-18 07:43:44 -05:00
additional_key.rs Replace "coin" with "network" 2023-07-30 16:11:30 -04:00
batch_signer.rs Slash reports (#523) 2024-01-29 03:48:53 -05:00
coordinator.rs Replace bincode with borsh (#452) 2023-11-25 04:01:11 -05:00
cosigner.rs Slash reports (#523) 2024-01-29 03:48:53 -05:00
db.rs Further expand clippy workspace lints 2023-12-17 00:04:49 -05:00
key_gen.rs Correct a couple years of accumulated typos 2023-12-17 02:06:51 -05:00
lib.rs Replace "coin" with "network" 2023-07-30 16:11:30 -04:00
main.rs Slash reports (#523) 2024-01-29 03:48:53 -05:00
plan.rs Correct a couple years of accumulated typos 2023-12-17 02:06:51 -05:00
signer.rs Further expand clippy workspace lints 2023-12-17 00:04:49 -05:00
slash_report_signer.rs Slash reports (#523) 2024-01-29 03:48:53 -05:00