Document provenance · reproducible · neutral
The Bitcoin whitepaper: which version is which
There is not one Bitcoin whitepaper. At least four are known, and they differ in ways you can check yourself in seconds. Two are held, one is lost, and one exists only in a court record. This page records what each is, how to identify any copy from its contents alone, and — the part that matters most — exactly where proof ends and inference begins.
Every claim here links to a public source. Nothing asks you to trust us.
The four known versions
Dates are the files' own where we hold them; the evidence below does not depend on them.
| version | status | identity |
|---|---|---|
| August 2008 “Electronic Cash Without a Trusted Third Party” |
lost | Sent as a link to Adam Back on 20 Aug 2008 and Wei Dai on 22 Aug 2008. The filehost died; no archive ever captured it. Its contents are known from Satoshi's own emails — see the ladder below. |
| 3 October 2008 183,697 bytes 427c63b3…982faa |
held | The paper as announced. Its abstract matches the 31 October announcement word for word. Served byte-identically by gwern.net and archive.org. Used as a forensic control copy in the High Court. |
| 11 November 2008 ≈184,300 bytes e6cc7c95…48e50a9 |
not held | A control copy in COPA v Wright, appearing under three names for one file: Rosendahl's Exhibit AR3, Bohm's Exhibit NB1, Madden's BWP-NB1. Two days after Satoshi proposed transaction fees on the mailing list — and it carries them. This was the version the public could download in January 2009 — the retired solicitor Nicholas Bohm, a mailing-list reader rather than a private correspondent, downloaded it 18 January 2009 at 13:27 GMT and still had it fifteen years later; his statement gives its creation stamp to the second. Madden judged it “very likely to be an authentic intermediate draft” between the October 2008 and March 2009 versions. Its hashes are now known — published in Appendix PM3 §42 — so any candidate copy can be verified instantly, even though the file itself is still in no public hands. |
| 24 March 2009 184,292 bytes b1674191…f4f553 |
held · chain-anchored | The canonical file — what bitcoin.org/bitcoin.pdf serves today. Embedded in the block chain at block 230009. The High Court's own control copy (ID_000865) is byte-identical: Madden's First Report §180 publishes its MD5 d56d71ec…c042 and SHA256 b1674191…f4f553, both matching the bytes recovered from the chain. This is the design as its author last stated it; it is not a witness to October 2008. |
Check before you hash: a 2024 re-save carries the 2008 creation date
A file named for the October 2008 draft is published on GitHub for technical comparison, and it is not that draft: it is the same document re-saved on 30 March 2024. This is easy to miss because re-saving preserves the original creation date, and it is an ordinary by-product of opening a PDF in an analysis tool — nothing here suggests the publisher intended to mislead anyone, and their 2009 file is byte-identical to the canonical. It is noted because the artifact is easy to mistake for an original, not because anything is wrong with the work it belongs to.
bytes sha256 /CreationDate /ModDate the re-save 188,867 f5aa8f4b… D:20081003134958-07'00' D:20240330175340+10'00' the genuine draft 183,697 427c63b3… D:20081003134958-07'00' (none)
Three independent tells: an added /ModDate at an Australian offset; a size closer to the canonical's 184,292 than the real draft's, so a size check can pass it; and the structural giveaway — a PDF writer sets the two halves of /ID equal on first save and never again. They are equal in the genuine draft and unequal in the re-save. Its text is the October text (no fee paragraph), so only the file differs — but anyone publishing its hash as “the 3 October 2008 whitepaper” is publishing the fingerprint of a 2024 file.
This is the second such near-miss we have caught, and the reason verify/audit_published_hashes.py exists.
Identify any copy in ten seconds
Six tests, all plain text searches. Four of them come from Satoshi's own words in dated records rather than from any file — which is why they can identify even the versions nobody has. The August 2008 column is empty on purpose — that version is lost, and those cells are what a surfacing copy would have to fill in. The 11 November column was empty until its analysis became available; the entries below now come from Appendix PM3, not from the file, which is still in no public hands.
| test | Aug 2008 (lost) | 3 Oct 2008 | 11 Nov 2008 (not held) | 24 Mar 2009 |
|---|---|---|---|---|
| title | Electronic Cash Without a Trusted Third Party | Bitcoin: A Peer-to-Peer… | Bitcoin: A Peer-to-Peer… | Bitcoin: A Peer-to-Peer… |
| “Digital signatures …” | offer part of the solution | provide part | unknown | provide part |
| Hashcash reference no. | [5] | [6] | unknown | [6] |
| b-money citation | absent entirely | [1] … 1998 | unknown | [1] … 1998 |
| “the burdens of” | yes | yes | unknown | no |
| Section 6 transaction fees | absent | absent | PRESENT — first wording | present, reworded |
| contact address | — | satoshi@vistomail.com | unknown | satoshin@gmx.com |
Where the reference numbers come from
On 20 August 2008 Satoshi emailed Adam Back to check a citation, quoting his
own draft: [5] A. Back, "Hashcash — a denial of service counter-measure". He had
never heard of b-money. Back replied the next day pointing him to it, and Satoshi answered:
“I wasn't aware of the b-money page… I'll e-mail him to confirm the year of publication so I
can credit him.”
If b-money then went in as [1], every later reference must shift down
by one. Both surviving files were checked: Hashcash is [6] in both. A
prediction taken from a court exhibit, confirmed against files from an unrelated source.
So a candidate for the lost August draft is settled instantly: title
“Electronic Cash Without a Trusted Third Party”, Hashcash at [5], no b-money.
The file circulating under that name fails this — and also fails on structure, being PDF 1.6 and
linearized, which OpenOffice 2.4 does not produce.
Verify it yourself
Python 3, standard library. No API key, no login, no node required.
1 · Carve the canonical paper out of the block chain
It was embedded in mainnet transaction 54e48e5f… across 945 bare-multisig outputs whose “public keys” are file bytes.
python verify/whitepaper_from_chain.py out.pdf block 230009 2013-04-06 20:28:10 UTC carved 184,292 bytes %PDF-1.4 … %%EOF sha256 b1674191a88ec5cdd733e4240a81803105dc412d6c6708d53ab94fc248f4f553 matches
Proof-of-work cannot be backdated. This pins the canonical text to April 2013 independently of bitcoin.org, of the Internet Archive, and of us. It says nothing about 2008 and is not offered as if it did.
2 · Compare the two surviving files structurally
python verify/pdf_structure.py canonical.pdf draft.pdf
canonical draft
PDF version %PDF-1.4 %PDF-1.4
linearized no no
/ObjStm (PDF 1.5+) 0 0
/XRef (PDF 1.5+) 0 0
/ID[0] == /ID[1] never re-saved never re-saved
embedded subset fonts 7 7
pages 9 8
3 · Compare the embedded font programs — the deepest test
OpenOffice embeds a subset of each font containing only the glyphs the document uses. Two exports of the same document from the same machine share byte-identical subsets wherever the text did not change.
python verify/pdf_fonts.py canonical.pdf draft.pdf BAAAAA+CenturySchoolbook-Bold 29,212 29,212 IDENTICAL CAAAAA+TimesNewRomanPSMT 60,572 60,572 differ DAAAAA+TimesNewRomanPS-BoldMT 25,632 25,632 IDENTICAL EAAAAA+ArialMT 38,580 38,580 IDENTICAL FAAAAA+TimesNewRomanPS-ItalicMT 37,812 37,812 IDENTICAL GAAAAA+OpenSymbol 2,232 2,232 IDENTICAL HAAAAA+CourierNewPSMT 36,020 36,020 IDENTICAL byte-identical: 6 of 7
The one that differs is the body text font, and it differs only in
glyf, hmtx and loca — which glyphs are in the subset — not
in cmap, cvt, fpgm, maxp, name,
post or prep. Both carry the same source-font creation stamp of
1990-08-06 13:14:42.
That is the same font files, on the same machine, subsetted by the same software — with different glyphs in the body because the body text changed. To fake it you would need not merely OpenOffice 2.4 but the same physical font files, and six of your subsets would have to hash identically to the file you were imitating.
How the October draft is dated — without trusting the file
A backdated clock can write any creation date. The dating below never uses one.
The early bound — a citation its author did not yet have
On 22 August 2008 Satoshi asked Wei Dai for b-money's publication year and
guessed: [1] W. Dai, "b-money," … (2006?). Dai replied: 1998. The
draft reads [1] W. Dai, "b-money," … 1998. — so it postdates Dai's reply.
The late bound — a paragraph he had not yet written
The draft has no Section 6 transaction-fee paragraph. Satoshi proposed transaction fees on the mailing list on 9 November 2008 — “it's easy to tweak it for transaction fees instead” — and referred to them the next day as “the transaction fee based incentive system I recently posted.”
after Wei Dai's reply to the 22 Aug 2008 email — holds a fact Satoshi lacked
before 9 Nov 2008 — lacks a paragraph he hadn't written
the file's own date, 3 Oct 2008, sits inside and does none of the work
A forger cannot put a citation into a document before its author learned it, nor remove a paragraph he had not yet written. Neither is reachable with a backdated clock.
Where the October draft came from
It did not appear from nowhere in 2020. Its history is on the same mailing list that carried the announcement.
| date | record |
|---|---|
| 2015-01-24 | Asked on the cryptography list whether anyone saved the original, a list member replies: “Looks like I have it… the local date of the file I have is 2008 Nov 2” — 183,697 bytes |
| 2015-01-25 | Posts the hash 427c63b3…982faa. Another member replies that “the one everyone else has” is b1674191… — the community had only the canonical file |
| 2015-01-30 | A named recipient receives it by anonymous remailer in ~26 parts, reassembles and republishes it — same hash |
| 2015-02-14 | The Internet Archive captures that page, hash and all |
| 2017-08-17 | Ray Dillinger — who argued with Satoshi in the original November 2008 thread — confirms: “Yes. The hash matches. That's definitely it.” |
So the hash sits in two independent third-party records from early 2015, five years before the archive.org copy existed, and is confirmed by a participant from 2008. And the content dating agrees with the custody claim without either knowing about the other: he said early November 2008; the absent fee paragraph independently says before 9 November 2008.
Recorded for completeness: in 2015 he gives the file's local date as 2 November 2008; in 2017 he writes “received here 2008 November 8”. Six days apart. Both precede the fee proposal, so the dating is unaffected — but the two statements are not identical.
What a court found
COPA v Wright, [2024] EWHC 1198 (Ch), Mr Justice Mellor, 20 May 2024 — 1,698 paragraphs, on expert evidence tested by cross-examination.
So the canonical file's identity is attested by three independent classes at once, agreeing to the second and to the byte: the PDF's own /CreationDate; bitcoin.org's own filesystem, recovered as X-Archive-Orig-Last-Modified: Tue, 24 Mar 2009 17:33:15 GMT; and a High Court expert's report on the copy the court itself used as its control. A self-claim, a web server the author did not run, and an expert cross-examined on his work — all naming the same instant and the same bytes.
The judgment also records that OpenOffice 2.4.0 was released on 26 March 2008 (¶271.1) — a floor on any document claiming that toolchain — and states the forgery method plainly (¶123): a file could be made “by downloading and running that software on a computer (or virtual computer) with a backdated clock.” Which is precisely why the dating above uses content rather than metadata.
The fourth version, and when transaction fees entered the paper
The 11 November 2008 version is in no public hands. But Appendix PM3 to Patrick Madden's First Expert Report analyses it in detail, and that analysis settles two things this page could not previously answer.
Its fingerprint — so any candidate copy can be checked
BWP-NB1 MD5 3e5e11e1e3208d2829e887fb1c86bd05
SHA256 e6cc7c952c688b234f9872c3e2f50060ae6556fd27925cba503c6460048e50a9
created 11 Nov 2008 08:00:34 at UTC−08:00 Writer / OpenOffice.org 2.4 / PDF 1.4
trailer /ID <693BFE527899A65C197B4CD42561A6C4> <693BFE527899A65C197B4CD42561A6C4>
startxref 182801 → roughly 184,300 bytes
Note the /ID halves are equal — the mark of a file written once and never re-saved, the same test that exposes the modern re-typesets described above. Madden reports that the first few kilobytes are an identical match to the October draft, that all three versions embed the same fonts in the same order, and that he found no indication of manipulation.
It carries the transaction-fee text — two days after fees were proposed
Madden reports three strings unique to this version among the three:
“The incentive is also funded with transaction fees” “The output value of every transaction is equal to the input value minus a transaction fee” “and the incentive is increased by the total transaction fees in the block”
We checked all three against the two files we hold: absent from both. The canonical says something close but not the same — “The incentive can also be funded with transaction fees. If the output value of a transaction is less than its input value, the difference is a transaction fee…” — so the block was written once for November and edited again for March. The October draft has no fee text at all.
Which dates the arrival of the fee mechanism precisely:
3 Oct 2008 no transaction fees in the paper 9 Nov 2008 Satoshi proposes transaction fees on the mailing list 11 Nov 2008 the fee text is in the paper — first wording ← two days later 24 Mar 2009 the same block reworded to the form everyone knows
This page previously called that the most interesting open question about the paper's text. It is now answered — not from the file, which nobody public holds, but from a forensic analysis of it filed in court.
Provenance and limits. These figures come from Appendix PM3 §§41–58, obtained as extracted text from a publicly published dataset of the trial bundle. Before relying on it we ran a control: PM3 quotes internal /ID and /CreationDate values for the two versions we already hold, and both matched our own files exactly — byte-level values the extraction could not have guessed. Madden also records that he could find no other copy of this file anywhere: not in Dr Wright's disclosure, not on archive.org, not on the Wayback Machine's captures of bitcoin.org, and no hit for either hash on the open web. We still do not have the file. What changed is that anyone who finds a candidate can now settle it in one command.
The chronology, with its proofs
Every line carries the record that dates it, and the class of that record. Nothing here rests on repetition or on conventional account.
| date | event | what dates it |
|---|---|---|
| 2008-08-18 | bitcoin.org registered | RDAP, still live. Registrant not recorded; the attribution to Satoshi is the court's agreed background (¶23.1), not a registry fact |
| 2008-08-20 | Satoshi emails Adam Back — the earliest known Satoshi communication | trial exhibit {L3/190}, quoted at ¶661 |
| 2008-08-21 | Back replies, pointing him to b-money | {L3/194}, ¶663 |
| 2008-08-22 | Satoshi emails Wei Dai for the b-money year | published by Wei Dai; quoted in The Sunday Times, 2014 |
| 2008-10-03 | the surviving draft's creation date | the file's own metadata — corroborative only |
| 2008-10-05 | nakamoto2 SourceForge account created | archived user page (server-set) and ¶23.3 |
| 2008-10-31 | the paper announced, abstract quoted inline | metzdowd archive, in server-recorded arrival order |
| 2008-11-08 | Satoshi quotes his own Section 4 on the list | msg 014831 — 41 words, identical to the shipped PDF |
| 2008-11-09 | transaction fees proposed — the draft's late bound | msg 014842 |
| 2008-11-11 | a fourth version is created, 08:00:34 at UTC−08:00 — carrying the new transaction-fee text | Bohm §19 for the file; Appendix PM3 §§42–52 for its hashes and its unique text. Still not public; we do not hold it, but it can now be identified on sight |
| 2008-11-17 | the list moderator ends the discussion, 4h 19m after Satoshi's last post | metzdowd archive — “ADMIN: end of bitcoin discussion for now.” The 52-day silence that follows is a moderated list being moderated, not a withdrawal |
| 2008-12-08/09 | the paper uploaded to SourceForge | ¶23.5. That file is not preserved and its size was never captured |
| 2009-01-03 | the genesis block | proof-of-work — the only unforgeable class here |
| 2009-01-18 | a member of the public downloads the paper, 13:27 GMT — and it is the 11 November version | Bohm §19. He read the cryptography list, downloaded it, and still had the file in 2023. This is what was on offer to the public in January 2009 |
| 2009-02-01 | Satoshi sends Bohm 100 BTC, unprompted | Bohm §15, under a statement of truth. On-chain, in principle — blocks ≈2406–2600; we have not yet located it |
| 2009-03-24 | the canonical file created, and released to SourceForge the same day | the file's metadata and SourceForge's own activity feed (“176 days ago”, captured 2009-09-16) and ¶23.9 |
| 2009-11-28 | earliest archived bytes of the canonical | SourceForge mirror — an actual archived PDF. Download it; it hashes to b1674191…. This is the capture the court's expert verified. |
| 2013-04-06 | the canonical embedded in block 230009 | proof-of-work |
The announcement's own receipt, and a clock that was blamed wrongly
The paper was announced by an email. That email's arrival was recorded by a server that belonged to neither the sender nor the recipient — and that record is public, though it took a while to find.
- The trace chain is archived, under a different header name. Mailing-list archives
normally discard the SMTP receipt chain, and five of them return nothing when searched for
Received:. Gmane is a mail-to-news gateway: it renames those
headers Original-Received: so they do not collide with NNTP's own
path headers. The announcement is gmane.comp.encryption.general
article 12588, and it carries the whole chain:
The moderation queue is not a property of this message: across all eighteen of that sender's list messages it runs from 7 minutes to 60 hours, median about 16 hours. The announcement waited 28h55m.
stamped by time what it is Date: 2008-10-31 18:10:00 UTC written by the sending software — self-asserted anonymousspeech.com 18:20:18 UTC the sending provider's own SMTP service green.metzdowd.com 18:20:34 UTC the list server's receipt — a third party's clock green.metzdowd.com 1 Nov 23:15:35 UTC the moderated release to subscribers - A widely-repeated puzzle, and the answer is the other machine. Two January 2009
emails appear to have been logged by their recipient's server before the sender's
server stamped them — an impossible ordering of about 37.6 minutes, published as
unexplained in 2020. With only two machines in view, a difference tells you they disagree and
nothing about which one is wrong. A third clock settles it:
Four messages sent across one evening in August 2008 carry deltas spread by one second. A batching queue's delay depends on when a message was sent; a clock offset does not. So it is a clock — and it is the recipient's, running slow, not the sender's running fast. The offset also moves (≈25 min in Feb 2008, ≈90 min in Aug 2008, ≈37 min in Jan 2009), so it is only meaningful quoted with a date.
pair difference evidence anonymousspeech ↔ metzdowd 6–19 seconds 18 messages, 86 days — they agree finney.org ↔ metzdowd 36:40–37:33 Jan 2009, from that host's own outbound list mail
What this does not do. A list fans one message out and copies the existing relay lines verbatim into every envelope, so extra copies are tamper-evidence, not extra witnesses — the arrival time rests on the list operator's clock. And none of these clocks belongs to a person: 124.217.253.42 is a remailer's relay used by every customer of that service, so its +0800 offset is a server setting and has never been evidence of anybody's timezone. This dates a document. It identifies nobody.
What was searched, and is not there
The part that makes the rest usable. These are searched negatives, not untried routes — recorded so nobody repeats them.
- The 2008 bytes — on six independent archives. No capture, download or published
hash of bitcoin.org/bitcoin.pdf from 2008 exists anywhere. This is
now established against six instruments, not one:
Three of the six bottom out at the same July 2010 capture — worth knowing, because two archives sharing an earliest date looks like corroboration until one turns out to be quoting the other. The two national archives were checked against that failure mode and pass it: zero exact-second timestamp collisions with the Internet Archive. Both hold the canonical, byte-verified by fetching and hashing.
archive earliest record of that URL Internet Archive 2010-07-04 — 499 CDX rows; two real payloads ever, neither is the missing file Common Crawl none. CC-MAIN-2008-2009 queried by name — zero captures of the host archive.today 2016. Its one 2010-dated row is labelled “archived via web.archive.org” — a re-archive of the row above, not an independent capture bitcoin.org's own git 2011-08-31. Two commits ever touch the file; the blob at the first is the canonical, verified by git-blob hash without downloading Arquivo.pt (Portugal) 2014-11-27. Host-wide: zero rows before 2010 Vefsafn.is (Iceland) 2011-08-04 - Any commitment by Satoshi on the block chain. He knew exactly how — on
9 December 2010 he wrote out the transaction himself
(txout: 0.00 <appid, hash> OP_CHECKSIG) and endorsed Hal Finney's
simpler method of converting a file's hash to an address and paying it. He used neither.
Every on-chain channel has been scanned across his entire active era, for all known versions, in
both byte orders, under MD5 / SHA-1 / SHA-256 / double-SHA-256 / HASH160:
The two hits are both derived from the canonical paper and both are later third-party acts: a 2013 bulk send of 83 one-satoshi outputs, and a 2014 bot that stamped 100 files in eight weeks. Nothing at all for the 11 November version — which could be tested for without holding a byte of it, since its hash is published in the court record. If anyone had held that file and wanted to prove it, this was the cheap and publicly-endorsed way, and it cost one cent. Every negative above has a passing control behind it; an empty result and a broken query are indistinguishable without one.
channel scope result coinbase scriptSigs whole chain nothing non-coinbase scripts, 2009 by script type nothing hash-to-address (Finney's method) whole chain two — both third parties, 2013 and 2014 output scripts (Satoshi's own method) blocks 0–150,000 nothing input scripts blocks 0–150,000 nothing - The August 2008 draft. Even a successful capture would not have saved it — that URL was a file-host landing page, not the file. Fetching an actually-archived neighbouring page from the same host in 2009 shows what such a capture preserves: a filename, a byte size, a download count, and no payload. The archive could only ever have recorded a description of the draft. Its link — upload.ae/file/6157/ecash-pdf.html — has 20 Wayback captures, every one a 404, 302 or 406, earliest 2020: already dead when first crawled. The three obvious holders (Wei Dai, Adam Back, Gregory Maxwell) were asked years ago and do not have copies; Hal Finney was asked and died in August 2014.
- The December 2008 SourceForge file. Replaced on 2009-03-24. Its size was never captured — there is a Wayback gap for that project from January to September 2009, and the file-detail page is the only page carrying a size. Not recoverable by machine — and it was downloaded once, see below.
- The cypherpunks cross-post. The announcement was forwarded to cypherpunks@al-qaeda.net on 1 Nov 2008 — one of several independent relays of the cypherpunks mailing list, the domain being its operator's choice and unrelated to its subject matter. That node ran 2005–2013 without public archives; the surviving cypherpunks archives cover the 1990s and 2013 onward. The second list it was cross-posted to is an empty stub — one subscribe confirmation.
- The COPA expert reports (Madden, Rosendahl) are referenced by exhibit number throughout the judgment but are not published. The judgment quotes them extensively; that is what exists publicly.
How these archives actually behave
Every negative on this page depends on an instrument doing what it is assumed to do. Three of them do not, in ways that silently manufacture wrong answers. Recorded because anyone re-running this work will hit them.
- A wildcard plus a match-type is a literal asterisk. Sending a CDX query both a trailing * and matchType=prefix makes it search for a URL containing an asterisk. It matches nothing and returns an empty list — indistinguishable from “never captured”. A sweep of ours reported zero captures for one of the most heavily archived pages on the web until a control pattern caught it.
- Both major indexes are keyed host-first. The Wayback CDX index and Common Crawl's public index run the same software and key URLs by host. A path-only pattern such as */bitcoin.pdf is therefore not expressible, and returns nothing regardless of what was captured. “Did any host anywhere serve this file” is not an answerable question on either — it needs a columnar index where the URL path is a queryable column. The workable substitute is to enumerate candidate URLs from documents that name them, and query each one.
- Common Crawl's ARC-era digest includes the record separator. Its index reports a base32 SHA-1 that is computed over the response body plus a trailing newline, so it never equals a clean hash of the file. Comparing the two produces a guaranteed mismatch on every record. A 2012 capture of bitcoin.org/bitcoin.pdf carries a digest matching nothing known; fetching the record, stripping one byte, and hashing gives b1674191… — the canonical file. Any cross-system hash comparison must be calibrated against a file you already hold.
- And one that is simply gone. CiteSeerX — an autonomous crawler that stored PDFs from the open web with crawl metadata, and the obvious place to look for a dated early copy — is decommissioned. citeseerx.ist.psu.edu now redirects to an Internet Archive snapshot, and its search endpoints answer nothing.
A 404 is not always an absence. On Common Crawl's index a 404 means “no rows for that URL”, not “no index” — the 2008–2009 collection answers normally for google.com and wikipedia.org while returning 404 for bitcoin.org. Before reading a 404 as evidence of absence, prove the endpoint can return anything at all.
How many people downloaded it
SourceForge still publishes its own download statistics, month by month, back to the project's registration. No key, no login.
https://sourceforge.net/projects/bitcoin/files/stats/json?start_date=2008-11-09&end_date=2009-06-30 2008-11 0 2008-12 1 <- the whitepaper was the ONLY file in the project that month 2009-01 141 <- v0.1 released 8 Jan 2009 2009-02 49 2009-03 59
Satoshi uploaded the paper to SourceForge on 8/9 December 2008 and the software on 8 January 2009 (COPA v Wright, agreed chronology ¶23.5 and ¶23.7). So in December 2008 the project held exactly one file — and it was downloaded once.
Checked across four independent query windows; all return 1, and an isolated December query returns total: 1. Reproduce with verify/sourceforge_download_stats.py.
What this figure is not
It is a project total, not a per-file one — the API exposes no per-file breakdown for that period, and the step to “the whitepaper” comes from the chronology, not from the API. Whether an uploader's own fetch is counted is undocumented, as is how bots were filtered in 2008. Counts are monthly buckets.
And the December figure is the only clean one. The software went up on 8 January 2009, so from January the project total mixes paper and software and cannot be attributed to either. The December file lived until 24 March 2009; over its whole life it was taken somewhere between 1 and 83 times — 83 being the cumulative count the 2009-11-29 listing shows for the Research Paper package, which also includes the March replacement's downloads.
So the defensible statement is narrow: in December 2008, when it was the only file in the project, it was downloaded once. That is worth knowing because it is the opposite of what one would assume — and because it means “ask the people who downloaded it from SourceForge” was never a search strategy.
But we now know which version was on offer
The December file was replaced on 24 March 2009, so whatever it was, it was not the canonical. Nicholas Bohm downloaded the paper on 18 January 2009 at 13:27 GMT and his copy carries a creation date of 11 November 2008. So the version the public could obtain in that window was the fourth version — not the October draft, and not the canonical.
The limit, stated: Bohm does not say where he downloaded the PDF from — he names SourceForge or GitHub only for the software. So this does not prove the SourceForge file was the 11 November version; it establishes what was publicly available, which is the question that actually matters. Its size and MD5 would still be recoverable from SourceForge's own frs_file table, whose schema is archived and does carry both fields — but that route is now confirmed closed: every SRDA host is dead (no DNS, or 503), no copy survives on archive.org, Zenodo or Notre Dame's own repository, and the successor collection (FLOSSmole) was enumerated file-by-file for four monthly dumps — it carries no file-release table at all, in any month. What remains is not a search but a person.
Can any of this ever prove Satoshi wrote it?
No. And that is a fact about the evidence, not a gap in the searching — so it is worth stating precisely rather than leaving as an impression.
Two questions get run together constantly, and they behave completely differently:
| the question | can it be settled? | |
|---|---|---|
| which file | which bytes did the author publish, and when? | Yes, in principle. It is a search problem, and most of this page is its answer |
| who wrote it | is this text that person’s composition? | No. Not now, and not by any future discovery |
Why the second one is closed
To establish authorship by machine you would need a digital signature over the document, made with a key established as the author’s independently of the claim. Three things stand in the way, and the third is the one usually missed.
- No such signature exists. The keys we can call Satoshi’s — by the convention that the genesis coinbase key’s holder is Satoshi — have signed exactly two things, ever: the transaction that paid Hal Finney 10 BTC in block 170, and the one that spent its change in block 181. Both are transaction signatures. A Bitcoin transaction signature covers a hash of the transaction; a message signature covers a hash of the message. For one to double as the other you would need a second-preimage collision in SHA-256 — which is the thing SHA-256 exists to prevent.
- Nobody but the key-holder can create one. That is not a research obstacle. It is what a signature scheme is. Those keys have been dormant since 2011.
- And even a signature would not prove authorship. If the key-holder appeared tomorrow and signed the canonical paper, it would establish one thing: the holder of this key endorses this document. Not who composed it. People sign documents they did not write — that is what signatures are for. Authorship is not a cryptographic property of a document, and no amount of cryptography makes it one.
So the honest ladder looks like this, and the canonical paper sits near the top of what is achievable rather than short of something that was ever available:
| standard | status |
|---|---|
| a signature by a known-Satoshi key | impossible — see above |
| an on-chain commitment by the author | none exists — five channels, all scanned, all controlled |
| a hash published by a 2009 server | yes — SourceForge’s own file API published d56d71ec…c042 for bitcoin.pdf, and it matches |
| independent custodians holding identical bytes | yes — SourceForge, the Internet Archive, Arquivo.pt, Vefsafn.is, and the block chain |
| forensic examination in a contested court | yes — used as a control copy in COPA v Wright |
| internal evidence bracketing the date | yes — the b-money citation, on both sides |
The canonical whitepaper is among the best-attested documents of its era. It is not, and cannot become, a verified-authored one. Anyone offering you cryptographic proof that Satoshi wrote a particular file is selling something the mathematics does not contain.
So — is this “the real whitepaper”?
You have to say which one, and then the answer is exact.
As “the paper as it stood when it was announced in October 2008” — the 3 October draft is about as established as a document gets: byte-identical from two unrelated hosts, its hash in two independent 2015 records, confirmed by a participant from the 2008 thread, a forensic control copy in the High Court, sharing six byte-identical font programs and its entire toolchain with the canonical, and bracketed on both sides by evidence that is not its own metadata.
As “the canonical paper, the one bitcoin.org serves” — that question is now closed. Its bytes are in the block chain; its creation instant is confirmed to the second by a web server the author did not run; and a High Court expert publishes its MD5 and SHA256, both matching the file recovered from the chain. Self-claim, server record and adjudicated finding agree completely. There is nothing left to establish about it.
What is not true, and we will not pretend otherwise: no 2008 cryptographic timestamp exists for any version. The earliest recorded hash is January 2015. The early-November download rests on a pseudonymous party's word — corroborated by content, but not anchored. And it is not demonstrated to be the exact bytes behind the 31 October link, only the simplest explanation of every observation.
That residual doubt is not a gap in this research. It is a property of the 2008 record: nobody hashed the file at the time, and no one can retroactively. Anyone claiming cryptographic certainty about an October 2008 document is overstating. What can be done is to state exactly where the line falls — which is what this page is for.