const path = require("path"); const fs = require("fs"); const { MITM_DIR } = require("../paths"); const { generateRootCA, loadRootCA, generateLeafCert } = require("./rootCA"); /** * Generate Root CA certificate (one-time setup) * This replaces the old static wildcard cert approach */ async function generateCert() { return await generateRootCA(); } /** * Get certificate for a specific domain (dynamic generation) * Used by SNICallback in server.js */ function getCertForDomain(domain) { try { const rootCA = loadRootCA(); const leafCert = generateLeafCert(domain, rootCA); return { key: leafCert.key, cert: leafCert.cert }; } catch (error) { console.error(`Failed to generate cert for ${domain}:`, error.message); return null; } } module.exports = { generateCert, getCertForDomain };