See the diagram
Each shard in Noosphere is a blockchain capable of operating completely independently as they do not not require constant connection with other shards
See the diagram
The node that participates in the consensus algorithm, gathering transactions, forming and validating blocks is called the Twig Node. The node that participates in the CBFT consensus algorithm speeding up its operation is called the Stem Node. The function of the Stem Node is solely auxiliary: the system can function without it, but a different consensus algorithm will be used in that case. Anyone can host a Twig Node for a shard by filing an application and passing the selection process (see the Technical White Paper for more information). The Stem Node is maintained by the creator of the shard if necessary, for its operation, to use the quick and efficient CBFT consensus algorithm. If the data processing speed requirements are not as important, a shard can function independently, using PoET without a Stem Node.
See the diagram
The first approach is simply using the structure of blockchain shards that store key-value records that define the functionality of the service under defined rules. Typical examples of this implementation are DNS services, routing, validating centers. The second approach is more comprehensive, and it offers more resource-intensive services. Their operation requires computations that will define the contents of the blockchain (smart contracts), otherwise the blockchain will only carry out administrative functions when the output data is not intended to be stored on blockchain (rendering, scientific research, dApps). In both cases each shard must provide its API description upon its introduction to the system.
Noosphere does not use the concept forks. For a regular blockchain, a fork is the change of the built-in operation algorithms that are critical to the entire system. Thanks to its modular structure, Noosphere allows you to expand functionality by creating new service shards. The end user is free to choose the services they trust, so simultaneous existence of two or more service shards that have the same functionality but different implementation (for example, transaction mixers) is the standard order of operation of Noosphere.
Convolutional Byzantine Fault Tolerance is the main consensus algorithm in Noosphere. Unlike the popular PoS,
CBFT does not distinguish system nodes by size contribution. They are all equal
and are chosen based on the following criteria
– COMPUTING POWER
– INTERNET CONNECTION QUALITY
– HAVING ENOUGH COINS FOR THE DEPOSIT
As the CBFT consensus algorithm was being developed, statistical information was collected reflecting change
of the input data flow rate in the distributed network depending on the time it took to distribute a candidate block,
its size, and processing time. The approximation of the obtained statistics is carried out with the help of the
piecewise-polynomial interpolating cubic spline with the setting of boundary conditions, i.e. for each section
with the number j the approximation function has the form of a polynomial.
The boundary conditions consist in the periodicity condition, i.e. coincidence of the values of the first and second
derivatives on the borders of the interval . The plotting of the spline can be reduced to determining the multiple
ratios by solving systems of linear equations. The interpolating spline is plotted
so as to satisfy the interpolation condition for the table function
To obtain the specific dependence of the input flow rate on time , given the average rate , it is necessary to
multiply the obtained spline by the average rate and divide it by the average value of the spline itself:
where is the actual average input flow rate.
The proposed input flow model suggests that the time between incoming jobs is a continuous random value that may be
distributed according to different distributions, such as the exponential distribution, Poisson distribution, normal distribution, and uniform distribution.
For critical services that have a high probability to be under attack, the user may implement a hybrid consensus protocol, SGX-CBFT. It works the same way as the aforementioned Convolutional BFT, but network participants get an additional opportunity of remote reliability verification of all neighboring nodes thanks to the Intel SGX technology.
Blockchain, like any internet-based information system, are susceptible to cyber attacks. Besides the best-known type of attack,DDoS, new methods appear targeting blockchain platforms specifically. Analysis of all these threats, including research into the shortcomings of the architecture of existing blockchain systems that have been subjected to attacks, has made it possible to build effective methods for proactive defense into the Noosphere subsystems.