summaryrefslogtreecommitdiffhomepage
path: root/packages/server/src/helpers/toHash.ts
blob: d9dbda3c69b931ed4834cc441644b5f3d898ba30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { COSEALG } from './cose.ts';
import { isoCrypto, isoUint8Array } from './iso/index.ts';

/**
 * Returns hash digest of the given data, using the given algorithm when provided. Defaults to using
 * SHA-256.
 */
export function toHash(
  data: Uint8Array | string,
  algorithm: COSEALG = -7,
): Promise<Uint8Array> {
  if (typeof data === 'string') {
    data = isoUint8Array.fromUTF8String(data);
  }

  const digest = isoCrypto.digest(data, algorithm);

  return digest;
}