Annotation of pgp/readme.vms, revision 1.1.1.2

1.1.1.2 ! root        1: PGP/VMS Version 2.1
        !             2: -------------------
        !             3: 
        !             4: All rights to PGP are reserved by Phil Zimmermann. All contributed modules
        !             5: are also subject to the copyrights of their individual authors, on the same
        !             6: conditions. Certain algorithms used by PGP are subject to patent restrictions
        !             7: and this software as a whole may be subject to export control in certain
        !             8: countries. Read the PGP Guide for full copyright information and for details
        !             9: about export control.
        !            10: 
        !            11: These notes are intended for those people using and working with PGP under
        !            12: the VAX/VMS operating system. These are intended to supplement rather than
        !            13: replace the PGP guide. You should read and understand the guide, particularly
        !            14: the section about key management.
        !            15: 
        !            16: If you unzip under VMS using the public domain Zipper - you will probably have
        !            17: a problem with file characteristics. If you have the PD FILE utility, you can
        !            18: fix this by saying:
        !            19: 
        !            20: $ FILE/type=stream  *.*
        !            21: 
        !            22: Otherwise you can fix using either TPU or CONVERT/FDL.
        !            23:  
        !            24: PGP/VMS was written using the VAX C compiler, which you must have to
        !            25: compile it. If you wish to use another compiler, see the developers notes.
        !            26: PGP is provided with an MMS description file. To build using this file, go
        !            27: to the directory containing the uncompressed files and type the following:
        !            28: 
        !            29: $ MMS PGP.EXE
        !            30: 
        !            31: You may wish to delete the object files at this point, they are not needed
        !            32: unless you are working on the code. To build a version under the VAX/VMS
        !            33: debugger, define the DCL symbol PGP_DEBUG=1. The debugger version will be
        !            34: built without any optimisation and will be *significantly* slower.
        !            35: 
        !            36: If you do not have MMS you may execute the DCL supplied command procedure 
        !            37: VMSBUILD.COM to compile and link PGP.
        !            38: 
        !            39: Once you have built PGP, it should be placed somewhere that is protected
        !            40: against tampering. It is not impossible that someone may replace PGP.EXE 
        !            41: with a patched version designed to capture keys. You may wish to use the 
        !            42: CHECKSUM utility (CHECKSUM/IMAGE PGP.EXE) to control against modifications, 
        !            43: however CHECKSUM does not use very effective algorithms and may itself be 
        !            44: compromised.
        !            45: 
        !            46: You should then use PGP by defining it as an "external command" in your
        !            47: LOGIN.COM, or alternative the system wide login command procedure, SYLOGIN.
        !            48: This is done simply with the following line of DCL:
        !            49: 
        !            50: $ PGP:==$device:[directory]PGP
        !            51: 
        !            52: After executing this line (remember the dollar sign before the device name), 
        !            53: you should be able to display a help text by typing:
        !            54: 
        !            55: $ PGP
        !            56: 
        !            57: PGP will want to retain the keyrings and some other information. These are
        !            58: stored in the device and directory pointed to by the logical name PGPPATH.
        !            59: You should copy the files LANGUAGE.TXT and CONFIG.TXT to this directory.
        !            60: 
        !            61: Your secret keyring contains information that could be cryptographically
        !            62: analysed - it must be protected against world access. However, your secret key
        !            63: ring is encrypted so is protected against casual browsing. If anyone that you
        !            64: can not trust has privileged access to your system, your plaintext files are
        !            65: vulnerable and potentially, also your keyrings.
        !            66: 
        !            67: Note that keyrings should be directly transportable between VMS, MSDOS
        !            68: and other PGP implementations. Text files may not be portable because of the
        !            69: different text record representations across operating systems. If you wish
        !            70: to send a text file to a system other than VAX/VMS, you are recommended to
        !            71: use the 'canonical-form' switch '-t'.
        !            72: 
        !            73: If you wish to take binary files such as backup savesets between two systems
        !            74: running VMS, you can use the special flag 'i' with the encrypt function to
        !            75: preserve the file and record characteristics. When decrypting, PGP will read
        !            76: the 'i' flag and the type of the system that created the file. If both systems
        !            77: are VMS, the file will be correctly decrypted with the correct file
        !            78: characteristics. Note that whilst -ei is working, -esi is not (this is a bug).
        !            79: It is possible to sign a file encrypted with -ei on a seperate pass though.
        !            80: 
        !            81: Developers Notes
        !            82: ----------------
        !            83: 
        !            84: There are two key conditionals throughout the source for the VAX/VMS
        !            85: implementation:
        !            86: 
        !            87: VAXC -  Allows specific optimisations permitted by the VAX C compiler and
        !            88:         overcomes problems with the differences between VAX C and ANSII C.
        !            89: 
        !            90: VMS  -  This allows VMS specific file handling and some optimisations. It
        !            91:         should be noted that the primitives do not work with RISC/VMS until
        !            92:         someone has done some work on porting VAX.MAR.
        !            93: 
        !            94: There was also some preliminary work done on porting this to GNU C and indeed
        !            95: an earlier (developers) version ran under GNU C. The code affected is usually
        !            96: conditionalised with GCC. If someone wishes to complete this and (hopefully)
        !            97: integrate the inline assembler stuff used for moves and zero-fills, this
        !            98: would be very useful.
        !            99: 
        !           100: All optimizations were checked out using DEC's PCA, and this version appears
        !           101: to be optimal under VAX C.
        !           102: 
        !           103: As for cleaning up, there are verious areas which could be improved:
        !           104: 
        !           105: 1)      PGP's own erase on delete could be replaced by the standard VMS 
        !           106:         function so the file system does the work.
        !           107: 
        !           108: 2)      The random number generation uses a polling loop from the keyboard
        !           109:         which is neither nice nor necessary. A better approach would be to do
        !           110:         single character I/Os and fetch the system clock after each
        !           111:         character.
        !           112: 
        !           113: Contributing Authors
        !           114: --------------------
        !           115: 
        !           116: This port was originally performed by Hugh Kennedy with assistance from
        !           117: Mark Barsoum and others.
        !           118: 
        !           119: Support
        !           120: -------
        !           121: 
        !           122: This software is provided in the public domain and without charge other than
        !           123: for copying. For support issues concerning PGP and VAX/VMS, you are welcome 
        !           124: to contact me via Electronic Mail on Compuserve using ID 70042,710 and on the 
        !           125: Internet with [email protected]. This software is provided "as-is" and 
        !           126: any support given will be of an informal nature.
        !           127: 
        !           128: Hugh A.J. Kennedy, 17th November 1992

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.