sefy-cli 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -14
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -14,10 +14,11 @@ database". age and gpg write a header. VeraCrypt wants a container and a mount.
|
|
|
14
14
|
Whoever looks at your disk, your backup drive or your cloud folder can tell
|
|
15
15
|
exactly where the interesting file is.
|
|
16
16
|
|
|
17
|
-
**sefy is a secret store whose file looks like nothing.** Notes,
|
|
18
|
-
files live in an encrypted SQLite database sealed into a single
|
|
19
|
-
magic bytes, no header and no extension convention. Call it
|
|
20
|
-
it among your other backups, and there is nothing to
|
|
17
|
+
**sefy is a secret store whose file looks like nothing.** Notes, logins, cards,
|
|
18
|
+
ssh keys and files live in an encrypted SQLite database sealed into a single
|
|
19
|
+
blob with no magic bytes, no header and no extension convention. Call it
|
|
20
|
+
`notes.bak`, leave it among your other backups, and there is nothing to
|
|
21
|
+
notice.
|
|
21
22
|
|
|
22
23
|
```
|
|
23
24
|
$ head -c 32 notes.bak | xxd
|
|
@@ -49,13 +50,13 @@ Master password:
|
|
|
49
50
|
created /home/you/backups/notes.bak
|
|
50
51
|
```
|
|
51
52
|
|
|
52
|
-
Put things in. Notes, logins, and files kept byte for byte.
|
|
53
|
+
Put things in. Notes, logins, cards, ssh keys, and files kept byte for byte.
|
|
53
54
|
|
|
54
55
|
```
|
|
55
56
|
$ sefy add note "bank card" --text "PIN 4815" --tag money
|
|
56
57
|
added "bank card" as 1
|
|
57
58
|
|
|
58
|
-
$ sefy add
|
|
59
|
+
$ sefy add login mail --login someone@example.com --url https://mail.example.com --tag mail
|
|
59
60
|
Password for this item:
|
|
60
61
|
added "mail" as 2
|
|
61
62
|
|
|
@@ -68,13 +69,13 @@ Look around.
|
|
|
68
69
|
```
|
|
69
70
|
$ sefy ls
|
|
70
71
|
3 id_ed25519 file [keys]
|
|
71
|
-
2 mail
|
|
72
|
+
2 mail login [mail]
|
|
72
73
|
1 bank card note [money]
|
|
73
74
|
|
|
74
75
|
$ sefy show mail
|
|
75
76
|
id: 2
|
|
76
77
|
title: mail
|
|
77
|
-
kind:
|
|
78
|
+
kind: login
|
|
78
79
|
tags: mail
|
|
79
80
|
login: someone@example.com
|
|
80
81
|
password: <hidden — use sefy get>
|
|
@@ -102,7 +103,7 @@ instead of guessing:
|
|
|
102
103
|
$ sefy get ma
|
|
103
104
|
error: 2 items match "ma":
|
|
104
105
|
4 mailing list note
|
|
105
|
-
2 mail
|
|
106
|
+
2 mail login
|
|
106
107
|
narrow the text, or use an id
|
|
107
108
|
```
|
|
108
109
|
|
|
@@ -163,8 +164,8 @@ own - each authenticates the way the machine already does:
|
|
|
163
164
|
```
|
|
164
165
|
$ sefy plugin list
|
|
165
166
|
future 9.0.0 unusable: it speaks protocol 99 and this build speaks 1
|
|
166
|
-
github 0.
|
|
167
|
-
sftp 0.
|
|
167
|
+
github 0.7.0 pull, push
|
|
168
|
+
sftp 0.7.0 pull, push
|
|
168
169
|
```
|
|
169
170
|
|
|
170
171
|
With more than one installed, sefy asks which rather than choosing where your
|
|
@@ -241,9 +242,18 @@ to read version 1 and migrate it. The Argon2 parameters are part of that
|
|
|
241
242
|
promise, not a tuning knob.
|
|
242
243
|
|
|
243
244
|
The database inside the ciphertext is versioned separately, and it does move:
|
|
244
|
-
0.2.0 added an identity to items so two copies of a vault can be merged
|
|
245
|
-
|
|
246
|
-
|
|
245
|
+
0.2.0 added an identity to items so two copies of a vault can be merged, and
|
|
246
|
+
0.7.0 replaced the credential table with named fields so that a kind of record
|
|
247
|
+
costs a template rather than a table. A vault from an earlier release opens and
|
|
248
|
+
is migrated on the way in; the file on disk does not change shape.
|
|
249
|
+
|
|
250
|
+
What an older build makes of it afterwards depends on the change. The 0.2.0
|
|
251
|
+
migration left everything readable by 0.1.x. The 0.7.0 one does not: a login is
|
|
252
|
+
now a kind 0.6.0 has never heard of, so that build lists it, exports it and
|
|
253
|
+
syncs it while saying to upgrade before reading it. That is the
|
|
254
|
+
forward-compatibility contract from 0.6.0 doing its job rather than a break -
|
|
255
|
+
nothing is lost, and the newer build reads everything - but it is why the
|
|
256
|
+
rename happened before 1.0 rather than after.
|
|
247
257
|
|
|
248
258
|
The **plugin protocol is at version 1** as of 0.3.0. 0.4.0 put it to work and
|
|
249
259
|
0.5.0 added a second transport of a different shape without changing a field of
|