


oz-SOLUTION(6)    Public Obfuscutility SOLUTION    oz-SOLUTION(6)



NAME
     oz - Clues to how oz prints the string "the perl journal"

SYNOPSIS
     oz

DESCRIPTION
     oz prints the string "the perl journal".

  Clue
     This string is extracted from the temporary file ozp in  the
     current directory using the system utility /bin/cat.

  Clue
     This temporary file is created by  running  some  internally
     generated  data through the system utility uudecode.  Unfor-
     tunately, uudecode does not exist on all unixoid systems, so
     this  program  may fail for some users.  The implementor may
     include a uudecode emulator within future releases, if those
     releases   have   a   sufficiently   relaxed  implementation
     schedule.  Certainly there is enough room for such an emula-
     tor  since  the programmer did not use all the available one
     Kbyte of disk space and on top of that wrote some  NOP  code
     which could be replace with functional operations.

  Not A Clue
     But it was more fun to use uudecode.

  Clue
     The data put through uudecode is contained in the 5th column
     of  the program.  Most but not all the characters in the 5th
     column are used.  Which is probably true of all  5th  column
     movements,  since  such  movements  attract shady characters
     whose motives are not to be trusted.

  Clue
     The string "uudecode" is not obviously present in  the  pro-
     gram,   perhaps  mystifying  the  programmer  attempting  to
     reverse engineer this application.  If  one  regards  column
     two  of the program text and discards all but the upper case
     characters, one finds the string ETTCDBNCD.  If  you  incre-
     ment  each  character,  you  get FUUDECODE.  replace the "F"
     with a "|" pipe symbol and lowercase it all and you have the
     command pipe that is opened to process the data.

  Clue
     The strings "begin" and  "end"  required  for  putting  data
     through  uudecode were extracted from the first line of Perl
     code.

FILES
     ./ozp          Temporary file.



TPJ                  Last change: 28 Jul 98                     1






oz-SOLUTION(6)    Public Obfuscutility SOLUTION    oz-SOLUTION(6)



IDENTIFICATION
     Kenneth C. Rich, kenr@cc.rochester.edu
     Copyright 1998 University Computing Center,
     Box 270196, Taylor Hall, University of Rochester,
     Rochester, NY   14627

SEE ALSO
     uudecode (1)
     oz-ident (1)

BUGS
     Requires that the system utility uudecode be present in  the
     user's command path.

     Requires the system utility /bin/cat.

     oz must be able to write to the current directory.

     oz does not clean up its temporary file, ./ozp.




































TPJ                  Last change: 28 Jul 98                     2



