GNUnet is a mesh routing layer for end-to-end encrypted networking and a framework for distributed applications designed to replace the old insecure Internet protocol stack.
In other words, GNUnet provides a strong foundation of free software for a global, distributed network that provides security and privacy. Along with an application for secure publication of files, it has grown to include all kinds of basic applications for the foundation of a GNU internet.
the GSoC midterm evaluation finished this week and it's time for a status update on the libbrandt auctioning library project.
In the past few weeks we decided to switch from RSA like crypto to Ed25519 due to performance reasons and it's generally more modern approach. Therefore we don't use libpari anymore, but libgcrypt instead. Ed25519 also has no need to validate each input value from other protocol participants.
The GSoC mid-term evaluation is happening now, so this is a good time to write up the work I've done so far. My contributions are threefold. The files mentioned below can be found in the async branch (https://github.com/kc1212/gnunet-rs/tree/async).
I will be participating in Google Summer of Code this year with GNUnet. The project is on improving the Rust implementation of GNUnet utils. The primary objective is to add asynchronous IO in a way that is general, extensible and resemble the original GNUnet API. More details can be found here - https://summerofcode.withgoogle.com/projects/#6454361462931456
Jeff Burdges is my mentor and I will be working closely with him on this project.
I was accepted for a Google Summer of Code project and will be developing an auctioning library. During the community bonding period I have so far read four papers relevant to the topic, choosen a few algorithms with slightly different properties which I want to implement and reconstructed one of them within the pari/gp CLI (see attachment). I also started with a first draft of the library interface which will be published in a git repository shortly.