Being frustrated with launch delays recently, I was wondering about the effectiveness of keeping wallets secret via a password or waiting to release it, and how ineffective that's proven.
I was wondering if it is technically reasonable to provide a wallet immediately, with the hash (exact) of the genesis block (or an ECDSA pubkey that must sign the genesis block), so the actual mining operations cannot start until after that block is released. Obviously, a bunch of users could modify the wallet of FooCoin to accept a different genesis block (released earlier), though then one can't really call that coin FooCoin.
Can someone clarify if this is doable, or why not?
i think i understand what you mean : you want to be able to widely distribute a client sourcecode and/or binaries, without granting anyone the ability to mine on that blockchain until _you_ decide it's ready ?
I guess you could then make that client "wait" for some signed message from you, including the genesis data.
(the client would include your public key so it can verify your signature).
But then ... another "problem" appears : what would eventually prevent you from later messing around with the genesis block, eventually changing it, invalidating it or whatever ?
A solution to this could be another client release, hardcoding the previously broadcasted genesis data, but then .... you'll force your users to download your client again, making the whole thing useless
early BTC users joined the bitcoin utopia because they could trust the client for behaving exactly as stated in its sourcecode ; includign above magic into a new client would .. go against that