¿Es posible llamar a la API de Ethereum desde una aplicación de software sin ejecutar un nodo ETH?

Me preguntaba si es posible hacer una llamada a Ethereum blockchain desde una aplicación de software en mi computadora sin tener que ejecutar un nodo ethereum.

por ejemplo, quiero hacer llamadas desde una aplicación de software normal como un programa java para enviar mensajes/transacciones a un contrato inteligente en la cadena de bloques de ethereum que devuelve algo. Es eso posible ?

¿O tengo que ejecutar un nodo ethereum a través de geth o mist para poder hacer esas llamadas?

Respuestas (2)

Etherscan proporciona una API para enviar transacciones sin procesar como se documenta en https://etherscan.io/apis#proxy .

Etherchain también proporciona servicios de API, pero no brinda la capacidad de enviar transacciones; consulte https://etherchain.org/documentation/api/ .

No querrá enviar transacciones usando eth_sendTransaction como se documenta en https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_sendtransaction ya que el servidor API necesitaría su clave privada para firmar los datos de la transacción.

El servicio Etherscan tiene una nota importante en la parte superior de la página de documentación de la API. No confiaría en estos servicios externos y simplemente ejecutaría un nodo geth y tendría un acceso confiable a la cadena de bloques de Ethereum.

, pero este espacio aún no ha madurado por completo, por lo que sus opciones son limitadas.

Algunas opciones

  • Metamask : si bien Metamask es específicamente para Javascript en el navegador, le brinda acceso a las transacciones de Ethereum y administra sus claves privadas sin ejecutar un nodo completo.
  • BlockApps : BlockApps está diseñado para que los clientes no tengan que ejecutar un nodo. En su lugar, elblocservidor almacena claves privadas y proporciona un flujo de usuario de inicio/cierre de sesión normal.

  • Implemente el suyo propio : puede escribir un servidor que maneje la autenticación y el envío de transacciones. Pero es importante saber que cuando implementa el suyo propio, o usa BlockApps, está quitando una cantidad significativa de control de las manos de sus usuarios y asume una gran responsabilidad.

Algunas notas

  • Protocolo de cliente ligero [En desarrollo] : se está trabajando para crear un cliente ligero que permita la verificación de transacciones sin un nodo completo.
  • ¿Equipo Geth trabajando en esto?
  • Eventualmente, esto será un servicio : ejecutar un nodo completo para acceder a las aplicaciones de Ethereum no tiene sentido para los usuarios promedio. En cambio, herramientas como Metamask deberían permitir a los usuarios controlar sus claves privadas y firmar transacciones en el cliente y transmitirlas a servidores Geth estilo AWS. También se está trabajando para crear un protocolo de cliente ligero que debería ayudar.