Divpusēja monētu kontrole

By Bitcoin Žurnāls - pirms 6 mēnešiem - Lasīšanas laiks: 15 minūtes

Divpusēja monētu kontrole

Šis raksts ir iekļauts Bitcoin Žurnāla "Izņemšanas problēma". Noklikšķiniet šeit, lai abonētu tūlīt.

Šī raksta brošūra PDF formātā ir pieejama lejuplādēt

Self custody is an essential requirement when using Bitcoin to fully benefit from all the properties that make Bitcoin valuable in the first place. To be able to truly transact without permission, benefiting from the censorship resistance of the network, you have to control your own keys. You can’t outsource that to someone else, you can’t trust the neutrality or honesty of a custodian, you must solely have direct control of corresponding private keys to your UTXOs. If you fail to do this, you will always be a second class user. Bitcoin as a system gives you almost total control over your own funds; control of custody, when it is spent and how it is spent, even the ability to completely destroy your coins through deleting your private keys.

When you outsource that direct control of the actual Bitcoin UTXOs on the network to a third party, you relinquish that control in its entirety. That’s not to say that there aren’t middle grounds to that, such as Lightning, Statechains, and other proposed second layer designs, but ignoring those for a moment, when you do not control your UTXOs directly, you do not have the ability to transact whenever and however you want. You do not have the ability to destroy and render your coins inaccessible if you want. You do not have something that is permissionless in your ownership and control.

So why do people choose not to withdraw their coins and leave them with a custodian? Some combination of apathy, lack of understanding, fear or doubt about their ability to correctly manage their own keys without losing money, or even concerns over being able to physically keep their keys safe. There are numerous reasons, and over time we will have different solutions to address the root cause. But one of the big causes for such a choice has yet to even really happen to any serious degree; the raw economics of blockspace utilization. If you only have a couple of dollars of bitcoin –or even less in the case of zapping satoshis around with things like custodial Lightning solutions– you cannot practically take control of those coins or spend them on chain cost effectively. Even when fees get that high however, it's still cost effective for a user in such a situation to handle their Bitcoin until they have enough to be able to afford to withdraw to self-custody at a reasonable cost.

That is not going to be the case forever. No matter what happens, if Bitcoin actually succeeds and becomes widely adopted for real use among normal people, that cost of blockspace is going to trend up; a tide that continues rising in sync with the growth of users forever. It will even rise without user growth whenever economic activity and money velocity picks up among the existing userbase. It is an inevitable reality, it cannot be stopped by anything short of the stagnation or complete failure of Bitcoin pati.

So what is the solution here? That is pretty much the root of the tug of war between the old big block versus small block divide that has been going on since the beginning of Bitcoin. Taking custody of your own bitcoin by having them sent to key pairs you control is a foundational aspect to Bitcoin, but so is being able to actually validate that a Bitcoin UTXO controlled by a key you possess was really created on-chain. The relationship between the costs of these two things is, and will forever be, an eternal tug of war between the costs of one versus the other. If you make the verification cost of blockspace cheaper and increase its availability, more people will utilize it. If you make the use of it more efficient, more people will utilize it.

You can tweak those variables all day long, back and forth, you can make computational verification cheaper, you can make blockspace use more efficient, but either one will just enable more people to use it and inevitably (unless we are all wrong about Bitcoin) lead to an increase in demand for blockspace. And that is just looking at things in a basic vacuum of economics and how demand and availability regulate each other. That isn’t even considering the actual engineering trade-offs of the specific ways to accomplish either thing, and the downside risks each optimization creates.

Un ir daudz kompromisu, kas saistīti ar visiem konkrētajiem veidiem, kā var sasniegt kādu no šiem mērķiem. Daudz. Pat zibens protokolam ar visu inženiertehnisko spožumu, kas nodrošina eksponenciālu darījumu caurlaidības pieaugumu, ir milzīgi kompromisi un ierobežojumi. Tas ir visvairāk mērogojams, vienlaikus visuzticamākais otrā slāņa protokols, kas līdz šim piedāvāts attiecībā uz caurlaidspēju un neuzticamību. Bet pat tam ir negatīvās puses un būtiskas atšķirības.

Noklikšķiniet uz attēla augstāk, lai abonētu. 

Lightning’s security model is reactive, meaning that the only way to ensure that you don’t lose money is to pay attention to the blockchain and react quick enough if someone tries to steal funds from you by submitting an old channel state to chain. While this is a perfectly workable solution to that problem, it is a great departure from the security model of just unilaterally holding a UTXO. All you have to do in that situation is verify once that a coin sent to you on chain was actually confirmed and then you are done. You do not have to continuously pay attention to anything after that in order to keep your money secure.

This fundamental difference between using bitcoin through Lightning rather than directly on chain will have a lot of consequences for users with less money or cost tolerance for blockspace. The higher the average fee rate trends up, the more people will be pushed into locking their coins on Lightning to be able to actually spend them more cost effectively. It doesn’t even begin to end there with them being forced into a reactive security model though. Lightning routes payments through Hash Time Lock Contracts to guarantee that the money is fully sent or fully refunded across an entire payment route. This is actually never done for small value payments that are not cost effective to enforce on the blockchain if necessary. Those 1-2 satoshi payments getting zapped around for fun are sent in an entirely trusted fashion without using HTLCs and just hoping no one along the path screws up or refuses to cooperate. As fees rise on the base layer, this will have to be done for larger and larger payments. It makes zero economic sense to spend $5 in fees to enforce a payment worth only $1. Imagine $10 fees, $20 fees, etc. As the fee market matures and the base level of fees rise, even the nature of payments across the Lightning Network will fundamentally change, moving from a trustless system enforceable on-chain to one ultimately depending on honest behavior.

Tāda pati dinamika ietekmēs to, vai lietotājs vispār var atvērt un uzturēt Lightning kanālu (vai kāds cits vēlēsies šim kanālam piešķirt likviditāti, lai lietotājam būtu saņemšanas jauda). Ja darījumu veikšana ķēdē maksās 10 ASV dolārus, tad jūs nekavējoties saņemat 20 ASV dolārus (pieņemot, ka maksas likmes nekļūs vēl sliktākas) par šī kanāla atvēršanu un neizbēgamu aizvēršanu. Ja jums ir jāslēdz, nesadarbojoties, pat ja lidojumā nav HTLC, tas maksā 30 ASV dolārus, jo slēgšanai nepieciešami divi darījumi. Cik daudz naudas cilvēkiem būs jāiegulda kanālā, lai apsvērtu tik augstu maksu? Notikumi sāks kļūt ļoti izslēdzoši ļoti ātri, kad maksas patiešām sāks pieaugt, kad bloktelpas pieprasījums piesātinās.

So what does this mean? Lightning isn’t enough. It gives a lot more headroom in scaling self-custody, but it does not completely solve the problem and will itself wind up subjected to the exact same economic scaling issues that are present on the base layer of the blockchain. Not to mention introducing new security assumptions in the process along the way. It’s like building up a barrier of sandbags around your house in a flood; it will keep your house safe as long as the water level doesn’t rise above it. But if we are right about Bitcoin and its adoption continues unabated, the water level will keep rising well above the top of that barrier. Lightning by itself is not enough to raise the barrier much higher.

Kāda konkrēta un ieviesta alternatīva var to paaugstināt? Stāvokļa ķēdes ir konkrēts piemērs. Tie var ievērojami palielināt bloktelpas izmantošanas efektivitāti, bet pārsteigums — tam nevajadzētu būt pārsteigumam — tie ievieš vēl vairāk kompromisu nekā Lightning. Kad strādājat ar Lightning kanālu, jūs to atverat konkrētam darījuma partnerim, un tā ir vienīgā persona, ar kuru varat sazināties. Lai mainītu personu, ar kuru sazināties, lai piekļūtu maršrutiem pie citiem cilvēkiem, jums faktiski ir jāaizver šis kanāls ķēdē un jāatver jauns kanāls ar kādu citu. Stāvokļa ķēdes pilnībā maina tur dinamiku.

Izmantojot statusa ķēdi, jūs varat pārsūtīt monētas jebkurai jaunai personai, ar kuru jūs nekad neesat sazinājies, pirms esat pilnībā ārpus ķēdes. Bet jūs varat nodot tikai visu UTXO, un tajā ir iesaistīta trešā šķīrējtiesas puse. Mīnuss numur viens; kad bloķējat monētu statusa ķēdē, visu var pārsūtīt ārpus ķēdes, bet tikai visu uzreiz. Otrkārt, viss veids, kā tas darbojas, būtībā ir uzticēšanās neitrālai trešajai pusei, lai tā sadarbotos tikai ar pašreizējo īpašnieku. Faktiskais veids, kā tās ieviestā ķēdē var tikt veikta vairākos dažādos veidos, taču garais un īsais veids ir tāds, ka sākotnējais īpašnieks izveido stāvokļa ķēdi, bloķējot monētas zibens stilā ar pakalpojuma operatoru, un saņem iepriekš parakstītu izņemšanas darījumu, kas ir bloķēts ar laiku tāpat kā Lightning, lai vienpusēji atsauktos. Triks ir tāds, ka, iestatot “multisig”, jūs izmantojat shēmu, piemēram, Schnorr, kur ir tikai viena atslēga, no kuras katra puse ir daļa. Ir kriptogrāfijas protokoli, kurus var izmantot, lai atjaunotu koplietotās atslēgas tādā veidā, ka secīgie lietotāji un pakalpojuma operators iegūst dažādas atslēgas daļas, kas ir vienādas ar vienu un to pašu publisko atslēgu. Nododot statusa ķēdi, sūtītājs, saņēmējs un operators iesaistās ārpusķēdes protokolā, un operators dzēš savu veco daļu iepriekšējam īpašniekam, tāpēc viņi pat nevar kaut ko parakstīt sadarbībā ar šo lietotāju.

Lightning būtībā ir vienpusēja vienošanās starp diviem lietotājiem, kurā katrs var jebkurā laikā ieviest ķēdi, ja vien viņi pievērš uzmanību blokķēdei. Bet jūs nevarat mainīt kanāla dalībniekus šajā līgumā, nepievienojoties ķēdei un nemaksājot nepieciešamās maksas. Tā kā darbojas sodu drošības mehānisms (atņemt visu naudu no kāda, kurš mēģinājis krāpties ar veco valsti), jūs arī nevarat izveidot līgumus starp vairāk nekā diviem cilvēkiem. Ir (praktiski, nevis burtiski, skaitļošanas izmaksu dēļ) nav iespējams izdomāt veidu, kā noteikt vainu un sodīt tikai pareizo pusi līgumos starp vairāk nekā diviem cilvēkiem.

Stāvokļa ķēdes ir tāda paša veida līgumi, izņemot beztermiņa līgumu, kurā var būt iesaistīti, ja vien ikviens, kas vēlas būt, ir gatavs uzticēties pakalpojuma operatoram, kas ir jāņem vērā, ka tas var būt apvienots starp grupu un var tikt izpildīts vienpusēji kā kamēr skatāties, kā blokķēde un pakalpojuma operators(-i) uzvedas godīgi.

Tas, kas notika šajā progresā, no Lightning līdz Statechain, ir tas, ka jūs esat ļāvis vairāk nekā diviem cilvēkiem droši mijiedarboties ārpus ķēdes, ja viņi vēlas uzticēties neitrālai pusei, lai panāktu godīgu iznākumu. Tādējādi tika iegūta liela mērogojamība par izmaksām par uzticības ieviešanu papildus jau esošajai prasībai palikt tiešsaistē un skatīties blokķēdi.

Kāpēc? Jo tas patiešām ir vienīgais veids, kā panākt šo lielāku mērogojamību, nepievienojot blokķēdei jaunu funkcionalitāti. Pievienojiet attēlam uzticību. Pašreizējā situācijā mēs, iespējams, varam panākt diezgan lielu blokķēdes mērogojamību, neizmantojot pilnīgu aizbildnību, uzticoties vienai vienībai, lai tas nenozagtu jūsu naudu, taču katrs solis, ko mēs spersim lielākas mērogojamības virzienā, radīs lielāku uzticību.

To nevar apiet; vai nu blokķēdei ir jāpievieno jauna funkcionalitāte, vai arī mums kā dažādu lietotāju grupu kolektīvam ir jāpieņem, kā tas notiks. Pie malām rodas lielāka uzticēšanās mazāk vērtīgiem lietošanas gadījumiem un zemākas neto vērtības lietotājiem.

There has been quite a lot of concern and discussion around this entire dynamic this year. The higher the average fee trends for space in a block, the more people will be priced out of using Bitcoin, even when you take into account things like the Lightning Network. Inscriptions and Ordinals caused a massive divide in the more active minority of people in this space, and all of it at the root was centered around the dynamic of one use case potentially raising the fees for blockspace to the point that another use case was priced out of being viable on Bitcoin.

It has been a very illuminating year so far watching people call Taproot a mistake, rally around publicly decrying the incompetence of developers in not realizing what they did, and dig in further into a dogmatic attitude. “Never upgrade or change Bitcoin again because it is perfect and infallible.” These same people in a vast overlap tend to also be the same people championing Bitcoin as a tool for self-sovereignty. They seem to always be the same people preaching self custody as a magic remedy for everything, and when scaling problems get brought up? Oh, Lightning is THE solution to that. Then they point at Ordinals and inscriptions again and start screaming about how one use case will price out another one, and so that bad one has to be stopped.

It is missing the forest for the trees. Any use of bitcoin that is profitable and cost effective to deal with demand is going to happen. There is literally no way to stop that, and Bitcoiners convincing themselves they can are fooling themselves. All of the backlash against Ordinals and Inscriptions very quickly led to people intentionally doing even more costly things like STAMPS, which instead of using witness data that doesn’t have to be stored in the UTXO set, puts their data inside the actual UTXOs. Rather than acknowledging the reality that if people think it is profitable to pay for blockspace they will, many people are falling victim to a knee jerk reaction of trying to stop what they think is bad while completely ignoring the reality that there are other worse ways to accomplish the same thing anyway if it makes economic sense. An impulsive reaction to the rise of Ordinals and Inscriptions is dragging down the entire attention span of involved people in this space into a pit of wasted efforts to stop things causing fee pressure that they don’t agree with instead of considering how to adapt and scale things they do agree with to that fee pressure.

Click the above image to download the PDF. 

Liela daļa cilvēku, kas iesaistās šādi, burtiski strīdas ar vēju. Viņi mēģina mums likt beigt pūst, jo tas apgāž lietas, nevis sasien vai nosver pamatu, lai tas izturētu. Ja jūs veiksmīgi bloķēsit vai cenzēsit uzrakstus, cilvēki izmantos tikai STAMPS vai OP_RETURN, vai metodes, kas vēl vairāk izšķērdēs tīkla resursus.

Ultimately no technical filter will be good enough to stop people from doing dumb or non-monetary things with the Bitcoin network. The only filter that will successfully stop anything from being done on Bitcoin is economics. And that filter is equally created and equally affects every use of Bitcoin. It’s time to stop trying to fight externalities driven by economic demand and try to counter them through improving efficiency.

Ja Tu domā Bitcoin’s primary value and purpose is to transfer value, then rather than obsess over somehow stopping all other uses of Bitcoin, you should be focused on considering the trade offs of different mechanisms that can improve its efficiency in transferring value. You are either going to have to choose between progressively adding more trust to things in order to accomplish that, or adding new features to the Bitcoin protocol itself to build more efficient things without depending on trust.

Buraq, bēdīgi slavenais Lightning slepkava, nesen ierosināja TBDxxx, jaunu otrā slāņa protokolu. Būtībā tā ir liela daudzpusēja statusa ķēdes/kases sistēma, kas nav saistīta ar aizbildnību, neprasa uzticēties pakalpojuma operatoram kā statusa ķēdei, un tā var apvienot daudzus lietotājus vienā ķēdes UTXO. Lai tas darbotos, ir nepieciešams ANYPREVOUT(APO) vai CHECKTEMPLATEVERIFY(CTV), tāpēc ir nepieciešamas vienprātīgas izmaiņas. Kanālu rūpnīcas ir veids, kā izmantot vienu UTXO un salikt Lightning kanālus vienu virs otra, tādējādi viens UTXO var pārstāvēt desmitiem lietotāju, kuriem visiem ir parastais Lightning kanāls augšpusē. Tas arī prasa ANYPREVOUT.

Both of these proposals can scale the use of Bitcoin to transfer value much further than Lightning can now, but ultimately both of them are subject to the same economic fee pressure that Lightning and on-chain use are. To join one of these multiparty channel pools, or exit one, or enforce something non-cooperatively on chain you still have to pay fees. For something like a channel factory this will involve one person who needs to close or enforce something actually unfurling and closing (fully or partially) the entire channel factory with everyone in it, creating costs and on-chain implications for everyone. Even despite accomplishing a huge increase in scalability without trust, it still falls victim to the effects of the blockspace market maturing.

Lai to mazinātu (neatrisinātu), mums, iespējams, būs nepieciešams vēl vairāk OP kodu. Tādas lietas kā OP_EVICT vai TAPLEAFUPDATEVERIFY. OP_EVICT ļauj grupai kolektīvi izmest dalībnieku, kas nesadarbojas, no daudzpusēju pušu kanāla, neaizverot vai neietekmējot nevienu citu tajā, izmantojot vienu darījumu ar vienu ievadi un diviem izvadiem. Tas neatrisina problēmu, bet padara to daudz efektīvāku, ļaujot izlikt vienu cilvēku ar daudz mazāku nospiedumu ķēdē. TLUV paveic to pašu, izņemot to, ka visi citi kādu izstumj, tas ļauj vienam lietotājam izņemt visus savus līdzekļus, netraucējot nevienam citam vai nevienam citam nav jāsadarbojas.

To address more of the issues, we need to make more changes to Bitcoin. There’s no way around that. Taproot “opened the door” to Inscriptions in the sense that it relaxed limits enough for people to go nuts with it, but they were already possible before Taproot. You can look at Taproot as having provided efficiency gains for both monetary use cases as well as non-monetary use cases. It made multisig the same size as a regular single sig address, which helps make using a higher security set up for keys or second layer protocols cheaper, but it also made it cheaper to inscribe arbitrary data.

Two sides of the same coin. And that is how it is. Same as it ever was. Making use of the blockchain more efficient is not always going to improve solely the use case you want, but it is absolutely necessary to scale Bitcoin in a way that is self-sovereign and self-custodial. It’s time to either accept that and start considering the reality of finding the optimal efficiency gains for value transfer with the least efficiency gains for detrimental or non-value transfer uses, or it’s time to accept that the only way to scale value transfer is to introduce trust.

A good number of people in this space have already made their choice one way or another, but there is a large contingent of people in the middle who refuse to accept either. This loud group in the middle needs to wake up and smell the coffee, and accept the reality of the situation. This is how blockchains work. Pick one; either brace yourself to accept the injection of trust into things, or accept the reality that changes need to happen. You can tell yourself all day long that you don’t have to choose, but your actions in attacking the notion of any change to Bitcoin at all while simultaneously championing self-custodial Bitcoin as a solution for the world are implicitly making the choice to accept more trust being introduced into the system, whether you want to acknowledge that or not. 

Šis raksts ir iekļauts Bitcoin Žurnāla "Izņemšanas problēma". Noklikšķiniet šeit, lai abonētu tūlīt.

Šī raksta brošūra PDF formātā ir pieejama lejuplādēt

Oriģināls avots: Bitcoin žurnāls