Update.
[elisp/epg.git] / epa.texi
1 \input texinfo                  @c -*- mode: texinfo -*-
2 @c %**start of header
3 @setfilename epa.info
4 @settitle EasyPG Assistant
5 @c %**end of header
6 @include version.texi
7 @c @documentlanguage en
8
9 @dircategory GNU Emacs Lisp
10 @direntry
11 * EasyPG Assistant: (epa).   EasyPG Assistant
12 @end direntry
13
14 @ifinfo
15 This file describes EasyPG Assistant.
16
17 Copyright (C) 2007 Daiki Ueno.
18
19 Permission is granted to copy, distribute and/or modify this document
20 under the terms of the GNU Free Documentation License, Version 1.1 or
21 any later version published by the Free Software Foundation; with no
22 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
23 Texts.  A copy of the license is included in the section entitled "GNU
24 Free Documentation License".
25 @end ifinfo
26
27 @tex
28
29 @titlepage
30 @title EasyPG Assistant
31
32 @author by Daiki Ueno
33 @page
34
35 @vskip 0pt plus 1filll
36 Copyright @copyright{} 2007 Daiki Ueno.
37
38 Permission is granted to copy, distribute and/or modify this document
39 under the terms of the GNU Free Documentation License, Version 1.1 or
40 any later version published by the Free Software Foundation; with no
41 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
42 Texts.  A copy of the license is included in the section entitled "GNU
43 Free Documentation License".
44 @end titlepage
45 @page
46
47 @end tex
48
49 @node Top
50 @top EasyPG Assistant user's manual
51
52 This manual covers EasyPG version @value{VERSION}.
53
54 @menu
55 * Overview::                    
56 * Quick start::                 
57 * Commands::               
58 @end menu
59
60 @node  Overview
61 @chapter Overview
62
63 EasyPG is an all-in-one GnuPG (@pxref{Top, , Top, gnupg, Using the GNU
64 Privacy Guard}) interface for Emacs.  It has two aspects: convenient
65 tools which allow to use GnuPG from Emacs (EasyPG Assistant), and a
66 fully functional interface library to GnuPG (EasyPG Library).  This
67 manual describes EasyPG Assistant specifically.
68
69 The EasyPG Assistant provides the following features.
70
71 @table @bullet
72 @item Keyring browser.
73 @item Cryptographic operations on regions.
74 @item Cryptographic operations on files.
75 @item Dired integration.
76 @item Encryption/decryption of *.gpg files.
77 @end table
78
79 @node  Quick start
80 @chapter Quick start
81
82 To install, just follow the standard CMMI installation instructions.
83
84 @example
85 $ ./configure
86 $ sudo make install
87 @end example
88
89 Then, add the following line to your @file{~/.emacs}
90
91 @lisp
92 (require 'epa-setup)
93 @end lisp
94
95 That's all.  Restart emacs and type @kbd{M-x epa- TAB}, and you will see a
96 lot of commands available.  For example,
97
98 @table @bullet
99 @item To browse your keyring, type @kbd{M-x epa-list-keys}
100
101 @item To create a cleartext signature of the region, type @kbd{M-x epa-sign-region}
102 @end table
103
104 You can also do some cryptographic operations from dired.
105
106 @example
107 M-x dired
108 (mark some files)
109 : e (or M-x epa-dired-do-encrypt)
110 (select recipients by 'm' and click [OK])
111 @end example
112
113 @node Commands
114 @chapter Commands
115
116 @menu
117 * Keyring browser::             
118 * Cryptographic operations on regions::  
119 * Cryptographic operations on files::  
120 * Dired integration::           
121 * Encrypting/decrypting *.gpg files::  
122 @end menu
123
124 @node Keyring browser
125 @section Keyring browser
126 Probably the first step of using EasyPG Assistant is to browse your
127 keyring.  @kbd{M-x epa-list-keys} is corresponding to @samp{gpg
128 --list-keys} from the command line.
129
130 @deffn Command epa-list-keys name mode
131 Show all keys matched with @var{name} from the keyring.
132 If @var{mode} is non-nil, it reads the private keyring.  Otherwise, it
133 reads the public keyring.
134 @end deffn
135
136 The output looks as follows.
137
138 @example
139   u A5B6B2D4B15813FE Daiki Ueno <ueno@@unixuser.org>
140 @end example
141
142 A character on the leftmost column indicates the trust level of the
143 key.  If it is @samp{u}, the key is marked as ultimately trusted.  The
144 second column is the key ID, and the rest is the user ID.
145
146 You can move over entries by @kbd{TAB}.  If you type @kbd{RET} or
147 clicked button1 on an entry, you will see more detailed information
148 about the key you selected.
149
150 @example
151  u Daiki Ueno <ueno@@unixuser.org>
152  u A5B6B2D4B15813FE 1024bits DSA
153         Created: 2001-10-09
154         Expires: 2007-09-04
155         Capabilities: sign certify
156         Fingerprint: 8003 7CD0 0F1A 9400 03CA  50AA A5B6 B2D4 B158 13FE
157  u 4447461B2A9BEA2D 2048bits ELGAMAL_E
158         Created: 2001-10-09
159         Expires: 2007-09-04
160         Capabilities: encrypt
161         Fingerprint: 9003 D76B 73B7 4A8A E588  10AF 4447 461B 2A9B EA2D
162 @end example
163
164 In the @samp{*Keys*} buffer, several commands are available.  The
165 common use case is to export some keys to a file.  To do that, type
166 @kbd{m} to select keys, type @kbd{o}, and then supply the filename.
167
168 @node Cryptographic operations on regions
169 @section Cryptographic operations on regions
170
171 @deffn Command epa-decrypt-region start end
172 Decrypt the current region between @var{start} and @var{end}.  It
173 replaces the region with the decrypted plaintext.
174 @end deffn
175
176 @deffn Command epa-decrypt-armor-in-region start end
177 Decrypt OpenPGP armors in the current region between @var{start} and
178 @var{end}.  The difference from epa-decrypt-region is that
179 epa-decrypt-armor-in-region searches ASCII armors in the region and
180 applies epa-decrypt-region to each of them.  That is, this command
181 does not alter the original text around ASCII armors.
182 @end deffn
183
184 @deffn Command epa-verify-region start end
185 Verify the current region between @var{start} and @var{end}.  It sends
186 the verification result to the minibuffer.
187 @end deffn
188
189 @deffn Command epa-verify-cleartext-in-region
190 Verify OpenPGP cleartext signed messages in the current region between
191 @var{start} and @var{end}.  The difference from epa-verify-region is
192 that epa-verify-cleartext-in-region searches OpenPGP cleartext
193 segments in the region and applies epa-verify-region to each of them.
194 That is, this command does not alter the original text around OpenPGP
195 cleartext segments.
196 @end deffn
197
198 @node Cryptographic operations on files
199 @section Cryptographic operations on files
200 (not yet written.)
201
202 @node Dired integration
203 @section Dired integration
204 (not yet written.)
205
206 @node Encrypting/decrypting *.gpg files
207 @section Encrypting/decrypting *.gpg files
208 (not yet written.)
209
210 @summarycontents
211 @contents
212 @bye
213
214 @c End: