Received: from sog-mx-3.v43.ch3.sourceforge.com ([172.29.43.193]
	helo=mx.sourceforge.net)
	by sfs-ml-2.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <gronager@mac.com>) id 1UzSmJ-00042N-Gd
	for bitcoin-development@lists.sourceforge.net;
	Wed, 17 Jul 2013 14:32:27 +0000
Received-SPF: pass (sog-mx-3.v43.ch3.sourceforge.com: domain of mac.com
	designates 17.158.236.236 as permitted sender)
	client-ip=17.158.236.236; envelope-from=gronager@mac.com;
	helo=nk11p04mm-asmtp001.mac.com; 
Received: from nk11p04mm-asmtp001.mac.com ([17.158.236.236])
	by sog-mx-3.v43.ch3.sourceforge.com with esmtp (Exim 4.76)
	id 1UzSmH-0007fs-E4 for bitcoin-development@lists.sourceforge.net;
	Wed, 17 Jul 2013 14:32:27 +0000
Received: from macgronager.home
	(pool-108-21-220-181.nycmny.fios.verizon.net [108.21.220.181])
	by nk11p04mm-asmtp001.mac.com
	(Oracle Communications Messaging Server 7u4-26.01(7.0.4.26.0) 64bit
	(built Jul
	13 2012)) with ESMTPSA id <0MQ3008ME4D6NB70@nk11p04mm-asmtp001.mac.com>
	for bitcoin-development@lists.sourceforge.net; Wed,
	17 Jul 2013 14:31:57 +0000 (GMT)
X-Proofpoint-Virus-Version: vendor=fsecure
	engine=2.50.10432:5.10.8794,1.0.431,0.0.0000
	definitions=2013-07-17_06:2013-07-17, 2013-07-17,
	1970-01-01 signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0
	ipscore=0 suspectscore=2 phishscore=0 bulkscore=0 adultscore=0
	classifier=spam
	adjust=0 reason=mlx scancount=1 engine=6.0.2-1305010000
	definitions=main-1307170092
Content-type: multipart/signed;
	boundary="Apple-Mail=_6CBFD6B8-9F70-424E-80C8-8ED706EA8BCA";
	protocol="application/pgp-signature"; micalg=pgp-sha1
MIME-version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Michael Gronager <gronager@mac.com>
In-reply-to: <3DB67FAF-E113-47FE-9043-C22D0F5A4F4A@grabhive.com>
Date: Wed, 17 Jul 2013 10:31:52 -0400
Message-id: <16E9C860-51CA-4274-B852-A816D12B6A5B@mac.com>
References: <CANEZrP0_H9+prDSF92q8a4QzP=fzDM6cTDv0+KcfV9NF9thkmw@mail.gmail.com>
	<3E7894A0-06F3-453D-87F8-975A244EBACF@include7.ch>
	<CANEZrP2jmWkDbpJEm0vd2CKF-prFNbz_ZeNJfDWtSCKb8k5ZXA@mail.gmail.com>
	<2BDA0943-22BB-4405-9AF0-86FB41FD04A6@include7.ch>
	<CANEZrP0McSrVzwv=-qimPyX41EEDmyQdYW5QjPr_i+KWyJZSZw@mail.gmail.com>
	<2F20A509-13A9-4C84-86D7-A15C21BACD53@include7.ch>
	<CANEZrP2yQvmvwP_ZULdS2i+X6L9MeZ+DfidiuZPD2EHwLsN2MA@mail.gmail.com>
	<2A1C412D-414E-4C41-8E20-F0D21F801328@grabhive.com>
	<CANEZrP12V_5Ak0f91RsMziuqXysde102rGeSko=qPBjefy3AeA@mail.gmail.com>
	<8EE501AA-1601-4C28-A32E-80F17D219D3A@grabhive.com>
	<20130717105853.GA10083@savin>
	<3DB67FAF-E113-47FE-9043-C22D0F5A4F4A@grabhive.com>
To: Wendell <w@grabhive.com>
X-Mailer: Apple Mail (2.1508)
X-Spam-Score: -1.9 (-)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
	sender-domain
	0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
	(gronager[at]mac.com)
	-0.0 SPF_PASS               SPF: sender matches SPF record
	-0.4 RP_MATCHES_RCVD Envelope sender domain matches handover relay
	domain
X-Headers-End: 1UzSmH-0007fs-E4
Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Subject: Re: [Bitcoin-development] SPV bitcoind? (was: Introducing
 BitcoinKit.framework)
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Wed, 17 Jul 2013 14:32:27 -0000


--Apple-Mail=_6CBFD6B8-9F70-424E-80C8-8ED706EA8BCA
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

Hi Wendell,

What Peter describes (a hash of the current set of UTXOs as part of the =
coinbase) is already implemented in libcoin, on which you can easily =
build both a bitcoind and any client. Libcoin is a library originally =
based on the satoshi client, and as such it is compatible/replacable =
with "master".=20

Have a look at github.com/libcoin/libcoin and look in the =
BlockChain.h/cpp and the MerkleTrie classes then you can see how it =
works.

What is missing from libcoin is a scheme to bootstrap the hash of UTXOs, =
there is some stub code for a p2pool like mining scheme ensuring several =
UTXO hashes every 10 minutes, but I will not have time to finalize it =
the first few months - anyone are of course welcome to help out ;)

Michael


On 17/07/2013, at 09:37, Wendell <w@grabhive.com> wrote:

> Peter,
>=20
> This sounds like a _very_ good idea for a desktop client, and probably =
acceptable to users so long as we take available disk space into =
consideration, and only ever use a fraction of it.
>=20
> Will you implement this?
>=20
> -wendell
>=20
> grabhive.com | twitter.com/grabhive
>=20
> On Jul 17, 2013, at 12:58 PM, Peter Todd wrote:
>=20
>> So what's useful about that? Basically it means your node starts with
>> the same security level, and usefulness to the network, as a SPV =
node.
>> But over time you keep downloading blocks as they are created, and =
with
>> whatever bandwidth you have left (out of some user-configurable
>> allocation) you download additional blocks going further and further
>> back in time. Gradually your UTXO set becomes more complete, and over
>> time you can verify a higher and higher % of all valid transactions.
>> Eventually your node becomes a full node, but in the meantime it was
>> still useful for the user, and still contributed to the network by
>> relaying blocks and an increasingly large subset of all transactions.
>> (optionally you can store a subset of the chain history too for other
>> nodes to bootstrap from) You've also got better security because you
>> *are* validating blocks, starting off incompletely, and increasingly
>> completely until your finally validating fully. Privacy is improved, =
for
>> both you and others, by mixing your transactions with others and =
adding
>> to the overall anonymity set.
>>=20
>> In the future we'll have miners commit a hash of the UTXO set, and =
that
>> gives us even more options to, for instance, have relayed =
transactions
>> include proof that their inputs were valid, allowing all nodes to =
relay
>> them safely.
>=20
> =
--------------------------------------------------------------------------=
----
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> =
http://pubads.g.doubleclick.net/gampad/clk?id=3D48808831&iu=3D/4140/ostg.c=
lktrk_______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development


--Apple-Mail=_6CBFD6B8-9F70-424E-80C8-8ED706EA8BCA
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.19 (Darwin)

iQEcBAEBAgAGBQJR5qrZAAoJEKpww0VFxdGRpPsIAJyvVdrVunnh9f+0PP5QaeMH
2OaIvx2MnYd8APNc9Q8Px1sU3rmbSiwsQi9mLSB/kX4a54VxSka1OtYO/pece8c+
gS1QvVWPRDldqO8OAVWmTAKA0KFvMSIB1BPqwT6zVCFvCNFvXkKykW0OjAflxB4N
qdxmviOrpSM4rJZl++kZGxUrIP+AVqUsVviLag2XKKDs3VEIedkEteHDrY36u1qi
8heFNtJRtK7R0etn2mQ6CGeAACXUtoYVq8Xlo2xZa2ZQsQw9HcI7LAkztrvaBYTC
Bc9g/zays6fI6y7iylCd4a6vqTUOW9sLgJc93585YosGzUwo4UPWpqDPc55r8kw=
=c9cO
-----END PGP SIGNATURE-----

--Apple-Mail=_6CBFD6B8-9F70-424E-80C8-8ED706EA8BCA--