| Welcome to Crypto. We hope you enjoy your visit. You're currently viewing our forum as a guest. This means you are limited to certain areas of the board and there are some features you can't use. If you join our community, you'll be able to access member-only sections, and use many member-only features such as customizing your profile, sending personal messages, and voting in polls. Registration is simple, fast, and completely free. Join our community! If you're already a member please log in to your account to access all of our features: |
- Pages:
- 1
- 2
| Crypto Forum Collaborative Algorithim | |
|---|---|
| Topic Started: Sep 1 2005, 05:40 AM (1,065 Views) | |
| insecure | Sep 13 2005, 11:22 PM Post #16 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Perhaps someone here should write up S-boxes, but this isn't really the right group for it. I'll see if I can find a better group, and some time. Ah, time! If anyone could fax me some, I'd appreciate it. |
![]() |
|
| Revelation | Sep 14 2005, 02:51 PM Post #17 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
I have made an 'encryption', but it has probably got some weaknesses: Make up a password, like TESTCASE. Then write that vertically. Write the alfabet starting from the next letter. T UVWXYZABCDEFGHIJKLMNOPQRS E FGHIJKLMNOPQRSTUVWXYZABCD S TUVWXYZABCDEFGHIJKLMNOPQR T UVWXYZABCDEFGHIJKLMNOPQRS C DEFGHIJKLMNOPQRSTUVWXYZAB A BCDEFGHIJKLMNOPQRSTUVWXYZ S TUVWXYZABCDEFGHIJKLMNOPQR E FGHIJKLMNOPQRSTUVWXYZABCD If you want to encrypt 'awesome', pick the first letter from the first 26 characters if you look at it vertically (1st letter because it is an A). The letters with an underline are the 26th. So awesome would become: UALQPKO. |
|
RRRREJMEEEEEPVKLWENFNVJKEEEEEAOLKAFKLXCFZAASDJXZTTTTTTTLSIOWJXMOKLAFJNNKFNXN RAGRBAQEMHIGDJVDSEOXVIYCELFHWLELJFIENXLRATALSJFSLCYTKLASJDKMHGOVOKAJDNMNUITN RRRRLJVEEEEECLYVYHNVPFTAEEEEEMWLMEIRNGLARWJAKJDFLWNTIERJMIPQWOTZEOCXKNUBNXCN RJIRPOWEANFUSNCZVDVZNMSFEKLOEPZLDKDJWSAAAAAAAOERHJCTNCKFRIMVKSOFOMKMANREWNBN RZUDRGXEEEEENFQIDVLQNCKNEEEEEDGLLLLLLAWIOSNCDARLODMTOEJXMILDFJROTKJSDNLVCZNN | |
![]() |
|
| Donald | Sep 14 2005, 04:30 PM Post #18 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
But there is not a unique decryption? Meaning, there are multiple possible decryptions for the letter U or T (and others) in the first alphabet. |
![]() |
|
| Revelation | Sep 14 2005, 04:39 PM Post #19 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
I understand what you mean. But I don't think that matters much. With a little guessing you know what the answer is, plus this makes it harder to decrypt. What matters to me, if there is an easy way to crack this.
|
|
RRRREJMEEEEEPVKLWENFNVJKEEEEEAOLKAFKLXCFZAASDJXZTTTTTTTLSIOWJXMOKLAFJNNKFNXN RAGRBAQEMHIGDJVDSEOXVIYCELFHWLELJFIENXLRATALSJFSLCYTKLASJDKMHGOVOKAJDNMNUITN RRRRLJVEEEEECLYVYHNVPFTAEEEEEMWLMEIRNGLARWJAKJDFLWNTIERJMIPQWOTZEOCXKNUBNXCN RJIRPOWEANFUSNCZVDVZNMSFEKLOEPZLDKDJWSAAAAAAAOERHJCTNCKFRIMVKSOFOMKMANREWNBN RZUDRGXEEEEENFQIDVLQNCKNEEEEEDGLLLLLLAWIOSNCDARLODMTOEJXMILDFJROTKJSDNLVCZNN | |
![]() |
|
| insecure | Sep 14 2005, 05:28 PM Post #20 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
If I understand the cipher correctly, it is only good for very short messages - in fact, messages no longer than the key length - unless you are prepared to re-use the key block, in which case I think the cipher will fall to a classic attack. Donald - I suspect you know to which attack I'm referring. |
![]() |
|
| Revelation | Sep 14 2005, 07:07 PM Post #21 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
You can just move on with counting from the last 26th character, so you don't fall into a pattern. |
|
RRRREJMEEEEEPVKLWENFNVJKEEEEEAOLKAFKLXCFZAASDJXZTTTTTTTLSIOWJXMOKLAFJNNKFNXN RAGRBAQEMHIGDJVDSEOXVIYCELFHWLELJFIENXLRATALSJFSLCYTKLASJDKMHGOVOKAJDNMNUITN RRRRLJVEEEEECLYVYHNVPFTAEEEEEMWLMEIRNGLARWJAKJDFLWNTIERJMIPQWOTZEOCXKNUBNXCN RJIRPOWEANFUSNCZVDVZNMSFEKLOEPZLDKDJWSAAAAAAAOERHJCTNCKFRIMVKSOFOMKMANREWNBN RZUDRGXEEEEENFQIDVLQNCKNEEEEEDGLLLLLLAWIOSNCDARLODMTOEJXMILDFJROTKJSDNLVCZNN | |
![]() |
|
| Donald | Sep 14 2005, 07:49 PM Post #22 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Some of them anyway.
It will still cycle back to the same starting point eventually, which means this is a Vigenere with mixed alphabets, AND, the unusual situation that multiple plain text letters can encrypt to the same cipher text output for each alphabet. A "reduced crypt text" alphabet. On a practical level, this makes authorized decryption very problematic. There is no UNIQUE decryption for any particular message. When decrypting our first two alphabets would look like this:
With this many multiples, and many of them for high frequency letters, determining exactly what was originally encrypted could be difficult. For example, do we decrypt UI as "as" or "of"? And the combination UY would have 16 possible legitimate decrypts, which could make authorized decryption a serious cryptanalysis process when there are no word divisions and the letters on each side of it ALSO have multiple possible decryptions. Since decryption could be very difficult for the authorized decryptor, yes, this would provide added difficulties for the unauthorized decryptor. But, on a practical level, this is still just a Vigenere with some added complexities. Normal attacks against the Vigenere: --- PROBABLE WORD ATTACK: in a NORMAL Vigenere cipher, the alphabets are simple caesar shifts based on a key word. so if our keyword was BED, we would encrypt our message like this:
For a probable word attack, we takes advantage of the fact that in a NORMAL vigenere, decrypting a crypt text letter by the correct plain text letter reveals the key. Notice in the above example the first letter of the crypt text is T. If we decrypt T by a Caesar shift of S, we get: B! So, to make a probable word attack, you simply "drag" a word that is likely to be in the message along the encrypted message, using the plaintext word as a key to shift the crypt text. When the word you are dragging lines up with the same word in the message, the key is revealed!
Due to your mixed alphabets, a probable word attack would not reveal the key. So you are immune to this one. --- INDEX OF COINCIDENCE: This attack tells us that if you line a normal english message up under itself by some shift, the "index of coincidence" is the number of times you get the same letter in the same position. In a normal english message about 6.6 percent of the text will match up with a shifted version of the same text.
4 matches out of 60 letters, 4/60=0.06666667 Bingo, right on the money! Note that a normal single alphabet cipher does NOT change the index of coincidence! But, for random text, the index of coincidence is around 3.8%. A Vigenere encryption gets the same index of coincidence as random text. UNLESS, you just happened to have shifted the text by the same length as the key (or a multiple of it). This is because NOW you have letters that are encrypted with the same alphabets all lined up, so the index of coincidence will be back to the normal 6.6% (or something close) And, once you know the length of the key, you can do a normal frequency count on the each of the different alphabets. If your key is of length 3 (as in our BED example) you end up with three different frequency counts. One for characters 1,4,7,10... etc, the next for characters 2,5,8,11... etc, and the last for characters 3,6,9,12... etc. Now you can probably identify E in each alphabet, possibly TAO and N as well, but if they are simple caesar shift, you just need one letter to give you the entire alphabet. BUT, for this cipher, we have a crypt alphabet smaller than our plain alphabet (only 13 letters with this keyword). So our index of coincidence is going to be way up through the roof. But that doesn't make us immune to the attack. The Index of Coincidence should still spike up when we are at a shift that is a multiple of the key length. So the attacker would still probably be able to get the key length using this technique. And, as stated above, that opens the cipher up to frequency analysis. The reduced crypt text alphabet is going to mess the frequency analysis up, but I'll deal with that again later. --- THE KASISKI METHOD: For this attack we look for duplicate strings in the encrypted message. In longer messages, the same plain text word will inevitably line up with the same parts of the key on occasion. When that happens, it will be encrypted to the same crypt text characters. By finding these matching strings and examining the distances between them, the unauthorized decryptor can determine the key length, opening up the cipher in the same way that the Index Of Coincidence does. Now, the reduced crypt text alphabet is going to increase the number of false positives, strings that match in the crypt text but were not really matches in the plain text. But given a sufficient length of crypt text the real matches should still predominate, and the key length will be vulnerable. --- Ok, that's three attacks on a Vigenere that I've read about and am familiar with. I've never actually attempted to crack a Vigenere myself, it's complicated stuff, but very doable. Your cipher has two advantages, 1: mixed alphabets instead of a caesar shift. This is pure advantage, it makes the attack more difficult, but not impossible. 2: reduced crypt text alphabet. This DOES make unauthorized decryption more difficult. Much more difficult. But I'm disinclined to call it an actual advantage because it makes AUTHORIZED decryption almost as difficult. There are likely to be many places in the text where more than one decryption is possible, and there is no way to determine for certain which letters were actually in the original plain text. It's ok to have multiple possible encryptions for the same plain text message, but there should always be one and only one possible decryption for any encrypted text. Donald |
![]() |
|
| Revelation | Sep 14 2005, 08:20 PM Post #23 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
How can you determine the key length when you move vertically through the rows? This means each key letter is used. I agree that eventually they will line up, but you need the same letter as output to see if it lines up. And even then, you can't be sure because that letter could be multiple times in the alphabet-region (vertically from 1-26; 27-53 etc.) |
|
RRRREJMEEEEEPVKLWENFNVJKEEEEEAOLKAFKLXCFZAASDJXZTTTTTTTLSIOWJXMOKLAFJNNKFNXN RAGRBAQEMHIGDJVDSEOXVIYCELFHWLELJFIENXLRATALSJFSLCYTKLASJDKMHGOVOKAJDNMNUITN RRRRLJVEEEEECLYVYHNVPFTAEEEEEMWLMEIRNGLARWJAKJDFLWNTIERJMIPQWOTZEOCXKNUBNXCN RJIRPOWEANFUSNCZVDVZNMSFEKLOEPZLDKDJWSAAAAAAAOERHJCTNCKFRIMVKSOFOMKMANREWNBN RZUDRGXEEEEENFQIDVLQNCKNEEEEEDGLLLLLLAWIOSNCDARLODMTOEJXMILDFJROTKJSDNLVCZNN | |
![]() |
|
| Donald | Sep 14 2005, 09:19 PM Post #24 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
I'm sorry, I wasn't clear. The fact that you are moving vertically through the block is just a different way of creating the alphabets. You still end up with a sequence of alphabets. In your example we have:
And so on and so forth, until you repeat after 112 alphabets if I have calculated correctly. That sequence of 112 alphabets is your key from a Vigenere cipher perspective. And 112 is indeed a formidable key length, but with sufficient volume of traffic, I think it would be vulnerable to the attacks I outlined. This key length is also a mark against the cipher from a pen and paper perspective. The encryptor either has to take the time write out all 112 of these alphabets, OR, they must constantly count through the block by 26 without ever making a mistake, because the first time the encryptor lost their place and counted 25 or 27 instead of 26, the rest of the message will be completely unintelligible to the authorized decryptor. It's a very interesting way of generating a mixed alphabet, but the multiple decryption possibilites and the difficulty of encryption/decryption leave me very nervous. :blink: |
![]() |
|
| Revelation | Sep 30 2005, 06:14 AM Post #25 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
I forgot to tell you that this is an excellent tutorial
|
|
RRRREJMEEEEEPVKLWENFNVJKEEEEEAOLKAFKLXCFZAASDJXZTTTTTTTLSIOWJXMOKLAFJNNKFNXN RAGRBAQEMHIGDJVDSEOXVIYCELFHWLELJFIENXLRATALSJFSLCYTKLASJDKMHGOVOKAJDNMNUITN RRRRLJVEEEEECLYVYHNVPFTAEEEEEMWLMEIRNGLARWJAKJDFLWNTIERJMIPQWOTZEOCXKNUBNXCN RJIRPOWEANFUSNCZVDVZNMSFEKLOEPZLDKDJWSAAAAAAAOERHJCTNCKFRIMVKSOFOMKMANREWNBN RZUDRGXEEEEENFQIDVLQNCKNEEEEEDGLLLLLLAWIOSNCDARLODMTOEJXMILDFJROTKJSDNLVCZNN | |
![]() |
|
| 1 user reading this topic (1 Guest and 0 Anonymous) | |
| « Previous Topic · Community · Next Topic » |
- Pages:
- 1
- 2





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



12:22 AM Nov 27