net/rosenpass 0.2.3_3 FreeBSD
Wireguard-based post-quantum VPN
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- Last update
- Commit
9c878207a1- License
- MIT, APACHE20
- Categories
- net, net-vpn, security
- Package size
- 706.7 KiB, 2159.0 KiB installed
Description
Rosenpass implements a post-quantum-secure key exchange in the spirit of a Noise protocol. The motivating use case is integrating with the WireGuard VPN: In this mode, the key generated by Rosenpass is supplied to WireGuard as its pre-shared symmetric key (PSK). This results in a WireGuard VPN connection with hybrid post-quantum security.
While Rosenpass is designed with WireGuard in mind, it can be used as a stand-alone tool to exchange keys. Using this mode, it can be used to secure other protocols against attacks from quantum computers, given that they offer using a PSK, and that a secure PSK is sufficient for security of the protocol. To use this mode, the rosenpass binary must be used together with the outfile <FILE> parameter. Then, Rosenpass will write a key to the given file every two minutes, and print a message on standard out to notify the user or the calling script that the key has changed.
The implementation is written in Rust but uses libsodium and liboqs -- both of which are C libraries. This does not result in pretty code everywhere, but enables some advanced security features such as using libsodium's sodium_malloc. We use a couple of techniques to make sure the code is secure: We use variable colouring (gating use of a secret value through a .secret() method), and the code zeroizes all key material.
Install
Binary package:
pkg install rosenpass
From the ports tree:
cd /usr/ports/net/rosenpass/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= rosenpass>0:net/rosenpass
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 0.2.3_2 | 0.2.3_3 | - | 0.2.2_10 | 0.2.3_3 |
| FreeBSD:14:quarterly | 0.2.3_2 | 0.2.3_2 | n/a | 0.2.2_9 | 0.2.3_2 |
| FreeBSD:15:latest | 0.2.3_3 | 0.2.3_3 | n/a | 0.2.2_10 | 0.2.2_10 |
| FreeBSD:15:quarterly | 0.2.3_2 | 0.2.3_2 | n/a | n/a | n/a |
| FreeBSD:16:latest | 0.2.3_2 | 0.2.3_3 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
As this port's Makefile names them.
Library 1
libsodium.so: security/libsodium
Runtime 1
bash: shells/bash
The full lists below include those, and their dependencies in turn.
Build dependencies 21
Run dependencies 4
No port depends on this one.
Configuration
No options to configure.
- USES
- cargo llvm:build pkgconfig shebangfix
- Service scripts
- none
Files
distinfo 187
| File | Size | SHA256 |
|---|---|---|
| rust/crates/adler2-2.0.1.crate | 13366 | 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa |
| rust/crates/adler32-1.2.0.crate | 6411 | aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234 |
| rust/crates/aho-corasick-1.1.4.crate | 184015 | ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301 |
| rust/crates/alloca-0.4.0.crate | 4257 | e5a7d05ea6aea7e9e64d25b9156ba2fee3fdd659e34e41063cd2fc7cd020d7f4 |
| rust/crates/allocator-api2-0.2.21.crate | 63622 | 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923 |
| rust/crates/anes-0.1.6.crate | 23857 | 4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299 |
| rust/crates/anstream-1.0.0.crate | 28916 | 824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d |
| rust/crates/anstyle-1.0.14.crate | 17787 | 940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000 |
| rust/crates/anstyle-parse-1.0.0.crate | 22042 | 52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e |
| rust/crates/anstyle-query-1.1.5.crate | 10264 | 40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc |
| rust/crates/anstyle-wincon-3.0.11.crate | 12638 | 291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d |
| rust/crates/anyhow-1.0.102.crate | 48658 | 7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c |
| rust/crates/ar_archive_writer-0.5.2.crate | 85297 | 4087686b4b0a3427190bae57a1d9a478dbb2d40c5dc1bd6e2b6d797913bdd348 |
| rust/crates/autocfg-1.5.1.crate | 18911 | f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53 |
| rust/crates/base64-0.22.1.crate | 81597 | 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 |
| rust/crates/bindgen-0.65.1.crate | 213479 | cfdf7b466f9a4903edc73f95d6d2bcd5baf8ae620638762244d3f60143643cc5 |
| rust/crates/bitflags-1.3.2.crate | 23021 | bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a |
| rust/crates/bitflags-2.13.0.crate | 51280 | b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8 |
| rust/crates/build-deps-0.1.4.crate | 35939 | 64f14468960818ce4f3e3553c32d524446687884f8e7af5d3e252331d8a87e43 |
| rust/crates/bumpalo-3.20.3.crate | 98671 | 72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649 |
Commit history 6
| Date | Commit | Credits | Log message |
|---|---|---|---|
9c878207a1 |
Mikael Urankar | lang/rust: Bump revisions after 1.99.0 PR: 299016 |
|
7316461925 |
Mikael Urankar | lang/rust: Bump revisions after 1.98.1 PR: 298139 |
|
9e76dd3116 |
Robert Clausecker | net/rosenpass: try to continue if we cannot load if_wg This makes rosenpass easier to use in VNET jails.
PR: 292769
Reported by: rob2g2 <[email protected]>
Event: Berlin Hackathon 202609 |
|
e41b780189 |
Robert Clausecker | net/rosenpass: remove wireguard dependency We ship wg(8) in base on all supported versions of FreeBSD these days.
Remove the dependency on wireguard-tools thus.
PR: 298200
Reported by: k <[email protected]>
Event: Berlin Hackathon 202609 |
|
fb562248d9 |
Robert Clausecker | net/rosenpass: update to 0.2.3 Changelog: https://github.com/rosenpass/rosenpass/blob/v0.2.3/CHANGELOG.md |
The latest 5 of 6 in the history this site was built from.