Update 14 September, 2023

With our tight-packed MaidSafe nodes starting to keel over as they filled up and ran out of memory, we waved goodbye to RewardNet a couple of days ago, but not before it had lived up to its name. As well as demonstrating the now familiar stability, community members were enriched by unimaginable amounts of imaginary money, and we were all rewarded with greater knowledge about some important topics. As always - a thousand thanks for everyone who helped out. Special shout out to @josh for his metrics on the spread of payouts across his nodes, @southside for diligently tracking prices, and @loziniak for the recent PR cleaning up certain client APIs. :bowing_man:

Here’s what we have changed this week in response to the testnet findings.

Price change tolerance is better handled by the client than by the node. Nodes should not accept an underpayment, it’s up to the client to decide its tolerance to a price rise. The client can now repay if a chunk price changed between the initial query and file upload (remember, prices increase automatically as nodes fill up).

We have changed the price-capacity curve so that storage stays cheaper for longer, only really ramping up when nodes are half full. This will encourage usage and also smooth out divergent payments in the early days.

We have started paying for storage using UXTOs sent over the wire instead of full DBCs, which uses much less memory. Another bonus: UXTOs are encrypted in motion.

To deal with the issue of clients running out of memory when encrypting large files, we have added streaming capabilities to self-encryption, meaning that large files are chunked stepwise rather than all at once. We’ve done something similar with decryption on the network side too. And we have made concurrency tweaks to the client, which should hopefully help keep large uploads moving as they can send more chunks to the network at the same time.

Away from the testnet, there’s good news about Sybil resistance in general. As David mentioned last week, Sybil attacks shouldn’t be an issue for Safe Network on more than the petty vandalism level; but @bogard brought to our attention a paper that shows how Sybil attacks on other decentralised networks can be detected in real-time and potentially mitigated, which, if it works out, would be a real step forward for the wider decentralisation cause.

General progress

@anselme has now integrated UTXOs in preparation for removing DBCs from the network, including adding security checks and implementing chunk payments with SNT. Register payments will follow shortly - as will a full explanation of the advantages of this approach over DBCs (promise). One thing to note right now is that UTXOs are fully encrypted over the wire, whereas DBCs were not - a significant security improvement.

Payments for registers is currently @bochaco’s domain, and they are pretty much there now. He has also introduced UX improvements to prevent a client paying to create a new register if one already exists at the same address, and notify the client when errors have been made in the transaction or in the creation of a new register.

On monitoring, @roland has worked on integrating the OpenMetrics format into safenode, and setting up Prometheus and Grafana to visualise the metrics that are emitted. This is a much lighter solution than we were using before.

Meanwhile, on downloads, @qi_ma has implemented a stream decryptor for downloads to allow the downloaded file to be streamed directly to a given folder. This avoids having to hold the entire decrypted file contents in memory before writing to disk, which should ease some mem problems.

@Joshuef has been looking at node pricing costs, and economics, including the price curve described above. Again, a fuller post will be forthcoming before too long. He’s also been getting stuck into moving payment tolerance handling to the client, so payments that fail due to price changes just get retried at the new rate. And he’s been looking into some weird intermittent CPU behaviour on Linux, which may be due to DBC loading.

@chriso has been looking into fixing a file sharing error and setting up automated smoke tests and initial data uploads for testnets.

@dirvine has returned to the ants’ nest for his latest blog post on the folly of trying to impose total order on complex systems.

And @jimcollinson has come up with some excellent ideas for a no frills, MVP network for launch, and proposed ideas for economic incentives in the beta network. Hate to do this to you again, but more soon!


Useful Links

Feel free to reply below with links to translations of this dev update and moderators will add them here:

:russia: Russian ; :germany: German ; :spain: Spanish ; :france: French; :bulgaria: 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!

61 Likes

Gold medal!

20 Likes

O no! :wink: Silver!!!

Does this mean that we are moving away from token transfer altogether and the only payment system will be UTXO?

Will it therefore become impossible to create your own currency using DBC and make offline transactions?

18 Likes

carrot-dangling

:melting_face:

:partying_face: on everything except the :carrot:

17 Likes

Nice update team. I think we’re iterating faster than SpaceX … won’t be long now! :tada: :fireworks: Excited for the next testnet :partying_face:

Cheers :beers:

18 Likes

Get’s me a little worried based on subpar history of logical and rational decisions in the economic field. Don’t understand why not example @oetyng gets those assignments as he has shown great skills in the economic field and excellent logical and rational thinking. Hope to be proven wrong this time but will have to keep a close eye on development. Wish that people get assignments based on were their abilities are the strongest.

3 Likes

An eagle on the last hole is all it takes.

happy gilmore GIF

12 Likes

Yes that comment exemplifies immaturity, lack of logical and reasoning that worries me. Hope not personal gains and ambitions risks the success of this project, it is not a game and responsibility will be claimed for eventual setbacks and failures.

Hope you rise to the challenge this time, there is a lot to prove.

2 Likes

And nobody is more aware of that, than the team. However the work going on is quite immense right now with regard to positioning and launch. I am not sure why you seem to be really perturbed? Is there something you are seeing I am not?

19 Likes

Yeah, as anyone will tell you: personal gain is all I’m about. :roll_eyes:

12 Likes

8 Likes

No it won’t there are many ways to do that, but I must confess to probably being the person in the team who really does not think much of lots of currencies. My feeling is I don’t care what currency we all use, but it needs to be fair, decentralised, no controlled and has a huge throughput allowing IOT etc.

It’s probably that I am way deep into launch of this tech/protocol and if I had head space maybe more currencies would be a bigger factor, but my dreams lie elsewhere.

If you imagine a good currency as a bit of data, we secure data (which is great) and say a DBC is just data, we secure that. We can ensure it’s also unique and perpetual. Using that, it would not be hard to come up with a whole new DBC layer o top of the existing system. It could even be true DBC, but that requires a trusted server to do the reissue, if you use our approach of signed DBCs and self reissue (by publishing the reissue uniquely on the network) then you could conceivably have millions of DBC/AT2 type currencies running. As they are data they would have small payments (fees) as the network requires payment to store data, but it would likely be a tiny amount. I suppose, a bit like OMNI riding on BTC in some ways, but much more flexible.

18 Likes

Recently it was this unfunded statement.

Should not be desirable having two assests representing the same asset at the same time but to not specify reasons why it would be desirable is not good. Later in the discussion it turned out that maybe it is necessary to have two assets live at the same time but the argumentation also felt like somewhat of an after construction.

And there was also problems with the SNT supply proposal which also made you question if it should be handled by someone else and then it was handed over to @oetyng.

There was also some further logical strange unfunded statements in that thread that raised concerns.

So there are several reasons from history that has accumulated for raising concerns.

It is difficult to write these comments as it is not because of Jim as a person, he is great in many ways. Even if the discussion has also developed in a direction of some personal rivalry. It is about fear over the quality, logic and reasoning when it comes to the economic parts and optimal solutions for the project. Wishing the best outcome for the project, if it turns out that the solutions proposed are great then I will give credit for that.

3 Likes

Honestly, I feel like you are only seeing a small portion of the overall picture, or are perhaps only spending your time thinking through a small window on it.

We’re you not satified with the outcome in some way?

It’s a team game. And an open source project for a reason.

14 Likes

I am not in favour of millions of currencies in circulation, and I always fully share your approach of optimising everything possible, because I am very close to that approach.

I asked about the possibility of creating my own currency because the earlier DBC-based payment concept offered this possibility. However, just as you need an SNT to make SafeNet work, I will need a unique token to settle transactions in my project.

However, I do not see a problem according to your explanation, although I would like to know the details. :blush:

And to the team and all those who deserve it, a big thank you and applause!
Well done, gentlemen! :ok_hand: :clap: :wink:

13 Likes

Maidsafe got the update out a little early today! Thanks so much again to the entire team for all of your hard work! :horse_racing:

13 Likes

Yes, all this and more will be possible.

SNT is the oil that makes it run—its role is facilitating the market for data.

Many network that will piggyback on Safe will be best served just using SNT natively to run their incentive mechanisms too.

But there will be others that may require their own currency. And there will be numerous ways to do that, from meta data on the back of SNT, to dedicated data transfers.

But it’s all just data at the end of the day: and the fact you get native storage of all this on the Network, and privately and securely too is just a superpower.

20 Likes

Thanks I am understanding now, however it is not 2 assets representing the same thing though, it’s much more like emaid and MAID right now.

Nothing was handed over to anyone :wink: Ed, Jim and Andrew have all worked on this the most over the years. However it’s the team and the community. I remember the community chats on economy and all the differing viewpoints. All good but I never seen one single view that was complete or correct.

This is what I mean, statements like “unfunded statements” are whak in my world :slight_smile:

I understand and thanks for that. Jim works like a demon on this stuff and seeks advice and support from many many different places. He has a finger strongly on the pulse here and I think your statements tend towards something else. Please be aware Jim’s knowledge in this area is so great he knows he does not have all the answers and he works on ideas for weeks at a time, never making snap judgements.

I am sure we all do. I am sure every other project out there has not got it right either and I am very positive even if we did there would be folk saying we did not and that is a thing I see in this space, correct cannot happen in everyone’s eyes as somebody will always know better.

Now if the whole plan is unveiled and detailed and there are errors then I hope we all jump on them, but critique over what the plan may be, seems to be even worse that trading on the stock market type gambling :wink:

21 Likes

Thanks David this explanation is wonderful.

10 Likes