Inquiry: Transaction Tiering

Inquiry: Transaction Tiering
2017-03-21 15:18 ` Tim Ruffing
  2017-03-29  9:04 ` Tom Zander
  
From: Martin Stolze @ 2017-03-20 20:12 UTC (permalink / raw)
  To: bitcoin-dev

Hi Team,
I would like to find out what the current consensus on transaction tiering is.

Background: The current protocol enables two parties to transact
freely, however, transaction processors (block generators) have the
authority to discriminate participants arbitrarily. This is well known
and it is widely accepted that transaction processors may take
advantage of this with little recourse. It is the current consensus
that the economic incentives in form of transaction fees are
sufficient because the transaction processing authorities are assumed
to be guided by the growth of Bitcoin and the pursuit of profit.

We can establish that a transaction processing authority does not need
to actually process transactions and reigns sovereign over the block
space they govern. [1] For further discussion I will refer to a
transaction processor more aptly as "Block Space Authority" (BSA).

Currently, a user can only signal to all BSA’s (via the mempool) its
desire to include her transaction into the ledger. A user can not
signal to specific BSA’s, and thus, can not easily carry out business
in jurisdictions that conform to the users understanding of best
practice.

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]

I have certain minimum requirements towards the constitution of the
block space like transparency, forward guidance and risk management.
More poignantly, it could also include due diligence to ensure that
child labor is not involved in the maintenance of a specific block
space, or that the specific block space does not utilize nuclear
energy or sources at least 80% of the expended energy from solar
power. Obviously, preferences can vary widely.

I don’t think there is any way to discard the desire of users to
choose their place of business, especially under the consideration
that BSA’s have the discretion to choose users transactions already.
I have identified the following options along the lines of Lawrence
Lessig's concept of Cyberspace: [3]

1. Law: Bilateral Agreement

Users engage directly with BSA’s to process their transaction.
Transactions are routed around the mempool. A likely outcome of this
solution is the emergence of brokers that sell off block space in a
sort of secondary market. Wallets may negotiate on behalf of their
users. This model has obvious downsides as it involves new middlemen,
increases transaction cost beyond the current market price
(speculation) and potentially reduces performance.

2. Architecture: Remove transaction fees

If only the block reward functions to incentivise transaction
processing, no differentiation is useful. However, spam/empty blocks
could not be prevented and Bitcoin would have to be entirely
redesigned, potentially losing its censorship resistance.

3. Market: Direct Communication

Through the core client, BSA’s can offer individual mempools that
users can choose to advertise their transactions to. Different BSA’s
could receive different transaction fees for the same transaction in
their respective mempool to reflect the preference of the user.

In Conclusion: In the long term, it is likely that a clearer
differentiation of BSA’s will become important. Today, BSA’s
communicate rarely and it appears that their raison d'etre is not
necessarily motivated by good faith towards Bitcoin as a whole. [4] As
we move forward it is not just important to attract opportunistic
players that win an individual game but good players that are invited
to play again in order to win a set of all possible games.

BSA’s establish their authority on cheap access to capital in the form
of electricity and hardware and the consent and trust of users who
expect BSA's to respect and maintain the ledgers integrity.

In 3 to 8 years, when Bitcoin leaves it’s bootstrapping phase, the
incentives will squarely fall on the later. [5] Subsequently it seems
prudent to allow BSA’s to compete for business on other factors than
price.

Hence my question: What is the current stance of core developers
regarding the facilitation of direct communication between users and
BSA’s, possibly through a transaction tiering model?

Sincerely,
Martin Stolze

[1] BSA rules sovereign: (https://twitter.com/JihanWu/status/704476839566135298)
[2] No direct attribution but solid foundation for business logic
since 1899: §242 ff BGB
(https://www.gesetze-im-internet.de/englisch_bgb/englisch_bgb.html#p0726)
[3] Lessig, Code. "And Other Laws of Cyberspace, Version 2.0." (2006).
[4] The pursuit of profit can come at the expense of Bitcoin:
(https://twitter.com/ToneVays/status/835233366203072513)
[5] Satoshi Nakamoto: "Once a predetermined number of coins have
entered circulation, the incentive can transition entirely to
transaction fees [...]"


 permalink raw reply	[|nested]
2017-03-20 20:12 [bitcoin-dev] Inquiry: Transaction Tiering Martin Stolze

  2017-03-29  9:04 ` Tom Zander
  
From: Tim Ruffing @ 2017-03-21 15:18 UTC (permalink / raw)
  To: bitcoin-dev

(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


 permalink raw reply	[|nested]
2017-03-25  4:42 ` praxeology_guy
  
From: Martin Stolze @ 2017-03-22 17:48 UTC (permalink / raw)
  To: bitcoin-dev

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=95; Revenue=100; Profit=5
B: Cost=95; Revenue=100; Profit=5
C: Cost=95; Revenue=100; Profit=5

With transaction tiering, the outcome could be different!

A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user interest.
B: Cost=95; Revenue=105; Profit=10
C: Cost=95; Revenue=105; Profit=10

This could motivate transaction processors to behave in accordance
with user interest, or am I missing something?

Best Regards,
Martin

> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
> 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


 permalink raw reply	[|nested]
2017-03-22 17:48 Martin Stolze

  2017-03-25 17:15   ` Martin Stolze
  
From: praxeology_guy @ 2017-03-25  4:42 UTC (permalink / raw)
  To: Martin Stolze;  bitcoin-dev

[-- Attachment #1: Type: text/plain, Size: 4581 bytes --]

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 who 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=95; Revenue=100; Profit=5
B: Cost=95; Revenue=100; Profit=5
C: Cost=95; Revenue=100; Profit=5

With transaction tiering, the outcome could be different!

A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user interest.
B: Cost=95; Revenue=105; Profit=10
C: Cost=95; Revenue=105; Profit=10

This could motivate transaction processors to behave in accordance
with user interest, or am I missing something?

Best Regards,
Martin

> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
> 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

[-- Attachment #2: Type: text/html, Size: 6356 bytes --]

 permalink raw reply	[|nested]
2017-03-25  4:42 ` praxeology_guy

  2017-03-26 11:12     ` praxeology_guy
                       ` (2 more replies)
  
From: Martin Stolze @ 2017-03-25 17:15 UTC (permalink / raw)
  To: praxeology_guy;  bitcoin-dev

Thanks, those are valid concerns.

> 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.
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, because 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
<praxeology_guy@protonmail•com> 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 who
> 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=95; Revenue=100; Profit=5
> B: Cost=95; Revenue=100; Profit=5
> C: Cost=95; Revenue=100; Profit=5
>
> With transaction tiering, the outcome could be different!
>
> A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user interest.
> B: Cost=95; Revenue=105; Profit=10
> C: Cost=95; Revenue=105; Profit=10
>
> This could motivate transaction processors to behave in accordance
> with user interest, or am I missing something?
>
> Best Regards,
> Martin
>
>> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
>> 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
>
>


 permalink raw reply	[|nested]
2017-03-25 17:15   ` Martin Stolze

  2017-03-26 12:11     ` greg misiorek
       [not found]     ` <fFz3k0NstFYpKctCaSKDrhPnkInjW3GgQ-3FIyokzdl_SScKjXptQsn8jnW71ax_oknq9hI8gUBllYaKo_9hMiBASSJtkL6xXN_NX8tcmXw=@protonmail.com>
  
From: praxeology_guy @ 2017-03-26 11:12 UTC (permalink / raw)
  To: Bitcoin Protocol Discussion

[-- Attachment #1: Type: text/plain, Size: 7719 bytes --]

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 they 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 of 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 necessary "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 <praxeology_guy@protonmail•com>
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 relay 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, because 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
<praxeology_guy@protonmail•com> 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 who
> 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=95; Revenue=100; Profit=5
> B: Cost=95; Revenue=100; Profit=5
> C: Cost=95; Revenue=100; Profit=5
>
> With transaction tiering, the outcome could be different!
>
> A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user interest.
> B: Cost=95; Revenue=105; Profit=10
> C: Cost=95; Revenue=105; Profit=10
>
> This could motivate transaction processors to behave in accordance
> with user interest, or am I missing something?
>
> Best Regards,
> Martin
>
>> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
>> 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
>
>

[-- Attachment #2: Type: text/html, Size: 10638 bytes --]

 permalink raw reply	[|nested]
2017-03-25 17:15   ` Martin Stolze
  2017-03-26 11:12     ` praxeology_guy

  2017-03-27 17:18       ` Martin Stolze
       [not found]     ` <fFz3k0NstFYpKctCaSKDrhPnkInjW3GgQ-3FIyokzdl_SScKjXptQsn8jnW71ax_oknq9hI8gUBllYaKo_9hMiBASSJtkL6xXN_NX8tcmXw=@protonmail.com>
  
From: greg misiorek @ 2017-03-26 12:11 UTC (permalink / raw)
  To: Martin Stolze, Bitcoin Protocol Discussion

[-- Attachment #1: Type: text/plain, Size: 7719 bytes --]

agreed, the 'miner' term has run its course and plays a different role than it was originally set out to do, esp its original distributed nature. the 'mining business' has become concentrated too much and resembles today's financial institutions or simply banks, imho.


still, any form forking has dilutive effect on existing BTC holders.


thx, gm

________________________________
From: bitcoin-dev-bounces@lists•linuxfoundation.org <bitcoin-dev-bounces@lists•linuxfoundation.org> on behalf of Martin Stolze via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org>
Sent: Saturday, March 25, 2017 1:15 PM
To: praxeology_guy
Cc: bitcoin-dev@lists•linuxfoundation.org
Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering

Thanks, those are valid concerns.

> 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.
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, because 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
<praxeology_guy@protonmail•com> 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 who
> 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=95; Revenue=100; Profit=5
> B: Cost=95; Revenue=100; Profit=5
> C: Cost=95; Revenue=100; Profit=5
>
> With transaction tiering, the outcome could be different!
>
> A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user interest.
> B: Cost=95; Revenue=105; Profit=10
> C: Cost=95; Revenue=105; Profit=10
>
> This could motivate transaction processors to behave in accordance
> with user interest, or am I missing something?
>
> Best Regards,
> Martin
>
>> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
>> 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
bitcoin-dev -- Bitcoin Protocol Discussion - Linux Foundation<https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>
lists.linuxfoundation.org
Bitcoin development and protocol discussion. This list is lightly moderated. - No offensive posts, no personal attacks. - Posts must concern development of bitcoin ...



>
>
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists•linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
bitcoin-dev -- Bitcoin Protocol Discussion - Linux Foundation<https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>
lists.linuxfoundation.org
Bitcoin development and protocol discussion. This list is lightly moderated. - No offensive posts, no personal attacks. - Posts must concern development of bitcoin ...




[-- Attachment #2: Type: text/html, Size: 13437 bytes --]

 permalink raw reply	[|nested]
From: AJ West @ 2017-03-27 16:29 UTC (permalink / raw)
  To: bitcoin-dev

[-- Attachment #1: Type: text/plain, Size: 2246 bytes --]

Hi I'm AJ West, I made a service http://preferredminer.com which is a
proof-of-concept project designed to spur discussion on exactly this issue
of "miners as service providers."

The current status is that Bitcoin end users are looking to support
specific miners, whether that's because they agree with a miner/pool's
political positions, their consensus ideology, physical location (yes some
people would like only miners in particular countries to mine their
transactions) and the list of reasons goes on. The main attitude right now
is that people would like to 'support' miners who signal for the features
they care about.

I strongly believe, whether the Bitcoin developer community facilitates it
or not, certain miners will become preferred by users. In summary, there
are realistically two proposed ways of providing this service in the
present-day situation: 1) By creating 'segregated mempools' where an
authenticated third-party like my web service Preferred Miner manages the
access to pending transactions destined for a specific set of miners, and
2) by creating transactions where the mining fee is in one way or another,
an output to an address owned by the preferred miner(s).

There are some terrible pitfalls with both of these methods. The first
being that you have to trust a lot of people, including the 3rd party (me)
and the pools to work in your users' interest ("don't give my transactions
to other miners or broadcast to mempool please"). Then there are the extra
fees users will have to pay to offset the risk of a miner losing out for
having to send the network a not-yet-broadcasted transaction. And finally,
the other method requires that they be larger transactions, and a directory
of mining pools' receiving addresses for outputs must be maintained. Then
you have to hope the miner will be setup to scoop in your transaction
knowing it's got a fee for them. Plus, how many nodes going forward are
going to hold what seem to be 0-fee transactions in mempool (because the
fee is in the outputs)?

I am not necessarily looking for answers or solutions to these issues, but
simply to show a case and to express that this idea of having specific
miners/pools process their transactions, is important to some people.

[-- Attachment #2: Type: text/html, Size: 2793 bytes --]

 permalink raw reply	[|nested]
2017-03-26 12:11     ` greg misiorek

  
From: Martin Stolze @ 2017-03-27 17:18 UTC (permalink / raw)
  To: Bitcoin Protocol Discussion

[-- Attachment #1: Type: text/plain, Size: 8902 bytes --]

Yes, the terminology is creating a lot of confusion. I would be happy to
contribute to a discourse that helps to clear up the ambiguities and
cringeworthiness of current "standardized terminology".
Robert Keagen developed a perspective on psychological development [1] and
it appears to me that Stage 2 and 3 (miner, cash, network upgrade, ...) is
discussing with Stage 4 (hash power, settlement, fork, ...).

"Miner" is not wrong, just not helpful if you try to gauge the deeper
complexities of Bitcoin. Likewise, "money" is not wrong if you explain it
to a child, while credit and debt is much more useful if you want to gauge
the deeper complexities of economics.

still, any form forking has dilutive effect on existing BTC holders.


Not at all, I sleep sound and anticipate any such event as an ugly scrip
dividend.

Regards
Martin

[1] https://en.wikipedia.org/wiki/Robert_Kegan#In_Over_Our_Heads

On Sun, Mar 26, 2017 at 1:11 PM, greg misiorek <greg_not_so@hotmail•com>
wrote:

> agreed, the 'miner' term has run its course and plays a different role
> than it was originally set out to do, esp its original distributed nature.
> the 'mining business' has become concentrated too much and resembles
> today's financial institutions or simply banks, imho.
>
>
> still, any form forking has dilutive effect on existing BTC holders.
>
>
> thx, gm
> ------------------------------
> *From:* bitcoin-dev-bounces@lists•linuxfoundation.org <
> bitcoin-dev-bounces@lists•linuxfoundation.org> on behalf of Martin Stolze
> via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org>
> *Sent:* Saturday, March 25, 2017 1:15 PM
> *To:* praxeology_guy
> *Cc:* bitcoin-dev@lists•linuxfoundation.org
>
> *Subject:* Re: [bitcoin-dev] Inquiry: Transaction Tiering
>
> Thanks, those are valid concerns.
>
> > 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.
> 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,
> because 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
> <praxeology_guy@protonmail•com> 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
> who
> > 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=95; Revenue=100; Profit=5
> > B: Cost=95; Revenue=100; Profit=5
> > C: Cost=95; Revenue=100; Profit=5
> >
> > With transaction tiering, the outcome could be different!
> >
> > A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user
> interest.
> > B: Cost=95; Revenue=105; Profit=10
> > C: Cost=95; Revenue=105; Profit=10
> >
> > This could motivate transaction processors to behave in accordance
> > with user interest, or am I missing something?
> >
> > Best Regards,
> > Martin
> >
> >> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
> >> 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
> bitcoin-dev -- Bitcoin Protocol Discussion - Linux Foundation
> <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>
> lists.linuxfoundation.org
> Bitcoin development and protocol discussion. This list is lightly
> moderated. - No offensive posts, no personal attacks. - Posts must concern
> development of bitcoin ...
>
>
> >
> >
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists•linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
> bitcoin-dev -- Bitcoin Protocol Discussion - Linux Foundation
> <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>
> lists.linuxfoundation.org
> Bitcoin development and protocol discussion. This list is lightly
> moderated. - No offensive posts, no personal attacks. - Posts must concern
> development of bitcoin ...
>
>
>

[-- Attachment #2: Type: text/html, Size: 16088 bytes --]

 permalink raw reply	[|nested]
[not found]     ` <fFz3k0NstFYpKctCaSKDrhPnkInjW3GgQ-3FIyokzdl_SScKjXptQsn8jnW71ax_oknq9hI8gUBllYaKo_9hMiBASSJtkL6xXN_NX8tcmXw=@protonmail.com>

  2017-03-28  7:02         ` praxeology_guy
  
From: Martin Stolze @ 2017-03-27 21:11 UTC (permalink / raw)
  To: Bitcoin Protocol Discussion

> [...] 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.

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" because in bitcoin, every synchronizing node that verifies signatures is a transaction 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-work (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 "Block Producers"... which does not imply that they do all of the necessary "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.

"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
<praxeology_guy@protonmail•com> 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 they
> 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 of
> 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 necessary
> "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 <praxeology_guy@protonmail•com>
> 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 relay
>> 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, because
>> 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
> <praxeology_guy@protonmail•com> 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 who
>> 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=95; Revenue=100; Profit=5
>> B: Cost=95; Revenue=100; Profit=5
>> C: Cost=95; Revenue=100; Profit=5
>>
>> With transaction tiering, the outcome could be different!
>>
>> A: Cost=95; Revenue=90; Loss=5 // BSA that does not respect user interest.
>> B: Cost=95; Revenue=105; Profit=10
>> C: Cost=95; Revenue=105; Profit=10
>>
>> This could motivate transaction processors to behave in accordance
>> with user interest, or am I missing something?
>>
>> Best Regards,
>> Martin
>>
>>> From: Tim Ruffing <tim.ruffing@mmci•uni-saarland.de>
>>> 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
>>
>>
>
>


 permalink raw reply	[|nested]
2017-03-27 21:11       ` Martin Stolze

  2017-03-28 19:51           ` Martin Stolze
  
From: praxeology_guy @ 2017-03-28  7:02 UTC (permalink / raw)
  To: Martin Stolze;  Bitcoin Protocol Discussion

[-- Attachment #1: Type: text/plain, Size: 2347 bytes --]

Martin:

Re: Block Space Authority, or "authority": in general

An authority dictates policy.

Authority arises in 4 cases off the top of my head:
- Authority because entity threats violence/dominance
- Authority because entity's claim to property is respected to maintain friendship/benefits of specialization and trade. (one has authority over one's own property/business/contractually agreed claims)
- Authority because entity claims divine inspiration, and others accept such a claim
- Authority because entity gained respect and was voluntarily delegated

"Miners" do not fit in any of these categories. In fact "miners" do the exact opposite, their policy is dictated by market demand. They do us the service of creating block candidates. If a miner is a good businessman, he mines whatever currency gives him the most profit. The end users decide the policy and which currency is worth anything. Hence the users are the ones dictating to the miners how much work they should perform on each coin.

Miners compete against each other until there is only very slim profit. If they are devoting too much work to a coin they spend too much on energy/computers/network, and they have losses, so they reduce capacity on that coin. If mining a coin is extremely profitable, they expand their work until there is no profit.

So... miners don't really have any authority. Or if for some reason somebody does give them authority, its due to either the Divine (lol unlikely) or Respect reasons above... which is an unfounded/insecure reason.

Using miner signalling to determine when/whether SegWit is activated was a mistake in any extent that gave people the implication that miners have any authority. It was a poor way to schedule its activation. We assumed that the miners would activate it in a reasonable time because SegWit is undeniably good, so we just used this method to try to prevent a soft fork. Instead I recommend my proposed BitcoinUpdateBoard https://pastebin.com/ikBGPVfR. Or bitcoin core could include more entities such as specific miners and exchanges in their table located here: https://bitcoincore.org/en/segwit_adoption/.

We already have come to consensus that SegWit is good. So we should just schedule a date to activate it in the future where market participants have a reasonable time to prepare.

Cheers,
Praxeology Guy

[-- Attachment #2: Type: text/html, Size: 2858 bytes --]

 permalink raw reply	[|nested]
2017-03-28 14:57 ` Andrew Baine
  
From: Martin Stolze @ 2017-03-28 12:58 UTC (permalink / raw)
  To: Bitcoin Protocol Discussion

Hi AJ,
That's outstanding. I am glad to see that there is actually somebody
who has made some progress.

> "miners as service providers."
Great idea! Block space as a resource is under-analyzed.

> miner/pool's political positions, their consensus ideology, physical location (yes some people would like only miners in particular countries to mine their transactions)

I am not joking when I say that in 3 to 8 years, I want to be able to
verify my transaction through green blocks that are generated locally
by my neighbor through the excess capacity of his solar panels or by
an NGO pool that promotes solar deployment around the equator.

> The main attitude right now is that people would like to 'support' miners who signal for the features they care about.

Yes, just selecting all SegWit signaling hash power instead of picking
individual Authorities would be helpful on preferredminer.com

> I strongly believe, whether the Bitcoin developer community facilitates it or not, certain miners will become preferred by users.

Absolutely, considering the recent language used in opinions by the
ECB and drafts by the EU I see them assembling the artillery. I
wouldn't be surprised if they start target practice next year. That
will mean that commercial interest must have a way to transact on
somewhat regulated space.

> 1) By creating 'segregated mempools' where an authenticated third-party like my web service Preferred Miner manages the access to pending transactions destined for a specific set of miners

I would call it regulated block space or regulated consensus space. I
hope that we can do that on a deeper level, as part of the p2p
protocol layer.

> 2) by creating transactions where the mining fee is in one way or another, an output to an address owned by the preferred miner(s).

That's a distinct function, e.g. at least some communities charge a tax. [1]
I fear it is more likely that a business, say Coinbase, will approach
a "miner" and just say "we pay 100 USD for a KB to your bank account,
here are our transactions with no fee". It will literally be an
off-chain fee. That's what I mean by "secondary market". This would be
one of the least appealing scenarios.

> There are some terrible pitfalls with both of these methods. [...]

Spot on, that's why this should receive some attention before it
becomes urgent. I think there is much more to it that we are missing
at the moment, e.g. Tom: "Using xthin/compact blocks miners only send
a tiny version of a block which then causes the receiving node to
re-create it using the memory pool."


[1] http://thebitcoin.foundation/declaration.txt



> From: AJ West <ajwest@gmail•com>
> To: bitcoin-dev@lists•linuxfoundation.org
> Cc:
> Bcc:
> Date: Mon, 27 Mar 2017 12:29:20 -0400
> Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering
> Hi I'm AJ West, I made a service http://preferredminer.com which is a proof-of-concept project designed to spur discussion on exactly this issue of "miners as service providers."
>
> The current status is that Bitcoin end users are looking to support specific miners, whether that's because they agree with a miner/pool's political positions, their consensus ideology, physical location (yes some people would like only miners in particular countries to mine their transactions) and the list of reasons goes on. The main attitude right now is that people would like to 'support' miners who signal for the features they care about.
>
> I strongly believe, whether the Bitcoin developer community facilitates it or not, certain miners will become preferred by users. In summary, there are realistically two proposed ways of providing this service in the present-day situation: 1) By creating 'segregated mempools' where an authenticated third-party like my web service Preferred Miner manages the access to pending transactions destined for a specific set of miners, and 2) by creating transactions where the mining fee is in one way or another, an output to an address owned by the preferred miner(s).
>
> There are some terrible pitfalls with both of these methods. The first being that you have to trust a lot of people, including the 3rd party (me) and the pools to work in your users' interest ("don't give my transactions to other miners or broadcast to mempool please"). Then there are the extra fees users will have to pay to offset the risk of a miner losing out for having to send the network a not-yet-broadcasted transaction. And finally, the other method requires that they be larger transactions, and a directory of mining pools' receiving addresses for outputs must be maintained. Then you have to hope the miner will be setup to scoop in your transaction knowing it's got a fee for them. Plus, how many nodes going forward are going to hold what seem to be 0-fee transactions in mempool (because the fee is in the outputs)?
>


 permalink raw reply	[|nested]
2017-03-28 12:58 Martin Stolze

  2017-03-29 12:51   ` Martin Stolze
  
From: Andrew Baine @ 2017-03-28 14:57 UTC (permalink / raw)
  To: Martin Stolze, Bitcoin Protocol Discussion

[-- Attachment #1: Type: text/plain, Size: 5698 bytes --]

The bitcoin ecosystem is better off the more transactions are propogated
peer-to-peer than directly to miners. We want miners listening to the
network, not soliciting transactions directly from users. You whispering
your transactions to your miner-of-choice while I whisper to mine
contravenes a critical value-add of the peer-to-peer network in my opinion.

On Tue, Mar 28, 2017 at 10:35 AM Martin Stolze via bitcoin-dev <
bitcoin-dev@lists•linuxfoundation.org> wrote:

> Hi AJ,
> That's outstanding. I am glad to see that there is actually somebody
> who has made some progress.
>
> > "miners as service providers."
> Great idea! Block space as a resource is under-analyzed.
>
> > miner/pool's political positions, their consensus ideology, physical
> location (yes some people would like only miners in particular countries to
> mine their transactions)
>
> I am not joking when I say that in 3 to 8 years, I want to be able to
> verify my transaction through green blocks that are generated locally
> by my neighbor through the excess capacity of his solar panels or by
> an NGO pool that promotes solar deployment around the equator.
>
> > The main attitude right now is that people would like to 'support'
> miners who signal for the features they care about.
>
> Yes, just selecting all SegWit signaling hash power instead of picking
> individual Authorities would be helpful on preferredminer.com
>
> > I strongly believe, whether the Bitcoin developer community facilitates
> it or not, certain miners will become preferred by users.
>
> Absolutely, considering the recent language used in opinions by the
> ECB and drafts by the EU I see them assembling the artillery. I
> wouldn't be surprised if they start target practice next year. That
> will mean that commercial interest must have a way to transact on
> somewhat regulated space.
>
> > 1) By creating 'segregated mempools' where an authenticated third-party
> like my web service Preferred Miner manages the access to pending
> transactions destined for a specific set of miners
>
> I would call it regulated block space or regulated consensus space. I
> hope that we can do that on a deeper level, as part of the p2p
> protocol layer.
>
> > 2) by creating transactions where the mining fee is in one way or
> another, an output to an address owned by the preferred miner(s).
>
> That's a distinct function, e.g. at least some communities charge a tax.
> [1]
> I fear it is more likely that a business, say Coinbase, will approach
> a "miner" and just say "we pay 100 USD for a KB to your bank account,
> here are our transactions with no fee". It will literally be an
> off-chain fee. That's what I mean by "secondary market". This would be
> one of the least appealing scenarios.
>
> > There are some terrible pitfalls with both of these methods. [...]
>
> Spot on, that's why this should receive some attention before it
> becomes urgent. I think there is much more to it that we are missing
> at the moment, e.g. Tom: "Using xthin/compact blocks miners only send
> a tiny version of a block which then causes the receiving node to
> re-create it using the memory pool."
>
>
> [1] http://thebitcoin.foundation/declaration.txt
>
>
>
> > From: AJ West <ajwest@gmail•com>
> > To: bitcoin-dev@lists•linuxfoundation.org
> > Cc:
> > Bcc:
> > Date: Mon, 27 Mar 2017 12:29:20 -0400
> > Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering
> > Hi I'm AJ West, I made a service http://preferredminer.com which is a
> proof-of-concept project designed to spur discussion on exactly this issue
> of "miners as service providers."
> >
> > The current status is that Bitcoin end users are looking to support
> specific miners, whether that's because they agree with a miner/pool's
> political positions, their consensus ideology, physical location (yes some
> people would like only miners in particular countries to mine their
> transactions) and the list of reasons goes on. The main attitude right now
> is that people would like to 'support' miners who signal for the features
> they care about.
> >
> > I strongly believe, whether the Bitcoin developer community facilitates
> it or not, certain miners will become preferred by users. In summary, there
> are realistically two proposed ways of providing this service in the
> present-day situation: 1) By creating 'segregated mempools' where an
> authenticated third-party like my web service Preferred Miner manages the
> access to pending transactions destined for a specific set of miners, and
> 2) by creating transactions where the mining fee is in one way or another,
> an output to an address owned by the preferred miner(s).
> >
> > There are some terrible pitfalls with both of these methods. The first
> being that you have to trust a lot of people, including the 3rd party (me)
> and the pools to work in your users' interest ("don't give my transactions
> to other miners or broadcast to mempool please"). Then there are the extra
> fees users will have to pay to offset the risk of a miner losing out for
> having to send the network a not-yet-broadcasted transaction. And finally,
> the other method requires that they be larger transactions, and a directory
> of mining pools' receiving addresses for outputs must be maintained. Then
> you have to hope the miner will be setup to scoop in your transaction
> knowing it's got a fee for them. Plus, how many nodes going forward are
> going to hold what seem to be 0-fee transactions in mempool (because the
> fee is in the outputs)?
> >
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists•linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>

[-- Attachment #2: Type: text/html, Size: 8338 bytes --]

 permalink raw reply	[|nested]
2017-03-28  7:02         ` praxeology_guy

  
From: Martin Stolze @ 2017-03-28 19:51 UTC (permalink / raw)
  To: praxeology_guy;  Bitcoin Protocol Discussion

As I alluded to before, certain language lends itself to simple conclusions.
You say that "miner" have simple profit motives and compete only in
their respective domains. But what is "mining"?

It is the process of acquiring a part of the block space. He who
acquires that space can decide over this particular space. (1) Your
entire theory falls apart at the point of an empty block. (2) "The
pursuit of profit can come at the expense of Bitcoin:"
(https://twitter.com/ToneVays/status/835233366203072513). (3) Bitcoin
has additional value, like a brand value that could be diverted.
- The market can be gamed for profit. Really.

> So... miners don't really have any authority.

I fall back on Carl Schmitt according to which the sovereign is he who
decides on the state of exception: If there is some person or
institution, in a given polity, capable of bringing about a total
suspension of the law and then to use extra-legal force to normalize
the situation, then that person or institution is the sovereign in
that polity.
- That is spot on, I don't know why the rest of the political theory
shouldn't apply.

> Using miner signalling to determine when/whether SegWit is activated [...]

I didn't think of that, but you are right. The problem is just that it
didn't just give them the impression that they have authority, it
actually transferred the authority.

Again: "The question is simply what legitimate authority a node has."
- You gave legitimacy to their authority! Core did!
(Conversely, the intelligence service of some dictatorship may get
enough hash power to claim authority over the block space, however,
this would have zero legitimacy and could easily be dealt with.)

:(

miner signaling ... just "miner", right?

Thanks for helping me understand.
Martin


On Tue, Mar 28, 2017 at 8:02 AM, praxeology_guy
<praxeology_guy@protonmail•com> wrote:
> Martin:
>
> Re: Block Space Authority, or "authority": in general
>
> An authority dictates policy.
>
> Authority arises in 4 cases off the top of my head:
> - Authority because entity threats violence/dominance
> - Authority because entity's claim to property is respected to maintain
> friendship/benefits of specialization and trade. (one has authority over
> one's own property/business/contractually agreed claims)
> - Authority because entity claims divine inspiration, and others accept such
> a claim
> - Authority because entity gained respect and was voluntarily delegated
>
> "Miners" do not fit in any of these categories.  In fact "miners" do the
> exact opposite, their policy is dictated by market demand.  They do us the
> service of creating block candidates.  If a miner is a good businessman, he
> mines whatever currency gives him the most profit.  The end users decide the
> policy and which currency is worth anything.  Hence the users are the ones
> dictating to the miners how much work they should perform on each coin.
>
> Miners compete against each other until there is only very slim profit.  If
> they are devoting too much work to a coin they spend too much on
> energy/computers/network, and they have losses, so they reduce capacity on
> that coin.  If mining a coin is extremely profitable, they expand their work
> until there is no profit.
>
> So... miners don't really have any authority.  Or if for some reason
> somebody does give them authority, its due to either the Divine (lol
> unlikely) or Respect reasons above... which is an unfounded/insecure reason.
>
> Using miner signalling to determine when/whether SegWit is activated was a
> mistake in any extent that gave people the implication that miners have any
> authority.  It was a poor way to schedule its activation. We assumed that
> the miners would activate it in a reasonable time because SegWit is
> undeniably good, so we just used this method to try to prevent a soft fork.
> Instead I recommend my proposed BitcoinUpdateBoard
> https://pastebin.com/ikBGPVfR.  Or bitcoin core could include more entities
> such as specific miners and exchanges in their table located here:
> https://bitcoincore.org/en/segwit_adoption/.
>
> We already have come to consensus that SegWit is good.  So we should just
> schedule a date to activate it in the future where market participants have
> a reasonable time to prepare.
>
> Cheers,
> Praxeology Guy


 permalink raw reply	[|nested]
2017-03-20 20:12 [bitcoin-dev] Inquiry: Transaction Tiering Martin Stolze
  2017-03-21 15:18 ` Tim Ruffing

  2017-03-29 12:48   ` Martin Stolze
  
From: Tom Zander @ 2017-03-29  9:04 UTC (permalink / raw)
  To: bitcoin-dev, Martin Stolze

On Monday, 20 March 2017 21:12:36 CEST Martin Stolze via bitcoin-dev wrote:
> Background: The current protocol enables two parties to transact
> freely, however, transaction processors (block generators) have the
> authority to discriminate participants arbitrarily.

Nag; they don’t have any authority.

> This is well known
> and it is widely accepted that transaction processors may take
> advantage of this with little recourse. It is the current consensus
> that the economic incentives in form of transaction fees are
> sufficient because the transaction processing authorities are assumed
> to be guided by the growth of Bitcoin and the pursuit of profit.

This is not the case, it misunderstands Bitcoin and specifically is 
misunderstands that Bitcoin is distributed and decentralized.

What you call “block generators” or “transaction processors” are in reality 
called miners and they don’t have any authority to mine or not mine certain 
transactions. All they have is a business incentive to mine or not mine a 
certain transaction.
This is a crucial distinction as that makes it a economical decision, not a 
political.

The massive distribution of miners creating blocks means that one miner is 
free to add his political agenda. They can choose to not mine any satoshi-
dice transactions, should they want. But they can’t stop other miners from 
mining those transactions anyway, and as such this is not a political move 
that has any effect whatsoever, at the end of the day it is just an 
economcal decision.

The rest of your email is based on this misconception as well, and therefore 
the above answers your question.
-- 
Tom Zander
Blog: https://zander.github.io
Vlog: https://vimeo.com/channels/tomscryptochannel


 permalink raw reply	[|nested]
2017-03-29  9:04 ` Tom Zander

  2017-03-29 13:10     ` Tom Zander
  
From: Martin Stolze @ 2017-03-29 12:48 UTC (permalink / raw)
  To: Tom Zander;  Bitcoin Protocol Discussion

Ignoring your contradiction of the political and economical. Your
conception holds under the presupposition that all action of
hash-power is motivated by 'rational' economic interest. Specifically
a very strict distinction between the profitable and the unprofitable;
namely to include transactions based on "business incentive",
presumably on-chain fees.

I am afraid that this conception is a rickety crutch, unfit to
navigate current reality.


On Wed, Mar 29, 2017 at 10:04 AM, Tom Zander <tomz@freedommail•ch> wrote:
> On Monday, 20 March 2017 21:12:36 CEST Martin Stolze via bitcoin-dev wrote:
>> Background: The current protocol enables two parties to transact
>> freely, however, transaction processors (block generators) have the
>> authority to discriminate participants arbitrarily.
>
> Nag; they don’t have any authority.
>
>> This is well known
>> and it is widely accepted that transaction processors may take
>> advantage of this with little recourse. It is the current consensus
>> that the economic incentives in form of transaction fees are
>> sufficient because the transaction processing authorities are assumed
>> to be guided by the growth of Bitcoin and the pursuit of profit.
>
> This is not the case, it misunderstands Bitcoin and specifically is
> misunderstands that Bitcoin is distributed and decentralized.
>
> What you call “block generators” or “transaction processors” are in reality
> called miners and they don’t have any authority to mine or not mine certain
> transactions. All they have is a business incentive to mine or not mine a
> certain transaction.
> This is a crucial distinction as that makes it a economical decision, not a
> political.
>
> The massive distribution of miners creating blocks means that one miner is
> free to add his political agenda. They can choose to not mine any satoshi-
> dice transactions, should they want. But they can’t stop other miners from
> mining those transactions anyway, and as such this is not a political move
> that has any effect whatsoever, at the end of the day it is just an
> economcal decision.
>
> The rest of your email is based on this misconception as well, and therefore
> the above answers your question.
> --
> Tom Zander
> Blog: https://zander.github.io
> Vlog: https://vimeo.com/channels/tomscryptochannel


 permalink raw reply	[|nested]
2017-03-28 14:57 ` Andrew Baine

  
From: Martin Stolze @ 2017-03-29 12:51 UTC (permalink / raw)
  To: Andrew Baine;  Bitcoin Protocol Discussion

Sure it will be somewhat controversial initially, however, "miners",
will have additional incentive to listen to the network in order to
get transactions. It's not taking away from your personal choice, it's
adding additional choice to those that are disenfranchised by
hash-power centralization.

On Tue, Mar 28, 2017 at 3:57 PM, Andrew Baine <andrew.baine@gmail•com> wrote:
> The bitcoin ecosystem is better off the more transactions are propogated
> peer-to-peer than directly to miners. We want miners listening to the
> network, not soliciting transactions directly from users. You whispering
> your transactions to your miner-of-choice while I whisper to mine
> contravenes a critical value-add of the peer-to-peer network in my opinion.
>
> On Tue, Mar 28, 2017 at 10:35 AM Martin Stolze via bitcoin-dev
> <bitcoin-dev@lists•linuxfoundation.org> wrote:
>>
>> Hi AJ,
>> That's outstanding. I am glad to see that there is actually somebody
>> who has made some progress.
>>
>> > "miners as service providers."
>> Great idea! Block space as a resource is under-analyzed.
>>
>> > miner/pool's political positions, their consensus ideology, physical
>> > location (yes some people would like only miners in particular countries to
>> > mine their transactions)
>>
>> I am not joking when I say that in 3 to 8 years, I want to be able to
>> verify my transaction through green blocks that are generated locally
>> by my neighbor through the excess capacity of his solar panels or by
>> an NGO pool that promotes solar deployment around the equator.
>>
>> > The main attitude right now is that people would like to 'support'
>> > miners who signal for the features they care about.
>>
>> Yes, just selecting all SegWit signaling hash power instead of picking
>> individual Authorities would be helpful on preferredminer.com
>>
>> > I strongly believe, whether the Bitcoin developer community facilitates
>> > it or not, certain miners will become preferred by users.
>>
>> Absolutely, considering the recent language used in opinions by the
>> ECB and drafts by the EU I see them assembling the artillery. I
>> wouldn't be surprised if they start target practice next year. That
>> will mean that commercial interest must have a way to transact on
>> somewhat regulated space.
>>
>> > 1) By creating 'segregated mempools' where an authenticated third-party
>> > like my web service Preferred Miner manages the access to pending
>> > transactions destined for a specific set of miners
>>
>> I would call it regulated block space or regulated consensus space. I
>> hope that we can do that on a deeper level, as part of the p2p
>> protocol layer.
>>
>> > 2) by creating transactions where the mining fee is in one way or
>> > another, an output to an address owned by the preferred miner(s).
>>
>> That's a distinct function, e.g. at least some communities charge a tax.
>> [1]
>> I fear it is more likely that a business, say Coinbase, will approach
>> a "miner" and just say "we pay 100 USD for a KB to your bank account,
>> here are our transactions with no fee". It will literally be an
>> off-chain fee. That's what I mean by "secondary market". This would be
>> one of the least appealing scenarios.
>>
>> > There are some terrible pitfalls with both of these methods. [...]
>>
>> Spot on, that's why this should receive some attention before it
>> becomes urgent. I think there is much more to it that we are missing
>> at the moment, e.g. Tom: "Using xthin/compact blocks miners only send
>> a tiny version of a block which then causes the receiving node to
>> re-create it using the memory pool."
>>
>>
>> [1] http://thebitcoin.foundation/declaration.txt
>>
>>
>>
>> > From: AJ West <ajwest@gmail•com>
>> > To: bitcoin-dev@lists•linuxfoundation.org
>> > Cc:
>> > Bcc:
>> > Date: Mon, 27 Mar 2017 12:29:20 -0400
>> > Subject: Re: [bitcoin-dev] Inquiry: Transaction Tiering
>> > Hi I'm AJ West, I made a service http://preferredminer.com which is a
>> > proof-of-concept project designed to spur discussion on exactly this issue
>> > of "miners as service providers."
>> >
>> > The current status is that Bitcoin end users are looking to support
>> > specific miners, whether that's because they agree with a miner/pool's
>> > political positions, their consensus ideology, physical location (yes some
>> > people would like only miners in particular countries to mine their
>> > transactions) and the list of reasons goes on. The main attitude right now
>> > is that people would like to 'support' miners who signal for the features
>> > they care about.
>> >
>> > I strongly believe, whether the Bitcoin developer community facilitates
>> > it or not, certain miners will become preferred by users. In summary, there
>> > are realistically two proposed ways of providing this service in the
>> > present-day situation: 1) By creating 'segregated mempools' where an
>> > authenticated third-party like my web service Preferred Miner manages the
>> > access to pending transactions destined for a specific set of miners, and 2)
>> > by creating transactions where the mining fee is in one way or another, an
>> > output to an address owned by the preferred miner(s).
>> >
>> > There are some terrible pitfalls with both of these methods. The first
>> > being that you have to trust a lot of people, including the 3rd party (me)
>> > and the pools to work in your users' interest ("don't give my transactions
>> > to other miners or broadcast to mempool please"). Then there are the extra
>> > fees users will have to pay to offset the risk of a miner losing out for
>> > having to send the network a not-yet-broadcasted transaction. And finally,
>> > the other method requires that they be larger transactions, and a directory
>> > of mining pools' receiving addresses for outputs must be maintained. Then
>> > you have to hope the miner will be setup to scoop in your transaction
>> > knowing it's got a fee for them. Plus, how many nodes going forward are
>> > going to hold what seem to be 0-fee transactions in mempool (because the fee
>> > is in the outputs)?
>> >
>> _______________________________________________
>> bitcoin-dev mailing list
>> bitcoin-dev@lists•linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev


 permalink raw reply	[|nested]
2017-03-29 12:48   ` Martin Stolze

  
From: Tom Zander @ 2017-03-29 13:10 UTC (permalink / raw)
  To: Martin Stolze;  Bitcoin Protocol Discussion

On Wednesday, 29 March 2017 14:48:42 CEST Martin Stolze wrote:
> Your
> conception holds under the presupposition that all action of
> hash-power is motivated by 'rational' economic interest.

This shows you didn't think this through,

instead, the concept holds true when there is even a small section of hash 
power motivated by rational economic interest.

Your claim that it has to be 100% of the miners that need to be honest is 
something I already addressed in the previous email when I wrote its a 
distributed system.

Since this is an open market, the requirement of a secton of miners being 
honest is pretty trivial to fulful, especially since Bitcoins are worth 
quite a lot which makes greed be the main cause of honest miners.

This is the best part, greedy miners are the ones that end up working inside 
the system.

This is very quickly going off-topic. I suggest you to take it to a 
different forum where more people can explain Bitcoin without spamming the 
dev list.
-- 
Tom Zander
Blog: https://zander.github.io
Vlog: https://vimeo.com/channels/tomscryptochannel


 permalink raw reply	[|nested]