← Back to team overview

mimblewimble team mailing list archive

Status and how to help


Hi all,

It's been a while since the last update, and as more people are joining and Gitter is getting more active, I thought I'd send a summary of what's been going on and the main areas that need more work. If you're looking for a way to help, just jump to the 2nd part fo the email!

I can feel the pace increasing both in terms of development (love these pull requests!) and research. In no particular order:
- Confidential Assets proposal from Andrew [1]
- Ethan chimed in to raise some challenges but also promises in being able to cut-through any block at any time (aka Frankenblocks :P) [2]
- The compact blocks proposal seems to have reached some consensus. [3]
- Published a technical Intro to MimWimble and Grin [4]
- Multiple increments are leading to a fairly credible way to support lightning networks.
- John Tromp outlined how transactions building can generally and safely work with Schnorr signatures when we have them [5]
- Merope dropped the first version of a Merkle sum tree implementation [6]
- Myrtle is still working on a transaction pool implementation which seems to be converging.
- Various cleanups in core crate from Jacob Payne and I.
- Small but welcome contributions from Rob and Mr. Greybeard.

I haven't had as much time as I'd like to to write code in the past couple months, I was also busy writing and reviewing proposals, but I'm hoping to get more time in the next couple months. And anyone reading this and willing can help!

Here's what I'm thinking in terms of high level roadmap and features/improvements we need for each milestone. Please say if you're interested in any one of these or have any question (I'll eventually put all of that in github).

- Transaction pool implementation (which Myrtle is working on).
- Some way to build transactions at least for development (started in [7] but need a fair amount more attention).
- UTXO MMR would be nice, but could be delayed to testnet.
- Better retargeting algo (I'm thinking Digishield now).

- Better DoS protection, peers sending too much data, too large messages, etc.
- Schnorr would be nice, but could be delayed if necessary.
- Compact blocks
- Figure out the fee structure (price per output created/destroyed, etc.).
- Full MMR structures (UTXO, range proofs, etc.)
- Fast chain sync (header+UTXO).
- Some decent mining software that can handle multiple GPUs.
- A wallet server that can handle building transactions interactively in a secure way.

The Real Deal
- Confidential assets
- Some lightning prototype
- Cut-through in transaction pool
- Fully audited wallet server.

Documentation, written specs and additional tests are always good. Hopefully I haven't forgotten anything too important. Also if you're looking for smaller tasks, grepping the code for TODO is always a good idea. Don't hesitate to ask here or file an issue to get more information.

Thanks all for the continuing great work!
- Igno

[1] https://lists.launchpad.net/mimblewimble/msg00103.html
[2] https://lists.launchpad.net/mimblewimble/msg00058.html
[3] https://lists.launchpad.net/mimblewimble/msg00039.html
[4] https://github.com/ignopeverell/grin/blob/master/doc/intro.md
[5] https://lists.launchpad.net/mimblewimble/msg00091.html
[6] https://github.com/ignopeverell/grin/pull/40
[7] https://github.com/ignopeverell/grin/pull/36

Follow ups