Bitcoin Forum
October 23, 2017, 03:16:12 AM *
News: Latest stable version of Bitcoin Core: 0.15.0.1  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: simplified payment verification in the official client?  (Read 2587 times)
alkor
Full Member
***
Offline Offline

Activity: 137


View Profile
November 01, 2013, 04:32:17 PM
 #1

For those of use who want to keep using the official client but are worried about the growing blockchain size, are there any plans to add simple payment verification (SPV) to the official client similar to what is done in bitcoinj?

Is the current lack of support for SPV due to lack of developer time and resources, or are there still any unresolved security issues?

1508728572
Hero Member
*
Offline Offline

Posts: 1508728572

View Profile Personal Message (Offline)

Ignore
1508728572
Reply with quote  #2

1508728572
Report to moderator
1508728572
Hero Member
*
Offline Offline

Posts: 1508728572

View Profile Personal Message (Offline)

Ignore
1508728572
Reply with quote  #2

1508728572
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1508728572
Hero Member
*
Offline Offline

Posts: 1508728572

View Profile Personal Message (Offline)

Ignore
1508728572
Reply with quote  #2

1508728572
Report to moderator
Gavin Andresen
Legendary
*
qt
Offline Offline

Activity: 1652


Chief Scientist


View Profile WWW
November 01, 2013, 09:26:55 PM
 #2

Please don't say "official client" -- there is no "official."

"Reference implementation" is more accurate.

Lack of SPV mode in the reference implementation is mostly due to lack of testing / code review resources.

How often do you get the chance to work on a potentially world-changing project?
Mike Hearn
Legendary
*
expert
Offline Offline

Activity: 1526


View Profile
November 02, 2013, 04:33:48 PM
 #3

Well, also that, and it hasn't been implemented ...

What you are calling "SPV" is really a big pile of different optimisations. If you wanted to run bitcoind on a smartphone, for instance, it's insufficient to just only download a Bloom filtered block chain. You'd also have to reduce memory usage a lot, like by not storing all the block headers either. That would violate a bunch of assumptions in the code. You'd also have to optimise the amount of disk IO, because disk on phones is really slow. It's a fair amount of work.

If all you want is a desktop wallet with a Bitcoin-Qt like UI, but with SPV performance/security, you can check out MultiBit, and if that isn't your kettle of fish - why not work on a competitor? So far we have MultiBit, Hive, MacWallet and something for Ubuntu Touch called just "Bitcoin Touch", all of which are using bitcoinj. Most of those apps aren't even written in Java.

So we're developing quite a nice ecosystem there, and building the wallet app of your dreams has never been easier. It's all documented, there is lots of example code and so on. You can actually find a template for a wallet app in the bitcoinj git master branch that has a nice UI with slick animations, etc - it's a really tiny amount of code, even in Java which is kind of a verbose language. You can also use bitcoinj directly from Python, Ruby, Lisp (clojure) and a mixed paradigm functional language called Scala, all using their JVM implementations.

edit: I elaborated on that theme here
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!