Skip to content

MercuryWorkshop/wisp-protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 

Repository files navigation

Wisp Protocol

Wisp is designed to be a low-overhead, easy to implement protocol for proxying multiple TCP and UDP sockets over a single websocket connection.

For the protocol specifications, see protocol.md.

Major Versions:

There are two major versions of Wisp:

  • Wisp V1 - The simpler version which is easier to implement, but without advanced features such as authentication.
  • Wisp V2 - Adds a handshake step which allows for adding protocol extensions, password and key authentication, MOTD messages, and more.

Server Implementations:

Client Implementations:

Software Using Wisp:

  • WispMark - A benchmarking tool for Wisp protocol implementations.
  • libcurl.js - A port of libcurl to WebAssembly, for proxying HTTPS requests from the browser with full TLS encryption
  • epoxy-tls - An encrypted proxy for browser javascript, written in Rust.
  • Mittens - Programmable middleware that works with any Wisp implementation.
  • Ultraviolet - A sophisticated web proxy, which uses either libcurl.js or epoxy.
  • Scramjet - An experimental web proxy that aims to be the successor to Ultraviolet.
  • Whisper - A client for Wisp that exposes the connection over a TUN device.
  • v86 - x86 PC emulator and x86-to-wasm JIT, running in the browser
  • Puter - An advanced, open-source internet operating system designed to be feature-rich, exceptionally fast, and highly extensible
  • browser.js - A browser environment for the web, based on Scramjet.
  • Wispcraft - A mod for Eaglercraft, letting you play on online Minecraft Java Edition servers in your browser.

Copyright:

This repository is licensed under the Creative Commons Attribution 4.0 International license. The implementations listed above use different licenses.

The Wisp protocol specifications were written by @ading2210.

creative commons banner

About

Wisp is a low-overhead, easy to implement protocol for proxying multiple TCP/UDP sockets over a single websocket.

Resources

License

Stars

Watchers

Forks

Contributors