6 ms·
Is it possible to create censorship-resistant IPFS based webapps? I mean, can't a webapp be combined with something similar to peertube and IPFS to create a pub
by marcodiego 5y ago
Is it possible to create censorship-resistant IPFS based webapps? I mean, can't a webapp be combined with something similar to peertube and IPFS to create a public media player that you don't have to download neither the player nor the media?
- capableweb 5y agoI think that's exactly what this is supposed to be. I mean, you have to _download_ it somehow, it just happens to be that this is downloaded in the browser, and played from there. No need for Peertube.
- _def 5y agoI don't see how it could be censorship resistant tbh. The data has to be served from a service somewhere, and I can't think of reasons IPFS nodes would be resistant to take downs.
- capableweb 5y agoIPFS is content-addressed, so as long as you have the ID of the thing you want to download, you'll be able to download and verify that download from any node. So as long as you can connect to one node that has your content, you'll be able to download it. Of course, nothing is 100% censorship resistant, but content-addressing helps a lot.
- lijogdfljk 5y agoI read that IPFS purposefully has mechanisms in it to allow banning content. While hypothetically you could still run a custom client that won't ban content, peered nodes might still ban the content leaving you with no source. Based on what i read long, long ago - IPFS is very much not intended to be censorship resistant.
- capableweb 5y ago> I read that IPFS purposefully has mechanisms in it to allow banning content I'd be interested in reading whatever article you got that from, because last time I checked, IPFS doesn't have any such mechanism. You might be confusing it with the content blocking Protocol Labs does on the public IPFS gateway (https://ipfs.io/ipfs/hash https://ipfs.io/ipfs/hash). The gateway being a centralized gateway to distributed IPFS content, is hosted by a US party and must therefore follow US law, so sometimes they block content from being accessed via the gateway.
- TUSF 5y agoI can totally see how some nodes could block content, and refuse to propagate information on certain content addresses, but as far as I know, this would only slow down reaching the desired content, not completely block it—every node on the network would need to blacklist the banned address, which is pretty infeasible. Also, as far as I know, the official daemon doesn't really have any functionality to block certain addresses like this.
- billconan 5y agocan it hide my identity (ip)?
- michaelsbradley 5y agoFor censorship resistance there needs to be incentivised replication such that the number of nodes in the p2p storage network (providing the data set or chunks of it) is very large and therefore “take down” becomes intractable. Also, clients need to retrieve data from/as peers in the p2p network rather than through gateways.
- serverholic 5y agoFilecoin and other storage crypto coins are trying to address this.
- serverholic 5y agoIt's kinda like bittorrent. As long as someone is hosting the file, it's still there.
- Scoundreller 5y agoI really need to improve my understanding of magnet links and DHT.
- deleted 5y ago[deleted]
- hagbard_c 5y agoAn example of such a thing is the Libgen search interface hosted on IPFS (both data as well as webapp). If you have a means to directly navigate IPFS (that is, without using a proxy) it can be found here: ipns://libgen.crypto/ If you do not yet have this set up the same thing can be reached through a proxy, e.g.: https://libgen-crypto.ipns.dweb.link/ https://libgen-crypto.ipns.dweb.link/ The former (pure IPFS/IPNS) link is resistant to censorship as long as access to IPFS is available. The latter can of course be censored but once IPFS becomes mainstream the need for such proxies will disappear. More on this project can be found here: https://libgen.fun/dweb.html https://libgen.fun/dweb.html
- BrianOnHN 5y ago> If you have a means to directly navigate IPFS (that is, without using a proxy) What's the requirement for this? Like, is this a me (local config) or them (ISP connection) issue?
- hagbard_c 5y agoYou need access to the internet, that's about it. IPFS can use any transport protocol (see section 3.2 in the whitepaper [1]), it uses a distributed hash table for routing purposes, content addressing to represent objects - these are immutable, once published they're available as long as there is a peer which has the object in cache or 'pinned' (permanently cached). Read the whitepaper and install [2] a node of your own to get a feel of the thing, you'll soon find out it is an amalgamation of earlier peer to peer systems. The go-ipfs daemon tends to be quite busy, it averages somewhere around 30% CPU, 500MB memory, 0.1Mb/s in, 0.04Mb/s out when hosting ~3GB of (self-generated, niche-interest, database-related) files. This busyness is acknowledged by the developers and should be addressed somewhere down the line. [1] https://github.com/ipfs/papers/raw/master/ipfs-cap2pfs/ipfs-p2p-file-system.pdf https://github.com/ipfs/papers/raw/master/ipfs-cap2pfs/ipfs-... [2] https://dist.ipfs.io/ https://dist.ipfs.io/ (get go-ipfs)
- capableweb 5y ago> IPFS can use any transport protocol (see section 3.2 in the whitepaper [1]), In theory. In practice, the network (I checked my local node with ~2500 nodes connected to it) is mostly using quic over tcp/udp, more or less 50%/50% split between tcp/udp. > This busyness is acknowledged by the developers and should be addressed somewhere down the line. IPFS has been killing routers[https://github.com/ipfs/go-ipfs/issues/3320 https://github.com/ipfs/go-ipfs/issues/3320] and sending/receiving lots of network traffic[https://github.com/ipfs/go-ipfs/issues/2917 https://github.com/ipfs/go-ipfs/issues/2917] since 2016 and there hasn't been any notable improvements on that front yet. When is "down the line" in reality?