Releases
0.1.5
Compare
Sorry, something went wrong.
No results found
[0.1.5] - 2024-12-21
Added
Paranoid Mode (Section 7.2)
Configurable Security Levels : New ParanoidConfig type for fine-tuning security parameters
Periodic Ko Re-enhancement : Commit-reveal protocol can now run every N epochs for additional entropy injection
Configurable Epoch Limits : MaxMessagesPerEpoch can be reduced from 33 to increase ratchet frequency
Defense Against Weak RNG : Independent entropy from both parties protects against compromised random number generators
New Configuration Options
Parameter
Description
Default
Enabled
Activate paranoid mode
true
KoReenhanceInterval
Epochs between Ko re-enhancement (0 = never)
10
MaxMessagesPerEpoch
Messages before mandatory ratchet (1-33)
16
Go API Additions
ParanoidConfig struct with Validate() and DefaultParanoidConfig()
Session.SetParanoidMode(config) - Enable paranoid mode
Session.GetParanoidConfig() - Get current configuration
Session.IsParanoidMode() - Check if paranoid mode is active
Session.NeedsKoReenhancement() - Check if Ko re-enhancement is pending
Session.KoStartReenhancement() - Start Ko re-enhancement after ratchet
Session.KoProcessReenhanceCommit() - Process peer's re-enhancement commit
Session.KoFinalizeReenhancement() - Finalize Ko re-enhancement
Rust API Additions
ParanoidConfig struct with new(), default(), and validate()
Session::set_paranoid_mode(config) - Enable paranoid mode
Session::get_paranoid_config() - Get current configuration
Session::is_paranoid_mode() - Check if paranoid mode is active
Session::needs_ko_reenhancement() - Check if Ko re-enhancement is pending
Session::ko_start_reenhancement() - Start Ko re-enhancement
Session::ko_process_reenhance_commit() - Process peer's commit
Session::ko_finalize_reenhancement() - Finalize re-enhancement
Dice52Error::ConfigError - New error variant for configuration errors
Changed
MaxMessagesPerEpoch constant renamed to DefaultMaxMessagesPerEpoch (old name kept for compatibility)
Session now tracks lastKoEnhancedEpoch for paranoid mode timing
Ratchet function now checks for pending Ko re-enhancement
Documentation
RFC updated with Section 7.2 covering paranoid mode specification
README updated with paranoid mode examples for both Go and Rust
New configuration tables in documentation
Security
Ko re-enhancement uses separate AAD strings (ko-reenhance-commit, ko-reenhance-reveal) to distinguish from initial enhancement
Shared secret from ratchet is stored only when paranoid mode requires it
State is properly cleared after re-enhancement completes
You can’t perform that action at this time.