News
Project 3 Release
Written on 25.06.2025 18:20 by Tim Rausch
Hi everyone,
we're releasing Project 3 today. The submission is due on August 15. As with the previous projects, there is a handout in the materials section and here are further instructions on how to access the skeleton, use our remote development environment, and to submit your solution:
To get the skeleton code for project 3, you need to pull the
project3
branch from the reference repo. Below is an example of how this can be done:# check if you have added the reference repo as an upstream $ git remote -v # if not, add the reference repo as an upstream # if you use git over SSH, consider using ssh://git@lab-pets.privacy-preserving.systems:2224/pets25-h/ref/ref.git $ git remote add ref https://lab-pets.privacy-preserving.systems/pets25-h/ref/ref.git # pull the new branches and checkout $ git pull $ git checkout project3 # if you so wish, you can create a separate branch to host your work $ git checkout -b project3-wip
This project requires collecting traces of traffic over the Tor network. For this, we have set up a test Tor network as well as a remote developing environment with the necessary facilities pre-installed. Use the following information to access your personal dev env:
- Host:
lab-pets.privacy-preserving.systems
- Port: 6565
- Username & password: as per CMS notes (same as for project 2)
Once you have successfully logged into the remote environment, you can toy around and start working:
- You can safely save your code and traces under
/persist
, this directory persists through server maintenance and restart, while files stored elsewhere will be lost.- You should be able to use the
petrelic
package in Python as well as other necessary tools for capturing the traffic (e.g. tcpdump
)A few points to note:
- As always, please use the persistent storage with courtesy, do not use it as your Google Drive.
- Use this environment only for collecting traces. In particular, do not run resource-intensive tasks.
- Start early on. Collecting traces needs time. Our test Tor network is also configured to mimic real network's delay & jitter. Leaving things until the last minute might expose you to all kinds of unforeseen problems.
- If you need addition Python packages, use
pip
inside a virtual environment.- If you need any other tools that are otherwise impossible to install or run without root privilege, please get in touch. However, you shouldn't need extra tools than the ones provided for this project.
- In the rare case where your dev env or our test Tor network requires a restart, we will issue a notification in advance, so you can plan accordingly.
- Backup your progress often, including your traces. We have configured the persistent storage to persist, of course, but backing up is always a good idea.
To submit:
- Push your code to the
project3-submission
branch of your personal repo before the deadline.Should you have any questions or run into unexpected issues, don't hesitate to ask on Mattermost.