Difference between revisions of "Talk:BIP 0020"

From Bitcoin Wiki
Jump to: navigation, search
(Clean up old stuff)
(Why all the crazy representation stuff?: new section)
Line 38: Line 38:
  
 
[[User:Jerfelix|Jerfelix]] 04:09, 13 June 2011 (GMT)
 
[[User:Jerfelix|Jerfelix]] 04:09, 13 June 2011 (GMT)
 +
 +
== Why all the crazy representation stuff? ==
 +
 +
Amounthex, amountdec, exponents.. wtf? Why not settle on one normalized representation, this complicates parsing (and testing of parsers) for no good reason.

Revision as of 05:14, 4 August 2011

Has anybody thought about including network addresses (IPv4/IPv6) of the receiving client into the URL? This way, a payment transaction could be sent directly (in addition to sending P2P of course). --Goonie 11:21, 23 July 2011 (GMT)

Fallback URI

On Android an app can register to open with a normal web URI. This has the advantage of acting as a fallback URI in case there is no app that supports bitcoin:. For example we could propose https://en.bitcoin.it/wiki/Send/<address>[?][amount=<size>][&][label=<label>][&][message=<message>]. If the user had a mobile app that supported bitcoin it would have registered https://en.bitcoin.it/wiki/Send/ and be launched. If the user did not have such an app their browser would launch and be directed to https://en.bitcoin.it/wiki/Send/. This page could then inform the user about various apps that support bitcoin transfers and possibly have a link to MyBitcoin as well. Maybe https://bitcoin.org/Send/ would be more appropriate, though that one might not be updated often enough.

  • iPhone support

There is even a way to have this work on iOS devices. Have the web page redirect to the standard bitcoin: scheme. If an app is present to support this the app will launch, if not the browser the will stay open at the explanation page.

  • Upshot

This fallback proposal will make bitcoin QR codes meaningful regardless of if the user has a bitcoin app installed.--BitMark 16:05, 2 April 2011 (GMT)

Use-cases - buy this link

On the buy-this link, perhaps we should also incorporate an optional transaction id or something which would be passed along to the bitcoin client. Not really transaction but some sort of arbitrary data, only meaningful to the merchant. Something an online merchant can use to verify which transaction it has received is relevant to a purchase. Dantman 20:45, 18 April 2011 (GMT)

Incorrect Syntax

The proposed syntax doesn't seem to capture the intent of the design. Here's how it reads on the wiki page:

bitcoin:<address>[?][amount=<size>][&][label=<label>][&][message=<message>]

The above syntax describes the question mark and ampersands as optional, but really they should be mandatory as a separator if multiple parameters are included. According to the proposed specification, above, the following would be an acceptable URI, which I don't believe is a good thing (note the absence of the optional question mark and ampersands):

bitcoin:1NS17iag9jJgTHD1VXjvLCEnZuQ3rJED9Lamount=50X8label=Luke-Jrmessage=Donation%20for%20project%20xyz

Perhaps a more exact/correct way to describe the proposed syntax would be:

bitcoin:<address>[?<parameters-list>]
  where <parameters-list> is one or more of the following, separated by ampersand
[amount=<size>]
[label=<label>]
[message=<message>]

The BNF gets close to describing this, but also has issues. The most glaring to me is this line:

messageparam    = "label=" *uchar

(Seems to me that messageparam should have the literal "message=", as opposed to "label=".)

In addition, the BNF includes a parameter named "version" (which is not in the earlier specification), and also doesn't state that parameters are separated by ampersands.

Jerfelix 04:09, 13 June 2011 (GMT)

Why all the crazy representation stuff?

Amounthex, amountdec, exponents.. wtf? Why not settle on one normalized representation, this complicates parsing (and testing of parsers) for no good reason.