Seven Codes You'll Never Ever Break
wired.com
wired.com
Added in edit: Interesting that someone downvoted this comment. Did someone fat-finger it, or do some people really think it's wrong to give a link to the unpaginated version? I'd like to know. If you feel unable to reply here, then feel free to email - address is in my profile. Thanks.
Just because Kryptos Part IV hasn't been broken so far doesn't mean that it won't be. It was designed to be broken.
Oh, wait, the actual title is "7 Codes You’ll Never Ever Break" instead of "Codes Hackers Will Never Ever Break". The actual title is more likely to be true, especially given the complete crackpots that appear in groups like Kryptos with outlandish 'breaks' to the codes that are complete crap.
Breaking codes is hard, takes a long time and requires method. Most people won't break these codes.
641648018FD15E9157AB76299C47FFCC9974EB401494D13398A9F2635F66AD83
Spoiler alert: It's just /dev/randomAlso, my comment about it being /dev/urandom may have been pure misdirection.
Another is probably written in an invented, private language.
Two others are short enough that brute force approaches will almost certainly create false positives.
In general, brute force can only work if you have some idea of what to expect the clear text to look like.
So what if false positives are created? We can just brute-force the analysis of those to find the right one. Are you forgetting the sheer magnitude of quantum, digital, & human-analog computing power we have available today?
Given the folks who've attacked these problems, the ones that have yielded to brute force thus far: 0.
You're going to have to quantify "smartly" into something more objective before you can use it in this argument.
Where else do we have 2 mixed streams of information? Music. Optics. So we take the input and reverse the mod26, one step at a time, basically creating an array of "demodulated" input values, then I feel as though we should be able to do a Fourier analysis to separate the 2 strings of numbers.
So when you say "cipher", that means you want every possible algorithm. Since algorithms can produce output shorter than the input, you get the infinite amount of inputs.
With one-time pads, fourier analysis would only work if the key is not truly random.
How do you reverse a "mod26"? You can't. I give you the number 17. You know this number is produced using the equation: "SECRET mod 26 = 17". How do you know if 43 or 69 was the input?
What am I missing here?
How many billions of NTLM keys can a Geforce crack in a second? How is this cryptography problem so greatly different than that one?
According to https://hashcat.net/oclhashcat-plus/ , it's approximately 2.5 B.
This corresponds to a one time pad message of just under 4 bytes long. The difference, of course, with NTLM is you know when you've found the right value. With OTPs, all decryptions are possible and equally valid.
http://brbl-zoom.library.yale.edu/viewer/1006200
For reference, a simple Google search found it in about 30 seconds.
Maybe the Voynich manuscript has such a completely imagined language, and that's why nothing worked (if it's not a "hoax:, of course).
So every cleartext message is 100% dictionary words and absolutely no gibberish?
So every cleartext message has complete, logical sentences?
So the complete, logical sentences in each message make sense in the context of the message?
I do not believe this to be the case. Only one cleartext message would actually make sense.
No, but for every sensible message there is a way to guess a key that decrypts the given ciphertext to it.
"Attack at dawn."
and "Attack at dusk."
are equally valid and equally probable decodings of the ciphertext: 739B912B0B067A9B803C46FBDB1E03
Brute force amounts to making a large number of guesses. But you can't brute-force something if you have no information about whether not a specific guess was correct.This feels like a skill used by those who guess on tests.
An attacker may as well just try to guess the message directly and thus dispensing with the pointless process of guessing a keystream and XORing it with the ciphertext.
This is the feature of One Time Pads that gives them a kind of provable security that is not possible to prove for any system in which the key shorter than the message.
Pick whatever method you use to decide if a cleartext 'makes sense'. EVERY POSSIBLE message that fits your criteria will be output during the brute forcing process.
You don't seem to realize just how nigh-infinite the number of different keys there are. If I give you a kilobyte blob of one-time-pad data, it could be any [sub-minute-long] sentence that has ever been spoken or ever will be spoken in the history of the human race, in any language.
.
I can explain it a different way, that will explain how you can kill the signal. Okay so the original message has 0s and 1s.
1. What happens if we take a 1 and have a 50% chance of flipping it: we get a 0 50% of the time and a 1 50% of the time.
2. What happens if we take a 0 and have a 50% chance of flipping it: we get a 0 50% of the time and a 1 50% of the time.
3. What happens if we know someone had a 0 or 1 and had a 50% chance of flipping it: we get a 0 50% of the time and a 1 50% of the time.
4. What happens when we try to figure out the original bit: Well both 0 and 1 have the same output, so it is fundamentally impossible to figure it out without knowing if they flipped it.
5. Repeat for every bit. Store which ones you flipped. Congratulations, you have a one-time-pad utilizing the XOR method of application.
.
Also you're right that adding noise as in addition won't mask a signal, but we're not 'adding'. We're looking at the signal, and the completely random noise, and marking down whether they match or not. If I tell you that bits 1, 2, 3, 5, and 8 matched my coin flips that doesn't tell you a single thing about what my data was.
No, there isn't a way. Seriously.
Shannon proved it rigorously. It's also intuitive if you understand how a OTP works. This is probably the most solid proof in all of cryptography.
http://en.wikipedia.org/wiki/One-time_pad The final discovery was by Claude Shannon in the 1940s who recognized and proved the theoretical significance of the one-time pad system. Shannon delivered his results in a classified report in 1945, and published them openly in 1949.[3] At the same time, Vladimir Kotelnikov had independently proven absolute security of the one-time pad; his results were delivered in 1941 in a report that apparently remains classified.
Did you read his 'explanation'?
First the decrypted code is close to gibberish and second he starts by creating the key by removing duplicated letters and yet the key has two Ns, three Is, two Ys, two Ws, etc.