So do you know how many of Japanese versions of XP were sold during 2005 and 2007? Because he had started working on the project 2 years before the release.
You don't have to guess "2005 and 2007", or anything like that. If you try to grep the source code of 0.01 version, you will find some places, where "2007" is explicitly revealed, and even the more precise date is present. For example, if you check "sha.h", you will find 24th September 2007:
// This file is public domain
// SHA routines extracted as a standalone file from:
// Crypto++: a C++ Class Library of Cryptographic Schemes
// Version 5.5.2 (9/24/2007)
// http://www.cryptopp.com
#ifndef CRYPTOPP_SHA_H
#define CRYPTOPP_SHA_H
#include
This is the earliest date I found, but maybe after more digging you could find something at the beginning of September 2007. But I doubt there are any earlier timestamps anywhere. Also, from the code structure itself, you can easily deduce, that importing hash functions like SHA-1, was done by Satoshi in 2007, and then he stopped upgrading libraries. His strategy was quite simple: you need a library? So, get the latest version, install it here and now, and then forget about upgrading, if everything works correctly.
Another thing you should also do, is to go through the whitepaper, scroll down to the "References" paragraph, and grab all of those documents one-by-one. Then, you will note, that "hashcash" is the sixth position, but it is also "the third from the bottom". If you use reversed order, then you note that in many lists, Satoshi actually used reversed order. For example, he listed "Visual C++" first, and then added "MinGW" at the first position. The same with other references. Which is quite interesting, because it means, he didn't start from some "Abstract" or "Introduction", but the first paragraph was probably called "Calculations", and he wrote a lot of code, to confirm everything he read in 8th reference about "probability theory and its applications", then created a system based only on public keys alone, without any hashing, using "Protocols for public key cryptosystems", and then jumped into "Hashcash", and downloaded SHA-1 library as a dependency on 24th September 2007, and didn't upgrade it since then (also because later SHA-1 was replaced by SHA-256).
Knowing the type of RNG used in that period is also good
There are some topics on bitcointalk, where you can get more details:
https://bitcointalksearch.org/topic/possible-new-vulnerability-poor-entropy-in-windows-generated-keypairs-113496another thing, he used a single core CPU, that's why he later added multiproccessor support for mining
Yes, but he added those things to his own miners first, and then publicly released them. Which means, he didn't release it from the first day, when he heard about such possibilities. There are many proofs to support that fact. First: he mined 40-bit Genesis Block, and initially planned 40-bit difficulty for mainnet, and 20-bit difficulty for testnet (see November 2008 source code for more details). Second: if you have any multi-threaded program, then it is harder to do that correctly. It is far easier to run N instances of console application, and let your Operating System do the thing, than implement it in C++ in 2009 (maybe also in assembly). Third: he was against GPU arms race, and tried to postpone it for as long as possible, to encourage more people, by offering them the possibility to mine on their CPUs.
he said, he thought Satoshi was some Japanese guy
He definitely was.
Maybe I should be more clear here: I don't think Satoshi is Hal. But I think Satoshi is from Japan. Because I heard some people saying "he is obviously not some Japanese guy". And then I found more than enough proofs, that his whole Operating System had Japanese language enabled. Also, if you want to deduce, that he used Windows XP, and not for example Windows 98, then you can read, what he thought about using some older version of the Bitcoin client, and also read all things, when he mentioned about Windows Vista as "Vista hasn't been tested yet". That word "yet" means, he would also do that, if possible.