User:Endercase/Shiftnrg-draft

Shift is an open source, blockchain application platform designed to facilitate the decentralization of the World Wide Web, and in doing so protect knowledge and the means of its transmission from the threat of malicious actors .

History
Begun in September of 2015, the Shift project was initially envisioned as an open source, community driven alternative to the Ethereum blockchain   . However, during 2016 its focus narrowed and the provision of a decentralized storage solution capable of hosting both file data and the internet itself became the development team’s primary goal . After developing a number of preparatory operating tools , Shift released their first ZeroNet-enabled peer-to-peer network allowing fully decentralized web hosting during the summer of that year   . However, following incidents in which vulnerabilities in Ethereum’s code allowed fake tokens to be illicitly created and sold , the decision was made to port the platform onto a more secure Lisk fork     . This move transitioned Shift to a delegated proof-of-stake (DPoS) system able to mitigate the danger of a hashrate attack, while also eliminating the inefficient and environmentally damaging mining practices of a proof-of-work algorithm   .

Seeking to create an infrastructure better suited to the delivery of hypermedia content, the move to Lisk was followed by the development team’s decision to adopt the Inter-Planetary File System (IPFS) as its new network protocol   . IPFS technology represents a major step forward for the internet as a whole, as its replacement of Hypertext Transfer Protocol (HTTP), a system that forces web users to download information from a single server , grants access to a faster, more efficient and open peer-to-peer enabled web   . The Shift team also concluded that the inclusion of a built-in decentralized application (dApp) for the hosting and serving of content would be invaluable in providing its blockchain application platform with a competitive advantage in an increasingly crowded marketplace. While switching to Lisk had already allowed for the direct targeting of JavaScript users, the most popular coding language internationally , the release of a unique ‘killer dApp’ for decentralized web and file hosting has the potential to stimulate wider participation in and awareness of the Shift dApp ecosystem as a whole .

Shift’s ambition to build a tool for serving censorship-resistant web content, as well as to provide a robust, decentralized infrastructure for its deployment, was made a reality in late 2017 with the launch onto the testnet of Shift’s flagship dApp, Phantom   . Since then, the Phantom technology suite has been hosting the world’s first decentralized website that is accessible without the use of browser plugins and served with performance comparable to that of heavy servers . Once Phantom is released onto the mainnet later in 2018, developers and web users alike will be able to reap the benefits of a decentralized web, while also having an entry-point into the revolutionary world of blockchain provided by Shift’s evolving dApp platform   .

Phantom
Shift’s first official decentralized application (dApp), Phantom, is a user interface for file management of data on the IPFS network hosted by the platform’s storage cluster . As the name suggests, services hosted on Phantom may vanish from one host but remain accessible from another in the network. End users will be able to submit their files for long term storage using a blockchain-based leasing system, while site operators will have the option of serving their entire website from the Shift storage cluster and thus protect it from the threat of unanticipated downtime or attacks   .

The Phantom User Interface comes with an intelligent file management interface that enables its users to view and modify content that is managed by the system on the Shift storage cluster .

Jenga
Designed to enable dynamic web hosting, Jenga is Phantom’s inbuilt domain name service (DNS) monitor and creates a bridge between the decentralized Web and the classical Internet . Its role is to ensure that domain names always point towards healthy servers by dynamically monitoring the network’s nodes. By maintaining persistent communication with all nodes, Jenga can create a consensus on a healthy DNS state and evict non-conforming nodes from the system. This prevents attackers from joining the cluster and injecting an improper DNS entry, eliminating the distributed denial-of-service (DDoS) attack vector .

Hydra
Hydra is Shift’s custom content management system, designed to overcome limitations of IPFS technology in rendering website resources . It works in conjunction with Phantom’s file manager and automates common tasks carried out when constructing or maintaining a website (such as the adding, modifying and removing content such as text and images), while ensuring their consistent layout . Hydra functions modularly, allowing for a plurality of schemas under the same rendering engine. Furthermore, the front-end and the back-end components are separated, enabling developers to use their preferred framework before rendering content into JavaScript Object Notation (JSON) files compatible with external systems such as the WordPress API.

The approach to the distribution of the Shift codebase is still driven by the project’s founding ethos of freedom and community. While development initially starts in private repositories, Shift remains open source in order to allow developers to customize the software for their own needs .

Storage Cluster
The default state of the IPFS infrastructure is a globally shared network . As this can lead to problems when it comes to verifying data integrity, availability, and the implementation of custom information such as token rewards, Shift runs a private cluster. The storage nodes use a custom key to ensure that only they can talk to other nodes using the same key. This prevents nodes being used to host and deliver content that was added outside of the Shift network, thereby improving reliability, performance and security .

Files are retrieved from the system using cryptographic hashes. These hashes are generated when the file is first inserted into the system and saved for later use. This is especially important for storing files using a blockchain as this hash can provide an identifier to link the file address to the transaction paying for the storage. When data is changed, a new hash is produced and the file system updated by creating a merkle hash (root) that delivers a path to the relevant subfolder or file .

During the operation of IPFS, unused files are cleaned up over time   . In order to store data permanently, a concept called pinning is used. Pinning content means that it remains available permanently (or until it is unpinned) . When requests for that data arrive at the storage nodes from the serving nodes, the storage nodes provide that data to the serving node that caches it to prevent the need to retrieve the same data repeatedly. Data stored within the system is identified by hash at a content level, rather than a locational level . This new approach provides many benefits . One major benefit is that the location of the data is no longer relevant, allowing many nodes to present the same information, whether it is a file or a webpage .

Consensus Algorithm
From the time that Shift was ported into a Lisk fork until 2018, its DPoS consensus algorithm has been identical to Lisk’s in allowing only the top 101 delegates (determined by voting weight) to actively forge and secure the network . However, in 2018 the Shift blockchain will debut a new, innovative consensus algorithm that the Shift Team has been designing since late 2017 .

This new consensus algorithm improves the following issues that have arisen with traditional DPoS networks:

[Insert explanation of why the new consensus algorithm is innovative, and how it is different from existing DPoS consensus algorithms]

Token Utility
Network participants will use the Shift token to register as an operator (who provides storage capacity) and pay for hosting and other services on the Shift network. Once registered with the blockchain, operators are able to join the Shift cluster and provide disk space for which they will be compensated by users seeking to have content hosted .

In order to prevent oversubscription, both the cluster and the blockchain committed storage allowances are monitored closely by the system . When there is a low availability of storage, there will be more incentive to join the Shift cluster and serve data, as users will pay a higher premium to have their content secured upon the decentralized internet. As the total value of services rendered by the Shift network increases, the value of the Shift token must correspondingly increase to meet this demand as the medium of exchange for facilitating those services, whose total sum value is represented in the total market capitalization of the platform .

Operators will offer their storage in set time frames, with renewals or additions being allowed at any time before the contract expires. This requires operators maintain high uptimes in order to ensure the integrity of the system .

The current rate of inflation is 1.1 Shift per forged block, with a block time of 27 seconds. However, the block reward is currently set to reduce by 0.2 Shift every year until it reaches the rate of 0.3 Shift per block. In addition, it is also possible for the block reward to be changed manually by the development team . This flexibility allows for the later introduction of dynamic fees.

Forks
References
 * Oxycoin