Commit graph

18 commits

Author SHA1 Message Date
6e811c85c2
Sealing: Encryption of Secrets (#1)
This adds support for encrypting and decrypting secrets.
It implements the APIs required for unsealing.
The APIs are not complete or compliant.

Reviewed-on: #1

Squashed commit of the following:

commit d77237aefe
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Wed Apr 2 18:59:33 2025 +0200

    Refactor: Secret struct and feature-gates
    - Shamir and its dependencies behind a default feature
    - Secret has its own struct

commit 6eb02c8412
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Wed Apr 2 08:28:28 2025 +0200

    Feat (sealing): Shamir Secret Sharing scheme

commit 5de9e1d74e
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Thu Mar 27 22:13:57 2025 +0100

    Fix (sealing): Simple sealing with random nonce

commit 88ed714e22
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Thu Mar 27 17:13:48 2025 +0100

    Feat (sealing): Simple Password sealing
    Password is generated on first startup.
    The password given to the user is not same as the one used to encrypt secrets

commit 4d342e8b99
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Wed Mar 26 21:51:27 2025 +0100

    Feat (kv2): Support Sealing

commit 1accd45648
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Wed Mar 26 21:49:59 2025 +0100

    WIP feat (sealing): Implement basic sealing functionality
    Currently, the key is just stored plainly in the database

commit 7949d64649
Author: C0ffeeCode <ritters_werth@outlook.com>
Date:   Wed Mar 26 21:39:07 2025 +0100

    Chore: Rename `DatabaseDriver` to `DbPool`
    and add a custom serde serializer `serialize_reject_none` as a utility
2025-04-02 22:42:20 +02:00
1fe5d73483
Feat (kv2): kv2 data access (no metadata) 2025-03-24 19:45:44 +01:00
491ca2fd54 WIP feat (kv2): Method implementations and test improvements 2025-03-24 10:34:38 +01:00
18b2521a93 Rudimentary error handling + Remove serde_with dependency 2024-05-09 20:34:22 +02:00
22d411b919 Fix: Handle unset/implicit Content-Type usage of client libraries & changes to kv 2024-05-06 13:54:56 +02:00
53fe085e2e Add Zeroize 2024-05-05 14:56:47 +02:00
a9b200048a Add Containerfile 2024-05-04 19:29:01 +02:00
049e8374ab Switch from Pool<Any> to Pool<Sqlite> 2024-05-02 13:40:02 +02:00
sam
2f570a7a9d + Update + refactor KvSecret struct
+ Update Secretmeta + default()
2024-05-01 16:52:37 +02:00
7c453b6808 Add database (no schemata yet, only axum state) 2024-04-28 16:57:08 +02:00
6e215a99ee REFACTOR 2024-04-28 13:54:24 +02:00
5441747154 idk 2024-04-28 13:27:54 +02:00
sam
2c430758f1 - refactor (de)serialization to JSON/String 2024-04-19 18:04:54 +02:00
8c6bafbb5c Try to figure out "dynamic routing" 2024-04-16 13:43:48 +02:00
cdae3c2fd3 Configure Lints, containerize tests, add structure, minor test changes, add routes of token auth 2024-04-11 17:52:09 +02:00
065cae6f26 fix: IPv6 incompatibility, cargo workspace resolver 2024-04-10 20:04:12 +02:00
34365a93cd Update basic layout 2024-04-10 17:41:15 +02:00
47f2895ceb initialize crates 2024-03-18 15:48:00 +01:00