upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/flake.nix
AgeCommit message (Collapse)Author
2024-04-19build: fix lint warningDanConwayDev
remove unused binding
2024-04-09chore: update rust nightly in nixDanConwayDev
whilst fmt is using nightly it doesnt appear that clippy is previous attempts to update the rustfmt nightly version have resulted in a large number of errors which needed resolving. the change was backed out because of other priorities. It appears now that clippy is not using the nightly version and there are no regressions
2023-12-06build(deps) update nixDanConwayDev
- update nix flake - bump hard coded reference to rustfmt nightly version - fix warning that latest version of rustfmt produced
2023-10-06fixup! refactor: rebuild app skeletonDanConwayDev
2023-09-01feat(login) password login using encrypted nsecDanConwayDev
Enables the user to only handle the nsec upon first use of the tool by encrypting it with a password and storing it on disk in an application cache. The approach to encryption draws heavily from that used by the gossip nostr client. - unencrypted nsec is zeroed from memory - a salt is used to defend against rainbow tables - computationally expensive key stretching defends against brute-force attacks of passwords with low entropy. There is UX trade-off between decryption speed and key-stretching computation. This UX challenge is exacerbated in a cli tool as decryption must take place more regularly. Thought was put into the selected n_log and a heavily reduced value is provided for long passwords where security benefits are smaller. A more granular reducing in computation was also considered by rejected to avoided to revealing just how weak a password is as most weak passwords are reused.
2023-09-13refactor: rebuild app skeletonDanConwayDev
Create skeleton for a complete rebuild of the prototype as a production ready product. Includes design patterns for: - dependency injection - unit testing with dependency mocking - integration testing - error handling - config storage BREAKING-CHANGE: ground-up redesign with incompatible protocol standards