unWallet ユーザーに対して電子署名をリクエストする
手順
1. unWallet 認証を終わらせる
2. 電子署名チケットトークンを発行する
3. 電子署名をリクエストする
4. 電子署名の正当性を検証する
import { ethers } from "ethers";
(async () => {
const contract = new ethers.Contract(
"<USER_ADDRESS>",
[
{
inputs: [
{
internalType: "bytes32",
name: "hash",
type: "bytes32",
},
{
internalType: "bytes",
name: "signature",
type: "bytes",
},
],
name: "isValidSignature",
outputs: [
{
internalType: "bytes4",
name: "",
type: "bytes4",
},
],
stateMutability: "view",
type: "function",
},
],
new ethers.JsonRpcProvider("<YOUR_RPC_URL>")
);
try {
await contract.isValidSignature("<DIGEST>", "<SIGNATURE>");
} catch (e) {
console.log("invalid");
return;
}
console.log("valid");
})();Last updated