You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+13Lines changed: 13 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,6 +14,19 @@ Current status
14
14
- Implementations: no concrete cryptographic implementations included — those remain out of scope.
15
15
- Recent API changes: `MLSPlaintextInterface::getSender()` and `FramedContentInterface::getSender()` return a `SenderInterface` (typed sender union). `KeyScheduleInterface::init()` now accepts an ordered array of PSKs (`array $psks`) to reflect RFC PSK chaining semantics. `CommitInterface::getSender()` and `ProposalInterface::getSender()` now also return `SenderInterface`.
16
16
17
+
**DTOs & Adapters (examples/tests)**
18
+
19
+
-`src/MLS/Group/BasicGroup.php` — simple in-memory `Group` adapter that creates proposals, builds commits, and applies them to maintain an internal members list; paired with `BasicGroupContext` and `BasicGroupInfo` DTOs.
20
+
-`src/MLS/Crypto/BasicKeySchedule.php` — illustrative key-schedule adapter that accepts PSKs and derives epoch secrets used by tests (not cryptographically secure).
21
+
-`src/MLS/Crypto/BasicHPKE.php` — minimal envelope helper providing `seal()` and `open()` helpers used by tests to simulate HPKE behavior.
22
+
-`src/MLS/Credentials/BasicCredential.php` — credential DTO storing `type`, `identity`, and `publicKey`, implements `__toString()` and a simple `verifySignature()` stub for tests.
23
+
-`src/MLS/Handshake/BasicKeyPackage.php` — lightweight `KeyPackage` DTO containing an init key material, cipher suite, and credential reference for examples.
24
+
-`src/MLS/Handshake/KeyPackageBundle.php` — convenience wrapper around `KeyPackage` objects with simple serialization/verification helpers used in tests.
25
+
-`src/MLS/Proposal/BasicProposal.php` — proposal DTO capturing a `type`, `sender`, and payload; used with `ProposalList.php` which provides collection and basic validation helpers.
26
+
-`src/MLS/Commit/BasicCommit.php` — commit DTO that packages proposals (and optionally an update path) produced by `BasicGroup::commit()`.
27
+
-`src/MLS/Tree/LeafNode.php`, `src/MLS/Commit/UpdatePath.php`, `src/MLS/Commit/UpdatePathNode.php` — small DTOs representing leaf nodes and update-path structures used by commit/update tests.
28
+
29
+
These adapters are intentionally minimal and intended for tests and examples only — they are not production-grade cryptographic implementations.
17
30
Implemented (interface files) — ordered by RFC section
0 commit comments