Suppose that a sufficient quantity of random data is obtained beforehand and distributed to host1 and host2.
This is feasible because the message is small and the key distribution problem is assumed to be solved since both host1 and host2 know the key in advance.
You can then implement a one-time pad, which is unbreakable when implemented correctly.
For example, you could XOR the bits of the plaintext with the bits of the random data (i.e. the pad) together.
Once you have used a particular portion of the pad, discard that portion of the pad.
To obtain the message, the recipient XORs the bits of the ciphertext with the bits of the pad.
Since the corresponding portion of the recipient's pad is discarded, the portions of the pad in use should remain in sync.
Provided there are no transcription errors (which can be detected if you use a cryptographic hash like SHA1), the ciphertext should be converted back to the plaintext.