1 058b0118 2005-01-03 devnull .TH SECSTORE 1
3 d93fca6a 2005-02-11 devnull aescbc, secstore \- secstore commands
4 058b0118 2005-01-03 devnull .SH SYNOPSIS
5 058b0118 2005-01-03 devnull .B secstore
11 058b0118 2005-01-03 devnull .B -(g|G)
12 058b0118 2005-01-03 devnull .I getfile
16 058b0118 2005-01-03 devnull .I putfile
20 058b0118 2005-01-03 devnull .I rmfile
36 058b0118 2005-01-03 devnull .B aescbc
38 058b0118 2005-01-03 devnull .I <cleartext
39 058b0118 2005-01-03 devnull .I >ciphertext
41 058b0118 2005-01-03 devnull .B aescbc
43 058b0118 2005-01-03 devnull .I <ciphertext
44 058b0118 2005-01-03 devnull .I >cleartext
46 d93fca6a 2005-02-11 devnull .\" .B ipso
48 d93fca6a 2005-02-11 devnull .\" .B -a -e -l -f -s
50 d93fca6a 2005-02-11 devnull .\" .I file
51 d93fca6a 2005-02-11 devnull .\" \&...
53 058b0118 2005-01-03 devnull .SH DESCRIPTION
55 058b0118 2005-01-03 devnull .I Secstore
56 058b0118 2005-01-03 devnull authenticates to the server
57 058b0118 2005-01-03 devnull using a password and optionally a hardware token,
58 058b0118 2005-01-03 devnull then saves or retrieves a file.
59 058b0118 2005-01-03 devnull This is intended to be a credentials store (public/private keypairs,
60 058b0118 2005-01-03 devnull passwords, and other secrets) for a factotum.
64 058b0118 2005-01-03 devnull stores a file on the secstore.
68 058b0118 2005-01-03 devnull retrieves a file to the local directory;
71 058b0118 2005-01-03 devnull writes it to standard output instead.
72 058b0118 2005-01-03 devnull Specifying
73 058b0118 2005-01-03 devnull .I getfile
74 058b0118 2005-01-03 devnull of . will send to standard output
75 058b0118 2005-01-03 devnull a list of remote files with dates, lengths and SHA1 hashes.
79 058b0118 2005-01-03 devnull removes a file from the secstore.
83 058b0118 2005-01-03 devnull prompts for a password change.
87 058b0118 2005-01-03 devnull produces more verbose output, in particular providing a few
88 058b0118 2005-01-03 devnull bits of feedback to help the user detect mistyping.
92 058b0118 2005-01-03 devnull says that the password should be read from standard input
93 d93fca6a 2005-02-11 devnull instead of from
94 d93fca6a 2005-02-11 devnull .BR /dev/tty .
98 058b0118 2005-01-03 devnull says that the password should be read from NVRAM
100 83c4506a 2005-02-11 devnull .IR authsrv (3))
101 058b0118 2005-01-03 devnull instead of from
102 d93fca6a 2005-02-11 devnull .BR /dev/tty .
104 058b0118 2005-01-03 devnull The server is
105 d93fca6a 2005-02-11 devnull .BR tcp!$auth!secstore ,
106 058b0118 2005-01-03 devnull or the server specified by option
107 058b0118 2005-01-03 devnull .BR -s .
109 058b0118 2005-01-03 devnull For example, to add a secret to the file read by
110 d93fca6a 2005-02-11 devnull .IR factotum (4),
114 d93fca6a 2005-02-11 devnull % cd somewhere-private
115 058b0118 2005-01-03 devnull % auth/secstore -g factotum
116 058b0118 2005-01-03 devnull secstore password:
117 058b0118 2005-01-03 devnull % echo 'key proto=apop dom=x.com user=ehg !password=hi' >> factotum
118 058b0118 2005-01-03 devnull % auth/secstore -p factotum
119 058b0118 2005-01-03 devnull secstore password:
120 d93fca6a 2005-02-11 devnull % cat factotum | 9p write -l factotum/ctl
123 058b0118 2005-01-03 devnull and delete the window.
124 d93fca6a 2005-02-11 devnull The middle commands fetch the persistent copy of the secrets,
125 058b0118 2005-01-03 devnull append a new secret,
126 058b0118 2005-01-03 devnull and save the updated file back to secstore.
127 058b0118 2005-01-03 devnull The final command loads the new secret into the running factotum.
130 c8b6342d 2005-01-13 devnull .\" .I ipso
131 c8b6342d 2005-01-13 devnull .\" command packages this sequence into a convenient script to simplify editing of
132 c8b6342d 2005-01-13 devnull .\" .I files
133 c8b6342d 2005-01-13 devnull .\" stored on a secure store.
134 c8b6342d 2005-01-13 devnull .\" It copies the named
135 c8b6342d 2005-01-13 devnull .\" .I files
136 c8b6342d 2005-01-13 devnull .\" into a local
137 c8b6342d 2005-01-13 devnull .\" .IR ramfs (4)
138 c8b6342d 2005-01-13 devnull .\" and invokes
139 c8b6342d 2005-01-13 devnull .\" .IR acme (1)
140 c8b6342d 2005-01-13 devnull .\" on them. When the editor exits,
141 c8b6342d 2005-01-13 devnull .\" .I ipso
142 c8b6342d 2005-01-13 devnull .\" prompts the user to confirm copying modifed or newly created files back to
143 c8b6342d 2005-01-13 devnull .\" .I secstore.
144 c8b6342d 2005-01-13 devnull .\" If no
145 c8b6342d 2005-01-13 devnull .\" .I file
146 c8b6342d 2005-01-13 devnull .\" is mentioned,
147 c8b6342d 2005-01-13 devnull .\" .I ipso
148 c8b6342d 2005-01-13 devnull .\" grabs all the user's files from
149 c8b6342d 2005-01-13 devnull .\" .I secstore
150 c8b6342d 2005-01-13 devnull .\" for editing.
152 c8b6342d 2005-01-13 devnull .\" By default, ipso will edit the
153 c8b6342d 2005-01-13 devnull .\" .I secstore
154 c8b6342d 2005-01-13 devnull .\" files and, if
155 c8b6342d 2005-01-13 devnull .\" one of them is named
156 c8b6342d 2005-01-13 devnull .\" .BR factotum ,
157 c8b6342d 2005-01-13 devnull .\" flush your current keys from factotum and load
158 c8b6342d 2005-01-13 devnull .\" the new ones from the file.
159 c8b6342d 2005-01-13 devnull .\" If you supply any of the
160 c8b6342d 2005-01-13 devnull .\" .BR -e ,
161 c8b6342d 2005-01-13 devnull .\" .BR -f ,
163 c8b6342d 2005-01-13 devnull .\" .BR -l
164 c8b6342d 2005-01-13 devnull .\" options,
165 c8b6342d 2005-01-13 devnull .\" .I ipso
166 c8b6342d 2005-01-13 devnull .\" will just perform the operations you requested, i.e.,
167 c8b6342d 2005-01-13 devnull .\" edit, flush, and/or load.
170 c8b6342d 2005-01-13 devnull .\" .B -s
171 c8b6342d 2005-01-13 devnull .\" option of
172 c8b6342d 2005-01-13 devnull .\" .I ipso
173 c8b6342d 2005-01-13 devnull .\" invokes
174 c8b6342d 2005-01-13 devnull .\" .IR sam (1)
175 c8b6342d 2005-01-13 devnull .\" as the editor insted of
176 c8b6342d 2005-01-13 devnull .\" .BR acme ;
178 c8b6342d 2005-01-13 devnull .\" .B -a
179 c8b6342d 2005-01-13 devnull .\" option provides a similar service for files encrypted by
180 c8b6342d 2005-01-13 devnull .\" .I aescbc
181 c8b6342d 2005-01-13 devnull .\" .RI ( q.v. ).
182 c8b6342d 2005-01-13 devnull .\" With the
183 c8b6342d 2005-01-13 devnull .\" .B -a
184 c8b6342d 2005-01-13 devnull .\" option, the full rooted pathname of the
185 c8b6342d 2005-01-13 devnull .\" .I file
186 c8b6342d 2005-01-13 devnull .\" must be specified and all
187 c8b6342d 2005-01-13 devnull .\" .I files
188 c8b6342d 2005-01-13 devnull .\" must be encrypted with the same key.
189 c8b6342d 2005-01-13 devnull .\" Also with
190 c8b6342d 2005-01-13 devnull .\" .BR -a ,
191 c8b6342d 2005-01-13 devnull .\" newly created files are ignored.
193 058b0118 2005-01-03 devnull .I Aescbc
194 058b0118 2005-01-03 devnull encrypts and decrypts using AES (Rijndael) in cipher
195 058b0118 2005-01-03 devnull block chaining (CBC) mode.
196 058b0118 2005-01-03 devnull .SH SOURCE
197 c3674de4 2005-01-11 devnull .B \*9/src/cmd/secstore
198 058b0118 2005-01-03 devnull .SH SEE ALSO
199 058b0118 2005-01-03 devnull .IR factotum (4),
200 d93fca6a 2005-02-11 devnull .IR secstored (1)
201 058b0118 2005-01-03 devnull .SH BUGS
202 058b0118 2005-01-03 devnull There is deliberately no backup of files on the secstore, so
204 058b0118 2005-01-03 devnull (or a disk crash) is irrevocable. You are advised to store
205 058b0118 2005-01-03 devnull important secrets in a second location.
207 c8b6342d 2005-01-13 devnull .\" When using
208 c8b6342d 2005-01-13 devnull .\" .IR ipso ,
209 c8b6342d 2005-01-13 devnull .\" secrets will appear as plain text in the editor window,
210 c8b6342d 2005-01-13 devnull .\" so use the command in private.