GT Systems IPFS and Filecoin questions

These questions relate to our community post here GT Systems: building Blust+SPA, the world’s first legal, approved, peer to peer movie sharing network; exploring IPFS, libp2p and Filecoin as a tool set

Our requests, questions and what we first need to understand at a high level before diving deeper. It may be better to split these off into separate threads, but wanted to get some wholistic, high level views first.

  1. We would love to hear from anyone with experience implementing IPFS and libp2p for large date sets and transfers, particularly real time data and particularly video.
  2. Our initial platform is PC/Windows. Believe it or not, that’s for security (PlayReady 3 in hardware and SGX) as well as the massive installed base of PC’s. Are there any plans for a Universal Windows Platform (UWP) app environment version of IPFS?
  3. Can we “merge” IPFS with our Secure Peer Assist (SPA) architecture? One specific and high priority requirement is that our architecture uses a combination of P2P and CDN to “fill gaps”. This allows us to implement a “most needed packet” rather than “rarest packet” algorithm. This is very useful for real time or near real time playback of video and for seeding. It also combines the strengths of centralised and decentralised storage and provides a role for all in future. We are partnered with EdgeCast (Verizon).
  4. Our video files are packaged with Dynamic Adaptive Streaming over HTTP (DASH) using Common Encryption (CENC). Hopefully that isn’t a problem?
  5. It seems that IPFS encrypts the source files at rest. Is this correct? That is good, but we use encryption that is approved by the studios. Specifically, we need to support PlayReady 3 (PR3) SL3000 encrypted video segments, packaged in DASH CENC and fMP4 containers. We need to understand how IPFS encryption affects and works with PR3.
  6. Very interested to discuss “routing” options. We have some ideas there.
  7. Can we implement a secure sub-community within the larger IPFS community (we’d prefer not to do this but see next question).
  8. How can we ensure no “undesirable” content is stored on our users’ IPFS “beside” Hollywood content? E.g. pirate movie BitTorrent files or porn. This is a “perception” issue, given this happens already on shared environments, but it is a very real and high priority concern of Hollywood, especially some of the security people in the more conservative studios. We’ve seen a bit of discussion around this but haven’t found a clear and definitive answer yet.
  9. We very much like the open transport model. If we provide reliable transport, optimised for large file transfer, presumably that can use UDP?
  10. A little off topic, but highly related (and we can’t find a forum): we love Filecoin. It solves our problem of ‘incenting’ disk sharing and file sharing and creates a currency for our platform. Love their work. Does anyone know if we can create our own, branded version? Even just in name only? The underlying purpose of Blust+SPA is the same, but it would be good to have a currency that reflects our application.
  11. We haven’t been able to find any official Filecoin forums. We would love to participate if anyone can point us to one. Particularly around the economic/business models being contemplated.
  12. Given positive answers to the above (which seems likely), how do we work together to build the world’s first legal, approved, peer to peer movie (and other) file sharing system? :blush:

Rhett Sampson
GT Systems
8 February 2018

hi rheet,

about UWP maybe you can see that : https://github.com/richardschneider/net-ipfs-api.

Regards

1 Like

i’m not sure have forum for that. @flyingzumwalt maybe can respond on that ?

maybe that can respond your question : https://github.com/wking/ipfs-specs/tree/master/protocol/network#transport-agnostic but i’m not sure is implement or not @flyingzumwalt

2 Likes

maybe you can create a specific thread for that and explain i bit your architecture.

1 Like

in IPFS you can’t remove a content but you can unpin a ressources if all peer unpin a content the ressources is not up in your swarm. so you can use bot for check content of ressources and unpin a ressource if contents is “undesirable”.

Thanks Josselin. We’ve seen some discussion around the ability to choose what you share. Do you know if this has been implemented anywhere? This is VERY important for the studios.

Awesome thanks Josselin!

Will do. There’s a very high level architecture diagram here in slide 7 https://blusttvblog.blob.core.windows.net/website-media/2018/02/GT-Systems-Blust-entertainmen-09022018.pdf and a more detailed explanation in our white paper here https://blusttvblog.blob.core.windows.net/website-media/2018/02/GT-Systems-Blust-entertainmen-09022018.pdf

With IPFS every user sharing only the data that they choose to download beforehand. If your users are the Hollywood studios and those studios don’t download any porn they won’t store any porn either.

It’s similar to how a company that hosts linux distributions via bittorrent won’t store any porn on their PC either. At the same time, every user that actually downloads linux distributions from them is free to also download porn via bittorrent and that’s outside of the control of the company that hosts the linux distributions.

1 Like

Our customers are people who download the Blust app to watch movies. Hollywood supplies us with those movies and they set the terms. So if we control the app and IPFS and the user just chooses how much they share, we can prevent other content being shared on the IPFS associated with the Blust app? It can’t be overridden? That would be perfect. Obviously users can download other IPFS apps but that’s out of our control. Long as we can prevent insertion of undesirable content in the file systems under our control.

i’m not sure but you can test locally to create to application which use IPFS in App A define a specific repo_path (ex ~/repo_app_a) and App b another repo_path (ex ~/repo_app_b) in IPFS network it can two speprate node so with two seperate DHT. After that imagine the app A is blust you can in this dht for example exlude all peers else your peers node and hollywood provider. i you add a ressource on app A et after you try to get that with http://ipfs.io/ipfs/<your_hash> (if your peers and hollywood reject all also) that not exist i guess but if you to do that on app B your hash is gettable by ipfs.io.

Regards

2 Likes

I don’t know how official it is, but several of Protocol Lab’s devs are mods at the filecoin subreddit: https://www.reddit.com/r/filecoin/. It’s the most official forum I’ve come across.

I don’t think that is correct. I’m not aware of any encryption for blocks at rest (i.e., in the IPFS repo). If data is encrypted using a proprietary product I don’t see why that would cause problems; IPFS should just store whatever you give it.

1 Like

That’s what we thought. If that is the case then it’s perfect.

I was trying to access the documents but you’re domain is being flagged by metacert -

Perhaps you should get in touch with the devs.

Thanks very much Dmitriy we just did some changes devs are investigating immediately.

What browser and o/s were you using please?

Can you access: http://blust.tv ok? The primary domain for the file that raised the Phising alert is windows.net (Azure blob storage default). What Metacert product were you using that tripped the alert?

I’m on macos high sierra and using chrome 64.0.3282.140 - this is the url that metacert redirects me to - https://block.metacert.com/?domain=https://blusttvblog.blob.core.windows.net/website-media/2018/02/GT-Systems-Blust-entertainmen-09022018.pdf&redirect=https%3A%2F%2Fdiscuss.ipfs.io%2Ft%2Fgt-systems-ipfs-and-filecoin-questions%2F2050%2F8

Yep, http://blust.tv works fine. I’m using this extension in chrome 64.0.3282.140 - https://chrome.google.com/webstore/detail/cryptonite-by-metacert/keghdcpemohlojlglbiegihkljkgnige?hl=en