Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 98A2B95D for ; Mon, 27 Mar 2017 21:12:01 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-qt0-f181.google.com (mail-qt0-f181.google.com [209.85.216.181]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 65B0F191 for ; Mon, 27 Mar 2017 21:12:00 +0000 (UTC) Received: by mail-qt0-f181.google.com with SMTP id i34so49281739qtc.0 for ; Mon, 27 Mar 2017 14:12:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stolze-cc.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=KiP8KKX8odtpxbOw33bJKax+XE+N7bTSJ7IJo/xU6/c=; b=uphSJI9B09xgSFchThf6Qp5Umk9Y7FQhRLpKTpFQqLUxGPD7vZxJTM+XgLt+Nq869/ iG+fPZNBGFxS/FpRPedPTARpxCExIhvWDxgAG2GAl8tH4UNSXVdJyfVCbwV9Ob5XDmk/ fjGHdIitxU1YD51hji8xq97+qqNUlUbMvM8DC7pWhLuxH6UtljsiZfSAxWXuZjaRc2fU 14IS7h300dGfN+6MkaIb/3g3lua7pI4DQZPBnnWG0/kUowetV79PKplWUxwR8UAwpNAk Bzb1FDCYne0L7gOj/I4FO7iS46/bGCOsaigc+MIcy0raAOutScrmHL7lEw+/bzMFNJcQ yP8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=KiP8KKX8odtpxbOw33bJKax+XE+N7bTSJ7IJo/xU6/c=; b=fkOuKCs/NFYNG/mz97VI4z3wp/Iyc4LVk2MxIVqP73mwkIWVnf7NyNI9vgem80ECpG FkL/nB/MtwN40Bn/p1uj6MAR6HqXNEOE68eozRHEQT0SKvIkTy+ZJ+8m9RJdW0/Jr4wW cTOpznYd3H+Y72RMJUaKjRZ03auCs2qOrIZ8HgSpLmQ/GqSfPCtq71cOjY6hCMPkx+AJ 0e0D+mAfJTZDXx3YD8kLP8E+EH5XamwEn1ldawDBCjs9RTgv8ARRuocc+CLuYHSyEeWJ R2EpDJPuTU1xRvUV9mK8fPKxQ9kzjpFGhzbL5ZpfBzUmsafevLm00WLsbWFLf9tCdd26 s+Hw== X-Gm-Message-State: AFeK/H11UXt5sZO/g+WXaDQQ2KsfVZ666vZUnrLJIo0NEAHS4RXTeeuJGeiUQkMU+VwyUBQnMTSraD1m76Sd7g== X-Received: by 10.200.4.168 with SMTP id s40mr25809808qtg.283.1490649119334; Mon, 27 Mar 2017 14:11:59 -0700 (PDT) MIME-Version: 1.0 Received: by 10.237.63.78 with HTTP; Mon, 27 Mar 2017 14:11:38 -0700 (PDT) X-Originating-IP: [199.244.119.163] In-Reply-To: References: From: Martin Stolze Date: Mon, 27 Mar 2017 22:11:38 +0100 Message-ID: To: Bitcoin Protocol Discussion Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, RCVD_IN_DNSWL_LOW, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org X-Mailman-Approved-At: Tue, 28 Mar 2017 14:31:55 +0000 Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Mar 2017 21:12:01 -0000 > [...] we don't need to implement any kind of special bloated transaction = that is only mine-able by some explicit set of miners... No fork or compat= ibility problems are necessary, can be completely implemented as an added f= eature. Yes, absolutely. It would still be helpful if it is somewhat standardized on the Client level. > Re: "Miners": I don't really like calling them "transaction processors" b= ecause in bitcoin, every synchronizing node that verifies signatures is a t= ransaction processor. I agree and I really appreciate the explanation! Transaction Processor is not optimal, I brought up BSA: Block Space Authority before to slice the pie in terms of it legitimate power structure instead of its functionality. I maintain that this is better for higher level discourse. Maybe something like "Consensus Space Sovereign" would be more suitable. > What sets them apart from full relay nodes is they create "blocks", which= are "ledger change candidates" that included transactions and proof-of-wor= k (PoW: deterministic diffusion puzzle solutions). Functionally, a node can moderate the network in the following way: 1. Relay transactions (mempool) and the global memory (blockchain) 2. Construct block headers (PoW: deterministic diffusion puzzle solutions) and write to the global memory (create "blocks", which are "ledger change candidates") 3. Read, verify and accept changes to the global memory > Given the above definition of a "block", I would be happy calling them "B= lock Producers"... which does not imply that they do all of the necessary "= transaction processing": that all users should be fine with running Electru= m wallets or even SPV clients. They produce blocks, but its still up to ot= her users in the network to do "transaction processing": decide for themsel= ves if they want to accept particular blocks. "Block Generator" (ala Satoshi) may be better but let's look at the power structure analog to the functionality: 1. Authority to propose a change 2. Authority to approve a change 3. Authority to reject a change This can easily be understood in current political terms. In Spain a: 1. Citizen can propose to engage in a business (voice) 2. (Special) Citizen (the King) can disapprove of the business (sovereign) 3. Citizen can leave Spain (exit) Likewise, citizens can engage with the sovereign in order to change some regulation, say average transaction tax. The question is simply what legitimate authority a node has. We can map that quite neatly onto the terminology of 'Politics'. That does also away with naive 51% attack scenarios and the like. They are akin to aliens invading earth. Surely it is not impossible that aliens invade and in Bitcoin land, it is currently conceivable, but most conflicts are not brought about by a single devilish aggressor but a special interest group that wants to concentrate benefits and diffuse costs. - Transaction Tiering could be a great basis for decentralized negotiations= . Regards Martin On Sat, Mar 25, 2017 at 10:30 PM, praxeology_guy wrote: > Martin: > > Re: Miners not relaying unconfirmed txs... I was saying that this was a > good thing from your perspective in wanting to give users the choice on > which miners would get to confirm the tx. So then like we don't need to > implement any kind of special bloated transaction that is only mine-able = by > some explicit set of miners... No fork or compatibility problems are > necessary, can be completely implemented as an added feature. > > Re: "Miners": I don't really like calling them "transaction processors" > because in bitcoin, every synchronizing node that verifies signatures is = a > transaction processor. What sets them apart from full relay nodes is the= y > create "blocks", which are "ledger change candidates" that included > transactions and proof-of-work (PoW: deterministic diffusion puzzle > solutions). They help create confidence that transactions in blocks will > never by double spent by requiring that double spending would need lots o= f > economic resources for someone else to re-perform the PoW. > > Given the above definition of a "block", I would be happy calling them > "Block Producers"... which does not imply that they do all of the necessa= ry > "transaction processing": that all users should be fine with running > Electrum wallets or even SPV clients. They produce blocks, but its still= up > to other users in the network to do "transaction processing": decide for > themselves if they want to accept particular blocks. > > Cheers, > Praxeology Guy > > -------- Original Message -------- > Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering > Local Time: March 25, 2017 12:15 PM > UTC Time: March 25, 2017 5:15 PM > From: martin@stolze.cc > To: praxeology_guy > bitcoin-dev@lists.linuxfoundation.org > > Thanks, those are valid concerns. > >> Potentially miners could create their own private communication >> channel/listening port for submitting transactions that they would not r= elay >> to other miners/the public node relay network. > That is the idea. Transaction Processors could source transactions > from the public mempool as well their proprietary mempool(s). > >> Miners would be incentivized to not relay higher fee transactions, becau= se >> they would want to keep them to themselves for higher profits. > Not so, a user may want to incentivise a specific Transaction > Processor or many. A user can detect this behavior and withdraw his > future business if he notices that his transaction is not included in > a block despite there being transactions with lower fees included. > Remember, the transaction can be advertised to different mempools and > a Transaction Processor could lose this business to a competitor who > processes the next block if he holds it back. > > Best Regards > Martin > > PS: It seems not too late to get rid of misleading terms like "miner". > Block rewards (infrastructure subsidies) will be neglectable for > future generations and the analogy is exceedingly poor. > > On Sat, Mar 25, 2017 at 4:42 AM, praxeology_guy > wrote: >> Potentially miners could create their own private communication >> channel/listening port for submitting transactions that they would not >> relay >> to other miners/the public node relay network. Users could then chose wh= o >> they want to relay to. Miners would be incentivized to not relay higher >> fee >> transactions, because they would want to keep them to themselves for >> higher >> profits. >> >> Cheers, >> Praxeology Guy >> >> >> -------- Original Message -------- >> Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering >> Local Time: March 22, 2017 12:48 PM >> UTC Time: March 22, 2017 5:48 PM >> From: bitcoin-dev@lists.linuxfoundation.org >> To: bitcoin-dev@lists.linuxfoundation.org >> >> Hi Tim, >> After writing this I figured that it was probably not evident at first >> sight as the concept may be quite novel. The physical location of the >> "miner" is indeed irrelevant, I am referring to the digital location. >> Bitcoins blockchain is a digital location or better digital "space". >> As far as I am concerned the authority lies with whoever governs this >> particular block space. A "miner" can, or can not, include my >> transaction. >> >> To make this more understandable: >> >> Abu Bakr al-Baghdadi can extend his caliphate into Bitcoins block >> space and rule sovereign(!) over a given block. If he processes my >> transaction my fee goes directly into the coffers of his organization. >> The same goes for the Queen of England or the Emperor of China. My >> interest is not necessarily aligned with each specific authority, yet >> as you point out, I can only not use Bitcoin. >> Alternatively, however, I can very well sign my transaction and send >> it to an authority of my choosing to be included into the ledger, say >> BitFurry. - This is what I describe in option 1. >> >> In order to protect my interest I do need to choose, maybe not today, >> but eventually. >> >> I also think that people do care who processes transactions and a lot >> of bickering could be spared if we could choose. >> >> If we assume a perfectly competitive market with 3 authorities that >> govern the block space equally, the marginal cost of 1/3 of the block >> space is the same for each, however, the marginal revenue absent of >> block rewards is dependent on fees. >> If people are willing to pay only a zero fee to a specific authority >> while a fee greater than zero to the others it's clear that one would >> be less competitive. >> >> Let us assume the fees are 10% of the revenue and the cost is 95 we >> have currently the following situation: >> >> A: Cost=3D95; Revenue=3D100; Profit=3D5 >> B: Cost=3D95; Revenue=3D100; Profit=3D5 >> C: Cost=3D95; Revenue=3D100; Profit=3D5 >> >> With transaction tiering, the outcome could be different! >> >> A: Cost=3D95; Revenue=3D90; Loss=3D5 // BSA that does not respect user i= nterest. >> B: Cost=3D95; Revenue=3D105; Profit=3D10 >> C: Cost=3D95; Revenue=3D105; Profit=3D10 >> >> This could motivate transaction processors to behave in accordance >> with user interest, or am I missing something? >> >> Best Regards, >> Martin >> >>> From: Tim Ruffing >>> To: bitcoin-dev@lists.linuxfoundation.org >>> Cc: >>> Bcc: >>> Date: Tue, 21 Mar 2017 16:18:26 +0100 >>> Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering >>> (I'm not a lawyer...) >>> >>> I'm not sure if I can make sense of your email. >>> >>> On Mon, 2017-03-20 at 20:12 +0000, Martin Stolze via bitcoin-dev wrote: >>>> As a participant in the economy in general and of Bitcoin in >>>> particular, I desire an ability to decide where I transact. The >>>> current state of Bitcoin does not allow me to choose my place of >>>> business. As a consequence, I try to learn what would be the best way >>>> to conduct my business in good faith. [2] >>> >>> Ignoring the rest, I don't think that the physical location / >>> jurisdiction of the miner has any legal implications for law applicable >>> to the relationship between sender and receiver of a payment. >>> >>> This is not particular to Bitcoin. We're both in Germany (I guess). >>> Assume we have a contract without specific agreements and I pay you in >>> Icelandic kronur via PayPal (in Luxembourg) and my HTTPS requests to >>> PayPal went via Australia and the US. Then German law applies to our >>> contract, nothing in the middle can change that. >>> >>> Also ignoring possible security implications, there is just no need for >>> a mechanism that enables users to select miners. I claim that almost >>> nobody cares who will mine a transaction, because it makes no technical >>> difference. If you don't want a specific miner to mine your >>> transaction, then don't use Bitcoin. >>> >>> Tim >> _______________________________________________ >> bitcoin-dev mailing list >> bitcoin-dev@lists.linuxfoundation.org >> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev >> >> > >