summaryrefslogtreecommitdiff
path: root/e7/46f830b6f7dc350cbece19d920b828eb929be2
blob: 071f1e3e29f65b777bc1a1522590adf0585e2f67 (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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Return-Path: <rgrant@rgrant.org>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 3DAFC408
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue,  2 Jan 2018 11:32:25 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-lf0-f49.google.com (mail-lf0-f49.google.com
	[209.85.215.49])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 39B8BA7
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue,  2 Jan 2018 11:32:24 +0000 (UTC)
Received: by mail-lf0-f49.google.com with SMTP id y71so4341141lfd.12
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 02 Jan 2018 03:32:23 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=rgrant-org.20150623.gappssmtp.com; s=20150623;
	h=mime-version:sender:in-reply-to:references:from:date:message-id
	:subject:to; bh=gUhA+7miy0p8kaG6J8/bgTbOL0zPCEQA37MSRrbfJcw=;
	b=ymZHDvmdQwrn5EBC8zU3Z2JLYssMJU2B3Ql3Amvd90IQZK+0E95xtr7Yw2H45Aqjv0
	tRsU5+FOymBMDri3UGAt8JKZ1w7YNDsgVezWw8fIoHQ07OVPNeyyQ80qoO6c1vdVSBzl
	StDhG24sTIZD/9r+7VDR8QOe70YqEwdFOmuP3K6LtnhqCUxwR4YfQMz3Hs4quS/WUeoG
	DWK6s8ZdbAV2ePYzJ6yaWuwnOyWc2Yh3wkIwTxTNCKUcaOEwJpKg61iThdPdhzkqfmMG
	LEO91tR5w3raR6AgE50kQk3eU2umbq1hptba4iizeoMXqUBRdUbceLDJFnU8ASpKeUP7
	tCQQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20161025;
	h=x-gm-message-state:mime-version:sender:in-reply-to:references:from
	:date:message-id:subject:to;
	bh=gUhA+7miy0p8kaG6J8/bgTbOL0zPCEQA37MSRrbfJcw=;
	b=l7I1viE5Eh0B6t6KwXJilZXWL7ssBiPTXLEbyf+zVvWOZDyFR09whS0ZzIGjs6o2Me
	YteVa2yxKXhuc86YwpV1u7gnE/Vp42tiO8mK2Jf0hFVwij5tSkjYJYHQtpiGFA8ZT1Cy
	W7HBdNRNrBG47pagu9F6MXujoFyMmimJf3prWBttsW+jR7vpUKQKs0DKVyielGRSa+cO
	o46dzOJss0Mk2ngihGVlFLBX/ZQzq070/jE/IQ5c5TKqBRDKKkYcY2furniH4Iky+4QK
	FCjOhtlZakh3ZeSoWULVWXkc4lT+taM8Fqmmj56uhQulUTJ7KqER6dJOmyGmsOKbocdo
	m2aA==
X-Gm-Message-State: AKGB3mKfvhpS5VoTrLWUVnLTJ1cxhBaOEGbsZSfirOc/g8v56hvbj+n2
	Kb6LNoD5JjgS8+IFhUPZCajHO96IZspfjLytO2BNaQ==
X-Google-Smtp-Source: ACJfBot+QZCozZGgzRlFeHR09EN/R7T82W4tMxRy766YDGsqjtTN0VnHsr25iz4YMRjQ4ayUAhZ9OCfL2sosgPlvC9s=
X-Received: by 10.46.9.69 with SMTP id 66mr26568576ljj.134.1514892742300; Tue,
	02 Jan 2018 03:32:22 -0800 (PST)
MIME-Version: 1.0
Sender: rgrant@rgrant.org
Received: by 10.25.79.10 with HTTP; Tue, 2 Jan 2018 03:31:51 -0800 (PST)
In-Reply-To: <CADvTj4q04dS0pv2rUD9qw30K6++5OjHPwgjpqJ=+MBqaZdropA@mail.gmail.com>
References: <CADvTj4q04dS0pv2rUD9qw30K6++5OjHPwgjpqJ=+MBqaZdropA@mail.gmail.com>
From: Ryan Grant <bitcoin-dev@rgrant.org>
Date: Tue, 2 Jan 2018 06:31:51 -0500
X-Google-Sender-Auth: 912okY5RPaksod-0-4TVGsKk1pc
Message-ID: <CAMnpzfrQ0OKoCGQ5yBiku54dKk6ppj8HO0ZmochzJb_rm2WtjQ@mail.gmail.com>
To: James Hilliard <james.hilliard1@gmail.com>, 
	Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,
	DKIM_VALID,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
	smtp1.linux-foundation.org
Subject: Re: [bitcoin-dev] Decoupling BIP70 Payment Protocol from Wallets
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Tue, 02 Jan 2018 11:32:25 -0000

On Mon, Jan 1, 2018 at 1:50 PM, James Hilliard via bitcoin-dev
<bitcoin-dev@lists.linuxfoundation.org> wrote:
> I propose that we move the BIP70 protocol implementation into a
> browser extension that can communicate with wallets over a simple IPC
> mechanism [...]

As a reminder, there is a W3C Payments API, currently proceeding along
the W3C Recommendation track, which registers "payment handlers" in
the browser, and selects one to complete a transaction:

  https://w3c.github.io/payment-handler/

The purpose of the payments API is to automate all data entry and
handle choices related to common transactions on the Web.  Payment
requests will often ask for information that Bitcoin wallets have no
current need to provide, such as a shipping address.  If shipping
options or other personally identifying information (such as an email
address and a return payment address) are involved, then it is the
chosen payment type's *handler* that is tasked with negotiating with
the user how to reveal the supposedly necessary information.

  https://www.w3.org/TR/payment-request/#the-options-argument

Although it may seem early for wallet makers to consider integration
with a mere W3C Recommendation, it would not be early to choose the
right architecture to build code on, given that this is in the works
for the major browsers.  Development can proceed even in browsers that
have not implemented anything, through an HTML5 Javascript polyfill.
A demonstration which includes payment in bitcoins is already
available, although it leaves as an exercise for the reader exactly
how the txid would be made known to the handler (whether manually
input by paste buffer after copying from an external app, or returned
through IPC):

  https://web-payments.io/
  https://github.com/digitalbazaar/payment-handler-polyfill

From my brief inspection: not bad.  I don't see anything in this spec
that would preclude the workflow of a Bitcoin transaction, whether
on-chain (with the seller's backend marking off confirmations) or
using the Lightning Network.  It even allows the seller to offer a
discount on certain payment methods:

  https://www.w3.org/TR/payment-request/#dom-paymentdetailsmodifier