PGP Shell Version 0.6 April 1994 by Randy Hoekstra Copyright (c) 1994 Randy Hoekstra PGP Shell is a simple Atari GEM interface for Philip Zimmermann's Pretty Good Privacy (PGP) public-key encryption software. PGP is available for many different computer platforms with a command line interface requiring the memorization of command codes and syntax. On the Atari ST/TT/Falcon computers it has been compiled into a TTP type program. It seems only fitting that there should be a better user interface on a computer line that offers a Graphical User Interface built-in to the system. For more information on PGP and public-key encryption, refer to the documentation included in the distribution package of PGP. This project began as a request from Morgan Shannon for someone to make his life easier by providing a simpler interface for PGP. Although the Atari market is currently on the decline and there is little monetary incentive to spend time on projects like this, I will continue to develop this and other programs for the Atari platform as long as I know it is making life easier for even a few users. I appreciate the encouragement, ideas, suggestions, bug reports, etc. given by Morgan and others like him and hope that you would also let me know your suggestions for improving the program. Any monetary support you can offer by sending in a shareware contribution will also be greatly appreciated. Version 0.6 is a result of input from Travis Guy, who was one of the few who bothered to report the bugs and make suggestions for improvements (and even helped with the code). Thanks to Travis for taking the time to help me make this version a bit cleaner and more user friendly. Setting Up ========== PGPSHELL.PRG and PGPSHELL.RSC should be located in the same directory and ideally they should be in the same directory with PGP.TTP and it's support files. If you want to put the shell program in a different location, the first time PGPSHELL.PRG is run it will ask you to locate PGP.TTP. You will then need to save the configuration so PGPSHELL.PRG will know where to locate PGP.TTP the next time it is run. If you have been using PGP.TTP already, then you do not need to change anything in your current set-up. You should be able to run PGPSHELL.PRG and very easily make use of it's simple GEM interface to accomplish most of what you have been doing from the command line. Not all commands are currently implemented, but hopefully the most used ones are there and I am working on the rest. If you are just starting out with PGP, there is a menu item in PGPSHELL.PRG that will help you get your key files set up. In the "File" menu the first item is "Generate Keys...". Selecting this item will take you to a screen that will explain a bit about generating you public and private key pairs and also introduce you to the two other menu items that make up the heart of PGP Shell. Once you have generated the key pair, you are ready to begin encrypting and decrypting private e-mail to/from other users of PGP on any computer platform. Using PGP Shell =============== The following describes the menu items available in PGP Shell. PGPShell -------- About PGPShell...- This, of course, is the standard credits ----------------- dialog which shows the current version of the program and copyright information. When you are not interacting with one of PGP Shells dialogs, your other accessories will be available for use under the "PGPShell" menu. File ---- Generate Keys...- This item will bring up a simple dialog which ---------------- will allow you to generate your private and public key pairs if you have not been previously using PGP. Select "EXECUTE" to call PGP.TTP and cause it to generate your key pair. You will be prompted for additional information required to generate the keys. When PGP.TTP has finished its work, you will be prompted to press a key or mouse button to return to the shell. Encrypt/Decrypt...- This item will bring up a dialog allowing you ------------------ to encrypt text files and decrypt previously encrypted files. There are fields allowing the input of the textfile and ciphertext file names, a field for entering your userid, a field for entering other userids, and several selectable buttons for determining the commands to be used. Refer to the PGP documentation for details of what options should be used for encrypting and decrypting files. Note that you can double click on the file name fields to call up the standard file selector. You can also specify additional or alternative commands at the bottom of the commands window. Select "EXECUTE" to call PGP.TTP and pass the command parameters selected. Some error checking is done by PGP Shell to ensure that the appropriate parameters are filled in, but it is still possible to pass incorrect parameters from the "Other Commands" line. PGP Shell will either display an alert warning of incorrect parameters or PGP.TTP will display an error message. If PGP.TTP is called, regardless of correct parameters or not, when it has completed processing the commands,you will be prompted to press a key or mouse button to return to the shell. Once you have filled in the appropriate fields and selected the desired commands, you can select "KEEP" to retain the dialog information and leave the dialog. To save the settings as default values, select "Save Configuration" from the "File" menu. Key Management...- This item will bring up a dialog allowing you ----------------- to manipulate your key files. There are fields allowing the input of the keyring and keyfile names, a field for entering userids, and several selectable buttons for determining the commands to be used. Refer to the PGP documentation for details of what options should be used for key management. Note that you can click on the file name fields to call up the standard file selector. You can also specify additional or alternative commands at the bottom of the commands window. Select "EXECUTE" to call PGP.TTP and pass the command parameters selected. Some error checking is done by PGP Shell to ensure that the appropriate parameters are filled in, but it is still possible to pass incorrect parameters from the "Other Commands" line. PGP Shell will either display an alert warning of incorrect parameters or PGP.TTP will display an error message. If PGP.TTP is called, regardless of correct parameters or not, when it has completed processing the commands, you will be prompted to press a key or mouse button to return to the shell. Once you have filled in the appropriate fields and selected the desired commands, you can select "KEEP" to retain the dialog information and leave the dialog. To save the settings as default values, select "Save Configuration" from the "File" menu. Save Configuration - This item will save all settings in all ------------------ dialogs as the default settings. This will create a PGPSHELL.INF file containing these settings. The next time PGP Shell is run, the dialogs will be filled in with the default information. View Text File... - This item will call up the standard file ----------------- selector allowing you to pick an ascii file to view. The file will be loaded into memory and displayed in a standard GEM window. There is no checking to ensure characters in the file are within the normal ascii range, so it is possible to load non ascii files with undesirable effects. After the file viewing window has been opened, you can scroll through the file using the GEM scroll bar and size the window using the GEM window gadgets. To close the file viewing window, select the GEM close box in the upper left corner of the window. You can also scroll through the text file using key commands such as arrow keys for up and down and 'CLR/HOME' to go to top of page and 'SHIFT CLR/HOME' to go to bottom of page. Quit - Use this item to exit PGP Shell. All settings in all ---- dialog boxes will be lost unless a "Save Configuration" is selected first. Yet to Come =========== This program is still in the early stages of development. I plan to rework the key management dialog to include a scrolling window so that all the possible key management commands can be selected. I am also planning to allow for user defined "Quick Keys" which will be commands that can be executed by pressing a function key. Eventually I also hope to be able to read the users out of the keyring files and make it possible to point and click to select the user(s) for encrypting messages. If you have any suggestions for improving the program, I would be happy to consider them. Send any suggestions or bug reports to: Randy Hoekstra 3414 Norwood Circle Richardson, Texas 75082 E-mail to: R.HOEKSTRA1@genie.geis.com NOTE: All text in this program is located in the resource file for easy translation to another language. If you are interested in translating it to your native language and having it include in the distribution package, please contact me.