Commit Graph

25 Commits

Author SHA1 Message Date
Eli Ribble efe5439a3e Remove experimental python script 2023-12-06 23:33:21 -07:00
Eli Ribble 9b66d1ee98 Remove the old Python code.
I'm liking Rust, it's working.
2023-12-06 23:32:11 -07:00
Eli Ribble d296f40eae Add signature validation.
I also realized I wasn't saving the public and private halves separately so
I'm doing that now too.

God, Rust is great and I'm learning it so slowly.
2023-12-06 23:32:11 -07:00
Eli Ribble e72ef67049 Add signature file output
It's optional, whee!
2023-12-06 23:32:11 -07:00
Eli Ribble a03899a588 Add command actions, sign a message 2023-12-06 23:32:11 -07:00
Eli Ribble f08ddd24fa Read the signing key from a file. 2023-12-06 23:32:11 -07:00
Eli Ribble c25f3f2198 Generate a key and write it out. 2023-12-06 23:32:11 -07:00
Eli Ribble d348df882a Read an argument from the commandline. 2023-12-06 23:32:11 -07:00
Eli Ribble 0d3effd9d2 Write a simple file. 2023-12-06 23:32:11 -07:00
Eli Ribble 080c248db0 Add curve25519‑dalek dependency.
We'll use it for signing and stuff.
2023-12-06 23:32:11 -07:00
Eli Ribble 9145071a95 Add basic Cargo setup.
Via cargo init.
2023-12-06 23:32:11 -07:00
Eli Ribble d7b7db3e88 Hello World in Rust.
Yeah, I'm going to learn Rust today.
2023-12-06 23:32:11 -07:00
Eli Ribble e1e6684196 Add WIP. Likely going nowhere.
I've thrashed around a bit, I think I'll move to rust.
2023-12-06 23:32:11 -07:00
Eli Ribble 0f450672b1 Pull out a main function, remove global state.
Makes it easier to see what inputs I need.
2023-12-06 23:32:11 -07:00
Eli Ribble 65c5517935 Add ecc hybrid encryption example.
This comes from https://cryptobook.nakov.com/asymmetric-key-ciphers/ecc-encryption-decryption
I'm hoping to use it to better understand the underlying primitives and operation so I can do something functionally similar but using the underlying elliptic curve primitives within my X.509 certificates.
2023-12-06 23:32:11 -07:00
Eli Ribble 0ee61fed34 Add extremely naive implementations of boxing and unboxing a message.
I took the 'box' term from some other project.
2023-12-06 23:32:11 -07:00
Eli Ribble d01ff6d7de Add basic functions to sign and validate a signature.
This is blessedly simple and I'm assuming working with the very basic tests I've done.
2023-12-06 23:32:11 -07:00
Eli Ribble 7dcec92bf9 Add TODO related to aegis cert. 2023-12-06 23:32:11 -07:00
Eli Ribble 47c40d0ca2 Update aegis generate command to use openssl.
I like step-ca and it's defaults, but as far as I can figure from the arguments, configuration, and documentation there is no way to tell it to give me a much longer-lived certificate. 10 years. That's it. It's a reasonable default for a server, but not for a human being. Instead, we'll do 200 years.

Revisit this when the Transhumanists take over.
2023-12-06 23:32:11 -07:00
Eli Ribble 7a64ec773a Initial steps to generate an aegis. 2023-12-06 23:32:11 -07:00
Eli Ribble deb5bd01bb Remove files generated by pip installation.
And start ignoring some files for git.
2023-12-06 23:32:11 -07:00
Eli Ribble 370c2a9e05 Get a working entry-point done.
It doesn't do anything, but we love water flowing through pipes.
2023-12-06 23:32:11 -07:00
Eli Ribble 2988a08109 Add initial package files.
With this I can `pip install -e .`. It doesn't _do_ anything, but I can do it.
2023-12-06 23:32:11 -07:00
Eli Ribble 9e54895af4 Add initial README.md 2023-12-06 23:32:09 -07:00
eliribble 951a239660 Initial commit 2023-12-06 23:30:43 -07:00