Skip to content
This repository has been archived by the owner. It is now read-only.

How does ipfs compare to freenet? (WIP) #18

Closed
whyrusleeping opened this issue Apr 25, 2015 · 3 comments

Comments

@whyrusleeping
Copy link
Member

@whyrusleeping whyrusleeping commented Apr 25, 2015

NOTE: this answer is a work in progress. it is by no means complete and will be evolving over time (updated by @jbenet)


Ipfs and freenet have different goals. Ipfs aims to be a high performance content peer to peer content distribution network (among other things). And freenet's primary goal is the security and anonymity of its users, in order to help them avoid censorship.

Traffic between ipfs peers is encrypted, but encryption in general does not make any guarantees about anonymity.

@jbenet

This comment has been minimized.

Copy link
Member

@jbenet jbenet commented Apr 26, 2015

Many of the use cases of IPFS demand a high performance transport and do not require anonymity or privacy. And yes, there are some cases that do-- for those, special transports and routing systems are how similar guarantees could be achieved. but most IPFS nodes will not operate that way.

Other important semantic differences include:

  • IPFS does not mandate that nodes store content they do not explicitly request. (protocols/apps layered on top of ipfs could, like filecoin.io or a "Paper-like" offline cache)
  • In some (simplest) configurations of transport + routing, IPFS nodes connect directly to exchange objects.
  • IPFS is a high performance, general purpose authenticated datastructure transport, not just a posix file transport.
  • IPFS has SFS-based PKI naming
  • IPFS has a bittorrent-inspired data exchange
  • IPFS has pluggable transport and routing systems
  • IPFS has a large plumbing tool-chain like git, and many application/service modules.
  • A main use case of IPFS is to be used as a database.

Think of IPFS as being compared to HTTP.

general note on anonymity

Also, it should be noted that the IPFS protocol itself does not prevent anonymity at all, and a version of IPFS with careful choice of transports (e.g. tor, and not point-to-point tcp/udp links) + routing system (e.g. not the global dht) can achieve anonymity guarantees. But this is an endeavor unto itself worth doing very carefully. We will be guiding design for this in time, but this is not our focus at the moment.

What this might look like is to use things like TOR as only transports, use ephemeral node keypairs (ids generated every run, or per connection).

There will be much more to say about anonymity with ipfs -- and different ways of achieving it -- but for now please do not count on the go-ipfs to provide any guarantees!

@jbenet jbenet changed the title How does ipfs compare to freenet? How does ipfs compare to freenet? (WIP) Apr 26, 2015
@kyucrane

This comment has been minimized.

Copy link

@kyucrane kyucrane commented May 28, 2015

What about the goal of resisting powerful censorship, as opposed to the goal of anonymity?

@madavieb

This comment has been minimized.

Copy link

@madavieb madavieb commented May 23, 2017

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
4 participants
You can’t perform that action at this time.