Можно ли получить точное количество эфиров, вычитаемых при «простой» отправке?

Я могу указать цену газа и лимит газа. Они дают мне максимальные значения. Мне нужно иметь возможность вычислить точную сумму, которая будет вычтена, когда я выполняю простую отправку (переводы EOA в EOA).

Это возможно? В биткойнах я могу указать точную комиссию, которую мне нужно заплатить. Я знаю, что Ethereum — это не биткойн, но, по крайней мере, для простых отправок, как указано выше, это должно быть возможно.

Ответы (3)

В блокчейне:
операция чтения — бесплатно,
операция записи — стоимость в соответствии с транзакцией.

Когда вы отправляете кому-то немного эфира, на самом деле вы записываете эту транзакцию в блокчейне Эфириума, и операция записи требует некоторого количества эфира в виде газа. Вы можете поставить ограничение на потребление газа за транзакцию, сколько вы готовы заплатить. Это ограничение будет определять время проверки вашей транзакции, то есть, сколько времени потребуется для проверки и добавления в блокчейн. Транзакция с низким газом занимает больше времени по сравнению с более высоким.
Эта стоимость газа представляет собой комиссию, которую вы платите майнерам за подтверждение вашей транзакции.
Вы можете визуализировать это в браузере 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() помогает нам оценить точное количество газа, необходимого для транзакций. Оценка может отличаться от фактического газа, используемого при последующей отправке транзакции, поскольку состояние смарт-контракта в это время может быть другим.

После расчета платы вы можете указать это при выполнении функций как плата за газ.

Подробнее см. здесь.