library impl.digest.utils; import 'dart:typed_data'; class XofUtils { static Uint8List leftEncode(int strLen) { var n = 1; var v = strLen; while ((v >>= 8) != 0) { n++; } var b = Uint8List(n + 1); b[0] = n; for (var i = 1; i <= n; i++) { b[i] = strLen >> (8 * (n - i)); } return b; } static Uint8List rightEncode(int strLen) { var n = 1; var v = strLen; while ((v >>= 8) != 0) { n++; } var b = Uint8List(n + 1); b[n] = n; for (var i = 0; i < n; i++) { b[i] = strLen >> (8 * (n - i - 1)); } return b; } }