User:Lailune/Limited Confidence Proof-of-Activity (LCPoA)

Limited Confidence Proof-of-Activity (LCPoA) - a method for blockchain protection, based on the modification of the Proof-of-Work algorithm, in the direction of reducing the consumption of computational resources for the block generating.

When using this method, the algorithm for block generating does not depend on the computing power. As a proof of work (or activity) the algorithm checks the time spent on the solution.

Proof-of-Activity
In the context of the described algorithm, Proof of Activity is a principle based on solving a problem similar to the problem of the Proof of Work principle, but with a significantly reduced complexity, due to which the solution of the problem takes from fractions of a second to several minutes.

The algorithm requires a small amount of computing resources in comparison with Proof-of-Work. Verification of the correctness of the created blocks is carried out by limiting the minimum possible time for the block creation. This allows you to limit the maximum speed of adding blocks to the chain, preventing the emergence of flood (spam) in the network.

But, because of the algorithm's work, the attacker can try to recreate some or all of the blocks from the genesis block, and make an attack 51%, while spending a small amount of computing resources. To prevent such a situation, the algorithm is supplemented with the algorithm "Limits of Confidence"

Limits of Confidence
Algorithm "Limits of Confidence" - is a system of automatic creation of blockchain check points. The algorithm is based on a system that prohibits the overwriting of a chain of blocks that is older than a certain specified threshold. For example, if you set the threshold to 5 minutes, it will be possible to overwrite blocks that are not older than 4 minutes and 59 seconds.

This allows to prevent any possible 51% attack on the main part of the blockchain, while using the pre-known constant time to confirm the addition of the block to the network.

Despite this, there remains the possibility of attacking the re-writable part of the blockchain. It's also possible to disable some network clients, by creating an incorrect chain of longer lengths, and over the threshold value.

Similar implementations of blockchain checkpoints are implemented in some crypto-currencies, for example, Peercoin

== Advantages and disadvantages ==

Advantages

 * Equalize the chances of computers of any power to create a block
 * Transfer the responsibility for the generation of blocks to the client of the network. There is no need for miners, this opens to other ways of supporting the network.


 * Reliably protect the network from spam and attacks (for example a 51% attack). Algorithm already contains everything that is needed to protect against attacks.
 * Spam protection depends on GMT world time
 * There is no need to create financial instruments (tokens) on the network, to block confirmation like Proof-of-Stake

Disadvantages

 * It remains possible to make attack 51% on blocks that are lower than the threshold value
 * There is the possibility of attacking clients, and bringing their blockchain to a deadlock