使用 Elrond Network 创建 dApp 时,我需要在不实际发送交易的情况下对用户进行身份验证。
对于像以太坊这样的其他区块链,这是使用 MetaMask 实现的,它可以签署消息,您可以确定用户就是他所说的那个人。
我注意到 Elrond Wallet 具有“签名”功能,但我不确定如何从外部使用它,或者如何提示用户签署消息并将其发回。
我可以使用 Maiar 扩展程序或 Elrond 钱包来签署消息吗?
使用 Elrond Network 创建 dApp 时,我需要在不实际发送交易的情况下对用户进行身份验证。
对于像以太坊这样的其他区块链,这是使用 MetaMask 实现的,它可以签署消息,您可以确定用户就是他所说的那个人。
我注意到 Elrond Wallet 具有“签名”功能,但我不确定如何从外部使用它,或者如何提示用户签署消息并将其发回。
我可以使用 Maiar 扩展程序或 Elrond 钱包来签署消息吗?
如果你还没有这样做,我建议你使用erdjs或dapp 包(包括 erdjs)来构建你的 dapp。
使用这些,您将获得 elrond 制作的各种签名提供程序。这包括:
所有这些提供商都允许您登录、签署交易、发送交易以及签署自定义消息。
通过 ExtensionProvider 登录的示例代码:
let provider = ExtensionProvider.getInstance();
await provider.init();
let walletAddress = await provider.login();
let message = new SignableMessage({message: "Sign this message to make sure you are logged in"});
let signedMessage = await provider.signMessage(message);
当然,在这种情况下使用签名消息是可选的,但如果您计划实现一些服务器端身份验证流程,它会很有用。