LLaraNode
Auth Package

Token Encryption

Encrypt and decrypt tokens using AES-256-GCM.

Token Encryption

Encrypt and decrypt tokens using AES-256-GCM.

Configuration

Requires APP_KEY environment variable:

APP_KEY=base64:your-32-byte-key-here

Generate a key:

pnpm exec artisan key:generate

Encrypting Tokens

import { encryptToken } from "@lara-node/auth";

const encrypted = encryptToken(token);

Decrypting Tokens

import { decryptToken } from "@lara-node/auth";

const decrypted = decryptToken(encrypted);

Use Cases

Password Reset Tokens

const token = generateToken({ userId: user.id, type: "reset" }, 3600);
const encrypted = encryptToken(token);

// Send encrypted token via email
await Mail.to(user.email).send(new ResetPasswordMail(encrypted));

Email Verification

const token = generateToken({ userId: user.id, email: user.email }, 86400);
const encrypted = encryptToken(token);

// Store in database or send via email

Next Steps