¿Cómo paga un usuario final por sus transacciones en una Dapp?

Solo estoy comenzando con mi conocimiento de Blockchains, pero una cosa me tiene confundido.

Si tuviera que crear una Dapp que ofreciera un servicio para los usuarios, de modo que los usuarios no tuvieran que pagar para usar el servicio, ¿cómo se pueden pagar las tarifas de transacción por ejecutar el cálculo?

Si una forma de evitar esto fuera mostrar solo datos (es decir, que no se escriba nada en Blockchain, solo se lea), ¿tendría eso un costo de cálculo? ¿La lectura de datos cuenta como una transacción?

Gracias de antemano por su ayuda. Por favor, no dude en corregir cualquiera de los anteriores.

Respuestas (2)

La lectura de la cadena de bloques es gratuita. Escribir en la cadena de bloques no lo es.

¿Por qué? Escribir datos en la cadena requiere que los datos se guarden en un bloque. Los mineros tienen que minar ese bloque, y la minería tiene costos (electricidad, etc.).

Si estuviera tan inclinado, podría escribir un contrato, enviarle algo de Ether y hacer que sus funciones de contrato envíen al remitente de la transacción algo de ese Ether cuando llamen a la función. IE Subvencionar a las personas que utilizan su contrato.

Tal vez valga la pena señalar que esta solución de reembolso no lo ayuda con el problema de "arranque en frío" de ayudar a un nuevo usuario a realizar una transacción de forma gratuita. Todavía necesitan algo de éter en su cuenta para pagar la gasolina antes de que se les reembolse.

Esto no es posible en Ethereum de producción en este momento. El usuario final debe pagar los costos del gas para realizar una transacción con su servicio.

Sin embargo, en unos años, Serenity está programado para lanzarse con EIP 101 (borrador). Permitiría contratos para pagar el gas de la persona que llama, entre muchas otras características.