value method

  1. @override
int value()
override

Generates the next OTP value

Implementation

@override
int value() {
  var digest = algo.convert(counter).bytes;
  int offset = digest.last & 0xF;
  int dbc = ((digest[offset] & 0x7F) << 24) |
      ((digest[offset + 1] & 0xFF) << 16) |
      ((digest[offset + 2] & 0xFF) << 8) |
      (digest[offset + 3] & 0xFF);
  return dbc % _max;
}