Freenet 0.7.5 build 1492 is now available.
Content of this release:
- Pitch black mitigation finalized: The high-security friend-to-friend mode is now robust against attack
- Improved video-on-demand streaming quality
- New diagnostics component with thread statistics
- Plugin updates
Pitch Black Mitigation
For the last decade Freenet has been vulnerable to the pitch black attack that could disrupt its high-security friend-to-friend mode.
With this release, the pitch black attack is mitigated.
If you decided not to use Freenet in the past because you knew about the pitch black attack, now is a great time to give Freenet another try!
This finalizes the mitigation with a test that shows that it is effective at reducing the impact of the attack and recovering from it:
What is the pitch black attack?
On Freenet, every node has a location on a circle.
To optimize routing, pure friend-to-friend nodes (no opennet) swap these locations without changing actual connections. The pitch black attack steals the locations one by one and replaces them with a single one, so that after a while all nodes are at the same location.
Then no sensible routing is possible anymore.
The mitigation detects when parts of the circle are devoid of routing nodes and fills up the holes by switching there. Then regular swapping brings them back to an optimized position.
This mitigation was sponsored by nlnet as part of the Horizon 2020 program of the EU.
The video-player now prevents most visual flickering and makes video-on-demand over Freenet a good match for conference-talks like those from 36c3:
The guile media site repository provides a tool to create your own streaming site that is hosted decentrally and with good privacy protections within Freenet.
While publishing this is not as simple as uploading a video to a streaming site, for the visitors of your site it is convenient and safe.
No ads, no trackers, but good moderation tools without centralized control. As a happy user put it:
“That’s Freenet. It’s the internet that should have been” — Red, 2021
To help performance analysis, there is now a diagnostics component with thread runtime information. You can activate it in the advanced core settings of your node. This should make it easier to identify performance bottlenecks.
Thanks to DC*!
- KeyUtils got bugfixes from TheSeeker
- Library now searches all indexes if you just hit search — thanks to redwerk.
- Library now also allows setting a custom link suffic (docname) — thanks to TheSeeker.
- Spider got bugfixes from redwerk and juiceman.
- FlogHelper provides simple clickable audio and video tags. Just put a m3u link into the video tag to have video-on-demand.
- skip in support.io.SkipShieldingInputStream must return non-negative. Thanks to dennisnez.
- NodeConfig was reading a particular config from default on every start up. Thanks to desyncr.
- OpenJDK 16+ compat: add wrapper.conf argument to allow access to internal openjdk modules.
- Correct "current size" option in Wizard => datastore size. Thanks to AC4BB21B.
If you want to help us get better, please help us get the current pending pull-requests in shape for merging, by reviewing and/or by improving already reviewed but inactive pull-requests.
We now also have a list of high-impact tasks.
To join in, please come to #freenet @ irc.libera.chat. And please give us time to answer, we’re all volunteers and might not be in your timezone.
What is Freenet?
Freenet is a peer-to-peer platform for
censorship-resistant and privacy-respecting
publishing and communication.
Freenet is a communication system that covers the needs for protection
expected from a secure data broker for Multi-Party Data Exchange in IoT for Health.
This is what Freenet already accomplished.
And we could only get this far together, Freenet developers and Freenet users who fight to further the open and democratic distribution of information, because without users, it is hard for software to make a difference.
Thank you for using Freenet!
- Arne Babenhauserheide
Changes in 1492:
The diagnostics component provides thread runtime statistics. Thanks to DC*.
The multi-node test to show that the mitigation against the pitch black attack works.
The m3u-player for video on demand over Freenet now prevents most visual flickering.
Clickable labels for checkboxes. Thanks to AC4BB21B.
Fix: skip in support.io.SkipShieldingInputStream must return non-negative. Thanks to dennisnez.
Fix: NodeConfig was reading a particular config from default on every start up. Thanks to desyncr.
OpenJDK 16+ compat: add wrapper.conf argument to allow access to internal openjdk modules.
Fix: Correct "current size" option in Wizard => datastore size. Thanks to AC4BB21B.
KeyUtils: Fix API call to allow compiling, and
Fix extra bytes display for composed SSK.
both thanks to TheSeeker.
Fix writing to the bucket and Replace SortedIntSet thanks to redwerks
Fix build thanks to Juiceman
Add new media tags in tool menu: audio and video thanks to AlexandreRio
(you can simply set an uploaded m3u file as as source of a video and it will show up on your flog as video on demand)
related: Florent fixed our website build (Thank you!), so we can release there again. https://freenetproject.org/