aesCbcEncrypt method

Uint8List aesCbcEncrypt(
  1. Uint8List key,
  2. Uint8List paddedPlaintext
)

Implementation

Uint8List aesCbcEncrypt(Uint8List key, Uint8List paddedPlaintext) {
  assert([128, 192, 256].contains(key.length * 8));

  final cbc = CBCBlockCipher(AESEngine()); // true=encrypt
  final ParametersWithIV<KeyParameter> ivParams =
      ParametersWithIV(KeyParameter(key), Uint8List(16));
  final paddingParams =
      PaddedBlockCipherParameters<ParametersWithIV<KeyParameter>, Null>(
          ivParams, null);
  final PaddedBlockCipherImpl paddedCipher =
      PaddedBlockCipherImpl(PKCS7Padding(), cbc);
  paddedCipher.init(true, paddingParams);
  final result = paddedCipher.process(paddedPlaintext);
  return result;
}