corevpn-protocol

Crates.iocorevpn-protocol
lib.rscorevpn-protocol
version0.1.0
created_at2026-01-02 17:15:16.85509+00
updated_at2026-01-02 17:15:16.85509+00
descriptionOpenVPN-compatible protocol implementation for CoreVPN
homepagehttps://pegasusheavy.github.io/corevpn/
repositoryhttps://github.com/pegasusheavy/corevpn
max_upload_size
id2018907
size137,865
Joseph R. Quinn (quinnjr)

documentation

README

corevpn-protocol

Crates.io Documentation License

OpenVPN-compatible protocol implementation for CoreVPN.

Features

  • Full OpenVPN Compatibility: Works with standard OpenVPN clients
  • Control Channel: TLS 1.3 for control channel security
  • Data Channel: ChaCha20-Poly1305 or AES-256-GCM encryption
  • Reliable Transport: Reliable UDP with acknowledgments and retransmission
  • Packet Parsing: Complete OpenVPN packet format support
  • Session Negotiation: Key exchange and session establishment

Protocol Support

  • UDP and TCP transport
  • TLS 1.3 control channel
  • tls-auth HMAC authentication
  • tls-crypt encryption
  • Data channel encryption (chacha20-poly1305, aes-256-gcm)
  • Key renegotiation
  • Ping/keepalive

Usage

use corevpn_protocol::{Packet, ControlPacket, DataPacket};

// Parse incoming packet
let packet = Packet::parse(&data)?;

match packet {
    Packet::Control(ctrl) => {
        // Handle control channel packet
    }
    Packet::Data(data) => {
        // Handle encrypted data
    }
}

License

Licensed under either of:

at your option.

Commit count: 0

cargo fmt