processBlock method

  1. @override
int processBlock(
  1. Uint8List inp,
  2. int inpOff,
  3. Uint8List out,
  4. int outOff,
)
override

Process a block of data.

Implementation

@override
int processBlock(Uint8List inp, int inpOff, Uint8List out, int outOff) {
  if (inpOff + _blockSize > inp.length) {
    throw ArgumentError('Input muito curto para DESede.');
  }
  final temp = Uint8List(_blockSize);
  if (_forEncryption) {
    _processDes(inp, inpOff, temp, 0, _k1);
    _processDes(temp, 0, temp, 0, _k2);
    _processDes(temp, 0, out, outOff, _k3);
  } else {
    _processDes(inp, inpOff, temp, 0, _k3);
    _processDes(temp, 0, temp, 0, _k2);
    _processDes(temp, 0, out, outOff, _k1);
  }
  return _blockSize;
}