This week we’ve been further considering the economic on and off ramps to the Network—particularly in the early stages after genesis—via the MaidSafeCoin to Safe Network Token conversion process.
While being an unwelcome development in many ways, the scheduled closure of the Bittrex exchange signalling the effective demise of trading in the Omni protocol form of MaidSafeCoin (MAID) gives us the opportunity for a more straightforward process when swapping to SNT at launch.
On top of that, it allows us to focus on the ethereum based eMAID (which you can still convert to at no cost) for broader and easier access to pre-purchase SNT; as well as some interesting options for how we may reward and incentivise beta network testing and participation.
On top of that, it gives us a bit more latitude when it comes to building some early off-ramps and hooks into the wider economy.
The focus will always be on developing wide and easy native Network access via SNT directly, but wrapped proxy tokens such as eMAID are still a useful tool to have in the kit.
Elsewhere, we’ve been looking at the underlying cause of excessive open connections. Having stopped FloodSub
the current testnet is better than the last in that regard, but heaptracking still reveals far more connections than we need, which is destabilising nodes.
We’ve also been refining the royalty payment process, including looking at watch-only wallets, which can be run by Foundation nodes (and later other parties too) to track earnings. Periodically they will be able to convert their hundreds of individual stored CashNotes
for a larger one, to cash out and clear space.
Thanks to everyone as ever for all your heroic testing and suggestions -it’s all super helpful so good on you. Special mention this week to danieleades who submitted a PR to clean up our toolchain. Cheers Daniel!
General progress
@roland has refactored the chunk manager to simplify the upload process by removing the unpaid/paid chunk distinction, and started working on implementing a hash (record+nonce) based verification for chunks to ease the verification process, as suggested by @peca.
He also finalised a PR that modifies the network discovery to make use of dynamic candidates to unblock routing table tests.
@qi_ma submitted a couple of PRs (4932, 4934) to libp2p
, and raised another PR to improve logging accuracy for identify
operations in the sn_networking
module. He also ran a 2k-node testnet to test changes to gossip subscriptions which improved mem usage a lot.
However, gossip is not the only cause of increased memory and the (possibly) related issue of over replication. @joshuef and @bzee have been looking at various angles around connections, concurrent dials, idle connection timeouts and other potential sources of ‘over connecting’.
@anselme implemented spend verification and auditing from the CLI and improved transaction verification robustness. Anselme also put in place protections against two potential attacks: CashNote
amount tampering and incomplete spends. He’s also been perusing this forum to understand the general needs of the community (stable faucet, CLI upload retries, simple verification…) and thinking about improvements there.
@chriso has been working on creating a release process for the node manager, including ‘publish’ and ‘remove’ commands, which is taking shape nicely.
@bochaco has been working on switching to msgpack for serialising CashNotes within royalties notifications, and also for chunks, registers, wallets and transfers which were previously using bincode, which is not cross compatible across all languages.
Useful Links
Feel free to reply below with links to translations of this dev update and moderators will add them here:
Russian ; German ; Spanish ; French; Bulgarian
As an open source project, we’re always looking for feedback, comments and community contributions - so don’t be shy, join in and let’s create the Safe Network together!