Recent commits to derivepassphrase.git (9d27d86c9b17d6ee74682f9116b1c714dcd6af4c) https://git.schokokeks.org/derivepassphrase.git/tree/9d27d86c9b17d6ee74682f9116b1c714dcd6af4c Recent commits feed provided by GitList. Add coverage testing https://git.schokokeks.org/derivepassphrase.git/commit/9d27d86c9b17d6ee74682f9116b1c714dcd6af4c m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 9d27d86c9b17d6ee74682f9116b1c714dcd6af4c Overhaul dependency and environment handling in pyproject.toml https://git.schokokeks.org/derivepassphrase.git/commit/2a0045341f70a0730d5088d301a143d089af206a m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 2a0045341f70a0730d5088d301a143d089af206a Add common globals to CLI module https://git.schokokeks.org/derivepassphrase.git/commit/a6d65dffb25ef03bfb5da88b439ccf9f32f14a23 m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 a6d65dffb25ef03bfb5da88b439ccf9f32f14a23 Add example for `Vault.phrase_from_signature` Though written in doctest format, the test itself is skipped because it relies on a running SSH agent. Such external setup is better suited to an actual unit test suite. https://git.schokokeks.org/derivepassphrase.git/commit/c92d27bb9a3564743e463c28be13261ef48507dc m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 c92d27bb9a3564743e463c28be13261ef48507dc Recognize ssh-ed448 keys as deterministic https://git.schokokeks.org/derivepassphrase.git/commit/51155a114a8eae81a0306fb4f266db4568683c90 m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 51155a114a8eae81a0306fb4f266db4568683c90 Fix documentation link to `sequin.Sequin` https://git.schokokeks.org/derivepassphrase.git/commit/a4df8dddcd5458e9fab8d41a3a3531daf88772c7 m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 a4df8dddcd5458e9fab8d41a3a3531daf88772c7 Fix character set subtraction logic Use a static method, and treat both the original character set and the subtracted character set as sets (i.e. no repetitions allowed). https://git.schokokeks.org/derivepassphrase.git/commit/1e5d605177a2f2a4441c99ca1515efaa55449697 m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 1e5d605177a2f2a4441c99ca1515efaa55449697 Fix repeated character detection logic in passphrase generation The prototype implementation is based off a JavaScript program, and is clumsy to read and hard to verify if translated directly to Python. (It also interacts badly with type checking.) Rewrite the check in a pythonic manner, from scratch, that is much easier to verify. https://git.schokokeks.org/derivepassphrase.git/commit/407bbddff031476549ae018bbe5de566a3b1f738 m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 407bbddff031476549ae018bbe5de566a3b1f738 Use neutral arguments in `Vault.create_hash` signature Currently, when generating a passphrase from an SSH key signature, `derivepassphrase.Vault.create_hash` requires the user to know the role of the `key` and `message` arguments themselves; in particular, it requires the user to add the vault UUID to the message themselves. The fact that the vault UUID is added to the hashing input is an implementation detail, as should be the fact that one of the arguments is a key and the other is a salt value to a key-derivation function. Put these details only into the docstring's description section, not the argument names; rename them to `phrase` and `service`, respectively. https://git.schokokeks.org/derivepassphrase.git/commit/eb649f6489030b7e1ce4dc764713df4165725be5 m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 eb649f6489030b7e1ce4dc764713df4165725be5 Add test for service name byte string types https://git.schokokeks.org/derivepassphrase.git/commit/a9eb9aefb6a0d9c5555e16141435664382cb1cbe m@the13thletter.info (Marco Ricci) Sat, 08 Jun 2024 19:06:56 +0200 a9eb9aefb6a0d9c5555e16141435664382cb1cbe