import { crypto, hex } from "../deps.ts";
const encoder = new TextEncoder();
async function md5(bytes: Uint8Array): Promise<string> { return hex.encodeHex(await crypto.subtle.digest("MD5", bytes));}
export async function hashMd5Password( password: string, username: string, salt: Uint8Array,): Promise<string> { const innerHash = await md5(encoder.encode(password + username)); const innerBytes = encoder.encode(innerHash); const outerBuffer = new Uint8Array(innerBytes.length + salt.length); outerBuffer.set(innerBytes); outerBuffer.set(salt, innerBytes.length); const outerHash = await md5(outerBuffer); return "md5" + outerHash;}