从 ECDSA Public 密钥生成以太坊地址

Generating ethereum address from ECDSA Public Key

我正在使用 node-webcrypto-p11 并通过以下代码生成密钥

keys = crypto.subtle.generateKey({name: "ECDSA", namedCurve: "K-256"}, false, ["sign", "verify"]);

eth 地址是什么。

('0x' + keccak('keccak256').update(key).digest().slice(-20).toString('hex');)

我正在查找这样的 eth 地址,这个地址正确吗?

我觉得是对的。您可以使用这个小脚本

测试您的解决方案
const wallet = require('ethereumjs-wallet');

var account = wallet.fromPrivateKey(Buffer.from('348ce564d427a3311b6536bbcff9390d69395b06ed6c486954e971d960fe8709', 'hex'));
console.log(account.getChecksumAddressString());

或 web3:

var account = web3.eth.accounts.privateKeyToAccount('0x348ce564d427a3311b6536bbcff9390d69395b06ed6c486954e971d960fe8709');
console.log(account.address);