SAFE Network Infrastructure (Security)

I created this post for my own understanding. But maybe it will help others who need a simple explanation to understand the SAFE Network infrastructure. I’ll compare these 3 (ISP, VPN, TOR) to help explain the SAFE Network. I’m not a Network expert, so some of this might be wrong or explained better by someone else.

<-> means your traffic is considered insecure.
<=> means your traffic is considered secure.

ISP : the most common way to access the internet.
(User) <-> (ISP) <-> (Server)

VPN : a private network that encrypts traffic and proxies on your behalf.
(User) <=> (ISP) <=> (VPN) <-> (Server)

TOR : an onion network designed to obfuscate your IP.
(User) <-> (ISP) <-> (Tor Enter Node) <=> (Tor Mid Node) <=> (Tor Exit Node) <-> (Server)

ISP users must trust their ISP & Server.
VPN users must trust their VPN & Server.
TOR users must trust the Exit Node & Server.

Do you see a pattern here?

What makes the SAFE Network so different?

SAFE : a decentralized network of nodes that has no single server.
(User) <-> (SAFE App Launcher) <=> (ISP) <=> (32 Nodes “Close XOR Neighbors”) <=> (SAFE Network) <=> (SAFE Vaults)

  • Self Encryption enables ALL data uploaded and downloaded to be read only by the User. The vaults don’t know where it came from. The user doesn’t know where it’s stored.
  • There’s no single server end point. Instead, many vaults look after chunks of encrypted data. If a vault goes offline, it is replaced by another vault.

I purposely focused on the infrastructure, showing how data flows through the system. If you see glass shatter, that is basically what happens when data is uploaded. When it is retrieved, it looks like shattering in reverse.

We use a term called: ANT Technology to describe the process. The SAFE Network of Nodes do lots of little jobs, and cooperate to achieve a bigger picture. But only the end user can see the final result. :wink:

Because of the way the infrastructure is designed, the User no longer has to trust a Server!

That leaves us with (32 Nodes “Close XOR Neighbors”). While it may be considered a weak point… it should be very hard to achieve an attack. And even if it were possible, the damage would be limited to the one node they surrounded.

SAFE users need 28 of their 32 Neighbors for consensus. This prevents your node from being dishonest.

I hope this was helpful and if anyone wants to add their thoughts/corrections, feel free.


Very handy David, thanks. I shall steal this :wink:

PS @dyamanaka it might be clearer if you use <-> for insecure.

1 Like

Thanks @happybeing

I also clarified the relationship between the node and it’s neighbors, cause complete trust is not accurate. It’s more like consensus.

1 Like

you missed the entire layer of applications/developers

They can secretly know and control anything you are doing in all above scenarios unless every user on earth writes their own code or reads and understands ALL the code they compile


There are many examples of fake/phishing sites and rogue Applications (Malware)… all of which wreck havoc on vulnerable users. Those attacks target the (User) directly. We have a Safe App Launcher thread talking about this very problem.

I suppose I should fit that in somewhere in the path.
(User) <=> (ISP) <=> (Safe Launcher (APP)) <=> (32 Nodes “Close XOR Neighbors”) <=> (SAFE Network) <=> (SAFE Vaults)

Does that look right?

I think the Safe Launcher should go between user and isp.


Yes, I think you’re right. I’m going a step further and replacing (User) with (SAFE App Launcher). We should push the App Launcher as the starting point, similar to how TOR recommends the browser bundle.

1 Like

Including User <-> SAFE App Launcher allows us to highlight that the user’s device is a weak point that SAFE does not protect in this iteration.

1 Like

Ah yes, we don’t want to present a false sense of security. I’ll update the chain.