| Viewing Single Post From: My Cipher Challenge | |
|---|---|
| Ruffnekk | Mar 2 2008, 04:19 PM |
|
Just registered
![]() ![]() ![]()
|
Introduction I'm a new member to this forum and want to present you with a challenge to test the security of my home-made paper-and-pen cipher. First I will explain in detail how the cipher works and then present you with a reasonably long ciphertext without the key for you to crack. The Cipher I call this cipher the Lockpick Cipher. I got the idea of creating a cipher that employs a key in the way a physical key is used in a tumbler lock. To use the cipher you need a keyword and construct a tabula recta derived from it. The way the cipher works, it is a prerequisite that the keyword is odd in length. I'm aware this is a weakness. I'm happy to discuss other known weaknesses after someone solves the challenge, but right now I would be giving too much away. The challenges below use the most basic version of this cipher -- there are several ways to make it much harder to analyze, which I haven't (yet) used for these challenges. The Tabula Recta In this example I will use the keyword EQUAL. This keyword is used in two ways: 1) to determine the start of the Tabula Recta 2) transformed into a number to use as a physical key To create the Tabula Recta, write down the alphabet vertically (the key column) and put the keyword at the top, next to the A. Proceed by filling in the remaining letters from the top down in alphabetical order. You will have the initial table like this: A EQUAL B FRVBM C GSWCN D HTXDO E IUYEP F JVZFQ G KWAGR H LXBHS I MYCIT J NZDJU K OAEKV L PBFLW M QCGMX N RDHNY O SEIOZ P TFJPA Q UGKQB R VHLRC S WIMSD T XJNTE U YKOUF V ZLPVG W AMQWH X BNRXI Y COSYJ Z DPTZK Now you have to transform the keyword into a numerical equivalent to finish the Tabula Recta. One way of doing this is writing down the alphabet and numbering the letters in order, using the length of the keyword as the maximum value: ABCDEFGHIJKLMNOPQRSTUVWXYZ 12345123451234512345123451 Now read off the keyword EQUAL in order and you will have the numeric key 52112. This is the 'key' that will be inserted into the 'lock'. You insert the key from the left to the right, so the last digit of the key enters the lock first. You insert the key one digit at a time, until it is fully inserted: A EQUAL | GQUAL | FSUAL | FRWAL | GRVCL | JSVBN B FRVBM | HRVBM | GTVBM | GSXBM | HSWDM | KTWCO C GSWCN | ISWCN | HUWCN | HTYCN | ITXEN | LUXDP D HTXDO | JTXDO | IVXDO | IUZDO | JUYFO | MVYEQ E IUYEP | KUYEP | JWYEP | JVAEP | KVZGP | NWZFR F JVZFQ | LVZFQ | KXZFQ | KWBFQ | LWAHQ | OXAGS G KWAGR | MWAGR | LYAGR | LXCGR | MXBIR | PYBHT H LXBHS | NXBHS | MZBHS | MYDHS | NYCJS | QZCIU I MYCIT | OYCIT | NACIT | NZEIT | OZDKT | RADJV J NZDJU | PZDJU | OBDJU | OAFJU | PAELU | SBEKW K OAEKV | QAEKV | PCEKV | PBGKV | QBFMV | TCFLX L PBFLW | RBFLW | QDFLW | QCHLW | RCGNW | UDGMY M QCGMX | SCGMX | REGMX | RDIMX | SDHOX | VEHNZ N RDHNY | TDHNY | SFHNY | SEJNY | TEIPY | WFIOA O SEIOZ | UEIOZ | TGIOZ | TFKOZ | UFJQZ | XGJPB P TFJPA | VFJPA | UHJPA | UGLPA | VGKRA | YHKQC Q UGKQB | WGKQB | VIKQB | VHMQB | WHLSB | ZILRD R VHLRC | XHLRC | WJLRC | WINRC | XIMTC | AJMSE S WIMSD | YIMSD | XKMSD | XJOSD | YJNUD | BKNTF T XJNTE | ZJNTE | YLNTE | YKPTE | ZKOVE | CLOUG U YKOUF | AKOUF | ZMOUF | ZLQUF | ALPWF | DMPVH V ZLPVG | BLPVG | ANPVG | AMRVG | BMQXG | ENQWI W AMQWH | CMQWH | BOQWH | BNSWH | CNRYH | FORXJ X BNRXI | DNRXI | CPRXI | COTXI | DOSZI | GPSYK Y COSYJ | EOSYJ | DQSYJ | DPUYJ | EPTAJ | HQTZL Z DPTZK | FPTZK | ERTZK | EQVZK | FQUBK | IRUAM ->00000 | 20000 | 12000 | 11200 | 21120 | 52112 As you can see on the bottom row, the key is inserted one digit at a time and the columns are rotated accordingly. In the first step, only the first column is affected by the key -- is it rotated up 2 steps. At the next step, the 2nd column is rotated up 2 steps, and the first column is rotated down 1 step because the value of 1 is lower than the previous value that was used on that column. Just try to picture a physical key being inserted into a lock, pushing or dropping the tumblers. The Encryption The actual encryption is performed in the next steps: 1) Lookup the plaintext letter in the leftmost key column. 2) Move one position to the right in the current table, starting at table 1. 3) Lookup this letter in the next column and move one column to the right again. 4) Repeat step 2 and 3 until you reach the rightmost column in the current table. 5) The letter in the current column is the ciphertext letter. 6) The next plaintext letter is processed the same way, using the next table. 7) After using the last table, you start moving backwards, thus extracting the key from the lock again. Let me illustrate the process by using an example: Plaintext: THIS IS AN EXAMPLE MESSAGE Find the first plaintext letter T in the leftmost 'key column'. The letter next to it is an X. Find the X in the column immediately to the right of it. The letter next to that X is the B. Find the B in the next column. The letter next to that B is the M. This is therefore the first ciphertext letter. The next plaintext letter H is substituted in the same manner, but using the second table in the Tabula Recta now. H -> N -> R -> C. After using the last table in the Tabula Recta, proceed by moving backwards towards the first table again. After processing all plaintext letters of our example, the cipher produces the following ciphertext: PT: THIS IS AN EXAMPLE MESSAGE TB: 1234 56 54 3212345 6543212 CT: MCAN BQ TI WSTHHGX KXNKVZX TB indicates which table from the Tabula Recta was used for that letter, moving forwards and backwards. Decryption To decrypt a ciphertext, you need the correct Tabula Recta and reverse the process. The first ciphertext letter M is looked up in the rightmost column of the first table and working to the left you would arrive at the plaintext letter T again. (M -> B -> X -> T) The Challenge I decided to make two challenges. One easy and one hard. For the challenges I (of course) used a different keyword. I determined the numeric key value in the same way as the above example. The leftmost key column is an unkeyed alphabet like in the example. The keyword is not longer than 9 letters in either challenge. Here's the easy challenge: TMA UXOEHP, ZNZTM, KX PME XWZEXFFYZETN TB ZDJ ISPKHQEHP, GJI TMA UXOEHP, VWXSNKT, KW TMA KTHIYASAST TB ZDJ HJWXP, FRJ, WRPMOZCN WYTFETWGLJ, PU W HEWPGES ECPKJY, IS LUAYRD, BGN ROWA XAFDNHE WYTFETWGLJ ET LWOXA. IEYISC KZLAW WRHJN UKK BWOR DOO BOWG ZDJ PMERKXOUDE KK CTIVKXIYEUJ. I've made it easy in several ways as a cryptanalyst will quickly notice. If you find this one too easy, I got another one that will not be so easy: DSIAE YANVP VWHNT NMEIJ HYHSA VRBJD SPICG XJASO KTRTH IZUIQ PCIGG UKQSH UELVY LUBOL UOWYU GRLVP HOEAJ NXREX VQXUK CUSXW VZOLU EXRCP ZSEQU XIREY KZJGN OOEWS HOSJY NKRTS VHQNT IRBZP KJSHX WUZIY ADSSM VGQKC HNINT NRBZP KJSHX LKNYE FHMGN VUIIQ SLWRU BZEYP IFXBT OSNRW VGIQZ RKCMW NCMZY YAYMY FZYNT NRBZP KELRY YXESH ZZJLU EXPLL URMAM PGPIL UOFRT NOAKO VHROK COQIE OPKYU GOAKM HCWZA BSHVL STXGR OYNHW FSSJR YBRJW LOEAJ ZGPIO BASAZ RKZSF UEEVT CUIIC OPEQG XJUMO OTWSG MKNQT KLGEU GJBJD ALVFC SRYML TMYGR OXLIL AD Good luck! |
|
-- ...and this loneliness just won't leave me alone. | |
![]() |
|
| My Cipher Challenge · Challenges | |




![]](http://209.85.122.85/static/1/pip_r.png)


10:11 AM Nov 28