
Learning to break ciphers - libeclipse
https://littlemaninmyhead.wordpress.com/2015/09/28/so-you-want-to-learn-to-break-ciphers/
======
natch
Relevant to all his great stories of bad encryption:

[https://snakeoil.cr.yp.to](https://snakeoil.cr.yp.to)

------
peterburkimsher
Can cipher-breaking methods be used for learning human languages?

I recently started learning Chinese, and my grammar is still very basic.
Simply replacing all the vocabulary (like a substitution cipher) using my app
at [http://pingtype.github.io](http://pingtype.github.io) helps me to learn
new words.

Rearranging sentences for the parts of speech (noun/verb/subject/object) is
comparable to the ROTR and ROTL described in the linked article.

How can I make more parallels between the cryptographic domain and the human
language domain to make my studies easier?

~~~
thaumasiotes
There's some weird stuff going on in that app.

The oddest result I got was a rendering of 我长得不漂亮 as wǒ zhǎng dé bù piào liang
"I long obtain no pretty". This gets the pronunciation right on four out of
six characters. It gets the meaning right on three out of five words. Weirdly,
it gets the pronunciation of 长 zhǎng "grow" right while glossing it as if it
were 长 cháng "long".

If I give it 重新 chóngxīn, which is an adverb meaning something like "start
over", it recognizes it as a single word of the correct pronunciation, but
mysteriously glosses it as "reappear".

If I give it 我的狗去世了, it does pretty well, but glosses 了, a modality marker, as
"is", which makes me extremely uneasy.

~~~
peterburkimsher
The dictionary is sourced from Google Translate and Unihan, with a few hundred
manual edits. Click the Edit button to fix it if you already speak Chinese and
find a problem! You said the pronunciation is wrong on 2/6 characters, but you
didn't tell me the correct reading. Teach it! Teach me!

~~~
thaumasiotes
In the sentence 我长得不漂亮 "I am not pretty", 得 is de(toneless), the result
marker, not 得 dé, the verb meaning "obtain". 不 really is the negative particle
(that is to say, it is being glossed appropriately), but before a syllable in
fourth tone it is pronounced bú, not bù.

I actually agree that word-by-word glossing like that is helpful, but this
tool is doing a questionable job. Words that are more syntactic than semantic
will be nearly impossible to fit into a word-by-word-gloss system -- for
example, the ABC dictionary's gloss of "result 得" from the sentence above is
"subordinating particle used to link a verb [or adjective] and the manner
clause that follows it". This is difficult to condense into something that it
would make sense for your app to render.

In the sentence 我的狗去世了 "my dog has died", 了 is the change-of-state particle,
appropriate because my dog (presumably) used to be alive, but it's dead now.
It's definitely not a verb; the verb is, depending on your perspective, 去世
"die" or just 去 "go".

If you're interested in my advice, I think the highest-value thing you can do
to get good glosses is get Pleco for your smartphone and purchase the ABC
Dictionary and Tuttle Learner's Dictionary addons. It'll be less convenient
than your app, but much higher quality. (Detection of word boundaries is
imperfect; google translate may actually be better at that particular task.)

------
dabber
(2015)?

~~~
ed770878
Hmm 2015. then I guess I won't wait for the moderator to approve my reply over
there.

> If you know of any other good ones (including a sample break), then please
> provide the link

Two months after that article was published:

[https://lkml.org/lkml/2015/11/18/9](https://lkml.org/lkml/2015/11/18/9)

> But I listened carefully, because I suspected an easy target that I wanted
> to have a go at.

This was my easy target.

[https://github.com/ed770878/HohhaDynamicXOR](https://github.com/ed770878/HohhaDynamicXOR)

~~~
snakeanus
Thank you for linking this repo, I remember reading about the algorithm in
Phoenix back in 2015 but I wasn't able to find any cryptanalysis of it until
now.

I find it quite fascinating how people who produce snake-oil crypto tend to
not accept any mention of possible faults in their algorithms, in comparison
to professional cryptographers who welcome public cryptanalysis.

