A stick cipher is a Homophonic substitution cipher that counts the sticks and curves in any letter making it hard to distinguish if the cipher is actually related to the complete symbol (the letter) or its sub-components (the stems, bowls, crossbars and spines of a letter).
You could use a stick cipher with any symbol or drawing as long as a number of lines per symbol are convened by the encoder and the decoder.
Of course counting the lines of a letter is just one way to do it, the main idea is to associate a number with a symbol that then composes the ciphertext, the fact that we are counting sticks just makes the key easy to remember.
The number of "sticks" in a character or drawing may vary, so its important that the following rules are applied:
Note that the encoding set and the decoding set do not have to be in the same order or even contain the same characters. Usually the encoding and decoding set is a a 26 letter alphabet. And the stick count of each letter can be easily guessed by using a sans-serif font.
To make your cipher harder to crack add lots of space characters and use an inverted frequency alphabet as your decoding set, that way the encoding will have nice long letter sequences making frequency analysis harder.
To encode:
To decode:
Here is a simple example of a stick cipher.
Since were counting sticks no serif fonts are used (thats what sans-serif means) and letters must all be capitalized.
ENTRE MAS LEJOS ME VAYA MAS ME ACUERDO YO DE TI
Using a 26 letter alphabet, replace the original letter for its alphabet number equivalent.
E=5, N=14, T=20, R=18, E=5, M=13, A=1, S=19, L=12, E=5, J=10, O=15, S=19, M=13, E=5, V=22, A=1, Y=25, A=1, M=13, A=1, S=19, M=13, E=5, A=1, C=3, U=21, E=5, R=18, D=4, O=15, Y=25, O=15, D=4, E=5, T=20, I=9
Here are the 4 different groups for an A to Z alphabet in Helvetica ordered by the number of sticks per letter.
1 Stick
CIJOSU
2 Sticks
DLPQTVX
3 Sticks
ABFGHKNRYZ
4 Sticks
EMW
Please note that the "I" in Arial and Helvetica is different from "I" in Currier New. And that the "J" in Helvetica and the "J" in Currier New are also different.
Using numbers from 0 to 9 as spaces and word breaks you can create many different ciphers that all decode to the same clear text.
Here is our cipher text:
UM4RLNTHS4KIQLTJEWS3MWALMS4XR90ECQSPJD8C3VZZCTTWL66RZMV2RV8VULVF3JWTGWC5MRWBJE86LTQUTKO0EC23XWZMJJHNJ5O1RRLJPLKAPSTU6C35MXMZ7J0JPEKNAH94AWNST8MO34J2SX6DJGQKUVXWI3TB8ELKRMX1ZO8EPJENS06MWRLRWCM8DBDQYXU05XCU3OZO35ELJFEWCO1EWU95code>
Of course any number of cipher texts are possible (it really depends on the character sets you use).