12

Fundamentally a cycle is a set of block heights for which the baking en endorsement rights are determined by a single random seed. The reason to have many blocks in a cycle is that it lowers the incentive to try and manipulate the random seed (since most seeds will produce similar distributions on average). The reason not to have too many blocks in a cycle ...


11

Implicit accounts are accounts created from a public/private key pair. They start with tz{1,2,3}. They are always spendable, but not delegatable. They can be used for baking. They are created on the blockchain by transferring xtz to them. They cannot contain code. Their Michelson type is « unit contract ». Originated contracts are created by the Originate ...


9

The information is available from the official documentation in the « Baker » section https://tezos.gitlab.io/mainnet/protocols/003_PsddFKi3.html The basic formula specifies that fees are now dependent on 3 parameters: a fixed minimum fee, a fee by storage unit and a fee by gas unit (reflection the cost of performing calculations). Those 3 parameters are ...


8

PVSS stands for publicly verifiable secret sharing. Any PVSS scheme has two phases, 1st Phase for secret-share distribution to participants, where a secret is broken into shares and each participants receives a share. We don't want participants to know about shares of other participants (defeats the purpose of protocol). So shares needs to be distributed ...


7

We will need these operations: blake2b: size 32 concat: concatenation of byte arrays Also, let zero_bytes be 32 zero bytes. My answer is based on seed_storage.ml and seed_repr.ml, with some experimentation. Initial seeds Let's start at the beginning. The initial preserved_cycles+2 = 7 seeds were determined ahead of time, as follows. The first seed is ...


7

Fundamentally, nonces are used by the blockchain to create randomness, such as choosing the snapshot for a cycle. Nonces are created by bakers and all the nonces for the cycle are combined to create a random seed. When baking blocks, you may be required to reveal a nonce in the next cycle. This nonce requirement is determinstic and happens every 32 blocks. ...


7

In Tezos Alpha the Transaction List size is limited: Tezos does not download blocks all at once, but rather considers headers and various lists of operations separately. In Tezos.alpha, a maximum size in bytes is applied to the list of transactions MAX_TRANSACTION_LIST_SIZE = 500kB (that’s 5MB every 10 minutes at most). Other lists of operations (...


6

The terminology should be clarified a bit: Nakamoto consensus (bitcoin), the Tezos consensus algorithm are also "BFT" algorithms, they achieve consensus in the presence of Byzantine faults. So-called LPOS is not a "consensus" algorithm, it's a way of selecting who gets to participate in consensus. I think what you're trying to capture with the category you ...


6

What happen at the network level is the combination of 2 phenomenons: First and foremost, we can expect that bakers (who voted for this amended protocol!) will run up to date software and therefore produce blocks in protocol PsBabyM1 so very few blocks in protocol PsBABY5Hwill ever be produced. Second, even if there is people with baking rights who produce ...


5

Implicit accounts They are the only account that can take part in baking process. They start with tz1..... and in order to bake, they must be registered as delegate. They can bake on behalf of themselves or on behalf of originated account who delegated to them. Originated accounts They are the only account which can delegate tz to other implicit accounts. ...


5

Tezos is going in the direction of BFT for two reasons: You have immediate confirmation of transactions, once they are included in a block It easier to have correctness proofs Today, Proto_003 is still using the initial consensus algorithm, which has not yet been proven correct (and the work on BFT makes such effort useless in the short term as it will be ...


4

A baker must include endorsement operations when baking blocks. If the baker doesn't include any endorsements, than the result is a block with 0 endorsements. The reasons a baker doesn't include any endorsements could be: Most likely, the baker's node doesn't receive the endorsement operations, likely due to poor connection/not many connected peers The ...


3

Once a baker activates the BABYM1 protocol, BABY5 blocks are considered invalid. Once a baker activates the BABY5 protocol, BABYM1 blocks are considered invalid. There is no competition in this case and thus no decision has to be made regarding which protocol is the right one.


3

The follow-the-coin strategy is described in the Tezos white paper (in section 3.2.4) and is an adaptation of the follow-the-satoshi algorithm developed by Bentov & al. In essence the reason is a security question with regard to how difficult it is for an attacker to assign herself more baking rights than average. Here is an excerpt from the motivation ...


3

From the docs: "We admit, for the time being, that the protocol generates a random seed for each cycle. From this random seed, we can seed a CSPRNG which is used to draw baking rights for a cycle." https://tezos.gitlab.io/tezos/whitedoc/proof_of_stake.html CSPRNG (A cryptographically secure pseudo-random number generator) explained: https://en....


2

The fees have been updated for proto004 (athens) please have a look here going forward https://github.com/keefertaylor/TezosKit/blob/master/docs/AthensProtocolFees.md


2

This is an empirical parameter but at high level it needs to be long enough to get enough to get statistical sample (for the randomization for the baking rights snapshot) and short enough to not know the expected rewards too much in advance. And again like every other parameter in Tezos it is subject to amendment if the community believes there is a strong ...


2

Basically reorgs do not seem to happen on mainnet, as far as I know. However, theoretically they can happen. Using the analysis from this blog post, for an attacker having 20% of the total active stake, we get that currently (with Emmy+) 2-block reorgs may a priori happen around 8 times per month. With the new protocol Granada, which upgrades the consensus ...


1

If it is reorged out it will need to be broadcast again, but you cannot just re-broadcast the same operation. You'll have to give it an updated valid branch field in the operation, since the original branch no longer exists. Also, by default it seems items time out of the mempool after 60 blocks. I believe that 60 blocks start from the branch you specify, ...


1

I suggest you to read this article: All you ever wanted to ask about Tezos — Illustrated: On cycle n-7 once every 32 blocks will contain a nonce hash. Indeed the corresponding bakers will have to generate a number, hash it and include that hash in the block header. By the end of the cycle we will then have 128 blocks (4096/32) containing a nonce hash. As a ...


Only top voted, non community-wiki answers of a minimum length are eligible