Cómo 'personal_sign' con el navegador Mist

Puedo usar

web3.currentProvider.sendAsync({
  method: 'personal_sign',
  params: [msg, address],
  from: address,
}, (err, res) => {});

y Metamask le pedirá al usuario que firme el mensaje dado.

En Mist, obtengo un error ( TypeError: Cannot read property 'id' of undefined) arrojado desde aquí:

EthereumProvider._addResponseCallback (<anonymous>:1097:42) 
at EthereumProvider.send (<anonymous>:1146:14)

¿Esto simplemente no es posible con el proveedor de Mist? ¿O me estoy perdiendo algo?

Respuestas (1)

Aparentemente, esto aún no está implementado en Mist, pero planean hacerlo en la próxima versión.

También hay mucha discusión sobre cómo implementar exactamente esta función en general.

Hay EIP que discuten la separación de "datos para firmar" y "metadatos de presentación"

( EIP712 y EIP719 principalmente)

Solo puedo recomendar leerlos a cualquier persona interesada :)