From a6cffd200797ae22ca6dd1513d55d0d5a596ca2c Mon Sep 17 00:00:00 2001 From: thePR0M3TH3AN <53631862+PR0M3TH3AN@users.noreply.github.com> Date: Wed, 2 Jul 2025 23:22:03 -0400 Subject: [PATCH] Update docs for entries schema --- README.md | 18 ++++++++++++++++++ docs/json_entries.md | 36 +++++++++++++++++++++++++++--------- 2 files changed, 45 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index f2bd9f7..97456e7 100644 --- a/README.md +++ b/README.md @@ -118,6 +118,24 @@ seedpass export --file "~/seedpass_backup.json" seedpass import --file "~/seedpass_backup.json" ``` +### Vault JSON Layout + +The encrypted index file `seedpass_entries_db.json.enc` begins with `schema_version` `2` and stores an `entries` map keyed by entry numbers. + +```json +{ + "schema_version": 2, + "entries": { + "0": { + "website": "example.com", + "length": 8, + "type": "password", + "notes": "" + } + } +} +``` + ## Usage diff --git a/docs/json_entries.md b/docs/json_entries.md index 295ce48..1225f90 100644 --- a/docs/json_entries.md +++ b/docs/json_entries.md @@ -33,6 +33,26 @@ --- +## Index File Format + +All entries belonging to a seed profile are summarized in an encrypted file named `seedpass_entries_db.json.enc`. This index starts with `schema_version` `2` and contains an `entries` object keyed by entry numbers. + +```json +{ + "schema_version": 2, + "entries": { + "0": { + "website": "example.com", + "length": 8, + "type": "password", + "notes": "" + } + } +} +``` + +--- + ## JSON Schema for Individual Entries Each SeedPass entry is stored as an individual JSON file, promoting isolated management and easy synchronization with Nostr. This structure supports diverse entry types (`kind`) and allows for future expansions. @@ -444,9 +464,8 @@ All backups are organized based on fingerprints, ensuring that each seed's data │ │ ├── entry_1_v1.json │ │ └── ... │ ├── parent_seed.enc -│ ├── seedpass_passwords_checksum.txt -│ ├── seedpass_passwords_db_checksum.txt -│ └── seedpass_passwords_db.json +│ ├── seedpass_entries_db_checksum.txt +│ └── seedpass_entries_db.json ├── b5c6d7e8/ │ ├── entries/ │ │ ├── entry_0.json @@ -458,9 +477,8 @@ All backups are organized based on fingerprints, ensuring that each seed's data │ │ ├── entry_1_v1.json │ │ └── ... │ ├── parent_seed.enc -│ ├── seedpass_passwords_checksum.txt -│ ├── seedpass_passwords_db_checksum.txt -│ └── seedpass_passwords_db.json +│ ├── seedpass_entries_db_checksum.txt +│ └── seedpass_entries_db.json └── ... ``` @@ -498,9 +516,9 @@ seedpass rollback --fingerprint a1b2c3d4 --file entry_0_v1.json │ │ ├── entry_1_v1.json │ │ └── ... │ ├── parent_seed.enc -│ ├── seedpass_passwords_checksum.txt -│ ├── seedpass_passwords_db_checksum.txt -│ └── seedpass_passwords_db.json +│ ├── seedpass_script_checksum.txt +│ ├── seedpass_entries_db_checksum.txt +│ └── seedpass_entries_db.json ├── ... ```