NAME

route - Create and manipulate a route cipher

SYNOPSIS

set cipherProc [cipher create route]

cipherProc configure ?options?
cipherProc cget option
cipherProc solve

DESCRIPTION

cipherProc configure ?options?
Configure the settings for the route cipher. Valid options are:

cipherProc configure -ciphertext string
cipherProc configure -ct string
Set the ciphertext for this cipher instance to string. Invalid letters or numbers in the ciphertext are silently discarded.

cipherProc configure -period n
Set the period for this cipher to n.

cipherProc configure -language language
This option is currently ignored for all cipher types. Set the current cipher language to language. If the cipher has a solve method then digram frequencies for this language are used to determine the best fit. If the language is not specified or not known then english is used.
cipherProc configure -width n
This is the same as setting the period for the cipher.

cipherProc configure -in n
Use method #n for writing the ciphertext into the block. There are 48 defined routes:
  1. row by row, left to right, top to bottom.
  2. alternating rows, top to bottom.
  3. column by column, top to bottom, left to right.
  4. alternating columns, left to right.
  5. diagonals, starting on the left and proceeding upward.
  6. diagonals, starting on the left and proceeding downward.
  7. diagonals, starting on the right and proceeding upward.
  8. diagonals, starting on the right and proceeding downward.
  9. diagonals, starting on the top and proceeding to the left.
  10. diagonals, starting on the top and proceeding to the right.
  11. diagonals, starting on the bottom and proceeding to the left.
  12. diagonals, starting on the bottom and proceeding to the right.
  13. alternate diagonals, starting on the left and proceeding upward.
  14. alternate diagonals, starting on the left and proceeding downward.
  15. alternate diagonals, starting on the right and proceeding upward.
  16. alternate diagonals, starting on the right and proceeding downward.
  17. alternate diagonals, starting on the top and proceeding to the left.
  18. alternate diagonals, starting on the top and proceeding to the right.
  19. alternate diagonals, starting on the bottom and proceeding to the left.
  20. alternate diagonals, starting on the bottom and proceeding to the right.
  21. clockwise spiral starting in top-left corner.
  22. counter-clockwise spiral starting in top-left corner.
  23. clockwise spiral starting in bottom-left corner.
  24. counter-clockwise spiral starting in bottom-left corner.
  25. clockwise spiral starting in top-right corner.
  26. counter-clockwise spiral starting in top-right corner.
  27. clockwise spiral starting in bottom-right corner.
  28. counter-clockwise spiral starting in bottom-right corner.
  29. clockwise spiral ending in top-left corner.
  30. counter-clockwise spiral ending in top-left corner.
  31. clockwise spiral ending in bottom-left corner.
  32. counter-clockwise spiral ending in bottom-left corner.
  33. clockwise spiral ending in top-right corner.
  34. counter-clockwise spiral ending in top-right corner.
  35. clockwise spiral ending in bottom-right corner.
  36. counter-clockwise spiral ending in bottom-right corner.
  37. Row by row starting in the top-right corner.
  38. Alternating rows starting in the top-right corner.
  39. Column by column starting in the top-right corner.
  40. Alternating columns starting in the top-right corner.
  41. Row by row starting in the bottom-left corner.
  42. Alternating rows starting in the bottom-left corner.
  43. Column by column starting in the bottom-left corner.
  44. Alternating columns starting in the bottom-left corner.
  45. Row by row starting in the bottom-right corner.
  46. Alternating rows starting in the bottom-right corner.
  47. Column by column starting in the bottom-right corner.
  48. Alternating columns starting in the bottom-right corner.

cipherProc configure -out n
Use method #n for reading the ciphertext from the block. There are 48 defined routes.

cipherProc cget option
Look up the value for a given option. Valid options are:

cipherProc cget -type
Returns the type of this cipher. In this case, route

cipherProc cget -ciphertext
cipherProc cget -ct
Return the ciphertext for this cipher.

cipherProc cget -plaintext
cipherProc cget -pt
Return the plaintext for this cipher based on the current key setting.

cipherProc cget -ptblock
undocumented feature

cipherProc cget -key
Returns the current key setting for this cipher. The result can be passed back to this cipher instance or another cipher with the cipherProc restore subcommand.

cipherProc cget -length
Returns the length of the ciphertext for this cipher. 0 is returned if the ciphertext has not been set.

cipherProc cget -period
Return the period for this cipher.

cipherProc cget -numroutes
Return the number of routes known by the route cipher type.

cipherProc cget -width
Return the width of the route block. This is the same as the period.

cipherProc cget -height
Return the height of the route block. This is the same as length / width.

cipherProc cget -language
Returns the name of the language used for this cipher.

cipherProc solve
Iterate through all 48*48 combinations of possible routes. The in/out route pair that produces the best digram frequency count is used as the solution.

Back to the Index
wart@kobold.org
Created on Wed Mar 31 08:18:25 PST 2004
SourceForge.net Logo