boltlabs-inc / tss-ecdsa

An implementation of a threshold ECDSA signature scheme
Other
11 stars 5 forks source link

Add verification for deserialized outputs #495

Open marsella opened 11 months ago

marsella commented 11 months ago

Presign, signing, and interactive signing all take outputs from other protocols as input. In the expected usage of the library, a node running computations will receive protocol output, encrypt it, and stick it in a database, then retrieve, reconstruct, and use it as necessary. There's a possibility that the outputs will get (intentionally or otherwise) corrupted in this process.

All the output types should have some verification on deserialization that they're still correct. For example, auxinfo output contains a modulus and a set of ring-Pedersen parameters; the ring-Pedersen modulus should match the stand-alone modulus. There are likely other properties on the other outputs.

Note: this issue should be broken into multiple, maybe one for each type.