encrypt function
dynamic
encrypt(
- dynamic value1,
- dynamic value2
XOR encrypt; returns an empty string directly for an empty password
Implementation
dynamic encrypt(dynamic value1, dynamic value2) {
final str = value1.toString();
final pwd = value2.toString();
if (pwd.isEmpty) return '';
final k = pwd.length;
var j = 0;
final buf = StringBuffer();
for (var i = 0; i < str.length; i++) {
final b = str.codeUnitAt(i) & 0xFF;
final p = pwd.codeUnitAt(j) & 0xFF;
buf.write((b ^ p).toRadixString(16).padLeft(2, "0").toUpperCase());
j = (j + 1) % k;
}
return buf.toString();
}