<oembed><type>rich</type><version>1.0</version><author_name>npub1sax5yz8xgp684kl9c5f4kzljunm7u569vgfvuv66xtnl2aqs664s0y4xsu</author_name><author_url>https://nostr.ae/npub1sax5yz8xgp684kl9c5f4kzljunm7u569vgfvuv66xtnl2aqs664s0y4xsu</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2016-12-04&#xA;📝 Original message:Interesting stuff! I have some comments, mostly about the header.&#xA;&#xA;The header of forcenet is mostly described in Luke’s BIP, but I have made&#xA;&gt; some amendments as I implemented it. The format is (size in parentheses;&#xA;&gt; little endian):&#xA;&gt;&#xA;&gt; Height (4), BIP9 signalling field (4), hardfork signalling field (3),&#xA;&gt; merge-mining hard fork signalling field (1), prev hash (32), timestamp (4),&#xA;&gt; nonce1 (4), nonce2 (4), nonce3 (compactSize + variable), Hash TMR (32),&#xA;&gt; Hash WMR (32), total tx size (8) , total tx weight (8), total sigops (8),&#xA;&gt; number of tx (4), merkle branches leading to header C (compactSize + 32 bit&#xA;&gt; hashes)&#xA;&gt;&#xA;&#xA;First, I&#39;d really rather not have variable length fields in the header.&#xA;It&#39;s so much nicer to just have a fixed size.&#xA;&#xA;Is having both TMR and WMR really needed?  As segwit would be required with&#xA;this header type, and the WMR covers a superset of the data that the TMR&#xA;does, couldn&#39;t you get rid of the TMR?  The only disadvantage I can see is&#xA;that light clients may want a merkle proof of a transaction without having&#xA;to download the witnesses for that transaction.  This seems pretty minor,&#xA;especially as once they&#39;re convinced of block inclusion they can discard&#xA;the witness data, and also the tradeoff is that light clients will have to&#xA;download and store and extra 32 bytes per block, likely offsetting any&#xA;savings from omitting witness data.&#xA;&#xA;The other question is that there&#39;s a bit that&#39;s redundant: height is also&#xA;committed to in the coinbase tx via bip 34 (speaking of which, if there&#39;s a&#xA;hard-fork, how about reverting bip 34 and committing to the height with&#xA;coinbase tx nlocktime instead?)&#xA;&#xA;Total size / weight / number of txs also feels pretty redundant.  Not a lot&#xA;of space but it&#39;s hard to come up with a use for them.  Number of tx could&#xA;be useful if you want to send all the leaves of a merkle tree, but you&#xA;could also do that by committing to the depth of the merkle tree in the&#xA;header, which is 1 byte.&#xA;&#xA;Also how about making timestamp 8 bytes?  2106 is coming up soon :)&#xA;&#xA;Maybe this is too nit-picky; maybe it&#39;s better to put lots of stuff in for&#xA;testing the forcenet and then take out all the stuff that wasn&#39;t used or&#xA;had issues as it progresses.&#xA;&#xA;Thanks and looking forward to trying out forcenet!&#xA;&#xA;-Tadge&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20161204/43fe8311/attachment.html&gt;</html></oembed>