Luke-Jr [ARCHIVE] on Nostr: 📅 Original date posted:2012-05-29 📝 Original message:On Tuesday, May 29, 2012 ...
📅 Original date posted:2012-05-29
📝 Original message:On Tuesday, May 29, 2012 3:05:18 PM Peter Vessenes wrote:
> 1) Germane to the original conversation, anything hard to implement will
> not get implemented by miners.
Without my got-tired-of-waiting-for-someone-to-merge-it coinbaser branch,
anything modifying the coinbase is hard to implement.
> 2) Coinbase is hard-limited to 100 bytes; this has to include space for
> voting as well as extra nonce, etc. So, I'm not sure that a full URL is a
> good plan.
Rather, I would suggest a 20 byte keyhash, which allows the owner to broadcast
a full URI out-of-band.
> 1) They shall prepend \mi: to the url to designate it as a url for miner
> info, and append a trailing \ to the url
How about a simple prefix to the fixed-size keyhash?
Perhaps "MFR=" (Mining Fee Rules)
> 2) The url given in the coinbase shall have http:// prepended to it before
> processing.
I would recommend miners use https, with a specified SSL keyhash in the URI
(so we don't need to pay for a "proper" SSL cert).
> 3) The destination may be a redirect (to allow short URLs), or may deliver
> content
Clients should simply be required to follow the relevant HTTP specification.
> 4) The content-type returned by the final site post-redirect shall be
> either (preferred text/json) or text/plain or text/html
text/plain and text/html are just wrong and don't make any sense here.
> Inre: Luke's complaint about JSON, it is the language of the web. There is
> no easier format for both computers and humans to read, and in this case,
> it includes extensibility, which is nice, since we have no idea how miners
> will wish to divvy up their services; I think one would need to make a
> strong case against JSON for a specific reason to not choose it by default.
Bitcoin isn't "the web", it's a complicated script-based cryptocurrency.
Everything in the Bitcoin protocol requires a computer's interpretation for
humans, and there's no reason to stray from this default. Also, JSON is not
extensible in any of the ways needed for this specific purpose.
> 4) The text of the document delivered shall be a JSON format dictionary,
> and shall include at minimum the following fields: 'min_fee', 'pool_name',
> and 'last_modified' Optional fields can be determined over time as
> necessary by the mining community
Last Modified and other caching rules are dealt with in the relevant HTTP
specification...
> 5) The Service Level Agreement isn't binding, but miners who implement it
> are expected to make a best efforts attempt to follow it.
While it doesn't make sense to give it the full legal force of a contract, I
think it should be expressed as a "MUST" in the BIP.
> Generally a miner would occasionally publish the \mi:\ when they had
> updated their SLA, or just every so often, but the canonical location would
> be the final destination URL from the redirects.
The coinbase advertisement MUST be part of every coinbase mined by the miner,
or there's no reliable way to prove which blocks are theirs.
Published at
2023-06-07 10:10:31Event JSON
{
"id": "4fa97917fdc8b50dcb91f4c315d89db32befd0b38dcd443df9b993ac7075e943",
"pubkey": "6ac6a519b554d8ff726a301e3daec0b489f443793778feccc6ea7a536f7354f1",
"created_at": 1686132631,
"kind": 1,
"tags": [
[
"e",
"bea123cfa1dde96d98089cdcf953f77564e34363cd7b11c4a3504634664d4aa2",
"",
"root"
],
[
"e",
"eae0dab95489cccb1d9b292b6d43e7d0cadc4f51cf3e1d642b5feccd20e07f19",
"",
"reply"
],
[
"p",
"4aa6cf9aa5c8e98f401dac603c6a10207509b6a07317676e9d6615f3d7103d73"
]
],
"content": "📅 Original date posted:2012-05-29\n📝 Original message:On Tuesday, May 29, 2012 3:05:18 PM Peter Vessenes wrote:\n\u003e 1) Germane to the original conversation, anything hard to implement will\n\u003e not get implemented by miners.\n\nWithout my got-tired-of-waiting-for-someone-to-merge-it coinbaser branch, \nanything modifying the coinbase is hard to implement.\n\n\u003e 2) Coinbase is hard-limited to 100 bytes; this has to include space for\n\u003e voting as well as extra nonce, etc. So, I'm not sure that a full URL is a\n\u003e good plan.\n\nRather, I would suggest a 20 byte keyhash, which allows the owner to broadcast \na full URI out-of-band.\n\n\u003e 1) They shall prepend \\mi: to the url to designate it as a url for miner\n\u003e info, and append a trailing \\ to the url\n\nHow about a simple prefix to the fixed-size keyhash?\nPerhaps \"MFR=\" (Mining Fee Rules)\n\n\u003e 2) The url given in the coinbase shall have http:// prepended to it before\n\u003e processing.\n\nI would recommend miners use https, with a specified SSL keyhash in the URI \n(so we don't need to pay for a \"proper\" SSL cert).\n\n\u003e 3) The destination may be a redirect (to allow short URLs), or may deliver\n\u003e content\n\nClients should simply be required to follow the relevant HTTP specification.\n\n\u003e 4) The content-type returned by the final site post-redirect shall be\n\u003e either (preferred text/json) or text/plain or text/html\n\ntext/plain and text/html are just wrong and don't make any sense here.\n\n\u003e Inre: Luke's complaint about JSON, it is the language of the web. There is\n\u003e no easier format for both computers and humans to read, and in this case,\n\u003e it includes extensibility, which is nice, since we have no idea how miners\n\u003e will wish to divvy up their services; I think one would need to make a\n\u003e strong case against JSON for a specific reason to not choose it by default.\n\nBitcoin isn't \"the web\", it's a complicated script-based cryptocurrency.\nEverything in the Bitcoin protocol requires a computer's interpretation for \nhumans, and there's no reason to stray from this default. Also, JSON is not \nextensible in any of the ways needed for this specific purpose.\n\n\u003e 4) The text of the document delivered shall be a JSON format dictionary,\n\u003e and shall include at minimum the following fields: 'min_fee', 'pool_name',\n\u003e and 'last_modified' Optional fields can be determined over time as\n\u003e necessary by the mining community\n\nLast Modified and other caching rules are dealt with in the relevant HTTP \nspecification...\n\n\u003e 5) The Service Level Agreement isn't binding, but miners who implement it\n\u003e are expected to make a best efforts attempt to follow it.\n\nWhile it doesn't make sense to give it the full legal force of a contract, I \nthink it should be expressed as a \"MUST\" in the BIP.\n\n\u003e Generally a miner would occasionally publish the \\mi:\\ when they had\n\u003e updated their SLA, or just every so often, but the canonical location would\n\u003e be the final destination URL from the redirects.\n\nThe coinbase advertisement MUST be part of every coinbase mined by the miner, \nor there's no reliable way to prove which blocks are theirs.",
"sig": "293869777617146a84a332328cd5782ee99445e5efe0637ad2b775990c95e52a2b805378a28f6f569944bfeb4a17144893b53534d83d64de0ba7b894feb083a0"
}