Одним из решений было бы переписать статический пароль другой константой или даже другой строкой. Это распространило бы ваш пароль между тем количеством частей, которое необходимо объединить, чтобы вернуть его. Строки в скомпилированном двоичном файле не показывают строку pw.
#include <stdio.h>
char pw[8] = {124, 109, 127, 127, 123, 99, 126, 104};
int main(int argc, char** argv) {
for (int i = 0; i < 8; i++) {
pw[i] = pw[i] ^ 12;
}
printf("%s\n", pw); // => 'password'
}
Есть несколько способов защитить данные от случайной проверки, решительный противник - это совсем другое дело (просто спросите людей, выполняющих DRM.)