Глоссарий

А

Адрес учетной записи

Аккумулированный хэш корневого реестра (Accumulator Root Hash)

  • Аккумулированный хэш корневого реестра - это хэш корневого реестра Меркла (Merkle accumulator).

Аккумулятор Меркла (Merkle Accumulator)

  • Merkle Accumulator - это дерево Меркла только для добавления данных, которое Aptos Blockchain использует для хранения реестра.

  • Аккумуляторы Меркла могут предоставить доказательства того, что транзакция была включена в цепочку («доказательство включения»).

  • В литературе их также называют «деревьями истории» ("history trees").

AptosBFT

  • AptosBFT - это алгоритм консенсуса BFT-протокола в сети Aptos.

  • AptosBFT основан на HotStuff.

Aptos Blockchain

  • Aptos Blockchain - это реестр неизменяемых транзакций, согласованных валидаторами в сети Aptos (сеть валидаторов).

Aptos-core

Aptos-core - это технология с открытым исходным кодом, на которой работает Aptos Payment Network. Aptos-core содержит программное обеспечение для:

  • самого Aptos Blockchain, который генерирует и хранит неизменяемый реестр подтвержденных транзакций

  • процесса валидации, который реализует алгоритм консенсуса для проверки транзакций и добавления их в неизменяемый реестр Aptos Blockchain

Aptos Framework

Aptos Framework определяет общедоступный API для обновлений блокчейна и структуру ончейн-данных. Он определяет бизнес-логику и контроль доступа для трех ключевых столпов функциональности Aptos: платежи, казначейство и ончейн-управление. Он реализован в виде набора модулей, написанных на языке программирования Move, хранящихся ончейн в виде байт-кода Move.

Aptos нода

Aptos нода (узел) - это равноправный объект сети Aptos, который отслеживает состояние Aptos Blockchain. Существует два типа нод в сети Aptos: валидирующие и полные ноды).

Aptos протокол

  • Aptos протокол - это спецификация того, как транзакции отправляются, упорядочиваются, выполняются и записываются внутри сети Aptos.

AptosAccount

  • AptosAccount - это ресурс Move, который содержит все административные данные, связанные с учетной записью, такие как порядковый номер, баланс и ключ аутентификации.

  • AptosAccount - это единственный ресурс, который гарантированно содержится в каждой учетной записи.

AptosAccount модуль

  • AptosAccount модуль - это модуль Move, который содержит код для управления административными данными, хранящимися в конкретном ресурсе AptosAccount.T .

  • Код для проверки или увеличения порядковых номеров, снятия или внесения валюты и извлечения газовых депозитов включен в модуль AptosAccount.

Aptos девнет

Б

Байткод Move (Move Bytecode)

  • Программы Move компилируются в байткод Move.

  • Байткод Move используется для выражения скриптов транзакций и модулей Move.

B

Валидатор (Validator)

  • Альтернативное наименование: Валидаторы.

  • Валидатор - это элемент экосистемы Aptos, который выполняет проверку в Aptos Blockchain. Он получает запросы от клиентов и запускает процессы согласования, исполнения и хранения.

  • Валидатор хранит историю всех транзакций в блокчейне.

  • Внутри валидатор должен сохранять текущее состояние, выполнять транзакции и вычислять следующее состояние.

Версия (Version)

  • Версия также называется «уровнем» в литературе по блокчейну.

  • Aptos Blockchain не имеет явного понятия блока - он использует блоки только для группирования и выполнения транзакций.

  • Транзакция на уровне 0 - это первая транзакция (транзакция генезиса), а транзакция на уровне 100 - это 101-я транзакция в хранилище транзакций.

Bизантийский валидатор

  • Валидатор, который не следует спецификации консенсус-протокола и хочет поставить под угрозу корректное выполнение протокола.

  • BFT-алгоритмы традиционно поддерживают до одной трети голосов, принадлежащих византийским валидаторам в рамках алгоритма.

Византийская отказоустойчивость (Byzantine Fault Tolerance (BFT)

  • Византийская отказоустойчивость Byzantine Fault Tolerance (BFT) - это способность распределенной системы предоставлять гарантии безопасности и жизнеспособности при наличии ошибочных или «византийских» валидаторов ниже определенного порога.

  • Aptos Blockchain использует AptosBFT - протокол консенсуса, основанный на HotStuff.

  • Алгоритмы BFT обычно работают с рядом объектов, в совокупности владеющих N голосами (которые в применении системы сети Aptos называются "валидаторами").

  • N выбирается для того, чтобы противостоять некоторому числу валидаторов, имеющих f голосов, которые могут быть злонамеренными.

  • В данной конфигурации N обычно устанавливается равным 3f+1. Валидаторам, набравшим до f голосов, система разрешает быть ошибочными — оффлайн, злонамеренными, медленными и т. д. Пока честные валидаторы владеют 2f+1 голосами, они смогут прийти к консенсусу по согласованным решениям.

  • Это означает, что протоколы консенсуса BFT могут функционировать корректно, даже если до одной трети голосов принадлежит валидаторам, которые являются скомпрометированными или не работают.

Виртуальная машина Move (Move Virtual Machine (MVM))

  • Виртуальная машина Move выполняет скрипты транзакций, написанные в байт-коде Move, для получения результата исполнения. Этот результат используется для обновления состояния блокчейна.

  • Виртуальная машина является частью валидатора.

Г

Газ (Gas)

  • Газ - это способ оплаты вычислений и хранения в сети блокчейн. Все транзакции в сети Aptos стоят определенное количество газа.

  • Газ, необходимый для транзакции, зависит от размера транзакции, вычислительных затрат на выполнение транзакции и объема дополнительного глобального состояния, созданного транзакцией (например, если создаются новые учетные записи).

  • Целью газа является регулирование спроса на ограниченные вычислительные ресурсы и ресурсы хранения валидаторов, в том числе предотвращение атак типа «отказ в обслуживании» (DoS).

Д

Девнет (Devnet)

  • Девнет - это общедоступный экземпляр сети Aptos, работающий с использованием набора валидирующих тестовых нод.

  • Девнет - это демонстрация сети Aptos, служащая для экспериментов с новыми идеями.

  • Девнет имитирует цифровую платежную систему, а монеты в девнете не имеют реальной стоимости.

Дерево Меркла (Merkle Tree)

  • Дерево Меркла - это тип аутентифицированной структуры данных, который позволяет эффективно проверять целостность и обновления данных.

  • Сеть Aptos рассматривает всю цепочку блоков как единую структуру данных, которая записывает историю транзакций и состояний с течением времени.

  • Дерево Меркла упрощает работу приложений, обращающихся к блокчейну. Это позволяет приложениям:

    • читать любые данные в любой момент времени.

    • проверять целостность данных с помощью единой платформы.

Доказательство (Proof)

  • Доказательство — это способ проверить точность данных в блокчейне.

  • Каждая операция в Aptos Blockchain может быть криптографически проверена на предмет того, что она действительно верна и что данные не были пропущены.

  • Например, если пользователь запрашивает информацию в рамках конкретной выполненной транзакции, ему будет предоставлено криптографическое доказательство того, что возвращаемые ему данные верны.

Е

Ed25519

  • Ed25519 - это наша поддерживающая схема цифровой подписи.

  • В частности, сеть Aptos использует схему PureEdDSA по кривой Ed25519, как определено в RFC 8032.

И

Истечение срока действия (Expiration Time)

Транзакция перестает быть действительной по истечении срока ее действия. Если предположить, что:

  • Time_C - текущее время, согласованное между валидаторами (Time_C - это не местное время клиента);

  • Time_E - время истечения срока действия транзакции T_N;

  • Time_C > Time_E и транзакция T_N не была включена в блокчейн,

есть гарантия, что T_N никогда не будет включена в блокчейн.

К

Консенсус

  • Консенсус является компонентом валидатора.

  • Компонент консенсуса отвечает за координацию и согласование между всеми валидаторами блока выполняемых транзакций, их порядка и результатов выполнения.

  • Aptos Blockchain формируется из этих согласованных транзакций и соответствующих результатов их выполнения.

Консенсус-протокол

  • Консенсус-протокол выполняется совместно n валидаторами для одобрения или отклонения транзакции, согласования порядка транзакций и результатов выполнения.

  • См. BFT

Корневой хэш состояния (State Root Hash)

  • Корневой хэш состояния - это хеш Меркла для всех ключей, который оценивает состояниеAptos Blockchain в данной версии.

Корректно сформированная транзакция (Well-Formed Transaction)

Транзакция в сети Aptos считается корректно сформированной, если для нее выполняется каждое из следующих условий:

  • Транзакция имеет действительную подпись.

  • Учетная запись существует по адресу отправителя.

  • Он включает открытый ключ, и хэш открытого ключа соответствует ключу аутентификации учетной записи отправителя.

  • Порядковый номер транзакции совпадает с порядковым номером учетной записи отправителя.

  • Баланс учетной записи отправителя превышает максимальное количество газа.

  • Срок действия транзакции не истек.

Кран (Faucet)

  • Кран - это способ создания валюты Aptos без реальной ценности, только в нашем девнетe.

  • Кран - это сервис, работающий совместно с девнетом. Этот сервис существует только для облегчения добычи монет в рамках девнета.

  • Вы можете использовать кран, отправив запрос на создание монет и перевод их на указанный аккаунт от вашего имени.

Л

Лидер (Leader)

  • Лидер - это валидатор, который предлагает блок транзакций для протокола консенсуса.

  • В протоколах на основе лидеров, ноды должны договориться о лидере для достижения прогресса.

  • Лидеры выбираются функцией, которая в качестве входных данных принимает номер текущего раунда round number.

М

Максимальное количество газа (Maximum Gas Amount)

  • Максимальное количество газа транзакции - это это максимальное количество газа, которое отправитель готов заплатить за транзакцию.

  • Плата за газ равна цене газа, умноженной на количество единиц газа, необходимых для обработки этой транзакции. Если результат меньше максимального количества газа, транзакция успешно выполнена.

  • Если во время выполнения транзакции заканчивается газ или у учетной записи заканчивается баланс, с отправителя будет взиматься плата за использованный газ, а транзакция не будет выполнена.

Мемпул (Mempool)

  • Мемпул является одним из компонентов валидатора. Он содержит в памяти буфер транзакций, которые были отправлены, но еще не согласованы и не выполнены. Мемпул получает транзакции из JSON-RPC Service.

  • В мемпул валидатора транзакции добавляются из сервиса JSON-RPC Service текущих нод и из мемпула других нод Aptos.

  • Если текущий валидатор является лидером, его компонент консенсуса извлекает транзакции из своего мемпула и предлагает порядок транзакций, формирующих блок. Затем кворум валидаторов голосует за предложение.

Модуль Move (Move Module)

  • Модуль Move определяет правила обновления глобального состояния Aptos Blockchain.

  • В протоколе Aptos модуль Move представляет собой смарт-контракт.

  • Каждая отправленная пользователем транзакция включает скрипт транзакции. Скрипт транзакции вызывает процедуры одного или нескольких модулей Move для обновления глобального состояния блокчейна в соответствии с правилами.

Move

Н

Нода (Node)

  • Нода - это равноправный объект сети Aptos, который отслеживает состояние Aptos Blockchain.

  • Aptos нода состоит из логических компонентов. Мемпул, консенсус и виртуальная машина являются примерами компонентов ноды.

Номер раунда (Round Number)

  • Номер раунда - это общий счетчик, используемый для выбора лидеров в эпоху протокола консенсуса.

О

Отправитель (Sender)

  • Альтернативное наименование: Адрес отправителя (Sender address).

  • Отправитель - это адрес учетной записи инициатора транзакции. Транзакция должна быть подписана отправителем.

П

Порядковый номер (Sequence Number)

  • Порядковый номер учетной записи показывает количество транзакций, которые были отправлены и зафиксированы в цепи с этой учетной записи. Он увеличивается каждый раз, когда транзакция, отправленная с этой учетной записи, выполняется или прерывается, и сохраняется в блокчейне.

  • Транзакция выполняется только в том случае, если она соответствует текущему порядковому номеру учетной записи отправителя. Это помогает упорядочить несколько транзакций от одного и того же отправителя и предотвращает повторные атаки.

  • Если текущий порядковый номер учетной записи A равен X, то транзакция T учетной записи A будет выполнена только в том случае, если порядковый номер T равен X.

  • Эти транзакции будут храниться в мемпуле до тех пор, пока они не станут следующим порядковым номером для этой учетной записи (или пока не истечет срок их действия).

  • Когда транзакция будет выполнена, порядковый номер учетной записи станет X+1. Учетная запись имеет строго возрастающий порядковый номер.

Р

Раунд (Round)

  • Раунд состоит из достижения консенсуса по блоку транзакций и результатам их выполнения.

Ресурсы Move (Move Resources)

  • Ресурсы Move содержат данные, к которым можно получить доступ в соответствии с процедурами, объявленными в модуле Move.

  • Ресурсы Move никогда не могут быть скопированы, повторно использованы или потеряны. Это защищает программистов Move от случайной или намеренной потери ресурса.

REST Сервис (REST Service)

  • Компонент REST сервис — это внешний интерфейс Aptos ноды. Любой входящий запрос клиента, например отправленные транзакции или запросы, должен сначала пройти через REST сервис. Клиенту необходимо пройти через компонент REST сервиса, чтобы получить доступ к хранилищу или любому другому компоненту в системе. Это фильтрует запросы и защищает систему.

  • Всякий раз, когда клиент отправляет новую транзакцию, REST сервис передает ее в мемпул.

С

Скрипт транзакции (Transaction Script)

  • Каждая транзакция, отправленная пользователем, включает в себя скрипт транзакции.

  • Он представляет собой операцию, которую клиент отправляет валидатору.

  • Операция может быть запросом на перевод монет от пользователя А к пользователю Б или может включать взаимодействие с опубликованными модулями Move/смарт-контрактами.

  • Скрипт транзакции - это произвольно выбранная программа, которая взаимодействует с ресурсами, опубликованными в глобальном хранилище Aptos Blockchain, посредством вызова процедур модуля. Он кодирует логику транзакции.

  • Один скрипт транзакции может отправлять средства нескольким получателям и вызывать процедуры из нескольких разных модулей.

  • Скрипт транзакции не хранится в глобальном состоянии и не может быть вызван другими скриптами транзакций. Это программа для однократного использования.

Смарт-контракт (Smart Contract)

Событие (Event)

  • Событие - это ориентированное на пользователя представление последствий выполнения транзакции.

  • Транзакция может быть сконструирована так, чтобы выдавать любое количество событий в виде списка. Например, перевод Coin<TestCoin> создает событие WithdrawEvent для учетной записи отправителя и DepositEvent для учетной записи получателя.

  • В протоколе Aptos события служат доказательством того, что успешное выполнение транзакции привело к определенному эффекту. DepositEvent (в приведенном выше примере) позволяет получателю подтвердить, что платеж был получен на его счет.

  • События сохраняются в блокчейне и используются для ответов на запросы клиентов.

Сообщество разработчиков ПО с открытым исходным кодом (Open-Source Community)

  • Сообщество разработчиков ПО с открытым исходным кодом - это термин, используемый для группы разработчиков, которые работают над программным обеспечением с открытым исходным кодом. Если вы читаете этот глоссарий, значит, вы являетесь частью сообщества разработчиков проекта Aptos.

Состояние (State)

  • Состояние в протоколе Aptos - это зафиксированное мгновенное состояние распределенной базы данных.

  • Транзакция изменяет базу данных и создает новое актуализированное состояние.

Т

Транзакция (Transaction)

У

Учетная запись (Account)

  • Учетная запись в Aptos Blockchain представляет собой контейнер, содержащий произвольное количество модулей Move и ресурсов Move. По сути, это означает, что состояние каждой учетной записи состоит как из кода, так и из данных.

  • Учетная запись идентифицируется по адресу учетной записи.

Ц

Цена газа (Gas Price)

  • Каждая транзакция определяет цену газа, которую отправитель готов заплатить. Цена на газ указывается в валюте/единицах газа.

  • Цена газа, необходимая для транзакции, зависит от текущего спроса на использование сети.

  • Стоимость газа фиксируется на определенный момент времени. Стоимость газа выражена в единицах газа.

Ч

Честный валидатор

  • Валидатор, который добросовестно выполняет протокол консенсуса и не является византийским.

HotStuff

  • HotStuff - это недавнее предложение протокола консенсуса BFT.

  • AptosBFT, алгоритм консенсуса сети Aptos, основан на HotStuff.

  • Это упрощает рассуждения о безопасности и устраняет некоторые ограничения производительности предыдущих протоколов консенсуса.

Last updated