USDT数字货币钱包|freenet
Hyphanet
Hyphanet
Mastodon
Hyphanet
About
Volunteer
Documentation
Download
Help
Language
ru
fr
Hyphanet
Hyphanet is a peer-to-peer platform for censorship-resistant and privacy-respectingpublishing and communication.
The original Freenet.
Looking for Locutus?It is now named Freenet; the team of the original Freenet continues development as Hyphanet.Read more
Download
Install Hyphanet
Learn
Protect your privacy
Contribute
Protect internet privacy and freedom
More
Reclaim Your Privacy!
Hyphanet makes it easy to publish and follow what others publish with strong privacy protections.
Plugins built on its decentralized data store make it very easy to host your own website and provide microblogging and forums, media sharing from files to video-on-demand and decentralized version tracking, blogging and spam resistance without central authority.
For an easy start you can join the global Opennet. For maximum privacy, connect to your friends and build a friend-to-friend network independent of and invisible to any centralized server. To access the global network, you either need some friends who also connect to opennet, or use the Shoeshop plugin to build a sneakernet that can even bridge separate friend-to-friend networks when your regional internet itself gets severed from the global information network.
Lots of additional information about Hyphanet and its history is available on Wikipedia.
Secret Identities
Create yours so you can speak more freely
Websites
Browse sites ranging from programming to sustainable living and publish your own
Forums
Ask questions and exchange ideas
Platform
Use decentralized applications built on the Hyphanet platform and create your own
What's New
Freenet renamed to Hyphanet
2023-06-26
In early 2023, the board of Freenet Project, Inc - the nonprofit that started work in 1999 - decided to rename its new project Locutus to "Freenet." This required that Freenet change its name. Locutus began development in 2019, and has different...
Freenet build 1497: fix severe path folding vulnerability
2023-03-04
Freenet 0.7.5 build 1497 is now available. Install Freenet for Windows, for GNU/Linux, macOS and other *nixes, or for Android. See the download page for more information and other platforms. This release fixes a severe vulnerability in path folding...
Freenet build 1496: fix keepalive, translations, windows
2023-01-11
Freenet 0.7.5 build 1496 is now available. Install Freenet for Windows, for GNU/Linux, macOS and other *nixes, or for Android. See the download page for more information and other platforms. This is a smaller release that provides three improvements...
Freenet build 1495: new user experience and performance
2022-12-29
Freenet 0.7.5 build 1495 is now available. Install Freenet for Windows, for GNU/Linux, macOS and other *nixes, or for Android. See the download page for more information and other platforms. This build improves four broad areas: new users user...
News Archives
Why we do this
I worry about my child and the Internet all the time, even though she's too young to have logged on yet. Here's what I worry about. I worry that 10 or 15 years from now, she will come to me and say Daddy, where were you when they took freedom of the press away from the Internet
Mike Godwin / Electronic Frontier Foundation
Hyphanet
Navigate with Freedom
Mastodon
gro.tcejorpteneerf@sserp
gro.tcejorpteneerf@troppus
IRC: #freenet on irc.libera.chat
Licensed under the GDFL. Website source repository
Download
Download
Freenet
About
Volunteer
Documentation
Donate
Download
Help
Language
ru
fr
Download
Download and install Freenet:
For WindowsFor macOS, GNU/Linux & POSIX
Freenet is free and open source software available under GPLv2+. The source code is on GitHub.WindowsDownload and run the installer (
gpg signature;
keyring)Download Freenet for WindowsIt will automatically install Freenet and other required components for you.
When done, your default browser will automatically open up to Freenet's
web-based user interface.Freenet requires Windows 8.1 or later.Note: Once a Windows version reaches end of life, we do not guarantee
any longer support, or the fact that Freenet will install and/or work in
such environments. However, it is not mandatory that Freenet will not work
on an older Windows OS. We always strongly recommend you to take security
very seriously, and run up to date software that receives security updates,
to be on the safe side.
GNU/Linux & POSIX
Get the Java-based installer (
gpg signature;
keyring).Download Freenet for GNU/Linux & POSIX
Run the file with Java, then follow the installer:You need to have a recent Java Runtime Environment (JRE), for
example
OpenJDK which can be obtained via your
package manager or from
https://adoptopenjdk.net.Java version 9 or higher is required.If there are problems, use the command line. This requires
wget which can be installed with a package manager, such as
sudo apt-get install wget on Debian or Ubuntu.wget 'https://www.draketo.de/dateien/freenet/build01496/new_installer_offline_1496.jar' -O new_installer_offline.jar;
java -jar new_installer_offline.jar;
To install on a headless system, or if you get fontconfig problems, use the -console option and follow the prompts:java -jar new_installer_offline.jar -console;
Note: We would love to have packages for most distributions.
There is a
package for Gentoo, and
a preliminary but un-maintained
Debian package.
If you would like to help, it would be much appreciated!Note: On some systems (including FreeBSD and OpenBSD) the wrapper does
not work, unless you install additional software packages and configure it.
You can start Freenet manually there, but you then don’t have
auto-updates. After installation you find the relevant classpath
arguments in wrapper.conf. Then call java directly with a command like
java -Xmx1500m -Xss512k -Dnetworkaddress.cache.ttl=0 -Dnetworkaddress.cache.negative.ttl=0 --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED -cp bcprov-jdk15on-1.59.jar:freenet-ext.jar:freenet.jar:jna-4.5.2.jar:jna-platform-4.5.2.jar:pebble-3.1.5.jar:unbescape-1.1.6.RELEASE.jar:slf4j-api-1.7.25.jar freenet.node.NodeStarterRelease MirrorOur releases are provided via Lysator. You can try the
http mirror or the
tor mirror
provided by
Lysator.Alternatively you can use the github release.Mirrored installationIf you have a working Freenet installation directory that you have mirrored
from one Unix machine to another (e.g. via rsync or unison), enabling the
mirrored installation is not difficult. Nothing in a Freenet installation
cares about its host's IP address; it can't, or Freenet would fail on
machines that get IP addresses from a DHCP pool.All you actually need to do is tell the system you've mirrored to that it
should start the Freenet proxy daemon for you on boot. Do crontab -l
on the source machine, find the line that is tagged "FREENET AUTOSTART" and
add that to your crontab on the mirrored machine.However: each installation has a unique identity key generated at
installation time. If you try to run two instances with the same identity at
the same time, both proxy demons will become confused and upset. Don't do
this!Using FreenetPlease try the step by step guide to setting up Freenet and various Freenet apps,
especially if installing on macOS.
We are not responsible for unofficial third party apps it recommends (including FMS),
but many Freenet users and developers use them.Firewalls and routersFreenet should work fine with most routers, but if you are having problems
and you have a firewall or router, click here for
some info.So it's running, what do I do?When the installer closes, it should open a browser window pointing to the
first-time wizard. Here you can configure basic settings, and then start
using Freenet. You can access Freenet later on via the system tray menu (
bottom right on the screen), or use the Browse Freenet shortcut on the
desktop and/or start menu. If it doesn't work, open
http://127.0.0.1:8888/ in your web browser.For best security you should use a separate browser for Freenet, preferably
in privacy mode. On Windows, the system tray menu will try to use Chrome in
incognito mode if possible. Internet Explorer does not work well with
Freenet, Firefox and Opera are widely used.If you know anyone running Freenet, you can improve your security and help to
build a robust network by connecting to their node. First, open the Add a
friend page. You and your friend should
each download their "node reference". Send the file to the other person,
and add his node reference using the form at the bottom of the page. When
both are added, your friend's node should show up on the Friends page,
probably as "CONNECTED" or "BUSY". You can set a name for your node on the
config page to make it easier to see who it is. Only add nodes run by people
you actually know, whether online or offline, as adding total strangers
harms performance and does not improve security much (they could be the bad
guys!).So I'm connected, what do I do?Freenet itself includes anonymous websites ("freesites"), filesharing,
searching, and more, but you can also use third party applications for chat,
filesharing, to help you upload freesites, etc.The Freenet Social Networking Guide explains
how to set up the main third party tools, including email, forums and
micro-blogging (Sone, a bit like twitter).It doesn't work, now what?If you have problems installing or running Freenet, please see the knowledge base,
FAQ,
chat, or
mailing list.Hardware requirementsGenerally a 1GHz processor and 1GB of RAM should be fine. Freenet will run on
smaller systems, but it uses at least 128MB of RAM, so unless the system does
nothing else it will struggle in less than 512MB. However, the processor is
less of a problem, people have been known to run it on 400MHz Pentium 2's or
ATOM's, although downloads and browsing would be slow.Freenet will use a portion of your disk for storing data, you can configure
this to any size from 100MB upwards, but we recommend at least 1GB. Freenet
also uses disk space for your downloads. Freenet's memory usage is
approximately 256MB plus 400kB for every 2GB of datastore.On 64-bit Windows, we will install a 32-bit Java Virtual Machine because of
limitations of the Java Service Wrapper.UpgradingFreenet provides an upgrade-over-Freenet mechanism: It will keep itself up to
date automatically from other Freenet nodes, and this will normally work even
if it is unable to route to them due to them being too new. This is anonymous
and secure, and we recommend people use it. However, if something is severely
broken, you can upgrade your node manually from our servers:
Windows users can upgrade to the latest-stable Freenet release
by running update.cmd in the Freenet directory.macOS, GNU/Linux, or other POSIX users may upgrade by running the update.sh
shell script in the Freenet directory.
Add friends (or connect to strangers)If you know other people who also use Freenet, you can add them as Friends.
This will make you safer against attacks on Freenet Project infrastructure
(the
seednodes).Once you are connected to 5 or more friends, you can enable high security mode.
In high security mode Freenet will only connect to your friends.
This makes your usage of Freenet almost undetectable,
but you are still able to access the rest of the network through your friends' friends friends ....You don't have to add friends right now.
If you use a "low" or "normal" security level Freenet will automatically connect to strangers and will work just fine.
However, your (or someone else's) government may be able to find out who you are with enough effort. Be careful!Verifying SignaturesDownload the Freenet Project signing keys and import them into your keyring: pub 2048R/0xEAC5EBF07AA9C2A3 2013-04-29
Key fingerprint = DBB7 7338 3BC3 49C9 5203 ED91 EAC5 EBF0 7AA9 C2A3
pub 4096R/0x00100D897EDBA5E0 2013-09-21 [expired: 2016-09-08]
Key fingerprint = 0046 195B 2DCA B176 D394 09CD 0010 0D89 7EDB A5E0
uid Steve Dougherty (operhiem1 Release Signing Key)
sub 4096R/0x7BF0F7B36AC8B380 2013-09-21 [expired: 2016-09-15]
pub 4096R/0xFF24CA421946AA94 2013-09-24 [expires: 2018-09-23]
Key fingerprint = B76D 4AA7 96D8 403E ED78 C9F9 FF24 CA42 1946 AA94
uid Matthew Toseland (2013-2018 key, higher key length)
uid Matthew Toseland (2013-2018 key, higher key length)
sub 4096R/0xF877E62895C42009 2013-09-24 [expires: 2018-09-23]
pub 4096R/0xB67C19E817A8D846 2016-01-02 [expires: 2018-01-03]
Key fingerprint = 5D77 D9A4 2E28 0F5A FF8F 2EBF B67C 19E8 17A8 D846
uid Stephen Oliver
sub 4096R/0x9BCDD1614041F59E 2016-01-02 [expires: 2018-01-03]
sub 4096R/0x1652EBA5AC1BB386 2016-01-02 [expires: 2018-01-03]
sub 4096R/0x38A62E479684F2F2 2016-01-02 [expires: 2018-01-03]
pub 4096R/0xB41A6047FD6C57F9 2017-02-23
Key fingerprint = B30C 3D91 069F 81EC FEFE D0B1 B41A 6047 FD6C 57F9
uid Arne Babenhauserheide (freenet releases)
uid Arne Babenhauserheide (ArneBab)
Freenet
Navigate with Freedom
gro.tcejorpteneerf@sserp
gro.tcejorpteneerf@troppus
IRC: #freenet on irc.libera.chat
© Copyright The Freenet Project Inc. | All Rights Reserved
About
About
Freenet
About
Volunteer
Documentation
Donate
Download
Help
Google+
Language
en
zh-tw
fr
es
About
什么是 Freenet?
I worry about my child and the Internet all the time, even though she's too
young to have logged on yet. Here's what I worry about. I worry that 10 or
15 years from now, she will come to me and say 'Daddy, where were you when
they took freedom of the press away from the Internet?
--Mike Godwin, Electronic Frontier Foundation
Freenet 是一个免费软件,您可以通过它匿名的分享文件、浏览和发布“Freesite”(只能在 Freenet 网络中访问的网站)、在论坛中发帖,不用担心被审查。Freenet 是去中心化的,很难被攻击。如果使用它的“暗网(Darknet)”模式,用户仅会连接到他们的好友,那么他人很难侦测到这个用户。Freenet 节点之间的通讯是加密的,并通过其他节点路由。因此要了解谁在请求某些信息、请求的内容是什么,是极其困难的。用户通过贡献自己的互联网带宽和他们的一部分硬盘空间(称为“数据存储(Data Store)”)来储存文件。根据文件的流行程度,文件会自动被保留或删除。不流行的文件被删除,可以腾出更多的空间给流行的文件。文件是加密的,因此用户无法轻易得知它的“数据存储”内储存了什么内容,因此也不会因其被追究责任。聊天论坛、网站和搜索功能,都是基于该分布式“数据存储”构建。Freenet 自诞生起已被下载超过 200 万次,用来在全世界分发敏感受审查的信息,包括中国和中东国家。Freenet 中的先驱思想和概念也深深影响了学术界。我们在 2000 年的论文《Freenet:一个分布式匿名信息存储和接收系统》(Freenet: A Distributed Anonymous Information Storage and Retrieval System), 是 2000 年被引用次数最多的计算机科学论文(来源:Citeseer)。Freenet 也给世界法律和哲学论文带来了灵感。Ian Clarke,Freenet 的创造者和项目协调人,被 2003 年《麻省理工科技评论 》杂志(MIT's Technology Review)评为世界百强革新者。在最近的开发中,我们引入了一个重要的功能(在其他类似网络中鲜见),称为“暗网(Darknet)”:用户仅与自己信任的人互相连接,这能够极大的降低他们的风险,同时仍然能够通过他们朋友的朋友的朋友来连接到整个 Freenet 网络。这能够让那些“使用 Freenet 即违法”的地方的人们使用 Freenet。政府很难封禁它,用户无需“翻墙隧道”就可以进入“自由的世界”。Written by Ian Clarke
A DisclaimerSuggested prior readingThe importance of the Free flow of informationCensorship and freedomThe solutionIsn't censorship sometimes necessary?But why is anonymity necessary?And what of copyright?But how will artists be rewarded for their work without copyright?Alternatives to Copyright
The Philosophy Behind Freenet
A Disclaimer
There are many reasons why people get involved in the Freenet Project. Some
share the views outlined in this document; some share variations of these views,
which are also served by what we are trying to achieve; and some just enjoy the
technical challenge. These are the ideas which motivated me to architect the
system in the first place, but not necessarily the views that everyone involved
in the Freenet Project holds.
Suggested prior reading
For this document to make sense, you should probably know what Freenet is. You
can get a good overview from What is Freenet?.
The importance of the Free flow of information
Freedom of speech, in most western cultures, is generally considered to be one
of the most important rights any individual might have. Why is the freedom to
share ideas and opinions so important? There are several ways to answer this
question.
Communication is what makes us human
One of the most obvious differences between mankind and the rest of the animal
kingdom is our ability to communicate sophisticated and abstract concepts. While
we constantly discover that animal's communication ability is more sophisticated
than previously assumed, it is unlikely that any other animal approaches our own
level of ability in this area.
Knowledge is good
Most people, given the option of knowing something and not knowing something,
will choose to have more information rather than less. Wars have been won and
lost over who was better-informed. This is because being better-informed allows
us to make better decisions, and generally improve our ability to survive and be
successful.
Democracy assumes a well informed population
Many people today live under democratic governments, and those who don't,
probably want to. Democracy is an answer to the question of how to create
leaders, while preventing them from abusing that power. It achieves this by
giving the population the power to regulate their government through voting,
yet the ability to vote does not necessarily mean that you live in a
democratic country. For a population to regulate their government effectively
it must know what their government is doing, they must be well informed. It
is a feedback loop, but this loop can be broken if the government has the
power to control the information the population has access to.
Censorship and freedom
Everyone values their freedom, in fact, many consider it so important that
they will die for it. People like to think that they are free to form and
hold whatever opinions they like, particularly in western countries. Consider
now that someone had the ability to control the information you have access
to. This would give them the ability to manipulate your opinions by hiding
some facts from you, by presenting you with lies and censoring anything that
contradicted those lies. This is not some Orwellian fiction, it is standard
practice for most western governments to lie to their populations, so much
so, that people now take it for granted, despite the fact that this
undermines the very democratic principles which justify the government's
existence in the first place.
The solution
The only way to ensure that a democracy will remain effective is to ensure
that the government cannot control its population's ability to share
information, to communicate. So long as everything we see and hear is
filtered, we are not truly free. Freenet's aim is to allow two or more people
who wish to share information, to do so.
Isn't censorship sometimes necessary?
Of course no issue is black and white, and there are many who feel that
censorship is a good thing in some circumstances. For example, in some
European countries propagating information deemed to be racist is illegal.
Governments seek to prevent people from advocating ideas which are deemed
damaging to society. There are two answers to this however. The first is that
you can't allow those in power to impose "good" censorship, without also
enabling them to impose "bad" censorship. To impose any form of censorship a
government must have the ability to monitor and thus restrict communication.
There are already criticisms that the anti-racism censorship in many European
countries is hampering legitimate historical analysis of events such as the
second world war.
The second argument is that this "good" censorship is counter-productive even
when it does not leak into other areas. For example, it is generally more
effective when trying to persuade someone of something to present them with
the arguments against it, and then answer those arguments. Unfortunately,
preventing people from being aware of the often sophisticated arguments used
by racists, makes them vulnerable to those arguments when they do eventually
encounter them.
Of course the first argument is the stronger one, and would still hold-true
even if you didn't accept the second. Basically, you either have censorship,
or you don't. There is no middle-ground.
But why is anonymity necessary?
You cannot have freedom of speech without the option to remain anonymous.
Most censorship is retrospective, it is generally much easier to curtail free
speech by punishing those who exercise it afterward, rather than preventing
them from doing it in the first place. The only way to prevent this is to
remain anonymous. It is a common misconception that you cannot trust
anonymous information. This is not necessarily true, using digital signatures
people can create a secure anonymous pseudonym which, in time, people can
learn to trust. Freenet incorporates a mechanism called "subspaces" to
facilitate this.
And what of copyright?
Of course much of Freenet's publicity has centered around the issue of
copyright, and thus I will speak to it briefly. The core problem with
copyright is that enforcement of it requires monitoring of communications,
and you cannot be guaranteed free speech if someone is monitoring everything
you say. This is important, most people fail to see or address this point
when debating the issue of copyright, so let me make it clear:
You cannot guarantee freedom of speech and enforce copyright law
It is for this reason that Freenet, a system designed to protect Freedom of
Speech, must prevent enforcement of copyright.
But how will artists be rewarded for their work without copyright?
Firstly, even if copyright were the only way that artists could be rewarded
for their work, then I would contend that freedom is more important than
having professional artists (those who claim that we would have no art do not
understand creativity: people will always create, it is a compulsion,
the only question is whether they can do it for a living).
Secondly, it could be questioned whether copyright is effective even now. The
music industry is one of the most vocally opposed to enhancements in
communication technology, yet according to many of the artists who should be
rewarded by copyright, it is failing to do so. Rather it has allowed
middle-men to gain control over the mechanisms of distribution, to the
detriment of both artists and the public.
Alternatives to Copyright
Fortunately it won't come to this. There are many alternative ways to reward
artists. The simplest is voluntary payment. This is an extension of the
patronage system which was frequently used to reward artists prior to
copyright, where a wealthy person would fund an artist to allow them to
create full-time. The Internet permits an interesting extension of this idea,
where rather than having just one wealthy patron, you could have hundreds of
thousands, contributing small amounts of money over the Internet.
We actually practice what we preach in this regard too, on the 15th of March
2001 the Freenet Project started taking donations, and within a week we had
collected over $1000.
Current Contributors
Ian Clarke
Freenet is based on Ian's paper "A Distributed Decentralised Information
Storage and Retrieval System". Ian started the Freenet Project around July of
1999, and continues to coordinate the project.
Learn more about Ian on his personal website.
Matthew Toseland
Matthew has been working on Freenet since before the 0.5 release. His work
and that of others has resulted in dramatic improvements to the performance
and stability of the network.
Oskar Sandberg
Oskar was also one of the earliest contributors to the Freenet Project,
and has made some important theoretical breakthroughs that lead to the
beginning of Freenet 0.7, see the papers page.
Florent Daignière
Since 2003, Florent has improved various aspects of the software and
performed the project's system administration. In his day job, he is the
Technical Director of Matta Consulting,
a boutique security consultancy firm and currently works on
safepass.me, an Active Directory password filter.
Michael Rogers
Michael has mostly contributed detailed simulations as part of the Google
Summer of Code. He has been helpful in designing the new transport layer.
Steve Dougherty
The current release manager. He joined in GSoC 2013 and has been a
driving force behind tackling long standing issues in Freenet.
xor
The Developer of the Web of Trust and Freetalk. He worked on the Web
of Trust in part-time for one year and is now working as volunteer
again.
David (Bombe) Roden
The developer of the site insertion tool jSite and of Sone, the Social
Network over Freenet.
Ximin Luo
A debian developer who currently works on packaging Freenet.
Bert Massop
Works on the Freenet core and wherever there is need.
TheSeeker
A long term contributor who, among other things, helps keep the
contact between the core developers and users in active subgroups.
Tommy[D]
A Gentoo packager who untangled all the dependencies of Freenet and
packaged it cleanly in Gentoo.
Arne Babenhauserheide
The current maintainer of pyFreenet and infocalypse. He also writes
articles and tutorials for Freenet.
The translatorsA dilligent team of people from various backgrounds who make it
possible to ship Freenet and this website in many different languages.Many more great hackersThis list is missing many freesite authors, plugin writers, and a host
of other people who contributed in various ways.Anonymous Contributors
Eleriseth
Works on Freenet core and communicates via FMS.
Somedude
The developer of the Freenet-based Forum system FMS, of FreenetHG and
of FLIP, chat over Freenet.
The folks from Frost
A group of users and programmers who use an old spammable
Freenet-based forum system which has been abandoned by most of the
core developers. They are active, however, and though it takes time
for their contributions to reach to core development, they take part
in Freenet development.
Previous Contributors
Thomas Markus
A dutch developer and statistic-enthusiast. He now works at Topicus.Education.
Scott Miller
Scott is responsible for the implementation of much of the cryptography
elements within Freenet.
Steven Starr
Steven helps with administration of Freenet Project Inc, and is an advisor to
the project on business and publicity matters.
Dave Baker
Dave's main contribution has been Freemail,
his Summer of Code project to build a working email-over-Freenet system,
as well as some debugging and core work in various places.
Robert Hailey
Robert has helped improve the speed and security of Freenet by finding two
major bugs, and has recently contributed some code.
David Sowder
David (Zothar) has helped the Freenet Project as time permits and interest
directs, including configuration, statistics and peer management via FCP,
the FProxy stats page and Node 2 Node Messages (N2NM/N2NTMs).
And hundreds of others, who either haven't asked to be added here, who
prefer to remain nameless, or who we just haven't got around to thanking. Not to
mention thousands of users, testers, and
donors!论文
Measuring Freenet in the Wild: Censorship-resilience under Observation (PDF)
Observations and measurements on the live Freenet network. Includes suggestions
for improvement. This was submitted to PETS 2014.
The Dark Freenet (PDF)
Detailed paper about the Freenet 0.7.5 network, as opposed to its routing
algorithm, which is detailed in the below papers. Includes some new
simulations. This has been submitted to PET 2010. Video of Small World talk, Berlin, December 2005
This is a video of a talk given by Ian Clarke and Oskar Sandberg at the Chaos
Computer Congress in Berlin, December 2005, describing the (then) new
architecture for Freenet 0.7. You can also download the slideshow, and the source for the Java demo (requires Java 1.5).
Searching in a Small World (PDF)
Oskar Sandberg's licentiate thesis describing a simple decentralized
mechanism for constructing small world networks that is inspired by Freenet's
original design. Part II of the thesis describes the basis for the new
Darknet architecture.
Distributed routing in Small World Networks (PDF)
A paper by Oskar Sandberg describing the theoretical basis for the new
"Darknet" routing mechanism employed by Freenet 0.7. Chaos Computer Congress Talk (slideshow)
This is a slideshow for a talk given
at the Chaos Computer Congress on 30th Dec 2005 in Berlin, Germany by Ian
Clarke and Oskar Sandberg. It described the new "darknet" approach to be
employed in Freenet 0.7. A Java demonstration to accompany the talk is
also available.
Switching for a small world (PDF)
A thesis by Vilhelm Verendel exploring ways to optimise the swapping algorithm.
Protecting Freedom of Information Online with Freenet (PDF)
An IEEE Internet Computing article describing the Freenet architecture circa
2002 - probably the best introduction to the theory behind Freenet.
FreeNet White Paper (PDF)
Original white paper by Ian Clarke, Division of Informatics, University of
Edinburgh 1999.
Attack Resistant Network Embeddings for Darknets (PDF)
A proposal for changing the darknet swapping algorithm which we are still
considering (we have some doubts about long-term performance). A Contribution to Analyzing and Enhancing Darknet Routing (PDF)
A proposal for changing the routing algorithm which we are still considering
(the worst case performance i.e. when a block has been lost may be
unacceptable).
Presentation: Towards "Dark" Social Networking Services (Strufe et al.) (PDF)
An interesting presentation by the group responsible for the two above papers.
Pisces: Anonymous Communication Using Social Networks
An algorithm for setting up onion-like tunnels on darknets.
Routing in the Dark: Pitch Black (
citeseer) (PDF)
A paper describing some attacks on Freenet 0.7's location swapping algorithm.
We have solutions for this but they are still being tested.
The most up to date reference is of course the source code, but there is also some useful documentation on
the wiki (you may have to search a bit),
and most implemented ideas have been discussed in detail on
the mailing
lists at some point, more recently often in-Freenet
forums such as FMS, or
the bug tracker hosted by MantisHub.
Freenet
Navigate with Freedom
Google+
1,058 Followers
1,042 Likes
gro.tcejorpteneerf@sserp
gro.tcejorpteneerf@troppus
IRC: #freenet on chat.freenode.net
© Copyright The Freenet Project Inc. | All Rights Reserved
Releases · hyphanet/fred · GitHub
Releases · hyphanet/fred · GitHub
Skip to content
Toggle navigation
Sign in
Product
Actions
Automate any workflow
Packages
Host and manage packages
Security
Find and fix vulnerabilities
Codespaces
Instant dev environments
Copilot
Write better code with AI
Code review
Manage code changes
Issues
Plan and track work
Discussions
Collaborate outside of code
Explore
All features
Documentation
GitHub Skills
Blog
Solutions
For
Enterprise
Teams
Startups
Education
By Solution
CI/CD & Automation
DevOps
DevSecOps
Resources
Learning Pathways
White papers, Ebooks, Webinars
Customer Stories
Partners
Open Source
GitHub Sponsors
Fund open source developers
The ReadME Project
GitHub community articles
Repositories
Topics
Trending
Collections
Pricing
Search or jump to...
Search code, repositories, users, issues, pull requests...
Search
Clear
Search syntax tips
Provide feedback
We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
Sign up
You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
hyphanet
/
fred
Public
Notifications
Fork
202
Star
980
Code
Pull requests
59
Actions
Projects
0
Security
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Security
Insights
Releases: hyphanet/fred
Releases
Tags
Releases · hyphanet/fred
Freenet / Hyphanet 1498 pre1
14 Oct 22:29
ArneBab
build01498-pre1
838c5cd
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
Freenet / Hyphanet 1498 pre1
Pre-release
Pre-release
⚠ The Windows installer is currently not signed!
Shorten description of sharesite freesite for english
gzip: replace test workaround by fixing the output of the compressor — thanks to Bombe for the SingleOffsetReplacingOutputStream!
replace GregorianCalendar with java.time.OffsetDateTime in CurrentTimeUTC — thanks to Veniamin Fernandes
CSS: Support word-wrap: anywhere
Move UPnP2 to normal plugins. It does not seem broken, but UPnP does
Move Library plugin to advanced plugins because new users tend to get lost with it
html-filter: allow summary and details html element. Thanks to naejadu
Add a bit of styling to the plugin list (for winterfacey) — thanks to Bombe
Remove option that to load plugins from central server — thanks to Bombe!
fix: invalid max store size showed bytes with GiB suffix
polish: show datastore size warning with GiB suffix
Refine ClientRequestSelectorTest, PersistentJobRunnerImplTest, SplitFileFetcherStorageTest, and SplitFileInserterStorageTest — thanks to Veniamin Fernandes
Change deprecated jcenter() maven repo to mavenCentral() — thanks to Veniamin Fernandes
Fix JarClassLoader’s ability to work with ServiceLoader — thanks to Bombe!
refactor the browser warning wizard page
fix the flag size of nepal — thanks to Percept0r@NYZkOs7eQ…!
Switch swiss flag to civil and state ensign — thanks to Percept0r@NY
bookmarks: Add Opennet SeedNodes stats site
Reorder starting bookmarks: FFS → clean spider → Index of Indexes
Re-order default software bookmarks by ease of use from fproxy
Add generate media site to the default bookmarks
Show the noderef in basic-mode: it is now robust enough
Added tests for PebbleUtils — thanks to Bombe!
Fix NPE when subsets are not initialized — thanks to Bombe
reduce logging for too many excluded sub-arrays thanks to Hiina
disable setting for new-load-management (NLM broke nodes)
add utility to disable a config option, thanks to Bombe
merge debian package as default build action thanks to DC*/desyncr! This resolves one of our high impact tasks.
Assets
18
All reactions
build01497: 2023-02-28
04 Mar 19:57
ArneBab
build01497
This tag was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
e3bb502
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
build01497: 2023-02-28
Latest
Latest
Freenet 0.7.5 build 1497 is now available. [overview]
This release fixes a severe vulnerability in path folding that allowed
to distinguish between downloaders and forwarders with an adapted
node that is directly connected via opennet.
This vulnerability was reported to the Project by Prof. Ming Yang and
Prof. Zhen Ling from the School of Computer Science and Engineering,
Southeast University, Prof. Xinwen Fu from the Miner School of
Computer & Information Sciences, University of Massachusetts Lowell,
and Yonghuan Xu from School of Cyber Science and Engineering,
Southeast university.
Yonghuan also provided support in fixing the vulnerability. Thank you
very much!
To reduce the probability of hitting other problems in path folding,
we also merged the pull-request to completely avoid path folding at
HTL 17 or higher.
Thank you for using Freenet!
AB
Developer changelog:
2023-02-28
Changes in 1497:
This release fixes a severe vulnerability in path folding that allowed
to distinguish between downloaders and forwarders with an adapted
node that is directly connected via opennet.
This vulnerability was reported to the Project by Prof. Ming Yang and
Prof. Zhen Ling from the School of Computer Science and Engineering,
Southeast University, Prof. Xinwen Fu from the Miner School of
Computer & Information Sciences, University of Massachusetts Lowell,
and Yonghuan Xu from School of Cyber Science and Engineering,
Southeast university.
Yonghuan also provided support in fixing the vulnerability. Thank you
very much!
To reduce the probability of hitting other problems in path folding,
we also merged the pull-request to completely avoid path folding at
HTL 17 or higher.
Due to changes in the infrastructure, this release has to re-use the
Windows Installer from 1496, so newly installed nodes on Windows will
still be vulnerable for a few minutes after installation until they
auto-update. This should get fixed in 1498.
Besides this change, there’s a German translation fix by an anonymous
contributor: Email → E-Mail.
And a fix for a test that points towards the need to check the
compression code on newer JDKs.
- AB
[include shortlogs of any installer or plugin changes]
---
Arne Babenhauserheide (3):
Fix l10n: Email → E-Mail. Anonymous contribution - thank you!
re-add delay; check noderef to match RequestHandler.finishOpennetInner
Do not send a duplicate Ack on path folding — thanks to Yonghuan
Arne Babenhauserheide (freenet releases) (2):
Update default bookmark editions
Build 1497
Matthew Toseland (5):
Don't relay noderefs at high HTL
Don't accept noderefs either at high HTL
Missing return, oops
Comments
Replace outdated comment with an assertion
Veniamin Fernandes (1):
Fix compression result comparison in the GzipCompressorTest for newer JDKs
Assets
11
1
chromer030 reacted with thumbs up emoji
All reactions
1 reaction
1 person reacted
build01496
07 Jan 01:45
ArneBab
build01496
This tag was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
8b4a699
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
build01496
2023-01-07
Freenet 0.7.5 build 1496 is now available.
Fix keepalive
-------------
This fixes breakage in keepalive by ignoring a negative maxsize.
This was broken by a fix to the client
to actually honor the maxsize which was ignored before,
so ignoring invalid values provides a compatibility layer
for old plugins.
Update translations
-------------------
Imported updated translations from transifex.
The biggest changes were done by the Russian team,
adding or updating almost 200 translations.
The German team changed over 70 translations.
And 1 to 7 changes were done by teams
es, fa, fi, fr, hu, it, ja, nb-no,
nl, pt (br and PT), sv, zh-cn and zh-tw.
A big thank you for your work!
Bookmark curation
-----------------
Replaced the unmaintained freemail site in the default bookmarks
by a maintained one — thanks to Cynthia!
Further changes
---------------
- add meta charset tests
- add missing test annotations — thanks to vwoodzell!
Thank you for using Freenet!
- AB
Developer changelog:
2023-01-07
Changes in 1496:
- fix keepalive regression — thanks to PlantEater for tracking it down and fixing it!
- fix negative maxsize per new fetch override
- also override maxTempLength
- LowLevelGetException also return the throwable because the error doesnt help, the real gets hidden
- update translations, thanks to the translators on transifex, especially the Russian ones!
- add meta charset tests
- replace unmaintained freemail site by maintained one — thanks to Cynthia!
- add missing test annotations — thanks to vwoodzell!
- AB
---
Arne Babenhauserheide (5):
Add meta Charset tests
bookmarks: replace unmaintained freemail site by maintained one — thanks to Cynthia!
fix: actually detect charset
de-horrify test :-)
CONTRIBUTING.md with easy to work with rule
Arne Babenhauserheide (freenet releases) (5):
update translations
remove more references to Frost from translations
update news
Update default bookmark editions
Build 1496
PlantEater (1):
- fix negative maxsize per new fetch override - also override maxTempLength - LowLevelGetException also return the throwable because the error doesnt help, the real gets hidden
Vaughan Woodzell (1):
Add missing test annotations
Assets
11
1
d0p1s4m4 reacted with thumbs up emoji
All reactions
1 reaction
1 person reacted
Freenet 0.7.5 build 1495
03 Dec 13:40
ArneBab
build01495
This tag was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
623e592
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
Freenet 0.7.5 build 1495
2022-12-29
Freenet 0.7.5 build 1495 is now available with many improvements.
New users
There is a new firsttime wizard for single-step setup, contributed
by redwerk and finally merged after resolving dependency-requirements.
To further ease the start, the bookmarks are re-organized with
"starting points" at the top.
User experience
For integration in browser extensions, TheSeeker added support for
the schemes web+freenet and ext+freenet which do not need further
allow-listing by browsers to use.
CometZ@6DtYG~ created a new theme sky-dark-static, a clean dark scheme,
simpler than Winterfacey.
To enable more beautiful Freesites, Spider Admin, naejadu and vwoodzell
extended the CSS filter to enable sticky, transition, and word-wrap.
The m3u-player is now only inserted into sites which contain at least
one video or audio tag. When a part of a stream fails, it is now skipped,
allowing for continuous playback without user-intervention.
Performance
For better lifetime of larger files, the healing size is increased
from 16 to 256 MiB, so a 512 MiB file will keep working if accessed
once every 10 days. To keep alive files explicitly, you can use the
keepalive plugin.
And the pending keys optimizations by Eleriseth should reduce the CPU
load on very fast nodes with many peers.
Further technical improvements
finally merged the HashingAPI by unixninja92, a GSoC project that had
gotten lost in the pull requests. This provides an easy and
well-tested way to create and verify different types of Hashes from byte
arrays, including Sha256 and TigerTree.
#258
old announcement fixes by toad were finally merged
unit tests were upgraded to junit4, thanks to vwoodzell!
the client getter method now honors the max size argument
Thank you for using Freenet!
Assets
20
All reactions
build01494: 2022-06-25
24 Jun 23:29
ArneBab
build01494
This tag was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
684b47a
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
build01494: 2022-06-25
Freenet 0.7.5 build 1494 is now available.
This build improves four broad areas:
streaming on demand,
configuration,
security, and
bugfixes.
Streaming provides improved video and audio:
Video sizes are more robust when the size changes between subsequent videos.
Audio tags no longer try to display the overlay.
This finally enables convenient Samizdat Radio
To help modernize the configuration of existing nodes,
Freenet now shows a user alert once every Freenet update if the datastore is
below 10% of available space with a link to the store size wizard page
to make it easy to increase the store. Thanks to Trivuele!
Also the bandwidth settings now parse the bit suffix correctly
(lowercase b in kbps is bit, not byte).
The security received improvements both for friend to friend mode,
for opennet, and to tools for Freesites:
Friend-to-Friend mode now randomizes pitch black defense times
and waits at least 12 hours between pitch black mitigations
to prevent timing attacks.
Opennet is hardened by disabling the write local to datastore
functionality when opennet is enabled; it can be useful on a
small darknet, but on opennet it makes it easier to find downloaders.
Thanks to Trivuele!
Also a FOAF mitigation was fixeb that wasn't operational, because it lacked
a conversion to percent. Thanks to freedom-of-depression!
The /imagecreator/ tool, among other changes, now ensures
that requested image sizes are sane — thanks to Oleh from Redwerk
Finally it’s now easier to build fred without network access. Thanks to Trivuele!
In addition to these improvements, bugs got fixed:
fix build with modern Java: add opens jvmargs on java 17.
remove Frost on ChatForumsToadlet from non-updated translations
(removed 2019 from the original english).
fix parts of the German translation.
Do not store blocks in the cache, if they are eligible for the store
(should increase usable cache size). Thanks to Trivuele!
A big thank you to all contributors and reviewers
for getting this release in shape!
And thank you for using Freenet!
AB
Developer changelog:
2022-06-24
Changes in 1494:
Show a user alert (once every Freenet update) if the datastore is
below 10% of available space with a link to the store size wizard page
to make it easy to increase the store ― thanks to Trivuele
Do not store blocks in the cache, if they are eligible for the store
(should increase usable cache size) thanks to Trivuele
m3u-player: more robust sizes, do not use overlay for audio. This
finally enables convenient Samizdat Radio
randomize pitch black defense times and wait at least 12 hours
between pitch black mitigations to prevent timing attacks
bandwidth settings: parse bit suffix correctly
improve /imagecreator/ thanks to Oleh from Redwerk
Disable write local to datastore functionality when opennet is
enabled; it can be useful on a small darknet, but on opennet it
makes it easier to find downloaders. thanks to Trivuele
make it easier to build fred without network access thanks to Trivuele
fix build with modern Java: add opens jvmargs on java 17
fix: a FOAF mitigation wasn t operational, because it lacked a
conversion to percent. thanks to freedom-of-depression
remove Frost on ChatForumsToadlet from non-updated translations
(removed 2019 from the original english)
fix parts of the German translation
AB
Arne Babenhauserheide (12):
randomize pitch black defense times
remove unnecessary import
remove more unnecessary imports
use UTC clock
wait at least 12 hours between pitch black mitigations
bandwidth: parse bit suffix correctly
fix parts of de-translation
remove Frost on ChatForumsToadlet from non-updated translations (removed 2019 from the original english)
add opens jvmargs on java 17
m3u-player: more robust sizes, do not use overlay for audio.
remove old unconditional logging line that has been ignored for a decade now and pollutes the log
change misleading naming — thanks to Steve for the review!
Arne Babenhauserheide (freenet releases) (4):
Update default bookmark editions
updated NEWS
updated NEWS
Build 1494
Oleh Shklyar (12):
allow /imagecreator/?width=200&height=100&text=200x100 url from freesites
Path availability Fix (using link filter)
Validate image size
Optimization of maximum font size algorithm
Validate image size
Clean
Clean
Timestamp
ImageCreatorToadletTest
Removed alignment using spaces
To date, there is no reason to open access
Reducing opened API
Trivuele (6):
Make it easier to build without network access
Allow only doing a single wizard step
User alert if datastore is below 10% of available space -- rebased without new datastore settings
Disable write local to datastore functionality when opennet enabled
Nothing ever triggers onAbortDownstreamTransfers()
Stop storing blocks twice
freedom-of-depression (1):
fix FOAFMitigationHack
What's Changed
Allow ImageCreator url from freesites by @Olezha in #682
randomize pitch black defense times by @ArneBab in #747
bandwidth: parse bit suffix correctly by @ArneBab in #764
Propagate translation changes by @ArneBab in #767
m3u-player: more robust sizes, do not use overlay for audio. by @ArneBab in #768
add opens jvmargs when building on java 17 by @ArneBab in #769
remove old unconditional logging line that has been ignored for a dec… by @ArneBab in #770
fix FOAFMitigationHack by @ArneBab in #772
Trivuele batch 1 v3 by @ArneBab in #776
Stop storing blocks twice by @ArneBab in #779
Full Changelog: build01493...build01494
Contributors
ArneBab and Olezha
Assets
18
All reactions
testing 1494 pre-1: optimization and safety
18 Jun 17:59
ArneBab
build01494-pre1
e6877ef
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
testing 1494 pre-1: optimization and safety
Pre-release
Pre-release
1494 Testing release
Assets
11
❤️
1
yashwant975 reacted with heart emoji
All reactions
❤️
1 reaction
1 person reacted
build01493: 2022-03-28
29 Mar 06:03
ArneBab
build01493
This tag was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
95b91d6
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
build01493: 2022-03-28
Freenet 0.7.5 build 1493 is now available. [overview]
This build provides four core improvements:
Curated default bookmarks, including an actively maintained index and Shoeshop for sneakernet
Better peer scaling for very fast nodes
Updated defaults to adapt to the higher capacities of modern systems.
Compatibility with Java 17, first in the installers, with the following update for all nodes
The curated default bookmarks provide a much better first-start
experience. Previously new users saw mostly outdated sites in
inactive indexes.
Adding Shoeshop to enable sneakernet which can connect separate
Freenet networks even if no internet connection can be established
now provides all the tools for selfpublishing, not only in the
style of publishing an online blog (which is already easy with
Sharesite) or sending a file to an independent printer, but in the
much more self-reliant style, resourcefulness and rebellious spirit
of classical samizdat.
Adjusted peer-scaling fixes a conceptual problem: Fast nodes could
not utilize their bandwidth well enough, because the previous
peer-scaling did not take the aggregated bandwidth limit of the
peers into account. Now very fast nodes have linearly scaling
peer-counts to make it more likely that the capacity of their peers
added together matches the capacity of the fast node. The absolute
upper limits stay in place, because they are needed to preserve
privacy. There are also no changes to the peer-scaling of slower
nodes.
The fixed scaling should improve the performance of the whole
network because it avoids creating artificial bottlenecks.
Changes to the defaults are a doubled thread limit of newly
installed nodes (increased from 500 to 1000), with the stack size
per thread reduced by half to avoid higher memory consumption, the
datastore size is increased from 20GiB to 100GiB, because SSDs are
much faster and more resilient than before, and the default
bandwidth to offer if the actual speed cannot be found is doubled
to 32KiB/s.
These newer defaults should also improve the first-time user
experience.
Compatibility with Java 17 took longer than we hoped, because it
required deploying a newer wrapper and changes to the classpath.
This makes it easier to support packages for modern Linux, and it
should avoid losing nodes when Java updates itself (starting from
the next update this also applies to existing nodes; we have to
deploy the update code in 1493 so it can run during the update to
1494).
All together these changes should improve the user experience for
new people, give sneakernet the visibility it deserves, and
increase the performance of the network as a whole.
And last, but definitely not least, our translation team at
transifex updated enough of the the German, Persian, Finnish,
Italian, Japanese, Norwegian, Portuguese, Russian, and Swedish
texts in Freenet that we can ship the new versions. Thank you
very much!
That Freenet can keep moving forward and help people worldwide to
exercise their basic rights and freedoms is the work of amazing
volunteers, both contributors and people running Freenet nodes.
Thank you for your contributions, and thank you for using Freenet!
AB
Developer changelog:
2022-03-28
Changes in 1493:
Update the wrapper files in dependencies.properties to 3.5.30
This change sets a consistent wrapper-version for Windows, *Nix, and
also OSX, thanks to operhiem1 for the review
Pseudonymous people found found a bug in our splitfile inserter that
TheSeeker tracked down to its source. It threw an exception if the
checksum was exactly [0,0,0,0], thanks to operhiem1 for the review
Update default bookmarks: Replace inactive indexes, add Shoeshop,
show active sites first. Thanks to AC4BB21B for the review!
Fix FreenetURI intern() to not forget edition of USK — thanks to
debbiedub!
Replace Pointer.SIZE with Native.POINTER_SIZE for JNA 5.x — thanks
to Leo3418 and Bombe
fix peer scaling for very fast peers:
Very fast nodes have more peers to fix a conceptual mistake
(did not take the aggregated bandwidth limit of the peers into account).
Thanks to TheSeeker for the review!
more resilient noderef parsing for easier friend-to-friend connections
try replacing spaces by newlines in noderefs when parsing fails
Accept FreenetURI in add peer field; only try regular url on failure
— thanks to desyncr for the review
Add warning about surveillance through voice recognition tech
Updater changes to add Java 17 support for existing nodes to
wrapper.conf (required module opens for Java 17 to wrapper.conf)
during the following update (to 1494)
add output of filtered file to the OggFilterTest
Installer changes:
Java 17 support
increase default datastore size to 100GiB, because SSDs are much
faster today
Set standard thread limit to 1000
decrease default thread stack size for reduced memory usage
(512KiB)
Increase default bandwidth to 32KiB/s. This should improve
performance for new nodes where UPnP does not give the speed.
thanks to operhiem1 for the review
AB
Changes in the installers:
java-installer:
Arne Babenhauserheide (8):
wrapper.conf: open the modules required for Java 16 and Java 17
wrapper.conf: increase count for commented out args, too
decrease per-thread stacksize to 256k
Get and load sharesite by default instead of ThawIndexBrowser
increase default max memory limit to 768 for computers with more than 4GiB of memory
fix: no equal sign after Xss
512k thread stack
update wrapper.jar, binaries and libs to upstream version 3.5.30
update jna on classpath when run without wrapper to 4.5.2
Arne Babenhauserheide (freenet releases) (3):
Merge branch 'TheSeeker-patch-1' into next
Merge branch 'next' of github.com:freenet/java_installer into next
detect Java 9 to 18
TheSeeker (1):
update jna dependency versions
wininstaller-innosetup:
Arne Babenhauserheide (8):
Update wrapper.conf
decrease per-thread stacksize to 256k
fix: no equal sign after Xss
only set Java 9+ options on w64
also lookup java 64 under non-explicit 64 key
allow 1024 MiB of memory on a machine with more than 4GiB
update the wrapper to the build with Java 9+ support created by Steve in 2018
remove 32bit note for Java installer (because it is no longer correct)
Arne Babenhauserheide (freenet releases) (11):
Update bundled JRE to 10.0.2 for Windows x64
reference zip, not exe
declare var
{tmp}\ so this is not empty
note why zip
Merge branch 'innosetup-windows-x64-support' of https://github.com/desyncr/wininstaller-innosetup
Merge branch 'desyncr-innosetup-windows-x64-support'
end line with carriage return newline
update FreenetTray.exe to version from cc614654fe8a4ae1a22db9b67b7bdf012268590c support-java-registry-with-JRE
Merge branch 'master' of github.com:freenet/wininstaller-innosetup
note that gh actions runs can be retriggerd
DC* (6):
Reference bundled zip for extraction
Fix syntax error
Simplify command and remove unnecessary compression
Mistakenly removed fred_deps.iss
Pre-unpack jre zip before creating installer
Merge remote-tracking branch 'origin/master' into innosetup-windows-x64-support
Changes in fred:
Arne Babenhauserheide (33):
add output of filtered file to the OggFilterTest
fix peer scaling for very fast peers:
correctly mark bytes with uppercase b
fix: apply max peers after increasing targetPeers for fast nodes
add voice recognition warning
try replacing spaces by newlines in noderefs when parsing fails.
Accept FreenetURI in add peer field; only try regular url on failure
note effectively published field
actually replace instead of doing the wrong thing
actually working more liberal noderef parsing
add max size to the fetched noderef
add required module opens for Java 17 to wrapper.conf
increase default datastore size to 100GiB, because SSDs are much faster today
Set standard thread limit to 1000
Use Logger instead of System.out.println
make the 50% slow fraction assumption explicit
break long line
log after setting limit for consistency
update NEWS
update default bookmarks.
update NEWS
Increase default upload bandwidth if none detected to 32KiB/s
remove options with duplicated upload bandwidths.
delete l10n for no longer existing bookmarks
Add fetchpullstats to the bookmarks
Move inactive flogs to the end of the flog list
fix: this threw an exception if the checksum was exactly [0,0,0,0].
Update the wrapper files in dependencies.properties to 3.5.30
1493 NEWS
1493 NEWS
fix: NEWS structure was broken
typo
cleaner NEWS description and remove duplicate entry
Arne Babenhauserheide (freenet releases) (7):
Update default bookmark editions
Update default bookmark editions
Update default bookmark editions
Update default bookmark editions
NEWS changes
Update default bookmark editions
Build 1493
Debora Wöpcke (2):
Add test to verify that intern() does not modify an USK
Correct so that FreenetURI intern() doesn't forget suggestedEdition
Yuan Liao (1):
Replace Pointer.SIZE with Native.POINTER_SIZE for JNA 5.x
Assets
18
All reactions
build01493-pre1
20 Mar 18:47
ArneBab
build01493-pre1
9182aa4
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
build01493-pre1
Pre-release
Pre-release
Merge branch 'next' of github.com:freenet/fred into next
Assets
11
All reactions
Freenet build 1492: video, diagnostics, pitch black mitigation, and plugin updates
27 Oct 22:39
ArneBab
build01492
This tag was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
e3089e8
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
Freenet build 1492: video, diagnostics, pitch black mitigation, and plugin updates
Freenet 0.7.5 build 1492 is now available. [overview]
This release finalizes the mitigation of the pitch black attack
with a test that shows that the mitigation is effective at
reducing the impact of the attack and recovering from it.
This mitigation was sponsored by nlnet as part of the
Horizon 2020 program of the EU: https://nlnet.nl/project/Freenet-Routing/
The video-player was optimized to prevent most visual flickering.
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.
Thanks to DC*.
And several plugins received updates:
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.
Included Bugfixes if fred (the Freenet Reference Daemon):
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.
Sidenote: 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 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.
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
(only on clearnet, because the pull-requests are there):
https://github.com/freenet/wiki/wiki/Large-Pull-requests-that-need-work
We now also have a list of high-impact tasks:
USK@xPkwhS3czAr5oi6yNgLQ7Ld7RbUZuY6eGniS0n5FZtc,WXVIZrZyLlZugJgJKYvbF9SPfKAUAQX9gAX6g7FGNVE,AQACAAE/high-impact-tasks/0
That said: If someone asks you "what is Freenet", you could for example answer:
Freenet is a peer-to-peer platform for
censorship-resistant and privacy-respecting
publishing and communication.
or
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.
(source: https://www.igi-global.com/chapter/using-freenet-as-a-broker-for-multi-party-data-exchange-in-iot-for-health/257911 )
This is what Freenet already accomplished.
And we could only get this far together, because without users,
it is hard for sofware to make a difference.
Thank you for using Freenet!
Arne Babenhauserheide
Developer changelog:
2021-10-27
Changes in 1492:
Fred:
The diagnostics component provides thread runtime statistics. Thanks to DC*.
#727
The multi-node test to show that the mitigation against the pitch
black attack works.
#736
The m3u-player for video on demand over Freenet now prevents most
visual flickering.
#734
Clickable labels for checkboxes. Thanks to AC4BB21B.
#741
Fix: skip in support.io.SkipShieldingInputStream must return
non-negative. Thanks to dennisnez.
#737
Fix: NodeConfig was reading a particular config from default on every
start up. Thanks to desyncr.
#739
OpenJDK 16+ compat: add wrapper.conf argument to allow access to
internal openjdk modules.
#740
Fix: Correct "current size" option in Wizard => datastore size. Thanks to
AC4BB21B.
#742
Plugins:
KeyUtils:
Fix API call to allow compiling, and
Fix extra bytes display for composed SSK.
both thanks to TheSeeker.
hyphanet/plugin-KeyUtils#17
hyphanet/plugin-KeyUtils#16
Library:
search with unchecked boxes thanks to redwerk
hyphanet/plugin-Library#14 -
custom index docname thanks to TheSeeker
hyphanet/plugin-Library#18
Spider:
Fix writing to the bucket and Replace SortedIntSet thanks to redwerks
hyphanet/plugin-Spider#6
Fix build thanks to Juiceman
hyphanet/plugin-Spider#5
FlogHelper
Add new media tags in tool menu: audio and video thanks to
AlexandreRio
hyphanet/plugin-FlogHelper#19
(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. I polished our theme and the messaging on the index-page.
https://freenetproject.org/
Arne Babenhauserheide
Arne Babenhauserheide (20):
Update FlogHelper to version 36
m3u-player: prevent flickering on track-transitions by keeping the size fixed and overlaying an image of the video
Add real node pitch black mitigation test
pitch-black-mitigation: prevent undamped oscillations of the pitch-black-mitigation
document pitch black node test
fix error-prone clock usage
OpenJDK 16+ compat: add wrapper.conf argument to allow access to internal openjdk modules
wrapper.conf: only add --illegal-access=permit on java 9+
refactor (pull out function) and fix the width for even less flickering
make size preservation robust and flexible
use real sizes for canvas
simplify fixing the size during updates
alwag, always divide by explicit floats
add error handling
fix: supports modules should be true when the threshold version (9) is smaller or equal to the current version
Add note about RealNodePitchBlackMitigationTest.java to the simulator/readme.txt
add a SECURITY.md
note that there are no known unfixable identification attacks against F2F-mode, note sybil and restructure a bit
improve SECURITY.md
SECURITY.md: typo: tipps -> tips
Arne Babenhauserheide (freenet releases) (7):
update KeyUtils to 0.5.6 v5028 from commit 4c0b6e11ac66e781dbcb5a9a1ddabf351629c6b6
update Library to 37 from commit cd45f9a5634c82e693d5fe1a870ad6120b9fe980
update Library to 53 from commit c5367b4ceffb2f9a011d68cae0bb205933fe6033
update FlogHelper to actual 36 from commit 085e4edff9d96c344168bf983c27056a869f5770
Update default bookmark editions
Update default bookmark editions
Build 1492
DC* (56):
Add thread cpu to diagnostics
Add NodeDiagnostic module with NodeThreadDiagnostics
Don't use single class imports
Fix indentation
Don't use single class imports
Create Diagnostics component to be able to scale to support multiple diagnostics easily
Add license headers to new files
Move thread info building into its own method
Make NodeDiagnostics field private
Flatten NodeDiagnostics interface
Flatten NodeDiagnostics interface
Create NodeDiagnostics and ThreadDiagnostics interfaces and default implementations
Reduce visibility for fields in ThreadDiagnostics
Use atomicReference for nodeThreadInfo list
Use thread interval to build data points
Fix calculation CPU time percentage
Use NodeDiagnostics type interface rather than default implementation
Use DefaultNodeDiagnostics implementation
Remove unnecessary finals in contructor
Remove unnecessary throw exception
Remove unnecessary copy
Fix CPU time percentaje calculation
Use Comparator class to simplify threads sorting
Use single loop to calculate delta and display
Rename private field to follow convention
Show percentage cpu time between process threads
Separate presentation from actual data for NodeThreadInfo
Compute % CPU by calculate the total CPU time from all threads, not only nodestat's
Renaming internal variables
Re-introduce delta CPU Time and simplify code structure
Output formatting in DiagnosticToadlet
Handle case when thread.getThreadGroup returns null
Remove long -> double coercion Purge inactive threads from threadsCpu list
Use NodeThreadSnapshot to hold thread list, total CPU and interval
Update ConfigToadlet to support enabling/disabling node diagnostics module
Avoid unnecessary casting to double for getCpuTimeDelta
Declare interface rather than implementation
Clean up nodeConfig callback
Update configuration description
Check thread snapshot is available when displaying
Simplify description and normalize names
Clean up unnecessary space
Correct language and simplify terms
Fix grammar mistake on translation for DiagnosticsDescription
Calculate CPU time as % of wall time
Avoid possible race condition on start up
Add docblock to threadStats method
Fix tab vs space mix up
Remove unneccessary code style fixes
newline at end of line
Create threadSnapshot inner class to avoid pooler executor messing thread'...
Assets
11
1
desyncr reacted with hooray emoji
All reactions
1 reaction
1 person reacted
build01492-pre1: update FlogHelper to actual 36 from commit 085e4edff9d96c344168bf983c…
24 Oct 20:46
ArneBab
build01492-pre1
83d0564
This commit was signed with the committer’s verified signature.
ArneBab
Arne Babenhauserheide
GPG key ID: B41A6047FD6C57F9
Learn about vigilant mode.
Compare
Choose a tag to compare
View all tags
build01492-pre1: update FlogHelper to actual 36 from commit 085e4edff9d96c344168bf983c…
…27056a869f5770
Assets
10
1
desyncr reacted with hooray emoji
All reactions
1 reaction
1 person reacted
Previous 1 2 3 4 5 6 Next
Previous Next
Footer
© 2024 GitHub, Inc.
Footer navigation
Terms
Privacy
Security
Status
Docs
Contact
Manage cookies
Do not share my personal information
You can’t perform that action at this time.
Download
Download
Hyphanet
About
Volunteer
Documentation
Download
Help
Mastodon
Language
ru
fr
Download
Download and install Hyphanet:
For Windows
For macOS, GNU/Linux & POSIX
Hyphanet is free and open source software available under GPLv2+. The source code is on GitHub.
Windows
Download and run the installer (gpg signature; keyring)
Download Hyphanet for Windows
It will automatically install Hyphanet and other required components for you.
When done, your default browser will automatically open up to Hyphanet's
web-based user interface.
Hyphanet requires Windows 8.1 or later.
Free code signing provided by
SignPath.io, certificate by SignPath
Foundation.
Note: Once a Windows version reaches end of life, we do not guarantee
any longer support, or the fact that Hyphanet will install and/or work in
such environments. However, it is not mandatory that Hyphanet will not work
on an older Windows OS. We always strongly recommend you to take security
very seriously, and run up to date software that receives security updates,
to be on the safe side.
GNU/Linux & POSIX
Get the Java-based installer (gpg signature; keyring).
Download Hyphanet for GNU/Linux & POSIX
Run the file with Java, then follow the installer:
You need to have a recent Java Runtime Environment (JRE), for
example OpenJDK which can be obtained via your
package manager or from
https://adoptopenjdk.net.
Java version 9 or higher is required.
If there are problems, use the command line. This requires
wget which can be installed with a package manager, such as
sudo apt-get install wget on Debian or Ubuntu.
wget 'https://www.draketo.de/dateien/freenet/build01497/new_installer_offline_1497.jar' -O new_installer_offline.jar;
java -jar new_installer_offline.jar;
To install on a headless system, or if you get fontconfig problems, use the -console option and follow the prompts:
java -jar new_installer_offline.jar -console;
Note: We would love to have packages for most distributions. There
is a package for Gentoo, and a
Debian package. The debian
Package also works on WSL2 (but not WSL1). If you would like to help,
it would be much appreciated!
Note: On some systems (including FreeBSD and OpenBSD) the wrapper does
not work, unless you install additional software packages and configure it.
You can start Hyphanet manually there, but you then don’t have
auto-updates. After installation you find the relevant classpath
arguments in wrapper.conf. Then call java directly with a command like java -Xmx1500m -Xss512k -Dnetworkaddress.cache.ttl=0 -Dnetworkaddress.cache.negative.ttl=0 --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED -cp bcprov-jdk15on-1.59.jar:freenet-ext.jar:freenet.jar:jna-4.5.2.jar:jna-platform-4.5.2.jar:pebble-3.1.5.jar:unbescape-1.1.6.RELEASE.jar:slf4j-api-1.7.25.jar freenet.node.NodeStarter
Release Mirror
Our releases are provided via Lysator. You can try the
http mirror or the tor mirror
provided by Lysator.
Alternatively you can use the github release.
Mirrored installation
If you have a working Hyphanet installation directory that you have mirrored
from one Unix machine to another (e.g. via rsync or unison), enabling the
mirrored installation is not difficult. Nothing in a Hyphanet installation
cares about its host's IP address; it can't, or Hyphanet would fail on
machines that get IP addresses from a DHCP pool.
All you actually need to do is tell the system you've mirrored to that it
should start the Hyphanet proxy daemon for you on boot. Do crontab -l
on the source machine, find the line that is tagged "FREENET AUTOSTART" and
add that to your crontab on the mirrored machine.
However: each installation has a unique identity key generated at
installation time. If you try to run two instances with the same identity at
the same time, both proxy demons will become confused and upset. Don't do
this!
Using Hyphanet
Please try the step by step guide to setting up Hyphanet and various Hyphanet apps,
especially if installing on macOS.
We are not responsible for unofficial third party apps it recommends (including FMS),
but many Hyphanet users and developers use them.
Firewalls and routers
Hyphanet should work fine with most routers, but if you are having problems
and you have a firewall or router, click here for
some info.
So it's running, what do I do?
When the installer closes, it should open a browser window pointing to the
first-time wizard. Here you can configure basic settings, and then start
using Hyphanet. You can access Hyphanet later on via the system tray menu (
bottom right on the screen), or use the Browse Hyphanet shortcut on the
desktop and/or start menu. If it doesn't work, open
http://127.0.0.1:8888/ in your web browser.
For best security you should use a separate browser for Hyphanet, preferably
in privacy mode. On Windows, the system tray menu will try to use Chrome in
incognito mode if possible. Internet Explorer does not work well with
Hyphanet, Firefox and Opera are widely used.
If you know anyone running Hyphanet, you can improve your security and help to
build a robust network by connecting to their node. First, open the Add a
friend page. You and your friend should
each download their "node reference". Send the file to the other person,
and add his node reference using the form at the bottom of the page. When
both are added, your friend's node should show up on the Friends page,
probably as "CONNECTED" or "BUSY". You can set a name for your node on the
config page to make it easier to see who it is. Only add nodes run by people
you actually know, whether online or offline, as adding total strangers
harms performance and does not improve security much (they could be the bad
guys!).
So I'm connected, what do I do?
Hyphanet itself includes anonymous websites ("freesites"), filesharing,
searching, and more, but you can also use third party applications for chat,
filesharing, to help you upload freesites, etc.
The Hyphanet Social Networking Guide explains
how to set up the main third party tools, including email, forums and
micro-blogging (Sone, a bit like twitter).
It doesn't work, now what?
If you have problems installing or running Hyphanet, please see the knowledge base, FAQ, chat, or mailing list.
Hardware requirements
Generally a 1GHz processor and 1GB of RAM should be fine. Hyphanet will run on
smaller systems, but it uses at least 128MB of RAM, so unless the system does
nothing else it will struggle in less than 512MB. However, the processor is
less of a problem, people have been known to run it on 400MHz Pentium 2's or
ATOM's, although downloads and browsing would be slow.
Hyphanet will use a portion of your disk for storing data, you can configure
this to any size from 100MB upwards, but we recommend at least 1GB. Hyphanet
also uses disk space for your downloads. Hyphanet's memory usage is
approximately 256MB plus 400kB for every 2GB of datastore.
On 64-bit Windows, we will install a 32-bit Java Virtual Machine because of
limitations of the Java Service Wrapper.
Upgrading
Hyphanet provides an upgrade-over-Hyphanet mechanism: It will keep itself up to
date automatically from other Hyphanet nodes, and this will normally work even
if it is unable to route to them due to them being too new. This is anonymous
and secure, and we recommend people use it. However, if something is severely
broken, you can upgrade your node manually from our servers:
Windows users can upgrade to the latest-stable Hyphanet release
by running update.cmd in the Hyphanet directory.
macOS, GNU/Linux, or other POSIX users may upgrade by running the update.sh
shell script in the Hyphanet directory.
Add friends (or connect to strangers)
If you know other people who also use Hyphanet, you can add them as Friends.
This will make you safer against attacks on Hyphanet Project infrastructure
(the seednodes).
Once you are connected to 5 or more friends, you can enable high security mode.
In high security mode Hyphanet will only connect to your friends.
This makes your usage of Hyphanet almost undetectable,
but you are still able to access the rest of the network through your friends' friends friends ....
You don't have to add friends right now.
If you use a "low" or "normal" security level Hyphanet will automatically connect to strangers and will work just fine.
However, your (or someone else's) government may be able to find out who you are with enough effort. Be careful!
Verifying Signatures
Download the Hyphanet Project signing keys and import them into your keyring:
pub 2048R/0xEAC5EBF07AA9C2A3 2013-04-29
Key fingerprint = DBB7 7338 3BC3 49C9 5203 ED91 EAC5 EBF0 7AA9 C2A3
pub 4096R/0x00100D897EDBA5E0 2013-09-21 [expired: 2016-09-08]
Key fingerprint = 0046 195B 2DCA B176 D394 09CD 0010 0D89 7EDB A5E0
uid Steve Dougherty (operhiem1 Release Signing Key)
sub 4096R/0x7BF0F7B36AC8B380 2013-09-21 [expired: 2016-09-15]
pub 4096R/0xFF24CA421946AA94 2013-09-24 [expires: 2018-09-23]
Key fingerprint = B76D 4AA7 96D8 403E ED78 C9F9 FF24 CA42 1946 AA94
uid Matthew Toseland (2013-2018 key, higher key length)
uid Matthew Toseland (2013-2018 key, higher key length)
sub 4096R/0xF877E62895C42009 2013-09-24 [expires: 2018-09-23]
pub 4096R/0xB67C19E817A8D846 2016-01-02 [expires: 2018-01-03]
Key fingerprint = 5D77 D9A4 2E28 0F5A FF8F 2EBF B67C 19E8 17A8 D846
uid Stephen Oliver
sub 4096R/0x9BCDD1614041F59E 2016-01-02 [expires: 2018-01-03]
sub 4096R/0x1652EBA5AC1BB386 2016-01-02 [expires: 2018-01-03]
sub 4096R/0x38A62E479684F2F2 2016-01-02 [expires: 2018-01-03]
pub 4096R/0xB41A6047FD6C57F9 2017-02-23
Key fingerprint = B30C 3D91 069F 81EC FEFE D0B1 B41A 6047 FD6C 57F9
uid Arne Babenhauserheide (freenet releases)
uid Arne Babenhauserheide (ArneBab)
Hyphanet
Navigate with Freedom
Mastodon
gro.tcejorpteneerf@sserp
gro.tcejorpteneerf@troppus
IRC: #freenet on irc.libera.chat
Licensed under the GDFL. Website source repository
Freenet
Freenet
Google+
Freenet
About
Volunteer
Documentation
Donate
Download
Help
Language
en
zh-tw
fr
es
Freenet
Browse websites, post on forums, and publish files within Freenet with strong privacy protections.
下载
Get the software
Learn
Learn to protect your privacy
捐款
Give to protect online privacy and internet freedom
贡献
Work to protect online privacy and internet freedom
More
What is Freenet
Freenet is a peer-to-peer platform for censorship-resistant communication and publishing.
下载
Freenet Features
Browse websites, post on forums, and publish files within Freenet with strong privacy protections.
秘密身份
Create yours so nobody knows who you are
浏览网站
Freenet is home to sites ranging from programming to sustainable living
论坛
Ask questions and exchange ideas
平台
Build your own decentralized application on the Freenet platform
What's New
News about Freenet, internet freedom and privacy rights.
Freenet build 1485 released
2020-02-14
Freenet 0.7.5 build 1485 is now available.This release adds checking for Ogg Theora video files thanks to redwerk: Freenet can now display video safely.For files whose size does not shrink a lot by compression, compression is now skipped. This should...
Details
Statistical results without false positives check are most likely wrong
2019-09-09
Like every other privacy network, Freenet is a target of statistical attacks to trace the activity of its users.Studies that investigated tracing Freenet users were built on unrealistic idealized setups or simplistic routing, so that their results...
Details
Freenet build 1484 released
2019-03-23
Freenet 0.7.5 build 1484 is now available.This release fixes the last blocking problems with the new build based on gradle and JNA and adds new features.Thesnark discovered a way to circumvent the content filter, which was fixed by operhiem1. This bug...
Details
Freenet build 1483 released
2018-11-18
Freenet 0.7.5 build 1483 is now available. [overview]This build is the second step to fix increased resource consumption in release 1481: the peer count is reduced.the thread priority on Windows is below normal instead of background. There were many...
Details
News Archives
Why we do this
I worry about my child and the Internet all the time, even though she's too young to have logged on yet. Here's what I worry about. I worry that 10 or 15 years from now, she will come to me and say Daddy, where were you when they took freedom of the press away from the Internet
Mike Godwin / Electronic Frontier Foundation
Freenet
Navigate with Freedom
Google+
1,058 Followers
1,042 Likes
gro.tcejorpteneerf@sserp
gro.tcejorpteneerf@troppus
IRC: #freenet on chat.freenode.net
© Copyright The Freenet Project Inc. | All Rights Reserved
The Freenet Project · GitHub
The Freenet Project · GitHub
Skip to content
Toggle navigation
Sign in
freenet
Product
Actions
Automate any workflow
Packages
Host and manage packages
Security
Find and fix vulnerabilities
Codespaces
Instant dev environments
Copilot
Write better code with AI
Code review
Manage code changes
Issues
Plan and track work
Discussions
Collaborate outside of code
Explore
All features
Documentation
GitHub Skills
Blog
Solutions
For
Enterprise
Teams
Startups
Education
By Solution
CI/CD & Automation
DevOps
DevSecOps
Resources
Learning Pathways
White papers, Ebooks, Webinars
Customer Stories
Partners
Open Source
GitHub Sponsors
Fund open source developers
The ReadME Project
GitHub community articles
Repositories
Topics
Trending
Collections
Pricing
Search or jump to...
Search code, repositories, users, issues, pull requests...
Search
Clear
Search syntax tips
Provide feedback
We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
Sign up
You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
The Freenet Project
Declare your Digital Independence
294
followers
United States of America
https://freenet.org/
X
@freenetorg
Overview
Repositories
Projects
Packages
People
More
Overview
Repositories
Projects
Packages
People
Popular repositories
freenet-core
freenet-core
Public
Declare your digital independence
Rust
2k
66
freenetorg-website
freenetorg-website
Public
The code behind https://freenet.org/ and https://staging.freenet.org/
JavaScript
7
2
kweb-up-poc
kweb-up-poc
Public
Proof of concept of new Freenet UI based on Kweb
4
1
freenet-stdlib
freenet-stdlib
Public
Freenet development standard library
Rust
2
4
able-templates
able-templates
Public
1
websitemirror
websitemirror
Public
Repositories
Type
Select type
All
Public
Sources
Forks
Archived
Mirrors
Templates
Language
Select language
All
JavaScript
Rust
Sort
Select order
Last updated
Name
Stars
Showing 6 of 6 repositories
freenet-core
Public
Declare your digital independence
Rust
2,001
Apache-2.0
66
30
(2 issues need help)
10
Updated Mar 3, 2024
freenetorg-website
Public
The code behind https://freenet.org/ and https://staging.freenet.org/
JavaScript
7
AGPL-3.0
2
7
1
Updated Feb 26, 2024
freenet-stdlib
Public
Freenet development standard library
Rust
2
Apache-2.0
4
0
0
Updated Feb 18, 2024
websitemirror
Public
0
Apache-2.0
0
0
0
Updated Jan 26, 2024
able-templates
Public
1
Apache-2.0
0
0
0
Updated Dec 2, 2022
kweb-up-poc
Public
Proof of concept of new Freenet UI based on Kweb
4
GPL-3.0
1
0
0
Updated Oct 26, 2018
People
Top languages
Rust
JavaScript
Most used topics
Loading…
Footer
© 2024 GitHub, Inc.
Footer navigation
Terms
Privacy
Security
Status
Docs
Contact
Manage cookies
Do not share my personal information
You can’t perform that action at this time.
Introduction - Freenet Manual
Introduction - Freenet Manual
1. IntroductionComponents2. Overview3. Contracts4. Delegates5. User InterfacesArchitecture6. P2P Network7. Intelligent RoutingDeveloper Guide8. Tutorial: Create an App9. Contract interfaces10. freenet.toml formatExamples11. Antiflood Tokens12. Blind Trust TokensCommunity and Support13. CommunityReference14. Glossary
Light
Rust
Coal
Navy
Ayu
Freenet Manual
Introduction
Freenet is a distributed, decentralized alternative to the centralized World
Wide Web, designed to unleash a new era of innovation and competition, while
protecting freedom of speech and privacy.
At the core of Freenet is the Freenet kernel, which runs on users' computers,
smartphones, or other devices. The kernel is tiny, less than 5 MB, allowing it
to be installed in a matter of seconds and is compatible with a wide range of
hardware.
Freenet is a peer-to-peer network, which means
that computers that are part of the network self-organize into a global network
without any central authority, and the work of hosting services is distributed
among the users.
Freenet
netThis page is built with Kweb, which
requires JavaScript to be enabled. Freenet Dev FAQ BlogDeclare your digital independenceThe centralization of the internet poses a fundamental threat to individual freedom. In 2024, a few corporations control most internet services and infrastructure. These corporations wield immense power over most of us with little accountability, enabling them to censor content, exploit our data, and exclude users from services they depend on —all with profound implications for democracy. We need a solution urgently.
Introducing Freenet — a decentralized replacement for the world wide web. Acting as a global, shared, decentralized computing platform, Freenet can either be accessed via a standard web browser or integrated into third-party applications.
Freenet is not merely a tool for developers; it offers a pathway for anyone seeking greater control and freedom in their digital interactions. You can build or use decentralized services for messaging, social media, email, and e-commerce. These applications are designed for scalability and interoperability, secured through modern cryptographic techniques.
Watch Ian's TalkRead User ManualChat on MatrixVisit GitHubLatest News
September 7th, 2023 - Talk + Q&A - Building Decentralized Software on Freenet - X / YouTube / Rumble
June 9, 2023 - AmA with Ian about Freenet on r/privacy subreddit
May 20, 2023 - Freenet on the front page of Slashdot
May 19, 2023 - Freenet on Hacker News
May 6, 2023 - Freenet makes the front page of r/programming
GitHub - freenet/freenet-core: Declare your digital independence
GitHub - freenet/freenet-core: Declare your digital independence
Skip to content
Toggle navigation
Sign in
Product
Actions
Automate any workflow
Packages
Host and manage packages
Security
Find and fix vulnerabilities
Codespaces
Instant dev environments
Copilot
Write better code with AI
Code review
Manage code changes
Issues
Plan and track work
Discussions
Collaborate outside of code
Explore
All features
Documentation
GitHub Skills
Blog
Solutions
For
Enterprise
Teams
Startups
Education
By Solution
CI/CD & Automation
DevOps
DevSecOps
Resources
Learning Pathways
White papers, Ebooks, Webinars
Customer Stories
Partners
Open Source
GitHub Sponsors
Fund open source developers
The ReadME Project
GitHub community articles
Repositories
Topics
Trending
Collections
Pricing
Search or jump to...
Search code, repositories, users, issues, pull requests...
Search
Clear
Search syntax tips
Provide feedback
We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
Sign up
You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
freenet
/
freenet-core
Public
Notifications
Fork
66
Star
2k
Declare your digital independence
freenet.org/
License
Apache-2.0, MIT licenses found
Licenses found
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
2k
stars
66
forks
Branches
Tags
Activity
Star
Notifications
Code
Issues
30
Pull requests
10
Discussions
Actions
Projects
0
Wiki
Security
Insights
Additional navigation options
Code
Issues
Pull requests
Discussions
Actions
Projects
Wiki
Security
Insights
freenet/freenet-core
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
mainBranchesTagsGo to fileCodeFolders and filesNameNameLast commit messageLast commit dateLatest commit History2,178 Commits.github.github appsapps cratescrates dockerdocker docsdocs modulesmodules network-monitornetwork-monitor schemas/flatbuffersschemas/flatbuffers scriptsscripts stdlib @ f28e671stdlib @ f28e671 teststests .gitignore.gitignore .gitmodules.gitmodules Cargo.lockCargo.lock Cargo.tomlCargo.toml LICENSE-APACHELICENSE-APACHE LICENSE-MITLICENSE-MIT README.mdREADME.md View all filesRepository files navigationREADMEApache-2.0 licenseMIT license
Freenet
The Internet has grown increasingly centralized over the past two decades, such
that a handful of companies now effectively control the Internet infrastructure.
The public square is privately owned, threatening freedom of speech and
democracy.
Freenet is a software platform that makes it easy to create decentralized
alternatives to today's centralized tech companies. These decentralized apps
will be easy to use, scalable, and secured through cryptography.
To learn more about Freenet as a developer read The User
Manual. For an introduction to Freenet watch Ian's
talk and Q&A - YouTube /
Vimeo.
Status
Freenet is currently under development. Using our development
guide, developers can experiment with
building decentralized applications using our SDK and testing them locally.
Applications
Examples of what can be built on Freenet include:
Decentralized email (with a gateway to legacy email via the @freenet.org
domain)
Decentralized microblogging (think Twitter or Facebook)
Instant Messaging (Whatsapp, Signal)
Online Store (Amazon)
Discussion (Reddit, HN)
Video discovery (Youtube, TikTok)
Search (Google, Bing)
All will be completely decentralized, scalable, and cryptographically secure. We
want Freenet to be useful out-of-the-box, so we plan to provide reference
implementations for some or all of these.
How does it work?
Freenet is a decentralized key-value database. It uses the same small
world routing algorithm as
the original Freenet design, but each key is a cryptographic contract
implemented in Web Assembly, and the value
associated with each contract is called its state. The role of the
cryptographic contract is to specify what state is allowed for this contract,
and how the state is modified.
A very simple contract might require that the state is a list of messages, each
signed with a specific cryptographic keypair. The state can be updated to add
new messages if appropriately signed. Something like this could serve as the
basis for a blog or Twitter feed.
Freenet is implemented in Rust and will be available across all major operating
systems, desktop and mobile.
What is Locutus?
Locutus was the working title used for this successor to the original Freenet,
in March 2023 it was renamed to "Freenet", this repository was
renamed from locutus to freenet-core in September 2023.
What is Hyphanet?
The original Freenet codebase is now called Hyphanet. It is still actively
developed by the same maintainers as before, and is available
here.
Stay up to date
Chat with us
We're in #freenet-locutus on
Matrix. If you have questions you can also ask
here.
Many developers are active in r/freenet,
but remember that Reddit engages in political and ideological censorship so
don't make this your only point of contact with us.
Acknowledgements and Funding
Protocol Labs
In addition to creating the excellent
libp2p which we use for low-level
transport, Protocol Labs has generously supported our work with a grant.
FUTO
FUTO has generously awarded Freenet two Legendary Grants to support Freenet
development.
Supporting Freenet
If you are in a position to fund our continued efforts please contact us on
twitter or by email at ian at freenet dot
org.
License
This project is licensed under either of:
Apache License, Version 2.0, (LICENSE-APACHE or
http://www.apache.org/licenses/LICENSE-2.0)
MIT license (LICENSE-MIT or
http://opensource.org/licenses/MIT)
About
Declare your digital independence
freenet.org/
Topics
rust
cryptography
privacy
decentralized
p2p
distributed-hash-table
freenet
Resources
Readme
License
Apache-2.0, MIT licenses found
Licenses found
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Activity
Custom properties
Stars
2k
stars
Watchers
45
watching
Forks
66
forks
Report repository
Releases
1
v0.0.6
Latest
Sep 29, 2023
Sponsor this project
Contributors
20
+ 6 contributors
Languages
Rust
94.7%
TypeScript
4.2%
Makefile
0.6%
JavaScript
0.2%
Dockerfile
0.1%
Shell
0.1%
Other
0.1%
Footer
© 2024 GitHub, Inc.
Footer navigation
Terms
Privacy
Security
Status
Docs
Contact
Manage cookies
Do not share my personal information
You can’t perform that action at this time.