Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: impulse on June 20, 2012, 10:14:31 PM



Title: Roadmap to 1.0?
Post by: impulse on June 20, 2012, 10:14:31 PM
I'm just curious if there is a roadmap anywhere to version 1.0? What are the "must-have" features for a 1.0 release? Are we likely to see a 1.0 release within the next year? Two? More? I assume the next major release will be 0.7, we'll be running out of 0.x headroom pretty soon :)


Title: Re: Roadmap to 1.0?
Post by: gweedo on June 20, 2012, 10:17:58 PM
The major feature of 1.0 release is that it is "so easy that your grandma can use bitcoins"


Title: Re: Roadmap to 1.0?
Post by: Realpra on June 20, 2012, 10:36:11 PM
1. It will take at least 3 years.
2. Scalability issues will have to be solved one way or the other.
3. Public key encryption of commuications between nodes needs to be added. Nodes will know each other only by public key. (prevents node fooling by connection manipulation).
4. The user should have the ability to specify the number of decimals so that satoshis are not the smallest unit.
5. The cryptographic algorithm used might need updating to prevent quantum computer related problems.
EDIT 6. The max blocksize not ignored should be settable by the miners/users, an equilibrium standard should form and evolve from then on.

4/5 are no rush ;)


Title: Re: Roadmap to 1.0?
Post by: Gavin Andresen on June 20, 2012, 11:45:10 PM
The things on my "good enough to be called 1.0" list are:

+ easy enough for my grandma to use
+ secure enough that it'd be hard for my grandma to lose her bitcoins, even if her computer is infected by 11 bitcoin-stealing trojans and then catches fire and explodes.
+ past the December block-reward-drops-to-25



Title: Re: Roadmap to 1.0?
Post by: SgtSpike on June 20, 2012, 11:47:04 PM
The things on my "good enough to be called 1.0" list are:

+ easy enough for my grandma to use
+ secure enough that it'd be hard for my grandma to lose her bitcoins, even if her computer is infected by 11 bitcoin-stealing trojans and then catches fire and explodes.
+ past the December block-reward-drops-to-25

Does the grandma use include "scalable enough to fit on grandma's 40GB Dell hard drive"?


Title: Re: Roadmap to 1.0?
Post by: nedbert9 on June 20, 2012, 11:52:04 PM
The things on my "good enough to be called 1.0" list are:

+ easy enough for my grandma to use
+ secure enough that it'd be hard for my grandma to lose her bitcoins, even if her computer is infected by 11 bitcoin-stealing trojans and then catches fire and explodes.
+ past the December block-reward-drops-to-25

Does the grandma use include "scalable enough to fit on grandma's 40GB Dell hard drive"?


zing...


Title: Re: Roadmap to 1.0?
Post by: Gavin Andresen on June 21, 2012, 12:12:11 AM
I'll buy my grandma a terabyte drive for Christmas.

No, seriously, a better startup experience is part of "easy to use" -- waiting hours for the blockchain to sync sucks.


Title: Re: Roadmap to 1.0?
Post by: FreeMoney on June 21, 2012, 12:24:29 AM
I'll buy my grandma a terabyte drive for Christmas.

No, seriously, a better startup experience is part of "easy to use" -- waiting hours for the blockchain to sync sucks.


'Official' lite client at some point?


Title: Re: Roadmap to 1.0?
Post by: SgtSpike on June 21, 2012, 12:25:55 AM
I'll buy my grandma a terabyte drive for Christmas.

No, seriously, a better startup experience is part of "easy to use" -- waiting hours for the blockchain to sync sucks.

Roger that.  ;)


Title: Re: Roadmap to 1.0?
Post by: bigbeninlondon on June 21, 2012, 11:13:16 AM
'Official' lite client at some point?

This


Title: Re: Roadmap to 1.0?
Post by: grondilu on June 21, 2012, 01:13:12 PM
+ past the December block-reward-drops-to-25

 :o

I'm kind of surprised that even Gavin worries a bit about this.


Title: Re: Roadmap to 1.0?
Post by: ripper234 on June 21, 2012, 01:14:38 PM
+ past the December block-reward-drops-to-25

 :o

I'm kind of surprised that even Gavin worries a bit about this.

It's not that he worries, it's just something that we need to prove as working in production.
There's a difference between testing something in a lab (testnet) and making it work in production ... we need to get this level of confidence.


Title: Re: Roadmap to 1.0?
Post by: grondilu on June 21, 2012, 01:15:23 PM
+ past the December block-reward-drops-to-25

 :o

I'm kind of surprised that even Gavin worries a bit about this.

It's not that he worries, it's just something that we need to prove as working in production.
There's a difference between testing something in a lab (testnet) and making it work in production ... we need to get this level of confidence.

Indeed.


Title: Re: Roadmap to 1.0?
Post by: mc_lovin on June 21, 2012, 03:44:51 PM
I'll buy my grandma a terabyte drive for Christmas.
Hopefully the blockchain won't eat up that terabyte!  ;)  jk

I can't immediately think of anything that should be included in the 1.0 release, but I have a comment..  In the "about" page on the satoshi client, it says "This is expiremental software."  Is that going to stay there forever or will it be removed one day?


Title: Re: Roadmap to 1.0?
Post by: grondilu on June 21, 2012, 03:53:01 PM
I'll buy my grandma a terabyte drive for Christmas.

No, seriously, a better startup experience is part of "easy to use" -- waiting hours for the blockchain to sync sucks.


By the way, is there any plan to implement a "header-only" mode on the main client, as Satoshi described it in his white paper?

PS.  sorry I realize it has been discussed already (https://bitcointalk.org/index.php?topic=7972.0).


Title: Re: Roadmap to 1.0?
Post by: gmaxwell on June 21, 2012, 04:02:10 PM
By the way, is there any plan to implement a "header-only" mode on the main client, as Satoshi described it in his white paper?

People are working on something better than that which won't compromise a node's ability to function as an autonomous fully validating node but will still make things much faster and use less storage.

More important than supporting header only (SPV) mode, but rather the ability to start as a SPV node and sync-up and transition in the background.  But this isn't yet in the immediate pipeline.


Title: Re: Roadmap to 1.0?
Post by: dacoinminster on June 22, 2012, 02:54:19 PM
The things on my "good enough to be called 1.0" list are:

+ easy enough for my grandma to use
+ secure enough that it'd be hard for my grandma to lose her bitcoins, even if her computer is infected by 11 bitcoin-stealing trojans and then catches fire and explodes.
+ past the December block-reward-drops-to-25



Heh. That's on my list too:

http://img210.imageshack.us/img210/9770/016grandma.jpg

(From my Using Memes to Explain Bitcoin (http://bitcoinmedia.com/using-memes-to-explain-bitcoin/))


Title: Re: Roadmap to 1.0?
Post by: fivebells on June 23, 2012, 03:34:16 PM
+ secure enough that it'd be hard for my grandma to lose her bitcoins, even if her computer is infected by 11 bitcoin-stealing trojans and then catches fire and explodes.

I'd be really interested to read any existing discussions about how to reach that level of security.  Does it need specialized hardware or a centralised backup system?  (I know about multisig and how that would help, but it seems as though for that to be effective you would still need a trusted place to stand.)


Title: Re: Roadmap to 1.0?
Post by: maaku on June 23, 2012, 06:08:05 PM
There was talk about using TPM modules to firewall access to private keys. That would help significantly, but I don't think this has advanced to an actual proposal yet.


Title: Re: Roadmap to 1.0?
Post by: Mike Hearn on June 24, 2012, 12:06:41 PM
I think we can get there by supporting 2-factor coins (computer+phone both sign transactions), real world identities for merchants (EV SSL cert signs an assertion of ownership of a Bitcoin key), paper backups of wallets and so on. No hardware needed beyond a smart phone.

I was the one who proposed using TPMs and secure CPU extensions for protection of private keys. The technology is sufficiently specialized that I don't anticipate regular end users having access to it any time soon. Merchants and exchange operators, on the other hand, could well benefit, but the expertise needed to produce such a solution is rare.


Title: Re: Roadmap to 1.0?
Post by: deepceleron on June 24, 2012, 07:29:51 PM
+ past the December block-reward-drops-to-25

 :o

I'm kind of surprised that even Gavin worries a bit about this.

It's not that he worries, it's just something that we need to prove as working in production.
There's a difference between testing something in a lab (testnet) and making it work in production ... we need to get this level of confidence.
You could make a 25BTC generate now and see if it crashes the network.... Testing is worth 25BTC, isn't it?
You'll have to wait to December to test that everybody orphans your 50BTC generate hack block though.

and also...
After we decide that it's out of beta, feature complete and tested, and we won't have any need to reset the blockchain back to block 0?


Title: Re: Roadmap to 1.0?
Post by: AsymmetricInformation on July 01, 2012, 07:22:11 PM
The things on my "good enough to be called 1.0" list are:

+ easy enough for my grandma to use
+ secure enough that it'd be hard for my grandma to lose her bitcoins, even if her computer is infected by 11 bitcoin-stealing trojans and then catches fire and explodes.
+ past the December block-reward-drops-to-25



To solve 'security' for non-computer people, you'd likely need non-computer wallets (paper wallets...grandparents are already familiar with important documents, or so I read).

For a "user-friendly-version install":
1) Test the user's printer.
2) Load some bootable image onto a flash drive.
3) Restart and boot into the flash drive.
4) Have this pristine world generate and print paper wallets.
5) After it reboots back into mac/windows, (on the paper wallets can be instructions for making the equivalent "watch-only" wallet, and something like *ONLY LET THOSE YOU TRUST SEE OR COPY THIS PART OF THE DOCUMENT* for the private keys).

Obviously the "spend problem" is more complicated...funds could be spent:
Within tiny-Linux again, or via a version of "offline transactions", or you could make every transaction immediately dump the remaining/unspent BTC into the "next" paper wallet...needs lots of wallets and not as user friendly, but good for large transactions.
OR, maybe they NEVER spend the BTC...since banks/lenders can use the blockchain to see how much BTC is in a wallet, normies can just borrow USD against the paper-"savings" BTC wallet as collateral (what Zuckerberg does with his FB shares...tax free!). For smaller transactions this would be ideal. (In fact, a BTC payable credit/debit card would make a month's worth of transactions into one transaction...[for transactions that don't need to be anonymous]).

...clearly it depends, to some extent, on new BTC innovations.


Title: Re: Roadmap to 1.0?
Post by: Realpra on July 01, 2012, 07:42:28 PM
@Gavin

BTW could the way passwords are punched in on the main client to unlock wallets be changed?

What I am thinking about is an on screen keyboard with these features:
1. Keys are shuffled each press.
2. Screen-keyboard window is placed randomly on screen.
(Saw it back when I played MapleStory - never in my online bank  ;D)

That way future BTC key loggers will be out of luck.


Title: Re: Roadmap to 1.0?
Post by: westkybitcoins on July 01, 2012, 10:10:13 PM
@Gavin

BTW could the way passwords are punched in on the main client to unlock wallets be changed?

What I am thinking about is an on screen keyboard with these features:
1. Keys are shuffled each press.
2. Screen-keyboard window is placed randomly on screen.
(Saw it back when I played MapleStory - never in my online bank  ;D)

That way future BTC key loggers will be out of luck.

Thing is, that's not very user-friendly for grandma.

Honestly, the usable-by-grandma goal and the grandma-wont-lose-coins goal are mutually contradicting. I'm beginning to wonder if it's even worth trying to achieve both, and frankly if it's not, I'd vote for choosing the coins-are-hard-to-lose goal. Let someone besides the Satoshi client developers worry about how simple and accessible the technology is for grandma--I'm sure other client developers and companies can handle that just fine.


Title: Re: Roadmap to 1.0?
Post by: Realpra on July 02, 2012, 06:32:12 AM
Thing is, that's not very user-friendly for grandma.
In defense of the screen keyboard: Maplestory is played by pretty young kids - if they can do it, surely an un-demented grandmother could.


Title: Re: Roadmap to 1.0?
Post by: ripper234 on July 02, 2012, 07:34:24 AM
Thing is, that's not very user-friendly for grandma.
In defense of the screen keyboard: Maplestory is played by pretty young kids - if they can do it, surely an un-demented grandmother could.

How hard would it be to screen-scrape the password screen?
Sure, it's an extra measure of security, no reason not to implement it ... but it won't protect against capable trojan writers.


Title: Re: Roadmap to 1.0?
Post by: Foxpup on July 02, 2012, 08:57:05 AM
How hard would it be to screen-scrape the password screen?
Sure, it's an extra measure of security, no reason not to implement it ... but it won't protect against capable trojan writers.
Not hard at all. In fact, I think a few (possibly even most) keyloggers take a screenshot on every mouseclick for exactly this reason. The reason not to implement a randomly-changing on-screen keyboard is that it's damn annoying and doesn't really provide much (if any) improved security, and in fact will probably reduce security substantially as it encourages users to use short passwords, due to how damn annoying it is to click a huge number of buttons when the buttons keep shifting positions randomly every time you click one. >:(

Seriously, security features that are annoying are as bad as no security at all because users will actively try to avoid using them properly: people would rather be insecure than annoyed. They may not admit it, but it's the truth. All security features must be designed with non-annoyingness in mind.


Title: Re: Roadmap to 1.0?
Post by: dooglus on July 02, 2012, 10:05:10 AM
I assume the next major release will be 0.7, we'll be running out of 0.x headroom pretty soon :)

After 0.9 come 0.10 and 0.11; they're not decimals.

When a period is used to separate sequences, it does not represent a decimal point, and the sequences do not have positional significance. An identifier of 2.5, for instance, is not "two and a half" or "half way to version three"

Most free software packages treat numbers as a continuous stream, therefore a free software or open source product may have version numbers 1.7.0, 1.8.0, 1.8.1, 1.9.0, 1.10.0, 1.11.0, 1.11.1, 1.11.2, etc.