thePR0M3TH3AN
fcbe2b2943
Harden security item 2: KDF policy, export safeguards, and tests
2026-02-25 18:15:51 -05:00
thePR0M3TH3AN
c3eef44ab7
improved tests
2026-02-25 18:07:22 -05:00
thePR0M3TH3AN
37d0dffdc3
Merge branch 'beta' into main (safe conflict resolution)
2026-02-23 16:38:18 -05:00
thePR0M3TH3AN
dd7290e83b
Add robust AI TUI harness, docs roadmap, and lock/unlock fix
2026-02-23 14:35:40 -05:00
thePR0M3TH3AN
39d3b72e66
Merge pull request #889 from PR0M3TH3AN/opt-totp-cache-13978863474736758588
...
⚡ Optimize TOTP display loop by caching derived secrets
2026-02-18 10:23:09 -05:00
google-labs-jules[bot] and PR0M3TH3AN
1f92fe7901
Refactor test fixtures and fix linting issues
...
- Moved `client` and `dummy_nostr_client` fixtures to `src/tests/conftest.py` to fix F811 redefinition errors and improve test organization.
- Introduced `make_dummy_nostr_client` factory fixture to support tests requiring multiple client instances.
- Updated all affected tests to use the new fixture pattern.
- Removed deprecated `is_flag=True` from Typer boolean options in CLI modules.
- Fixed F541 (f-string without placeholders) in `entry_management.py`.
- Fixed F841 (unused variable) in `manager.py`.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-18 03:39:55 +00:00
google-labs-jules[bot] and PR0M3TH3AN
b0c3a97ce3
perf: Cache derived TOTP secrets in display loops
...
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-18 03:39:51 +00:00
google-labs-jules[bot] and PR0M3TH3AN
8e33f9c5e1
Fix formatting, linting, and logic errors from codebase scan
...
- Apply black formatting to 17 files.
- Fix F821 undefined name errors in:
- src/main.py: Add missing `queue` import.
- src/seedpass/core/encryption.py: Fix `JSONDecodeError` reference.
- src/utils/__init__.py: Fix exception variable scope in fallback code.
- src/utils/key_derivation.py: Add `TYPE_CHECKING` imports.
- src/seedpass/core/config_manager.py: Add `TYPE_CHECKING` imports.
- Initialize torch environment and TODO file.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-16 18:09:48 +00:00
google-labs-jules[bot] and PR0M3TH3AN
afa35a1782
Optimize TOTP derivation in GUI loop by caching secrets
...
- Add `get_totp_secret` to `EntryManager` and `EntryService` to allow retrieving the secret (derived or imported) without calculating the code.
- Update `TotpViewerWindow` in GUI to cache TOTP secrets locally. This prevents expensive PBKDF2/BIP39 derivation on every UI refresh (every second).
- Clean up unused imports and f-strings in `entry_management.py`.
Benchmarks show a ~9x speedup for 10 frames (50 entries) and >100x speedup for steady state.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-16 17:37:03 +00:00
google-labs-jules[bot] and PR0M3TH3AN
75fe5bc382
Fix weak key derivation by adding salt to parent seed encryption
...
Introduced a random salt to key derivation for parent seed encryption to prevent rainbow table attacks. The salt is now stored in the `parent_seed.enc` file header (V3 format).
* Modified `src/utils/key_derivation.py` to accept optional `salt` argument.
* Modified `src/seedpass/core/encryption.py` to read/write salt in `parent_seed.enc` using V3 format (V3:salt:nonce:ciphertext).
* Modified `src/seedpass/core/manager.py` to generate salt for new seeds and read salt for existing ones.
* Added auto-upgrade logic for legacy (no salt) seeds upon access.
* Updated tests to verify salt usage and backward compatibility.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-16 17:22:54 +00:00
google-labs-jules[bot] and PR0M3TH3AN
0a349df058
chore(ai): style-agent run
...
- Formatted 8 files with black.
- Ran flake8 and logged warnings.
- Verified with pytest.
- Scheduler operations completed (lock check, lock, complete).
- Wrote task log to torch/task-logs/daily/.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-16 12:54:54 +00:00
thePR0M3TH3AN
d030cf9692
Raise InvalidToken-compatible errors
2025-08-23 12:21:56 -04:00
thePR0M3TH3AN
bebbca8169
Add test for friendly decryption message?
2025-08-23 12:05:58 -04:00
thePR0M3TH3AN
7b0344739f
refactor: restrict console logging and pause during UI
2025-08-22 22:24:04 -04:00
thePR0M3TH3AN
d5e0d61db4
Use custom SeedPassError instead of sys.exit
2025-08-22 10:01:14 -04:00
thePR0M3TH3AN
ee3d9d8e9d
feat: add local backup restore during seed setup
2025-08-22 09:39:38 -04:00
thePR0M3TH3AN
a2a663eed1
Default offline mode
2025-08-22 09:10:06 -04:00
thePR0M3TH3AN
4df6ff639e
List seed setup choices for readability
2025-08-20 22:33:23 -04:00
thePR0M3TH3AN
505cf1a950
feat: track nostr account index per seed
2025-08-20 22:15:35 -04:00
thePR0M3TH3AN
cb9a068e40
Handle config decryption errors gracefully
2025-08-20 21:46:09 -04:00
thePR0M3TH3AN
c13742f3f3
Merge pull request #838 from PR0M3TH3AN/codex/add-manual-export-without-encryption
...
Add option to export and import database without encryption
2025-08-20 21:08:49 -04:00
thePR0M3TH3AN
6c8b1928b8
Add option to export and import database without encryption
2025-08-20 21:00:12 -04:00
thePR0M3TH3AN
492bfba3fb
tests: add offline default and kdf slider
2025-08-20 20:51:36 -04:00
thePR0M3TH3AN
dd513cf964
Add nonce tracking and V3 encryption format
2025-08-20 19:43:45 -04:00
thePR0M3TH3AN
0315562d80
test: ensure manifest IDs omit fingerprint
2025-08-20 19:11:24 -04:00
thePR0M3TH3AN
619226d336
feat: support random and deterministic TOTP secrets
2025-08-20 18:36:19 -04:00
thePR0M3TH3AN
b97d60778b
Restore compatibility for key hierarchy
2025-08-20 18:12:02 -04:00
thePR0M3TH3AN
bbb26ca55a
test: add key hierarchy tests
2025-08-20 17:57:50 -04:00
thePR0M3TH3AN
26632c0e70
Fix KDF metadata handling and headless password prompts
2025-08-20 17:23:10 -04:00
thePR0M3TH3AN
06ca51993a
Add KDF config with per-file metadata
2025-08-19 09:53:46 -04:00
thePR0M3TH3AN
87999b1888
test: cover backup restore startup
2025-08-19 08:53:26 -04:00
thePR0M3TH3AN
468608a369
Support listing all entry types
2025-08-18 19:12:55 -04:00
thePR0M3TH3AN
a21efa91db
refactor: rename entropy length parameter
2025-08-12 09:41:37 -04:00
thePR0M3TH3AN
19577163cf
Add vault locked flag and enforce access checks
2025-08-12 08:48:19 -04:00
thePR0M3TH3AN
3ff3e4e1d6
Use manager timed_input in MenuHandler
2025-08-11 21:13:44 -04:00
thePR0M3TH3AN
08c4453326
Add service classes and tests
2025-08-11 20:36:53 -04:00
thePR0M3TH3AN
28f552313f
test: align legacy migration handling
2025-08-11 19:35:03 -04:00
thePR0M3TH3AN
294eef9725
test: cover legacy migration error handling
2025-08-11 16:05:14 -04:00
thePR0M3TH3AN
b0a2f17cc8
Make Nostr client async
2025-08-10 20:59:04 -04:00
thePR0M3TH3AN
199d02ab72
Clarify placeholder utils and clean imports
2025-08-08 15:47:52 -04:00
thePR0M3TH3AN
28382cc649
test seed profile creation
2025-08-06 23:14:53 -04:00
thePR0M3TH3AN
8c9e325c76
Add regression test for word-by-word seed setup
2025-08-06 22:34:11 -04:00
thePR0M3TH3AN
bfc181c32b
Handle missing fingerprint manager during seed save
2025-08-06 22:13:47 -04:00
thePR0M3TH3AN
26a4a74131
Test duplicate seed profile creation
2025-08-06 22:01:28 -04:00
thePR0M3TH3AN
45304b41c2
Guard missing Nostr client in background sync
2025-08-06 21:33:16 -04:00
thePR0M3TH3AN
48e0632771
Avoid AttributeError when config manager missing
2025-08-06 19:34:41 -04:00
thePR0M3TH3AN
d92385eff9
Add tests for secret mode initialization
2025-08-06 19:23:56 -04:00
thePR0M3TH3AN
b3b703985d
test: cover audit logging
2025-08-06 12:07:09 -04:00
thePR0M3TH3AN
edcf2787ee
Add Argon2 calibration and encryption fuzz tests
2025-08-06 09:58:44 -04:00
thePR0M3TH3AN
a864da5751
Cache BIP85 derivations and incremental snapshots
2025-08-06 08:36:48 -04:00