<oembed><type>rich</type><version>1.0</version><author_name>npub15q0aacpvzz8a8l7qp2uy07klrn43jcxtunef33yvxtj9yw2mjc7s2n5l43</author_name><author_url>https://nostr.ae/npub15q0aacpvzz8a8l7qp2uy07klrn43jcxtunef33yvxtj9yw2mjc7s2n5l43</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2021-09-09&#xA;📝 Original message:Hello all,&#xA;&#xA;I recently went down the bitcoin protocol rabbit hole. I wanted to use&#xA;GNU guile scheme to experiment with bitcoin. I initially started by&#xA;creating a toy bitcoin miner but I&#39;ve run into some inconsistencies with&#xA;the documentation found on&#xA;https://en.bitcoin.it/wiki/Getblocktemplate. Namely with creating the&#xA;templates merkle root.&#xA;&#xA;&gt;From my understanding a coinbase transaction should have the&#xA;transactions data concatenated before creating the merkle root. But&#xA;getblocktemplate does not have a json cointbasetxn field. So I&#39;m not&#xA;sure how to create a coinbase transaction without that.&#xA;&#xA;I have a test template response data found here.&#xA;https://raw.githubusercontent.com/mrosset/prospect/master/test-suite/data.json&#xA;and using a modified version of the merkle python reference script found&#xA;on the wiki page. see&#xA;https://github.com/mrosset/prospect/blob/master/scripts/merkle.py . I&#39;m&#xA;able to create a merkle root with the hash&#xA;c5fff939f628a04428c080ed5bd7cd9bc0b4722b2522743049adb18213adf28a but&#xA;that&#39;s minus the coinbase transaction.&#xA;&#xA;So far I&#39;m able to replicate this hash using the test data in guile. But&#xA;I&#39;d like to sanitize this so that I&#39;m using a coinbase transaction and&#xA;making sure the python and guile merkle roots match.&#xA;&#xA;In short how do I get the coinbase transaction without the coinbasetxn&#xA;field existing?&#xA;&#xA;Mike</html></oembed>