Commit Graph

21 Commits

Author SHA1 Message Date
bcae51ead9 c,python: Use little-endina byte order for bigint arithmetics
This better matches what one would expect from the hex or base64
(upcoming) formats.
2021-11-15 01:13:17 +01:00
cc473f4c24 c,python: Change the algorithm for hashing the master password to Argon2 2021-11-14 09:59:51 +01:00
c869c79619 c: Implement the CLI tool
The CLI tool should have feature parity with the Python equivalent.

Both implementations generate the same hashes so the algorithm seems to
be sound.
2021-11-14 09:17:41 +01:00
f927eea9aa c: Implement the passgeny module.
This is the C implementation of the passgeny library.
2021-11-14 09:16:34 +01:00
67ec1180dd c: Implement the C implementation of the bhash module 2021-11-14 09:15:55 +01:00
560db14a85 c: Finish the phogen module
This commit implements the `phogen_encode` function, which takes a bhash
as argument and generates a phonetic string.
2021-11-14 09:12:20 +01:00
ad0627b9c1 c: Increase the compiler warning level to 3 2021-11-14 09:11:35 +01:00
44a0466553 python: Change the usage header.
Change the usage header from _Passgeny - Password Generator_ to
_Passgeny - Not a Passowrd Manager_
2021-11-14 09:10:36 +01:00
56d4b3fc13 python: Remove the x pattern. Rename X to `x'. 2021-11-14 09:10:12 +01:00
8f0a1a5c4b python: Increase the argon2 hash length: 64 -> 128 bytes
Warning: This affects password generation, but is hopefully the last
change to do so.
2021-11-14 09:08:43 +01:00
96b83673ee python: Remove debug message from the passgeny module 2021-11-12 15:41:43 +01:00
5e074c6ab9 python: Implement main module
This commit implements the python main cli module. Currently it supports
a preliminary set of command line options but should be able to
successfully generate passwords.
2021-11-10 23:29:01 +01:00
ea5abfe149 python: Implement phogen encode
Implement phogen.encode() to encode Bhashes to phogen strings. This
commit also adds unit tests for the above function.
2021-11-09 19:26:03 +01:00
52935bc765 python: Add bhash tests 2021-09-28 11:36:21 +02:00
3852c4efc9 meson: Add unit test framework
This commit also adds the first unit test. The unit test compares the
phonetic map generated by the Python and by the C implementation and
fails if the generated maps are different.
2021-09-28 11:36:20 +02:00
638f1771a8 meson: Setup the Meson build infrastructure 2021-09-28 11:36:20 +02:00
9d3ffdadf5 c: Add skeleton filesfor the CLI tool
This is prep work for the moving to Meson.
2021-09-28 11:36:20 +02:00
50b0758ffc phogen: Add the C implementation of the phoentic generator 2021-09-28 11:36:20 +02:00
93f9c75131 python: Add initial prototype 2021-09-28 11:36:20 +02:00
7acbc7de0c python: Add the Python implementation of the phoentic generator
Add the Python implementation of the phoentic table generator.
2021-09-28 11:36:20 +02:00
a18891eac9 passgeny: Add the word list
The word list is list of english words that will be used to generate
the phoenitc map.

The word list was taken from https://github.com/dwyl/english-words.git

The license seems to be permissable so keep the file in the local git
repo for two reasons -- backup and convenience.
2021-09-28 11:36:20 +02:00