Material for the IETF 118 project Post-quantum Encrypted Client Hello (PQ-ECH). Find more information in the documentation folder.
For a jumpstart on what to do in the Hackathon see the roadmap.
We are using Vagrant to create an isolated environment for wolfSSL code development during the Hackathon. Below you can find prerequisites and instruction on how to use Vagrant and develop wolfSSL code.
To be able to use the vagrant files you will need to install Vagrant and Virtualbox:
For Linux users, simply install Vagrant from the apt-repositories
sudo apt install vagrant
For Windows users, you need to download and install Vagrant from the Vagrant Download Page
You need to install the reload plugin. From a CLI (terminal or command prompt) type:
vagrant plugin install vagrant-reload
Vagrant requires a provisioner, e.g VirtualBox, Hyper-V etc. Our scripts use VirtualBox.
In Linunx you can easily install it from your distribution's repository:
sudo apt install virtualbox
For Windows users, you need to download and install VirtualBox from the VirtualBox Download page
Now you are ready to use Vagrant to create an isolated environment for developing the wolfSSL code.
Clone (or download) this repository:
git clone https://github.com/IETF-Hackathon/pq-ech.git
There are currently two flavors:
To create a complete environment with the Eclipse IDE ready to debug wolfSSL code simply run:
cd pq-ech/vagrant
vagrant up
Build time is around 20-40 minutes depending on your download speed and your system configuration
To create just an isolated environment without GUI and with a shared folder that you can edit from your host machine simply run:
cd pq-ech/vagrant
vagrant up cli
Build time is around 10-20 minutes depending on your download speed and your system configuration
- Open the Virtual Box GUI application
- Open the newly created Virtual Machine with everything that you need already installed.
- Login as user
vagrant
using the passwordvagrant
. - Open the Eclipse IDE.
- Click
File > Import > C/C++ > Existing Code as Makefile project
- Enter a project name, locate the wolfssl folder (should be in
/home/vagrant/share/wolfssl
) and selectLinux GCC
as the toolchain. - You are now ready to edit, build, debug the wolfssl library!
- Run
vagrant ssh
to open an ssh session with the newly created Virtual Machine. - Login as user
vagrant
using the passwordvagrant
. - Locate the wolfssl folder.
- You are now ready to edit, build and debug the wolfssl library using the terminal!