Lemma 3.0.3. The NXT algorithm described above satisfies the conditions

for being a cryptoeconomically secure entropy source.

Proof. To prove unpredictability, we note that the NXT blockchain produces

a block every minute, and so the update v ← sha256(v, V (β)) takes

place once a minute. During each round of updating, there is a probability

1 − po(60) that the primary signer will be online, and po(60) that the

signer will be offline and thus a secondary signer will need to produce the

block. Hence, after 1

−log(po(60)) blocks, there is a probability p ≈

1

2

that the

resulting value will be the “default value” obtained from updating v with

the primary signers’ public keys at each block, and a p ≈

1

2

probability that

the resulting value will be different. We model 512 iterations of this process

as a tree, with all leaves being probability distributions over sequences

of 512 public keys of signers, where all probability distributions are disjoint

(ie. no sequence appears with probability greater than zero in multiple

leaves). By random-oracle assumption of sha256, we thus know that we have

a set of 2512 independently randomly sampled probability distributions from

{0, 1}

256, and so each value will be selected an expected {0, 1}

256 times, with

standard deviation 2128. Hence, the probability distribution is statistically

indistinguishable from a random distribution.

To show that the first uninfluenceability criterion holds true, note that

the only way to manipulate the result is for the block proposer to disappear,

leading to another proposer taking over. However, this action is costly for

the proposer as the proposer loses a block reward. The optimal strategy

is to disappear with probability 0 < q <= 1 only when the predicate will

be unsatisfied with the proposer participating but will be satisfied with

the next proposer partipating; if a predicate has probability p this entails

disappearing p ∗ (1 − p) ∗ q of the time, meaning that the predicate will be

satisfied p + p ∗ (1 − p) ∗ q of the time instead of p of the time, a probability

increment of p∗(1−p)∗q will have a cost of p∗(1−p)∗q∗R if R is the signing

reward (whose real value is proportional to the quantity of transaction fees, a

reasonable metric of economic activity). Hence, the desired condition holds

true with b = 1.

To show that the second uninfluenceability criterion holds true, note that

when one is not the signer, one has no influence on the entropy, and when

one is the signer one has the ability to not sign and instead defer to the

next signer. Hence, an attacker controlling 1

k

of all signing slots will be able

to defer to the second signer 1

k

of the time, to the third signer 1

k

2 of the

time (by being in the first two slots simultaneously), etc, so in total such an

attacker will on average be able to choose between 1 + 1

k−1

values and thus

multiply the probability of a desired predicate by a factor of 1 + 1

k−1

. If the

attacker controls 1

3

of all signing slots, the result will thus be increasing the

probablity by a factor of 3

2

.

***********

it seems vitalik made a proof about NXT algo