|
|
1.1 root 1: PGP/VMS Version 2.2
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.
79:
80: Special Notes For V2.2
81: ----------------------
82:
83: This version improves the keyboard handling. Specifically, it addresses
84: the CPU bound loop whilst reading terminal input and provides better prompt
85: and keyboard handling.
86:
87: Developers Notes
88: ----------------
89:
90: There are two key conditionals throughout the source for the VAX/VMS
91: implementation:
92:
93: VAXC - Allows specific optimisations permitted by the VAX C compiler and
94: overcomes problems with the differences between VAX C and ANSI C.
95:
96: VMS - This allows VMS specific file handling and some optimisations. It
97: should be noted that the primitives do not work with RISC/VMS until
98: someone has done some work on porting VAX.MAR.
99:
100: There was also some preliminary work done on porting this to GNU C and indeed
101: an earlier (developers) version ran under GNU C. The code affected is usually
102: conditionalised with GCC. If someone wishes to complete this and (hopefully)
103: integrate the inline assembler stuff used for moves and zero-fills, this
104: would be very useful.
105:
106: The MMS command procedure and VMSBUILD.COM build from sources in a directory
107: pointed to by the logical SRC and objects pointed to by OBJ. This makes life
108: a little easier as you can use a search list for the sources so you can keep
109: the distribution intect.
110:
111: All optimizations were checked out using DEC's PCA, and this version appears
112: to be optimal under VAX C.
113:
114: As for cleaning up, there are verious areas which could be improved:
115:
116: 1) PGP's own erase on delete could be replaced by the standard VMS
117: function so the file system does the work.
118:
119: Contributing Authors
120: --------------------
121:
122: This port was originally performed by Hugh Kennedy with assistance from
123: Mark Barsoum and others.
124:
125: Support
126: -------
127:
128: This software is provided in the public domain and without charge other than
129: for copying. For support issues concerning PGP and VAX/VMS, you are welcome
130: to contact me via Electronic Mail on Compuserve using ID 70042,710 and on the
131: Internet with [email protected]. This software is provided "as-is" and
132: any support given will be of an informal nature.
133:
134: Hugh A.J. Kennedy, 11th February 1992
135: Still valid for 2.2 release, Colin Plumb, 6 March 1993
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.