INNER CODE UNIT · TypeScript
generateUUID
backbone-hq/minibone · src/core.ts:35
export const generateUUID = async () => {
const bytes = generateRandomBytes(16)
return [...bytes]
.map((b) => b.toString(16).padStart(2, '0'))
.join('')
.replace(/(.{8})(.{4})(.{4})(.{4})(.{12})/, '$1-$2-4$3-$4-$5')
}
export const generateKeyBytes = async (): Promise<Uint8Array> => {
return new Uint8Array(generateRandomBytes(32))
}
export const loadEncryptionKey = async (keyData: Uint8Array): Promise<CryptoKey> => {
return await crypto.subtle.importKey('raw', keyData, ENCRYPTION_ALGORITHM, false, ['encrypt'])
}
export const loadDecryptionKey = async (keyData: Uint8Array): Promise<CryptoKey> => {
return await crypto.subtle.importKey('raw', keyData, ENCRYPTION_ALGORITHM, false, ['decrypt'])