LAB 3            Fall 2001            Michael Siff      

Cryptanalyzing ADFGVX Ciphers

Lab Report due Tuesday, October 9

Introduction

(Review Singh, Appendix F) The goal of this lab is to demonstrate that the ADFGVX cipher, while difficult, is not impregnable.

Example: (The example used in Singh, Appendix F). Use the ADFGVX substitution and transposition tools to encrypt and decrypt the "attack at 10 pm" example from the book.


Cryptograms for your puzzling pleasure

  1. Known key-length attack. Consider this ciphertext. Suppose you know that the keyword used for transposition is four letters long. Use the frequency counter, and the ADFGVX substitution and transposition tools to find the plaintext and ADFGVX keys.

  2. Chosen-plaintext attack. Consider this ciphertext. Imagine that you have access to a machine that implements the same ADFGVX encryption of unknown substitution key grid and transposition keyword used to generate this ciphertext. Use the machine to help you determine the ADFGVX keys and recover the plaintext corresponding the given ciphertext.

  3. Known-plaintext (crib) attack. Consider this ciphertext. You know that this was generated by the same ADFGVX encryption that generated the following pieces of ciphertext:
      FXGAGAGDAGFAFGGGDGGDGVAVGDVGFGAXFGAFVAXFAFFFXGAGAFGGGAVGFAADGGDGVGFGAXGVVVAFGAFV 
    
      FXGAGGVVDGVAFGGGDGGDGADGGDVGFGAXFGAFVAVGFDFFXGAGAFGGGAADXAVDGGDGVGFGAXAXAGAFGAFV 
    
      FXGAGXAAGGVAFGGGDGGDGGDGAAVGFGAXFGAFVGAFVGVFXGAGAFGGGFFGXGGDGGDGVGFGAXVXGVGFGAFV 
    
      FXGAGFDVVAGAFGGGDGGDGDVFGAVGFGAXFGAFVVFGVAAFXGAGAFGGGAXAFFXDGGDGVGFGAXAVAVFFGAFV 
    
      FXGAGAGGDAFAFGGGDGGDGGFAGAVGFGAXFGAFVFVGVFXFXGAGAFGGGDXAVFADGGDGVGFGAXGAVGVFGAFV 
    
      FXGAGVGADXGAFGGGDGGDGGGGGGVGFGAXFGAFVGGFAGGFXGAGAFGGGAXGXDVDGGDGVGFGAXDXFVGFGAFV 
    
      FXGAGAFAFAFAFGGGDGGDGAFAFAVGFGAXFGAFVFAFAFAFXGAGAFGGGFAFAFADGGDGVGFGAXFAFAFFGAFV
    
    Each of these small ciphertexts is known to correspond to plaintext that begins and ends with the same plaintext: "weatherreport". An example plaintext might be:
      weather report beautiful day weather report
    
    (of course, with spaces removed)


Answer the following questions in your lab report:

  1. For all three of the above cryptograms, you should submit the ADFGVX substitution key grids, the ADFGVX transposition keywords and what the plaintext is, but not the complete plaintext (that'd be a waste of paper). Instead, use the following technique. Consider the first letter of your first name. Treat it as a number from 0-25. Count that many words in from the last word of the plaintext and submit that word. (If your name is Alfred, you would submit the last word of the plaintext. If your name is Beena, you would submit the second to last word of the plaintext. If your name is Zeno, you would submit the 26th-to-last word - the word that occurs with exactly 25 words after it in the plaintext.)

  2. Try using the frequency tool on both plaintext and ADFGVX substitutions, using group sizes greater than 1. Observe the effect of whether the "include overlapping groups" box is checked. Describe what this box does. Is it useful to have it checked for solving ADFGVX ciphers? Why or why not? Are there other ciphers for which you answer would differ?

  3. ADFGVX has both a monoalphabetic substitution component and a transposition component. Suppose someone proposes using a simpler, more compact version that works as follows: Take the plaintext, and first encrypt it according to:
        a b c d e f g h i j k l m n o p q r s t u v w x y z
        M N B V C X Z L K J H G F D S A P O U I Y T R E W Q
    
    Next, the ciphertext is encrypted again, this time using a two-level railfence transposition. How does the security of this system compare to that of ADFGVX?

  4. Explain what you think the main advantages and disadvantages of working in teams to cryptanalyze ADFGVX ciphers. Do you think all cryptanalysis lends itself well to teamwork? Are some ciphers more likely to be broken using a team of cryptanalysts than others? Explain.

  5. Comment on how secure you think the ADFGVX cipher is.

  6. If you were using ADFGVX to send a secret message, what might you do to make it more difficult for an eavesdropper to use the tools employed in this lab to cryptanalyze your message?


crypto home assignments labs notes tools contact instructor