MWEB Progress Update Thread

Would you mind explaining in another thread where your conclusions came from?


Great work and dedication, David B.
Thank you!


Hello @David, I heard the podcast you have been interviewed and also the presentation on Stanford. First of all, thanks. I think you and Charlie are admirable.

Also, as I have understood a little bit more (as I am not technical on aspects of cryptography) you are implementing a sidechain with MWEB using elliptic curves. That means the validation of transactions inside MWEB will occur inside MWEB thought Consensus rules .

That said, I suppose simpler implementations of MWEB could just transact inside sidechain without the ability to pegin and pegout. Right?

I mean if will be possible to write some specific piece of code (to use on regular day-to-day transactions for example) to run on my cellphone, so I could receive funds inside MW, to buy ice-cream and pay the cinema without disclosing how many LTC I own, and then get the change back to another wallet without the effort to have to peg-in and peg-out while I’m on the street.

Have I understood correctly?

July Progress:


I’ve shifted away from writing new code so the MWEB codebase can remain stable while the auditors perform their review. I’ve been focusing instead on rebasing our changes from the LTC 0.18 branch to the LTC 0.21 branch.

For those unfamiliar with git terminology, what this means is we started with the code from the LTC 0.18 release (the latest at the time), and have been coding MWEB on top of that. However, LTC 0.18 is no longer the most recent code, since the release for LTC 0.21 is nearly ready. So I’m merging the MWEB code we wrote onto the LTC 0.21 codebase so that we still have all of the latest features (like taproot) in our MWEB release. This is a manual process that can be very tedious and time consuming, since code changes that were made in LTC 0.21 could interfere with the changes we made to support MWEB. These conflicts must be carefully addressed individually, which has been taking up much of my time.

Fortunately, I’ve finally got all of the node changes merged and building successfully. I’m working on fixing some failing tests, and then I will start doing the same thing with the wallet code. Once that is all finished and reviewed, we should be able to make a pre-release to start testing how the code works on mainnet. In particular, we’ll focus on making sure it communicates fine with older nodes, validates and propagates transactions & blocks, does not prematurely enforce MWEB rules before activation, and is able to successfully mine valid blocks.

Reviews & Audits

Members of the team developing Tari were kind enough to spend some time to give a high-level review of the design & code. They provided us with their findings here and here. In addition to finding a few potential issues, they’ve also thoroughly documented their understanding of the changes, which can serve as a useful resource for others trying to learn about MWEB.

Also, we received the official audit proposal from Quarkslab, which we’ve accepted[*], so they will be officially starting their audit in just a few days. This is expected to wrap up by mid-October, when we will be provided a report of all findings. Once we address the issues found, we’ll be able to create an official release (release number TBD).

[*] Thorough auditors like Quarkslab can make all the difference in the success of a project. Unsurprisingly, this means they can be quite pricey. By “we’ve accepted”, what I really mean is Charlie has, since he generously chose to pay for this audit. We are very fortunate to have him around :heart:

I had to take some time off this month for personal reasons, so my update was a little lighter than we’ve been used to. Things will be back to normal next month. Thanks for your understanding.


I am glad to hear that you took some time off. Been a healthy and unstressed coder is must have ‘feature’ to have quality and secure development. Many thanks for the progress update, I am sure must of developers here understand the tedious process of merging code.


Completion will be huge for LTC. Good job, and thank you for keeping us updated here.

1 Like

I choose LTC as my No.1 crypto because of you and @coblee . I believe in you both 100%. Great work! Thank you


Truth - thanks @coblee for everything - and probably getting Tari to help out (thanks to FluffyPony)

Excellent update as well, great to read about the rollout and new audit

Keep up the great work David


Thanks for your work. Regards Piotr :ok_hand:


Progress! LTC is wonderful! We need an excellent spokesperson and publicist! It works so well!

Is the audit still planned to be completed by Mid October?

1 Like

Thank you, my man!

no news this month ?

hello, last news was Aug 3, 3:14 AM. we will get august updates on September.

1 Like

delay on the release is starting

** :grinning: :heart_eyes:**

@litecoingva @David said he was merging code from 0.21 and take a look. For your surprise:

He is indeed merging code!


August Progress:


Last month I merged the node code on top of the LTC 0.21 release codebase (see July update), so this month began with me merging the wallet code. It turns out that a lot changed in the wallet between 0.18 and 0.21, so I had to spend a few weeks redesigning how we calculate and manage MWEB addresses and keys. The end result was even cleaner than we had with 0.18 though, so this turned out to be a good thing, despite requiring the extra effort :slight_smile:

For the code monkeys among you, the majority of the changes were in: scriptpubkeyman.cpp, mweb_wallet.cpp, and Keychain.cpp.

Aside from that, I had a lot of bugs and tests to fix as a result of the merge, which I was able to do just in time for the auditors at Quarkslab to include in their review. On that note…

Reviews & Audits

I’m working very closely with one of the Quarkslab auditors now. She has been going over the code and is in the initial stages of testing. We were able to get her synced against mainnet, and she also requested I create a testnet for them, which they’re now connected to and experimenting on.


While we’re now merged on top of 0.21 release code, we actually haven’t even released 0.21 yet :grinning:. I was asked to take over managing this release, so I spent the past week getting that release code ready. Assuming I can herd the other devs together (which is a lot like herding cats), then I expect we’ll be able to have 0.21 released by my next update. This will include, among many other things, support for Taproot :rocket:.

Hopefully we can get 0.21 adopted quickly, and miners signaling for Taproot, because the following month, I’ll be cutting the release for MWEB (which I’m calling 0.22-ish until someone gives me an official release number). The release date for 0.22-ish will be highly dependent on the results of the audit, which won’t be completely finished until mid-October. So while we’ll remain optimistic for an October 31st :jack_o_lantern: release for now, write the date down very lightly in pencil, not pen :wink:

Notable Mentions

Ryan Wright is an absolute baller. While I was searching for a quiet street corner to live (see: background), he swooped in with a 100 LTC donation just before I listed my house on the market :stuck_out_tongue_winking_eye:

MWEB is now fully funded! :moneybag: :money_mouth_face: :dollar: :ltc:

All additional donations collected will continue to fund me for future development projects. There’s still so much more I want to do: Dandelion for P2P-level privacy, CoinSwap support, syncing improvements, Atomic Swaps, watch-only addresses, MWEB support for hardware wallets & light clients, and much, much more. So still chip in whenever you can :pray:


David. We would love to keep funding further development. We appreciate the long hours & late nights! Along with the continuous updates.

The taproot launch then the MimbleWimble upgrade are exciting advancements on the litecoin network that will bring in better signature/contract capabilities & scalable confidential transactions.