如何让mediafilesegmenter生成加密密钥,以便我可以在本地为它们提供服务?

时间:2012-01-24 15:05:20

标签: ios encryption command-line http-live-streaming

我想我错过了关于mediafilesegmenter的一些内容。

文档说这是关于加密内容:

  

Apple提供的媒体流分段器提供加密功能   并支持三种配置加密的模式。第一种模式   允许您指定磁盘上现有密钥文件的路径。在这   模式segmenter插入现有密钥文件的URL   索引文件。它使用此密钥加密所有媒体文件。第二   mode指示分段器生成随机密钥文件,将其保存   指定的位置,并在索引文件中引用它。所有媒体   使用此随机生成的密钥加密文件。第三种模式   指示分段器每n生成一个新的随机密钥文件   媒体片段,将其保存在指定位置并引用它   索引文件。此模式称为键旋转。每组   n个文件使用不同的密钥加密。

http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/UsingHTTPLiveStreaming/UsingHTTPLiveStreaming.html#//apple_ref/doc/uid/TP40008332-CH102-SW3

文档说这关于mediafilesegmenter: 文件分段器执行与流分段器相同的任务,但它将文件作为输入而不是流。 http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/HTTPStreamingArchitecture/HTTPStreamingArchitecture.html#//apple_ref/doc/uid/TP40008332-CH101-DontLinkElementID_7

所以,我猜测mediafilesegmenter有这三种模式,就像mediastreamsegmenter一样。我正在尝试使用第二种模式。这是我的命令:

  

mediafilesegmenter -f encryptedSegmentsDirectory -encrypt-iv = sequence   -encrypt-key encryptedSegmentsDirectory / key.txt media.m4v

结果是.ts文件和两个m3u8文件,它们似乎都没有引用密钥文件。我收到了这个回复: mediafilesegmenter:选项`-encrypt-key'不明确 有没有一个例子说明如何成功地做到这一点?

此外,HTTP Live Streaming似乎坚持通过http:

提供密钥文件
  

您可以使用HTTP或HTTPS提供密钥文件。你也可以   选择使用您自己的密钥文件保护   基于会话的认证方案。有关详细信息,请参阅“服务密钥”   通过HTTPS安全地存档文件。“

我想在iOS文件系统上的本地文件而不是服务器上提供它。这可能吗?如果没有,从本地Web服务器提供服务会有任何问题吗?

很抱歉,如果我错过了一些明显的东西 - 请随时向我指出相关文档!

1 个答案:

答案 0 :(得分:0)

Doh - 我的开关出错了。它是-encrypt-key-file,而不是-encrypt-key。对不起,大家好!我只需要离开一段时间。