Files
pezkuwi-subxt/substrate/client/consensus/aura
Bastian Köcher 1680422f1f AuRa improvements (#8255)
* AuRa improvements

Hot and fresh AuRa improvements. This pr does the following:

- Move code belonging to the import queue etc to import_queue.rs
- Introduce `ImportQueueParams` and `StartAuraParams` structs to make
it more easier to understand what parameters we pass to AuRa.
- Introduce `CheckForEquivocation` to tell AuRa if it should check for
equivocation on block import. This is required for parachains, because
they are allowed to equivocate when they build two blocks for the same
slot, but for different relay chain parents.

* Update client/consensus/aura/src/import_queue.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* Fix compilation

* AAA

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
2021-03-05 17:03:30 +01:00
..
2021-03-05 17:03:30 +01:00
2021-02-10 19:23:18 +01:00
2020-08-20 17:04:42 +02:00

Aura (Authority-round) consensus in substrate.

Aura works by having a list of authorities A who are expected to roughly agree on the current time. Time is divided up into discrete slots of t seconds each. For each slot s, the author of that slot is A[s % |A|].

The author is allowed to issue one block but not more during that slot, and it will be built upon the longest valid chain that has been seen.

Blocks from future steps will be either deferred or rejected depending on how far in the future they are.

NOTE: Aura itself is designed to be generic over the crypto used.

License: GPL-3.0-or-later WITH Classpath-exception-2.0