Telegram (AI) YouTube Facebook X
Ру

What is DFINITY?

What is DFINITY?
Intermediate
What is DFINITY?
Intermediate

What is DFINITY?

Note: This article is outdated and awaiting an update.

DFINITY is a project aimed at building a decentralised, cloud-like blockchain infrastructure for a new kind of internet.

The developers seek to realise Ethereum’s original ambition of creating a “world computer”. Its founders call the project “Ethereum’s crazy sister”, an “Internet Computer” and “Cloud 3.0”, and expect DFINITY to compete with Google Cloud and Microsoft Azure.

The project’s blockchain infrastructure is intended to simplify the development of new software systems, lower the costs of storing and securing information, and safeguard user privacy.

The “Internet Computer” is expected to support a wide variety of applications for both enterprises and individuals. The new public computing environment would also host social networks, messengers, search services and the like.

Who created DFINITY, and when?

The founder and chief scientist of the DFINITY Foundation and the Internet Computer project is Dominic Williams. A graduate of King’s College London, he is a serial entrepreneur engaged in theoretical research and practical development in distributed computing.

In 2012 Williams settled in Palo Alto, California. One of his largest ventures was an MMO [Massively Multiplayer Online] game with millions of users. Williams developed an innovative horizontally scalable server technology for it.

While developing video games he became interested in Ethereum supporters’ idea of a “world computer”. In 2013 Williams devoted himself fully to studying blockchain.

By 2015 his focus had shifted to a model emphasising random-number generation and threshold cryptography in a decentralised network. He named the concept DFINITY (from Decentralized Infinity) and created a simple project website. He later designed the Internet Computer’s base architecture and a framework for the software running on it.

The same year brought DFINITY’s public announcement. In October 2016 a non-profit, the DFINITY Foundation, was registered in Zug, Switzerland, to develop the project.

At present the DFINITY team numbers 180 people. It includes former developers from Alphabet and Uber, as well as PhDs from Yale University. The DFINITY Foundation’s research centres are located in Palo Alto, San Francisco and Zurich. Separate developer groups work in Japan, Germany, the United Kingdom and several American states.

In February 2017 the project held its first token crowdsale, raising 3.9m Swiss francs.

A year later DFINITY raised $61m from venture funds Andreessen Horowitz and Polychain Capital.
 
In August 2018 the DFINITY Foundation conducted a private token sale for accredited investors, raising $102m. The round was led by Andreessen Horowitz’s crypto arm (a16z). Participants also included Polychain Capital, SV Angel, Aspect Ventures and Multicoin Capital. The token price was $4.18, and coins worth $35m were distributed to community members via an airdrop.

The release of a minimally viable product (MVP) was initially planned for the first quarter of 2019. However, in December 2018 project representatives said that working on a “pared-down” version could slow progress on the full product, and postponed the launch.

  • In November 2019 the first development phase, Copper, began. At this stage an alpha version of the software development kit (SDK) was released and the technical documentation for the Motoko smart-contract language was published.
  • On January 23rd 2020 the second phase, Bronze, started. The project demonstrated an open, decentralised version of the LinkedIn professional network called LinkedUp, running on DFINITY’s decentralised Internet Computer.
  • In June 2020 the project opened the Internet Computer to third-party developers as part of the Tungsten phase. DFINITY also presented an “open alternative to TikTok” called CanCan.
  • On September 30th 2020 the fourth development phase, Sodium, began. DFINITY launched a protocol governance system, intended to be the final element before the public release of the decentralised Internet Computer. The Network Nervous System (NNS) is an “algorithmic governance system that includes independent data centres”. It is powered by the project’s ICP token. Alongside the launch of the governance system, the developers announced the creation of the Beacon Fund, a $14.5m vehicle for investing in companies and individual entrepreneurs building on DFINITY. Management of the Beacon Fund, backed by Andreessen Horowitz, was taken on by the hedge fund Polychain Capital.
  • On December 18th 2020 the project conducted the “decisive initial stage of decentralisation” of the Internet Computer by launching an alpha version of the main network. The blockchain was deployed on standardised “node machines” placed under the control of the NNS. The phase was named Mercury.
  • The Mercury genesis block was launched on 7 May. After that the NNS began issuing ICP utility tokens. Using them, users can generate “neurons” and take part in network governance by voting on new proposals. This followed the launch on 30 March of the Mercury mainnet beta.

Who governs DFINITY?

The project is governed by its user community, which votes on updates, economic policy and DFINITY’s development.

Fundraising for the project’s development and the conduct of airdrops is handled by the DFINITY Foundation.

What are DFINITY’s technological features?

Canisters [Canisters]

A canister is a computational unit that keeps an application isolated from its environment. It stores information about the program’s current state, as well as prior events, user interactions and state changes.

Open Internet Service

Open Internet Service is a technology used in the Internet Computer. Code is embedded into the very “fabric” of the internet, allowing a service to operate autonomously with support from its users.

When a developer wants to create an Open Internet Service, they hand control over their canisters to tokenised, publicly governed canisters responsible for updates and configuration. The NNS then steers the process, opening the way to vote and make decisions regarding its code, policy and functions.

An Open Internet Service can mark public functions (for example, APIs) as “permanent”. In that case, canisters cannot overwrite such public functions. An update may degrade the functionality a canister provides, annulling the API. In this case the Internet Computer governance system makes changes to the Open Internet Service’s governance system. They remain in force until the expected functionality is restored.

Permanent APIs allow developers to build services that rely on data or functionality provided by other services, while remaining free of platform risk—dependence on big tech firms’ APIs.

For example, when LinkedIn revoked access to its API for thousands of companies, they instantly lost all their data and their source of authentication. An Open Internet Service operates without an owner and maintains constant user access to the “code”. Users can employ it without fearing loss of, or exclusion from, access.

Motoko

Motoko is a new programming language developed by the DFINITY Foundation alongside the SDK. It is designed to help a broad set of developers build and maintain websites, enterprise systems and internet services on the Internet Computer.

The DFINITY Foundation aims to optimise Motoko for the new environment. The Internet Computer can support any number of different frameworks.

The organisation is also working on an SDK that supports the Rust and C programming languages. There are expected to be many such development toolkits.

Cycles [Cycles]

Cycles [CYCLEs] are computational resources that enable operations on the Internet Computer. All canisters consume resources in the form of cycles to route messages and store data.

Canisters maintain an account balance to pay for communication, computation and data storage by their applications. Processing costs are denominated in cycles.

Cycles reflect the net cost of operations and resources such as physical hardware, rack space, energy, storage devices and bandwidth. In other words, one cycle represents the cost of executing a single WebAssembly instruction.

Thanks to limits on the number of cycles a canister may consume, the platform prevents malicious code from exhausting resources. The relative stability of operating costs also makes it easy, for example, to forecast the number of cycles needed to process a million messages.

Cycles are analogous to “gas” in Ethereum and “credits” in AWS, but have additional use-cases for data, computation and operations. Their model also envisages technological pitfalls—for example, rising usage costs.

Neuron [Neuron]

Neurons are part of a system called the Blockchain Nervous System (BNS), also known as the Network Nervous System (NNS).

The BNS is akin to a decentralised autonomous organisation (DAO): any network participant can propose changes to economic policy or upgrades, paying a fee. Votes on proposals are processed by neurons, which are controlled by operators.

Voting power depends on the number of tokens staked and the period for which the neuron operates. Neuron operators receive token rewards for processing votes. This process is called “thought mining” — thought mining.

If a neuron owner believes they lack sufficient expertise to vote on complex matters, they may reconfigure the neuron. The updated neuron begins to “follow” a neuron with a more experienced owner.

The “follow” mechanism is flexible: depending on the type of vote (economics, policy, client upgrades and so on) a neuron may “follow” one neuron or several. Users can also “dissolve” their neurons, releasing the tokens inside, and convert them into cycles to perform computational operations.

ICP

The ICP utility token (formerly known as DFN) is used as collateral (for example, in staking), enabling participation in project governance. It may also serve as collateral allowing DFINITY client software or private cloud networks to connect to the public network.

ICP tokens serve as rewards for neuron operators participating in votes on network operations. The size of the reward is proportional to the number of tokens staked in the neuron.

In future the tokens will power decentralised applications, much like gas in Ethereum. ICP will be burned to create new cycles.

Chain Key Technology

Chain Key Technology is a 48-byte public key that renders old blocks unnecessary, speeding up the Internet Computer. The technology allows transactions that update smart-contract state to finalise within 1–2 seconds.

The Internet Computer splits smart-contract execution into two categories—query calls and update calls. Finalisation of update calls takes 1–2 seconds.

Query calls work differently: any changes they make to state (in this case, to canister memory pages) are discarded after execution. This allows query calls to execute in milliseconds.

Subnet

Subnet is a blockchain within the Internet Computer network that can integrate with other blockchains, increasing its performance. The Network Nervous System aggregates nodes of independent data centres to create subnets used to host canisters.

Subnets are transparent to a canister’s code and its users—developers and users simply interact with the Internet Computer. The ICP protocol securely and transparently duplicates data and computation within subnet nodes at a deep level.

Unlike traditional blockchains, data and computational decentralisation is controlled by the protocol. The formation of pools (as in PoW and PoS blockchains), and validator nodes with large staked balances creating additional blocks (as in PoS blockchains), is impossible.

Direct interaction with subnets, and between subnets themselves, is enabled by Chain Key Technology.

Network Nervous System

The Network Nervous System (NNS) is autonomous software that governs the Internet Computer and regulates all processes in the ecosystem—from economics to network topology.

The NNS is hosted within the network and is part of the protocol system that pools node compute to create the blockchain.

The NNS acts as an autonomous master blockchain with a public key for validating ICP transactions.

The NNS puts proposals to a vote on expanding the network by adding subnets or integrating new nodes. Holders of ICP utility tokens then make the corresponding decisions.

Threshold Relay

Threshold Relay is an innovative validation mechanism that enables scalable computation and data storage.

Threshold Relay consists of four layers:

  • the notarial layer, which provides clients and external observers with guarantees of rapid finality, and excludes the possibility of attacks by malicious miners and Sybil attacks;
  • the blockchain layer, which forms a chain of confirmed transactions via the Probabilistic Slot Protocol, governed by a Variable Random Function;
  • Variable Random Function (VRF) is a pseudorandom function that controls the selection of temporary block producers. A key component of the function is the BLS signature [Boneh-Lynn-Shacham]. Using it, DFINITY guarantees that no network participant will set the output of the next random draw. An individual miner’s chances of becoming a committee member and computing blocks are proportional to the number of tokens staked. A given DFINITY blockchain is assigned a certain “weight”. It depends on the rank of miners proposing blocks in the blockchain. Based on this weight, a choice is made between competing blockchains.
  • the identification layer, which provides registration for all clients.

ActorScript

ActorScript is DFINITY’s native programming language, intended to simplify state management for programmers via an orthogonally persistent environment in which active programs do not need to restore or explicitly save their state.

All ActorScript contracts are compiled into WebAssembly instructions so the DFINITY virtual machine can execute application logic running on the network. The advantage of using the WebAssembly standard is that all major browsers support it, and various programming languages can be compiled to Wasm (not just ActorScript).

How is DFINITY progressing?

  • In January 2021 Dominic Williams announced the existence of a 20-year roadmap for the project. The document has not yet been published.
  • In February 2021 the Internet Computer Association was registered in Geneva—another organisation intended to develop the project alongside the DFINITY Foundation. It will support a forum for community stakeholders (independent data centres and financial partners) and facilitate their coordination.
  • The DFINITY Foundation plans to increase the number of developers from 150 to 300 by the end of 2021.
  • On March 17th 2021 the project opened preregistration for participants in the Mercury launch—the last of five milestones on the way to launching the Internet Computer.
  • After the successful launch of the Mercury network’s genesis block, the project’s native token, Internet Computer (ICP), appeared on leading bitcoin exchanges and entered the top five cryptoassets by market capitalisation.

Follow ForkLog on social media

Telegram Instagram
Found a mistake in the text? Highlight it and press CTRL+ENTER.

Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!

We use cookies to improve the quality of our service.

By using this website, you agree to the Privacy policy.

OK