I have a cipher algorithm that doesn't seem to be one of the "well known" ones I could find. I expect someone has already come up with this and I just don't know the name. Hoping one of you can point me in the right direction.

I don't think this falls foul of Should we allow questions about amateur ciphers? - but happy to be corrected.


Difficulty in recovering the original document from a compressed form that has been truncated. This is a symmetric-key cipher.


Example implementation: https://jsfiddle.net/i_e_b/8vd6efp0/

  1. Key is values [0..255], shuffled; thus the key is always 256 bytes long.
  2. Plain-text is appended to the key (in the example, randomised padding is added between key and plain-text)
  3. A back-reference compression algorithm is run against the result of step 2. This results in a set of (distance, length) pairs.
  4. The pairs are encoded as the output cipher-text

Step-through of a sample


This came about from some analysis of the "aCROPalypse" vulnerability, how the original images could be recovered, and what conditions prevented parts of the image being recovered. I've searched around for it, but can't find anything.

  • 2
    $\begingroup$ Looks like this cipher has it's ciphertext much larger than it's plaintext, which is considered extremely undesirable. Thus I very much doubt this is commonly used, or has an academic name. The question could be closed under the standard reason "Requests for analyzing ciphertext, finding hash preimages, identifying or decoding some code, or even reviewing full cryptographic designs are off-topic, as the results are rarely useful to anyone else and/or would be too long for this site.", Update: Granted, my "ciphertext much larger" is for random arbitrary messages. $\endgroup$
    – fgrieu
    Apr 12, 2023 at 16:55
  • 2
    $\begingroup$ Fair enough -- thanks anyway. It seems to give results within 10% of the plain-text for short English messages, and smaller than the plain text for long English messages (it's basically half of the LZ family of compression algorithms). Are there any academic-named ciphers generally based on compression, tree-decomposition, or back-referencing? I couldn't find any. $\endgroup$ Apr 12, 2023 at 16:58

1 Answer 1


It seems this leaks a ton of information on the plain text. In particular if certain sections of the plain text repeat.

The initialization you suggested of a random permutation of 256 different characters seems to make it worse. It has no repetitions so it seems to me if we decode your cipher text with any key. we will get the plain text back up to a substitution cipher which should be broken trivially.

I doubt this has a name in the literature.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.