<p>I have seen this text before while parsing the blockchain (before upgrading to headers first v0.10 of course). It's quite doubtful this is code written by Satoshi, since the git commit reference is not proof. It's like using the hash for the genesis block to sign code: the hash is/was public knowledge.</p>

<p><a href="http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photographs.html" rel="noreferrer">Ken Shirriff highlighted this Python code</a> found in exactly the same manner as the Electrum fix code:</p>

<ul>
<li><a href="https://gist.github.com/shirriff/64f48fa09a61b56ffcf9#file-bitcoin-file-downloader-py" rel="noreferrer">https://gist.github.com/shirriff/64f48fa09a61b56ffcf9#file-bitcoin-file-downloader-py</a> </li>
<li><a href="https://gist.github.com/shirriff/bfc4df70a02732493a28#file-bitcoin-insertion-tool-py" rel="noreferrer">https://gist.github.com/shirriff/bfc4df70a02732493a28#file-bitcoin-insertion-tool-py</a></li>
</ul>

<p>This code is likely what was used to embed the code in the blockchain. Note both these Python (version 3.x FWIW) programs are attributed to <code>Satoshi Nakamoto 2013</code> (~2 years after the final communication).</p>

<p>Ken Shirriff had <a href="http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photographs.html?utm_content=buffer65ec8&amp;utm_medium=social&amp;utm_source=twitter.com&amp;utm_campaign=buffer%23ref17" rel="noreferrer">this to say (ref17)</a>:</p>

<blockquote>
  <p><strong>Email from Satoshi Nakamoto</strong></p>
  
  <p>The following email message allegedly from Bitcoin inventor Satoshi
  Nakamoto appears in the blockchain.[17] (It's almost certainly not
  really from him.) It seems to be referring to the removal of some
  Script opcodes from the Bitcoin server earlier and making the
  corresponding change to the Electrum server. My guess is this message
  is someone pointing out a bug fix for Electrum in a joking way.</p>
</blockquote>

CC BY-SA 3.0
2015-05-28T10:30:19.057Z
2015-05-28T10:30:19.057Z
Wizard Of Ozzie
<p><a href="https://github.com/mulllhausen/btc-inquisitor" rel="nofollow">the program i am writing</a> to parse the bitcoin blockchain got stuck on <a href="http://blockexplorer.com/block/000000000000001fbc5a74fb56b1cf8949bcfad8e3ae06f2af638b94f7633fbc" rel="nofollow">block 251718</a>. i hadn't yet implemented support for some of the opcodes in the txout script for <a href="http://blockexplorer.com/tx/77822fd6663c665104119cb7635352756dfc50da76a92d417ec1a12c518fad69" rel="nofollow">tx 24</a> and i'm now in the process of implementing these. anyway, this is not the subject of this question.</p>

<p>rather, the tx contains some very interesting text which claims to be written by satoshi. in hex:</p>

<pre><code>OP_IF OP_INVALIDOPCODE 4effffffff 46726f6d2061336136316665663433333039623966623233323235646637393130623033616663353436356239204d6f6e205365702031372030303a30303a303020323030310a46726f6d3a205361746f736869204e616b616d6f746f203c7361746f7368696e40676d782e636f6d3e0a446174653a204d6f6e2c2031322041756720323031332030323a32383a3032202d303230300a5375626a6563743a205b50415443485d2052656d6f7665202853494e474c457c444f55424c4529425954450a0a492072656d6f76656420746869732066726f6d20426974636f696e20696e20663165316662346264656638373863386663313536346661343138643434653735343161376538330a696e2053657074203720323031302c20616c6d6f73742074687265652079656172732061676f2e204265207761726e6564207468617420492068617665206e6f740a61637475616c6c792074657374656420746869732070617463682e0a2d2d2d0a206261636b656e64732f626974636f696e642f646573657269616c697a652e7079207c2020202038202b2d2d2d2d2d2d2d0a20312066696c65206368616e6765642c203120696e73657274696f6e282b292c20372064656c6574696f6e73282d290a0a64696666202d2d67697420612f6261636b656e64732f626974636f696e642f646573657269616c697a652e707920622f6261636b656e64732f626974636f696e642f646573657269616c697a652e70790a696e64657820363632303538332e2e38396239623162203130303634340a2d2d2d20612f6261636b656e64732f626974636f696e642f646573657269616c697a652e70790a2b2b2b20622f6261636b656e64732f626974636f696e642f646573657269616c697a652e70790a4040202d3238302c3130202b3238302c38204040206f70636f646573203d20456e756d65726174696f6e28224f70636f646573222c205b0a2020202020224f505f57495448494e222c20224f505f524950454d44313630222c20224f505f53484131222c20224f505f534841323536222c20224f505f48415348313630222c0a2020202020224f505f48415348323536222c20224f505f434f4445534550415241544f52222c20224f505f434845434b534947222c20224f505f434845434b534947564552494659222c20224f505f434845434b4d554c5449534947222c0a2020202020224f505f434845434b4d554c5449534947564552494659222c0a2d2020202028224f505f53494e474c45425954455f454e44222c2030784630292c0a2d2020202028224f505f444f55424c45425954455f424547494e222c20307846303030292c0a2020202020224f505f5055424b4559222c20224f505f5055424b455948415348222c0a2d2020202028224f505f494e56414c49444f50434f4445222c20307846464646292c0a2b2020202028224f505f494e56414c49444f50434f4445222c2030784646292c0a205d290a200a200a4040202d3239332c3130202b3239312c3620404020646566207363726970745f4765744f70286279746573293a0a202020202020202020766368203d204e6f6e650a2020202020202020206f70636f6465203d206f72642862797465735b695d290a20202020202020202069202b3d20310a2d20202020202020206966206f70636f6465203e3d206f70636f6465732e4f505f53494e474c45425954455f454e4420616e642069203c206c656e286279746573293a0a2d2020202020202020202020206f70636f6465203c3c3d20380a2d2020202020202020202020206f70636f6465207c3d206f72642862797465735b695d290a2d20202020202020202020202069202b3d20310a200a2020202020202020206966206f70636f6465203c3d206f70636f6465732e4f505f5055534844415441343a0a202020202020202020202020206e53697a65203d206f70636f64650a2d2d200a312e372e392e340a0a OP_ENDIF
</code></pre>

<p>reading the raw binary data:</p>

<pre><code>c\xff\x05N\xff\xff\xff\xffM\xa3\x05From a3a61fef43309b9fb23225df7910b03afc5465b9 Mon Sep 17 00:00:00 2001
From: Satoshi Nakamoto &lt;satoshin@gmx.com&gt;
Date: Mon, 12 Aug 2013 02:28:02 -0200
Subject: [PATCH] Remove (SINGLE|DOUBLE)BYTE

I removed this from Bitcoin in f1e1fb4bdef878c8fc1564fa418d44e7541a7e83
in Sept 7 2010, almost three years ago. Be warned that I have not
actually tested this patch.
---
 backends/bitcoind/deserialize.py |    8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/backends/bitcoind/deserialize.py b/backends/bitcoind/deserialize.py
index 6620583..89b9b1b 100644
--- a/backends/bitcoind/deserialize.py
+++ b/backends/bitcoind/deserialize.py
@@ -280,10 +280,8 @@ opcodes = Enumeration("Opcodes", [
     "OP_WITHIN", "OP_RIPEMD160", "OP_SHA1", "OP_SHA256", "OP_HASH160",
     "OP_HASH256", "OP_CODESEPARATOR", "OP_CHECKSIG", "OP_CHECKSIGVERIFY", "OP_CHECKMULTISIG",
     "OP_CHECKMULTISIGVERIFY",
-    ("OP_SINGLEBYTE_END", 0xF0),
-    ("OP_DOUBLEBYTE_BEGIN", 0xF000),
     "OP_PUBKEY", "OP_PUBKEYHASH",
-    ("OP_INVALIDOPCODE", 0xFFFF),
+    ("OP_INVALIDOPCODE", 0xFF),
 ])


@@ -293,10 +291,6 @@ def script_GetOp(bytes):
         vch = None
         opcode = ord(bytes[i])
         i += 1
-        if opcode &gt;= opcodes.OP_SINGLEBYTE_END and i &lt; len(bytes):
-            opcode &lt;&lt;= 8
-            opcode |= ord(bytes[i])
-            i += 1

         if opcode &lt;= opcodes.OP_PUSHDATA4:
             nSize = opcode
-- 
1.7.9.4

h
</code></pre>

<p><a href="https://bitcointalk.org/index.php?topic=271761.0" rel="nofollow">reading on the bitcointalk forum</a> it looks like this is a patch for an electrum bug.</p>

<p>anyway, i'm more interested in whether this was actually written by satoshi or not. apparently <code>a3a61fef43309b9fb23225df7910b03afc5465b9</code> is a git signature. does anybody know satoshi's public git key? if so then can anyone verify if this is him or not?</p>

<satoshi-nakamoto>
Was this message written by Satoshi?
mulllhausen
# Was this message written by Satoshi?

(Asked by: username_0 on 2015-05-26)

[the program i am writing](https://github.com/username_0/btc-inquisitor) to parse the bitcoin blockchain got stuck on [block 251718](http://blockexplorer.com/block/000000000000001fbc5a74fb56b1cf8949bcfad8e3ae06f2af638b94f7633fbc). i hadn't yet implemented support for some of the opcodes in the txout script for [tx 24](http://blockexplorer.com/tx/77822fd6663c665104119cb7635352756dfc50da76a92d417ec1a12c518fad69) and i'm now in the process of implementing these. anyway, this is not the subject of this question.

rather, the tx contains some very interesting text which claims to be written by satoshi. in hex:

```
OP_IF OP_INVALIDOPCODE 4effffffff 46726f6d2061336136316665663433333039623966623233323235646637393130623033616663353436356239204d6f6e205365702031372030303a30303a303020323030310a46726f6d3a205361746f736869204e616b616d6f746f203c7361746f7368696e40676d782e636f6d3e0a446174653a204d6f6e2c2031322041756720323031332030323a32383a3032202d303230300a5375626a6563743a205b50415443485d2052656d6f7665202853494e474c457c444f55424c4529425954450a0a492072656d6f76656420746869732066726f6d20426974636f696e20696e20663165316662346264656638373863386663313536346661343138643434653735343161376538330a696e2053657074203720323031302c20616c6d6f73742074687265652079656172732061676f2e204265207761726e6564207468617420492068617665206e6f740a61637475616c6c792074657374656420746869732070617463682e0a2d2d2d0a206261636b656e64732f626974636f696e642f646573657269616c697a652e7079207c2020202038202b2d2d2d2d2d2d2d0a20312066696c65206368616e6765642c203120696e73657274696f6e282b292c20372064656c6574696f6e73282d290a0a64696666202d2d67697420612f6261636b656e64732f626974636f696e642f646573657269616c697a652e707920622f6261636b656e64732f626974636f696e642f646573657269616c697a652e70790a696e64657820363632303538332e2e38396239623162203130303634340a2d2d2d20612f6261636b656e64732f626974636f696e642f646573657269616c697a652e70790a2b2b2b20622f6261636b656e64732f626974636f696e642f646573657269616c697a652e70790a4040202d3238302c3130202b3238302c38204040206f70636f646573203d20456e756d65726174696f6e28224f70636f646573222c205b0a2020202020224f505f57495448494e222c20224f505f524950454d44313630222c20224f505f53484131222c20224f505f534841323536222c20224f505f48415348313630222c0a2020202020224f505f48415348323536222c20224f505f434f4445534550415241544f52222c20224f505f434845434b534947222c20224f505f434845434b534947564552494659222c20224f505f434845434b4d554c5449534947222c0a2020202020224f505f434845434b4d554c5449534947564552494659222c0a2d2020202028224f505f53494e474c45425954455f454e44222c2030784630292c0a2d2020202028224f505f444f55424c45425954455f424547494e222c20307846303030292c0a2020202020224f505f5055424b4559222c20224f505f5055424b455948415348222c0a2d2020202028224f505f494e56414c49444f50434f4445222c20307846464646292c0a2b2020202028224f505f494e56414c49444f50434f4445222c2030784646292c0a205d290a200a200a4040202d3239332c3130202b3239312c3620404020646566207363726970745f4765744f70286279746573293a0a202020202020202020766368203d204e6f6e650a2020202020202020206f70636f6465203d206f72642862797465735b695d290a20202020202020202069202b3d20310a2d20202020202020206966206f70636f6465203e3d206f70636f6465732e4f505f53494e474c45425954455f454e4420616e642069203c206c656e286279746573293a0a2d2020202020202020202020206f70636f6465203c3c3d20380a2d2020202020202020202020206f70636f6465207c3d206f72642862797465735b695d290a2d20202020202020202020202069202b3d20310a200a2020202020202020206966206f70636f6465203c3d206f70636f6465732e4f505f5055534844415441343a0a202020202020202020202020206e53697a65203d206f70636f64650a2d2d200a312e372e392e340a0a OP_ENDIF

```

reading the raw binary data:

```
c\xff\x05N\xff\xff\xff\xffM\xa3\x05From a3a61fef43309b9fb23225df7910b03afc5465b9 Mon Sep 17 00:00:00 2001
From: Satoshi Nakamoto <satoshin@gmx.com>
Date: Mon, 12 Aug 2013 02:28:02 -0200
Subject: [PATCH] Remove (SINGLE|DOUBLE)BYTE

I removed this from Bitcoin in f1e1fb4bdef878c8fc1564fa418d44e7541a7e83
in Sept 7 2010, almost three years ago. Be warned that I have not
actually tested this patch.
---
 backends/bitcoind/deserialize.py |    8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/backends/bitcoind/deserialize.py b/backends/bitcoind/deserialize.py
index 6620583..89b9b1b 100644
--- a/backends/bitcoind/deserialize.py
+++ b/backends/bitcoind/deserialize.py
@@ -280,10 +280,8 @@ opcodes = Enumeration("Opcodes", [
     "OP_WITHIN", "OP_RIPEMD160", "OP_SHA1", "OP_SHA256", "OP_HASH160",
     "OP_HASH256", "OP_CODESEPARATOR", "OP_CHECKSIG", "OP_CHECKSIGVERIFY", "OP_CHECKMULTISIG",
     "OP_CHECKMULTISIGVERIFY",
-    ("OP_SINGLEBYTE_END", 0xF0),
-    ("OP_DOUBLEBYTE_BEGIN", 0xF000),
     "OP_PUBKEY", "OP_PUBKEYHASH",
-    ("OP_INVALIDOPCODE", 0xFFFF),
+    ("OP_INVALIDOPCODE", 0xFF),
 ])

@@ -293,10 +291,6 @@ def script_GetOp(bytes):
         vch = None
         opcode = ord(bytes[i])
         i += 1
-        if opcode >= opcodes.OP_SINGLEBYTE_END and i < len(bytes):
-            opcode <<= 8
-            opcode |= ord(bytes[i])
-            i += 1

         if opcode <= opcodes.OP_PUSHDATA4:
             nSize = opcode
-- 
1.7.9.4

h

```

[reading on the bitcointalk forum](https://bitcointalk.org/index.php?topic=271761.0) it looks like this is a patch for an electrum bug.

anyway, i'm more interested in whether this was actually written by satoshi or not. apparently `a3a61fef43309b9fb23225df7910b03afc5465b9` is a git signature. does anybody know satoshi's public git key? if so then can anyone verify if this is him or not?

**Tags:** satoshi-nakamoto


---

## 1 answers

### Answer by username_1 on 2015-05-28. Score: 5

I have seen this text before while parsing the blockchain (before upgrading to headers first v0.10 of course). It's quite doubtful this is code written by Satoshi, since the git commit reference is not proof. It's like using the hash for the genesis block to sign code: the hash is/was public knowledge.

[Ken Shirriff highlighted this Python code](http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photographs.html) found in exactly the same manner as the Electrum fix code:

* <https://gist.github.com/shirriff/64f48fa09a61b56ffcf9#file-bitcoin-file-downloader-py>
* <https://gist.github.com/shirriff/bfc4df70a02732493a28#file-bitcoin-insertion-tool-py>

This code is likely what was used to embed the code in the blockchain. Note both these Python (version 3.x FWIW) programs are attributed to `Satoshi Nakamoto 2013` (~2 years after the final communication).

Ken Shirriff had [this to say (ref17)](http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photographs.html?utm_content=buffer65ec8&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer%23ref17):

> **Email from Satoshi Nakamoto**
>
> The following email message allegedly from Bitcoin inventor Satoshi
> Nakamoto appears in the blockchain.[17] (It's almost certainly not
> really from him.) It seems to be referring to the removal of some
> Script opcodes from the Bitcoin server earlier and making the
> corresponding change to the Electrum server. My guess is this message
> is someone pointing out a bug fix for Electrum in a joking way.


---

