openclaw/src/infra/pairing-token.ts
Gustavo Madeira Santana 48b3d7096c
fix: harden device pairing token generation and verification (#16535)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: bcbb50e3683b12643d8eb2ef3fde74dd3a3ac4a7
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-02-14 16:23:33 -05:00

13 lines
394 B
TypeScript

import { randomBytes } from "node:crypto";
import { safeEqualSecret } from "../security/secret-equal.js";
export const PAIRING_TOKEN_BYTES = 32;
export function generatePairingToken(): string {
return randomBytes(PAIRING_TOKEN_BYTES).toString("base64url");
}
export function verifyPairingToken(provided: string, expected: string): boolean {
return safeEqualSecret(provided, expected);
}