Difference between revisions of "Create Secret Codes and Ciphers"

Kipkis (Kipkis | contribs)
 
Kipkis (Kipkis | contribs)
m (Text replacement - "[[Category: C" to "[[Category:C")
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
Codes are a way of altering a message into one where the original meaning is hidden. Generally this requires a code book or a code word. Ciphers are processes that are applied to a message to hide or encipher a message. These process are reversed to translate or decipher the message.<ref>https://www.khanacademy.org/computing/computer-science/cryptography/ciphers/a/ciphers-vs-codes</ref> These two parts, codes and ciphers, are a substantial part of the science of secure communication, also called cryptanalysis.<ref>http://www.unmuseum.org/cipher.htm</ref> Use simple codes and ciphers with your friends. Create codes and ciphers of your own. Check out examples of common codes and ciphers to polish your skill and deepen your understanding of each.
+
Codes are a way of altering a message into one where the original meaning is hidden. Generally this requires a code book or a code word. Ciphers are processes that are applied to a message to hide or encipher a message. These process are reversed to translate or decipher the message.<ref name="rf16939">https://www.khanacademy.org/computing/computer-science/cryptography/ciphers/a/ciphers-vs-codes</ref> These two parts, codes and ciphers, are a substantial part of the science of secure communication, also called cryptanalysis.<ref name="rf16940">http://www.unmuseum.org/cipher.htm</ref> Use simple codes and ciphers with your friends. Create codes and ciphers of your own. Check out examples of common codes and ciphers to polish your skill and deepen your understanding of each.
 
[[Category:Codes and Hidden Messaging]]
 
[[Category:Codes and Hidden Messaging]]
  
Line 7: Line 7:
 
===Using Simple Ciphers and Codes (Kids)===
 
===Using Simple Ciphers and Codes (Kids)===
 
#Write out words in reverse. This is a simple way of encoding messages so they can't be understood at a glance. A message like "Meet me outside" written in reverse would instead be "Teem em edistuo."
 
#Write out words in reverse. This is a simple way of encoding messages so they can't be understood at a glance. A message like "Meet me outside" written in reverse would instead be "Teem em edistuo."
#*This code can be easily solved, but it can be useful if you think someone is trying to peek at your message.<ref>http://kidsactivitiesblog.com/27282/secret-codes-to-write-a-coded-letter</ref>
+
#*This code can be easily solved, but it can be useful if you think someone is trying to peek at your message.<ref name="rf16941">http://kidsactivitiesblog.com/27282/secret-codes-to-write-a-coded-letter</ref>
 
#Reflect the alphabet in half to encipher messages. Write out the letters A through M in a single line on a piece of paper. Directly beneath this line, write out the letters N through Z also in a single line. Change each letter of messages to the opposite letter of the two lines of letters you have written out.
 
#Reflect the alphabet in half to encipher messages. Write out the letters A through M in a single line on a piece of paper. Directly beneath this line, write out the letters N through Z also in a single line. Change each letter of messages to the opposite letter of the two lines of letters you have written out.
#*By using a reflected alphabet, the message "Hello" would instead become "Uryyb."<ref>http://www.makeandtakes.com/3-secret-codes-to-try-with-your-kids</ref>
+
#*By using a reflected alphabet, the message "Hello" would instead become "Uryyb."<ref name="rf16942">http://www.makeandtakes.com/3-secret-codes-to-try-with-your-kids</ref>
 
#Try pigpen cipher. Draw a [[Play Tic Tac Toe|tic tac toe]] grid on a piece of paper. Write out the letters A through I in the grid going from the left to right, top to bottom. In this example:
 
#Try pigpen cipher. Draw a [[Play Tic Tac Toe|tic tac toe]] grid on a piece of paper. Write out the letters A through I in the grid going from the left to right, top to bottom. In this example:
 
#*The first row is made up of the letters A, B, C.
 
#*The first row is made up of the letters A, B, C.
 
#*The second  is made up of D, E, F.
 
#*The second  is made up of D, E, F.
#*The last row is made up of G, H, I.<ref>http://kidsactivitiesblog.com/27282/secret-codes-to-write-a-coded-letter</ref>
+
#*The last row is made up of G, H, I.<ref name="rf16941" />
 
#Create a second tic tac toe grid with dots. Draw another tic tac toe grid beside the first one. Fill the grid in with the letters J through R, similarly to the first grid. Then mark dots in each space of the grid of each row as described:
 
#Create a second tic tac toe grid with dots. Draw another tic tac toe grid beside the first one. Fill the grid in with the letters J through R, similarly to the first grid. Then mark dots in each space of the grid of each row as described:
 
#*In the first row, starting on the left, place a dot in the lower right corner (letter I), on the bottom middle side (letter K), and in lower left corner (letter L).
 
#*In the first row, starting on the left, place a dot in the lower right corner (letter I), on the bottom middle side (letter K), and in lower left corner (letter L).
 
#*In the second row, starting on the left, place a dot on the middle right side (letter M), on the bottom middle side (letter N), and on the middle left side (letter O).
 
#*In the second row, starting on the left, place a dot on the middle right side (letter M), on the bottom middle side (letter N), and on the middle left side (letter O).
#*In the second row, starting on the left, place a dot in the upper right corner (letter P), on the top middle side (letter Q), and in the upper left corner (letter R).<ref>http://www.civilwarsignals.org/cipher/pigpencipher.html</ref>
+
#*In the second row, starting on the left, place a dot in the upper right corner (letter P), on the top middle side (letter Q), and in the upper left corner (letter R).<ref name="rf16943">http://www.civilwarsignals.org/cipher/pigpencipher.html</ref>
 
#Write out two X shapes beneath each grid. These two X shapes will also be filled with letters to complete your pigpen cipher key. In the second X, place dots in the open spaces surrounding where the X crosses so there is a dot on each side of the center of the X. Then:
 
#Write out two X shapes beneath each grid. These two X shapes will also be filled with letters to complete your pigpen cipher key. In the second X, place dots in the open spaces surrounding where the X crosses so there is a dot on each side of the center of the X. Then:
 
#*In the first (undotted) X shape, write S in the top of the X, T on the left side, U on the right, and V on the bottom.
 
#*In the first (undotted) X shape, write S in the top of the X, T on the left side, U on the right, and V on the bottom.
#*In the second X shape, write W in the top of the X, X on the left side, Y on the right, and Z on the bottom.<ref>http://kidsactivitiesblog.com/27282/secret-codes-to-write-a-coded-letter</ref>
+
#*In the second X shape, write W in the top of the X, X on the left side, Y on the right, and Z on the bottom.<ref name="rf16941" />
#Use the grid surrounding the letters to write in pigpen cipher. The grid shapes (including dots) surrounding letters are used as substitutes for the letters themselves. Use your pigpen cipher key to translate messages into and out of pigpen.<ref>http://www.civilwarsignals.org/cipher/pigpencipher.html</ref>
+
#Use the grid surrounding the letters to write in pigpen cipher. The grid shapes (including dots) surrounding letters are used as substitutes for the letters themselves. Use your pigpen cipher key to translate messages into and out of pigpen.<ref name="rf16943" />
 
===Unlocking Codes===
 
===Unlocking Codes===
#Recognize the limitations of codes. Code books can be stolen, lost, or destroyed. Modern [[Decipher a Secret Code|cryptoanlaytic techniques]] and computer analysis can oftentimes break even strong codes. Even so, codes can condense long messages into a single signal word, making them great time savers.<ref>https://www.khanacademy.org/computing/computer-science/cryptography/ciphers/a/ciphers-vs-codes</ref>
+
#Recognize the limitations of codes. Code books can be stolen, lost, or destroyed. Modern [[Decipher a Secret Code|cryptoanlaytic techniques]] and computer analysis can oftentimes break even strong codes. Even so, codes can condense long messages into a single signal word, making them great time savers.<ref name="rf16939" />
 
#*Codes serve as good pattern identification practice. This skill can be put to use when encoding, decoding, enciphering, or deciphering messages.
 
#*Codes serve as good pattern identification practice. This skill can be put to use when encoding, decoding, enciphering, or deciphering messages.
 
#*Codes are naturally used between close friends. Inside jokes could be thought of as a kind of "code." Try developing your code language with your best friends.
 
#*Codes are naturally used between close friends. Inside jokes could be thought of as a kind of "code." Try developing your code language with your best friends.
 
#Determine the goal of your code. Knowing the purpose of your code will prevent unnecessary work. If your goal is to save time, you might only need a few specific code words. If you're trying to encode detailed messages, you may need to develop a code book that is more like a dictionary.
 
#Determine the goal of your code. Knowing the purpose of your code will prevent unnecessary work. If your goal is to save time, you might only need a few specific code words. If you're trying to encode detailed messages, you may need to develop a code book that is more like a dictionary.
 
#*Select common phrases that occur in the messages you want to encode. These are prime targets to be condensed in a code word.
 
#*Select common phrases that occur in the messages you want to encode. These are prime targets to be condensed in a code word.
#*Codes can be further complicated by using several different codes in rotation or combination. However, the more codes used, the more code books necessary for decoding.<ref>http://www.unmuseum.org/cipher.htm</ref>
+
#*Codes can be further complicated by using several different codes in rotation or combination. However, the more codes used, the more code books necessary for decoding.<ref name="rf16940" />
 
#Develop your code book. Condense common phrases, like "Reading you loud and clear," to something like "Roy." For every conceivable word in your encoded messages and common phrases as well, designate alternative code words.
 
#Develop your code book. Condense common phrases, like "Reading you loud and clear," to something like "Roy." For every conceivable word in your encoded messages and common phrases as well, designate alternative code words.
 
#*Sometimes, partial code can obscure a message sufficiently. For example, if "walk" means "tango" and "museum" means "restaurant" and the previously used code word "Roy" holds its value,
 
#*Sometimes, partial code can obscure a message sufficiently. For example, if "walk" means "tango" and "museum" means "restaurant" and the previously used code word "Roy" holds its value,
 
#**''Message:'' About yesterday. I wanted to say, <u>Roy</u>. I'll <u>tango</u> to the <u>restaurant</u> as planned. Over and out.
 
#**''Message:'' About yesterday. I wanted to say, <u>Roy</u>. I'll <u>tango</u> to the <u>restaurant</u> as planned. Over and out.
#**''Meaning:'' About yesterday. I wanted to say, <u>reading you loud and clear</u>. I'll <u>walk</u> to the <u>museum</u> as planned. Over and out.<ref>https://www.dpmms.cam.ac.uk/~tkc/CodesandCryptography/CodesandCryptography.pdf</ref>
+
#**''Meaning:'' About yesterday. I wanted to say, <u>reading you loud and clear</u>. I'll <u>walk</u> to the <u>museum</u> as planned. Over and out.<ref name="rf16944">https://www.dpmms.cam.ac.uk/~tkc/CodesandCryptography/CodesandCryptography.pdf</ref>
 
#Apply your code book to messages. Use the code words in your code book to encode messages. You may find that you can save yourself time by leaving nouns (like names and pronouns like I, me, she) as plain text. However, this decision depends purely on your situation.
 
#Apply your code book to messages. Use the code words in your code book to encode messages. You may find that you can save yourself time by leaving nouns (like names and pronouns like I, me, she) as plain text. However, this decision depends purely on your situation.
 
#*Two-part codes apply two different code books to encode or decode a message. These are much stronger than one-part codes.
 
#*Two-part codes apply two different code books to encode or decode a message. These are much stronger than one-part codes.
#Use a key to encode your message, alternately. A key message, group of words, letters, symbols, or a combination of these can be used to encode your message.<ref>http://www.nationalarchives.gov.uk/spies/glossary/default.htm#codes</ref> The recipient of your message will also need this key phrase or key of letters/symbols to decode the message.<ref>http://www.nationalarchives.gov.uk/spies/ciphers/</ref>
+
#Use a key to encode your message, alternately. A key message, group of words, letters, symbols, or a combination of these can be used to encode your message.<ref name="rf16945">http://www.nationalarchives.gov.uk/spies/glossary/default.htm#codes</ref> The recipient of your message will also need this key phrase or key of letters/symbols to decode the message.<ref name="rf16946">http://www.nationalarchives.gov.uk/spies/ciphers/</ref>
 
#*For example, with the key word "SECRET," each letter of your message would convert to the number of letters between it and the corresponding letter of the key word. As in,
 
#*For example, with the key word "SECRET," each letter of your message would convert to the number of letters between it and the corresponding letter of the key word. As in,
 
#**''Message:'' Hello
 
#**''Message:'' Hello
 
#**''Encoding:''<br>/H/ is '''11''' letters away from the key /S/<br>/e/ is the same ('''zero''') as the key /E/<br>/l/ is '''9''' letters away from the key /C/<br>''And so on...''
 
#**''Encoding:''<br>/H/ is '''11''' letters away from the key /S/<br>/e/ is the same ('''zero''') as the key /E/<br>/l/ is '''9''' letters away from the key /C/<br>''And so on...''
 
#**''Coded Message:'' 11; 0 ; 9 ; 6 ; 10
 
#**''Coded Message:'' 11; 0 ; 9 ; 6 ; 10
#Decode messages. As you receive coded messages, you'll have to make use of your code book or key word/phrase to make sense of them. This may be difficult at first, but will become more intuitive as you become more familiar with the code.<ref>http://www.unmuseum.org/cipher.htm</ref>
+
#Decode messages. As you receive coded messages, you'll have to make use of your code book or key word/phrase to make sense of them. This may be difficult at first, but will become more intuitive as you become more familiar with the code.<ref name="rf16940" />
 
#*To strengthen you encoding ability, you may want to invite your friends to join an amateur code making group. Pass messages to improve your skills.
 
#*To strengthen you encoding ability, you may want to invite your friends to join an amateur code making group. Pass messages to improve your skills.
 
===Learning Common Codes===
 
===Learning Common Codes===
#Employ the code used by Mary, Queen of Scots. While trying to send messages during a time of political turmoil, Mary, Queen of Scots, used symbols as a substitute code for English letters and common words.<ref>http://io9.gizmodo.com/check-out-the-cipher-from-an-assassination-attempt-on-q-1567478070</ref> Some features of Mary's code you might find useful for your own crypto-education include:
+
#Employ the code used by Mary, Queen of Scots. While trying to send messages during a time of political turmoil, Mary, Queen of Scots, used symbols as a substitute code for English letters and common words.<ref name="rf16947">http://io9.gizmodo.com/check-out-the-cipher-from-an-assassination-attempt-on-q-1567478070</ref> Some features of Mary's code you might find useful for your own crypto-education include:
 
#*The use of simple shapes for high frequency letters, like Mary's use of a circle for the letter /A/. This saves time while encoding.
 
#*The use of simple shapes for high frequency letters, like Mary's use of a circle for the letter /A/. This saves time while encoding.
 
#*Common symbols used as part of the new code language, like Mary's use of "8" as code for the letter "Y." These can confuse code breakers who might interpret this as a number and not a code symbol.
 
#*Common symbols used as part of the new code language, like Mary's use of "8" as code for the letter "Y." These can confuse code breakers who might interpret this as a number and not a code symbol.
#*Unique symbols for common words. In Mary's day, "pray" and "bearer" received unique symbols, but these were more common then than they are today. Still, using symbols for frequent words and phrases saves time and adds complexity.<ref>https://asecuritysite.com/coding/mary</ref>
+
#*Unique symbols for common words. In Mary's day, "pray" and "bearer" received unique symbols, but these were more common then than they are today. Still, using symbols for frequent words and phrases saves time and adds complexity.<ref name="rf16948">https://asecuritysite.com/coding/mary</ref>
#Use code phrases similar to military alerts. Code phrases can collapse a lot of meaning into a single phrase. Even many kinds of military alert, like the DEFCON system, are simply well-known codes for a state of defense readiness.<ref>http://encyclopedia.thefreedictionary.com/DEFCON</ref> Come up with suitable code words/phrases in your everyday life.
+
#Use code phrases similar to military alerts. Code phrases can collapse a lot of meaning into a single phrase. Even many kinds of military alert, like the DEFCON system, are simply well-known codes for a state of defense readiness.<ref name="rf16949">http://encyclopedia.thefreedictionary.com/DEFCON</ref> Come up with suitable code words/phrases in your everyday life.
 
#*For example, instead of saying "I've got to run to my locker" among your friends, you might use the code word "Sloppy."
 
#*For example, instead of saying "I've got to run to my locker" among your friends, you might use the code word "Sloppy."
 
#*To let your friends know that the person you want to date has entered the room, you might say the code phrase, "My cousin Bruce likes hockey, too."
 
#*To let your friends know that the person you want to date has entered the room, you might say the code phrase, "My cousin Bruce likes hockey, too."
Line 54: Line 54:
 
#**''Encoded Message:'' 224.10.1 ; 187.15.1 ; 163.1.7 ; 309.4.4
 
#**''Encoded Message:'' 224.10.1 ; 187.15.1 ; 163.1.7 ; 309.4.4
 
#**''Decoded Message:'' I'm hiding my words.
 
#**''Decoded Message:'' I'm hiding my words.
#*Different editions of books might use different page numbers. To ensure the right book is used as a key, include publication information, like edition, year published, and so on with your book key.<ref>http://www.topspysecrets.com/book-cipher.html</ref>
+
#*Different editions of books might use different page numbers. To ensure the right book is used as a key, include publication information, like edition, year published, and so on with your book key.<ref name="rf16950">http://www.topspysecrets.com/book-cipher.html</ref>
 
===Deciphering Ciphers===
 
===Deciphering Ciphers===
#Determine the suitability of using a cipher. A cipher uses an algorithm, which is like a process or transformation that is applied to a message consistently. This means that anyone who knows the cipher can translate it.<ref>http://www.unmuseum.org/cipher.htm</ref>
+
#Determine the suitability of using a cipher. A cipher uses an algorithm, which is like a process or transformation that is applied to a message consistently. This means that anyone who knows the cipher can translate it.<ref name="rf16940" />
 
#*Complex ciphers can puzzle even trained cryptanalysts. Sometimes the math behind complex ciphers can prove a suitable defense for hiding everyday messages.
 
#*Complex ciphers can puzzle even trained cryptanalysts. Sometimes the math behind complex ciphers can prove a suitable defense for hiding everyday messages.
#*Many cryptographers add a key, like the date, to strengthen ciphers. This key adjusts the output values by the corresponding number of the day of the month (on the first, all output values would be changed by one).<ref>https://www.khanacademy.org/computing/computer-science/cryptography/ciphers/a/ciphers-vs-codes</ref>
+
#*Many cryptographers add a key, like the date, to strengthen ciphers. This key adjusts the output values by the corresponding number of the day of the month (on the first, all output values would be changed by one).<ref name="rf16939" />
#Invent an algorithm to apply to messages. One of the simplest ciphers you can apply is the ROT1 Cipher (sometimes called Caesar Cipher). This name simply means you should rotate a single letter forward in the alphabet for each letter of your message.<ref>http://rumkin.com/tools/cipher/caesar.php</ref>
+
#Invent an algorithm to apply to messages. One of the simplest ciphers you can apply is the ROT1 Cipher (sometimes called Caesar Cipher). This name simply means you should rotate a single letter forward in the alphabet for each letter of your message.<ref name="rf16951">http://rumkin.com/tools/cipher/caesar.php</ref>
 
#*''ROT1 Message:'' Hello
 
#*''ROT1 Message:'' Hello
 
#*''ROT1 Enciphered:'' i ; f ; m ; m ; p
 
#*''ROT1 Enciphered:'' i ; f ; m ; m ; p
Line 69: Line 69:
 
#**''1st Deciphered Message:'' 7 ; 2 ; 3 ; 6 ; 3
 
#**''1st Deciphered Message:'' 7 ; 2 ; 3 ; 6 ; 3
 
#**''Book Key'': A_girl (spaces aren't counted)<br>/H/ is '''7''' letters away from /A/<br>/e/ is '''2''' letters away from /g/<br>/l/ is '''3''' spaces away from /i/<br>''And so on...''
 
#**''Book Key'': A_girl (spaces aren't counted)<br>/H/ is '''7''' letters away from /A/<br>/e/ is '''2''' letters away from /g/<br>/l/ is '''3''' spaces away from /i/<br>''And so on...''
#**''Key Adjusted Message:'' Hello<ref>http://www.unmuseum.org/cipher.htm</ref>
+
#**''Key Adjusted Message:'' Hello<ref name="rf16940" />
 
#Decipher messages. When you become experienced reading your cipher it should become second nature, or at least easier. As the application of these processes (algorithms) is consistent, habit will help you notice trends and gain intuition when working with this kind of cryptographic system.
 
#Decipher messages. When you become experienced reading your cipher it should become second nature, or at least easier. As the application of these processes (algorithms) is consistent, habit will help you notice trends and gain intuition when working with this kind of cryptographic system.
#*Amateur cryptography clubs are popular online. Many of these are free and offer primers in the basics of modern ciphering.<ref>https://www.iacr.org/</ref>
+
#*Amateur cryptography clubs are popular online. Many of these are free and offer primers in the basics of modern ciphering.<ref name="rf16952">https://www.iacr.org/</ref>
 
===Grasping Standard Ciphers===
 
===Grasping Standard Ciphers===
 
#Master [[Learn Morse Code|Morse Code]]. Regardless of its name, Morse Code is a cipher. Dots and dashes represent long and short electrical signals which, in turn, represent the letters of the alphabet. This enabled old-time electrical communication (telegraphs). Common letters in Morse, represented as long ( _ ) and short (.) signals, include:
 
#Master [[Learn Morse Code|Morse Code]]. Regardless of its name, Morse Code is a cipher. Dots and dashes represent long and short electrical signals which, in turn, represent the letters of the alphabet. This enabled old-time electrical communication (telegraphs). Common letters in Morse, represented as long ( _ ) and short (.) signals, include:
 
#*R ; S ; T ; L : ._. ; _.. ; _ ; ._..  
 
#*R ; S ; T ; L : ._. ; _.. ; _ ; ._..  
#*A ; E ; O : ._ ; . ; _ _ _<ref>http://www.learnmorsecode.com/</ref>
+
#*A ; E ; O : ._ ; . ; _ _ _<ref name="rf16953">http://www.learnmorsecode.com/</ref>
#Make use of transposition ciphers. Many greats in history, like the genius Leonardo da Vinci, have written out messages as they would look reflected in a mirror. Because of this, enciphering in this fashion is often called "mirror writing." These kinds of ciphers can be difficult at first, but generally become second nature quickly.<ref>https://www.mos.org/leonardo/activities/mirror-writing</ref>
+
#Make use of transposition ciphers. Many greats in history, like the genius Leonardo da Vinci, have written out messages as they would look reflected in a mirror. Because of this, enciphering in this fashion is often called "mirror writing." These kinds of ciphers can be difficult at first, but generally become second nature quickly.<ref name="rf16954">https://www.mos.org/leonardo/activities/mirror-writing</ref>
#*Transposition ciphers generally treat messages or the formation of letters visually. The image of the message is transformed to hide its meaning.<ref>http://listverse.com/2012/03/13/10-codes-and-ciphers/</ref>
+
#*Transposition ciphers generally treat messages or the formation of letters visually. The image of the message is transformed to hide its meaning.<ref name="rf16955">http://listverse.com/2012/03/13/10-codes-and-ciphers/</ref>
 
#Convert messages to [[Write Capital and Lowercase Letters in Binary|binary]]. Binary is the language of 1's and 0's used by computers. Combinations of these 1's and 0's can be enciphered and then deciphered with a binary key, or by calculating the values represented by the 1's and 0's for each letter communicated in a message.
 
#Convert messages to [[Write Capital and Lowercase Letters in Binary|binary]]. Binary is the language of 1's and 0's used by computers. Combinations of these 1's and 0's can be enciphered and then deciphered with a binary key, or by calculating the values represented by the 1's and 0's for each letter communicated in a message.
#*The name "Matt" would encipher to binary as: 01001101 ; 01000001 ; 01010100 ; 01010100.<ref>https://www.sciencefriday.com/educational-resources/write-your-name-in-binary-code/</ref>
+
#*The name "Matt" would encipher to binary as: 01001101 ; 01000001 ; 01010100 ; 01010100.<ref name="rf16956">https://www.sciencefriday.com/educational-resources/write-your-name-in-binary-code/</ref>
  
 
== Tips ==
 
== Tips ==