Commit Graph
59 Commits
Author SHA1 Message Date
LeoVasanko 7f01de8327 Add README for PyPI. 2025-12-23 19:33:00 +00:00
LeoVasanko 9294fba86d Make manylinux wheels. 2025-12-23 19:20:17 +00:00
LeoVasanko 348812e750 Clean up for release. 2025-12-23 19:09:59 +00:00
LeoVasanko 22dff32b22 Clean up for release. 2025-12-23 19:08:10 +00:00
LeoVasanko 178b689a35 Clean up for release. 2025-12-23 18:54:03 +00:00
LeoVasanko bd8b183e32 Project renamed to aeg, preparing for PyPI release. 2025-12-23 18:25:03 +00:00
LeoVasanko daba717ebb Add tools/release.py script for automatic release process. 2025-11-12 23:47:26 +00:00
LeoVasanko 5b74bcb683 Always generate LF line endings (even on broken OS). 2025-11-12 23:43:25 +00:00
LeoVasanko d9a18f43d5 Ruff formatting. 2025-11-12 23:43:04 +00:00
LeoVasanko 98ee4ab7b3 Fixed Windows build, cleaned up messages during build, using SCM version numbering, added ruff. 2025-11-12 22:59:21 +00:00
LeoVasanko c6148806dd Update pyproject, bump version. 2025-11-10 08:41:40 +00:00
LeoVasanko 6e6bc49466 README tuning. New benchmark results (a bit slower than initial versions were). 2025-11-10 08:40:04 +00:00
LeoVasanko c2ac2e2790 Use a much faster method to wipe buffers. 2025-11-10 08:38:28 +00:00
LeoVasanko c6e77cac66 Cleanup. 2025-11-10 08:00:12 +00:00
LeoVasanko df1acadb1f Bump version 2025-11-09 21:47:08 +00:00
LeoVasanko cb0f9956c3 Convert all input buffers to memoryview before use and use .nbytes, because len() doesn't work correctly with some buffers. Update docs with a Numpy example. 2025-11-09 21:19:50 +00:00
LeoVasanko a29405455a Cleanup benchmark 2025-11-09 20:59:53 +00:00
LeoVasanko 0d63844201 Make Mac class prevent further updates or final after finalisation. Keep cached values for hashlib API. 2025-11-09 20:53:19 +00:00
LeoVasanko 7682d5bc8b Cleanup 2025-11-09 08:39:41 +00:00
LeoVasanko 26b883ecbc Simplify implementation: remove bytes_in and bytes_out counters from all classes. 2025-11-09 08:09:26 +00:00
LeoVasanko 87d9a07868 Wipe state structs automatically after use. Simplified aligned allocator and its use via a single handle. 2025-11-09 08:04:00 +00:00
LeoVasanko eed36e2463 API updates:
- Mac class follows hashlib API: digest functions added and finalization no longer modifies state.
- Encryptor and Decryptor now raise RuntimeError if still used after final.

Documentation updated with the changes and  further examples.

Tests updated with the changes, new test module for error cases (test_raises).

Docstrings improved.
2025-11-09 06:53:27 +00:00
LeoVasanko 46bc05f547 Add human-readable algorithm name as NAME constant. 2025-11-09 04:01:05 +00:00
LeoVasanko 56d304a82e Constants renamed and values extracted from C code rather than function call at runtime. Documentation update. 2025-11-09 03:43:01 +00:00
LeoVasanko 28ee0e1314 Combine the two generator scripts into one that also reads ALIGNMENT and RATE from C sources. 2025-11-09 01:20:15 +00:00
LeoVasanko 1f506806d4 Bump version 2025-11-08 00:51:40 +00:00
LeoVasanko 17fba3c2f2 README 2025-11-07 22:30:23 +00:00
LeoVasanko d04c593766 Move the build_backend script to tools folder. 2025-11-07 22:26:03 +00:00
LeoVasanko fce6324ae5 Documentation updates, added BUILD.md 2025-11-07 22:20:27 +00:00
LeoVasanko b35dc75513 Use uv in the commands. 2025-11-07 22:00:36 +00:00
LeoVasanko 1da3000a22 README formatting 2025-11-07 21:59:20 +00:00
LeoVasanko f983cbe4c5 util.nonce_increment and util.wipe functions, also exported by each module for convenience. 2025-11-07 21:53:39 +00:00
LeoVasanko f0b4373c0e README updated 2025-11-07 21:52:28 +00:00
LeoVasanko 0efc2595d8 Make random_key and random_nonce return bytearray, and add a nonce_increment utility function. 2025-11-07 19:43:33 +00:00
LeoVasanko a78f5c4ea3 README 2025-11-07 09:11:38 +00:00
LeoVasanko fc1025f56d Do not return True from MAC verify function on success. 2025-11-07 09:11:24 +00:00
LeoVasanko 3d75cc7e55 Add random_key and random_nonce functions to each submodule. Update docstrings to show the correct lengths for keys and nonces. 2025-11-07 08:03:56 +00:00
LeoVasanko 5b49422cb7 Remove examples folder, keep benchmark as pyaegis.benchmark that becomes part of the install. 2025-11-07 07:55:51 +00:00
LeoVasanko cca78f4224 API cleanup for simplified update/final. Returns bytearrays when into is not used. Allows into buffers larger than needed. Misc other changes. 2025-11-07 07:38:18 +00:00
LeoVasanko 2e460b5796 Cleanup. 2025-11-07 07:36:43 +00:00
LeoVasanko 407cedc7a9 More informative build error message when Zig is not installed. 2025-11-07 05:02:01 +00:00
LeoVasanko b5b939cffe Another approach to use zig build with setuptools. 2025-11-07 04:56:39 +00:00
LeoVasanko 5c04940525 Include zig build in the build process. 2025-11-07 04:43:54 +00:00
LeoVasanko e644f1b2ca Switch from hatch to setuptools/CFFI build to produce wheels correctly. 2025-11-07 04:34:32 +00:00
LeoVasanko 56b451ac0c Test cleanup, remove debug. 2025-11-07 04:33:51 +00:00
LeoVasanko 93bdbc26a2 Remove Encryptor.final_detached(), as final() handles both cases identically (only returns MAC). 2025-11-07 04:33:04 +00:00
LeoVasanko 2612dc8187 The update functions of libaegis now return the same number of bytes that went in. Update the binding accordingly. 2025-11-07 04:27:48 +00:00
LeoVasanko 302429b7a4 Add comments to generated files saying how they are generated. 2025-11-07 03:31:29 +00:00
LeoVasanko b83120187c Build cleanup, pathname reorganisation, cdef to repository (although generated with gen_cdef.py). 2025-11-07 03:23:30 +00:00
LeoVasanko e3508025f5 Add .gitignore 2025-11-06 22:52:23 +00:00