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'])

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…