As far as I understand, the transcoders have access to the raw video content and return the output in plain old HLS and that too UNENCRYPTED! Selectively delegating the transcoding process to thousands of arbitrary transcoder nodes might be a solution, but is there any plan for REAL encryption of input/output streams? How else can premium/exquisite video platforms trust Livepeer?
First of all, it’s worth noting that the hardware that actually performs the encoding will always have access to the raw video content. So if a user is using the open marketplace to hire any available node to do the work, then yes, the segment of video a specific node encodes will be accessible by that node. Knowing this, this makes Livepeer in its default state suitable for public-by-default content like user generated content, social streams, and publicly broadcast content. This is not to say it would be easy for a malicious node to rebroadcast an entire stream, as the work is spread out, but they would have access to whatever segments are sent their way.
As for non-default configurations, there is no reason that a user of the LP network (theoretically) couldn’t work only with selective nodes - perhaps ones that advertise the encryption capabilities or DRM. This work would have to be secured via reputation, or contractual obligation, or some yet-to-be-determined on chain deposit/bounty scheme for proving that the node revealed the content. Of course this would mitigate some of the benefits of Livepeer’s open marketplace in the first place for that user, but the tradeoff would be they would still be getting competition amongst a set of operators looking to win privacy focused work.
Thanks for replying. Just a few more queries…
Are there any plans of limiting the ability to run a transcoder node to only TEEs (Trusted Execution Environments)?
Secondly, the documentation states “The broadcaster takes care of splitting-up streams into segments for transcoding and aggregating the transcoded results in a media playlist.” However, this diagram here says something else, i.e.
So do the transcoders send the transcoded resultant clips directly to the broadcaster in parallel or do the transcoders send the results to the orchestrator which aggregates then sends the eventual HLS playlist to the broadcaster?
Thirdly, do these communicating nodes (transcoders, orchestrators, and broadcasters) know each other by their real IP addresses, or is there some sort of Kademlia private p2p implementation in the background?