VivaHX
[ General News | Software | Archive | Discord ]
hx-libs
[ Misc ] | 0 releases | Rust | GPL-2.0

Rust crates for the Hotline protocol, shared by GtkHx and hxd-ng.

hx-libs is a Cargo workspace holding the Hotline protocol pieces that don't belong to any one program: hxproto, the wire format (including the tracker protocol, for servers and clients alike); hxfiles-xfer, the file-transfer codec; hxhfs, the HFS metadata and resource-fork sidecars; hxcrypto, the crypto behind HOPE, the secure login (HMAC and the legacy hashes, Blowfish OFB-64, ChaCha20-Poly1305 and its keys); hxhope, HOPE itself with no I/O of its own — the handshake as a client or a server plays it, and the cipher and compression it agrees, as a codec between a connection and its socket; and hxsession, a client session over the classic control connection — handshake, login, agreement, replies matched to requests, the keep-alive, and the server's pushes as events — that does no I/O of its own, so the same session runs over a TCP socket, a WebSocket to a relay, or a test's script. hl-identity is Hotline-ng's identity objects (keys, device certificates, user cards, attestations, login proofs, registrar records, signed and sealed messages, server key handovers, friendship objects) in deterministic CBOR with domain-separated Ed25519, and no transport; its specifications are hxd-ng's, and its test vectors, in crates/hl-identity/vectors/, are what other implementations check against. With its hope feature, off by default, a session can log in with HOPE, and its bytes then go through the transport hxhope agreed; a client that does not log in with HOPE leaves the ciphers and compressors out. GtkHx and hxd-ng pull these in as git dependencies. hxproto, hxfiles-xfer, hxcrypto, hxhope and hxsession also build for wasm32-unknown-unknown, for a browser client; hxproto's emoji shortcode tables sit behind its default emoji feature, so a build that doesn't need them can leave them out; HOPE's Zstandard compression, a C library, sits behind hxhope's zstd feature (and hxsession's), off unless a consumer turns it on.

From the project's README.

No releases to download here yet. See its source code page.

Source code

( All misc | Edit this page | Edit on GitHub )
 Links
- Home
- Hotline HQ Discord
- Software
- News Archive
- Server Tracker
- Hotline Wiki
 Clients
- Hotline (SwiftUI) 1.0beta31
- Heidrun 1.8.1
- Hotline Navigator v0.3.1
- GtkHx v1.6.2
- Invigoration v2.3.3
 Servers
- hxd-ng v0.3.0
- Lemoniscate v0.1.8
- Heidrun Server 1.5.2
- Mobius v0.23.2
- Hotline Server 1.9.1
 Trackers
- Magnetron v0.5.0
- Argus
- hltracker (Visual Basic)
 Bots
- Heidrun Spirit 1.0.0
- Hotline Discord Bridge 1.0.0a
- Hotline2IRCRouter
 Misc
- Hotline IM (HIM) v0.2.0
- Heidrun protocol and CLI 1.0.0
- Hotline Modern v0.9.1
- Caps
- CreateList

 

Brought to you by BigRedH.com | HLWiki.com | stickytack.com