Is there a program that generates unbreakable encrypted messages?”
If the secret key is shorter than the message you want to send, there is no completely secure method. Also, the inner workings of the program used for encryption and decryption can, in principle, be determined. So you can not rely on nobody knowing your algorithms. The only mathematically secure way is to use a one-time pad, see http://en.wikipedia.org/wiki/One-time_pad where the encryption key is as long as the message you want to send. This way, the transmitted message contains no statistically relevant information anymore, and nobody can decipher it.