Caught in the Net (Posts about satoshi nakamoto scam)francescomecca.euenContents © 2024 <a href="mailto:francescomecca.eu">Francesco Mecca</a> Wed, 28 Feb 2024 09:29:27 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssWhy Wright's proof is a fakefrancescomecca.eu/blog/2016/5/3/satoshisignature/Francesco Mecca<p>I explained in my previous <a href="http://francescomecca.eu/pescewanda/2016/04/17/wright-nakamoto/">post</a> (in italian) that the signature that Wright provided as a public proof is in fact invalid. I want to explain briefly how you could check this claim. The key in Wright's <a href="http://www.drcraigwright.net/jean-paul-sartre-signing-significance/">post</a> is this:</p> <div class="code"><pre class="code literal-block"><span class="nb">-------------------------</span><span class="c"> Signature File </span><span class="nb">-------------------------</span> <span class="c">MEUCIQDBKn1Uly8m0UyzETObUSL4wYdBfd4ejvtoQfVcNCIK4AIgZmMsXNQWHvo6KDd2Tu6euEl1</span> <span class="c">3VTC3ihl6XUlhcU</span><span class="nb">+</span><span class="c">fM4=</span> <span class="nb">-------------------------</span><span class="c"> End Signature </span><span class="nb">--------------------------</span> </pre></div> <p>Now we can use some bash utilities:</p> <ul> <li>base64, that translates encoded ASCII text;</li> <li>hexdump, that displays hexadecimal contents from the input;</li> <li>cut, used to remove the binary part of the input;</li> <li>tr, used to delete spaces and carriage return from the input;</li> </ul> <div class="code"><pre class="code literal-block">base64 -d &lt;&lt;&lt;'MEUCIQDBKn1Uly8m0UyzETObUSL4wYdBfd4ejvtoQfVcNCIK4AIgZmMsXNQWHvo6KDd2Tu6euEl13VTC3ihl6XUlhcU+fM4=' | hexdump -C| cut -b 11-60| tr -d ' \n' 3045022100c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce </pre></div> <p>Let's analyze the command one by one:</p> <ul> <li><code>base64 -d</code> decodes the redirected string, the output is some gibberish characters so I won't display them here;</li> <li><code>hexdump -C</code> is used with a pipe to convert to hexadecimal:</li> </ul> <div class="code"><pre class="code literal-block"><span class="mf">00000000</span><span class="w"> </span><span class="mf">30</span><span class="w"> </span><span class="mf">45</span><span class="w"> </span><span class="mf">02</span><span class="w"> </span><span class="mf">21</span><span class="w"> </span><span class="mf">00</span><span class="w"> </span><span class="n">c1</span><span class="w"> </span><span class="mf">2</span><span class="n">a</span><span class="w"> </span><span class="mf">7</span><span class="n">d</span><span class="w"> </span><span class="mf">54</span><span class="w"> </span><span class="mf">97</span><span class="w"> </span><span class="mf">2</span><span class="n">f</span><span class="w"> </span><span class="mf">26</span><span class="w"> </span><span class="n">d1</span><span class="w"> </span><span class="mf">4</span><span class="n">c</span><span class="w"> </span><span class="n">b3</span><span class="w"> </span><span class="mf">11</span><span class="w"> </span><span class="err">|</span><span class="mf">0</span><span class="n">E</span><span class="mf">.</span><span class="err">!</span><span class="mf">..</span><span class="o">*</span><span class="err">}</span><span class="n">T</span><span class="mf">.</span><span class="o">/</span><span class="err">&amp;</span><span class="mf">.</span><span class="n">L</span><span class="mf">..</span><span class="err">|</span> <span class="mf">00000010</span><span class="w"> </span><span class="mf">33</span><span class="w"> </span><span class="mf">9</span><span class="n">b</span><span class="w"> </span><span class="mf">51</span><span class="w"> </span><span class="mf">22</span><span class="w"> </span><span class="n">f8</span><span class="w"> </span><span class="n">c1</span><span class="w"> </span><span class="mf">87</span><span class="w"> </span><span class="mf">41</span><span class="w"> </span><span class="mf">7</span><span class="n">d</span><span class="w"> </span><span class="n">de</span><span class="w"> </span><span class="mf">1</span><span class="n">e</span><span class="w"> </span><span class="mf">8</span><span class="n">e</span><span class="w"> </span><span class="n">fb</span><span class="w"> </span><span class="mf">68</span><span class="w"> </span><span class="mf">41</span><span class="w"> </span><span class="n">f5</span><span class="w"> </span><span class="err">|</span><span class="mf">3.</span><span class="n">Q</span><span class="s">"...A}....hA.|</span> <span class="mf">00000020</span><span class="w"> </span><span class="mf">5</span><span class="n">c</span><span class="w"> </span><span class="mf">34</span><span class="w"> </span><span class="mf">22</span><span class="w"> </span><span class="mf">0</span><span class="n">a</span><span class="w"> </span><span class="n">e0</span><span class="w"> </span><span class="mf">02</span><span class="w"> </span><span class="mf">20</span><span class="w"> </span><span class="mf">66</span><span class="w"> </span><span class="mf">63</span><span class="w"> </span><span class="mf">2</span><span class="n">c</span><span class="w"> </span><span class="mf">5</span><span class="n">c</span><span class="w"> </span><span class="n">d4</span><span class="w"> </span><span class="mf">16</span><span class="w"> </span><span class="mf">1</span><span class="n">e</span><span class="w"> </span><span class="n">fa</span><span class="w"> </span><span class="mf">3</span><span class="n">a</span><span class="w"> </span><span class="err">|\</span><span class="mf">4</span><span class="s">"... fc,\....:|</span> <span class="mf">00000030</span><span class="w"> </span><span class="mf">28</span><span class="w"> </span><span class="mf">37</span><span class="w"> </span><span class="mf">76</span><span class="w"> </span><span class="mf">4</span><span class="n">e</span><span class="w"> </span><span class="n">ee</span><span class="w"> </span><span class="mf">9</span><span class="n">e</span><span class="w"> </span><span class="n">b8</span><span class="w"> </span><span class="mf">49</span><span class="w"> </span><span class="mf">75</span><span class="w"> </span><span class="n">dd</span><span class="w"> </span><span class="mf">54</span><span class="w"> </span><span class="n">c2</span><span class="w"> </span><span class="n">de</span><span class="w"> </span><span class="mf">28</span><span class="w"> </span><span class="mf">65</span><span class="w"> </span><span class="n">e9</span><span class="w"> </span><span class="err">|</span><span class="p">(</span><span class="mf">7</span><span class="n">vN</span><span class="mf">...</span><span class="n">Iu</span><span class="mf">.</span><span class="n">T</span><span class="mf">..</span><span class="p">(</span><span class="n">e</span><span class="mf">.</span><span class="err">|</span> <span class="mf">00000040</span><span class="w"> </span><span class="mf">75</span><span class="w"> </span><span class="mf">25</span><span class="w"> </span><span class="mf">85</span><span class="w"> </span><span class="n">c5</span><span class="w"> </span><span class="mf">3</span><span class="n">e</span><span class="w"> </span><span class="mf">7</span><span class="n">c</span><span class="w"> </span><span class="n">ce</span><span class="w"> </span><span class="err">|</span><span class="n">u%</span><span class="mf">..</span><span class="o">&gt;</span><span class="err">|</span><span class="mf">.</span><span class="err">|</span> </pre></div> <ul> <li>cut -b 11-60 displays only the characters from column 11 to 60:</li> </ul> <div class="code"><pre class="code literal-block"><span class="mf">30</span><span class="w"> </span><span class="mf">45</span><span class="w"> </span><span class="mf">02</span><span class="w"> </span><span class="mf">21</span><span class="w"> </span><span class="mf">00</span><span class="w"> </span><span class="n">c1</span><span class="w"> </span><span class="mf">2</span><span class="n">a</span><span class="w"> </span><span class="mf">7</span><span class="n">d</span><span class="w"> </span><span class="mf">54</span><span class="w"> </span><span class="mf">97</span><span class="w"> </span><span class="mf">2</span><span class="n">f</span><span class="w"> </span><span class="mf">26</span><span class="w"> </span><span class="n">d1</span><span class="w"> </span><span class="mf">4</span><span class="n">c</span><span class="w"> </span><span class="n">b3</span><span class="w"> </span><span class="mf">11</span><span class="w"> </span> <span class="mf">33</span><span class="w"> </span><span class="mf">9</span><span class="n">b</span><span class="w"> </span><span class="mf">51</span><span class="w"> </span><span class="mf">22</span><span class="w"> </span><span class="n">f8</span><span class="w"> </span><span class="n">c1</span><span class="w"> </span><span class="mf">87</span><span class="w"> </span><span class="mf">41</span><span class="w"> </span><span class="mf">7</span><span class="n">d</span><span class="w"> </span><span class="n">de</span><span class="w"> </span><span class="mf">1</span><span class="n">e</span><span class="w"> </span><span class="mf">8</span><span class="n">e</span><span class="w"> </span><span class="n">fb</span><span class="w"> </span><span class="mf">68</span><span class="w"> </span><span class="mf">41</span><span class="w"> </span><span class="n">f5</span><span class="w"> </span> <span class="mf">5</span><span class="n">c</span><span class="w"> </span><span class="mf">34</span><span class="w"> </span><span class="mf">22</span><span class="w"> </span><span class="mf">0</span><span class="n">a</span><span class="w"> </span><span class="n">e0</span><span class="w"> </span><span class="mf">02</span><span class="w"> </span><span class="mf">20</span><span class="w"> </span><span class="mf">66</span><span class="w"> </span><span class="mf">63</span><span class="w"> </span><span class="mf">2</span><span class="n">c</span><span class="w"> </span><span class="mf">5</span><span class="n">c</span><span class="w"> </span><span class="n">d4</span><span class="w"> </span><span class="mf">16</span><span class="w"> </span><span class="mf">1</span><span class="n">e</span><span class="w"> </span><span class="n">fa</span><span class="w"> </span><span class="mf">3</span><span class="n">a</span><span class="w"> </span> <span class="mf">28</span><span class="w"> </span><span class="mf">37</span><span class="w"> </span><span class="mf">76</span><span class="w"> </span><span class="mf">4</span><span class="n">e</span><span class="w"> </span><span class="n">ee</span><span class="w"> </span><span class="mf">9</span><span class="n">e</span><span class="w"> </span><span class="n">b8</span><span class="w"> </span><span class="mf">49</span><span class="w"> </span><span class="mf">75</span><span class="w"> </span><span class="n">dd</span><span class="w"> </span><span class="mf">54</span><span class="w"> </span><span class="n">c2</span><span class="w"> </span><span class="n">de</span><span class="w"> </span><span class="mf">28</span><span class="w"> </span><span class="mf">65</span><span class="w"> </span><span class="n">e9</span><span class="w"> </span> <span class="mf">75</span><span class="w"> </span><span class="mf">25</span><span class="w"> </span><span class="mf">85</span><span class="w"> </span><span class="n">c5</span><span class="w"> </span><span class="mf">3</span><span class="n">e</span><span class="w"> </span><span class="mf">7</span><span class="n">c</span><span class="w"> </span><span class="n">ce</span><span class="w"> </span> </pre></div> <ul> <li><code>tr -d ' \n'</code> is used to delete spaces and carriage returns from the output so that is shown in one line and it gives us the final result:</li> </ul> <div class="code"><pre class="code literal-block"><span class="mf">3045022100</span><span class="n">c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce</span> </pre></div> <p>If you noticed, there is also another cleartext string at the beginning of Wright's post:</p> <div class="code"><pre class="code literal-block">$<span class="w"> </span>base64<span class="w"> </span>-d<span class="w"> </span><span class="o">&lt;&lt;&lt;</span><span class="s1">'IFdyaWdodCwgaXQgaXMgbm90IHRoZSBzYW1lIGFzIGlmIEkgc2lnbiBDcmFpZyBXcmlnaHQsIFNhdG9zaGkuCgo='</span> Wright,<span class="w"> </span>it<span class="w"> </span>is<span class="w"> </span>not<span class="w"> </span>the<span class="w"> </span>same<span class="w"> </span>as<span class="w"> </span><span class="k">if</span><span class="w"> </span>I<span class="w"> </span>sign<span class="w"> </span>Craig<span class="w"> </span>Wright,<span class="w"> </span>Satoshi. </pre></div> <p>Now let's head to blockchain.info. Blockchain.info has a little <a href="https://blockchain.info/decode-tx">utility</a> to get hexadecimal informations out of a transaction on the blockchain, so let's use it to get the related info about this transaction:</p> <p><a href="https://blockchain.info/tx/828ef3b079f9c23829c56fe86e85b4a69d9e06e5b54ea597eef5fb3ffef509fe">tx/828ef3b079f9c23829c56fe86e85b4a69d9e06e5b54ea597eef5fb3ffef509fe</a> <a href="https://blockchain.info/tx/828ef3b079f9c23829c56fe86e85b4a69d9e06e5b54ea597eef5fb3ffef509fe?format=hex">tx/828ef3b079f9... in hexadecimal</a></p> <p>As you can see the entire output of the first bash command, that is</p> <div class="code"><pre class="code literal-block"><span class="mf">3045022100</span><span class="n">c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce</span> </pre></div> <p>is contained in:</p> <div class="code"><pre class="code literal-block">"script":"483045022100c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce01" </pre></div> <p>except for the 48 at the beginning and the 01 at the end.</p> <p>That is a signature hash: this <a href="https://en.bitcoin.it/wiki/List_of_address_prefixes">page</a> explains that the 48 is just a decimal prefix given to uncompressed transactions, and the 01 at the end is just a SIGHASH_ALL <a href="https://bitcoin.org/en/glossary/signature-hash">code</a> that flags the end of the signature.</p> <h3>So, is it a fake?</h3> <p>Yes, indeed. At the end, I ask, why would you choose anything else than the easiest and most conclusive way to prove something?</p> <p><img alt='Wright "signs" the blockchain' src="francescomecca.eu/wp-content/uploads/2016/satosh.jpg"></p>BitcoinPesceWandasatoshi nakamoto scamscamwrightfrancescomecca.eu/blog/2016/5/3/satoshisignature/Tue, 03 May 2016 00:00:00 GMT