4
$\begingroup$

I'm new to this site. When I posted my first question here, I tried to follow the advice on the Tour site: My question was directly related to cryptography, and it was neither "opinion-based", nor should it "require an extremely long answer".

I would like to understand why it is considered off-topic. The reason that was given ("Requests for analyzing or deciphering a block of data are off-topic ...") has, in my view, nothing to do with my question.

My question was not about a block of data. Instead, I fully described an encryption scheme (that I had already analyzed myself) through a set of plaintext/ciphertext pairs. With this information, it is obvious how to decipher any ciphertext.

Rather, the main intent of my first question was to find out whether this is a known encryption scheme (and if so, what it is typically called in the literature), or whether it's something the manufacturer put together themselves. A request to edit the question to make this clearer was rejected.

Please help me understand why this question is off-topic w.r.t. cryptography.

$\endgroup$
5
$\begingroup$

In general, I'd say the main issue with "identify this cipher" questions is that they're often either unanswerable, arbitrarily made up (i.e. homework or crypto puzzles) or, occasionally, both.

That said, I don't think all such questions are bad, but the set of circumstances where they can be good is limited. Specifically, any modern secure cipher, with an unknown key and no identifying metadata, will produce ciphertext that is effectively indistinguishable from random. Thus, for a cipher identification question to be answerable, either:

  1. the ciphertext needs to have attached metadata identifying the cipher,

  2. the code to implement the cipher must be known, and supplied,

  3. the key (and any processing applied to it before encryption) must be known, or

  4. the cipher must be somehow insecure: either old (Caesar, Vigenère etc.), deliberately designed to be breakable (crypto puzzles) or just used inappropriately (e.g. a block cipher in ECB mode, or with a reused key+IV).

Arguably, case #1 really belongs on Stack Overflow (although one could argue for the topicality of parsing standard metadata formats here), while cases #2 and #3 might fit better on Reverse Engineering. This leaves only case #4, and even there, crypto puzzles are often poorly suited for this site (some may be on topic at Puzzling), and likely to be closed as "requests for analyzing or deciphering a block of data". (The exceptions tend to be questions asking about cryptanalytic techniques for solving such puzzles, with actual ciphertext given only as an incidental example, if at all.)


As for your specific question, it does seem to fall under the "somehow insecure" category, and thus be potentially answerable. Indeed, the obvious answer (bitwise XOR with a constant key) has already been given in the comments (although, as Henrick notes, there's not enough information in the question to definitively rule out other possibilities).

What's somewhat unclear to me is whether this is actually the answer you want. If it is, I'd be inclined to reopen the question, perhaps edit it a bit to remove irrelevant distractions, and let someone turn those comments into a proper answer. It probably won't ever be the greatest question on this site (for one thing, its rediscoverability via Google will be rather poor), but it should be OK.

That said, the XOR answer seems so obviously trivial that I'm not 100% sure if that's really what you're asking about. If not, you might want to edit your question to clarify it.

$\endgroup$
3
$\begingroup$

Often posts that contain ciphertext only or plaintext/ciphertext pairs are closed as "Requests for analyzing or deciphering a block of data are off-topic here, as the results are rarely useful to anyone else."

If you had not included plaintext/ciphertext pairs and instead posted an equation (like the one codesinchaos posted, c[i] = p[i] xor key[i mod 10]), I doubt the question would have been closed. But, there are legitimate concerns with this, as we cannot expect novice cryptographers to be able to see some plaintext/ciphertext pairs and translate that readily into a formula.

We have plenty of examples of legitimate uses of the "Request for analyzing or deciphering..." close reason. Here are a few: one, two. But I don't think your question is one of those.

So, unless there are serious objections, I say we reopen the question and let Codesinchaos (or anyone else) post an answer.

One suggestion I have for you would be to add to your question, however. You don't ask anything about the security of the scheme. That seems like a very important part of your curiosity and should be included.

$\endgroup$
  • 3
    $\begingroup$ Even without the ciphertext, it might not have been very well received. It's an identification request (please offer an alternative answer if you disagree with mine), plus a probably-off-topic implementation question. $\endgroup$ – otus Jan 12 '16 at 9:53
  • $\begingroup$ @otus, that is a good point I hadn't considered. $\endgroup$ – mikeazo Jan 12 '16 at 19:33
2
$\begingroup$

I think the question in question has merits, that it might deserve an answer and that cryptographers might be well-suited to answer the question, but I still think it is off-topic for this forum.

Firstly, there is a legal side to it. While it would be, in my opinion, completely legitimate e.g. to investigate whether some software stores the user's own passwords and billing information securely, I would personally not feel comfortable e.g. unknowingly contribute in cracking poor software protection.

Secondly, what looks like a Vigenere cipher from a few PT/CT pairs, might still be something completely different, such as a block cipher in CFB mode that gets a constant IV due to some implementation flaw. You would typically need access to the executable to tell, but even if some kind soul would download the software and analyze it prior to answering, the question and answer would become obsolete as soon as the software manufacturer fixed the issue.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .