Luke Parker
7c0886a113
Support signing Monero TXs with multiple inputs
...
Remove's CLSAG's msg Rc for the msg available through AlgorithmMachine.
Potentially slightly more inefficient, as it needs to be converted from
a slice to a [u8; 32], yet removes a re-impl.
Also removes a match for an if.
2022-05-18 00:53:13 -04:00
Luke Parker
fd0fd77cf5
Simplify Monero key image handling
2022-05-17 19:15:53 -04:00
Luke Parker
94bd30083b
Slightly simplify CLSAG signing
...
Expands its test to test all possible ring indexes, though just 0 and a
single n would be sufficient.
2022-05-14 00:45:13 -04:00
Luke Parker
3533e66c7f
Add Rust CLSAG verification
...
Marked experimental, not guaranteed to match Monero yet
2022-05-13 20:26:29 -04:00
Luke Parker
3e7598315c
Reorganize CLSAG sign flow
2022-05-06 19:07:37 -04:00
Luke Parker
964cb357e6
Use a global transcript
2022-05-06 07:33:08 -04:00
Luke Parker
9a42391b75
Cleanup which makes transcript optional, only required for multisig
2022-05-03 08:49:46 -04:00
Luke Parker
9ccf683e9d
Working multisig TXs
2022-04-30 04:32:19 -04:00
Luke Parker
d6649fffb1
Merge InputMultisig into Multisig
...
There's no reason to use the latter.
2022-04-30 01:43:15 -04:00
Luke Parker
22ac5ce3b6
Update the CLSAG multisig API for TX signing
2022-04-30 01:41:05 -04:00
Luke Parker
d0506e2e9b
Make a trait out of sign::StateMachine for more complex Transaction flows
2022-04-29 22:36:43 -04:00
Luke Parker
27396a6291
Implement a CLSAG algorithm extension which also does key images
...
Practically, this should be mergeable. There's little reason to do a
CLSAG and not also a key image. Keeps them isolated for now.
2022-04-29 22:03:34 -04:00
Luke Parker
45559e14ee
Various corrections to multisig API
2022-04-29 15:28:04 -04:00
Luke Parker
8821eb0984
Consolidate FROST testing code
2022-04-28 21:47:25 -04:00
Luke Parker
c4b7cb71d7
Move SignableInput to clsag::Input
2022-04-28 17:29:56 -04:00
Luke Parker
7ed1fca270
Use a SeedableRng for CLSAG multisig signing
2022-04-28 17:12:54 -04:00
Luke Parker
20f214c300
Update CLSAG multisig to work again
2022-04-28 12:01:20 -04:00
Luke Parker
f3a5e3c27e
Implement TX creation
...
Updates CLSAG signing as needed. Moves around Error types.
CLSAG multisig and the multisig feature is currently completely borked
because of this. The created TXs are accepted by Monero nodes.
2022-04-28 03:31:09 -04:00
Luke Parker
a37a21f891
Rename monero-sign to monero-serai
2022-04-27 22:48:58 -04:00
Luke Parker
df4be9ca0c
Move the Monero create to coins/
...
Includes misc bug fixes
2022-04-27 00:09:05 -04:00