If it was hard-to-hack then I would expect (at least) the following:
* Output messages can't be discovered using "strings"
* Program is self-encrypted
* Password isn't even stored, just hash result.
(And I consider myself an amateur at this kind of thing).
Like you said, if you really wanted to write a hard to hack binary, just use a strong hash without the plaintext on a hellish password. Heck, just leave the hash in the strings output :)