aesEncrypt static method
String
aesEncrypt({
- required String plainText,
- required String key,
- required String iv,
- UAesMode mode = UAesMode.cbc,
- bool padding = true,
- UByteEncoding keyEncoding = UByteEncoding.utf8,
- UByteEncoding ivEncoding = UByteEncoding.utf8,
Implementation
static String aesEncrypt({
required String plainText,
required String key,
required String iv,
UAesMode mode = UAesMode.cbc,
bool padding = true,
UByteEncoding keyEncoding = UByteEncoding.utf8,
UByteEncoding ivEncoding = UByteEncoding.utf8,
}) {
final Uint8List k = _bytes(key, keyEncoding);
final Uint8List v = _bytes(iv, ivEncoding);
final Uint8List pt = _u8(plainText);
final Uint8List ct = switch (mode) {
UAesMode.cbc => _aesCbc(k, v, pt, true, padding),
UAesMode.ecb => _aesEcb(k, pt, true, padding),
UAesMode.ctr || UAesMode.sic => _aesCtr(k, v, pt),
UAesMode.cfb64 => _aesCfb(k, v, pt, true),
UAesMode.ofb64 || UAesMode.ofb64Gctr => _aesOfb(k, v, pt),
UAesMode.gcm => _aesGcmEncrypt(k, v, pt, Uint8List(0)),
};
return base64.encode(ct);
}