50 lines
2.7 KiB
HTML
50 lines
2.7 KiB
HTML
<!-- ═══════════════ HMAC GENERATOR ═══════════════ -->
|
|
<div class="page" id="page-hmac">
|
|
<button class="back-btn" onclick="showPage('home')">← Back to Tools</button>
|
|
<div class="section-header">
|
|
<h2><i class="fas fa-lock" style="color:var(--red)"></i> HMAC Generator</h2>
|
|
<p>Generate HMAC signatures from a message and secret key.</p>
|
|
</div>
|
|
<div style="max-width:720px;">
|
|
<div class="panel-label">Message</div>
|
|
<textarea id="hmacMessage" placeholder="Enter message to sign..." style="min-height:80px;"></textarea>
|
|
<div class="panel-label" style="margin-top:12px;">Secret Key</div>
|
|
<input type="text" id="hmacSecret" placeholder="Enter your secret key..." />
|
|
<div style="display:flex;align-items:center;gap:10px;margin-top:10px;">
|
|
<label style="font-size:0.8rem;color:var(--text-secondary);">Algorithm:</label>
|
|
<select id="hmacAlgo" style="width:140px;padding:6px 10px;">
|
|
<option value="sha256" selected>SHA-256</option>
|
|
<option value="sha512">SHA-512</option>
|
|
<option value="sha1">SHA-1</option>
|
|
<option value="md5">MD5</option>
|
|
</select>
|
|
</div>
|
|
<div class="btn-group">
|
|
<button class="btn btn-primary" onclick="generateHmac()"><i class="fas fa-lock"></i> Generate HMAC</button>
|
|
</div>
|
|
<div id="hmacResults"></div>
|
|
<div class="status" id="hmacStatus"></div>
|
|
<div class="api-usage">
|
|
<button class="api-usage-toggle" onclick="toggleApiUsage(this)"><span><i class="fas fa-terminal"></i> API Usage <span class="badge">REST</span></span><i class="fas fa-chevron-down"></i></button>
|
|
<div class="api-usage-body">
|
|
<div class="api-baseurl-note">All examples use <code>BASE_URL</code> — set it to your deployment URL.</div>
|
|
<div class="api-endpoint">
|
|
<span class="api-method post">POST</span><span class="api-path">/api/hmac</span>
|
|
<div class="api-desc">Generate an HMAC signature. Supports sha256, sha512, sha1, md5.</div>
|
|
<div class="api-code"><button class="api-code-copy" onclick="copyApiCode(this)">Copy</button><span class="kw">const</span> res = <span class="kw">await</span> <span class="fn">fetch</span>(<span class="var">`${BASE_URL}/api/hmac`</span>, {
|
|
method: <span class="str">"POST"</span>,
|
|
headers: { <span class="str">"Content-Type"</span>: <span class="str">"application/json"</span> },
|
|
body: JSON.<span class="fn">stringify</span>({
|
|
message: <span class="str">"hello world"</span>,
|
|
secret: <span class="str">"my-secret-key"</span>,
|
|
algorithm: <span class="str">"sha256"</span>
|
|
})
|
|
});
|
|
<span class="cm">// → { success: true, hmac: "734c...", algorithm: "sha256" }</span></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|