Mercurial > emacs
annotate man/pgg.texi @ 82405:907505b33af3
*** empty log message ***
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Thu, 16 Aug 2007 02:21:37 +0000 |
parents | 88224dc74061 |
children | 02b9a9aa5b0c |
rev | line source |
---|---|
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
1 \input texinfo @c -*-texinfo-*- |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
2 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
3 @setfilename ../info/pgg |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
4 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
5 @set VERSION 0.1 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
6 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
7 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
8 @copying |
69681
11b616eddda4
@copyright{}, no indentation in @copying{}
Karl Berry <karl@gnu.org>
parents:
68639
diff
changeset
|
9 This file describes PGG, an Emacs interface to various PGP implementations. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
10 |
75246
65fcbafd0ef6
Remove Ueno copyright based on copyright.list:
Glenn Morris <rgm@gnu.org>
parents:
74886
diff
changeset
|
11 Copyright @copyright{} 2001, 2003, 2004, 2005, 2006, 2007 Free Software |
65fcbafd0ef6
Remove Ueno copyright based on copyright.list:
Glenn Morris <rgm@gnu.org>
parents:
74886
diff
changeset
|
12 Foundation, Inc. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
13 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
14 @quotation |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
15 Permission is granted to copy, distribute and/or modify this document |
65555
69b3598a61c5
Update all manuals to specify GFDL version 1.2.
Romain Francoise <romain@orebokech.com>
parents:
64890
diff
changeset
|
16 under the terms of the GNU Free Documentation License, Version 1.2 or |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
17 any later version published by the Free Software Foundation; with no |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
18 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
19 Texts. A copy of the license is included in the section entitled ``GNU |
72101
c7e4f78b81a6
Move periods and commas inside quotes.
Richard M. Stallman <rms@gnu.org>
parents:
70245
diff
changeset
|
20 Free Documentation License.'' |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
21 @end quotation |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
22 @end copying |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
23 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
24 @dircategory Emacs |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
25 @direntry |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
26 * PGG: (pgg). Emacs interface to various PGP implementations. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
27 @end direntry |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
28 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
29 @settitle PGG @value{VERSION} |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
30 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
31 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
32 @titlepage |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
33 @title PGG |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
34 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
35 @author by Daiki Ueno |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
36 @page |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
37 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
38 @vskip 0pt plus 1filll |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
39 @insertcopying |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
40 @end titlepage |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
41 @page |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
42 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
43 @node Top |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
44 @top PGG |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
45 This manual describes PGG. PGG is an interface library between Emacs |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
46 and various tools for secure communication. PGG also provides a simple |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
47 user interface to encrypt, decrypt, sign, and verify MIME messages. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
48 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
49 @menu |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
50 * Overview:: What PGG is. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
51 * Prerequisites:: Complicated stuff you may have to do. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
52 * How to use:: Getting started quickly. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
53 * Architecture:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
54 * Parsing OpenPGP packets:: |
77235 | 55 * GNU Free Documentation License:: The license for this documentation. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
56 * Function Index:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
57 * Variable Index:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
58 @end menu |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
59 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
60 @node Overview |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
61 @chapter Overview |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
62 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
63 PGG is an interface library between Emacs and various tools for secure |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
64 communication. Even though Mailcrypt has similar feature, it does not |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
65 deal with detached PGP messages, normally used in PGP/MIME |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
66 infrastructure. This was the main reason why I wrote the new library. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
67 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
68 PGP/MIME is an application of MIME Object Security Services (RFC1848). |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
69 The standard is documented in RFC2015. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
70 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
71 @node Prerequisites |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
72 @chapter Prerequisites |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
73 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
74 PGG requires at least one implementation of privacy guard system. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
75 This document assumes that you have already obtained and installed them |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
76 and that you are familiar with its basic functions. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
77 |
74886
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
78 By default, PGG uses GnuPG. If you are new to such a system, I |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
79 recommend that you should look over the GNU Privacy Handbook (GPH) |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
80 which is available at @uref{http://www.gnupg.org/documentation/}. |
74712
00b7dd321d64
Added short note on gpg-agent to the introduction.
Chong Yidong <cyd@stupidchicken.com>
parents:
72101
diff
changeset
|
81 |
74886
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
82 When using GnuPG, we recommend the use of the @code{gpg-agent} |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
83 program, which is distributed with versions 2.0 and later of GnuPG. |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
84 This is a daemon to manage private keys independently from any |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
85 protocol, and provides the most secure way to input and cache your |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
86 passphrases (@pxref{Caching passphrase}). By default, PGG will |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
87 attempt to use @code{gpg-agent} if it is running. @xref{Invoking |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
88 GPG-AGENT,,,gnupg,Using the GNU Privacy Guard}. |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
89 |
a21caa8a2c18
(Caching passphrase): Default for pgg-gpg-use-agent changed to t.
Chong Yidong <cyd@stupidchicken.com>
parents:
74712
diff
changeset
|
90 PGG also supports Pretty Good Privacy version 2 or version 5. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
91 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
92 @node How to use |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
93 @chapter How to use |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
94 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
95 The toplevel interface of this library is quite simple, and only |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
96 intended to use with public-key cryptographic operation. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
97 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
98 To use PGG, evaluate following expression at the beginning of your |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
99 application program. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
100 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
101 @lisp |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
102 (require 'pgg) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
103 @end lisp |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
104 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
105 If you want to check existence of pgg.el at runtime, instead you can |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
106 list autoload setting for desired functions as follows. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
107 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
108 @lisp |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
109 (autoload 'pgg-encrypt-region "pgg" |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
110 "Encrypt the current region." t) |
66521
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
111 (autoload 'pgg-encrypt-symmetric-region "pgg" |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
112 "Encrypt the current region with symmetric algorithm." t) |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
113 (autoload 'pgg-decrypt-region "pgg" |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
114 "Decrypt the current region." t) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
115 (autoload 'pgg-sign-region "pgg" |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
116 "Sign the current region." t) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
117 (autoload 'pgg-verify-region "pgg" |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
118 "Verify the current region." t) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
119 (autoload 'pgg-insert-key "pgg" |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
120 "Insert the ASCII armored public key." t) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
121 (autoload 'pgg-snarf-keys-region "pgg" |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
122 "Import public keys in the current region." t) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
123 @end lisp |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
124 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
125 @menu |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
126 * User Commands:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
127 * Selecting an implementation:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
128 * Caching passphrase:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
129 * Default user identity:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
130 @end menu |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
131 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
132 @node User Commands |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
133 @section User Commands |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
134 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
135 At this time you can use some cryptographic commands. The behavior of |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
136 these commands relies on a fashion of invocation because they are also |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
137 intended to be used as library functions. In case you don't have the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
138 signer's public key, for example, the function @code{pgg-verify-region} |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
139 fails immediately, but if the function had been called interactively, it |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
140 would ask you to retrieve the signer's public key from the server. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
141 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
142 @deffn Command pgg-encrypt-region start end recipients &optional sign passphrase |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
143 Encrypt the current region between @var{start} and @var{end} for |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
144 @var{recipients}. When the function were called interactively, you |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
145 would be asked about the recipients. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
146 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
147 If encryption is successful, it replaces the current region contents (in |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
148 the accessible portion) with the resulting data. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
149 |
57243
c5e16264557d
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-575
Miles Bader <miles@gnu.org>
parents:
56927
diff
changeset
|
150 If optional argument @var{sign} is non-@code{nil}, the function is |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
151 request to do a combined sign and encrypt. This currently is |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
152 confirmed to work with GnuPG, but might not work with PGP or PGP5. |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
153 |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
154 If optional @var{passphrase} is @code{nil}, the passphrase will be |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
155 obtained from the passphrase cache or user. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
156 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
157 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
158 @deffn Command pgg-encrypt-symmetric-region &optional start end passphrase |
66521
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
159 Encrypt the current region between @var{start} and @var{end} using a |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
160 symmetric cipher. After invocation you are asked for a passphrase. |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
161 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
162 If optional @var{passphrase} is @code{nil}, the passphrase will be |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
163 obtained from the passphrase cache or user. |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
164 |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
165 symmetric-cipher encryption is currently only implemented for GnuPG. |
66521
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
166 @end deffn |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
167 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
168 @deffn Command pgg-decrypt-region start end &optional passphrase |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
169 Decrypt the current region between @var{start} and @var{end}. If |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
170 decryption is successful, it replaces the current region contents (in |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
171 the accessible portion) with the resulting data. |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
172 |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
173 If optional @var{passphrase} is @code{nil}, the passphrase will be |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
174 obtained from the passphrase cache or user. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
175 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
176 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
177 @deffn Command pgg-sign-region start end &optional cleartext passphrase |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
178 Make the signature from text between @var{start} and @var{end}. If the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
179 optional third argument @var{cleartext} is non-@code{nil}, or the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
180 function is called interactively, it does not create a detached |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
181 signature. In such a case, it replaces the current region contents (in |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
182 the accessible portion) with the resulting data. |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
183 |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
184 If optional @var{passphrase} is @code{nil}, the passphrase will be |
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
185 obtained from the passphrase cache or user. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
186 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
187 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
188 @deffn Command pgg-verify-region start end &optional signature fetch |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
189 Verify the current region between @var{start} and @var{end}. If the |
67418
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
190 optional third argument @var{signature} is non-@code{nil}, it is treated |
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
191 as the detached signature file of the current region. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
192 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
193 If the optional 4th argument @var{fetch} is non-@code{nil}, or the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
194 function is called interactively, we attempt to fetch the signer's |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
195 public key from the key server. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
196 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
197 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
198 @deffn Command pgg-insert-key |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
199 Retrieve the user's public key and insert it as ASCII-armored format. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
200 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
201 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
202 @deffn Command pgg-snarf-keys-region start end |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
203 Collect public keys in the current region between @var{start} and |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
204 @var{end}, and add them into the user's keyring. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
205 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
206 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
207 @node Selecting an implementation |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
208 @section Selecting an implementation |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
209 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
210 Since PGP has a long history and there are a number of PGP |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
211 implementations available today, the function which each one has differs |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
212 considerably. For example, if you are using GnuPG, you know you can |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
213 select cipher algorithm from 3DES, CAST5, BLOWFISH, and so on, but on |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
214 the other hand the version 2 of PGP only supports IDEA. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
215 |
67418
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
216 Which implementation is used is controlled by the @code{pgg-scheme} |
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
217 variable. If it is @code{nil} (the default), the value of the |
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
218 @code{pgg-default-scheme} variable will be used instead. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
219 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
220 @defvar pgg-scheme |
67418
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
221 Force specify the scheme of PGP implementation. The value can be set to |
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
222 @code{gpg}, @code{pgp}, and @code{pgp5}. The default is @code{nil}. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
223 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
224 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
225 @defvar pgg-default-scheme |
67418
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
226 The default scheme of PGP implementation. The value should be one of |
28264c86d408
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-668
Miles Bader <miles@gnu.org>
parents:
66700
diff
changeset
|
227 @code{gpg}, @code{pgp}, and @code{pgp5}. The default is @code{gpg}. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
228 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
229 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
230 @node Caching passphrase |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
231 @section Caching passphrase |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
232 |
76199
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
233 When using GnuPG (gpg) as the PGP scheme, we recommend using a program |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
234 called @code{gpg-agent} for entering and caching |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
235 passphrases@footnote{Actually, @code{gpg-agent} does not cache |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
236 passphrases but private keys. On the other hand, from a user's point |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
237 of view, this technical difference isn't visible.}. |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
238 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
239 @defvar pgg-gpg-use-agent |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
240 If non-@code{nil}, attempt to use @code{gpg-agent} whenever possible. |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
241 The default is @code{t}. If @code{gpg-agent} is not running, or GnuPG |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
242 is not the current PGP scheme, PGG's own passphrase-caching mechanism |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
243 is used (see below). |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
244 @end defvar |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
245 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
246 To use @code{gpg-agent} with PGG, you must first ensure that |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
247 @code{gpg-agent} is running. For example, if you are running in the X |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
248 Window System, you can do this by putting the following line in your |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
249 @file{.xsession} file: |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
250 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
251 @smallexample |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
252 eval "$(gpg-agent --daemon)" |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
253 @end smallexample |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
254 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
255 For more details on invoking @code{gpg-agent}, @xref{Invoking |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
256 GPG-AGENT,,,gnupg,Using the GNU Privacy Guard}. |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
257 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
258 Whenever you perform a PGG operation that requires a GnuPG passphrase, |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
259 GnuPG will contact @code{gpg-agent}, which prompts you for the |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
260 passphrase. Furthermore, @code{gpg-agent} ``caches'' the result, so |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
261 that subsequent uses will not require you to enter the passphrase |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
262 again. (This cache usually expires after a certain time has passed; |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
263 you can change this using the @code{--default-cache-ttl} option when |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
264 invoking @code{gpg-agent}.) |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
265 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
266 If you are running in a X Window System environment, @code{gpg-agent} |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
267 prompts for a passphrase by opening a graphical window. However, if |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
268 you are running Emacs on a text terminal, @code{gpg-agent} has trouble |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
269 receiving input from the terminal, since it is being sent to Emacs. |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
270 One workaround for this problem is to run @code{gpg-agent} on a |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
271 different terminal from Emacs, with the @code{--keep-tty} option; this |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
272 tells @code{gpg-agent} use its own terminal to prompt for passphrases. |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
273 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
274 When @code{gpg-agent} is not being used, PGG prompts for a passphrase |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
275 through Emacs. It also has its own passphrase caching mechanism, |
76288 | 276 which is controlled by the variable @code{pgg-cache-passphrase} (see |
76199
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
277 below). |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
278 |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
279 There is a security risk in handling passphrases through PGG rather |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
280 than @code{gpg-agent}. When you enter your passphrase into an Emacs |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
281 prompt, it is temporarily stored as a cleartext string in the memory |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
282 of the Emacs executable. If the executable memory is swapped to disk, |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
283 the root user can, in theory, extract the passphrase from the |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
284 swapfile. Furthermore, the swapfile containing the cleartext |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
285 passphrase might remain on the disk after the system is discarded or |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
286 stolen. @code{gpg-agent} avoids this problem by using certain tricks, |
613d36164fae
(Caching passphrase): Document gpg-agent usage, gpg-agent
Chong Yidong <cyd@stupidchicken.com>
parents:
75246
diff
changeset
|
287 such as memory locking, which have not been implemented in Emacs. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
288 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
289 @defvar pgg-cache-passphrase |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
290 If non-@code{nil}, store passphrases. The default value of this |
68088
67fc29f4b899
(Caching passphrase): Rewording.
Alex Schroeder <alex@gnu.org>
parents:
67418
diff
changeset
|
291 variable is @code{t}. If you are worried about security issues, |
67fc29f4b899
(Caching passphrase): Rewording.
Alex Schroeder <alex@gnu.org>
parents:
67418
diff
changeset
|
292 however, you could stop the caching of passphrases by setting this |
67fc29f4b899
(Caching passphrase): Rewording.
Alex Schroeder <alex@gnu.org>
parents:
67418
diff
changeset
|
293 variable to @code{nil}. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
294 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
295 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
296 @defvar pgg-passphrase-cache-expiry |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
297 Elapsed time for expiration in seconds. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
298 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
299 |
76650 | 300 If your passphrase contains non-ASCII characters, you might need to |
76742
a80518885f67
(Caching passphrase): Clean up previous change.
Richard M. Stallman <rms@gnu.org>
parents:
76650
diff
changeset
|
301 specify the coding system to be used to encode your passphrases, since |
a80518885f67
(Caching passphrase): Clean up previous change.
Richard M. Stallman <rms@gnu.org>
parents:
76650
diff
changeset
|
302 GnuPG treats them as a byte sequence, not as a character sequence. |
76650 | 303 |
304 @defvar pgg-passphrase-coding-system | |
76742
a80518885f67
(Caching passphrase): Clean up previous change.
Richard M. Stallman <rms@gnu.org>
parents:
76650
diff
changeset
|
305 Coding system used to encode passphrase. |
76650 | 306 @end defvar |
307 | |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
308 @node Default user identity |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
309 @section Default user identity |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
310 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
311 The PGP implementation is usually able to select the proper key to use |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
312 for signing and decryption, but if you have more than one key, you may |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
313 need to specify the key id to use. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
314 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
315 @defvar pgg-default-user-id |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
316 User ID of your default identity. It defaults to the value returned |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
317 by @samp{(user-login-name)}. You can customize this variable. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
318 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
319 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
320 @defvar pgg-gpg-user-id |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
321 User ID of the GnuPG default identity. It defaults to @samp{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
322 This overrides @samp{pgg-default-user-id}. You can customize this |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
323 variable. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
324 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
325 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
326 @defvar pgg-pgp-user-id |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
327 User ID of the PGP 2.x/6.x default identity. It defaults to |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
328 @samp{nil}. This overrides @samp{pgg-default-user-id}. You can |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
329 customize this variable. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
330 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
331 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
332 @defvar pgg-pgp5-user-id |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
333 User ID of the PGP 5.x default identity. It defaults to @samp{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
334 This overrides @samp{pgg-default-user-id}. You can customize this |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
335 variable. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
336 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
337 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
338 @node Architecture |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
339 @chapter Architecture |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
340 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
341 PGG introduces the notion of a "scheme of PGP implementation" (used |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
342 interchangeably with "scheme" in this document). This term refers to a |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
343 singleton object wrapped with the luna object system. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
344 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
345 Since PGG was designed for accessing and developing PGP functionality, |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
346 the architecture had to be designed not just for interoperability but |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
347 also for extensiblity. In this chapter we explore the architecture |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
348 while finding out how to write the PGG backend. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
349 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
350 @menu |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
351 * Initializing:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
352 * Backend methods:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
353 * Getting output:: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
354 @end menu |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
355 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
356 @node Initializing |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
357 @section Initializing |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
358 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
359 A scheme must be initialized before it is used. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
360 It had better guarantee to keep only one instance of a scheme. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
361 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
362 The following code is snipped out of @file{pgg-gpg.el}. Once an |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
363 instance of @code{pgg-gpg} scheme is initialized, it's stored to the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
364 variable @code{pgg-scheme-gpg-instance} and will be reused from now on. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
365 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
366 @lisp |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
367 (defvar pgg-scheme-gpg-instance nil) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
368 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
369 (defun pgg-make-scheme-gpg () |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
370 (or pgg-scheme-gpg-instance |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
371 (setq pgg-scheme-gpg-instance |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
372 (luna-make-entity 'pgg-scheme-gpg)))) |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
373 @end lisp |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
374 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
375 The name of the function must follow the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
376 regulation---@code{pgg-make-scheme-} follows the backend name. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
377 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
378 @node Backend methods |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
379 @section Backend methods |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
380 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
381 In each backend, these methods must be present. The output of these |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
382 methods is stored in special buffers (@ref{Getting output}), so that |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
383 these methods must tell the status of the execution. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
384 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
385 @deffn Method pgg-scheme-lookup-key scheme string &optional type |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
386 Return keys associated with @var{string}. If the optional third |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
387 argument @var{type} is non-@code{nil}, it searches from the secret |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
388 keyrings. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
389 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
390 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
391 @deffn Method pgg-scheme-encrypt-region scheme start end recipients &optional sign passphrase |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
392 Encrypt the current region between @var{start} and @var{end} for |
57243
c5e16264557d
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-575
Miles Bader <miles@gnu.org>
parents:
56927
diff
changeset
|
393 @var{recipients}. If @var{sign} is non-@code{nil}, do a combined sign |
c5e16264557d
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-575
Miles Bader <miles@gnu.org>
parents:
56927
diff
changeset
|
394 and encrypt. If encryption is successful, it returns @code{t}, |
c5e16264557d
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-575
Miles Bader <miles@gnu.org>
parents:
56927
diff
changeset
|
395 otherwise @code{nil}. |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
396 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
397 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
398 @deffn Method pgg-scheme-encrypt-symmetric-region scheme start end &optional passphrase |
66521
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
399 Encrypt the current region between @var{start} and @var{end} using a |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
400 symmetric cipher and a passphrases. If encryption is successful, it |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
401 returns @code{t}, otherwise @code{nil}. This function is currently only |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
402 implemented for GnuPG. |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
403 @end deffn |
34f7069d89f0
(How to use): Update the example to add autoload of
Eli Zaretskii <eliz@gnu.org>
parents:
65555
diff
changeset
|
404 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
405 @deffn Method pgg-scheme-decrypt-region scheme start end &optional passphrase |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
406 Decrypt the current region between @var{start} and @var{end}. If |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
407 decryption is successful, it returns @code{t}, otherwise @code{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
408 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
409 |
66700
3ee6314bb247
(User Commands): Document additional passphrase
Eli Zaretskii <eliz@gnu.org>
parents:
66521
diff
changeset
|
410 @deffn Method pgg-scheme-sign-region scheme start end &optional cleartext passphrase |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
411 Make the signature from text between @var{start} and @var{end}. If the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
412 optional third argument @var{cleartext} is non-@code{nil}, it does not |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
413 create a detached signature. If signing is successful, it returns |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
414 @code{t}, otherwise @code{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
415 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
416 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
417 @deffn Method pgg-scheme-verify-region scheme start end &optional signature |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
418 Verify the current region between @var{start} and @var{end}. If the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
419 optional third argument @var{signature} is non-@code{nil}, it is treated |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
420 as the detached signature of the current region. If the signature is |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
421 successfully verified, it returns @code{t}, otherwise @code{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
422 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
423 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
424 @deffn Method pgg-scheme-insert-key scheme |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
425 Retrieve the user's public key and insert it as ASCII-armored format. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
426 On success, it returns @code{t}, otherwise @code{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
427 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
428 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
429 @deffn Method pgg-scheme-snarf-keys-region scheme start end |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
430 Collect public keys in the current region between @var{start} and |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
431 @var{end}, and add them into the user's keyring. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
432 On success, it returns @code{t}, otherwise @code{nil}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
433 @end deffn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
434 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
435 @node Getting output |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
436 @section Getting output |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
437 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
438 The output of the backend methods (@ref{Backend methods}) is stored in |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
439 special buffers, so that these methods must tell the status of the |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
440 execution. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
441 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
442 @defvar pgg-errors-buffer |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
443 The standard error output of the execution of the PGP command is stored |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
444 here. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
445 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
446 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
447 @defvar pgg-output-buffer |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
448 The standard output of the execution of the PGP command is stored here. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
449 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
450 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
451 @defvar pgg-status-buffer |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
452 The rest of status information of the execution of the PGP command is |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
453 stored here. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
454 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
455 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
456 @node Parsing OpenPGP packets |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
457 @chapter Parsing OpenPGP packets |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
458 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
459 The format of OpenPGP messages is maintained in order to publish all |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
460 necessary information needed to develop interoperable applications. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
461 The standard is documented in RFC 2440. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
462 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
463 PGG has its own parser for the OpenPGP packets. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
464 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
465 @defun pgg-parse-armor string |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
466 List the sequence of packets in @var{string}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
467 @end defun |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
468 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
469 @defun pgg-parse-armor-region start end |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
470 List the sequence of packets in the current region between @var{start} |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
471 and @var{end}. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
472 @end defun |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
473 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
474 @defvar pgg-ignore-packet-checksum |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
475 If non-@code{nil}, don't check the checksum of the packets. |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
476 @end defvar |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
477 |
77235 | 478 @node GNU Free Documentation License |
479 @appendix GNU Free Documentation License | |
480 @include doclicense.texi | |
481 | |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
482 @node Function Index |
77235 | 483 @unnumbered Function Index |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
484 @printindex fn |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
485 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
486 @node Variable Index |
77235 | 487 @unnumbered Variable Index |
56927
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
488 @printindex vr |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
489 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
490 @summarycontents |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
491 @contents |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
492 @bye |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
493 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
494 @c End: |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
495 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
496 @ignore |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
497 arch-tag: 0c205838-34b9-41a5-b9d7-49ae57ccac85 |
55fd4f77387a
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-523
Miles Bader <miles@gnu.org>
parents:
diff
changeset
|
498 @end ignore |