| fracai |
09-29-2010 10:42 PM |
Quote:
Originally Posted by acme.mail.order
(Post 597424)
In theory, yes. But in practice you would run a book or Vigenère cipher* over your source and NOT need to transmit the key (just knowledge of the key). The attacker still needs to work out your key source and if you run the cipher (or a different one) over the plaintext twice you prevent them from finding out when they are correct. The one downside to the digital systems is that everyone involved knows which algorithm they need to beat on.
* considered unbreakable if length($key) = length($plaintext) - at this point it gets called a one-time pad.
|
Only if the key is truly random; then yes, it's a one time pad. And it's the key that provides the security, not the algorithm at this point. The Vignère just adds extra work.
What do you mean by transmitting knowledge of the key instead of the key itself? Stating which book was used? That is the key. Having a pre-arranged book and transmitting the algorithm used to generate the key is also just pre-distributing the keys and involves the same distribution problems. This is solved by exchange methods like Diffie–Hellman.
I also don't think running the cipher twice necessarily protects the message any better. I'm pretty sure that just effectively creates a different key. Regardless, it's still vulnerable to cryptanalysis.
And part of the reason that systems like AES are acceptable is because the security isn't placed in the algorithm. It's in the key. The algorithm is effectively just a method for generating random data to expand the key and confuse and disperse the message. Putting your security in the algorithm means the algorithm has to be kept secret. That's harder as well as being vulnerable to analysis which reveals the algorithm.
Maybe this should fork off into a separate crypto discussion.
|