- Add SenderClient state machine with states: Idle, Ready, Composing, Encrypting, Submitted, Error - Implement all state transitions according to specification - Use sodiumoxide for sealed box encryption - Add validation for sender name (max 200 chars) and message body (max 10,000 chars) - Implement complete test suite covering: - State transitions and invalid transitions - Input validation (empty, max length, over max) - Encryption (ciphertext randomness, different messages) - Unicode and special characters support - Multiple messages in sequence - Error handling and recovery
13 lines
273 B
TOML
13 lines
273 B
TOML
[package]
|
|
name = "messagebox-protocol"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[dependencies]
|
|
sodiumoxide = "0.2"
|
|
uuid = { version = "1.6", features = ["v4", "serde"] }
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
thiserror = "1.0"
|
|
|
|
[dev-dependencies]
|