public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Bram Cohen <bram@bittorrent•com>
To: praxeology_guy <praxeology_guy@protonmail•com>,
	 Bitcoin Protocol Discussion
	<bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Guessing the spentness status of the pruned relatives
Date: Sun, 2 Apr 2017 20:13:52 -0700	[thread overview]
Message-ID: <CA+KqGkq4BNUpwsxYnc4d-RSpq7-og4Xf2zwtUC-AVBjF4_u7fg@mail.gmail.com> (raw)
In-Reply-To: <slZ23d145uIKHr0zGoApsczTN3MNPSMtYbNmZV3Nk7F9YrgY8XaXTZ4BPvgIGGIdHBEf5V7c_ugY4RQVWeYYQW57ZQtfkUlHwOQZC7ANGjk=@protonmail.com>

[-- Attachment #1: Type: text/plain, Size: 1161 bytes --]

On Sun, Apr 2, 2017 at 1:43 PM, praxeology_guy via bitcoin-dev <
bitcoin-dev@lists•linuxfoundation.org> wrote:

> TL;DR: using spentness bits scales linearly... vs swapping digest leafs
> with empties can scale with logorithmically increasing storage
> requirements.  So if you are using a 32 byte hash and spentness bits, you
> are pretty much limited to only being able to prune 8 to 12 layers.  This
> corresponds to an MMR proof length of 512 to 768 bytes.
>

Yes the point of the txo bitfield is that the constant factors are so good
that it's entirely under control. Making the memory commitments smaller
requires that the proofs be kept up to date and increases CPU requirements
and proof size. It would be entirely reasonable to make an MMRs of the
bitfield or the insertion index data structure but they aren't needed
immediately if ever. For the insertion ordering structure it's reasonable
to require full nodes to cache the top bunch of layers to make the proofs
smaller, but a very expedient approximation of that is to make them simply
remember a root per block for all the insertions contained therein, and
have full nodes remember all of those.

[-- Attachment #2: Type: text/html, Size: 1506 bytes --]

      reply	other threads:[~2017-04-03  3:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-01 20:04 praxeology_guy
2017-04-01 23:38 ` bfd
2017-04-02  1:10   ` praxeology_guy
2017-04-02  1:27     ` Bram Cohen
2017-04-02  1:58       ` praxeology_guy
2017-04-02  2:18         ` Bram Cohen
2017-04-02  3:37           ` praxeology_guy
2017-04-02 20:43             ` praxeology_guy
2017-04-03  3:13               ` Bram Cohen [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+KqGkq4BNUpwsxYnc4d-RSpq7-og4Xf2zwtUC-AVBjF4_u7fg@mail.gmail.com \
    --to=bram@bittorrent$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=praxeology_guy@protonmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox