From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194] helo=mx.sourceforge.net) by sfs-ml-2.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1XFb1K-00010B-HM for bitcoin-development@lists.sourceforge.net; Fri, 08 Aug 2014 03:39:10 +0000 Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of bitpay.com designates 209.85.223.180 as permitted sender) client-ip=209.85.223.180; envelope-from=jgarzik@bitpay.com; helo=mail-ie0-f180.google.com; Received: from mail-ie0-f180.google.com ([209.85.223.180]) by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1XFb1J-0003pR-KX for bitcoin-development@lists.sourceforge.net; Fri, 08 Aug 2014 03:39:10 +0000 Received: by mail-ie0-f180.google.com with SMTP id at20so5748169iec.39 for ; Thu, 07 Aug 2014 20:39:04 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to :content-type; bh=IdJ/KPQPb3z7Km0kQLod6NOf+OKTEREdYQbe9k6Cihw=; b=g4F6z9knHL6lt5h3zz3TV310unGIVZd0yBcjCpbXUrIIejt9kkn6FtZUBy28aea+sK J/MR6NCMc07gcu3UBBEI51E2J+3oRLT/BZ8FiMck647GiXjMoOXgbfTBdiMxs79DSexv fZ9YKoU29whJLRpqQHtyJzfc3H7sIONfEqHK0I5IkfYRCaPZPNtp6XUyj3bE/hLm6Tob vX3G7qiFz5qAdKGeE3k0j2WqQ6dzA6/nihk2uOtTEi0rL7Gwi1XL3KeZfiRM1skkY1/A HvOG+zMX50JvtcJXrirkPIPsp84+ocdHAR9a5UDk40nkYEZqc52g0SpNeafF3oeR1PUR 07HA== X-Gm-Message-State: ALoCoQnx5Ag6JhFO4ck1DZOGFHae9UF1objOzHdtu1V+T7jCNqHLVpQptkJyf68hA5xn5pUkIB1t X-Received: by 10.50.178.172 with SMTP id cz12mr1404813igc.22.1407469144236; Thu, 07 Aug 2014 20:39:04 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.10.78 with HTTP; Thu, 7 Aug 2014 20:38:44 -0700 (PDT) From: Jeff Garzik Date: Thu, 7 Aug 2014 23:38:44 -0400 Message-ID: To: Bitcoin Dev Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -1.6 (-) 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 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1XFb1J-0003pR-KX Subject: [Bitcoin-development] NODE_EXT_SERVICES and advertising related services X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Aug 2014 03:39:10 -0000 Link: https://github.com/bitcoin/bitcoin/pull/4657 It is not necessary to build all functionality into bitcoind, to form a decentralized network. BitPay's insight open source block explorer API project requires, and runs on top of, bitcoind. Therefore, at the same IP address as bitcoind, other services are made available to the public (scriptPubkey queries, other added-value queries). This results in a decentralized network of "anyone running a full node and an insight server", as a subset of the whole P2P net. One then does not need to trust BitPay's insight server, but may query any number of insight servers from multiple operators, and survey the results. Obviously, we want to build this in a generic, vendor-neutral way. As such, NODE_EXT_SERVICES is advertised via the "addr" P2P message. Nodes that recognize the NODE_EXT_SERVICES bit may connect to that node, query a services list via "getextsrv" P2P message, and then take further action based on the results. The results are quite straightforward: service name, service port (or -1 if undefined), list of string key/value attribs Services may only advertise added services if and only if the external services are at the same IP address that is being advertised. This is not a fully baked proposal by any means, but more of a trial balloon to get discussion moving. There is no need to implement all services inside bitcoind... -- Jeff Garzik Bitcoin core developer and open source evangelist BitPay, Inc. https://bitpay.com/