Good morning Mike,

Sent with ProtonMail Secure Email.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Sunday, July 28, 2019 4:03 AM, Mike Brooks <[email protected]> wrote:

> Hey ZmnSCPxj,
>
> As to your first point.  I wasn't aware there was so much volatility at the 
> tip, also 100 blocks is quite the difference!  I agree no one could 
> references a transaction in a newly formed blocks, but I'm curious how this 
> number was chosen. Do you have any documentation or code that you can share 
> related to how re-orgs are handled? Do we have a kind of 'consensus 
> checkpoint' when a re-org is no longer possible? This is a very interesting 
> topic.
>

Miner coinbases need 100 blocks for maturity, which is the basis of my 
suggestion to use 100 blocks.
It might be too high, but I doubt there will be good reason to be less than 100.

There is a potential for a targeted attack where a large payout going to a 
`scriptPubKey` that uses `OP_PUBREF` on a recently-confirmed transaction finds 
that recently-confirmed transaction is replaced with one that pays to a 
different public key, via a history-rewrite attack.
Such an attack is doable by miners, and if we consider that we accept 100 
blocks for miner coinbase maturity as "acceptably low risk" against miner 
shenanigans, then we might consider that 100 blocks might be acceptable for 
this also.
Whether 100 is too high or not largely depends on your risk appetite.

>  A validator only needs an array of PUSHDATA elements and can then validate 
>any given SCRIPT at O(1).  

Data derived from > 220Gb of perpetually-growing blockchain is hardly, to my 
mind, "only needs an array".
Such an array would not fit in memory for many devices that today are practical 
for running fullnodes.
It is keeping that array and indexing it which is the problem, i.e. the devil 
in the details.

Reiterating also, current pruned nodes did not retain that data and would be 
forced to re-download the entire blockchain.
Unless you propose that we can refer only to `OP_PUSHDATA` after activation of 
`OP_PUSHREF`.

Regards,
ZmnSCPxj
_______________________________________________
bitcoin-dev mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to