Either way the key is lost after the first character. But using the plaintext to derive the next key means at least that you're not using something the attacker already knows.
But then, using the plaintext means that all of the ciphertext except the first character is independent of key. It seems odd that this would be stronger - but then, it would be very vulnerable to a dictionary attack. Of course a cipher this simple is not going to be terribly secure!
This would be harder though:
Code: Select all
k = (k + c) mod 256
I guess 16- or 32-bit versions would also force people to solve these intelligently rather than just brute-forcing them.