¿De dónde vino este Éter?

Echemos un vistazo a esta dirección en Etherscan: https://etherscan.io/address/0xfbe0aFcd7658BA86be41922059dD879C192D4c73 La primera transacción es la creación de un contrato inteligente, que cuesta alrededor de 15 ETH. No puedo entender dónde dicha dirección tiene este saldo.

Respuestas (2)

En realidad, la creación del contrato inteligente no costó 15 ETH, pero se pasaron 15 ETH al contrato inteligente como valor. Entonces, el contrato inteligente contenía 15 ETH cuando se creó.

Pero para la pregunta real, fue recompensado con maining. Puede verlo en https://etherscan.io/address/0xfbe0afcd7658ba86be41922059dd879c192d4c73#mine .

Para agregar a esto, el usuario pudo enviar 15 ETH adicionales porque la función constructora del contrato tenía el payablemodificador.

En Ethereum hay dos cuentas, una es una cuenta de billetera utilizada por el usuario para enviar y recibir ether y crear un contrato inteligente, otra es una cuenta de contrato.

Por cada transacción pagadera, el éter se almacena en la cuenta del contrato. "a pagar" es la palabra clave en solidez. Las funciones en las que se menciona/define el pago, el usuario tiene que pagar ether para llamar a esa función, esta función se conoce como función de pago.

Entonces, en ese contrato, el constructor es pagadero y el usuario envió el 15 al llamar al constructor y se almacenó en la cuenta del contrato. El 15 eth se deduce de la cuenta de billetera del usuario.

no existe tal cosa como "transacción pagadera" en Ethereum. El usuario no tiene que pagar nada para llamar a una función de pago, puede enviar un valor 0 y funcionará de todos modos.
¡Sí, eso es correcto! Está tomando 0 ether como valor.
¡Sí, eso es correcto! Está tomando 0 ether como valor. Puede poner condiciones en la transacción pagadera como require(msg.value == 1 ether); prueba esto en remix, constructor() payable { require(msg.value == 1 ether); }