- Что такое газ в Эфириуме? Сколько платить за транзакции Ethereum.
- Что можно сделать в сети Ethereum? Газ.
- Транзакция в сети Ethereum
- Перевод ETH с одного кошелька на другой
- А можно вообще не платить?
- Как этим пользоваться?
- Как обмануть систему и уменьшить цену газа в MyEtherWallet?
- Газ и его роль в Ethereum.
- Вводные по газу. Что можно делать в Эфириуме?
- Как разобраться с «ценовой политикой» Ethereum?
- Что из себя представляют транзакции в Эфириуме
- Как переводить ETH и как «играть» с комиссией?
- А можно ли не оплачивать комиссию совсем?
- Как это использовать?
- «Маленькие хитрости»: понизить цену газа в MyEtherWallet реально
Что такое газ в Эфириуме? Сколько платить за транзакции Ethereum.
«Не хватило газа на выполнение транзакции! Что это значит? Что делать то?» — такие вопросы часто задают пользователи Эфириума. И действительно: Gas, Gwei, контракты — зачем так все усложнять? В прошлый раз разбирались с транзакциями Биткоина. Сейчас задача стоит посложнее, погнали!
1 ETH = 1000000000000000000 wei = 1000000000 gwei (shannon) = 1000000 szabo = 1000 finney
Вот так Виталик Бутерин и Ко прикололись над пользователями (зная как Виталик одевается, что мы часто обсуждаем в чате 2BTC, не удивительно). Они назвали доли Эфиров в честь значимых фигур в истории криптовалют.
Hal Finney — первый пользователь Биткоин, после Сатоши Накамото
Nick Szabo — создатель идеи смарт-контрактов
Wei Dai — создатель концепта b-money, по сути, предка Биткоина
Хотите изучить подробнее «почему так названы» — читайте эту статью.
Обычно у новых пользователей Эфира бомбит, когда они впервые встречаются с понятием газ. В Биткоине все было просто — установил размер комиссии и ждешь пока перевод пройдет. Маленькая комиссия — долго ждешь, большая — поменьше. Биткоин был создан как криптовалюта, для того чтобы переводить деньги между людьми. Основное отличие Эфириума от Биткоина заключается в наличии децентрализованной виртуальной машины (EVM). Она позволяет запускать любую программу/смарт-контракт (обычно на языке программирования Solidity) при наличии достаточного количества времени и памяти (Подробнее). Ethereum создавался не как валюта для переводов, а как платформа для выполнения приложений (с оплатой теми самыми Эфирками — ETH).
В статье про кошельки Эфира мы говорили, что родной кошелек Ethereum жрет слишком много ресурсов компьютера. Это происходит как раз потому, что на вашем компьютере работает та самая виртуальная машина EVM и выполняет разные программы.
Что можно сделать в сети Ethereum? Газ.
Для простоты рассмотрим 3 действия, которые можно сделать:
- Перевести ETH другому пользователю.
- Создать смарт-контракт (программу) и записать ее в блокчейн.
- Выполнить смарт-контракт (программу).
За каждую из этих операций нужно заплатить. Единицей оплаты в сети Ethereum является «газ». На самом деле перевод «газ» является неточным, «gas» было бы правильнее перевести как «бензин». Каждая операция стоит определенное количество газа (бензина). Можно провести аналогию с автомобилем: чтобы поехать в магазин нужно небольшое количество бензина, а для поездки в другой город его потребуется много.
- Для перевода ETH с одного кошелька на другой требуется 21000 gas.
- Для создания смарт-контракта может потребоваться разное количество газа, возьмем произвольный контракт:
У каждого контракта в разделе «Contract Creator» указан адрес создателя и транзакция по записи контракта в блокчейн (выделена красной рамочкой). Если посмотреть эту транзакцию видно, что на создание было потрачено 219780 gas. - Для выполнения смарт-контракта тоже может потребоваться разное количество газа, дело в том что контракт (программа) может выполнить разное количество операций в ходе работы. Если посмотреть на контракт, что мы выбрали для примера — каждый пользователь заплатил за его выполнение 22968 gas. Вы можете убедиться в этом сами, посмотрев информацию о каждой из транзакций:
Подробно необходимое количество газа для каждой операции описано в «уставном документе» Ethereum — Yellow paper, стр. 20. Например, для записи данных в блокчейн необходимо намного больше газа, чем для простого перемножения двух чисел.
Тема создания смарт-контрактов очень интересна, но, прежде всего, для разработчиков. Кстати, Etherscan покажет вам все, даже код транзакции, вы всегда можете посмотреть что там происходит.
Транзакция в сети Ethereum
В Эфире любая транзакция состоит из четырех частей:
- Адрес получателя
- Сумма ETH к переводу (может быть 0)
- Предельная величина газа на исполнение транзакции
- Дополнительные данные
При включении транзакции в блок исполняется требуемый код (если это запрос к смарт-контракту), и потребленное контрактом кол-во газа переводится в Эфирки и списывается с вас в виде вознаграждения майнеру.
Лимит газа служит определенным ограничителем платы за транзакцию. Если вы выставите лимит 1 000 000 gas, а смарт-контракту нужно всего лишь 50 000 gas, то вы и заплатите только 50 000. Лимит сделан для того, чтобы обезопасить пользователя и он не потратил больше средств, чем может себе позволить (скажем контракт мог бы запустить бесконечный цикл и пользователь попал бы впросак). Кстати, если для выполнения транзакции контракту нужно будет 1 000 005 gas, то, увы, gas потратится, а до конца программа не доработает и не выдаст результат. Обычно разработчики сами указывают сколько gas необходимо для выполнения их смарт-контракта.
— СКОЛЬКО СТОИТ ГАЗ-ТО?
— Пользователь сам назначает цену в ETH для газа!
В MyEtherWallet в верхнем правом углу есть ползунок и цену газа можно выбрать в диапазоне от 1 до 60 Gwei = от 0.000000001 до 0.00000006 ETH.
Перевод ETH с одного кошелька на другой
Перевод ETH стоит 21 000 gas.
Если вы выставите цену 1 gas = 20 Gwei вы заплатите такую комиссию за перевод:
21000 × 0.00000002 = 0.00042 ETH (0.12$)
Зачем платить больше? У Ethereum, как и у Bitcoin есть пул транзакций. Красивая картинка MyEtherWallet описывает процесс проведения транзакции:
В зависимости от того как быстро вы хотите, чтобы транзакция прошла, вы и выбираете цену газа. Есть прекрасный сервис ETH Gas Station, который позволяет подобрать оптимальное значение цены за бензин.
Если вы выставите цену 1 gas = 0.1 Gwei сервис обещает, что транзакция пройдет за 22 блока. Если 12 Gwei или больше — 2 блока. Не забывайте, что время нахождения блока в сети Ethereum сейчас 15 секунд, а значит при самой маленькой комиссии в 0.1 Gwei ваша транзакция должна пройти всего за 5 минут!
Зачем пользователи платят за газ по 50 Gwei — совершенно не понятно, а таких много (посмотреть можно в пуле транзакций). Кстати у ETH Gas Station есть справа внизу табличка с разными данными за последние 2 500 блоков. На текущий момент рекордсмен заплатил $5339.94 за перевод, потому что поставил лимит газа 200 000 и цену газа, вероятно случайно, 200 000 Gwei (0.0002 ETH). Транзакция потратила 92 068 gas. Вот она в Etherscan.
Рекордсмен в 2016 году заплатил комиссию 761 ETH за 1 транзакцию (правда Эфир тогда стоил существенно меньше, итого, всего лишь, чуть более $6 000).
А можно вообще не платить?
Разумный вопрос. Как ни странно, ответ на него — «Да!» (ну практически).
Дело в том, что пул транзакций Эфира пока еще небольшой, хотя, вероятно, в будущем он будет расти. Посмотрите на последние блоки:
У Эфира максимальный размер блока измеряется не в байтах, как у Биткоина, а в количестве газа. Сейчас в один блок может попасть транзакций на ±6 700 000 gas. По факту, очень часто блоки не заполнены:
- Левый столбик, выделенный красным — количество транзакций в блоке.
- Справа восклицательный знак стоит рядом с блоком, который заполнен всего на 1%.
Очередь транзакций маленькая. Мы провели небольшое исследование и обнаружили, что на текущий момент транзакции с ценой 1 gas = 1 wei проходят.
При цене газа 1 wei, независимо от количества газа, необходимого для вашей транзакции (напомним, при простом переводе это 21 000 gas), комиссия будет ничтожно мала!
Кстати, с ценой газа = 0 wei, увы, транзакция не проходит…
Как этим пользоваться?
При переводе вы указываете:
- Адрес получателя — здесь все понятно
- Лимит газа — 21 000 для перевода ETH. В случае с отправкой на смарт-контракт, например при участии в ICO, разработчик всегда указывает эту величину, лучше не экспериментировать.
- Цену единицы газа — вы вправе выбирать самостоятельно (на текущий момент даже при 1 wei все работает), чем она больше, тем быстрее пройдет транзакция.
В официальном кошельке Ethereum размер комиссии выставляется ужасно. Вы можете двигать ползунок, при этом минимальная цена газа будет 1 Gwei. В MyEtherWallet минимум тоже 1 Gwei.
Как обмануть систему и уменьшить цену газа в MyEtherWallet?
Способ 1:
Вы можете зайти на вкладку «Send Offline» или на русском «Оффлайн-перевод», там можно выставить цену газа в wei, а не в Gwei:
Способ 2:
В браузере Google Chrome, например, можно выбрать «Инструменты разработчика» Ctrl + Shift + I, кликнуть на ползунок с выставлением цены газа и изменить начальное значение с 1 на 0.000000001 (= 1 wei), например.
Главное, не путайте лимит газа и цену газа, а то можно закончить, как тот парень. Наш канал в Telegram @two_btc
Редакция 2bitcoins.ru благодарит Славу Карпенко за помощь в подготовке данной статьи.
Мы обещали, что Эфиру тоже достанется. Обещания надо выполнять.
Смотрим последние блоки в сети: https://etherscan.io/blocks
Возьмем 10 блоков, скажем с 4 391 616 по 4 391 625 (в них транзакций довольно много, кстати, по сравнению с другими выборками).
Количество транзакций: 681
Вознаграждение майнеров: 30.7 ETH ($9 400)
1 транзакция обошлась почти в $14.
Так криптовалюты = МММ? Или нет? Пишите нам в чат.
Источник
Газ и его роль в Ethereum.
Если вы только начали использовать эту блокчейн-сеть, пусть такие понятия как gas, gwei и ETH вас не отпугивают. В этой статье мы шаг за шагом разберемся как все работает и изучим особенности транзакций на платформе.
Часто новые пользователи сети Ethereum начинают испытывать напряжение, впервые сталкиваясь с таким понятием как «газ» (gas). Как правило, первая мысль связана с Биткоином (Bitcoin): там все работало гораздо проще, думают многие, — установил себе объем комиссии и остается только ждать осуществления перевода. При маленькой комиссии ждешь дольше, при большой — меньше. Биткоин — это криптовалюта, созданная с целью обеспечения перевода денежных ресурсов.
И далеко не каждый осознает, что первоначальная функция Ethereum, в отличие от Биткоина, заключается не в передаче финансовых ценностей, а в поддержке выполнения умных контрактов. Смарт-контракты или, как иногда их еще называют, крипто контракты представляют собой программы, написанные в целях автоматизированного управления процессом передачи активов между сторонами, при выполнении этими сторонами определенных условий.
Иными словами, блокчейн-сеть Ethereum нельзя сравнивать с валютой или же площадкой для денежных переводов, поскольку это платформа, обеспечивающая выполнение приложений (оплата в сети осуществляется так называемыми «эфирками» — ETH).
Виртуальная машина Эфириума (EVM), на базе которой работает сеть, позволяет запускать этот самый умный контракт (программу), в случае наличия достаточного ресурса (в виде времени и памяти). Это сразу же отвечает на еще один часто возникающий у пользователей вопрос: «Почему кошелек Эфириума использует так много ресурсов моего ПК?». Как раз потому, что эта EVM работает на вашем компьютере и «жрет» ресурс, необходимый ей для выполнения различных программ.
Вводные по газу. Что можно делать в Эфириуме?
С помощью сети Ethereum пользователь может осуществлять такие ключевые действия:
- Делать переводы эфирок (ETH) между пользователями платформы
- Сформировать крипто контракт (программу) и внести его в блокчейн (blockchain)
- Обеспечить работу этого смарт-контракта
За каждую такую операцию пользователь обязан уплачивать комиссию. Такая оплата производится в единицах под названием «газ» (gas). По сути, это и есть та самая внутренняя валюта Ethereum, которая расходуется на осуществление операций в сети. Часто проводят аналогию этого понятия с топливом, поскольку для обеспечения движения внутри блокчейн-сети необходим определенный показатель (количество) «газа».
Как разобраться с «ценовой политикой» Ethereum?
Например, чтобы осуществить перевод эфирок с одного кошелька пользователя на другой потребуется 21000 gas. В то же время, чтобы обеспечить создание или успешное выполнение умного контракта может понадобиться абсолютно разное количество газа.
Чтобы понять сколько именно газа нужно иметь на балансе для выполнения конкретной операции в эфире, рекомендуем ознакомиться с документом под названием: «Ethereum — Yellow paper» (page 20), где все четко описано.
Что из себя представляют транзакции в Эфириуме
Транзакция Эфириума представляет собой операцию по отправке пакета данных, которая инициируется участником платформы.
Каждую из транзакций Ethereum можно условно разделить на 4 части:
- Аккаунт пользователя (=адрес кошелька)
- Количество ETH, которое подлежит переводу (может равняться нулю)
- Лимит газа (gas limit) для осуществления транзакции
- Дополнительные виды данных
Чтобы осуществить какую-либо транзакцию в Эфириуме пользователь (отправитель) обязан оплатить комиссию майнеру (другому участнику сети), который данную транзакцию утверждает и заносит в блокчейн. Газ, который используется на реализацию крипто контракта конвертируется в эфирки и списывается с баланса пользователя на баланс майнера.
Gas limit — это своего рода ограничитель по количеству газа, которое может быть перечислено за выполнение транзакции. Это своего рода страховка от выплаты комиссионных, которые он себе позволить не может. Например, минимальным необходимым значением газа для осуществления транзакции в сети является 21к.
Но, рекомендуем проставлять более высокий gas limit, чтобы быть уверенным в успешном завершении транзакции. «Неиспользованный» газ всегда вернется на баланс отправителя. Но, если же суммы, указанной в лимите будет недостаточно для успешного завершения транзакции, она вернется пользователю с пометкой (статусом) «неудачная». Вместе с тем, вне зависимости от результата транзакции, комиссию майнеру все равно придется уплатить, поскольку он уже потратил ресурсы, чтобы обработать эту операцию.
Как правило, разработчики фиксируют количество газа, которое будет списано с пользователя для успешного выполнения их крипто контракта.
Как переводить ETH и как «играть» с комиссией?
Стоимость перевода ETH составляет 21000 gas.
Цена газа измеряется в wei — минимальной частице сети Эфириум. Но, почти на всех сервисах и кошельках этот показатель отображается в gwei (1 миллиард wei), или же в эфирках (ETH).
Например, если указанная цена за перевод указывается 1 gas = 20 gwei, комиссия в данном случае будет следующей:
21000 × 0.00000002 = 0.00042 ETH (0.12$)
Вы зададите логичный вопрос: «Почему я должен уплачивать больше?». Подобно Биткоину, у сети Эфириум тоже есть собственный пул транзакций.
Вы сами определяете цену газа, исходя из желаемой скорости транзакции. Для выбора оптимального ценового показателя газа рекомендуем воспользоваться специальным приложением ETH Gas Station. Например, если выставить стоимость 1 gas (что равняется 0,1 gwei), согласно данным сервиса, транзакция будет проведена за 22 блока. Если же превысит 12 gwei — то за 2 блока.
Зачем же тогда некоторые пользователи платят за gas чрезмерное количество gwei — вопрос риторический. Но данные пула транзакций говорят о том, что таких участников в блокчейн-сети достаточно много. В сервисе ETH Gas Station вы можете найти табличку (справа внизу), где отображен ряд данных за какое-то количество последних блоков. Исходя из этой информации, рекордная сумма за перевод составляет 5339,94 долларов. Удивительно, но, вполне вероятно, что пользователь случайно указал такие показатели лимита и цены газа.
А можно ли не оплачивать комиссию совсем?
Это тоже вполне логичный вопрос, которым задаются пользователи Эфириума. Не платить совсем вряд ли получится, но минимизировать — вполне реально.
На данный момент пул транзакций сети еще небольшой. Не факт, конечно, что он не будет стремительно расти в будущем, но пока что грех этим не воспользоваться.
Так, по цене газа в 0 wei, к сожалению, транзакцию осуществить никак не выйдет, но провести транзакции стоимостью в 1 gas = 1 wei вполне реально (опять-таки, это по состоянию на сейчас).
Как это использовать?
Во время операции по переводу вам необходимо будет указать следующие данные:
- Адрес получателя = адрес аккаунта.
- Gas limit в размере 21000 для осуществления перевода эфирок (ETH). Эту цифру рекомендуем не менять.
- Цену за единицу газа, которую вы имеете возможность выставить сами (как обсуждали выше, даже при значении в 1 wei транзакция отлично проходит). Но, как мы помним, чем выше показатель — тем выше скорость проведения транзакции.
- Размер комиссии в кошельке Ethereum, к сожалению, проставляется с большим трудом. При движении ползунка самая минимальная цена газа все равно останется на отметке равной 1 gwei. С MyEtherWallet — аналогичная история (предельный минимум — это 1 gwei).
«Маленькие хитрости»: понизить цену газа в MyEtherWallet реально
Есть несколько «схем», которые позволят уменьшить цену газа:
Необходимо открыть вкладку под названием «Send Offline» (русс. — «Оффлайн-перевод»), где вы можете проставить цену газа в минимальной единице wei, вместо gwei.
Необходимо выбрать «Инструменты разработчика» (при комбинации Ctrl + Shift + I) в браузере Google Chrome, где есть возможность «поиграть» с ползунком для проставления цены газа и осуществить замену исходного показателя с 1 на 0,000000001 (= 1 wei).
Будьте бдительны! Не перепутайте лимит газа с ценой газа, так как это совершенно разные типы данных. Иначе есть риск оказаться в ситуации, при которой «сами себя обманите» и погоня за снижением цены превратится в переплату.
Источник