The ImPossible Network

12 years of research and development is coming to fruition as we put together the final building blocks of what some said was impossible: Secure Access For Everyone.

Latest Update

29 August 2019

Vault Phase 1

The final piece of the puzzle is complete and we now have the SAFE CLI, SAFE Client Libs, SAFE Vault and SAFE Browser.

Subscribe for updates:

Live Now

Phase 1 Vaults

This Phase 1 Vault release is primarily to showcase the Network features to Consumers (people using the Network to browse, share data, etc.) and Creators (developers or those publishing content). It allows users to test out features such as SAFE CLI and SAFE Client Libs, as well as introducing the new data types.

It’s easy to use. Just download a Vault binary which will run locally on your computer. Details and links can be found in this forum post.

Upcoming Milestone

SAFE Fleming Network

The next major milestone for the SAFE Network. Whilst the Shared Vault Network will continue to function, this will be a standalone Network that will enable individuals to run Vaults - decentralised storage from home computers. The release of Fleming will be notable for many reasons, not least the fact that with data storage, the Network will now also contain Test Safecoin.

Fleming Feature
Description
Status

Self-Authentication

The ability to log into a decentralised network without the permission or existence of a third party

Complete

MaidSafe invented the technology that lets someone log into a decentralised network securely without requiring the involvement of a third party. The Shared Vault Network is the only place in the world today that you can see this in action.

Self-Encryption

Data is encrypted on your computer before being stored on the Network: no keys or passwords ever leave your machine

Complete

Invented by MaidSafe, this is the process by which any file to be stored in the Network is first broken into chunks, hashed, and then encrypted. These chunks are then themselves encrypted using the hash of another chunk from the same file.

Self-Encryption explained

Disjoint Sections

Otherwise known as Sharding, this allows the Network to scale by splitting responsibilities for specific Network functions.

Complete

Ensures that the Network can scale by managing the responsibilities and locations of each node without requiring any human intervention. This also acts as a security measure to ensure that an attacker cannot choose their location or responsibilities.

Message Relay

Ensures a message can be sent between nodes in different Disjoint Sections

Complete

Ensures that a message can be sent between nodes in different Disjoint Sections. In this early iteration, each message contains signatures of the members of the Disjoint Sections but does not yet verify the signatures themselves.

PARSEC

Asynchronous consensus algorithm

Complete

Ensures that a global decentralised, permissionless Network can reach agreement about events that are permitted and the order in which they are to be recorded. A DAG-based algorithm that achieves the highest standard of security possibile, invented by MaidSafe in such a way that it ensures it is mathematically certain that every part of the Network will reach eventual agreement. In Fleming, we’ll be releasing a highly asynchronous version of PARSEC, with full asynchronicity to come later.

Node Ageing

A decentralised system for ranking the behaviour, performance and abilities of nodes on the Network that requires no human intervention.

Development

Each node on the SAFE Network is given an age by the Network itself. The node age increments every time that a node moves between Disjoint Sections, with only the most senior (Elders) entitled to vote during the PARSEC consensus algorithm.

Dig into the detail in the RFC, and join the discussion on the forum.

Secure Message Delivery

Trusted communication between nodes - messages with authenticated source

Development

Ensures messages are sent and signed in such a way that lets nodes rely on the contents of each message despite having no previous relationship with the sender. This solves a problem faced by many existing blockchain-based projects and is essential when you have a Network that will autonomously move nodes around as required.

Reliable Message Delivery

Communication guaranteeing the successful delivery of messages.

Complete

Ensures that all sent messages will be successfully delivered to their destinations, even when some nodes responsible for the delivery are failing.

QUIC-P2P

The low-level language which users connecting to SAFE will use for all network communications

Complete

Software that lets computers communicate in an encrypted manner on the SAFE Network. The software provides the infrastructure for messages to travel whilst the Routing layer of the Network sets the rules about which directions those messages can travel in.

Malice Detection

Preventing malicious nodes subverting the consensus algorithm, PARSEC

Complete

The way that nodes identify malicious nodes that are damaging the Network within a Disjoint Section and the mechanism by which they agree to eject that node, or mitigate the risk.

Test Safecoin & Wallet

Allow the Network to charge, and a user to send and receive payments to a wallet, in units called Test Safecoins

Complete

Safecoin is the incentive mechanism that encourages individuals to provide the computing resources that the Network requires: storage, broadband, and CPU resources.

Farming

The process of providing resource and receiving Safecoin in return

Development

Individuals who choose to supply the resources that the Network requires have the opportunity to be rewarded with Safecoin. This work ensures that the Network rewards those who provide it with valuable resources.

Vaults From Home

The ability for anyone to download software and run Vaults from home, creating decentralised storage for the Network

Development

Decentralised data storage is a key element of the SAFE Network. This release will enable nodes to participate regardless of the resources they offer.

Published and Unpublished Data Types

Allow the network to store Published and Unpublished data via AppendOnlyData or MutableData types

Complete

Published data refers to content that is published (made available) for everyone such as websites, blogs, or research papers. For such public content, it becomes important to retain a history of changes. History must not be allowed to be tampered with and the published data must remain forever. Unpublished data is data that is not desired to be made public such as personal data or organisations’ data stored on the network

Unpublished ImmutableData Data Type

Enhance ImmutableData to make it an unpublished or published, with the difference that unpublished can be deleted

Complete

There are many times when a user will require to create Immutable Data to store private content. As long as this content is not published (made available for others) this will be deleteable by the data owner only.

Next Up

SAFE Maxwell Network

The release of SAFE Maxwell builds on top of Fleming and enables the network to upgrade, improves security and sets the ground work for switching test SAFE Coin to real SAFEcoin.

Maxwell Feature
Description
Status

Spam Handling

Ability to handle spam attacks

Concept

Spam includes nodes attempting to carry out activities that they shouldn’t or valid activities at a scale that is intended to choke the Network. The Network should be able to withstand a reasonable volume of such attacks.

Identity Management

Ability for users to create and manage multiple identities for use on the network

Concept

Users will be able to create multiple identities in the Network. Each identity can be used as required by the User and each should be independent unless the User explicitly wants to connect them. This helps protect identity and privacy.

Upgrades

The ability for the Network to upgrade itself, with no harm caused

Concept

The Network will have the ability to upgrade itself in order to allow features and improvements to disseminate throughout the Network. The upgrades must be done in a way such that they don’t cause harm to the Network.

This is an important stage in the evolution of the Network as it means that new software can then continue to be rolled out onto the existing Network without disrupting the existing functionality.

Coming Soon

Upcoming Network Features

The following list represents network work that remains to be completed. The order should not be seen as fixed in any way as in certain cases, work will be carried out in parallel by different teams.

Feature
Description
Status

Secure Enclaves

A trusted executable environment within existing computers

Concept

Creates an area within the hardware of a computer that is a secure, trusted environment that stands separate from the rest of the computer. It functions like a mini-computer inside existing computers that cannot be opened.

Network Growth

Allow the network to grow and scale in a sustainable way

Concept

The Network allows controlled growth to ensure that the majority of decision-makers are healthy nodes that follow the rules of the Network. This growth should be sustainable in order to avoid unnecessary mergers between Sections.

Network Restarts

Ability for the network to restart after a catastrophe

Concept

In the event of a catastrophic outage, the Network should be able to rebuild itself because it maintains the integrity of essential data (such as chain history) which enables it to start functioning again on the basis of the last known state of the Network.

RDF Support

The Network will have native support for RDF, enabling data to be compatible with the Semantic Web

RFC

Ensures that data on the SAFE Network is stored in such a way that the format can be understood by other Semantic Web projects, such as Solid.

Obfuscating stored data

All data stored within a Vault on an individual’s computer must be entirely encrypted and unreadable

Concept

Ensures that even the smallest piece of data that is stored in a Vault cannot be read by the person controlling the computer on which it is stored.

Common Coin

Replace our concrete coin with a common coin to make PARSEC fully asynchronous

Design

Common coin is a device that nodes can use to generate a “random” binary value (true or false). Every time a node flips the coin, all other nodes are guaranteed to observe the same value for their coin flip. Also, the value must be unpredictable, which means that no malicious node can know the outcome before a honest node has observed it.

Apps and User Experience

Latest Version v0.15.2

SAFE Browser

The latest release includes some of the beginnings of the Perpetual Web, as well as the Authenticator: enabling you to securely sign in to the SAFE Network, and manage access and permissions of SAFE Apps.

Current Milestone

The Perpetual Web

The SAFE Network is designed to ensure that public data is permanent and can never be deleted. Individuals and groups can choose to keep their data private, but once it’s been published, it will remain permanently available. This milestone aims to showcase the incredible power of this facet of the Network, by building out the User Experience, and iterating on it right through to launch.

Milestone Features
Description
Status

SAFE Browser

Enhancements to the browser designed specifically to take advantage of the functionalities of the Perpetual Web

Development

The SAFE Browser functionality will be extended to incorporate new features that are unique to the Perpetual Web, such as the ability to roll-back through the version history of any SAFE website or asset.

Mobile Browser

Mobile version of SAFE browser which is limited to browsing published data from the SAFE Network

Complete

Enables individuals to access the SAFE Network directly by using a browser on their mobile phone

Data Manager

Streamlined publishing of SAFE sites and Perpetual Data

Development

A suite of tools which provides the necessary functionality to add data to the SAFE Network, publish perpetual data, and manage Public Names. This will supersede the Web Hosting Manager.

SAFE CLI

An advanced CLI to manage accounts and data

Development

A command line tool to manage data on the SAFE Network. It will allow the user to store data on the network and manage accounts, identities, and permissions. This is the tool that the frontend apps and features—such as the Data Manager—will build upon.

Public Name System

Content stored should be accessible with human-readable URLs, via a decentralised domain name system: the Public Name System

RFC

A domain name system translates numerical IP addresses into a format that can be read by humans (eg. http//216.58.206.35 resolves to Google.com). The current web relies on a centralised organisation to maintain that record. The SAFE Network requires this process to be outside the control of a single party in order to avoid censorship and repression.

Upcoming Milestones

Private Communications

If we want a world in which individuals can communicate freely whenever they choose, privacy is essential. This milestone aims to deliver just that.

Milestone Features
Description
Status

Private Messaging

Send secure private messages between clients

Concept

One of the most sought after features of the SAFE Network: secure, private, instant messaging.

Identity Management

Ability for users to create and manage multiple identities

Concept

Improves the user experience for individuals as they switch between the identities (or profiles) that they choose to represent themselves with on the SAFE Network, without the need to create multiple accounts.

Contacts Management

Find, connect and stay up-to-date with other SAFE Network users

Concept

Enables SAFE users to find and connect with other people across a range of applications in a consistent way.

Take Control of Your Data

The SAFE Network turns the current data ownership model on its head. Personal information will no longer be stored on corporate servers. Self Authentication gives you complete control over your data. You can grant (and revoke) permission for apps to use your data at any time and prevent any unauthorised company or third party ever gaining access.

Milestone Features
Description
Status

Data Manager

Fine-grained management of your personal data

Concept

The extension of the Data Manager tool to allow fine-grained control by individuals over their private and unpublished data.

RDF Support

Support storing and querying RDF resources in SAFE-Core

RFC

Ensures that the SAFE Network understands a way of describing the architecture of data that is understood by other projects, such as Solid

SPARQL Support

Add native support for SPARQL to allow searching of data

Concept

Enhances the functionality of SAFE by adding SPARQL support to SAFE Client Libs and SAFE Vault. This ensures that the Network can understand a well-known semantic query language, and enables users to search.

Collaboration

Tools to enable collaboration through sharing and group permissions on private unpublished data

Concept

Manage sharing and permissions of private, unpublised data and files, for collaboration between individuals and groups.

XOR URLs

A way of sharing and accessing SAFE Network files without the need for a Public Name

Complete

Create a system of standardised URL’s on the SAFE Network that are based on the XOR address of the content being referenced. Ensures that individuals can access and locate data and files in a more user-friendly manner.

The New Digital Economy

The new digital economy is all about ensuring that you no longer pay for your digital life with data. Instead, you use a cryptocurrency that’s integral and distributed by the SAFE Network. You earn value in return for providing resources to the Network.

Milestone Features
Description
Status

Test Safecoin Wallet

Transact using Test Safecoins

Development

Users will be able to use Test Safecoin in the Network, allowing an ecosystem to built around the SAFE incentive mechanism. The ability to create multiple wallets, associate them with an identity, and also one-time-use wallets to enable anonymous transactions, will all be part of this.

Vault User Interface

Easily set up, run, and manage a Vault

Concept

Users will see greatly-improved Vault User Experience. Anyone providing storage to the Network can expect to see a number of usability improvements, making it easy to offer resources and start farming on everyday home computers and devices.