From 01201d6ce58d7df1d48034bb434a577cceb507fe Mon Sep 17 00:00:00 2001 From: MarcoPon Date: Sat, 19 Sep 2015 19:24:35 +0200 Subject: [PATCH] Created bip-MarcoPon-01.mediawiki URI scheme for Blockchain references / exploration --- README.mediawiki | 6 ++++ bip-MarcoPon-01.mediawiki | 67 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 bip-MarcoPon-01.mediawiki diff --git a/README.mediawiki b/README.mediawiki index 925910c2..4d90c239 100644 --- a/README.mediawiki +++ b/README.mediawiki @@ -373,6 +373,12 @@ Those proposing changes should consider that ultimately consent may rest with th | Suhas Daftuar | Standard | Draft +|- +| [[bip-MarcoPon-01.mediawiki| xx]] +| URI scheme for Blockchain references / exploration +| Marco Pontello +| Standard +| Draft |} diff --git a/bip-MarcoPon-01.mediawiki b/bip-MarcoPon-01.mediawiki new file mode 100644 index 00000000..9c0fe4a2 --- /dev/null +++ b/bip-MarcoPon-01.mediawiki @@ -0,0 +1,67 @@ +
+  BIP: MarcoPon-01
+  Title: URI scheme for Blockchain references / exploration
+  Author: Marco Pontello 
+  Status: Draft
+  Type: Standards Track
+  Created: 29 August 2015
+
+ +==Abstract== + +This BIP propose an URI scheme for looking up blocks, transactions, addresses on a Blockchain explorer, or in general to make proper Blockchain references + +==Motivation== + +The purpose of this URI scheme is to enable users to handle all the requests for details about blocks, transactions, etc. with their preferred tool (being that a web service or a local application). +Currently a Bitcoin client usually point to an arbitrary blockchain explorer when the user look for the details of a transaction (es. Bitcoin Wallet use BitEasy, Mycelium or Electrum use Blockchain.info, etc.). +Other times resorting to cut&paste is needed. +The same happens with posts and messages that reference some particular txs or blocks, if they provide links at all. + +==Specification== + +The URI follow this simple form: + + blockchain:[//chain] + +Where: + +;chain: +: (optional) to uniquely point to a specific chain, the hash of the corresponding genesis block is used (see [http://https://github.com/jtimon/bitcoin/commit/3191d5e8e75687a27cf466b7a4c70bdc04809d39 Bitcoin src/chainparams.cpp]). In principle some kind of alias/mnemonic could also be used, but that is out of the scope of this BIP, and maybe could be developed in another subsequent one. + +;type: +: '''tx''': for transactions. +: '''block''': for blocks (supports both hash or height). +: '''address''': for addresses. + +;hash: +: the relevant hash (or height) to refer to. + +==Examples== + +A transaction on Bitcoin's mainnet: + blockchain:/tx/b462ae6eb8bdae2e060239a2a3ea5d9c3e0f9ef34d9717beb2dcf0ed42cee7da + +A block on Bitcoin's mainnet: + blockchain:/block/00000000000000000119af5bcae2926df54ae262e9071a94a99c913cc217cc72 +or + blockchain:/block/372338 + +An address on Bitcoin's mainnet: + blockchain:/address/16EW6Rv9P9AxFDBrZV816dD4sj1EAYUX3f + +A transaction on Bitcoin's testnet: + blockchain://000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943/tx/3b95a766d7a99b87188d6875c8484cb2b310b78459b7816d4dfc3f0f7e04281a + +==Rationale== + +From the point of view of a wallet developer (or other tool that need to show any kind of Blockchain references), using this scheme mean that he can simply make it a blockchain: link and be done with it, without having to worry about any specific Blockchain explorer or provide a means for the user to select one. + +Blockchain explorers in turn will simply offer to handle the blockchain: URI, the first time the user visit their website, or launch/install the application, or even set themselves if there isn't already one. + +Users get the convenience of using always their preferred explorer, which can be especially handy on mobile devices, where juggling with cut&paste is far from ideal. + +==Copyright== + +This document is placed in the public domain. +