decrypt method
Decrypt data
Implementation
@override
Future<String> decrypt(String data, {String? key}) async {
if (key == null || key.isEmpty) {
throw ArgumentError('Decryption key is required');
}
final encrypted = base64Decode(data);
final keyBytes = utf8.encode(key);
final decrypted = <int>[];
for (var i = 0; i < encrypted.length; i++) {
decrypted.add(encrypted[i] ^ keyBytes[i % keyBytes.length]);
}
return utf8.decode(decrypted);
}