home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / lambda / soundpot / p / scrmbl21.lbr / SCRAMBLE.MZG / SCRAMBLE.MSG
Encoding:
Text File  |  1993-10-25  |  3.1 KB  |  100 lines

  1.  
  2. SCRAMBL.MS╟á consist≤á oµ SCRAMBLE.DO├ plu≤ thσ initia∞á comment≤ 
  3.              section of SCRAMBLE.ASM (Version 2.1).
  4.  
  5.                            J.E. CROWELL
  6.  
  7.  
  8.  
  9. SCRAMBLE.DOC:
  10.  
  11. SCRAMBLE is a command used to encode a CP/M file.
  12.  
  13. The format of the command is:
  14.     SCRAMBLE filename.type password
  15. where "password" is an 8 character password made of characters
  16. perissible in a file name (i.e. no ".", etc).  To obtain a good
  17. "initial seed" for the scrambling process, no character in the
  18. password may appear more than twice.
  19.  
  20. The requested file is scrambled, and re-written in place.
  21. To un-scramble the file, the IDENTICAL command is issued,
  22. i.e. SCRAMBLE filename.type password.  This is because
  23. SCRAMBLE does an "exclusive-or" type modification to the file,
  24. and doing two identical exclusive-or's to data result
  25. in the same data being retuned. 
  26.  
  27. I feel a scrambled file is quite secure.  Given that a file
  28. was scrambled and the password forgotten, I know of no way to
  29. determine what the original file was.  Even a file which
  30. is all binary-0's, is sufficiently scrambled to defy finding
  31. out what the password or original data was.  ...But I assume
  32. no responsibility for the "security" of files scrambled
  33. with SCRAMBLE as I am not a "student of cryptology".
  34.  
  35. Note also, that if an attempt is made to unscramble a scrambled
  36. file, using the WRONG password, then the file is technically
  37. "double scrambled" and SCRAMBLE would then have to be executed
  38. TWICE, once with the original password, and once with the
  39. erroniously-used password.  Because of the exclusive or-ing
  40. process, either password may be used either time.
  41.  
  42. 03/11/79 Ward Christensen
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56. è
  57. SCRAMBLE.ASM: 
  58.  
  59.  
  60. 03/11/79 Ward Christensen
  61. ;         SCRAMBLE.ASM ver 2.1
  62. ;
  63. ;SCRAMBLE is a program to scramble CP/M files using an 8 byte
  64. ;password.
  65. ;
  66. ;03/14/79 Originally written by Ward Christensen
  67. ;
  68. ;07/13/81 Moved stack init to beginning so default stack not
  69. ;      used.     Added fix to write routine for proper
  70. ;      operation under CP/M 2.x.  Expanded Macros so program
  71. ;      may be assembled with ASM.  By Keith Petersen, W8SDZ
  72. ;
  73. ;12/30/82 Removed loop called MIXUP and MVI H,0 just before
  74. ;      it.  Comment was "Scramble awhile to mix up the
  75. ;      seed".  Loop occurred before the password was moved
  76. ;      into location, so loop had no effect on "seed".
  77. ;      Added CALL ERXIT in FINISH.  If an error had
  78. ;      occurred program would have crashed on the error
  79. ;      message itself.  Added more comments around pseudo-
  80. ;      random number generator to better understand the
  81. ;      coding.  By Bob Hageman
  82. ;
  83. MONTH    EQU    12    ;LAST..
  84. DAY    EQU    30    ;..MODIFICATION..
  85. YEAR    EQU    82    ;..DATE
  86. ;
  87. ;Scrambling is done in place, i.e. the file is modified on top
  88. ;of itself.  The same password used to scramble the file is
  89. ;used to unscramble it, using the exact same command.  This is
  90. ;because the scrambling code is exclusive-ORed with the data
  91. ;file, and two same exclusive ORs result in the original value
  92. ;being returned.
  93. ;
  94. ;Command format:
  95. ;
  96. ;    SCRAMBLE filename.type PASSWORD
  97. ;
  98. ;Where PASSWORD is any 8 character string which
  99. ;is allowable as a file name (i.e. no '.', etc).
  100. ;
  101.