Page 1 of 1

Home-made Ciphers

Posted: 2002-10-03 05:51pm
by Raoul Duke, Jr.
Anyone got any good non-software encryption schemes?

Here's one -- CSVC (Continuous-Shift Vigenere Cipher)

Take your standard Vigenere Square. Instead of

ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
CDEFGHIJKLMNOPQRSTUVWXYZAB
DEFGHIJKLMNOPQRSTUVWXYZABC
EFGHIJKLMNOPQRSTUVWXYZABCD

and so on, a CSVC employs an ascending or descending prime-number shift sequence. The sequence itself can be used as the key. For example:

B5+:

GLQVAFJPUZ... starts with B as the beginning letter of the first line of ciphertext, and shifts 5 spaces for the next letter in the ciphertext. This 5 space shift is repeated until there are 26 letters in the first line. Since the sequence is ascending (as denoted by + in the key) the next line will start with C as the opening letter, then employ a 7-space shift. The only prime number not useable in the CVSC is 1.

Thus, an ascending shift would proceed 3, 5, 7, 11, 13, etc. 13 is what I limit myself to for ease of use. Descending shift is denoted by "-" in the key, for example "C7-".

Anyone else have one?

Posted: 2002-10-03 05:58pm
by Faram
That one is broken way back

For a strong easy kickas crypto only involving a deck of cards read THIS

Posted: 2002-10-03 06:14pm
by Raoul Duke, Jr.
Faram wrote:That one is broken way back

For a strong easy kickas crypto only involving a deck of cards read THIS
I know the standard Vigenere was broken, but who broke the CSVC? I mean, unless I'm suffering from cryptomnesia, I invented it...

(Wait -- sudden flash of worry that the one-time pad cipher is similar. No, wait -- it's not. It uses a word or phrase as the key.)

Posted: 2002-10-03 06:20pm
by Faram
Ehh ok thought it was the standard Vigenere.

Right that would be harder to break with pen&paper but your use of primes are a weakness in this case. There is only that many primes you can use beore it gets really messy.

Posted: 2002-10-03 07:10pm
by Raoul Duke, Jr.
Faram wrote:Ehh ok thought it was the standard Vigenere.

Right that would be harder to break with pen&paper but your use of primes are a weakness in this case. There is only that many primes you can use beore it gets really messy.
Hmm. Maybe a preset specification of specific primes to be used could be incorporated somehow without giving a hint of a crib...

Here's another one: AT9 (Alternating T9) cipher:

An example would be: Hello (plaintext) = 4d5k6

Here's how it works: Take your plaintext message. Look at the T9 keypad on your telephone. There are 3-4 letters on keys 2-9. The first letter of your plaintext becomes the number of the key on which it appears. The next letter is a one-letter shift. Number. Shift. Number. Shift, and so on. Software would make this easier to use, and would probably be mandatory for decryption.

Posted: 2002-10-03 07:28pm
by Mr Bean
Hmm, I could tell you many cool and intresting Cypoto tecnhinques, but the goverment would kinda yank my clerance away and leave me dead in back ally as it falls under Treason to posts those sorts of things to the public domain :D

Posted: 2002-10-03 07:35pm
by Raoul Duke, Jr.
Mr Bean wrote:Hmm, I could tell you many cool and intresting Cypoto tecnhinques, but the goverment would kinda yank my clerance away and leave me dead in back ally as it falls under Treason to posts those sorts of things to the public domain :D
Just so it's clear (I should have said this already) CSVC and AT9 are copyrighted. Didn't think I'd have to worry about that... until now. :?

Posted: 2002-10-03 07:45pm
by phongn
Your standard one-time pad would work and is unbreakable - so long as you keep the keys secure.

Posted: 2002-10-03 07:47pm
by Raoul Duke, Jr.
I'm aware of that. The purpose of this thread is to display ciphers we've come up with ourselves.

Posted: 2002-10-03 08:01pm
by Azeron

Code: Select all


/*********************** 
*2 bit encryption sorta...
*Just throw the routine in reverse 
*to get the message decoded.
*This routine is not vulnerable to
*charecter analysis.
*Just reaplce key with a int returning 
*routine, and you will have a pretty code
*encyrption routine
 **************************/

char* alphaNum = 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPPASDFGHJKLZXCVBNM1234567890 ';

char* message = "Hello My Name Is Azeron';

message = encode(message,8,0);

/*recursive algorythim */
char* encode(char[]* string,int* key,int* iter){
 for(int i=0;i>65;i++){
  if(alphaNum[i]==string[iter]){
   string[iter]=alphaNum[i+(key*iter++)];
   break;
  }
 }
  /*just a obscure if else statement. */
 reuturn (strlen(message)!=iter)?encode(message,8,iter):message;
}


Posted: 2002-10-03 08:03pm
by Raoul Duke, Jr.
:shock: Wait, where's that from?! And is it what I think it is? I mean, it isn't alternating T9, obviously, but is it just a standard T9 transposition? Or am I reading the wrong thing altogether? My head hurts!

Posted: 2002-10-03 08:14pm
by Azeron
whats going on, is that I took the alphanumeric squence, and I put it in my own sequence. (QWERTY for those of you lazy coders who recognize what I did)

I first find the corresponsding charecter aganst the the alphaNum List. I then change the letter in the message to the current interation of the routine times the key integer.

Suppose I had the letter A first.

A is in the first position in the list
so I add i + (the key * the current iteration of the routine) or position on the string depending on your perspective so

a strign that I want to encode like 'AAAAAAA'

will go through a charecter list with a corrsponding expodential increase.

A once with be J
A second will be S
A third .... yadada
(ohh I just guessed the result so ignore)

in charecter anaysis you look at how often the charecter repeats, and then break it letter by letter. since the routine does not repeat for a given letter its pointless.

If the key is actually a complicated fucntion evaluation based on some random sequence the routine cipher strength would increase expodentially. although this is not a public/private key system.

Posted: 2002-10-03 08:16pm
by Azeron
ohh by the way, I just thought about it, and wrote it down.......

Posted: 2002-10-03 08:25pm
by Raoul Duke, Jr.
Sounds similar to PGP...

Posted: 2002-10-03 08:41pm
by Azeron
nah my math skills aren't good enough for a real key system. I need to generate a public/pricate key relationship. If anyone gets the key, they can decode it.

Posted: 2002-10-03 09:23pm
by Vertigo1
Yeah, I've got one but its not one I can type up on a computer. It involves a series of right angles.

It works like this:

I draw a standard tic-tac-toe grid. Thats A - I. I draw another one, but each angle has a one dot in the corner pointing to the center. The block in the middle has a dot in the center. This would be J - R. A third grid is drawn, but instead of dots I use astericks. This is the rest of the alphabet.

A buddy of mine and I worked this up back when we were in seventh grade. Nobody has ever broken it yet. :)

Posted: 2002-10-03 09:28pm
by Raoul Duke, Jr.
Sounds pretty clever. I briefly considered using a similar method for a pictographic rendering of the T9 cipher. I don't know if this will format correctly, but ABC would = |_| DEF= |_ etc.

Posted: 2002-10-03 09:49pm
by Vertigo1
Yeah, thats basically the gist of it. Confused the hell out of alot of teachers that way. :D