home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1993 #2 / Image.iso / lan / pgpshe22.zip / PGPSHELL.DOC < prev    next >
Text File  |  1993-08-03  |  23KB  |  516 lines

  1.  
  2.  
  3.                           -= P G P S h e l l =-
  4.  
  5.  
  6.  
  7.              Official Menu-Driven Shell of the 1996 Olympics!
  8.  
  9.            Endorsed by the Saddam Hussein Downhill Ski Team, the
  10.             National Security Agency, and the Captain Midnight
  11.                      "Secret Decoder Ring" Fan Club
  12.  
  13.  
  14.                     (c) copyright by James Still 1993
  15.                   of the Hieroglyphic Voodoo Machine BBS 
  16.               in snowy, hippie-laden Boulder, Colorado, U.S.A. 
  17.                            All Rights Reserved
  18.  
  19.  
  20.          PGPShell v 2.2 is released as freeware in August of 1993
  21.           Please distribute this program to a local BBS near you!
  22.  
  23.           Pretty Good Privacy (PGP) is (c) copyrighted 1990-1992
  24.                  by Philip Zimmermann (way to go Phil...)
  25.  
  26.  
  27.  
  28.  
  29. WHAT'S NEW WITH VER 2.2?
  30. ------------------------------------------------------------------------
  31.  
  32. Two biggies: I added one more command to the main menu called "View 
  33. PUBRING.PGP" that will display the contents of your public key ring in a 
  34. scroll box.  PGP's three view commands (view signatures, fingerprints, 
  35. and standard key view) located in the Key Ring Menu are also supported
  36. in this way.  The other big change is the addition of a command-line
  37. option.  Instead of going through the main menu you can now type
  38. PGPSHELL <filename> to immediately begin decryting or encrypting the
  39. file.  Also:
  40.  
  41.      *  Ditched the headache-causing "beginner" routines that 
  42.         searched your AUTOEXEC.BAT and basically told you how
  43.         to set up PGP on your system.  
  44.           
  45. PGPShell now just takes a peek at your DOS environment to find PGP and 
  46. leaves it at that.  In other words, you must have installed PGP on your 
  47. system already and PGPShell won't walk you through it.  Sorry if this 
  48. seems to be "leaving behind" the newbies, but its difficult to program 
  49. PGPShell as "all things to all people" and still be an effective 
  50. encryption tool.  If you are brand spankin' new to this whole thing,  
  51. consult the PGP documentation for instructions on how to install PGP on
  52. your computer.
  53.  
  54.      *  Made the menu structure more intuitive, taking you to the
  55.         next logical option in the encryption/decryption process
  56.         depending on what you are doing.
  57.        
  58.      *  Cleaned up a lot of internal methods that were causing some
  59.         problems for some people in isolated circumstances and 
  60.         generally "idiot-proofed" the code.  (I should have just
  61.         said bug-fix huh?)  Optimization also trimmed the EXE down 
  62.         to a nice size too.
  63.  
  64.  
  65.  
  66.  
  67. WARRANTY
  68. -------------------------------------------------------------------------
  69.  
  70. Nope!  Use at your own risk.  James Still (and his evil twin Johannes 
  71. Kepler) disclaim all warranties, expressed or implied, including without
  72. limitation, the warranties of use and/or fitness of PGPShell for any
  73. purpose.  James Still assumes no liabilities for damages, direct or
  74. consequential, which may result from the use or misuse of PGPShell.
  75. PGPShell is FREEWARE which means you may use it without charge for as 
  76. long as you want to, even on Mars, and 53 miles west of Venus if you
  77. should so desire.  However, James Still retains all rights to the 
  78. copyright of PGPShell versions 1.0, 2.0, 2.1, and 2.2.  When they 
  79. make a movie of it someday with Sean Connery, I want to be there to say 
  80. "No, no, the menu structure didn't look like that at all!"
  81.  
  82.  
  83.  
  84.  
  85. QUICK START
  86. --------------------------------------------------------------------------
  87.  
  88. Create a C:\PGPSHELL directory and copy PGPSHELL.EXE into that directory.
  89. Run PGPSHELL either as a stand-alone by typing "PGPSHELL" or by adding an
  90. optional <filename> parameter for immediate processing of the filename, as 
  91. in "PGPSHELL plaintext.doc" or "PGPSHELL ciphertext.pgp".  
  92.  
  93.  
  94.  
  95.  
  96. INTRODUCTION
  97. --------------------------------------------------------------------------
  98.  
  99. PGPShell version 2.2 is a menu-driven front-end that makes Phil
  100. Zimmermann's excellent program Pretty Good Privacy (PGP) easier to manage
  101. and use.  Use it instead of PGP to make your encryption life easier!
  102. PGPShell uses a GUI interface and mouse driver, comprehensive Key Menu 
  103. for key management, and fully supports all PGP commands. 
  104.  
  105. For the public key encryption novice, PGPShell should be a perfect
  106. introduction to the exciting and wacky world of public-key encryption.
  107.  
  108.  
  109.  
  110. GETTING STARTED
  111. --------------------------------------------------------------------------
  112.  
  113. These title heads are starting to look like an old WordStar manual eh?  
  114. PGPShell is DOS-only which means that I don't know how to port this to 
  115. UNIX.  UNIX-guru's can write their own scripts in PERL and abhor the 
  116. heresy's of mouse drivers so I think its safe to assume that they won't 
  117. be joining us anyway.  Okay to get things set up, from the root directory
  118. (C:\) of DOS enter these commands:
  119.  
  120.                           md pgpshell
  121.                           cd pgpshell
  122.  
  123. Then copy the PGPSHELL.EXE file and any other related docs, into the
  124. PGPSHELL directory.
  125.  
  126. Type PGPSHELL at the DOS prompt to execute the program.  You must have
  127. PGP installed on your computer before PGPShell will be able to allow 
  128. you to encrypt or decrypt anything.  This is because PGPShell cannot 
  129. perform data encryption on its own, it merely "talks" to PGP and tells
  130. it what to do.
  131.  
  132. Optionally, you may add a filename to the command-line to skip the
  133. main menu to immediately decrypt (if the filename ends with *.pgp or 
  134. *.asc) or encrypt (any other filename such as *.txt or *.doc) the
  135. file.  The syntax for this is:
  136.  
  137.                      PGPSHELL <filename> 
  138.  
  139. where "filename" is any legal DOS file.  This is useful if you need  
  140. to decrypt or encrypt a previously written file quickly and wish to
  141. skip the GUI menu stuff.  "Streamlined PGPShell" if you will.
  142.  
  143.  
  144.  
  145. MAIN MENU
  146. --------------------------------------------------------------------------
  147.  
  148.  
  149. The main menu consists of these options in handling plain/ciphertexts:
  150.  
  151.  
  152.              ■  Compose a Plaintext for Encryption
  153.              ■  View a Plaintext on Screen
  154.              ■  Encrypt a Previously Written Plaintext
  155.              ■  Decrypt a Ciphertext
  156.              ■  View PUBRING.PGP       < --- [ New for ver 2.2 ]
  157.              ■  Archive a File
  158.              ■  Key Ring Menu
  159.  
  160.  
  161.     COMPOSE A PLAINTEXT
  162.     ~~~~~~~~~~~~~~~~~~~
  163.     To write a message for encryption to someone, choose this option.
  164.     If the PGPSHELL.CFG does not exist, or you've never used PGPShell
  165.     before, PGPShell will ask you to define a text editor for it to
  166.     use.  Choose EDIT.COM in your \DOS directory, if you don't have a
  167.     favorite text editor.
  168.  
  169.     PGPShell will ask you what file name you want to call your message
  170.     just before taking you into the text editor.  Any legal DOS filename
  171.     can be used (like "message.txt" or "luvlettr.doc").  After you finish
  172.     your message and save/exit, the encryption dialogue box will pop up.
  173.  
  174.  
  175.     VIEW A PLAINTEXT
  176.     ~~~~~~~~~~~~~~~~
  177.     PGPShell contains a built-in viewer to allow you to read your
  178.     decrypted messages, and will pop up automatically after you decrypt 
  179.     a file.  If the file is too large to load into the file viewer,   
  180.     you'll get an error message that says (surprise) "File too large
  181.     to load."  Unless you're running on less than 640K of memory however, 
  182.     you'll probably never see this error message.
  183.  
  184.  
  185.     ENCRYPT A PREVIOUSLY WRITTEN PLAINTEXT
  186.     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  187.     There are five options in an Encryption Dialogue box for you to choose
  188.     from when encrypting a plaintext file.  I'll list them and the PGP 
  189.     argument in parenthesis after:
  190.  
  191.         1) Radix-64 ASCII e-mail format                  (-a)
  192.         2) Sign the plaintext with your secret key       (-s)
  193.         3) Wipe or "shred" the original after encrytion  (-w)
  194.         4) Convert plaintext to canonical text           (-t)
  195.         5) Force recipient to view "on-screen" only      (-m)
  196.  
  197.     Consult the PGP documentation for more details on what these parameters
  198.     are used for when encrypting plaintexts from within PGPShell.
  199.  
  200.  
  201.     DECRYPT A CIPHERTEXT
  202.     ~~~~~~~~~~~~~~~~~~~~
  203.     As with the encryption options, there are five decryption options that
  204.     you may toggle in a Decryption Options dialogue box.  They are:
  205.  
  206.         1) Check the signature authority of the ciphertext  (-o)
  207.         2) Detach a signature certificate from a ciphertext (-b)
  208.         3) Leave the signature on the ciphertext intact     (-d)
  209.         4) View the ciphertext "on-screen" only             (-m)    
  210.         5) Keep the original filename on the ciphertext     (-p)
  211.  
  212.     Again, consult the PGP documentation for detailed help with these
  213.     arguments.  
  214.  
  215.     After successful decryption of a ciphertext.pgp file, PGPShell will
  216.     automatically open a file viewer and load the plaintext file into
  217.     it for you to view.  If you rename the output in PGP to something
  218.     other than the default however, PGPShell will not perform this task.
  219.     
  220.  
  221.     VIEW PUBRING.PGP
  222.     ~~~~~~~~~~~~~~~~
  223.  
  224.     This menu selection is new for version 2.2.  Use it to evoke PGP's
  225.     "key view" (-kv) argument.  PGPShell will read your pubring.pgp
  226.     key ring and display it in a scrollable box.  You'll see a smallish
  227.     box that looks like this: [■], on the upper left-hand corner of the 
  228.     scroll box.  If you have a mouse, just click on that box to close
  229.     the window and return to the main menu.  Or you may press the Escape
  230.     key to close it as well.
  231.     
  232.     
  233.     ARCHIVE A FILE
  234.     ~~~~~~~~~~~~~~
  235.     This is the -c argument in PGP ("c" meaning conventional encryption) 
  236.     and also the most misunderstood.  
  237.     
  238.     The difference between the -c arg and regular public-key encryption, 
  239.     is that this option is used for archiving a file for backup or security
  240.     purposes, not for private communication with other people.  Each time 
  241.     you run the -c arg, a new pass phrase is created just for that file.  
  242.     Common uses for this option are:  business' safekeeping proprietary 
  243.     code, John Q. Public encrypting tax records, hiding love letters from 
  244.     little brothers/sisters, etc.
  245.     
  246.     Its not a good idea to use your secret key's (secring.pgp) pass phrase 
  247.     just in case someone guesses your key ring pass phrase from one of
  248.     these conventionally encrypted files.  They could then intercept your
  249.     e-mail and (assuming they've gotten a copy of your secret key) decrypt
  250.     your messages without your knowledge.  
  251.     
  252.  
  253.     KEY RING MENU
  254.     ~~~~~~~~~~~~~
  255.     Choosing this menu option, will take you to the key ring management
  256.     submenu.  The key ring menu is broken down into three sections:
  257.  
  258.         1) Access Key Ring Submenu (copy, view, add, remove keys)
  259.  
  260.         2) Access Certification Submenu (certify, signatures, etc.)
  261.  
  262.         3) Access Create/Revoke Submenu (edit UserID, revoke keys, etc.)
  263.  
  264.     These three options have hotkeys assigned to them which are 1, 2, and
  265.     3, and are shown on the menu at the left side of the menu.  To leave  
  266.     the Key Ring Menu or any of its submenus, just slap the Escape key.
  267.  
  268.     Take a peek at the PGP documentation for more detailed information
  269.     on what the various -k (key arguments) are.  I could repeat them 
  270.     here, but the PGP documentation explains this better than I could.  
  271.     Play around with PGPShell for a while (If you are new to public-key
  272.     encryption, first create a unique key for yourself) and you'll get
  273.     the hang of it.
  274.     
  275.  
  276.  
  277. WINDOWS AND NETWORKS
  278. ----------------------------------------------------------------------------
  279.     
  280. You can run PGPShell in Windows by setting up a PIF file with low graphics, 
  281. run in the foreground, etc.  I would not have recommended doing this in   
  282. the past for the simple reason that PGP ver 2.2 had some serious bugs in
  283. it that tended to lock up your computer if too much DOS memory was being
  284. used.  With PGP ver 2.3 out now (get it if you don't already have it) this
  285. is not a problem and PGP and PGPShell runs smoothly in Windows.
  286.  
  287.  
  288.  
  289. PGPSHELL CONFIG FILE
  290. ----------------------------------------------------------------------------
  291.     
  292. PGPShell uses a configuration file called "PGPSHELL.CFG."  The sole purpose
  293. for this file is to store the location of the text editor that you use 
  294. when composing messages from within PGPShell.  This file will be created
  295. "on the fly", that is, if it is needed PGPShell will ask you to double-
  296. click on the executable file that you want to use for your text editor.
  297. If you don't have a favorite text editor, just go into your DOS directory
  298. and double-click on EDIT.COM.  (You can use the TAB, arrow, and ENTER 
  299. keys to navigate around the directory dialogue box if you don't have a
  300. mouse).
  301.  
  302. If you decide to change your mind and choose a different text editor in
  303. the future, either manually edit the PGPSHELL.CFG file, or delete it and
  304. the next time you run PGPShell, it will create another one.
  305.  
  306.  
  307.  
  308.  
  309. ADVANCED ENCRYPTION TECHNIQUES
  310. ---------------------------------------------------------------------------
  311.  
  312. The RAM Drive
  313. ~~~~~~~~~~~~~
  314.  
  315. Some people have grown up on Windows' smart drive and DOS Shells and have 
  316. forgotten what oldish things like RAM drives are all about.  In issues 
  317. such as privacy however, a RAM drive is an extra safety net to insure that 
  318. your secret key is not compromised in any way.  Here's how to set one up.
  319. Insert this line into your CONFIG.SYS file:
  320.  
  321.                 DEVICE=C:\DOS\RAMDRIVE.SYS 1024 /e
  322.  
  323. If you have a 386 or better computer, you could type "DEVICEhigh" instead
  324. of DEVICE to load the RAMDRIVE.SYS driver into high memory, but its only
  325. about 6K so its not crucial.  The 1024 block of memory (1 meg) is the size 
  326. of your RAM drive, and the switch "e" (/e) means you wish to use "extended" 
  327. memory for your virtual drive. 
  328.  
  329. Reboot your computer for these changes to take effect.  Your RAM drive
  330. will be given the next letter after your physical hard drive, i.e., if
  331. you have a single hard drive "C:" like most people, the RAM drive will
  332. be called "D".  Type "cd d:" at the DOS prompt and you are in your RAM
  333. drive.   
  334.  
  335. The advantage of creating and using a RAM drive for PGP is that the RAM
  336. drive "D" is not physical, but located only in memory.  That way when
  337. you shut down your computer, PGP disappears with it, and any trace of
  338. your secret key as well.  Advanced PGP users keep the critical PGP
  339. files (CONFIG.TXT, PGP.EXE, PUBRING.PGP, SECRING.PGP, etc.) on a floppy
  340. that they carry around with them and only use PGP in their virtual RAM
  341. drives.  When you want to enter a PGP session, just put the floppy in,
  342. and type "copy a:*.* d:" and your PGP files will be in the RAM drive.
  343.  
  344. You can do this and still keep a copy of PGPShell in a C:\PGPSHELL directory 
  345. to use PGP.  Before starting a PGP session, just type "set pgppath=d:" at 
  346. the DOS prompt, (or insert this command in your AUTOEXEC.BAT file if you use 
  347. PGP often) to tell DOS that you've put PGP in a RAM drive.  PGPShell will 
  348. look at the DOS environment and see that PGP is located in the D: drive, 
  349. and work on everything in there.  
  350.  
  351. Don't worry about loading PGPShell into your RAM drive; PGPShell itself is
  352. harmless and contains nothing that would compromise your secret key ring.
  353.  
  354. Don't forget to copy the contents of the RAM drive back onto your floppy
  355. after exiting PGPShell, especially if you've added to, deleted or otherwise
  356. modified your keys.  Once you shut off your computer anything located
  357. in RAM memory will be gone with it!
  358.  
  359. Consult those old dusty DOS manuals for more information on creating
  360. and using RAM drives.
  361.  
  362.  
  363.  
  364. The Hidden Directory
  365. ~~~~~~~~~~~~~~~~~~~~
  366.  
  367. The hidden directory is the oldest trick in the book (and many a bane 
  368. to system admins trying to clean up directory trees).  Although far from 
  369. foolproof, the hidden directory will slow down nosy co-workers who may 
  370. be snooping on your computer while you're at lunch.  
  371.  
  372. Let's say you're not paranoid enough to warrant the use of a RAM drive 
  373. but you still don't want anyone knowing you use PGP.  Here's the next  
  374. best thing:
  375.  
  376. Go into a mundane directory tree like \DOS or \WINDOWS\SYSTEMS where 
  377. no one ever looks and create a subdir called something harmless like 
  378. "SYS" or "BIN".  Copy all of your PGP stuff into that directory 
  379. (let's say C:\DOS\BIN for example.)  Then get back out to C:\DOS and 
  380. type:  "ATTRIB +H BIN" from the DOS prompt.  Using the DOS "Attribute" 
  381. command, you've hidden (+H) the BIN subdirectory from view.  Its still 
  382. there, but someone would have to know what they were doing to find it.
  383. (If you want to see it type "ATTRIB BIN" from the DOS prompt.)
  384.  
  385. When you want to use PGP, just type "set pgppath=c:\dos\bin" at a DOS
  386. prompt and you're set.  Here's a good batch file to use (which you 
  387. can hide as well) that can be located anywhere along the DOS path:
  388.  
  389.                         @echo off
  390.                         set pgppath=c:\dos\bin
  391.                         cd \pgpshell
  392.                         pgpshell
  393.  
  394. Call the batch file something dumb like "READ_DIR.BAT" or hide it by
  395. using ATTRIB like this:  ATTRIB +H READ_DIR.BAT so that the pgppath
  396. statement is not compromised easily.  Whenever you want to use PGP
  397. just type READ_DIR and everything will load for you.
  398.  
  399. This isn't 100%, as I stated before, but its good enough to fool most
  400. people since they won't mess around with something that they don't 
  401. even know is there.  If people or police are specifically looking for 
  402. PGP or encrypted messages on your system, then you're screwed anyway; 
  403. call a lawyer.
  404.  
  405.  
  406. The Paranoid Encryptor
  407. ~~~~~~~~~~~~~~~~~~~~~~
  408.  
  409. This one is courtesy of the handful of paranoid people that warned me to
  410. be careful because, as a result of PGPShell "they" will be out to get me. 
  411.  
  412. Nevertheless, there may be occasions when the enemy is very real, and you 
  413. cannot afford to have your encrypted messages cracked by those naughty 
  414. NSA Cray computers.  One way in which a computer is able to crack your 
  415. message is by applying a consistent mathematical algorithm (a brute force 
  416. attack) against your message until a pattern emerges that spells out words.  
  417. Your RANDSEED.BIN 24-byte file (Random Seed Binary) is where PGP draws its
  418. material from when it comes time to encrypt your message.  A computer is  
  419. not able to generate truly random acts on its own, thats why PGP needed you
  420. to monkey-type at random when you first created your personal keys.
  421.  
  422. If PGP can't find a RANDSEED.BIN file, it will create a seed file
  423. "on the fly" and ask you to bang away on your keyboard just before 
  424. encrypting.  By inserting a line at the end of the above READ_DIR batch 
  425. file like this:  "del c:\dos\bin\randseed.bin", you'll create a new seed 
  426. file each time you use PGP.  This will blow any pattern that could possibly 
  427. develop over time (during which the attacker is amassing your encrypted 
  428. messages and studying each of them for patterns).  PGP's own RANDSEED.BIN  
  429. file does a good job of providing enough material for encryption, but 
  430. this option is still a "safety net" of sorts for the truly paranoid.
  431.  
  432.  
  433.  
  434.  
  435. CLOSING COMMENTS
  436. ----------------------------------------------------------------------------
  437.  
  438. PGPShell should be easy to use.  If it isn't, then I failed somewhere.
  439. Many users want to use encryption but face a "mental block" when using
  440. PGP because of its intimidating UNIX command-line interface.  My hope is 
  441. that more people who want to get into encryption, will do so through 
  442. the friendlier PGPShell environment.  
  443.  
  444. Privacy shouldn't be the exception, it should be the norm; and it shouldn't 
  445. be a hassle or only for the UNIX gurus!
  446.  
  447. If you have any questions or comments, please feel free to e-mail me on the 
  448. Internet at <still@kailua.colorado.edu> or at the Voodoo Machine if 
  449. you're a BBSer.  If you e-mail me, please don't encrypt it (I know that 
  450. in the past I said "send me an encrypted e-mail for practice") but the 
  451. problem was *everybody* did just that.  I was swamped with ASCII code and 
  452. had to decrypt it all before knowing what was said.  Just jot it down
  453. normal-fashion, and I can reply to you more easily.
  454.  
  455. Also included in this file is KEPLER.ASC which is my public key.  Practice  
  456. with it if you're new to encryption.  Try adding it to your key ring, 
  457. deleting it, etc.  
  458.  
  459.  
  460.     
  461. REGISTRATION
  462. ----------------------------------------------------------------------------
  463.     
  464. Nope!  This is freeware.  Do me a favor and give a copy of PGPShell to at 
  465. least two of your co-workers, friends, enemies (why not?) and anyone else 
  466. who's interested in privacy.  Also take an interest in current events 
  467. like the Clinton Administration's plans to introduce "Clipper Chip" 
  468. technology into telephones.  If you don't know what the Clipper is all
  469. about, then you may be a victim of allowing others to dictate your privacy
  470. rights for you.  Europeans (and the few Russians) I spoke to seem to have 
  471. a clear grasp of what is at stake in the Information Revolution that is 
  472. coming.  Unfortunately most Americans lazily take privacy for granted, and 
  473. assume their government will do right by them.
  474.  
  475. I leave you with one of my favorite quotes:
  476.  
  477.      "Somewhere Else they assume that they have a right to exist,
  478.       and don't stop to consider that it may be a priviledge."
  479.  
  480.                                      - Whitley Streiber, "Warday"
  481.  
  482. Substitute "privacy" for "exist" and the metaphor becomes obvious.
  483.  
  484.     
  485. CREDITS
  486. ----------------------------------------------------------------------------
  487.  
  488. Thanks to Technojock Software, Inc. for their toolkit that I horked to throw 
  489. this together.  I freely admit I didn't register it, but if you want to 
  490. acquire an excellent and comprehensive toolkit (I think its only $50) give 
  491. 'em a call on Compu$erve at 74017,227, or write:  P.O. Box 820927, 
  492. Houston, TX  77282-0927.  Thanks to everyone who has written me with 
  493. valuable suggestions, I've looked at all of them and have incorporated 
  494. each and every one of them into this version for you. (NOT!)  
  495.  
  496. Thanks to Philip Zimmermann who made PGP possible in the first place.  Now
  497. solid public key encryption tools and secure communications are possible for 
  498. us normal folks!
  499.  
  500. Also thanks to Katherine, my wife, who puts up with my sense of humor and  
  501. shares my twisted sense of absurd aesthetics.
  502.         
  503. Bye!
  504.     
  505. -------------- EOF ---------------------------------------------------------
  506.  
  507.  
  508.     
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.