Външно притежаван акаунт (EOA)
Външно притежаваният акаунт (EOA) е основно вид акаунт в мрежата на
Ethereum, който се контролира от лице, използващо
частен ключ. С други думи, това е акаунтът, който ще използвате за изпращане на трансакции или управление на вашия Ether (ETH). За разлика от акаунтите за смарт договори, които се контролират единствено чрез код, EOA се управляват директно от хора.
Има два основни типа акаунти в Ethereum:
Външно притежавани акаунти (EOA) – контролират се от потребители с частен ключ.
Акаунти за договори (CA) – контролират се чрез код или
смарт договори. Работят без частен ключ.
Както EOA, така и акаунтите за договори могат да съхраняват и прехвърлят ETH. Само EOA обаче могат да инициират трансакции. Акаунтите за договори не могат да правят нищо, докато не бъдат задействани от EOA или от други смарт договори.
Всеки EOA е обвързан с два криптографски ключа:
частен ключ и
публичен ключ. Частният ви ключ ви дава възможност да контролирате акаунта си - той се използва за подписване на трансакции и доказва, че вие сте този, който ги разрешава.
Публичният ключ се използва за генериране на вашия Ethereum адрес, който можете да споделите с други, за да могат да ви изпратят ETH.
Ето кратък преглед на това, което правят EOA:
Трансакции: EOA могат да изпращат токени до други акаунти, да взаимодействат със смарт договори или да извикват конкретни функции в блокчейна.
Такси за газ: Всяка трансакция изисква
газ, която се плаща в ETH. Тази газ отива при копачите или валидаторите, които обработват трансакции.
Сигурност: Сигурността на EOA се свежда до вашия частен ключ. Ако някой друг се сдобие с него, той може да поеме контрола върху вашия акаунт.
Макар че и в EOA, и в акаунтите за договори могат да се съхраняват токени и данни, има някои основни разлики:
EOA: Контролират се с частни ключове и се управлява от хора. EOA могат да изпращат трансакции, но не могат да изпълняват код автоматично.
Акаунти за договори (CA): Контролират се от код (смарт договори) и нямат частни ключове. CA не могат да изпращат трансакции сами – те се нуждаят от EOA или друг договор, за да започнат процеса. Те обаче могат да изпълняват конкретни инструкции или правила, след като бъдат задействани.
Например, да приемем, че искате да направите суап на ETH за друг токен на децентрализирана борса (
DEX). Вашият EOA ще взаимодейства с DEX (която е акаунт за договори), за да се осъществи този суап. Самата DEX не можеше да направи нищо, докато вие (чрез вашия EOA) не ѝ кажете.
EOA са гръбнакът на Ethereum, защото те са начинът, по който потребителите взаимодействат с мрежата. Всяко действие в Ethereum започва с EOA. Без EOA смарт договорите просто биха стояли там – те не могат да работят сами. И така, чрез EOA задвижваме нещата, независимо дали това е изпращане на ETH, взаимодействие с
DApp, или задействане на смарт договор.
Най-важното нещо за наличието на EOA е да се уверите, че частният ви ключ е в безопасност. Ако го загубите, губите достъп до акаунта и средствата си завинаги. Ако някой открадне вашите ключове, той може да контролира акаунта ви и да вземе всичко.
Външно притежаваният акаунт (EOA) е контролиран от потребителя акаунт в Ethereum. Позволява ви да изпращате ETH, да взаимодействате със смарт договори и да правите много други неща в мрежата. Поддръжката на EOA от акаунтите за договори, които се контролират чрез код и трябва да бъдат задействани от EOA, за да работят. Но и двете са от съществено значение, за да може Ethereum да работи.