If I transform natural plaintext by:

  • making each letter two decimal digits, considering the whole as a decimal number;
  • multiplying by the key (some integer constant), giving the ciphertext;

would frequency analysis still work?


Plaintext:     G o l d U n d e r S e a
Number:       071512042114040518190501 x 911
Ciphertext: 65147470365890912071546411

To get the text again simply divide by 911. Conversion of the ciphertext to letters could be added somehow.

Assuming frequency analysis is not an option, how would one break this?

Note: The question has been improved by the OP, then re-tagged and further edited for clarity. I now wish I could rescind my own vote to close it.

  • $\begingroup$ @ fgrieu, what if I multi the ct with another numbers three times ex. plaintxt x 911x855x552 , would that make it harden? $\endgroup$
    – illsecure
    Oct 21 '12 at 8:45

Frequency analysis would work on average quite poorly on ciphertext of the proposed cipher. How exactly depends a lot on the value of the key: for some weak keys likes 1, 3, 30, 30000.. it works essentially as well as for any mono-alphabetic cipher. For 103, it still works well. For any key, given enough (lots of) ciphertext, it could still distinguish the ciphertext from random.

Frequency analysis is NOT the right tool to attack the proposed cipher. It is much easier to find the key $k=911$ by trying small factors $k$ of $c=65147470365890912071546411$ (in ascending order) and keeping the one (or those very few) such that $c/k$ has all digits in its base-100 form in range $[1\dots26]$. That attack would not work well for a huge key purposely constructed as the product of many small factors. However, I guess refinements are possible.

An even more devastating problem occurs when a key is reused for different ciphertexts: we can compute the GCD of the ciphertexts, that will be a multiple of the key, and the key itself with few ciphertexts (sometime 2 or 3, growing only slightly with size of the parameters).

Therefore, the cipher is weak and has no practical interest.

  • $\begingroup$ got it, But how I can make really secure Hand-Cipher, what if i multiply by five digit then divide on three digit and then take the result and reverse it. like 1234 become 4321. would that be stronger? $\endgroup$
    – illsecure
    Oct 21 '12 at 9:46
  • $\begingroup$ @illsecure: that's a different and tough question. See What is the most secure hand cipher? and Is there a secure cryptosystem that can be performed mentally?. $\endgroup$
    – fgrieu
    Oct 21 '12 at 10:00
  • 1
    $\begingroup$ @illsecure: For the second part of your comment: $c=\lfloor p\cdot k_0/k_1\rfloor$ with $k_0\gg k_1$ and $GCD(k_0,k_1)=1$ seems a passable hand cipher if the key is not reused. The final "reverse it" does not help, by Kerckhoffs's second principle. $\endgroup$
    – fgrieu
    Oct 21 '12 at 11:33
  • $\begingroup$ @ fgrieu, thanks but last thing will it be easy to crack if the cipher text less than 100 digit (numbers-or-letters) cuz i want to put the password with the file encrypted so i can make password for each file and store with it, so what attack can be apply on 100 digit , note that I'll make a file name password and put numbers inside. $\endgroup$
    – illsecure
    Oct 21 '12 at 11:43
  • $\begingroup$ @illsecure: I do not get what you are trying to achieve, especially the fragments: store with it, and make a file name password. If the passwords are in clear along with the ciphertext, there is no cryptographic security per Kerckhoffs's second principle. What about explaining your goal in another question? $\endgroup$
    – fgrieu
    Oct 21 '12 at 13:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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