Yeastplume - Progress update thread - Feb - April 2018

Update Friday 13th April, 2018

So, as expected, the major tasks this week have been:

  • Fixes to wallet restore, and the underlying API calls to retrieve the entire UTXO set from a running grin node. Previously this had relied on entire blocks being present on the node, which don’t exist when the node has fast synced. https://github.com/mimblewimble/grin/pull/950 added the api calls, as well as a fix to the wallet code that should allow restore to work for the most part.

  • With respect to bullet proofs, the good news is that while integrating the latest code, I decided the easiest way to clean up our fork was just to take the latest upstream elements code + @apoelstra’s bullet proof changes, then merge our aggsig library on top. The end result is that I’ve managed to create a fairly clean libsecp branch that should be easy to keep up-to-date with upstream changes. The newly cleaned-up and rebased branch is here: https://github.com/mimblewimble/secp256k1-zkp/tree/vendor-rebase, and contains everything Grin should need.

  • Now the bad news… there appears to be a problem in that the latest bullet proof code has increased the size of a single bullet proof from 674 bytes to 675… given that we store PMMR elements in flat files where the sizes are assumed, I have no idea how we’re going to integrate the latest code… even if via a hard fork it still leaves the question of how to handle pre vs post fork data. This may be pointing to something we’ve overlooked in our data storage design, and will have to discuss this with the other devs. Also, due to format changes I’m not sure if the new code will validate proofs created with the older code. At any rate, while the secp lib is ready there are still some considerations before we can integrate the latest bulletproof code into grin.

  • and of course, other minor changes and fixes… one in particular as refactoring the code a bit to allow for the new stratum implementation: https://github.com/mimblewimble/grin/pull/937, which I’ll be looking at in far more detail once the bulletproof/wallet restore situation is resolved.

That’s it for this week, have a good weekend, and if you’re feeling generous, the funding campaign is still live and underway! Funding Campaign - Yeastplume - May to Aug 2018

1 Like