[FFmpeg-devel] [PATCH] ipfsgateway: Remove default gateway

Michael Niedermayer michael at niedermayer.cc
Sun Aug 14 21:00:04 EEST 2022


On Sat, Aug 13, 2022 at 09:06:50PM +0200, Timo Rothenpieler wrote:
> On 13.08.2022 18:29, Michael Niedermayer wrote:
> > I fully support better IPFS support
> > what iam a bit "upset" about is that running a IPFS node is presented as
> > if that was more private than using a gateway.
> 
> That's not what people are suggesting.
> The primary upset is about FFmpeg having hardcoded in a public gateway run
> by some company.
> That is unprecedented for FFmpeg.
> You have to keep in mind that that code will make it into a ton of distros,
> installed applications and who knows what else, for a very long time to
> come.
> 
> What if in 5 years that company goes under, and the domain is sold?
> Or it just decides to "become evil"? What if it already is? I don't know
> that company, or how they earn their money with running a public service
> like that.
> There are so many issues with hardcoding a domain like that into FFmpeg,
> that I'm surprised really anyone is defending it.

I think i misunderstood your concern. 


[...]
> > Consider this:
> > If i want to know who downloads assetXYZ i can simple create 1000 nodes each
> > sharing assetXYZ. (this can in reality be 1 node pretending to be 1000)
> > If you now request assetXYZ from IPFS then the node you use will likely
> > download it straight from one of my 1000 nodes, i get your IP, yes we
> > have a encrypted connection but that goes straight to my attack nodes
> > you notice nothing of this, i log your IP and time.
> > 
> > If you used some public gateway, i would just log the time and IP of that
> > public gateway
> > 
> > If you want really private IPFS with you need TOR or something
> > equivalent.
> > If someone posts a patch to add native TOR support i surely wont be unhappy
> > I also would very welcome more native IPFS support but that alone does not
> > fix the privacy / logging issue
> > 
> > Also i would be VERY happy if iam wrong and running a IPFS node can be made
> > 100% secure and private
> 
> I don't really understand how that is at all relevant to the issue at hand:
> We have hardcoded a companies server into our main codebase. Thus we endorse
> that company and basically say that we trust it.

That default was in no way intended as an endorsment. That view that this can
be seen as an endorsment is something i totally missed


> Which I for one do not. I don't know it at all.

i also dont know it at all


> If it turns out that company is acting badly, it will also reflect badly on
> the project. We, as a project, simply cannot do that.
> 
> It's easy to say that "a user will just pick the first gateway found on
> google anyway", but we cannot safe users from their own responsibility
> there.
> It's our responsibility to be trustworthy. Hardcoding servers like this does
> not instill trust.
> 
> Specially if the IPFS project then publishes a big blog post about ffmpeg
> having gained "native" support, which makes the whole effort appear even
> more dubious, since the support that was added is very much not native.
> 

> > independant of this, i would very much welcome the current gateway code to
> > be extended to verify the content so the gateway cannot modify it!
> > And this should be enabled for non local gateways by default i think
> 
> Seems like a good idea in any case. No idea how ipfs works, but does the url
> not work as hash for the contents it points to?

the way i understand it, it does. But IIRC its not just a hash its the hash from
the root of a merkle tree. That way it can verify partial data. And this is
important for us.
Consider someone downloads a 5gb file from ipfs to play it back, we cant really
wait to receive the whole 5gb before verifing

also there are v0 and v1 of CIDs, version 1 seems quite rich in what it can
represent, i presume only a small subset matters but all this would be better
to be explained by someone who knows this. Iam just reading the docs a bit
and iam a bit curious. Everything i say about IPFS internals is based on how
i understand it and could be inaccurate

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Modern terrorism, a quick summary: Need oil, start war with country that
has oil, kill hundread thousand in war. Let country fall into chaos,
be surprised about raise of fundamantalists. Drop more bombs, kill more
people, be surprised about them taking revenge and drop even more bombs
and strip your own citizens of their rights and freedoms. to be continued
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20220814/29af4a2d/attachment.sig>


More information about the ffmpeg-devel mailing list