Ich habe einige web3.js-Projekte gemacht und auch mit MetaMask gearbeitet. Aber ich habe noch nie gesehen, dass dieses Fenster in MetaMask auftaucht – wie es bei der Anmeldung für Cryptokitties der Fall ist.
Confirm Transaction
Sign Message
MESSAGE
Cryptokitties
Was bedeutet das? Warum wird dieses Popup angezeigt? Welche Berechtigungen erteile ich?
Screenshot hier: https://i2.wp.com/blockchaindk.com/wp-content/uploads/2017/12/Cryptokitties-Sign-Message.png?w=346&ssl=1
Quelle: https://blockchaindk.com/2017/12/05/buy-cryptokitty-cryptokitties/
In den meisten Fällen müssen wir nicht unterzeichnen, um Transaktionen zwischen der Website (Vertrag) und mir zu senden.
Aber was das Zeichen tut, ist, dass die Site sicherstellt, dass der Benutzer echt ist und er ein Ether-Konto (in diesem Fall Metamask) hat. Zum Signieren benötigen wir normalerweise E-Mail, Benutzername.
we steht für die Site-Manager, Admins. Im Grunde wird es ausgelöst durch
var signer = web3.eth.defaultAccount || web3.eth.accounts[0];
var original_message = "I am but a stack exchange post";
var message = "0x" + original_message.toHex();
var message_hash = web3.sha3('\u0019Ethereum Signed Message:\n' + message.length.toString() + message);
var signature;
web3.personal.sign(message, signer, function(err, res) {
if (err) console.error(err);
signature = res;
console.log({
"signer": signer,
"message": message,
"message_hash": message_hash,
"signature": signature,
})
});
Die Antwort wäre
{
message: "0x4920616d20627574206120737461636b2065786368616e676520706f7374"
message_hash: "0x1a0126ceafb4579293016a4cc3ca0ec753c7d497cda8b3e6ece095c832d92590"
signature: "0x0cf7e2e1cbaf249175b8e004118a182eb378a0b78a7a741e72a0a34e970b59194aa4d9419352d181a4d1827abbad279ad4f5a7b60da5751b82fec4dde6f380a51b"
signer: "0x9283099a29556fcf8fff5b2cea2d4f67cb7a7a8b"
}
Wenn Sie Fragen haben, lassen Sie es mich bitte wissen.
Ich glaube, dies wird nur als eine Form des Anmeldesystems verwendet. Durch das Signieren einer Nachricht kann CryptoKitties feststellen, welche Adresse Sie verwenden und welches Konto daher auf ihrer Website angezeigt werden soll.
kn1g
Richard Horrocks