summaryrefslogtreecommitdiff
path: root/9c/bcd194c001082fcbbf8fa72ff50c0f549ab642
blob: 62a8c4ad7640c53f12cfb4101effecdac07053a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
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 <jgarzik@bitpay.com>) 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 <bitcoin-development@lists.sourceforge.net>;
	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 <jgarzik@bitpay.com>
Date: Thu, 7 Aug 2014 23:38:44 -0400
Message-ID: <CAJHLa0Ok6s5xQcMSeLa69adLBXEaicuXqcg45eZrwYtVFbx-dA@mail.gmail.com>
To: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
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: <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: 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/