first commit

This commit is contained in:
Patrick
2026-05-01 20:02:13 +02:00
commit 75fb753fc0
77 changed files with 4793 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
// ═══════════════════════════════════════════════════════
// HMAC Generator
// ═══════════════════════════════════════════════════════
async function generateHmac() {
const message = document.getElementById('hmacMessage').value;
const secret = document.getElementById('hmacSecret').value;
const algorithm = document.getElementById('hmacAlgo').value;
if (!message) return setStatus('hmacStatus', 'error', 'Enter a message.');
if (!secret) return setStatus('hmacStatus', 'error', 'Enter a secret key.');
const d = await apiPost('/api/hmac', { message, secret, algorithm });
if (d.success) {
document.getElementById('hmacResults').innerHTML = `
<div class="result-row">
<div class="label">${d.algorithm.toUpperCase()} HMAC</div>
<div class="value" onclick="copyText(this.textContent)" title="Click to copy">${d.hmac}</div>
</div>`;
setStatus('hmacStatus', 'success', 'Generated ✓');
} else setStatus('hmacStatus', 'error', d.error);
}