Expand description
Three-Word Networking
Convert network IP addresses into memorable word combinations for human-friendly networking.
§Features
- Perfect IPv4: Converts IPv4 addresses like
192.168.1.1:443
into exactly 3 memorable words likelehr.delfs.enrages
with 100% perfect reconstruction - Adaptive IPv6: Converts IPv6 addresses into 6 or 9 words (groups of 3) using intelligent compression
- Voice-Friendly: Easy to share over phone calls or voice chat
- Error-Resistant: Much less prone to typos than long technical addresses
- Deterministic: Same IP address always produces the same word combination
- Visual Distinction: IPv4 uses dots, IPv6 uses dashes for clear differentiation
- Universal: Works with any valid IP address format
§Example
use three_word_networking::ThreeWordAdaptiveEncoder;
let encoder = ThreeWordAdaptiveEncoder::new()?;
let address = "192.168.1.1:443";
// Convert to three words (perfect reconstruction for IPv4)
let words = encoder.encode(address)?;
println!("Address: {} -> {}", address, words);
// Output: Address: 192.168.1.1:443 -> lehr.delfs.enrages
// Decode back to exact address
let decoded = encoder.decode(&words)?;
assert_eq!(address, decoded);
Re-exports§
pub use error::FourWordError;
pub use error::Result;
pub use ipv6_compression::CompressedIpv6;
pub use ipv6_compression::Ipv6Category;
pub use ipv6_compression::Ipv6Compressor;
pub use ipv6_pattern_feistel::IPv6PatternFeistel;
pub use ipv6_pattern_feistel::IPv6PatternId;
pub use ipv6_perfect_patterns::IPv6Pattern;
pub use ipv6_perfect_patterns::IPv6PatternDetector;
pub use pure_ip_compression::MathematicalCompressor;
pub use pure_ip_compression::PureIpCompressor;
pub use three_word_adaptive_encoder::ThreeWordAdaptiveEncoder;
pub use three_word_encoder::ThreeWordEncoder;
pub use three_word_encoder::ThreeWordEncoding;
pub use three_word_ipv6_encoder::Ipv6ThreeWordGroupEncoding;
pub use three_word_ipv6_encoder::ThreeWordGroup;
pub use three_word_ipv6_encoder::ThreeWordIpv6Encoder;
pub use unified_three_word_encoder::UnifiedThreeWordEncoder;
pub use unified_three_word_encoder::UnifiedThreeWordEncoding;
pub use universal_ip_compression::UniversalIpCompressor;
Modules§
- compression
- Advanced compression module for IP addresses and ports
- dictionary65k
- 65,536 word dictionary for Three-Word Network Encoding
- error
- Error types for three-word networking
- ipv6_
compression - IPv6 Hierarchical Compression Engine
- ipv6_
pattern_ feistel - IPv6 Pattern Feistel Network
- ipv6_
perfect_ patterns - IPv6 Perfect Patterns - BGP-Based Provider Dictionary and Pattern Detection
- pure_
ip_ compression - Pure Mathematical IP+Port Compression
- three_
word_ adaptive_ encoder - Three-Word Adaptive Encoder for IPv4 and IPv6
- three_
word_ encoder - Three-Word Network Address Encoder
- three_
word_ ipv6_ encoder - Three-Word Group IPv6 Encoder
- unified_
three_ word_ encoder - Unified Three-Word Network Encoder
- universal_
ip_ compression - Universal IP+Port Compression for Four Words
Constants§
- VERSION
- Version of the three-word networking library