Incomplete lib intended to offer tables for all cryptographic libraries
expecting them. Right now, it creates the tables at runtime. While that
would still offer improvements, ideally large tables are built at
compile time and simply entered into memory at runtime.
My best idea for that was a linked list in the binary itself, where this
app (at first call), reads a table stored to a section of data, then
grabs the next reference to one and continues reading. The main issue
with this idea, besides not yet researching how to encode data into the
binary, was the fact the same table would be saved to disk multiple
times under this simplistic model. An O(n) iteration when writing to the
bin could potentially solve that.
Related https://github.com/serai-dex/serai/issues/41.
Consensus has been nuked for an AcceptAny currently routed throough PoW
(when it doesn't have to be, doing so just took care of a few pieces of
leg work).
Updates AGPL handling.
While Serai only needs the simple DLEq which was already present under
monero, this migrates the implementation of the cross-group DLEq I
maintain into Serai. This was to have full access to the ecosystem of
libraries built under Serai while also ensuring support for it.
The cross_group curve, which is extremely experimental, is feature
flagged off. So is the built in serialization functionality, as this
should be possible to make nostd once const generics are full featured,
yet the implemented serialization adds the additional barrier of
std::io.
Combines the existing frost-rs, dalek-ff-group, and monero-rs repos into
a monorepo. Makes tweaks necessary as needed. Replaces RedDSA (which was
going to be stubbed out into a new folder for now) with an offset system
that voids its need and allows stealth addresses with CLSAG.