On Thu, Jun 11, 2015 at 12:55 PM, Aaron Voisine wrote: > > A Header-PoW-verifying client could still be given all transactions in > a recent block, from which it can see the in-band fees directly. > > You don't know the fees paid by any given transaction unless you also have > all it's inputs. Transaction inputs do not include an amount. You could > however get the average fee-per-kb paid by all transactions in a block by > looking at the coinbase transaction, subtracting the block reward, and > dividing by the size of block minus the header. > > Excellent point and alternative proposal. You're right: to get the specifi fees, you'd need all transactions in a block, and all TxOuts with membership proofs. Your alternative seems like a much leaner trade-off for similar data. > > Aaron Voisine > co-founder and CEO > breadwallet.com > > On Thu, Jun 11, 2015 at 11:30 AM, Nathan Wilcox > wrote: > >> On Wed, Jun 10, 2015 at 2:03 PM, Peter Todd wrote: >> >>> On Wed, Jun 10, 2015 at 02:00:27PM -0600, Nathan Wilcox wrote: >>> > On Wed, Jun 10, 2015 at 1:19 PM, Aaron Voisine >>> wrote: >>> > >>> > > It could be done by agreeing on a data format and encoding it in an >>> > > op_return output in the coinbase transaction. If it catches on it >>> could >>> > > later be enforced with a soft fork. >>> > > >>> > > >>> > Sounds plausible, except SPV protocols would need to include this >>> coinbase >>> > txn if it's going to help SPV clients. (Until a softfork is activated, >>> SPV >>> > clients should not rely on this encoding, since until that time the >>> results >>> > can be fabricated by individual miners.) >>> >>> Fee stats can always be fabricated by individual miners because fees can >>> be paid out-of-band. >>> >>> >> This is a point I hadn't considered carefully before. I don't understand >> the marketplace here or why miners would want to move fees outside of >> explicit inband fees. Implicit in this proposal is that the statistics only >> cover in-band data, because that's the scope of consensus rules, and thus >> the proposal is only as useful as the information of in-band fees is useful. >> >> I've also noticed a detracting technical argument given a particular >> tradeoff: >> >> A Header-PoW-verifying client could still be given all transactions in a >> recent block, from which it can see the in-band fees directly. The >> trade-off is the size of those transactions versus the need to alter any >> consensus rules or do soft forks. >> >> Notice how this trade-off's costs change with maximum block size. >> >> >> >> >>> -- >>> 'peter'[:-1]@petertodd.org >>> 00000000000000001245bd2f5c99379ee76836227ded9c08324894faabc0d27f >>> >> >> >> >> -- >> Nathan Wilcox >> Least Authoritarian >> >> email: nathan@leastauthority.com >> twitter: @least_nathan >> PGP: 11169993 / AAAC 5675 E3F7 514C 67ED E9C9 3BFE 5263 1116 9993 >> > > -- Nathan Wilcox Least Authoritarian email: nathan@leastauthority.com twitter: @least_nathan PGP: 11169993 / AAAC 5675 E3F7 514C 67ED E9C9 3BFE 5263 1116 9993