Bitcoin

Evolving Terminology with Evolved Technology: Decentralized versus Distributed

As we all may be aware, the term ‘decentralize’ has grown in popularity over the years with increased excitement around bitcoin and increased understanding of technology without central points of control or failure. The invention of bitcoin isn’t the first instance to implement this philosophy and it certainly won’t be the last. This term, however, could use some clarifying as these ideas become more mainstream to avoid dilution, or misinterpretation. What people call a decentralized network is already contested within communities like bitcoin and in particular how it is related to a distributed network. As MaidSafe pushes towards launch of the global SAFE Network and continues outreach to groups both within the community and part of a more mainstream audience, it will be of growing importance that we have a standard way of communicating these values and I hope that such standards will be adopted by related communities.

Distributed Networks and Central Administration

Several months ago I designed and published a graphic with the intention of helping to better illustrate the core properties of centralized, distributed and decentralized networks in collaboration with Bitcoin developer, Peter Todd:

networks

I also recently put together an updated diagram from a similar but slightly different perspective:

networksV2

My motivation for creating the original diagram grew after coming across the following diagram a few years ago from a series of publications by Paul Baran, “On Distributed Communications Networks” originally published in 1964:

This graphic by Baran has had a fair share of use among presentations I’ve seen over the past couple years since coming across it myself. It seems to be the only graphic detailing distinctions between the terms and with the reputation of being created by one of the original expert computer networking engineers, I don’t blame folks for gravitating towards it. Unfortunately this chart creates a misleading perception that the term distributed is analogous to peer-to-peer. At first, I also conformed to what the illustration was attempting to convey and momentarily modified my use of the terms ‘decentralized’ and ‘distributed’ to adhere to the 50 year old diagram. However, it didn’t sit quite right with me after doing some investigating on my own to more modern uses of distributed. This may have been an accurate use of distributed during the beginnings of computer networking implementations when the paper was written, but I would argue that this is no longer the case. Distributed computing incorporates everything from the standard client-server model, where some or all computation for a client is offloaded to a more powerful server, to networks like SETI@home and Folding@home where many computers take on individual tasks and send results back to an administrator for compilation or perhaps further analysis. As long as computers within a network pass messages between each other to coordinate actions or communicate, the system is said to be distributed, however, that does not mean a central administrator or hierarchy is not present in the system as well.

Hierarchy in Decentralized Networks

If we look into uses of the term ‘peer-to-peer’, we see existing technologies like Bitcoin and BitTorrent as primary examples and by looking at their structures can conclude that these are structures without hierarchy. Peers are always equal to other peers and are not required to pass through any central points or hubs for coordination or communication. This structure is very reminiscent of what Baran illustrates to be distributed but it is much more accurate to say peer-to-peer networks are a subset of distributed networks. Now, considering decentralized networks, this structure is again illustrated in both Baran and my diagrams. In Baran’s, however, he shows decentralized as a specific kind of network without a single central point and instead with several hubs. This definition is partially true but should also be inclusive of peer-to-peer structures as illustrated in my diagrams. Examples of decentralized networks that are not peer-to-peer include mesh networks with backbone nodes which facilitate longer distance connections to less powerful nodes and the Internet itself where servers facilitate more powerful computations and greater amount of hosting capabilities while connecting to less powerful clients like home computers, laptops and mobile devices. Both mesh networks with backbones and the current Internet lack a central point of control thus earning the decentralized title but nodes on those networks are not all equal preventing them from being peer-to-peer. So we can distinguish peer-to-peer from other decentralized networks by the simple property of lacking hubs. While the inclusion of hubs has potential to increase efficiency, networks that use them can also create incentive for said hubs to centralize as we see with our current Internet. The removal of hierarchical hubs and potential for centralization is one of the key distinguishing reasons MaidSafe and BitTorrent are structured as peer-to-peer networks. And for clarity, the anonymizing routing network, Tor, is a decentralized network but not peer-to-peer as it uses servers for hosting and routing which clients connect to.

The Delicate Balance of Standardising and Modernising

So now that we have a better understanding of these terms from more modern implementations than what Baran had in the 60’s, we can take a step back and conclude that the subjectivity in human words and language can be confusing and frequently cause unnecessary arguments. Without first defining critical terms that have potential for creating ambiguity, we are not going to go very far in even the most basic of discussions. Standardising helps communication not only within communities thinking about and progressing on these topics but also will help us communicate to outside groups. I have seen at least two presentations in the past year which have focused on Baran’s chart to argue that distributed networks are ideal in terms of removing central points of control without considering real world examples of distributed networks like SETI@home which have central administrators. So I encourage this community to consider these terms a bit more deeply before relying on a diagram that is half a century old and from a time where distributed systems had not reached the scale where central points are so critical as they are now. Additionally, while a centralized network has a clear unchanged definition (Baran and I agree on the definition as you can tell by comparing charts), both distributed and decentralized capture a range of meanings as illustrated in what I hope to be updated diagrams that more people become accustomed to using. I also encourage further consideration and debate regarding these terms and modification of the chart I created which is licensed under Creative Commons Attribution-ShareAlike for such a purpose. As technology evolves, the language we use to talk about it must also be open to evolution. Perhaps in time we will need to reconsider these definitions I’ve laid out but standardisation for present communications would really help avoid unnecessary misunderstandings.

Consensus Without a Blockchain

A key requirement of distributed computer networks are consensus systems. Consensus systems enable a specific state or set of values to be agreed upon, without the need to trust or rely upon a centralised authority, even if nodes on the network start to fail or are compromised. This ability to overcome the Byzantine, or Two Generals Problem makes effective consensus networks highly fault tolerant.

Approaches to reaching consensus within distributed systems are likely to become an increasingly important issue as more and more decentralised networks and applications are born. IBM’s paper, Device Democracy, confirms that big blue envisions the computing platform powering the Internet of Things will be decentralised. A view that further validates what the Bitcoin and decentralised computing fraternity have known for some time, that decentralised networks offer an efficiency and robustness simply not possible in centrally controlled systems.

Why Not Use a Blockchain?

Almost all consensus based systems with the crypto currency community, Bitcoin included, use a blockchain. An immutable, append only, public ledger that maintains a database of all the transactions that have ever taken place. While the benefits this ledger provides are advantageous for many different types of operation, it also comes with its own set of challenges.

One of the most commonly cited issues is the problem of scalability. Specifically, that in order for the network to reach consensus, this increasingly large and centralising file must be distributed between all nodes. In the early days of the network this wasn’t such a major issue, however, as the network continues to increase in popularity the Bitcoin blockchain is now a 27GB file that must be synced between the network’s 6000 plus nodes.

So, if we move the concept of consensus into the context of a decentralised data and communications network, we can start to evaluate how effective the existing bitcoin consensus mechanism would be.

Within a data network, if an end users makes requests via the client, they expect to be able to set up their credentials, store or retrieve their data instantaneously and know that the operation has been carried out correctly. In essence, they require network consensus to be reached at network speed (in fractions of a second), a tricky problem to solve in a large decentralised network. Within the Bitcoin network, this first round of consensus occurs after 10 minutes, with each further block consolidating the transaction. This transaction speed is clearly unacceptable in a data network environment and any attempt to increase block speed to circumnavigate this issue will have significant negative consequences on security.

Close Groups

What we need is a decentralised consensus mechanism that is both fast and secure. But, how do you reach consensus rapidly on an increasingly large group of decentralised nodes without compromising security?

The answer lies within close groups. Close group consensus comprises utilising a small group, a fraction of the network size, to state a position for the whole network. This removes the need for the network to communicate with all nodes. Within the SAFE Network the close group size is 32 with a quorum of 28 required to enable a specific action to be taken. An example may help explain this point.

Lets assume that Alice was to store a new photo. As Alice stores the image it is encrypted and broken up into chunks as part of the self encryption process and passed to a close group of Client Managers. This close group are comprised of the closest vault IDs to the users vault ID in terms of XOR distance. This is distance measured in the mathematical sense as opposed to the geographical sense. The Client managers then pass the chunks to thirty two Data Managers, chosen by the network as their IDs are closest to the IDs of the data chunk, so the chunk ID also determines it’s location on the network.

Once consensus is reached, the Data Manager passes the chunks to thirty two Data Holder Managers, who in turn pass the chunks for storage with Data Holders. If a Data Holder Manager reports that a Data Holder has gone offline, the Data Manager decides, based on rankings assigned to vaults, into which other vault to put the chunk of data. This way the chunks of data from the original file are constantly being monitored and supported to ensure the original data can be accessed and decrypted by the original user.

A client trying to store a piece of data that currently has no consensus because they don’t have enough safecoin, for example, would be refused.

Cryptographic Signatures

This use of close group consensus is not used for every operation however. Utilising this complexity for every operation would be inefficient and put an unnecessary load on the network. Close group consensus is only used for putting data on the SAFE Network, such as a file, a message, or in time, computation. For making amendments to data, such as changing the contents of a file (creating a version), or sending a safecoin to another user, cryptographic signatures are used to authorise the action.

Cryptographic signatures were first conceptualised 50 years ago and products containing their use were first widely marketed in the late 1980’s. The SAFE Network utilises RSA 4096, a very well established and tested algorithm.  Cryptographic signatures mathematically validate the owner of any piece of data and can prove this beyond any doubt, provided the user has kept their private key safe. If the end user is the owner of any piece of data and can demonstrate this fact, by digitally signing their request with their private key, the network permits them access to change the data.

Avoiding the double spend

The lack of blockchain raises one additional question though. With a distributed immutable ledger, how do you eliminate the problem of the double spend? This is something managed so effectively by the Bitcoin network, which verifies each and every transaction and records it on the blockchain.

Safecoin, the currency of the SAFE network, is generated in response to network use. As data is stored, or as apps are created and used, the network generates safecoins, each with their own unique ID. As these coins are divisible, each new denomination is allocated a new and completely unique ID, highlighting the importance of having a 2 ^512 address space.

As the coins are allocated to users by the network, only that specific user can transfer ownership of that coin by cryptographic signature. For illustrative purposes, when Alice pays a coin to Bob via the client, she submits a payment request. The Transaction Managers check that Alice is the current owner of the coin by retrieving her public key and confirming that it has been signed by the correct and corresponding private key. The Transaction Managers will only accept a signed message from the existing owner. This proves beyond doubt that Alice is the owner of the coin and the ownership of that specific coin is then transferred to Bob and now only Bob is able to transfer that coin to another user. This sending of data (coins) between users is contrary to the Bitcoin protocol where bitcoins aren’t actually sent to another user, rather bitcoin clients send signed transaction data to the blockchain.

This is not an attack on blockchains

The lack of blockchain means that it is not possible to scrutinise all the transactions that have ever taken place or follow the journey of a specific coin. In this respect safecoin should be thought of as digital cash, where only the existing and previous owners are known. Users who value their anonymity will see this as a distinct advantage and it should not be ignored that this enables an unlimited number of transactions to occur at network speed.

However, this blockchain-less (yes a new word) consensus mechanism does not provide the scrutiny and transparency desirable in some financial systems, or in general record keeping. This raises an important point. It is not the intention here to suggest that one consensus mechanism is better than the other, or that there is one consensus mechanism to rule them all. Instead, we should consider that each is better suited for a different purpose. This is why the incredibly bright future for distributed consensus will come in many forms, with each iteration better than the last.

To find out more about the SAFE Network and how it works, please visit our System Docs.

Opting into transparency

One of the biggest misconceptions about the Safe network amongst those interested in bitcoin is in the tendency to assume it’s based on blockchain technology. In fact, the two technologies were developed simultaneously. By the time Satoshi had released the bitcoin whitepaper in 2009, David had already been conceptualizing and iterating on his own ideas for MaidSafe for over 2 years. However, this isn’t to say that the two technologies aren’t related, especially in the understanding of the importance for decentralized consensus. Their basis for sustainable and resilient systems might as well be solving the same problem but it is the method which makes the two protocols very distinct and achieve complimentary solutions.

With all the amazing innovation that blockchain technology brings, it is important to keep in mind the underlying implications of a global, public ledger. At face value, it becomes fairly easy to deduce the inaccuracy of calling the system and actors within it anonymous. A global public ledger is just not the basis for an anonymous protocol even though steps can be made to increase anonymity. In the end, however, these efforts are working around the fact that every transaction is publicly recorded. This same public recording is how bitcoin and other blockchain technologies reach consensus. There is one and only one bitcoin blockchain that all the miners agree to. Transparency is the result of Satoshi’s consensus scheme.

Let’s now dip into the Safe network which has a similar purpose of disintermediation, but does so with privacy and anonymity built from the core. Without getting too deep into the technical details of the Safe network, and as with previous analogies, I invite you to keep in the back of your mind imagery of each vault in the network as a single ant amongst a colony. The Safe network runs on ANT* (Autonomous Network Technology), a system where in addition to a vault’s purpose of storing and computing chunks of data, it also plays a specific managing role in relation to another nearby** vault. Groups of vaults play the same managing role to provide redundancy in the event that another vault goes offline. This group action is what allows for basic consensus without an entire network knowing an event happened. Of course this division of management is just the beginning of keeping such a complex system autonomous, however, it is this mechanism which gives the Safe network its anonymous consensus scheme.

Putting the two technologies side by side again, we can see how they compliment each other as solutions to decentralized consensus. Users of blockchain networks opt into privacy layers for increased anonymity while users on the Safe network will opt into transparency layers for increased accountability. Individuals and small groups may prefer to stay private or anonymous, but when interacting with larger businesses or organizations, accountability becomes increasingly beneficial. Defaulting to anonymity for individuals through the Safe network will increase freedom while the greater requirement for transparency from organizations will be realised via blockchain public ledgers, minimizing corruption. There is certainly a balance between privacy and transparency and with these two technologies available, we may finally be able to achieve real digital freedom as individuals while also giving larger entities efficient tools for providing accountability.

*For a more technical overview of the Safe autonomous network, check out the SystemDocs.
**In the Safe network, we use XOR distance which is an important distinction for privacy and very different from the typical Euclidean definition of distance.

MaidSafe Sells $6 Million of Bitcoin 2.0 Software in Five Hours – Press Release

Seeking Fair Solution to Overwhelming Demand, $2 Million of Crowd-Sale Tokens Re-listed for Bitcoins

MaidSafe (http://maidsafe.net/), creators of blockchain-like technologies that can decentralize nearly every aspect of the Internet, including all Web services, today announced the sale of $6 million of its software token, safecoin, in five hours, a record for any kind of crowd-sale. The initial $6 million was comprised of $4 million in Mastercoins (the sale took place using the Mastercoin Protocol) and $2 million in Bitcoin. Noticing the disparity, MaidSafe CEO David Irvine partnered with large buyers to purchase the last $2 million for Mastercoins and relist them for sale—under the exact same terms and at a fixed bonus award of 40 percent—for Bitcoins.

“This is the first sale of this magnitude by any company or foundation using the Mastercoin Protocol and it appeared that Mastercoin purchases were going through more quickly than Bitcoin purchases (which needed to be converted to Mastercoin), with no value fluctuation risk as the terms of 17,000 safecoins per Bitcoin were set and adhered to rigorously,” said Irvine. “In order to be fair to the Bitcoin purchasers, we bought the final $2 million with Mastercoins so we could have a more orderly, fair chance at getting safecoins to everyone who tried to get in the first day.

“We realized that some people who, attempting to arbitrage the price of Mastercoin and Bitcoin, had only five hours to do so. Our larger concern was that Bitcoin holders might get disproportionately disadvantaged because of the two-step process to completing transactions on the Mastercoin Protocol,” Irvine continued. “We assumed the sale would take the entire 30 days. Never in our wildest dreams did we expect this much demand in the first few hours.”

David Johnston, board member of the Mastercoin Foundation, acknowledged the difficulties of rapidly converting Bitcoin into Mastercoin during the fast-paced crowd-sale and said that he and other prominent Mastercoin holders would assist anyone who purchased Mastercoins in the past 24 hours with securing safecoins at the originally offered terms through the conclusion of the crowd sale.

The safecoin tokens are generated and protected by the SAFE (Secure Access For Everyone) network, and facilitate the wide array of applications which can be developed using them, from decentralized cloud storage to secure websites that cannot be attacked. The total number of safecoins available to be purchased by the public is 429,496,729 (10 percent of all safecoins that will ever be created).

The crowd-sale began today at 9 a.m. GMT and will continue through the final sale of the allotted safecoins, approximately $8 million. The price per safecoin will remain fixed throughout the sale at 17,000 safecoins per Bitcoin. Irvine noted that all participants will be given the maximum bonus of 40 percent extra safecoins for a total of 23,800 safecoins per Bitcoin.

Upon the completion of this crowd-sale, the value of existing safecoins will be approximately $24 million, with the remaining 70 percent of a capped number (like Bitcoin) of safecoins to be “farmed” (analogous to mining, but created by contributing resources, such as storage space) by anyone who wishes to add value to the network. The initial tokens will utilize a proxy token, the MaidSafeCoin, which will be recorded on the Bitcoin blockchain. When the full SAFE network becomes operational, MaidSafeCoins will be swapped for safecoins on a 1-to-1 ratio.

About MaidSafe

Founded in February, 2006, with the intent to decentralize the Internet, MaidSafe has been working on Project SAFE for eight years (longer than the Bitcoin blockchain has been in existence).  Based in Troon, Scotland, the 14-person team has received a total of $5 million in private investment to date, and it will be using the not-for-profit MaidSafe Foundation (http://www.maidsafefoundation.org) to control issuance and manage the funds generated during the April 2014 crowd-sale.

The MaidSafe platform is designed for third-party application providers to create their own application environment and removes developer risk for startups. Self-authentication allows for everyone to be in complete control of all data, beyond encryption to include physical access. In essence, nobody knows where any data is located, thereby providing completely private and unilateral access by individuals. The network lets users manage any information completely free of any third-party involvement. Users can store, share, chat and publish 100 percent under their own control and knowledge. For more information, visit http://maidsafe.net.

References

MaidSafe white paper: https://github.com/maidsafe/Whitepapers/blob/master/Project-Safe.md

Metaquestions essay: http://metaquestions.me/2014/04/12/safecoin-why-its-safe-and-what-it-means-for-us-all/

Scotsmen in New York

Recently, MaidSafe has been attending a number of bitcoin conferences. These international get togethers are, as the name suggests, focussed on bitcoin. However, while we are very interested in the crypto currency and what it represents, for me the events center around decentralised technologies, that is, online products and services that move the control of data away from large technology companies and hand the power back to the users. In my view, where it should be.

This is the third conference David and I have attended in 3 months and the most important by far. The Bitcoin New York conference was the location MaidSafe had chosen for our big announcement, the launch of the Secure Access For Everyone (SAFE) network. Our presentation was on the second and last day of the event and represented MaidSafe handing over the baton of ownership of the platform to all Internet users worldwide. This presentation was the culmination of 8 years of an extreme amount of head scratching and hard work, with the MaidSafe team often working through the night, it seemed fitting to be doing it in the city that never sleeps!

In addition to giving an overview of the network, our presentation announced the SAFE crowd sale (more information is available at: http://www.safecoin.io/) and the network’s very own crypto currency, safecoins. Safecoins are an innovative way of incentivising end users to provide resource to the network, through a Proof of Resource (POR) mechanism and for third party developers to develop applications that end users will want to use. Motivating these groups is an extremely important piece of the jigsaw to ensure wide scale adoption, however, finally giving Open Source developers the ability to make money from applications with built in revenue streams is significant and the first of its kind. David wrote an excellent article on the subject: http://metaquestions.me/2014/04/02/project-safe-is-this-the-fair-business-model-at-last/

Our presentation was very well received and finished with David being referred to as “the braveheart of tech”. For me, the only disappointing thing was that no one shouted “freedom” as we left the room, but you can’t have everything!

Our presentation was sandwiched between a number of interviews from sector specific and main stream press, including Forbes and the Wall Street Journal. We are now going to redesign our websites press page (http://maidsafe.net/press) to allow us to fit in the coverage we have received. It was striking during each of these interviews and throughout the various meetings we had during our trip how excited journalists, companies and individuals are about the technology. The wide smiles and jaw dropping looks of disbelief remind me that what we now take for granted and everyday is something truly special and is set to revolutionise a $5 trillion a year industry.

In fact, it was interesting to note how many of the business and opinion leaders in the decentralised Internet space are talking about the similarities between the way this sector is shaping up and the dawn of the Internet. When you are immersed in this sector it’s hard to believe that the importance and impact of what the companies and people in this niche are doing continues to evade the radar of of many within the wider industry, although I think this will be short lived. Prominent leaders, such as Marc Andreessen and Fred Wilson continue to see the potential of the sector and this will only continue to grow.

It is apparent that MaidSafe are right in the thick of a rapidly growing movement that will disrupt the way the Internet currently works. The appetite for change amongst end users, companies and developers is as immense as the level of innovation on display within the decentralised sector. The end of the conference did not end our business in New York. An invite to another event the next day saw David up on stage once more and several meetings followed with a variety of investors which saw David and I become familiar with Manhattan’s streets, and the realisation that it is much quicker and easier to walk. New York is no place for a car!

As our trip to this awe-inspiring city finished and we boarded the plane at JFK, it is evident that our journey in this amazing industry is only just beginning. We have a very busy few months ahead and we’ll be met with plenty of challenges along the way. However, these challenges will be met head on with same relentless energy and zeal that fueled our first 8 years and got us to where we are now.

Using Tokens on the MaidSafe Network

Bitcoin is a hot topic these days. The crypto currencies ability to disrupt the status quo and its price volatility has attracted admirers and critics in equal measure. Bitcoin proposed and executed a very innovative idea, coupled with a well-considered system design based on the block-chain and proof-of-work concepts. In essence, Bitcoin is a decentralised digital currency on centralised network. In this article, I am going to propose a token based system on the MaidSafe network. In effect, a decentralised digital currency system on decentralised network.

Part I Proof Of Resource

Section I.1 Proof of work for Bitcoin

There are many thousands of articles that have explained what Bitcoin is and how it works and it is not my intention here to get too deep into specifics. However, I do want to explain and highlight some key points:

It is possible to obtain Bitcoin by a process called mining. Mining involves adding transaction records to a virtual currencies public ledger of past transactions and it is the mechanism used to introduce bitcoins into the system. Miners solve computationally difficult problems in order to allow Bitcoin nodes to reach a secure, tamper-resistant consensus about all the transactions that have taken place and miners are rewarded by the network in the shape of bitcoins.This proof, call it ‘Proof of Work’ is recognized by all the members of Bitcoin network. As the Bitcoin network has grown and become popular, people are willing to pay to acquire coins (which is actually the proof). This has led to exchange rates being established, assuring bitcoin of it’s digital currency status.

Section I.2 What is proof of resource?

To further expand the concept of Proof of Work, you can think about Proof of Resource as; validation that the specific amount of resource you have committed has been accepted by the community. The resource here can be anything, such as; man power, knowledge, CPU power, electric power…etc…

Take our monetary system for example, banknotes represent the certification (proof) you received payment for your resource (manpower, knowledge, food…etc…). Within BitCoin, the coin (which is a digital transaction to your account) is the proof of your computation work (mainly CPU power).

Section I.3 What features make a proof a currency?

Proof of Resource has two aspects, proof itself and the resource that proof refers to.

Proof of Resource has the potential to be a currency when the resource it references is of value. Everyone trusts banknotes as the resource it references is valued by the majority of people. The computation power fulfills this need in the Bitcoin network to validate transactions.The ‘guarantee of uniqueness’ is one of the features that enables that Proof of Resource to be considered a currency. Banknotes are backed by government and governments limit the amount of currency issued (printing too much causes inflation to occur). It is hard to produce fake banknotes and once they are spotted they will be removed immediately. The Bitcoin algorithm ensures there is a limit to the amount that can be issued, while the Bitcoin block chain makes it near impossible to fake transactions.

A further feature of currency is its acceptance from the public. When a government issues a banknote, it gains acceptance from that country’s people immediately. However, it takes time for legal tender to be accepted as a global currency as it has to gain acceptance from foreign governments. When bitcoin was first issued, not many people accepted it, so it was not considered to be legitimate at that time. Only after years of evolution, and ultimately acceptance, will it be considered a valid currency.

Part II The MaidSafe Network

Section II.1 The decentralised network

The Internet has been described using the 7-layer ISO model, a concept initially introduced years ago. The lower three layers are mainly hardware infrastructure. It is hierarchical and centralised, based on the masking of IP addresses and centralised ownership, describing the centralised Internet that we have today. Centralised architecture was implemented for many reasons, mainly because of the limitation of technology (especially average connection speed) at that time.

The MaidSafe network proposes an upper layer network solution, utilising a mathematically complete Public Key Infrastructure (PKI) authorisation, secured key-value storage and reliable Kademlia based routing. The network is designed to be decentralised and has the ability to get rid of Domain Name System (DNS), which is not part of the hardware infrastructure. The peer-to-peer routing layer can be embedded into hardware and easily updated, provided manufactures support it. Once that’s done, the Internet can be totally decentralised. However, this will involve a significant amount of reorganisation amongst corporations and governments.

The PKI solution deployed within the MaidSafe network, validates with mathematical certainty a users identity. Bitcoin uses the block-chain to secure the transaction, creating a validated proof of work. In the MaidSafe network, the account itself is self authorised, by combining key-chain verification with nearby group authorisation.

Section II.2 Generate proof of resource on the MaidSafe network

The MaidSafe network deploys a de-centralised key-value store mechanism. This mechanism is focused on data, managing the way it is stored. Any upper layer application can be counted as ‘data’ to network. Every functional node in the MaidSafe network is referred to as a vault. Each vault is provided by users and is responsible for the storage of data on the network. When users create an account, a vault is created, providing a commitment of resource to the network. At this point, the user claims that they can store X amount of data in their vault. However, it doesn’t become proof yet, as the claim cannot yet be verified.

In order to be validated, this vault needs to successfully store data to prove its resource. When the network is required to store chunks of data, it randomly picks a number of vaults in which to store it. When the vault claiming X amount of available space is chosen, the network asks a series of challenge questions. Correct answers enable the chunks to be successfully stored and the proof of resource validated, while the user account records how much space the network has used. It is interesting to note that the proof of resource is not only the committed disk space, the network also takes into account the users CPU power and bandwidth.

Section II.3 Advantages of MaidSafe network generated proof of resource

Regarding the ‘proof’ side, as MaidSafe network is designed as de-centralised, the authorization problem meanwhile keep anonymous on de-centralized network is already resolved. For the end-users, they can just think it as a traditional bank account (you have an account which is secure and unique. The account holds something what will be accepted by others and can be exchanged. Only you can access the account). This will be much easier for them to pick-up the concept as the similarity to normal life experience. (Bitcoin has to solve authorization problem, which is a barrier to end users to understand and trust the system.)

Regarding the ‘resource’ side, proof of resource on the MaidSafe network is mainly focused on storage space for data (call it proof of space if you like). As data can be anything, and used for any purpose, storage space is always desirable. The process for generating proof of resource is totally random and therefore could take an indeterminate length of time. It is not controlled by human beings but by the network using a pre-defined algorithm.

Part III Token on MaidSafe network

With the proof of resource being generated on the MaidSafe network, a token system can be setup relatively easily and there are many ways such a system can be implemented. Here, I will just illustrate one approach, serving as a demonstration of using MaidSafe proof of resource. To keep things simple you can think of this token system as a new digital currency, similar to Bitcoin. We can call it SpaceCoin (as this token system does use disk-space as main measurement).

Section III.1 SpaceCoin based on the MaidSafe network

On the MaidSafe network, a user’s MaidAccount will look like this:

maid_account(<pmid_account1(pmid_node1, claimed_space, stored_space), pmid_account1(pmid_node2, claimed_space, stored_space), …)

Bear in mind that as mentioned previously, the stored_space is a proof of resource generated by MaidSafe network. It has the key features of a digital currency system : approval (validation) by others, to be fairly distributed and no trace bundled to proof itself. With these attributes in place SpaceCoin can be easily introduced into the MaidSafe network.

Imagine there is another field called SpaceCoin in MaidAccount. By using MaidAccount, the tokens immediately become anonymous, requiring no central authorisation, while still retaining the many security features provided by the network. The SpaceCoinAccount will look like this:

spacecoin_account(available_coins, coins_can_receive)

There are two parameters: available_coins (coins the user has) and coins_can_receive (coins the user can receive). A user can credit their available_coins by either providing storage space, or by purchasing coins from others.

Furthermore, coins_can_receive is calculated based on the sum of stored_space across all pmid_accounts that a user holds (a user can have more than one account), multiplied by a global factor (which can be fixed or fetched dynamically from the network). The algorithm that generates the global factor will ensure the token system is immune from inflation. Bitcoin manages this problem by reducing the speed at which new coins are released (or mined); halving the number generated every four years and spacecoin could adopt similar logic.

In essence, available_coins reflects how many coins users own from their previous work, while coins_can_receive relates to how many coins users can obtain in future, based on current proof of resource.

Section III.2 Transactions for Different Scenario

1. Mining

Mining is a relatively simple concept to introduce into a MaidSafe network token scheme, as the stored_space already carried out the mining part. When claimed space is randomly picked by the network to store data, the spacecoin_account gets credited. When mining bitcoin, miners run hardware hoping that their computer solves the hashing algorithm which subsequently earns them coins. Similarly, when mining spacecoin, users will hope that their available storage space will be randomly picked by the network to store data, enabling spacecoins to be earned.

2. Ranking

SpaceCoin can also provide an additional feature that other digital currency can’t, that is, ranking the reputation of the user automatically. When a MaidAccount’s pmid_node gets de-ranked or marked down (through undesireable behavior), it will be reflected in the pmid_account’s stored space. This allows SpaceCoin to update coins_can_receive. This can be seen as some kind of ranking in that higher coins_can_receive value indicates a more stable and reliable commitment to the network. Furthermore, this reputation can only be gained over time, similar to a personal credit score, for example.

3, Exchanging

When user A wants to give some coins to user B, the network check against user B : coins_can_receive > (available_coins + coins_to_sent)

If user B can receive coins, the transaction is agreed and available_coins of A is deducted, while B’s account is credited. If user B cannot receive coins, the network rejects the transaction.

The transaction can become immediately valid by using MaidAccount, as authorization is already completed. This avoids the delay that Bitcoin users currently experience with the block chain, where it takes the Bitcoin network 60 minutes to confirm transactions. In addition, the MaidSafe network provides a further advantage of not leaving any trace of any transactions, ensuring user identities cannot be traced.

Section III.3 Pre-mining of Spacecoin?

Pre-mining is a term used to describe a process where a virtual currency is mined prior to public launch. Typically this is cause for concern as the portion that the initial stakeholders reserve for themselves is open to abuse and potentially reduces the reward for future participants.

Bitcoin had a very limited pre-mining stage with only 50 coins for the original seed. This low number ensured that pre-mining was never really an issue for the Bitcoin community. Interestingly, getting into mining early on is advantageous as the odds of solving the computational problems is initially very high, becoming less so as the difficulty of the problems increase and the number of miners grows.

Other proposed token systems have suggested a fixed portion share model where, for example, 10% is set aside for the original developers and investors. This encourages development and investment to speed the deployment of the currency. However, it raises similar concerns to those raised during a pre-mining process.

SpaceCoin intends to follow the model of BitCoin with a strategy that benefits both early developers and investors: provide seed storage space to form a seed network. This seed storage space can be awarded to early developers for their commits or to investors for their funding.

Owning The Network

As MaidSafe emerge from stealth mode and start to tell the world about our technology and its implications, we have observed comments from people with concerns about MaidSafe’s ‘ownership’ of the network.  An apprehension that one company will own, and therefore control, all data and communication.

These are absolutely logical and valid concerns. Internet users have seen all to often, companies that become too powerful, who try to exert control wherever possible and whose desire for profit eclipses the rights of their users.  We believe, as is the case with the Internet today, that the MaidSafe network cannot be owned or controlled by anyone.  It has never been our intention to do so.

MaidSafe is a network that has no central authority.  It is completely anonymous, secure and repels human intervention of any kind.  This is a network that has decentralisation at its core, it is inherent in the design that it cannot be controlled or ‘owned’.  It’s free and the property of the people forever.  Furthermore, MaidSafe are Open Source with all our code available under GPL3.  This means that we don’t own it, it is there for everyone to use (and always will be) and can be forked independently from MaidSafe.

However, this does not mean that MaidSafe is anti-profit.  Great products don’t exist without great people and investment backed companies.  Or, put another way, products/organisations have to provide services that others could commercialise in order to become mainstream, we have seen this with Bitcoin and Linux.

Our code is protected by a revenue clause that allows non-GPL codebases to be created completely at the behest of the developer, with only a very small 1% (of revenue) fee without any additional charges, such as developer programs or API keys.  The revenue generated here enables MaidSafe to maintain and improve the network for the vast majority of free users, while also repaying our brilliant and patient shareholders.

While on the subject of our shareholders, our founder gave his entire (80%) shareholding away to 2 entities, a block of shares for staff (30%) with the remainder (50% for those who weren’t paying attention!) being used to start a foundation for education and innovation.  A registered charity called the MaidSafe Foundation.  Both these entities will only receive funds via share dividends.

Now, going back to our 1% revenue charge, we believe that this is small enough that it encourages the businesses, entrepreneurs and innovators of the future, with much lower barriers to entry than they experience within today’s server centric architecture.  Compare our offering with the Apple app store, which takes 30% of the developers income while charging a yearly up front developer program fee.

MaidSafe will also not judge any developers app, banning those that either compete or don’t meet some quality standard.  We take a simpler approach, we let market forces decide.  If an app is of poor quality it will not be used.

We are confident that this approach will entice developers and companies to work with us.  Both the GPL and our Commercial license provides developers with the comfort of patent protection for their products.  The fact that we are Open Source will also encourage collaboration through transparency as developers can check the source code for themselves.

We leave you with a quote from author Bryant McGill who captures our sentiments nicely:

“There can never be any real freedom on earth as long as people try to exert ownership over the resources of the world.”