CXO — The Next Generation File Sharing Network

Low-level Library Designed to House Applications for Sharing Objects

Skycoin is targeting content delivery networks (CDNs) with CXO, Skycoin’s immutable object system. CDNs are geographically distributed servers that enable fast delivery of internet content while improving website performance. Some key features of these networks are:

  • Improvement of website loading times
  • Reduced bandwidth costs
  • Increased content availability
  • Enhanced website security
CXO is Skycoin’s improved implementation that will span multiple locations, decentralizing the storage of data. Immutable content on CXO will allow for decentralized cloud storage with the added benefit of scalability seen in CDNs, a merger of blockchain technology and traditional file hosting services. CXO will allow for the availability of fast, usable, secure content while also preventing the necessity to store extensive data files on the blockchain.

CXO — Technical Features

  • Standardized cryptographic hashing primitives and key storage
  • Private key, public key, address generation, signature generation and verification
  • Elliptic-curve Diffie–Hellman (ECDH) encryption
  • Standardized communication libraries
  • Standardized data serialization, messaging and service oriented application frameworks

CXO features immutable tree structures that consist of objects within golang, an object-oriented programming language. All golang objects are referenced via their hashes alongside defined schema. Hashes are a method of searching for information or data that are stored, and the schema dictates and models how that data is outlined.

Data is arranged in a hierarchical tree structure with its roots being signed against public and private keys. Simply put, these structures exist as a method to organize and easily locate data. CXO utilizes traditional search functions in programming and key cryptography to allow for fast and increased efficiency in data replication.

CXO — Data Networking vs Legacy Networks

Rather than traversing long distances or hops to be received, data is taken from the closest source with the requested information. This strategy saves network resources and reduces latency by pushing content to the edge.

The current internet consists of servers that store data. If a user publishes content in New York, and the data is requested in Shanghai, every packet will need to travel from New York to Shanghai for each request. CXO uses content addressable storage (CAS) or source independent networking. This is a mechanism for storing data that can be retrieved based on content. CAS creates a unique identifier (ID) tag linked to the content information itself.

This is in contrast to location-based addresses where storage devices must keep their own list or directory of address locations. In location-based addressing, information is simply stored on free space without regard to content, which can lead to problems since content can be altered or overwritten without any actions on behalf of the storage device. In location-based addressing, when content is overwritten the address remains unchanged, and subsequently users can request information and receive incorrect data with the same unique address.

In CXO the first data copy travels from New York to Shanghai, and each subsequent article of data can be replicated and served to requesters from a new user or a local cache. Rather than traversing long distances or hops to be received, data is taken from the closest source with the requested information. This strategy saves network resources and reduces latency by pushing content to the edge. As an example, CXO connecting to sensor devices only requires a small number of peers since the data is quickly replicated peer-to-peer. This is in contrast to a TCP connection which has a maximum capacity of about 10,000 connections. CXO also enables a higher level of network redundancy, making the network more reliable than legacy systems.

CXO — How does it work?

This system makes CXO’s content secure, easily scalable, and most importantly, reliable.

Users will publish content using their public key. The content is replicated peer-to-peer and copied to locales that request the information. This information is propagated throughout the network, while addresses based on content remain intact. A user may publish a stream of data and sign each block with their private key. Users can subscribe to another person’s feed, taking the hash address of the peer for their subscription.

Utilizing Distributed Hash Tables (DHT) allows any participant to retrieve the values associated with a given key. DHT is resilient to change, as an alteration in data participants results in minimal disruption in the network. The use of DHT allows data nodes to be scaled remarkably efficiently without worry of failure, loss of information or interruption of service. This system makes CXO’s content secure, easily scalable, and most importantly, reliable.

CXO — Data Routing

The final iterations of CXO will have no servers or centralized entities as content will be decentralized and completely peer-to-peer.

Initially each node will report traffic statistics to a central server. The server will aggregate the statistics from all traffic and publish the results of that traffic. A Route Discovery Server (RDS) is applied, similar to a Domain Naming System (DNS), which delegates and assigns domain names while mapping those names to specific internet resources. RDS will have the ability to download copies of the data while being able to compute optimal routes to direct data traffic. Clients will ask the Route Discovery Server for proposed optimal routes and be assigned a traffic route.

Route Discovery Servers will be able to utilize a multitude of technologies for optimization:

  • Machine Learning Algorithms — a subset of artificial intelligence that grants the computational power to “learn” and progressively improve the performance of systems
  • Big Data — consisting of volume, velocity, variety, variability and complexity, big data employs large amounts of data to form decision making principles
  • Ant Colony Optimization — a computational algorithm that can be deployed in order to reduce problems by finding good paths through the use of graphs

These are all examples of available technology that can be integrated into Route Discovery Servers to allow the optimization & improve service of CXO’s decentralized data networks. Data routes will be benchmarked and continuously tested for optimization. Over time, CXO will naturally become decentralized, removing any reliance on special “service” servers.

CXO — Applications

Everything from distributed Reddit, Wikis and email systems are possible on the CXO platform.

Applications will be developed on CXO to facilitate the transfer and communication of data. CXO will have a content browser, and users will input a public key to navigate to content:

ipfs://publicKey/readme

CXO can easily create applications such as a distributed version of Twitter, where each user has control of their own data feed. Forums can be created where data will be controlled by a single public key, and a user can submit data to the forum with the usage of signed messages, triggering an API to update the forum. Since data is replicated peer-to-peer, all forum users will receive the update. Everything from distributed Reddit, Wikis and email systems are possible on the CXO platform.

Implications of a Decentralized Data Network

The next generation of HTML, websites, services, social media and video streaming will be built on these principles.

Skycoin has created the complete package for decentralized data sharing and Interplanetary File Systems (IPFS) being built on top of CXO. Providing distribution over the Skywire network on the CXO platform is useful for data that must be secure and verifiable, yet doesn’t require storage on the blockchain.

The current internet ecosystem lacks the required mathematical properties for a true, private and secure network. While other blockchain-based data storage networks focused on payment based solutions, the Skycoin project focused on economics and user experience, negating the need to pay for every action, button click, or file download. Each action is effectively costless and the storage mechanism is blockchain independent, so monetization only occurs indirectly. The next generation of HTML, websites, services, social media and video streaming will be built on these principles. The final iterations of CXO will have no servers or centralized entities as content will be decentralized and completely peer-to-peer.

CXO & The Skycoin Ecosystem

CXO is another example of how the Skycoin ecosystem will quietly revolutionize how we communicate, share, work and interact as a community.

CXO is an integral part of the ultimate vision of Skycoin and its three main pillars. A layer of communication will be built through Skywire, computation is performed through CX, and storage/data will be guided with CXO.

The adoption of the Skycoin ecosystem will lead to new versions of social networks, search engines, and cloud storage systems. Even more exciting are the new innovative applications and web services that will be created under a decentralized, fast, and inherently secure system. Skycoin plans to roll out its ecosystem and developers, users, and creative thinkers will find ways of using the new technology to its greatest potential.

CXO is another example of how the Skycoin ecosystem will quietly revolutionize how we communicate, share, work and interact as a community.