/r/Freenet

Photograph via snooOG

A platform for censorship-resistant communication and publishing.

Freenet project links

  • freenet.org - Official website, focused on the new version of Freenet (formerly "Locutus")

  • hyphanet/fred - Fred, the original codebase now spun-out into an independent project called Hyphanet

Rules:

  • Stay on-topic, this is for discussion of Freenet and Hyphanet
  • No trolling, disagreement is fine but be civil

/r/Freenet

5,268 Subscribers

6

Document that describes the "why" behind Contracts etc.

I have watched several of Ian's videos that describe that Freenet is a Key/Value store where the Key is a hash of the WebAssembly code that enforces a contract around state changes to the value.

The question I have is "why"? Perhaps I need a bigger picture view of how someone builds an app with this? I have seen the example tutorial and that makes it clear "how" to implement a contract and a web application that uses it, but not why the system was architected this way.

I can see a contract essentially describing the data type and access policy of the value, but how do you have multiple values of the same contract etc.?

Sorry if this is covered somewhere and is more clear there - please let me know if so! And thanks for the hard work on this, definitely sounds interesting, and hence the questions. :)

1 Comment
2024/06/27
23:26 UTC

4

Janky SSL with Hyphanet?

So, I was looking into an unrelated TLS certificate thing, and I started thinking I wonder how freenet is doing.. And I go to look it up and there's a redirect to hyphanet, and hyphanet's signature is janky and the SSL for freenet.org is janky too. But while I'm looking it up, just a couple hours ago in fact, there's a new certificate issued apparently and the freenet.org site loads without a hitch again. Super suspicious looking. It was using a github cert prior to that, which couldn't be verified because the domain didnt match freenet OR hyphanet domains... Now it changes to a R10 Lets encrypt for the proper domain WHILE I'm investigating it?

Meanwhile the cert for hyphanet went to a r3 host on lencr.org so i go to load THEM up and THEIR cert doesn't match the domain now, reporting as akamai. One of them crops up while I'm investigating and one of them shows april to next month of this year. although it was showing me a different one before that. And even the lets encrypt CA one is wrong domain now.

Tell you what I would NOT load that hyphanet software, the certs on the installer are out of date and can't be verified. out of 6 sigs 4 are revoked and 2 can't be verified but the dates are a decade ish ago. and one of them found a website of his where hes' talking about being keyspoofed.

1 Comment
2024/06/25
15:08 UTC

4

Other implementations?

Hi there, I'm interested in implementing freenet to not run in a browser, but in a executable native app. Has anyone ever done this? Is this something there is a spec for it? I'm sorry if my questions are answered somewhere but its hard to find. Thank you.

3 Comments
2024/06/14
03:43 UTC

7

Video: Ian Clarke breaks down his vision for a decentralized Internet

2 Comments
2024/06/10
23:09 UTC

1

is there a way to run freenet as a local server?

I have a machine with the freenet server app that can access the freenet but i was wondering of a way that i could access freenet on other devices on my network through said machine?

0 Comments
2024/06/09
18:01 UTC

5

I just want to run the thing to try it out, why do I have to read dozens of pages about delegates and contracts?

Hi,

currently running Hyphanet, I have been a user for over 10 years every now and then. I'd like to try out Freenet (core), I can install some toolchain to get it up (as I understand that you'd need at least Rust). But why do I have to read dozens of pages about contracts and delegates? Where are the instructions to just run the thing?

If the thing is not runnable, would it make sense to say this in plain language in the frontpage of freenet.org ?

2 Comments
2024/06/05
07:30 UTC

1

Possible Hyphanet friend to friend improvements and more general improvements.

Since friend to friend connections are more secure, it should be easier to use friend to friend node. There are a few possible ways to do this. First, we could use the SHA3-128 hash of an email address to connect to a trusted friend if I know which email they used to create the hash. If I enter an email, my freenet client would hash the email and crawl the network for the same hash. It would then make an end to end encrypted connection and ask "Is this the email you used to create the hash?", if yes, then the node I am asking will send its node ID. Another way would be a server in a safe country like Switzerland that would connect friend to friend peers that opt in such that no node is connected too much or too little. Another would be a self replicating hyphanet node that I could send to my friend that already has me and my friends dialed in.

As for censorship avoidance, we can disguise hyphanet traffic as something else. One possibility would be a hyphanet buddy browser extension for Chrome, Firefox, Brave, Opera and Palemoon that would use the web browser to send QUIC traffic and provide hyphanet integration and perhaps a new webui, thus solving a blocker for 0.9. Moving the webui out of fred and into the browser could reduce burden on the hardware and make using headless nodes easier. Another transport could be the SSU2 transport created by the I2P project and improved upon by the i2pplus devs. A third option could be disguising hyphanet traffic as bittorrent traffic for in countries where piracy is legal and not considered suspicious like in brazil, russia, ukraine or belarus.

As for internal improvements riping out old dependencies like mantissa and replacing them with modern internal improvements like Apache Commons and Google Guava would be worthwhile to modernize the codebase.

As for the installer, it would make sense to use a universal installer that automatically detects the OS, that being Windows, Mac OS, Linux and installs hyphanet to the right directory. For windows that would be C:\Program Files\Hyphanet\Fred, C:\Program Files\Hyphanet\jSite, C:\Program Files\Hyphanet\pyFreenet, C:\Program Files\Hyphanet\Systray\ and C:\Program Files\Hyphanet\FMS\ for the programs and to C:\Users[username]\Hyphanet\Fred, C:\Users[username]\Hyphanet\jSite, C:\Users[username]\Hyphanet\pyFreenet\ and C:\Users[username]\Hyphanet\FMS for the appdata and datastore. On linux that would be /opt/hyphanet/Fred/, /opt/hyphanet/jsite/, /opt/hyphanet/pyFreenet/, /opt/hyphanet/systray and /opt/hyphanet/FMS/. The application data would be installed to /home/[username]/.config/hyphanet/fred/, /home/[username]/.config/hyphanet/jsite, /home/[username]/.config/hyphanet/pyfreenet, /home/[username]/.config/hyphanet/fms. The FMS source code should be compiled with the latest stable MSVC for Windows, the latest stable LLVM for Mac and the latest stable GCC for Linux. If a jdk is not on the system, the installer should tell you to get an installer from the Oracle JDK website rather than bundling one to reduce file size. The pyfreenet program should be packaged as a python zipapp for ease of use. Edit: the installer should include X86-32, X86-64, ARM32, ARM64 binaries for FMS provided the compiler supports it.

Long term goals and possibly breaking changes might be neccessary for long term security. For example, upgrading the hashing algorithm for files to SHA3-512 and mandating the use of TLS1.3 with Encrypted Client Hello for connection security. A possible method to negate duplicate files would be to use CHK SHA3-512 keys for files and USK, that is the hash of the peer instead of the file, for a comma seperated variable of CHKs that compose the USK, if multiple USKs refer to the same file, then they will refer to one CHK instead of multiple SSKs, thus increasing anonymity because it would be difficult to tell which exact USK one is requesting if multiple USKs link to the same CHK. Perhaps dummy CHKs could be linked to by the op inside the comma separated variable along with a command to ignore them when constructing the final USK.

What about reducing spam in the datastore? Perhaps a random JVM bytecode execution that results in a SHA3-512 hash similar to randomX could be used to make uploading CHKs and USKs just costly enough to prevent denial of service attacks from overwriting the datastore too quickly. This proof of work should take no less the 30 seconds but no longer than 5 minutes using a Raspberry Pi 5 8GB with the official raspberry pi active cooler, 27 watt power supply and a Samsung Pro Ultimate U3, A2 V30 microsd card. No more than 1GB of ram should be required on the hardest difficulty and difficulty should increase the larger the upload.

I am curious as to your thoughts?

0 Comments
2024/05/27
08:56 UTC

5

Questions about Freenet vs. Hyphanet

I read on Hyphanet that it was renamed from Freenet, and that Locutus was renamed to Freenet. The part I'm confused on is I seen a 2 year old post from u/sanity that suggests Locutus is being worked on by the creator of Freenet, but the Hyphanet people claim that it's the original Freenet. Did Locutus breakoff from Freenet along with the original creators of Freenet? That would mean Hyphanet is the decendant of the original Freenet, but the original creators created a fork from it?

Lastly, are there any significant differences between Hyphanet and Locutus/Freenet? Which should I use if I'm new to Freenet?

5 Comments
2024/05/25
06:44 UTC

0

New to freenet

Hey I read somewhere few days ago to remain hidden on the clear net use freenet. Out of curiosity I have downloaded the freenet app from the official website but I am unable to understand how to use it, can anyone help me out. Please....

9 Comments
2024/05/13
19:24 UTC

5

Static IP and anonymity

For several months now, my ISP has converted my IP from dynamic to static. Can having a static IP compromise my anonymity when using Freenet? Can my level of anonymity be improved (or worsened) if I connect to Freenet through a VPN?

1 Comment
2024/04/25
04:10 UTC

4

Web of Trust login problem

I'm having trouble accessing the login button while trying to login web of trust on hyphanet. When i click on login button nothin happens. Captchas are not loading. I tried different jre s. Nothing changed. My os is win 11. I upload a screen video about that problem please watch it

​

https://reddit.com/link/1c197o5/video/birxleh40ttc1/player

1 Comment
2024/04/11
07:36 UTC

4

Can I get in trouble by just having an active Freenet node?

About a year ago, I installed Freenet on an old laptop, just to see how it works. I opened a couple of random links but decided that it's all junk and not worth it and shut it down. Later, I read that Freenet is not really safe to use and that was enough for me to completely
I haven't used the laptop since. Until a couple of day ago, when I wanted to update the software and completely forgot about Freenet installation.
I ran the software update but as it turns out, the laptop didn't shut down after the process and stayed on for the last couple of days, and that Freenet autostarted and continued running in the background. It collected about 200GB of data in the cache. But I was just relaying traffic. But I still panicked. I'm worried that I might have been targeted by law enforcemenet for some reason. Can I really get in trouble?

3 Comments
2024/03/22
17:29 UTC

3

"FreenetTray needs to be updated" / macOS Monterey 12.7.3

Hi there!
I just installed freenet on my mac. However, when I want to launch it, a window appears saying "FreenetTray needs to be updated. The developer of this app needs to update it to work with this version of macOS."
Could anyone please help me with this issue? Thank you!

1 Comment
2024/03/04
07:50 UTC

5

how can i mirror an entire freenet site with all the local links ,?

I have been reading a sort of a diary of a schizophrenic guy on freenet , the problem is that his diary is sort of a wall of text that takes a while to read through and i dont want to keep freenet running during that time , so i am looking for a way to rip his entire "site", so i can read it on my own time

Is their a way to do it in linux ,

i tried "wget -mpEk" per some suggestion , but it doesnt appear to work , any other idea?

2 Comments
2024/03/01
12:12 UTC

3

I would like to run Frost on a different PC than Freenet itself runs on

(I will not be calling it Hyphanet)

I have some familiarity with Freenet, and I tried this once before, but I could not get it to work.

I have a PC (PC#1) running Freenet, running Windows 11. I have another PC (PC#2) running Ubuntu. I want to run Frost on PC#2. They are on the same LAN. Could someone explain to me, step-by-step, exactly how to do this? BTW, I am using FrostNext, if that matters.

​

​

1 Comment
2024/02/25
22:57 UTC

5

Is Freenet/Hyphanet (either of them) the same as regular TCP/IP networking where all nodes use IP addresses like on Hamachi/ZeroTier networks?

0 Comments
2024/02/15
11:44 UTC

3

Help requested (Debian): Issues compiling FMS, running Freenet outside of wrapper

Hi Friends,

I am trying to get back into Freenet as I miss the people and conversations I used to have on FMS, but I ran into some issues. I'm running Freenet on an unusual CPU architecture so the normal binaries for FMS aren't working and I ran into some issues compiling. My Debian install is very barebones. I'm thinking I must be missing a needed package? Also Freenet is giving me this error about it not running in a wrapper, any idea how to fix these errors? Help is greatly appreciated. I hope everyone is doing well!

My errors are:

"You are running Freenet without the wrapper. This is not recommended. Freenet will not be able to restart itself, so auto-updating won't work, and if Java crashes, it won't get restarted either. Also Freenet can't generate stack dumps in some places so debugging will be marginally harder."

And

"/home/freenet/fms-src-0.3.85/src/stringfunctions.cp:380:61: error: narrowing conver sion of "-1' from 'int' to 'char' [-Wnarrowing] 380 /* F */ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 make [2]: *** [CMakeFiles/fms.dir/build.make:384: CMakeFiles/fms.dir/src/stringfunctions.o] Error 1 make [1]: *** [CMakeFiles/Makefile2:160: CMakeFiles/fms.dir/all] Error 2 make: *** [Makefile: 136: all Error 2"

-Red

3 Comments
2023/12/26
17:16 UTC

2

Ideal concurrent downloads?

How to tell if 30/40/50/60++++ concurrent file downloads is most efficient long-term? Does it affect memory usage?

thanks

1 Comment
2023/11/30
10:25 UTC

Back To Top