@injectivelabs/sdk-ts의 generateArbitrarySignDoc 함수를 사용하여 ADR-36 호환 signDoc을 생성할 수 있습니다. 그런 다음 브라우저 지갑이나 CLI 환경에서 서명/검증에 사용할 수 있습니다. 최신 패키지 버전을 사용하고 있는지 확인하세요.Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
@injectivelabs/sdk-ts의 generateArbitrarySignDoc 함수를 사용하여 ADR-36 호환 signDoc을 생성할 수 있습니다. 그런 다음 브라우저 지갑이나 CLI 환경에서 서명/검증에 사용할 수 있습니다. 최신 패키지 버전을 사용하고 있는지 확인하세요.
(async () => {
const message = "오프라인 서명 메시지 예시";
const signer = 'inj1...'
const chainId = 'injective-1'
// 임의 데이터 서명
const signature = await window.keplr.signArbitrary(chainId, signer, message)
// 임의 데이터 검증
const result = await window.keplr.verifyArbitrary(chainId, signer, message, signature)
if (result) {
console.log("서명이 유효합니다");
}
})();
import { config } from "dotenv";
import { PrivateKey } from "@injectivelabs/sdk-ts/core/accounts";
import { generateArbitrarySignDoc } from "@injectivelabs/sdk-ts/core/tx";
config();
(async () => {
const { privateKey } = PrivateKey.generate();
const injectiveAddress = privateKey.toBech32();
const publicKey = privateKey.toPublicKey();
const message = "오프라인 서명 메시지 예시";
const { signDocBuff } = generateArbitrarySignDoc(message, injectiveAddress);
const signature = await privateKey.sign(signDocBuff);
const signatureInHex = Buffer.from(signature).toString("hex");
if (
PrivateKey.verifyArbitrarySignature({
signature: signatureInHex,
signDoc: signDocBuff,
publicKey: publicKey.toHex(),
})
) {
console.log("서명이 유효합니다");
}
})();
