WireGuard as a MirageOS unikernel
Implement WireGuard in OCaml and run as unikernel
MirageOS unikernels are tiny self-contained operating systems (often used as virtual machines), and WireGuard is a widely used modern VPN protocol. Our main aim of this project is to implement a WireGuard client, installable on all Linux and BSD systems. Instead of encrypting/decrypting information in user space (as all WireGuard clients) do, this client will however deploy a unikernel which will take care of this task.
We extend this work to the implementation of a server running as a unikernel, as well as the development of a dedicated unikernel-based QubesOS integration. The implementation of this protocol will benefit the OCaml community and should be reusable outside the unikernel context.
- The project's own website: https://robur.coop/
Run by Robur
This project was funded through the NGI0 Commons Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology under grant agreement No 101135429. Additional funding is made available by the Swiss State Secretariat for Education, Research and Innovation (SERI).