From: Anton Ragin <anton@etc-group.com>
To: Keagan McClelland <keagan.mcclelland@gmail.com>
Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] Proposal: Force to do nothing for first 9 minutes to save 90% of mining energy
Date: Tue, 18 May 2021 00:02:07 +0100 [thread overview]
Message-ID: <CAPyV_jBqeTJQskKnzOwcwH0Byed8E6RLy4qLhQG-aWsH62NbTw@mail.gmail.com> (raw)
In-Reply-To: <CALeFGL1=_FSDT6TjmbL9N4TkLGvm5cMf9MsfLXT2rn5m2Cea3g@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 12195 bytes --]
>> This is not possible for rather obvious reasons:
>> 1. transaction sizes cannot be allowed to be unbounded because this
creates denial of service attacks for the broader network
>> 2. if the valid certificate set is not unbounded, then centralization
pressure will mount on the bound between the Nth and N+1th certifier.
>> Finally, all of this would require a rather large consensus change to
even implement. Given how contentious the proposal of a "choose your
miner/certifier" is, it is unlikely to gain the necessary support in the
form of code, review, miner signaling, or user uptake for a UASF.
My original suggestion was to hold an unbounded number of copies of
asymmetrically-encrypted transactions in the mempool, each of them could be
decrypted with the key which is owned by a particular miner. Once one of
them get mined, all other copies are discarded (this can be done by holding
hashes of transactions in the mempool unencrypted, so once the node sees
the transaction matching the hash mined - it can discard the other copies
sharing the same hash).
I agree that that opens the door to potential DoS attack - people can start
transmitting invalid transactions to perform a DoS attack on the network.
However, the following adaptation of the idea might work: the transaction
is duly signed and communicated to the mempool, but have an unbonded list
of certificates of 'preferred' miners. If for within M blocks a preferred
miner manages to mine the block - fine, if within M blocks it does not
happen, transaction can be mined by any miner. Additionally, full nodes can
demand a minimum fee which is dependant on the number of attached
certificates (e.g. if attaching N certificates makes the transaction
message 2x the size of normal message, the minimum fee is twice bigger). It
appears to me, that such M-block delay + list of preferred miners which can
be arbitrary long, but user pays higher fees if it is unreasonably long,
does not raise DoS concerns as it does not materially affect the dynamics
of things how they are right now.
>> If you truly care about only having your transactions mined by "green"
miners or whatever other qualification you are going after, then this can
likely be implemented in upper layers as you suggested. You can submit your
transaction via an overlay network directly to any miners that fit your
criteria. Since miners operate in a selfish way, it is not in their
interest to share your transaction with other miners, and the probable case
is that your transaction will only be included in a block that is signed by
your preferred authority.
Overlay network is one of the solutions, however community-supported
functionality of giving some miners a priority as suggested above will
>> It is, in fact, an open forum and everyone is entitled to their view,
including being dismissive of yours.
Accepted :)
On Mon, May 17, 2021 at 6:28 PM Keagan McClelland <
keagan.mcclelland@gmail.com> wrote:
> In principle the idea of making your transactions not mineable except by
> miners who follow some particular practice is something that can and should
> be discussed. For instance, it could help give economic signals for future
> soft forks such that users can declare preference in a costly, sybil
> resistant way.
>
> As I understand what you are asking, you want users to be able to issue
> transactions that can only be included in blocks that are signed by miners
> whose certificates can be traced back to some set of certificates that the
> sender has "whitelisted". The trouble here is that in order for this to be
> an open system, the user would need to be able to include an unbounded
> number of optional certificates in the transaction itself, otherwise the
> rest of the network would be unable to validate whether or not the
> transaction, when included in the block fit the consensus rules or not.
>
> This is not possible for rather obvious reasons:
> 1. transaction sizes cannot be allowed to be unbounded because this
> creates denial of service attacks for the broader network
> 2. if the valid certificate set is not unbounded, then centralization
> pressure will mount on the bound between the Nth and N+1th certifier.
>
> Finally, all of this would require a rather large consensus change to even
> implement. Given how contentious the proposal of a "choose your
> miner/certifier" is, it is unlikely to gain the necessary support in the
> form of code, review, miner signaling, or user uptake for a UASF.
>
> That said, not all is lost. If you truly care about only having your
> transactions mined by "green" miners or whatever other qualification you
> are going after, then this can likely be implemented in upper layers as you
> suggested. You can submit your transaction via an overlay network directly
> to any miners that fit your criteria. Since miners operate in a selfish
> way, it is not in their interest to share your transaction with other
> miners, and the probable case is that your transaction will only be
> included in a block that is signed by your preferred authority.
>
> I should note though, that you may be waiting forever for your
> transactions to be mined and your business partners might choose not to do
> business with you in the future due to delays caused by virtue signaling to
> nocoiners.
>
> > Please don't be dismissive, it is an open forum and everybody is
> entitled to his/her/its own opinion.
>
> It is, in fact, an open forum and everyone is entitled to their view,
> including being dismissive of yours.
>
> > I respectfully submit that people who know how to launch rockets to the
> sky and beam high-speed internet from the satellites to every place on
> earth are at least capable of understanding how Bitcoin works. There is
> even an english expression which reads 'it is not a rocket science' which I
> think fits especially nicely in this particular case :)
>
> No one is contesting that Elon and the rest of the technical staff at
> Tesla are *capable* of understanding Bitcoin. We are just asserting that,
> at present, they do not understand the underlying mechanics well enough to
> give consistent rationale for their choices, and because their public
> statements reveal either a deep hypocrisy, or deep ignorance in their
> understanding of Bitcoin.
>
> Keagan
>
> On Mon, May 17, 2021 at 8:11 AM Anton Ragin via bitcoin-dev <
> bitcoin-dev@lists.linuxfoundation.org> wrote:
>
>> Hello, list
>>
>> >Hello centralisation. Might as well just have someone sign miner keys,
>> and get
>> >rid of PoW entirely...
>> >No, it is not centralization -
>>
>> No, it is not centralization, as:
>>
>> (a) different miners could use different standards / certifications for
>> 'green' status, there are many already;
>>
>>
>> >> That does not refute the claim at all. Just because you can choose
>> from multiple centralized authorities, which are well known and can
>> collude, it does not mean it is decentralized by any reasonable definition
>> of the term.
>>
>> (b) it does not affect stability of the network in a material way, rather
>> creates small (12.5% of revenue max) incentive to move to green sources of
>> energy (or buy carbon credits) and get certified - miners who would choose
>> to run dirty energy will still be able to do so.
>> and
>>
>>
>> >> Who is to issue these credits? A centralized entity I guess ... There
>> is no place for such in Bitcoin.
>>
>> If I am to concede on the point that *voluntarily* green-status miner
>> certification is 'centralization', can you please explain *in detail* why
>> aren't 'bitcoin.org' and GitHub repo similar examples of
>> 'centralization'? You make a correct point that bitcoin.org and the
>> GitHub repo are not 'official' things of Bitcoin network, however nowhere
>> in my proposals on green miner certification I was suggesting to introduce
>> an 'official' certificate for such a thing. May be I mis-formulated my
>> ideas, in that case I apologize:
>>
>> The only thing which I suggested was to introduce an option to have some
>> transactions encrypted in the mempool to allow Bitcoin users some control
>> over who mines their transaction - full stop. Users could then decide how
>> to use this functionality themselves, and such functionality could have
>> uses way beyond 'green miners' - for example, some users might prefer to
>> send their transactions *directly to trusted miners* to prevent certain
>> quantum computer enabled attacks (e.g. when there is a window of
>> opportunity to steal coins if you have fast QC when you spend even from
>> p2phk address). Another example - if users are given some flexibility whom
>> to send the transactions, they might actually want to steer them away from
>> huge mining pools such as Antpool to support small independent miners, smth
>> of this sort - which actually would boost diversity in the network.
>>
>> You may or may not agree that climate change is real, or may or may not
>> agree that Bitcoin energy consumption is a problem - I respectfully submit
>> it is not the right forum to find truth on these topics. We are discussing
>> ideas which *might *make Bitcoin a better solution for users who care
>> about certain things, *without *making it worse for somebody else (like
>> you, for example - who don't like centralization in any form).
>>
>> >> (c) nothing is being proposed beyond what is already possible -
>> Antpool can go green today, and solicit users to send them signed
>> transactions directly instead of adding them to a public mempool, under the
>> pretext that it would make the transfer 'greener'.
>>
>> >> And if there was an economic advantage in doing so, miners would quite
>> likely already implement that. Yet, somehow, they are not doing that.
>>
>> Arguments of the sort 'if something could be done or should have been
>> done - it would be done already' are flawed, in my opinion, as following
>> the same logic nothing (including Bitcoin itself) should have been done
>> ever. As a matter of fact, we are working on a green miner initiative with
>> certain miners, having a call with Hut8 in 20 minutes myself - and I know
>> that we are not the only ones. Green crypto initiatives are actually
>> widespread, and the solutions will be popping up soon.
>>
>> >> Please stop with the carbon credit nonsense. There is likely no such
>> thing to exist on a free market and no one is interested in these state
>> regulations.
>>
>> Please read this Wikipedia Article:
>> https://en.wikipedia.org/wiki/Carbon_offset
>>
>> "There are two types of markets for carbon offsets, compliance and
>> *voluntary*" [emphasis added].
>>
>> Voluntary carbon offset markets are actually growing really fast.
>>
>> >> Just because a big company is controlled by people who do not
>> understand Bitcoin, it does not make the issue valid. There are no such
>> environmental concerns once you understand how Bitcoin and free market
>> work. Don't help to spread the FUD.
>>
>> I respectfully submit that people who know how to launch rockets to the
>> sky and beam high-speed internet from the satellites to every place on
>> earth are at least capable of understanding how Bitcoin works. There is
>> even an english expression which reads 'it is not a rocket science' which I
>> think fits especially nicely in this particular case :)
>>
>> >> Once people stop spreading FUD, the price will likely skyrocket.
>> Start with yourself please.
>>
>> I guess you misinterpret my intentions, I think it doesn't matter what
>> Bitcoin price is - my personal interest is the widest possible adoption of
>> blockchain as a peer-to-peer way to transfer value between consenting
>> individuals free from government control or intervention. Environmental
>> concerns are real and at least some parts of the community are clearly
>> interested to at least discuss this matter (e.g. I am not the one who
>> started this thread).
>>
>> Please don't be dismissive, it is an open forum and everybody is entitled
>> to his/her/its own opinion.
>> _______________________________________________
>> bitcoin-dev mailing list
>> bitcoin-dev@lists.linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>>
>
[-- Attachment #2: Type: text/html, Size: 14777 bytes --]
next prev parent reply other threads:[~2021-05-17 23:02 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-17 13:14 [bitcoin-dev] Proposal: Force to do nothing for first 9 minutes to save 90% of mining energy befreeandopen
2021-05-17 13:53 ` Anton Ragin
2021-05-17 17:28 ` Keagan McClelland
2021-05-17 23:02 ` Anton Ragin [this message]
-- strict thread matches above, loose matches on Subject: below --
2021-05-14 21:41 Michael Fuhrmann
2021-05-15 22:14 ` René Pickhardt
2021-05-15 22:19 ` Pavol Rusnak
2021-05-16 15:30 ` Zac Greenwood
2021-05-16 18:10 ` Karl
2021-05-16 20:31 ` Anton Ragin
2021-05-16 22:06 ` Eric Voskuil
2021-05-16 23:29 ` Karl
2021-05-16 21:15 ` Zac Greenwood
2021-05-16 22:05 ` Karl
2021-05-17 9:34 ` Zac Greenwood
2021-05-17 2:58 ` Luke Dashjr
2021-05-17 12:39 ` Anton Ragin
2021-05-18 7:46 ` ZmnSCPxj
2021-05-17 19:17 ` Michael Fuhrmann
2021-05-18 8:04 ` ZmnSCPxj
2021-05-17 5:17 ` yanmaani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAPyV_jBqeTJQskKnzOwcwH0Byed8E6RLy4qLhQG-aWsH62NbTw@mail.gmail.com \
--to=anton@etc-group.com \
--cc=bitcoin-dev@lists.linuxfoundation.org \
--cc=keagan.mcclelland@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox