getBlake2bHash static method

Uint8List getBlake2bHash(
  1. Uint8List input, {
  2. int size = 32,
  3. String personalization = '',
})

Implementation

static Uint8List getBlake2bHash(Uint8List input,
    {int size = 32, String personalization = ''}) {
  late final Blake2bDigest state;
  if (personalization == '') {
    state = Blake2bDigest(digestSize: size);
  } else {
    final bytes = utf8.encode(personalization);
    if (bytes.length != 16)
      throw Exception('personalization length must be exactly 16 bytes');
    state = Blake2bDigest(digestSize: size, personalization: bytes);
  }
  state.update(input, 0, input.length);
  var hash = Uint8List(32);
  state.doFinal(hash, 0);
  return hash.sublist(0, size);
}