Původní autor: Visa, Andrew Beams, Catherine Gu
Původní kompilace: PANews, Jordan
Jak se adopce blockchainu neustále zvyšuje, roste i potřeba lepších uživatelských zkušeností a produktů, které podporují případy použití v reálném světě. Visa již poskytuje zákazníkům (zejména mladým zákazníkům) pohodlné automatické srážky a pravidelné automatické platby, ale stále se zdá obtížné implementovat tuto funkci na blockchainu, jako je Ethereum. Ethereum je blockchainová síť s největším objemem plateb a u některých typů on-chain digitálních peněženek je pravidelné automatické stahování plateb z uživatelských účtů stále „velkým projektem“.
V tomto ohledu společnost Visa navrhla koncept abstrakce účtu (AccountAbstraction) a použila jej k prozkoumání toho, jak používat inteligentní smlouvy k implementaci automatických programovatelných plateb, a k demonstraci toho, jak sepsat chytré smlouvy pro peněženky s vlastním hostováním, které podporují automatický výběr prostředků. .
Scénáře případů použití
Představte si scénář: Předpokládejme, že dnes je 25. února a Alice jede na dovolenou do Alp. Vrátí se 10. března, ale musí zaplatit hypotéku, účty za kabelovou televizi a účty za energie do 5. dne každého měsíce je, že nemá dost peněz na zaplacení před nástupem na dovolenou, ale bude mít dost peněz, až 1. března dostane výplatu. Nyní vyvstává otázka, jak si může Alice užít dovolenou, aniž by nezaostávala se svými platbami?

Ano, odpověď zní – automatický odpočet. Ve skutečnosti, pokud má Alice bankovní účet, je automatický odpočet velmi jednoduchý proces. Stačí, když přiřadí svůj debetní účet ke své kartě Visa. Na blockchainu však provedení takové operace není tak jednoduché, jako novou technologii však stojí za to prozkoumat blockchainová inteligentní kontraktová řešení pro výše uvedené scénáře.
Než se dostaneme k věci, nejprve pochopíme koncept účtu Ethereum V současné době existují v síti Ethereum dva typy účtů:
1. ExternallyOwnedAccounts, často nazývané „uživatelské účty“
2. Smluvní účty (ContractAccounts), často nazývané „chytré smlouvy“
Uživatelské účty ovládané privátními klíči mohou odesílat transakce a smart kontrakty vyžadují přidružený kód k provedení, ale smart kontrakty nemohou „samotné iniciovat transakce“, protože transakce musí vždy pocházet z uživatelského účtu a být podepsány uživatelem Tyto transakce zahrnují: Ethereum Zone Jednoduchý přenos tokenů mezi uživatelskými účty na blockchainu může spustit řadu složitějších transakcí, které provádějí mnoho různých akcí prostřednictvím chytrých kontraktů.
Jak tedy implementovat automatické platby na blockchainu Ethereum?
Podívejme se na situaci Alice.
Předpokládejme, že Alice má uživatelský účet na blockchainu Ethereum a ukládá svůj plat na účet a používá jej k zaplacení hypotéky, účtu za kabel a účtů za energie. Dnes, aby mohla zaplatit svůj účet, musí být zahájena transakce k převodu tokenů z jejího „externě vlastněného účtu“ na uživatelský účet příjemce platby.
Abych to upřesnil, Alicin „externě vlastněný účet“ má klíč/soukromý klíč, který zná pouze ona, a pouze ona může tento soukromý klíč použít ke generování podpisu Elliptic Curve Digital Signature Algorithm (ECDSA), který je platný pro vytváření Transakcí jsou klíčové. Pokud však Alice odjede na dovolenou, kdo vygeneruje tento podpis a vytvoří platební transakci?
V současné době existuje pro Alici řešení, jak používat úschovnou peněženku, která umožňuje třetí straně ovládat soukromý klíč Alice. Jinými slovy, Alice důvěřuje třetí straně, že ochrání její prostředky, a když chce obchodovat nebo posílat prostředky na určený účet, výhodou je, že Alice může použít správce prostředků ke generování podpisů potřebných k vytvoření transakcí pro plánované automatické platby , ale nevýhodou je, že musí této třetí straně zcela důvěřovat.
Co když tedy Alice nechce používat peněženku, protože se obává rizika, ale místo toho používá peněženku pro vlastní správu a naplánuje automatické platby? Dále si uveďme další koncept – Account Abstraction (AccountAbstraction).
Co je abstrakce účtu?
Abstrakce účtu je návrh, který se pokouší sloučit uživatelské účty a chytré smlouvy do nového typu účtu Ethereum tím, že se uživatelské účty chovají jako chytré smlouvy. V budoucnu nám abstrakce účtu umožní navrhnout jednoduché řešení pro automatické platby a mít větší flexibilitu při ověřování transakcí v řetězci, jako jsou:
1. Účty více vlastníků lze aktivovat prostřednictvím ověření více podpisů.
2. Povolit použití postkvantových podpisů k ověření transakcí.
3. Povolit tzv. veřejný účet, kde může kdokoli provádět transakce, a to úplným vyloučením ověřování podpisů.
Abstrakce účtu v podstatě umožňuje programovatelnou platnost pro ověření a potvrzení jakékoli blockchainové transakce Transakce založené na protokolu Ethereum nemusí být zcela založeny na podmínkách platnosti pevného kódu, ale některé podmínky mohou být napsány „přizpůsobeným“ způsobem. do účtu smart contract.
A co víc, abstrakce účtu podporuje automatické platby, protože je možné nastavit pravidla ověřování, která již nezahrnují ověřování podpisů.
Delegovatelné účty – použití abstrakce účtu k implementaci funkcí automatických plateb v řetězci Ethereum
Řešení automatických plateb Visa Ethereum má využít abstrakci účtu a vytvořit nový typ smlouvy o účtu – delegovaný účet Hlavní myšlenkou je rozšířit programovatelná pravidla platnosti transakcí tak, aby zahrnovaly předem schválené seznamy povolení. Jednoduše řečeno, abstrakce účtu může delegovat automatické platební operace iniciované uživatelskými účty na předem schválené automatické platební smart smlouvy.
Za prvé, obchodníci musí nasadit chytré smlouvy pro automatické platby. Když uživatel s delegovaným účtem navštíví web obchodníka, zobrazí se mu žádost o schválení automatické platby – podobně jako Visa přijímá za faktury. V tuto chvíli může uživatel vidět, že smlouva o automatické platbě bude provádět operace jménem uživatele a parametry lze nastavit podle potřeb uživatele, například uživatel může být účtován pouze jednou za měsíc a poplatek nelze překročit stanovenou maximální částku atd. A co je nejlepší, protože se jedná o inteligentní smlouvu, uživatelé si mohou být jisti, že smlouva o automatické platbě nebude jinak provedena.
Pokud uživatel souhlasí se schválením automatických plateb, peněženka přidá adresu smlouvy o automatických platbách do seznamu povolených smluv pro delegovatelný účet uživatele.

Poté obchodník spustí platbu voláním funkce účtování automatické platby. Smlouva o automatické platbě spustí účet uživatele, aby inicioval platbu push. Tato transakce bude platnou transakcí, protože byla předem přidána do seznamu povolených.

Kromě opakujících se plateb může řešení splňovat také různé aplikace v reálném světě. Řešení svěřených účtů Visa lze v budoucnu dokonce rozšířit o služby, jako je obnova účtu třetích stran.
Implementace abstrakce účtu na StarkNet

Protože Ethereum zatím nepodporuje abstrakci účtů, společnost Visa implementovala řešení delegovaných účtů na StarkNet, blockchain vrstvy 2 postavený na blockchainu Ethereum, aby se zvýšila propustnost transakcí, stejně jako další funkce pro zlepšení základních schopností vrstvy vypořádání Blockchain, vyvinuté společností kryptografický start StarkWare. Model účtu StarkNet je to, co Visa aktuálně nazývá abstrakcí účtu. Abstraktní účet kontroluje, zda transakce pochází z dané adresy.
U konkrétních účtů, pokud někdo odešle token na uživatelský účet, dojde k interakci se smlouvou o tokenu a smlouva o tokenu zkontroluje, zda je identita (klíč) použitá k podpisu transakce pro tento převod zaznamenána jako aktuální vlastník tokenu. U abstraktních účtů platí, že pokud někdo pošle token na váš účet, budete také interagovat se smlouvou o tokenu, která zkontroluje, zda je identita (smlouva) použitá k provedení tohoto převodu zaznamenána jako aktuální vlastník tokenu By. U abstraktních účtů je důležité, kdo (adresa) transakci provádí, nikoli jak (podpis) transakce je provedena.
S modelem účtu StarkNet je společnost Visa schopna implementovat řešení delegovaného účtu, které umožňuje automatické platby pro peněženky s vlastním hostitelem.
na závěr
Jako jedna z největších platebních sítí na světě Visa aktivně zkoumá inovativní řešení inteligentních smluv na podporu programovatelné měny a plateb.
Automatizované platby jsou jednou ze základních funkcí, které stávající blockchain infrastruktura postrádá, ale využití konceptu abstrakce účtů by mohlo poskytnout samoobslužné peněženky s automatickými opakujícími se platbami a dokonce přinést do blockchainu další aplikace v reálném světě nad rámec automatických plateb vytvoření lepší uživatelské zkušenosti pro tradiční platební kanály a nově vznikající platební kanály.
