Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 43980126C for ; Fri, 18 Sep 2015 16:22:11 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-ig0-f182.google.com (mail-ig0-f182.google.com [209.85.213.182]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id A9A59276 for ; Fri, 18 Sep 2015 16:22:10 +0000 (UTC) Received: by igbni9 with SMTP id ni9so20893594igb.0 for ; Fri, 18 Sep 2015 09:22:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vinumeris.com; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=8rkFXRoqSMH+Swvj+e1Tuj1zm8xzKoGt7xerrVU9DeY=; b=SoYz/+HxCa0yX5VMPVKpT8wabSy0V821Go1EnjOPM7TWLwxdJ/ECQ4fNnIotBbe+zF 99duMDUyVAmhaRKsGPdJ6sC1UbyjaUqt/FCu0OBLwHLuOMDNACqol0hqbwHGiVkQZEVz bDOB/mw+K0u2x8+FBlAPucLYoWEce3ecJFE+I= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=8rkFXRoqSMH+Swvj+e1Tuj1zm8xzKoGt7xerrVU9DeY=; b=MXI9njRfPN23ccK6rY4OTz97gUNEtDebiLTnD+hLBRVi3hnbgUC+2kPRzRQ2VFUYHV Fr+fDzJ+SD0CczLNRbR/FurVLWbharLB3xUwr+PfcL51ZTQV/wSksQCWd03vObh/13V6 nclKO3T84Z5XXGjrDvAEE9A2nTWdRcVCgD5gxI772o2OtJfVfRfeLsKOMPTrZYRTShCz Ctp7My7lc5XP0tP3OR6hFFgcq30VH/qpu2rzgRGn3qhKEvJdkzee9tZ9+JXwjer7nanj bRgKNz0/3pB1dwzOpR1d7O6bAP2djv6/vqHN7FilGmGHQM+D+ARhDnkQHsLwe2iNSLxl krGw== X-Gm-Message-State: ALoCoQnJLw+NKTFub4U7OnJaM08Ht29L7oHlug4hfkBGheMOb1WG4DwvcOqdw8Wd1xpibvhogc5z MIME-Version: 1.0 X-Received: by 10.50.66.146 with SMTP id f18mr34277640igt.83.1442593329973; Fri, 18 Sep 2015 09:22:09 -0700 (PDT) Received: by 10.50.192.233 with HTTP; Fri, 18 Sep 2015 09:22:09 -0700 (PDT) In-Reply-To: <20150918000718.GA5251@amethyst.visucore.com> References: <20150916222928.GC32688@muck> <20150918000718.GA5251@amethyst.visucore.com> Date: Fri, 18 Sep 2015 17:22:09 +0100 Message-ID: From: Mike Hearn To: "Wladimir J. van der Laan" Content-Type: multipart/alternative; boundary=047d7bdc09f6fd2c3e052007ee1c X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HTML_MESSAGE,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: Bitcoin development mailing list Subject: Re: [bitcoin-dev] libconsensus and bitcoin development process X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Sep 2015 16:22:11 -0000 --047d7bdc09f6fd2c3e052007ee1c Content-Type: text/plain; charset=UTF-8 > > What one needs for that, I think, is a library that communicate with the > node, and which offers functionality abstractly be similar to 'git pull': > give me the tree path from my current known tip to the best tip, and supply > the block hashes (and block data) along the way. > This is exactly what SPV libraries like bitcoinj do: they know how to build a block locator, request the blocks forward from the common branch point, and handle re-orgs onto whatever the current best chain are by downloading data from a full node. If your official position is people should all use bitcoinj to do things like build extra indexes, then great. Send them our way. It already knows how to calculate a UTXO set indexed by address. --047d7bdc09f6fd2c3e052007ee1c Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
What one needs for that, I think, is a library t= hat communicate with the node, and which offers functionality abstractly be= similar to 'git pull': give me the tree path from my current known= tip to the best tip, and supply the block hashes (and block data) along th= e way.

This is exactly what SPV librari= es like bitcoinj do: they know how to build a block locator, request the bl= ocks forward from the common branch point, and handle re-orgs onto whatever= the current best chain are by downloading data from a full node.

If your official position is people should all use bitcoinj= to do things like build extra indexes, then great. Send them our way. It a= lready knows how to calculate a UTXO set indexed by address.
--047d7bdc09f6fd2c3e052007ee1c--