home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / busi / pcode153.zip / PC-CODE1.DOC < prev    next >
Text File  |  1984-06-14  |  9KB  |  226 lines

  1.  
  2.                      <<< PC-CODE1 >>>
  3.  
  4.  
  5.  
  6. To begin execution of PC-CODE1 or PC-CODE2, just type these names
  7. in PC DOS or type PC-MENU. For example:  "A> PC-MENU "
  8.  
  9.  
  10. PC-CODE1 is intended to encode/decode files only. It does this
  11. thru a process known as byte super-encipherment. This means that
  12. each character (or bit) of plain text (uncoded text) is both scrambled
  13. (transposed) as well as substituted for some random "other"
  14. character.
  15.  
  16. Keys may Optionally be Loaded or Saved to a FILE. The data format
  17. of such a file is 25 KEY numbers (between 1 & 2,147,483,646)
  18. each separated by A Carriage Return (on separate lines); And
  19. finally a 26th line of required Comment/Remark Information.
  20. An example of a key file is "SAMPLE.KEY". You can display
  21. this file by typing one of the following in DOS.
  22.  
  23.      A> TYPE SAMPLE.KEY
  24.  
  25.            <OR>
  26.  
  27.      A> COPY SAMPLE.KEY LPT1:
  28.  
  29.  
  30. A key file may be generated in PC DOS by the Following:
  31.  
  32.      A> COPY CON: MYKEY.KEY
  33.         2028841238
  34.         156091745
  35.         1551901393
  36.         590357944
  37.         ..........
  38.         ..........     [a total of 25 numbers]
  39.         ..........
  40.         109941534
  41.         2110010604
  42.         * This is my remarks 06/06/84 7:56 PM  PC-CODE1 V1.53
  43.         ^Z  {Ctrl-Z}  {ENTER}
  44.  
  45. If a key file is not used the following discussion applies:
  46. There are two levels of security "LOW" and "HIGH". If you
  47. elect the LOW level you will only have to enter 7 key
  48. (SEED) numbers or in the case of alphanumeric keys 7
  49. passwords of 5 or more characters. Actually, the longer
  50. the passwords - the better. An Ideal password length would
  51. seven passwords of 8 characters each.
  52.  
  53.  
  54. If you elect HIGH security be prepared to enter up to 25
  55. numbers between 1 and 2,147,483,646; or a minimum of 180
  56. characters of alphanumeric passwords. It is best, the first
  57. time thru to elect LOW security for testing purposes.
  58. Why so many characters are required in the HIGH ALPHA mode security
  59. is due to the additional insecurity of letters/words/phrases
  60. and that the Randomizing (hashing) routine requires 6 characters
  61. to generate a uniformly random Number (used internally). If the
  62. users' alphanumeric passwords were perfectfully random and
  63. all 256 possible characters could be typed at a 47 key keybroad,
  64. there would only be a need for 4 characters to generate this number.
  65.  
  66. The user must provide a series of keys (a minimum of 7) which
  67. may either be numeric (i.e. characters "0123456789") or
  68. alphanumeric which includes any character on your IBM PC
  69. keybroad. This includes alphabetics, numerics, and special
  70. symbols like  "!@#$%^&*()=+?:.<>[]~{}"  and so forth.
  71. Each of these keys should be chosen at random, and each
  72. should be different. For alphanumeric keys, the following
  73. is a good example:
  74.  
  75.  
  76.        GOOD KEY  ---> "Z$x!Un{y%C2&>"
  77.  
  78.        BAD KEY   ---> "ENGLISH WORDS"
  79.  
  80.  
  81. It is very poor to use anything that could be found in a
  82. dictionary or encyclopedia for a key.
  83.  
  84.  
  85. For Numeric keys, the best choices might numbers chosen
  86. randomly from a telephone book or a serial numbers on a
  87. Dollar bill. It is considered unprofessional to use numbers
  88. like - you birth date; social security number; or Military
  89. service numbers. Of course, for testing numbers like 1,2,3,4,
  90. 5,6,7 are great to test out the programs. Example of keys:
  91.  
  92.  
  93.        GOOD KEYS ---> 1095572    6712950   4007173   935506
  94.  
  95.        BAD KEYS  ---> 1          1         84        0
  96.  
  97.        INVALID   ---> 1,000,000  7.712355  -679811   6566710-
  98.  
  99.  
  100. Note that it is Invalid to include commas within key numbers.
  101. Also, note that numeric keys are positive Integers greater
  102. than zero. For best results, numeric keys should be 6 digits
  103. at least.
  104.  
  105.  
  106. Input and output must be to and from a valid IBM PC file.
  107. The same file may be used for both input and output for PC-CODE1
  108. only. This is however, not recommended. Input/output must NOT
  109. the Console or Printer. PC-CODE1 supports only File Input/Output.
  110.  
  111.  
  112. Never forget your keys, or lose them as it is impossible to
  113. decipher the outputed code. Also, never attempt to encode   
  114. and decode data with different version of these programs.
  115.  
  116.  
  117. PC-CODE1 will successfully encipher/decipher Binary files
  118. such as those with ".COM" and ".EXE" file extensions.
  119. PC-CODE1 works on files as sectors of 512 characters and
  120. generates binary codes using all 256 possible 8-bit characters
  121. (000 thru 255). The Encoded output of PC-CODE1 is not suitable
  122. for printing, since many of these binary characters will drive
  123. your printer bananas (hence only files in and out). PC-CODE1
  124. output files are rounded up to the next 512 byte sector
  125. boundary. This will not distort you data, since all end of file
  126. marks and carriage returns/line feeds are successfully also
  127. encoded and decoded. Padding of Nulls (hexadecimal 00) are
  128. sometimes added to the end of files for this rounding.
  129. On decoding a file, these padding characters usually are
  130. transparent due to the normal end-of-file character following
  131. them; hence they are not seen.
  132.  
  133.  
  134. If you use this routine for Communications via some serial Port
  135. it is best to change the the binary output code to hexadecimal
  136. characters (two hexs characters per binary character).
  137.  
  138.  
  139. The pseudo-random number generator used has a period of greater
  140. than 1.98E+233 or 1.98 times ten raised to the 233th power.
  141. By comparison the National Bureau of Standards DES algorithm
  142. has a period less than 7.21E+16 (or about 2 to the 56th power).
  143. The PC-CODE algorithm uses a MINIMUM of 775 bits (96 characters).
  144. It is likely that systems based on 8 or 16 characters are not
  145. very secure based on todays computer hardware/software technology.
  146. To evaluate PC-CODE would be to visualize a Safe with 25 dials -
  147. each with graduations between 1 and 2,147,483,646. A typical
  148. combination office safe might have 4 numbers each between 1 and 100.
  149.  
  150.  
  151. The Programs PC-CODE1 and PC-CODE2 are meant to be compiled
  152. by IBM's BASCOM BASIC Compiler and NOT for IBM's BASICA/BASIC.
  153. The Micro Ware Corporation also makes a 8087 Compiler called
  154. 87BASIC (or 87BASCOM) which will increase execution speeds
  155. many many times (maybe 11 times faster). In either case,
  156. when these programs are compiled the "O", "T", & "N" options
  157. should be specified. For example:    B> A:BASCOM/O/T/N
  158. PC-CODE1 source code contains no BASICA line numbers except
  159. when required by a GOTO or GOSUB statement.
  160.  
  161. The ".EXE" files provided have been compiled by the 8088 version
  162. or IBM BASCOM. Since, double precision floating point is used
  163. in the pseudo-random algorithm the 8087 compiler is a must for
  164. timely and rapid execution; especially for large files.
  165.  
  166.  
  167. With the introduction of version 1.53 of PC-CODE 1 & 2, an
  168. cryptologic audit trail has been added. What this means is that
  169. the programs checks itself statistically. It tabulates, what
  170. random characters it generates. It analyzes the combination of
  171. keys selected by the user. As far as character counts don't expect
  172. to get exactly the same number of counts for each character (0-255).
  173. However, as more and more characters are encoded, the counts should
  174. get closer to even. The program should however generate every possible
  175. character for moderate sized files. Random key selection can improve
  176. all of the above factors. The user may specify a file to store these
  177. statistics or print them (LPT1:). If a file is not specified and the
  178. user merely presses ENTER, then the default file generated will be
  179. called "PC-STAT1.LOG" (for PC-CODE1) or "PC-STAT2.LOG" (for PC-CODE2).
  180. A sample of each of these has been provided on the distribution
  181. diskette.   A> COPY PC-STAT1.LOG  LPT1:
  182.  
  183. Starting with version V1.53 PC-CODE1 can do bit scrambling as well
  184. character scrambling. Scrambling (transposition) is done in
  185. blocks. Character scrambling is done in blocks of 128 characters
  186. while bit scrambling is done in blocks of 1024 bits. In bit mode, trans-
  187. position is over a entire block of 1024 bits (128 bytes). Any character
  188. and any bit within any character may be exchanged with another
  189. bit anywhere in the 1024 bit block. The National Bureau of Standards
  190. DES algorithm deals with bit blocks of only 64 bits.
  191.  
  192. Bitwise transposition is very costly - but is also the most secure
  193. thing in existence. Character mode creates a new pattern or
  194. random "deal" every 4 blocks to economize on overhead. Bit mode
  195. does the same, but every 32 blocks of code. Proportional, this
  196. the same ratio for both methods. This does not compromise security
  197. because of the exponential nature of binary blocks.
  198.  
  199. A listing of all Documentation files may obtained by typing in PC-DOS
  200.  
  201.            A> DIR *.DOC
  202.  
  203. Also typing "PC-HELP" will use some usefull documentation tips.
  204.  
  205.            A> PC-HELP
  206.  
  207.  
  208. These programs have been copyrighted in the Public Domain and
  209. authored by:
  210.  
  211.  
  212.             Richard Nolen Colvard
  213.             1745 Winona Blvd, Apt #21
  214.             Los Angeles, Calif. 90027
  215.  
  216.  
  217.  The above material and PC-CODE software contains no material
  218.  relating to the National Security of the United States of
  219.  America as defined by the United States Code. However, distribution
  220.  to Foreign Nations or Agents is prohibited by the directives of
  221.  the National Security Agency. (NOT FOR EXPORT).
  222.  
  223.  Both the Author and/or Distributor assume no liability for
  224.  any lost of data or business as a result of usage of the
  225.  PC-CODE programs; which are Public Domain Freeware.
  226.