1APGD(8)                           User Manual                          APGD(8)
2
3
4

NAME

6       apgd - server that generates several random passwords
7
8

SYNOPSIS

10       apgd  [-a  algorithm]  [-M  mode] [-E char_string] [-n num_of_pass] [-m
11       min_pass_len] [-x max_pass_len]  [-r  dictfile]  [-b  filter_file]  [-p
12       min_substr_len] [-k] [-t] [-l]
13

DESCRIPTION

15       apgd  program  is  a  server that supports Password Generation Protocol
16       described in RFC972.  It uses several  password  generation  algorithms
17       (currently two) and a built-in pseudo random number generator.
18
19       apgd  is  normally  invoked by the Internet superserver (see inetd (8))
20       for requests to connect to the pwdgen port (pwdgen port is 129  accord‐
21       ing  to  RFC1700 ) as indicated by the /etc/services file (see services
22       (5)).
23
24       Default  algorithm  is  pronounceable  password  generation   algorithm
25       designed by Morrie Gasser and described in "A Random Word Generator For
26       Pronounceable Passwords" National Technical Information Service  (NTIS)
27       AD-A-017676.   The  original  paper  is very old and had never been put
28       online, so I have to use NIST implementation described in FIPS-181.
29
30       Another algorithm is simple random character generation algorithm,  but
31       it  uses  four  user-defined symbol sets to produce random password. It
32       means that user can choose type of symbols that should appear in  pass‐
33       word.  Symbol  sets are: numeric symbol set (0,...,9) , capital letters
34       symbol set (A,...,Z) , small letters symbol set (a,...,z)  and  special
35       symbols symbol set (#,@,!,...).
36
37       Built-in  pseudo  random number generator is an implementation of algo‐
38       rithm described in Appendix C of ANSI X9.17 or RFC1750  with  exception
39       that  it  uses CAST or SHA-1 instead of Triple DES.  It uses local time
40       with precision of microseconds (see  gettimeofday(2))  and  /dev/random
41       (if available) to produce initial random seed.
42
43       apgd  also  have  the ability to check generated password quality using
44       dictionary. You can use this ability if you specify command-line option
45       -r dictfile or -b filtername where dictfile is dictionary file name and
46       filtername is the name of Bloom filter file. In that dictionary you may
47       place  words  (one  per line) that should not appear as generated pass‐
48       words. For example: user names common words, etc. You even can use  one
49       of the dictionaries that come with dictionary password crackers.  Bloom
50       filter file should be created with apgbfm(1) utility  included  in  apg
51       distribution.  In  future releases I plan to implement some other tech‐
52       niques to check passwords just to make life easier.
53
54       apgd has the ability log user password generation activity and internal
55       debug information. It does this using
56       facility = daemon
57              priority = info for user password generation activity logging
58              priority = debug for internal debug information
59       See  the syslogd(8) and syslog.conf(5) man pages for information on how
60       to configure your syslog daemon.
61
62

OPTIONS

64   Password generation modes options
65       -a algorithm
66              use algorithm for password generation.
67              0 - (default) pronounceable password generation
68              1 - random character password generation
69
70       -n num_of_pass
71              generate num_of_pass number of passwords. Default is 6.
72
73       -m min_pass_len
74              generate  password  with  minimum   length   min_pass_len.    If
75              min_pass_len  >  max_pass_len  then max_pass_len = min_pass_len.
76              Default minimum password length is 8.
77
78       -x max_pass_len
79              generate  password   with   maximum   length   max_pass_len   If
80              min_pass_len  >  max_pass_len  then max_pass_len = min_pass_len.
81              Default maximum password length is 10.
82
83       -M mode
84              Use symbolsets specified  with  mode  for  password  generation.
85              mode is a text string consisting of characters S, s, N, n, C, c,
86              L, l. Where:
87
88              S      generator must use special symbol set for every generated
89                     password.
90
91              s      generator should use special symbol set for password gen‐
92                     eration.
93
94              N      generator must use numeral symbol set for every generated
95                     password.
96
97              n      generator should use numeral symbol set for password gen‐
98                     eration.
99
100              C      generator must use capital symbol set for every generated
101                     password.
102
103              c      generator should use capital symbol set for password gen‐
104                     eration.
105
106              L      generator must use small letters  symbol  set  for  every
107                     generated password (always present if pronounceable pass‐
108                     word generation algorithm is used).
109
110              l      generator should use small letters symbol set  for  pass‐
111                     word generation.
112
113              R,r    not   supported  any  more.  Use  -E  char_string  option
114                     instead.
115              mode can not be more than 4 characters in length.
116
117              Note:
118              Usage of L, M, N, C will slow down password generation process.
119
120              Examples:
121              -M sncl or -M SNCL or -M Cn
122
123       -E char_string
124              exclude  characters  in  char_string  from  password  generation
125              process  (in  pronounceable password generation mode you can not
126              exclude small letters). To include special symbols that  can  be
127              recognized  by  shell (apostrophe, quotes, dollar sign, etc.) in
128              char_string use the backslashed versions.
129
130              Examples:
131
132              Command apgd -a 1 -M n -n 3 -m 8 -e 23456789 will generate a set
133              of passwords that will look like this
134              10100110
135              01111000
136              11011101
137
138              Command  apgd -a 1 -M nc -n 3 -m 26 -e GHIJKLMNOPQRSTUVWXYZ will
139              generate a set of passwords that will look like this
140              16A1653CD4DE5E7BD9584A3476
141              C8F78E06944AFD57FB9CB882BC
142              8C8DF37CD792D36D056BBD5002
143
144   Password quality control options
145       -k     check every generated password using cracklib. To use this abil‐
146              ity you must enable cracklib support during programm building.
147
148       -r dictfile
149              check generated passwords for their appearance in dictfile
150
151       -b filter_file
152              check  generated  passwords for their appearance in filter_file.
153              filter_file should be created with apgbfm(1) utility.
154
155       -p min_substr_len
156              this option tells apg(1) to check every substring of the  gener‐
157              ated password for appearance in filter_file. If any of such sub‐
158              strings would be found in the filter_file then  generated  pass‐
159              word  would  be  rejected  and apg(1) will generate another one.
160              min_substr_len is specifies minimum substring length  to  check.
161              This option is active only if -b option is defined.
162
163   Password output options
164       -l     spell  genetated  passwords. Useful when you want to read gener‐
165              ated password by telephone.
166              WARNING: Think twice before read your password by phone.
167
168       -t     print pronunciation for generated pronounceable password
169

DEFAULT OPTIONS

171       apgd -a 0 -M sncl -n 6 -x 10 -m 8 (new style)
172

EXIT CODE

174       On successful completion of its task, apgd will complete with exit code
175       0.  An exit code of -1 indicates an error occurred.  Textual errors are
176       written to the syslogd (8).
177

DIAGNOSTICS

179       All textual info is written to the syslogd(8).
180

FILES

182       None.
183

BUGS

185       None.  If you've found one, please send bug description to the author.
186

SEE ALSO

188       apg(1), apgbfm(1)
189

AUTHOR

191       Adel I. Mirzazhanov, <a-del@iname.com>
192       Project home page: http://www.adel.nursat.kz/apg/
193
194
195
196Automated Password Generator      2003 Aug 4                           APGD(8)
Impressum