Я могу указать цену газа и лимит газа. Они дают мне максимальные значения. Мне нужно иметь возможность вычислить точную сумму, которая будет вычтена, когда я выполняю простую отправку (переводы EOA в EOA).
Это возможно? В биткойнах я могу указать точную комиссию, которую мне нужно заплатить. Я знаю, что Ethereum — это не биткойн, но, по крайней мере, для простых отправок, как указано выше, это должно быть возможно.
В блокчейне:
операция чтения — бесплатно,
операция записи — стоимость в соответствии с транзакцией.
Когда вы отправляете кому-то немного эфира, на самом деле вы записываете эту транзакцию в блокчейне Эфириума, и операция записи требует некоторого количества эфира в виде газа. Вы можете поставить ограничение на потребление газа за транзакцию, сколько вы готовы заплатить. Это ограничение будет определять время проверки вашей транзакции, то есть, сколько времени потребуется для проверки и добавления в блокчейн. Транзакция с низким газом занимает больше времени по сравнению с более высоким.
Эта стоимость газа представляет собой комиссию, которую вы платите майнерам за подтверждение вашей транзакции.
Вы можете визуализировать это в браузере Mist.
Вы можете указать точную комиссию, которую хотите заплатить. Плата, которую вы платите, является произведением газа и цены на газ.
fee = gas * gasPrice
Это дает мне максимальные значения
Нет. Эти значения — то, что вы готовы заплатить. Вы можете оценить газ перед отправкой транзакции. См. смету газа . Для перевода эфира из ЭОА в ЭОА (без дополнительных данных) требуется газ 21000.
Так что, если вы готовы платить 21GWei в качестве цены на газ. Точная цена, которую вы платите, составляет 0,000441 эфира (0,000000021*21000) .
То же самое относится к любой транзакции в блокчейне Эфириума. Вы можете оценить газ, а затем рассчитать точную сумму, которую вы заплатите, вычислив gas*gasPrice
.
Это зависит от вас, что gas
и что gasPrice
вы готовы заплатить, поэтому вы сами решаете, какую комиссию вы готовы заплатить за транзакцию.
Примечание: Помните о последствиях поставки меньшего количества газа и цены на газ. Если вы предоставите меньше газа, чем требуется для транзакции, транзакция исчерпает газ, и ваша комиссия будет израсходована. Если вы подаете больше газа, чем требуется, то излишки газа возвращаются на ваш счет.
Вы можете оценить точную комиссию, необходимую для майнинга транзакций в сети Ethereum.
myContract.methods.myMethod([param1[, param2[, ...]]]).estimateGas(options[, callback])
Вышеупомянутая функция AssessmentGas() помогает нам оценить точное количество газа, необходимого для транзакций. Оценка может отличаться от фактического газа, используемого при последующей отправке транзакции, поскольку состояние смарт-контракта в это время может быть другим.
После расчета платы вы можете указать это при выполнении функций как плата за газ.
Подробнее см. здесь.