

Quippiuq – cryptoquip and cryptogram solver - WestCoastJustin
http://www.quipqiup.com/

======
WestCoastJustin
Found this site after reading a CNN article [1] about a NSA tweet [2] designed
as a recruitment vehicle. Anyways, take the NSA tweet "tpfccdlfdtte
pcaccplircdt dklpcfrp?qeiq lhpqlipqeodf gpwafopwprti izxndkiqpkii krirrifcapnc
dxkdciqcafmd vkfpcadf." and plug that into quipqiup using the "find spaces"
option. Just thought it was cool that there are automated tools to solve
problems like this. The site also has a nice help page where you can provide
clues.

[1] [http://www.cnn.com/2014/05/07/tech/social-media/nsa-coded-
tw...](http://www.cnn.com/2014/05/07/tech/social-media/nsa-coded-
tweet/index.html)

[2]
[https://twitter.com/NSACareers/status/463321993878994945](https://twitter.com/NSACareers/status/463321993878994945)

------
bmm6o
Is the source available? I'd be curious what his technique is. I wrote
something similar a few years ago, based on pattern matching against a
dictionary (which has obvious drawbacks but is very fast when it works).

~~~
jjoonathan
Simulated annealing works very well for this problem (and is both reliable and
"debuggable" in that if it doesn't work you have good options for tweaking it
until it does). Instead of using a dictionary of complete words you can score
text by computing the log-likelihood of the ciphertext's sequence of n-tuples
given a proposed key.

For n=1 this reduces to "e is most common, t is second most common..." except
with the caveat that the simulated annealing algorithm is stochastic and will
explore 'almost-perfect' decode tables as opposed to just the 'perfect' decode
table (which might not actually be correct).

At n=2 or n=3 this strategy will chew up any substitution-cipher'd block you
feed it (assuming a reasonably well-behaved plaintext).

EDIT: this was stochastically generated by a n=4 model, in case it helps you
form a picture of how good they are at determining how "english-like"
something is.

    
    
        % GAHLUABLEST ME BUCK NIGH GROUBLE ANY OLD A
        % WORRIES BEAUTIFFEEL AND AND WHY COME FOR SOON
        % I SEE IT DOWHEN WE PAY YEAR AT WHAH AND PULL YOU
        % COMING ALLOW NECTLY SCOW DOWN AFTS DUKE TOWARNT AND
        % SIXTEEN WA
    

It's good enough to be creepy, at least...

------
brianbarker
I put the example "inwhi chwor dboun darie saren t" from the page, selected
patristocrat mode and it didn't solve it to be "in which word boundaries
arent."

