Por lo que estoy leyendo en varios lugares, como aquí , aquí o aquí , no es seguro exponer la API personal a la Dapp de front-end a través de RPC.
Por lo tanto, pedirles a los usuarios que ejecuten geth --rpc --rpcapi "eth,net,web3,personal" --rpccorsdomain "http://yourDomain
no es seguro.
Mi pregunta es ¿por qué es así? Tengo la impresión de que los enlaces que proporcioné lo pasan por alto, pero todavía no estoy un poco claro.
¡Gracias!
EDITAR
De las respuestas, me gustaría ampliar/aclarar un poco mi confusión:
Un usuario inicia sesión en su computadora y escribe geth --rpc --rpcapi "eth,net,web3,personal" --rpccorsdomain "http://yourDomain.com"
en la terminal.
Esto permite que su nodo escuche http://yourDomain.com
. Luego abre un navegador y va a Dapp en http://yourDomain.com
.
Entonces seguro que podría jugar con su propio nodo y cuentas, pero ¿cómo un atacante externo podría hacer eso?
Actualizaciones:
¿Quién sería capaz de hacer hacking?
Respuesta: Cualquiera, con mala intención.
¿Cómo sería alguien capaz de realizar las tareas anteriores?
Respuesta: Desde la consola de su navegador, podría hacer lo siguiente.
var Web3 = require('web3');
var web3 = new Web3();
web3.setProvider(new web3.providers.HttpProvider("http://yourDomain"));
for(i=0;i<100000000;i++){
web3.personal.newAccount(/*some random function*/);
}// There the hacker could able to create 100000000 many accounts in your server.
web3.eth.defaultAccount="0xHackersOwnAccount"; //As the hacker knows somehow all incoming money transfer is to your default account, but alas !! no more
Espero no haber enseñado al tipo equivocado.
EugVal
EugVal