2018-11-10 18:19:00 +01:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width" >
< title > Why Wright's proof is a fake | Caught in the Net< / title >
2018-11-10 18:32:04 +01:00
< link rel = "stylesheet" href = "../../../../../assets/blog/fonts/opensans.css" >
< link href = "../../../../../assets/blog/css/normalize.css" rel = "stylesheet" type = "text/css" >
< link href = "../../../../../assets/blog/css/cayman.css" rel = "stylesheet" type = "text/css" >
2018-11-10 18:19:00 +01:00
< meta name = "theme-color" content = "#5670d4" >
< meta name = "generator" content = "Nikola (getnikola.com)" >
< link rel = "alternate" type = "application/rss+xml" title = "RSS" hreflang = "en" href = "../../../../../rss.xml" >
< link rel = "canonical" href = "francescomecca.eu/blog/2016/5/3/satoshisignature/" >
< meta name = "author" content = "Francesco Mecca" >
< link rel = "prev" href = "../../../4/17/kpd-player/" title = "Kyuss Music Player" type = "text/html" >
< link rel = "next" href = "../../15/genetic-alg/" title = "Interpolation using a genetic algorithm" type = "text/html" >
< meta property = "og:site_name" content = "Caught in the Net" >
< meta property = "og:title" content = "Why Wright's proof is a fake" >
< meta property = "og:url" content = "francescomecca.eu/blog/2016/5/3/satoshisignature/" >
< meta property = "og:description" content = "I explained in my previous post ( 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">
< meta property = "og:type" content = "article" >
< meta property = "article:published_time" content = "2016-05-03T00:00:00Z" >
< meta property = "article:tag" content = "Bitcoin" >
< meta property = "article:tag" content = "PesceWanda" >
< meta property = "article:tag" content = "satoshi nakamoto scam" >
< meta property = "article:tag" content = "scam" >
< meta property = "article:tag" content = "wright" >
< / head >
< body >
< div id = "container" >
< section class = "page-header" > < h1 class = "project-name" >
Caught in the Net
< / h1 >
< h2 class = "project-tagline" > La rete ti cattura ma libera il pensiero< / h2 >
< a class = "btn" href = "../../../../../" > Home< / a >
< a class = "btn" href = "../../../../../pages/about/" > About me< / a >
< a class = "btn" href = "../../../../../pages/contattami/" > Contact me< / a >
< a class = "btn" href = "../../../../../archiveall.html" > Archive< / a >
< a class = "btn" href = "../../../../../rss.xml" > RSS< / a >
2024-03-06 09:18:36 +01:00
< a class = "btn" href = "https://bugs.lezzo.org" > Personal Git< / a >
2024-03-06 09:16:06 +01:00
< a class = "btn" href = "https://bugs.lezzo.org/bparodi/Curriculum_vitae/raw/branch/master/latex.dir/francesco_mecca_cv_eng.pdf" > Curriculum< / a >
2018-11-10 18:19:00 +01:00
< / section > < section class = "main-content" > < div class = "post" >
< header > < h1 class = "post-title" >
< h1 class = "p-name post-title" itemprop = "headline name" > Why Wright's proof is a fake< / h1 >
< / h1 >
< / header > < p class = "dateline post-date" > 03 May 2016< / p >
< / div >
< div class = "e-content entry-content" itemprop = "articleBody text" >
2023-08-30 18:10:14 +02:00
< 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.
2018-11-10 18:19:00 +01:00
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 >
2024-02-28 14:38:55 +01:00
< div class = "code" > < pre class = "code literal-block" > < span class = "nb" > -------------------------< / span > < span class = "c" > Signature File < / span > < span class = "nb" > -------------------------< / span >
2021-12-02 16:47:14 +01:00
< span class = "c" > MEUCIQDBKn1Uly8m0UyzETObUSL4wYdBfd4ejvtoQfVcNCIK4AIgZmMsXNQWHvo6KDd2Tu6euEl1< / span >
< span class = "c" > 3VTC3ihl6XUlhcU< / span > < span class = "nb" > +< / span > < span class = "c" > fM4=< / span >
2024-02-28 14:38:55 +01:00
< span class = "nb" > -------------------------< / span > < span class = "c" > End Signature < / span > < span class = "nb" > --------------------------< / span >
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< 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 >
2024-02-28 14:38:55 +01:00
< div class = "code" > < pre class = "code literal-block" > base64 -d < < < 'MEUCIQDBKn1Uly8m0UyzETObUSL4wYdBfd4ejvtoQfVcNCIK4AIgZmMsXNQWHvo6KDd2Tu6euEl13VTC3ihl6XUlhcU+fM4=' | hexdump -C| cut -b 11-60| tr -d ' \n'
2018-11-10 18:19:00 +01:00
3045022100c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce
2024-02-28 14:38:55 +01:00
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< 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 >
2024-02-28 14:38:55 +01:00
< 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" > & < / 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" > > < / span > < span class = "err" > |< / span > < span class = "mf" > .< / span > < span class = "err" > |< / span >
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< ul >
< li > cut -b 11-60 displays only the characters from column 11 to 60:< / li >
< / ul >
2024-02-28 14:38:55 +01:00
< 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 >
2023-08-30 18:10:14 +02:00
< 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 >
2024-02-28 14:38:55 +01:00
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< 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 >
2024-02-28 14:38:55 +01:00
< div class = "code" > < pre class = "code literal-block" > < span class = "mf" > 3045022100< / span > < span class = "n" > c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce< / span >
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< p > If you noticed, there is also another cleartext string at the beginning of Wright's post:< / p >
2024-02-28 14:38:55 +01:00
< 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" > < < < < / 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 >
2018-11-10 18:19:00 +01:00
< 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 >
2024-02-28 14:38:55 +01:00
< div class = "code" > < pre class = "code literal-block" > < span class = "mf" > 3045022100< / span > < span class = "n" > c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce< / span >
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< p > is contained in:< / p >
2024-02-28 14:38:55 +01:00
< div class = "code" > < pre class = "code literal-block" > "script":"483045022100c12a7d54972f26d14cb311339b5122f8c187417dde1e8efb6841f55c34220ae0022066632c5cd4161efa3a2837764eee9eb84975dd54c2de2865e9752585c53e7cce01"
< / pre > < / div >
2018-11-10 18:19:00 +01:00
< 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 = "../../../../../wp-content/uploads/2016/satosh.jpg" > < / p >
< / div >
< aside class = "postpromonav" > < nav > < h4 > Categories< / h4 >
< ul itemprop = "keywords" class = "tags" >
< li > < a class = "tag p-category" href = "../../../../../categories/bitcoin/" rel = "tag" > Bitcoin< / a > < / li >
< li > < a class = "tag p-category" href = "../../../../../categories/pescewanda/" rel = "tag" > PesceWanda< / a > < / li >
< li > < a class = "tag p-category" href = "../../../../../categories/satoshi-nakamoto-scam/" rel = "tag" > satoshi nakamoto scam< / a > < / li >
< li > < a class = "tag p-category" href = "../../../../../categories/scam/" rel = "tag" > scam< / a > < / li >
< li > < a class = "tag p-category" href = "../../../../../categories/wright/" rel = "tag" > wright< / a > < / li >
< / ul > < / nav > < / aside > < p class = "sourceline" > < a href = "index.md" class = "sourcelink" > Source< / a > < / p >
< footer class = "site-footer" id = "footer" > < span > CC BY-SA 4.0 International.< br > < / span >
2018-11-10 18:19:11 +01:00
< span class = "site-footer-credits" > < a href = "https://getnikola.com" > Nikola< / a > , < a href = "https://github.com/jasonlong/cayman-theme" > Cayman theme< / a > .< / span >
2018-11-10 18:19:00 +01:00
< / footer > < / section >
< / div >
< / body >
< / html >