public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: ZmnSCPxj <ZmnSCPxj@protonmail•com>
To: "raymo@riseup•net" <raymo@riseup•net>,
	Bitcoin Protocol Discussion
	<bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Boost Bitcoin circulation, Million Transactions Per Second with stronger privacy
Date: Sun, 20 Jun 2021 00:53:58 +0000	[thread overview]
Message-ID: <6leV9mViysrSOipJqrCM3wbqBOMO2gWI3BuEn0VKmaDf7GpawWyUIWLu-ddypMri7YeVmw94HNSaQYYp8fIkjZ0S3OtFTPQa6h9pkLprKDI=@protonmail.com> (raw)
In-Reply-To: <bea8122aea550f1141170829aac252af@riseup.net>

Good morning Raymo,

> Hi,
> I have a proposal for improve Bitcoin TPS and privacy, here is the post.
> https://raymo-49157.medium.com/time-to-boost-bitcoin-circulation-million-transactions-per-second-and-privacy-1eef8568d180
> https://bitcointalk.org/index.php?topic=5344020.0
> Can you please read it and share your idea about it.


Guarantee Transactions (GT) being higher-fee is ***not*** assured.

Feerates are always bumpable --- the sender of a transaction only needs to directly contact a miner and offer a fee to take a specific transaction on the next block proposal, conditional on the transaction *actually* getting into a block.
Such "side fees" are always possible.
Indeed, the in-transaction fees are "just" a way to anonymously and atomically make that fee offer to miners --- but miners and issuers can always communicate directly without using Bitcoin transaction to arrange a higher fee for a fraudulent Main Transaction (MT).

because of this, you should really treat all unconfirmed transactions --- including MTs and GTs --- as potentially replaceable, i.e. RBFable.
There is no such thing as "RBF disabled", all transactions are inherently RBF-able due to side fees --- it is simply a matter of anonymity, atomicity, and ease-of-use.

---

Every offchain protocol needs *the receiver* as a signatory to any unconfirmed transaction.

Or more strongly, the receiver **must** be a signatory --- the receiver cannot trust an unconfirmed transaction where the spent UTXO has an alternate branch that does *not* have the receiver as a signatory.

See: https://zmnscpxj.github.io/offchain/safety.html

Thus, all safe offchain schemes need to use an n-of-n signing set.

The smallest n-of-n that is still useful is 2-of-2, where one participant is a sender and the other is a receiver.
(1-of-1 is not useful since there is no possible receiver who can sign).

This requires Bitcoin to splinter into lots of 2-of-2 funds, each one a sovereign sub-money (that is *eventually* convertible to Bitcoin), each one a cryptocurrency system in its own right.
However, it so happens that we have a mechanism for transferring value across multiple cryptocurrency systems: the HTLC.

2-of-2 is also the most stable.
This is because *all* signatories of an n-of-n cryptocurrency system need to be online at the same time in order for *any* of them to use the funds in the system.
If any one of them is offline, then the system is unusable.
With 2 participants, there is some probability that one of them is offline and the individual 2-of-2 system is unusable.
With 3 participants, the probability is higher (there are more participants that can be offline).
With 4 participants, higher still.

Thus, the most stable is to split Bitcoin into lots of little 2-of-2 systems, and use HTLCs to transfer funds across the little 2-of-2 systems.

Thus, Lightning Network, which splits Bitcoin into lots of little 2-of-2 cryptocurrency systems (channels), and uses HTLCs to atomically transfer value across them (routing).


Of course, having larger n is better as we need to splinter Bitcoin into fewer funds with larger participant sets.
And we can mitigate the offline-problem by using a two-layer system: we have a n-of-n system (n > 2) that itself splits into multiple smaller 2-of-2 systems.
That way, the Bitcoin layer is split into fewer UTXOs, reducing blockchain resource consumption further.

Thus, Channel Factories hosting Lightning Channels.

Regards,
ZmnSCPxj


  parent reply	other threads:[~2021-06-20  0:55 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-16 13:44 raymo
2021-06-18  1:42 ` Erik Aronesty
2021-06-18 13:44   ` Alex Schoof
2021-06-18 20:00     ` raymo
2021-06-19 21:14       ` Erik Aronesty
2021-06-18 13:37 ` Erik Aronesty
2021-06-18 20:22   ` raymo
2021-06-20  0:53 ` ZmnSCPxj [this message]
2021-06-26 21:54   ` raymo
2021-06-27  4:53     ` ZmnSCPxj
2021-06-27 11:05       ` raymo
2021-06-28  5:20         ` ZmnSCPxj
2021-06-28  6:29           ` raymo
2021-06-28  8:23             ` James Hilliard
2021-06-28  9:52               ` raymo
2021-06-28 11:28                 ` James Hilliard
2021-06-28 16:33                   ` raymo
2021-06-28 15:28             ` ZmnSCPxj
2021-06-28 16:58               ` raymo
2021-06-28 17:58                 ` Alex Schoof
2021-06-28 19:07                   ` raymo
2021-06-29 21:42                     ` ZmnSCPxj
2021-06-30 12:21                       ` raymo
2021-06-28 17:29               ` Tao Effect
2021-06-28 17:38                 ` raymo
2021-06-28 18:05                   ` Ricardo Filipe
2021-06-20  1:59 ` James Hilliard
2021-06-22 18:20   ` Billy Tetrud
2021-07-01 20:11     ` raymo
2021-07-01 20:49       ` Erik Aronesty
2021-07-01 22:15         ` raymo
2021-07-02 17:57           ` Billy Tetrud
2021-07-03  8:02             ` raymo
2021-07-07  3:20               ` Billy Tetrud
2021-07-17 15:50                 ` raymo
2021-07-17 18:54                   ` Tao Effect
2021-08-08  9:11                   ` raymo
2021-08-09  0:03                     ` s7r
2021-08-09 16:22                       ` raymo
     [not found]                         ` <CAL5BAw2f=xJBO743sTb-Cms80ZLsNNbGPAsWsR_Z3JDF51ssoQ@mail.gmail.com>
2021-08-09 20:22                           ` raymo
2022-11-02 17:30                       ` Erik Aronesty

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='6leV9mViysrSOipJqrCM3wbqBOMO2gWI3BuEn0VKmaDf7GpawWyUIWLu-ddypMri7YeVmw94HNSaQYYp8fIkjZ0S3OtFTPQa6h9pkLprKDI=@protonmail.com' \
    --to=zmnscpxj@protonmail$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=raymo@riseup$(echo .)net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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