static String generateSecret({int length = 20}) { final rand = Random.secure(); final bytes = List<int>.generate(length, (_) => rand.nextInt(256)); return _base32Encode(Uint8List.fromList(bytes)); }