MetaMask: ¿cómo puedo acceder al objeto web3 localmente y usar mi propio nodo?

Soy nuevo en Ethereum y estaba buscando una forma de ejecutar mi dApp en Chrome en lugar de Mist.

Encontré Metamask, que en teoría encajaría perfectamente con mis necesidades. Sin embargo, desde un punto de vista web básico, parece que Metamask es un proxy para un nodo Ethereum y API web3, lo que significa que todos mis datos de dApp de blockchain pasarían por ellos.

¿Metamask funciona de esta manera? En caso afirmativo, ¿cómo podría usar Chrome para desarrollar mi dApp o, más bien, cómo puedo acceder al objeto web3 localmente? (Ya estoy ejecutando un nodo json-rpc)

Mi preocupación aquí es la seguridad y no depender de terceros.

Respuestas (2)

MetaMask aloja un clúster de cadena de bloques presincronizado de forma predeterminada y hace todo lo posible para mantenerlo en línea en todo momento, pero se puede cambiar fácilmente a través del menú del proveedor en la parte superior izquierda de la ventana emergente de metamask.

Si prefiere usar su nodo json-rpc local, solo apunte MetaMask a su dirección.

Desde una perspectiva de seguridad, esto le permite ejecutar MetaMask tan descentralizado como Mist, apuntándolo a su RPC local. Esto le permitirá desarrollar una Dapp que sea compatible tanto con Mist como con Metamask, y sus usuarios podrán definir sus propias conexiones de cadena de bloques de acuerdo con sus necesidades.

Gracias, es bueno saber que puede apuntar MetaMask a su nodo json-rpc local.

Tienes razón Metmask es un 'proxy' o un puente entre tu navegador normal y la red Ethereum. entonces, para ejecutar su Dapp, debe usar si prefiere pasar por Chrome.

¿Por qué lo necesitamos? Debido a que Chrome no sabe cómo ejecutar sus Dapps especialmente para ejecutar web3js para enviar transacciones o comunicarse con el nodo Ethereum, solo le permitirá ejecutar la interfaz (HTML/Css/javascript).

podría usar Mist , que es un navegador dedicado para Dapps. o puede enviar su comando directamente a través de RPC a su nodo sin usar un navegador.

Con respecto a la seguridad: Conexiones Geth RPC de forma segura

¿Existe una forma recomendada/segura de desbloquear una cuenta a través de la interfaz Web3/página HTML de forma segura?

Si te entendí bien, ¿no es posible usar Web3 en Chrome sin usar Metamask? ¿Porque es una API completa que expone todos los métodos web3?
Exactamente. Chrome no está diseñado para comunicarse con clientes de ethereum