aboutsummaryrefslogtreecommitdiff
path: root/src/crypto.ts
blob: ab403ab0a297541de620344a4d7ee5323e9915ed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
export const ENCRYPTION_TYPE = "SHA-256";

// Implemented according to https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest
export const digestMessage = async (plaintext: string) => {
    const textEncoder = new TextEncoder();
    const digestArray = Array.from(
        new Uint8Array(
            await window.crypto.subtle.digest(
                ENCRYPTION_TYPE, 
                textEncoder.encode(plaintext)
                )
            )
        )
    return digestArray.map((byte) => byte.toString(16).padStart(2, "0")).join("");
}