跳到主要内容

evmSignMessage

以太坊:签名消息

使用指定 BIP32 路径对应的账户对消息签名,签名前请确保消息内容和业务场景清晰可验证。

  • 该方法用于 EIP-191 personal_sign 消息签名
  • 不用于签名 EIP-712 类型化数据
  • 如需签名 EIP-712(v3 / v4),请使用 evmSignTypedData
const result = await HardwareSDK.evmSignMessage(connectId, deviceId, params);

参数

可选通用参数

  • path - 必需 string | Array<number>,字符串数组最小长度限制为 3更多信息
  • messageHex - 必需 string 用于签名的十六进制文本消息
  • chainId - 可选 number,ChainId 是 ETH 中用于特定以太坊网络的唯一标识符,帮助区分不同版本的区块链。参考

示例

// 原消息
const message = "Hello Ukey Wallet";

// 转换为十六进制后的消息
const messageHex = Buffer.from(message).toString("hex");

HardwareSDK.evmSignMessage(connectId, deviceId, {
path: "m/44'/60'/0'/0/1",
messageHex: messageHex,
chainId: 1,
});

返回结果

{
success: true,
payload: {
address: string, // 返回的地址
signature: string,
}
}

错误

{
success: false,
payload: {
error: string, // 错误消息
code: number // 错误码
}
}