String → UTF-8 hex string
String strToHex(String source) { final bytes = utf8.encode(source); return bytes .map((b) => b.toRadixString(16).padLeft(2, "0").toUpperCase()) .join(); }