Bitcoin Magazine – bitcoinové novinky, články a odborné statistiky domov
Nostr Wallet Connect: Vrstva pro spolupráci bitcoinových aplikací
NOSTR WALLET CONNECT: VRSTVA SPOLUPRÁCE V BITCOINOVÉ APLIKACI
SHINOBI PŘED 48 MINUTAMI
Jak roste složitost bitcoinového softwaru a aplikací využívajících bitcoiny, roste také potřeba jednoduchého koordinačního mechanismu pro interakci různých aplikací.
Když půjdeme do budoucnosti adopce a vývoje bitcoinů, je zde jeden problém interakce softwaru, který se dostává do popředí překážek, s nímž se vývojáři musí vypořádat: kompatibilita. Jak se aplikace a protokoly v tomto prostoru stávají složitějšími a funkčnějšími, aby vyhovovaly potřebám skutečných uživatelů a případů použití, představuje to dilema, které má v zásadě pouze dvě skutečné odpovědi; buď aplikace nebo peněženka musí interně integrovat každý protokol a funkce nezbytné ke splnění požadavků svého účelu, nebo musí být různé aplikace schopny spolu komunikovat.
Jedním z příkladů, kde se tento problém objevuje, je integrace Lightning do různých aplikací a softwarových nástrojů. Lightning je velmi komplikovaný zásobník protokolů k implementaci, který zahrnuje řadu dílčích protokolů diktujících, jak koordinovat a zpracovávat aktualizace stavu kanálu Lightning. To zahrnuje transakční strukturu pro každý stav kanálu a to, co vynucuje, pořadí, ve kterém je každý krok vytváření a podepisování nových transakcí prováděn, aby byla zaručena bezpečnost uživatelských prostředků, a funkce pro sledování blockchainu, aby automaticky reagoval vhodným způsobem, pokud neplatné stavy jsou někdy odeslány do blockchainu.
To je pro vývojáře jediné aplikace velmi složité, aby se přímo integroval do svého projektu. Zřejmým závěrem, pokud to vyžaduje příliš mnoho úsilí, je spoléhat se na již vytvořený software, který řeší problém implementace Lightning, a jednoduše vytvořit svou aplikaci, abyste mohli komunikovat s tímto externím softwarem. To vede k dalšímu problému: co když uživatelé vaší aplikace nepoužívají tuto konkrétní implementaci Lightning nebo peněženku?
I přes outsourcing této funkce aplikace vývojový tým stále plně neunikl problému složitosti. I když nemusí plně implementovat Lightning sami, vývojář, který se vydá touto cestou, se nyní musí vypořádat se začleněním podpory API pro jakoukoli peněženku Lightning, kterou by uživatel jejich aplikace mohl potenciálně používat. To vyžaduje držet krok s jakýmikoli změnami nebo úpravami více Lightning peněženek, jejich API, jak fungují vnitřní funkce této peněženky a které z nich podporují. Nedržet krok s žádnými změnami v konkrétní peněžence by narušilo jejich aplikaci pro uživatele této peněženky.
Musí existovat nějaký standardizovaný mechanismus pro software na obou stranách této mezery, aby byl jednoduše schopen implementovat jednu věc, aby spolu všechny tyto různé nástroje mohly mluvit. To by umožnilo každému vývojáři aplikací a každému vývojáři peněženky Lightning jednoduše integrovat a udržovat jeden jediný protokol, který by umožnil jejich aplikacím vzájemně komunikovat.
Nostr Wallet Connect je protokol, který se snaží být skutečně zobecněným mechanismem pro splnění této potřeby. Při pokusu o vložení plateb Lightning do Nostr se objevily všechny tyto problémy se složitostí vyplývající z toho, jak to udělat.
BLESK A NWC
Tým za Amethystem, klientem Nostr, a Alby, webovou peněženkou Lightning, vytvořil NWC, aby vyřešil problém uživatelů Nostr, kteří chtějí integrovat Lightning do svého prostředí Nostr, aniž by museli používat speciální peněženku. Aplikace/protokol je založen na architektuře identity Nostr, kde každá zpráva (událost) odeslaná přes Nostr je podepsána kryptografickým párem klíčů fungujícím jako vaše identita na Nostr. To umožňuje aplikaci jednoduše vygenerovat pár klíčů Nostr a pouze z toho mít kryptografický ověřovací mechanismus, který lze použít při komunikaci s externí bitcoinovou peněženkou, aby byly splněny funkce aplikace.
[ZDE VLOŽTE INFORMACE]
Pomocí páru klíčů k registraci externí aplikace v peněžence Lightning může aplikace nyní pingnout vaši peněženku a zahájit platbu. Specifikace v současné době podporuje placení faktur BOLT 11, provádění plateb keyend (nefakturované platby prováděné na veřejný klíč uzlu), placení více faktur současně, generování faktury, kterou předložíte někomu jinému, aby vám zaplatil, a několik dalších funkcí umožňujících historii plateb a dotazy na zůstatek peněženky z externí aplikace.
To vše je koordinováno přes Nostr, což umožňuje velmi redundantní komunikační prostředky, které nezávisí na jediném centralizovaném mechanismu zasílání zpráv nebo se uživatel potřebuje spolehnout na komplikovaný software, jako je Tor nebo jiné protokoly, aby se usnadnilo síťové spojení mezi aplikací a softwarem peněženky. nebo infrastrukturu běžící na jejich domácí síti. Nostr také podporuje šifrované přímé zprávy, což znamená, že komunikace mezi peněženkou a aplikací je zcela soukromá a neodhaluje žádné podrobnosti o platbách, které jsou koordinovány na přenosy Nostr používané ke komunikaci.
Na straně peněženky mostu NWC lze implementovat bezpečnostní omezení, která zabrání tomu, aby externí aplikace měla neomezený přístup k prostředkům peněženky v případě, že by byl kompromitován klíč Nostr používaný ke komunikaci s peněženkou. Omezení povolených částek, stejně jako četnost plateb, lze konfigurovat na straně peněženky připojení.
NWC je užitečné pro mnohem více než pouhou integraci Lightning do aplikací Nostr. Celá filozofie návrhu samotného Nostr jako protokolu se soustředila na to, aby byl dostatečně jednoduchý, aby celý protokol mohl snadno a správně implementovat jakýkoli vývojář s minimem času a zdrojů. Aplikace, které nemají nic společného s Nostrem, mohou snadno integrovat NWC nebo podobné protokoly téměř bez režie nebo složitosti, aby řešily základní problémy, jak propojit bitcoinovou peněženku s jejich aplikací, aniž byste ji museli zabudovat přímo do aplikace.
ZA BLESKEM
Potenciál protokolu, jako je NWC, poskytnout obrovskou hodnotu vývojářům peněženek a aplikací, daleko přesahuje integraci Lightning peněženek do speciálních aplikací. Celý dlouhodobý směr interakce s bitcoinem, kromě nějakého zásadního průlomu, který si dosud nikdo neuvědomil, směřuje k interaktivním protokolům mezi více uživateli.
Dokonalým příkladem jsou multiparty coinpooly. Většina konkrétních návrhů, jako jsou stromy Ark nebo Timeout, je postavena na centrální koordinační skupině nebo poskytovateli služeb, což může snadno usnadnit způsob předávání zpráv mezi peněženkami uživatelů, ale to omezuje návrhový prostor jediným bodem selhání. Pokud je sto uživatelů sbaleno do coinpoolu společně na jednom UTXO, bezpečnostní model je založen na tom, že každý uživatel má předem podepsanou cestu k jednostrannému výběru svých coinů v řetězci. Tento mechanismus lze uplatnit v případě selhání nebo zmizení koordinátora, aby se zajistilo, že jeho finanční prostředky nebudou ztraceny, ale je to nejméně účinný způsob, jak zvládnout takový nejhorší scénář.
Pokud by uživatelé byli schopni najít mechanismus, jak spolu komunikovat v nepřítomnosti poskytovatele služeb nebo koordinátora, bylo by možné dosáhnout mnohem efektivnějších výstupů z řetězce použitím větší skupiny multisig k migraci svých prostředků jinam s mnohem efektivnější ( a tudíž levnější) stopa na řetězu. NWC a Nostr se pro takový scénář dokonale hodí.
Z takového protokolu by také mohly těžit kolaborativní peněženky s více podpisy mezi více stranami. V kombinaci se standardy jako PSBT by jednoduchý komunikační mechanismus Nostr mohl drasticky zjednodušit složitost různých peněženek s podporou multisig, která koordinuje podepisování transakcí hladkým a uživatelsky přívětivým způsobem.
Discreet Log Contracts (DLC) jsou dalším úžasným využitím pro takový protokol. Celé schéma DLC spoléhá na to, že obě strany budou mít přístup k podpisům věštců, aby jednostranně správně uzavřely smlouvu, pokud obě strany nebudou spolupracovat na jejím společném urovnání. Nostr je dokonalý mechanismus pro věštce k vysílání těchto podpisů a umožňuje jednoduché předplatné jejich klíče Nostr v peněženkách uživatelů, aby automaticky sledovali a získávali podpisy při vysílání věštci.
Jak čas plyne a na bitcoinu se staví stále více aplikací a protokolů s požadavkem na interaktivitu mezi uživateli a mezi různými aplikacemi, bude velmi zapotřebí univerzální komunikační mechanismus, který by usnadnil to, aniž by se spoléhalo na jediný bod selhání. .
Nostr je dokonalým základním protokolem, který to usnadňuje vzhledem k jeho neuvěřitelné jednoduchosti a redundanci velké sady relé, které lze použít. NWC je dokonalým příkladem toho, že je to životaschopné řešení.