SAFE Network Fundamentals: Context

Thanks for this. One question: What is known/theorized about the Network’s performance with regard to tps (if this term applies), speed, etc?

We won’t have hard performance metrics per se until we’ve got testnets that resemble very closely a feature complete network. Some metrics have been collected by members of this forum for various testnets/pieces of the puzzle, but I would take them with a grain of salt before extrapolating to definite claims about the full live network.
One thing I can definitely say is that performance is an enormously important aspect of the SAFE Network without which we couldn’t hope to deliver on our vision of “Secure Access For Everyone”. A responsive network is probably one of the key factors in the usability story.

So with this in mind, we are very careful when designing the algorithms to stick as close as possible to the optimal theoretical complexity for each kind of problem we need to solve. All the backend is also written in rust which was chosen for it’s ability to deliver security and speed without compromising on any of these two metrics.

So without having the data to make specific claims, I can only tell you that performance is absolutely a key target of our design. I expect for the SAFE Network to be competitive with the clearnet for most tasks and be more performant for some other thanks to unique opportunities we have such as optimistic caching.


If someone has a data map that includes it then its accessible.

BUT the network has absolutely no way to know if someone has a chunk included in a datamap or not. The datamap does not need to be stored on the SAFE network. Also the datamap is just a list of XOR addresses and thus there is no way to know if some data is a datamap or not even IF the network could read the chunk/MDs.

It would be a real loss of anonymity and privacy if the data maps of every file was specially kept and readable by the network and known who owns the file. Also think of all the scanning that would need to be done to find out if a particular chunk was NOT in any datamap.

The biggest problem is not knowing if someone somewhere has a datamap with that chunk in it. Especially since the datamap could have been emailed and stored on a USB stick off the SAFE network. So even storing who uploaded a chunk with the chunk does not prove the chunk can be deleted since 1 million people could have the datamap with that chunk by the time the person requests to delete it. And the million could have had the datamap mailed to them and are not officially owners in the chunk’s meta data

The best solution so far in my opinion is to create a temp immutable data type for all those temporary files that applications (ie word processors) use. And if someone is given a temporary file’s datamap then if they want to keep the file then they pay to upload it as a permanent (immutable chunks) file.


This free browsing vs. paid for uploading is something that confuses me just a little bit.

Let’s say that something like Youtube will operate in Safenet. I can watch videos without having to have an account, but if I want to comment something, I need to have an account and pay for my comment, right?

Or, I can browse the selection of online bookstore for free, but when I decide to order something I need to have SAFE account, and I have to pay some tiny amount to write the delivery address for my order?

Anything that comes down is free and anything going up I must pay?


Yes you’ve summarised it nicely with this examples and this quote, unless the ‘going up’ is a direct message which means some loss of anonymity so generally only useful when communicating with friends (and other trusted parties).

So sending email will in effect be charged, but the fee should be very small. The benefit of this is that it should eliminate spam, as well as ensure you are always in control of the data you share with others, or upload.


As I understand it, it doesnt have to be you, who is paying for the upload. Owner of the youtube-like service can pay the fee for your comments.


One thing that seems to be missing is that the network will be autonomous and self healing. May be implied in other places, but I think it would be good to spell it out.


At the moment, on the clearnet, this is also the case. Except I have to create an account for each individual web app I use: one for YouTube to comment there, one for this forum, one for Facebook etc.

Withe the SAFE Network, you’ll only need one account, one password, one log-in. And on top of all that, all the comments you make will belong to your account, and be under your control: they won’t reside on YouTube servers nor become their property.


And it’s of course good to reflect on the fact that email as most people know isn’t really free at the moment—you just don’t pay up front. Have a Gmail account? You are paying for it by your emails being scraped and harvested for advertising profits.


Yes, this something that I really like. I feel frustration every time I need to create a new account for some one-off thing I like to do in the net.

Do I have this thing right: In SAFE Network I can log into tubes and forums with one login, and still at the same time have different “masks” for all those different platforms? Otherwise anybody could collect and put together the information of my behaviour in all these various sites. I mean, obviously I can create different accounts for different purposes when in need for true secrecy, but the question is if it is easy to not have same username/identifer in tubes, forums, “likes” for some restaurant, theatres…?

1 Like

There was discussion about the site host paying on behalf of the client too. It isn’t implemented yet, but it was a smart contract of sorts. I’m sure someone on the maidsafe team can comment further.

However, retaining ownership of your data is a powerful thing. Some stuff users may not care about, but other stuff users would likely rather pay the tiny fee to retain control of their data. It would be great to have the choice.

1 Like

It does take a while to get your head around this, because it’s a really change from what we have at the moment:

You’ll only log in to the Network; from there it’ll be a case of giving different web apps or services permission to access certain types of data, that you stay in control of.

It’s a bit like going back to the old pre internet days of everything happening on your own PC. Your hard drive contains all your data, and you install applications that allow you to create and manipulate your data in different ways. You stay in control of it all. Think of the SAFE Network as your PC in that regard.

And as far as identities go, you can create multiple IDs or ‘profiles’ (all within the one account, so no need for multiple log-ins) and allow different apps to access different IDs. They could be pseudonyms, or relate to your real identity. It’s all up to you, but there is no inherent way for you to be tracked around the Network like there is on the clearnet, so none of it can happen without your say-so.


Yes, I understand this layered, tree-like structure of identities. I know what is possible, the question for me is what is easy, what goes along or against the habits that I as a human have? Even now I’m capable to hide my tracks in the net when I really want to, but at the same time I’m habituated enough and connected to other people through these habits so that I use Gmail (and other Google services) because of the easiness of it.

From my perspective this thing:

…sounds like a burdensome thing to keep track of. Because at the moment these very easy to use apps that we have, have become kind of transparent to me, so that in live situations I kind of forget that there even is an app. It feels more like “The World” asks my opinion about the recent Cafeteria and I’d like to give “The World” my opinion without having to think what kind of plot it is planning to take over me when the tides turn.

So, what I would like to see in the SAFE Network is not so much the freedom to choose what rights any app have, but the freedom of not having to choose the level of exposure every time I want to casually tell my opinion to “The World”. And it should be that way also for the future so that I don’t leave a track that is anonymous only if I stay careful ad infinitum. Of course in the end it comes back to the apps and the core, but from my user perspective it is more about “situations” that “apps”.

I don’t know, I guess in the end it will be as easy as having some kind of anonymous setting on all the time and use another setting if I spesifically wish so.


Well, there will be an anonymous ‘always on’ setting—that’s the default state of browsing and downloading.

But as soon as you communicate with others (like in the commenting scenario describes) you are have to decide what level of disclosure of your identity you’re comfortable with in the given situation. This could be, say, by creating a one-time throwaway pseudonym ID, a persistent pseudonym, or an ID that discloses more about your actual identity. That’s entirely at your discretion.

These are elements of the User Experience Design, which aren’t directly covered in the fundamentals, but are part of the implementation of them; this is very much becoming our focus now as we move toward launch. There is no reason why it couldn’t be as simple to use as Google profiles for example, with the added bonus of not having to learn all new parameters, nor sift through privacy policies, for each new service you want to use.

I would argue that you probably aren’t, even if you go to really extreme lengths. But with the SAFE Network hidden tracks will be the default, with no extra effort on your part, and revealing your identity is a progressive disclosure, based on your individual requirements.


Well, I believe your assessment more than my own, so you are probably right :wink:


It may be difficult to get one’s head around at the moment, but when the UX is in place it will be clear and natural to even the most inexperienced or casual user!!! :grinning:


No pressure! :sweat_smile:


Should the “if” be there?

Also would that not be Spending a safecoin (instead of the coin just being present) since an attack is to simply

  • create account with a safecoin present
  • send safecoin to new ID
  • create new account
  • repeat for 1 million or billion times.

Doesn’t look right does it.

Thanks for expanding the quote, it was not clear with just the part I used. Rereading it over and over I am now a bit confused. Perhaps I am missing something.

How could one have the presence of Safecoin in their account if the account has not been created yet?