GNUnet 0.11.0 released

We are pleased to announce the release of GNUnet 0.11.0.
This is a major release after about five years of development. In terms of usability, users should be aware that there are still a large number of known open issues in particular with respect to ease of use, but also some critical privacy issues especially for mobile users. Also, the nascent network is tiny (about 200 peers) and thus unlikely to provide good anonymity or extensive amounts of interesting information. As a result, the 0.11.0 release is still only suitable for early adopters with some reasonable pain tolerance.

Download links

Note that due to mirror synchronization, not all links might be functional early after the release. For direct access try

Note that GNUnet is now started using gnunet-arm -s. GNUnet should be stopped using gnunet-arm -e.

Noteworthy changes in 0.11.0

  • The Web site and manuals have undergone significant rework. You can find an archive of the old Web site at
  • The code now builds again on macOS. GNUnet on macOS is experimental. While it builds and seems to run fine, some tests are known to fail.
  • Build process now works properly with libidn2
  • Except for gnunet-qr, all Python code was migrated to Python 3.7.
  • Fixed security issues in secret sharing cryptography logic
  • Services running out of file descriptors on accept() no longer busy wait
  • Fixed crash in gnunet-gns2dns proxy
  • GNS responses are now padded to minimize information disclosure from the size
  • Fixed API issues and (rare) crash bugs in CADET
  • The experimental SecuShare code is not included in the release, you can now find it in the gnunet-secushare Git repository.
  • The Ascension tool (separate download) now allows importing DNS zones into GNS via AXFR.
  • GNUnet now includes a decentralised identity attribute sharing service: reclaimID. A ready-to-use client can be found in an external repo.
  • The code now builds again on NetBSD. GNUnet on NetBSD is experimental. While it builds and seems to run fine, full support requires more changes in the core of GNUnet It will soon be available via pkgsrc.
  • Many things changed on the build system side. If you package GNUnet for an operating system or otherwise package manager, make sure that you read the README.

The above is just the short list, our bugtracker lists over 100 individual issues that were resolved since 0.11.0pre66.

Known Issues

  • There are known major design issues in the TRANSPORT, ATS and CORE subsystems which will need to be addressed in the future to achieve acceptable usability, performance and security.
  • There are known moderate implementation limitations in CADET that negatively impact performance. Also CADET may unexpectedly deliver messages out-of-order.
  • There are known moderate design issues in FS that also impact usability and performance.
  • There are minor implementation limitations in SET that create unnecessary attack surface for availability.
  • The RPS subsystem remains experimental.
  • Some high-level tests in the test-suite fail non-deterministically due to the low-level TRANSPORT issues.

In addition to this list, you may also want to consult our bug tracker at which lists about 150 more specific issues.


This release was the work of many people. The following people contributed code and were thus easily identified: Christian Grothoff, Matthias Wachs, Bart Polot, Sree Harsha Totakura, Nathan S. Evans, Martin Schanzenbach, Julius Bünger, ng0, Philipp Tölke, Florian Dold, Руслан Ижбулатов, tg(x), David Barksdale, Christian Fuchs, Nils Durner, Omar Tarabai, Maximilian Szengel, Supriti Singh, lurchi, David Brodski, xrs, Fabian Oehlmann, Carlo von lynX, Christophe Genevey Metat, Jeffrey Burdges, Safey A.Halim, Daniel Golle, Phil, Bruno Cabral, Ji Lu, Heikki Lindholm, Markus Teich, t3sserakt, Claudiu Olteanu, Marcello Stanisci, Moon, Hernani Marques, anryko, Arthur Dewarumez, Julien Morvan, Adnan H, rexxnor, Lin Tong, Andreas Fuchs, Christian Rupp, jah, Alejandra Morales, Bernd Fix, Feideus, Matthias Kolja Miehl, Andrew Cann, Antonio Ojea, Pascal Mainini, amirouche and hark. Special thanks to Florian Weimer.