doFinal method
Store the MAC of previously given data in buffer out
starting at
offset outOff
. This method returns the size of the digest.
Implementation
@override
int doFinal(Uint8List out, int outOff) {
var blockSize = _cipher.blockSize;
Uint8List? lu;
if (_bufOff == blockSize) {
lu = _lu;
} else {
ISO7816d4Padding().addPadding(_buf, _bufOff);
lu = _lu2;
}
for (var i = 0; i < _mac.length; i++) {
_buf[i] ^= lu[i];
}
_cipher.processBlock(_buf, 0, _mac, 0);
out.setRange(outOff, outOff + _macSize, _mac);
reset();
return _macSize;
}