Clash自定义规则的类型

clash11个月前clash机场792

全网最佳IP代理服务商- 9.9元开通-稳定的代理服务
如果您从事外贸、海外视频博主、海外推广、海外广告投放,欢迎选择我们。
让您轻易使用国外主流的聊天软件、视频网站以及社交网络等等

  在本篇文章中,我们将了解Apple推出的FairPlay DRM解决方案(主要用于在iOS、tvOS和macOS设备上安全分发内容)。让我们一起来看下FairPlay DRM的重要构成、基本工作流和一些有趣的功能。

  使用播放器端的技术,安全地与播放器交换密钥,以及请求DRM密钥、解密视频、解码以及显示内容。

  在深入了解FairPlay以前,让我们先看看在FairPlay DRM讨论中反复提到的主要模块。

  在加密视频之前Clash自定义规则的类型,必须先使用HLS协议打包视频。HLS是Apple公司开发的流媒体协议,用于ABR转码技术,并且支持MPEG-TS(ts)或者分段mp4(fmp4)容器格式的文件存储。

  使用初始化向量(Initialization Vector或IV),可以确保即使同一明文(输入)用同一密钥被独立加密数次,也能生成不同的密文(加密过程中的输出)。

  在我们了解SAMPLE-AES和AES-128的区别之前,请记住这两种技术都使用了AES-128(请阅读构建DRM系统的重要基石——EME、CDM、AES、CENC和密钥)加密,只是应用在视频上的方式不同。让我们看看它们是如何实现的。

  在SAMPLE-AES技术中,你无需加密整个视频,只需使用AES-128的CBC模式加密音频数据包和视频帧的sample,这样一来,就可以节省加密和解密过程中的功耗(尤其在视频分辨率增加的情况下)。

  比如,FairPlay协议规定,在H.264/AVC码流中,如果NAL单元类型是1或5,那么NAL就会被加密;其他情况则不会被加密。

  为什么?因为单元类型为1和5的时候,NAL包含了非IDR和IDR帧信息。在视频编解码器的码流中,IDR帧代表了新的视频切片的开始。没有IDR帧,其他帧就无法被解码(直到下一个IDR或者I帧到达)。

  这说明了SAMPLE-AES的目标是加密一小部分有价值的音视频内容,以节省处理资源和电池电量。

  注意:给不了解m3u8的朋友科普一下,m3u8用于HLS视频流,描述了可用码率-分辨率组合数量、视频切片数量、每个切片长度以及切片播放顺序、加密细节、广告插入点等。请查看

  在AES-128技术中,切片(包括音频和视频)通过AES-128、CBC模式和PKCS7填充(Public-Key Cryptography Standards,公钥密码标准)完全加密。通过IV或者媒体序列号(代替IV),CBC在每个切片边界处重新启动。

  客户端应用是指用来在Apple操作系统(比如iOS、tvOS和macOS)上播放视频的应用或者播放器。

  内容服务提供商可以使用Apple的示例代码开发自己的FairPlay客户端应用或者使用由DRM解决方案供应商提供FairPlay SDK。

  AVFoundation是一个全功能框架,用于处理iOS、macOS、watchOS和tvOS上基于时间的音视频媒体。通过AVFoundation,你可以轻松播放、创建和编辑QuickTime电影以及MPEG-4文件、播放HLS视频流并为你的App构建强大的媒体功能。

  App Delegate是应用的根对象,充当应用程序的“控制器”。当其连接的对象达到某种状态或者发生某个事件时,App Delegate会获得通知。在FairPlay中,App Delegate负责播放器、AVFoundation框架和密钥服务器之间的协调和通信。

  接收和解密来自播放器的许可证请求。来自播放器的请求被称为SPC(Server Playback Context,服务器播放上下文)。

  将内容密钥(由密钥服务器返回)装入CKC(Content Key Context,内容密钥上下文)信息中,发送回给播放器。

  Apple同时提供测试向量来测试KSM实现。你可以使用这些测试向量检查你的KSM实现是否能够:

  让我们来看下Fairplay的重要组成部分如何相互交互,从而实现FairPlay加密内容的播放。

  第2步:应用通知AVFoundation它需要播放视频,并向HLS视频流提供m3u8播放列表的详细信息。

  第8步:AVFoundation使用CKC中的内容密钥解密、解码,然后向用户安全地播放内容。

  以上就是FairPlay DRM的基本工作流程。接下来,我们一起来了解FairPlay中几个有趣的功能。

  AVContentKeySession是AVFoundation中处理解密密钥的工具,于WWDC 2017宣布推出。它提供了对内容密钥加载和生命周期的更多控制,目标是将密钥加载与媒体播放生命周期解耦。

  在基本的FairPlay工作流中,播放开始后才加载内容密钥。在用户体验方面,这意味着用户需要等待SPC-CKC工作流完成之后才开始播放视频。这种等待增加了“首屏延迟(Startup Delay)”和 “延迟(Latency)”,对终端用户很不友好。

  然而,使用AVContentKeySession,,应用程序就可以在用户按下播放键之前请求内容密钥(被称为“密钥预加载”)。

  Apple FairPlay还拥有“双到期时间窗口(Dual Expiry Windows)”,这一功能可以和持久密钥(Persistent Key)结合使用实现离线播放。持久密钥是指密钥可以:

  第二个窗口:用户一按下播放键,电影必须在48小时内观看。第二个时间窗口到期后,30天的时间窗口也会到期。

  第二个密钥在用户开始播放视频时获得,它取代了第一个密钥(播放期)。当超过第二个密钥的过期窗口,用户就无法访问或者播放视频内容了。

  假设用户在租赁电影后,从来没有观看过。在这种情况下,电影的第一个密钥成为系统上的唯一密钥,超过有效期后它会自动失效。

  我希望本篇对FairPlay的介绍能够对你有帮助。Apple开发者网页()上有大量信息(开发指南和示例代码等)可以帮助你实现FairPlayDRM。

  本文为澎湃号作者或机构在澎湃新闻上传并发布,仅代表该作者或机构观点,不代表澎湃新闻的观点或立场,澎湃新闻仅提供信息发布平台。申请澎湃号请用电脑访问。

全网最佳IP代理服务商- 9.9元开通-稳定的代理服务
如果您从事外贸、海外视频博主、海外推广、海外广告投放,欢迎选择我们。
让您轻易使用国外主流的聊天软件、视频网站以及社交网络等等

相关文章

爱快 clash代理

  登山赛车2是一款由Fingersoft公司开发的2D在线多人竞速手游。游戏以山地越野赛车为主题,提供了丰富的赛道选择,包括险峻的山路、光滑的雪地、热带雨林和沙漠荒原等,让玩家体验不同地...

clash如何在电脑上下载

  当软件自动更新配置文件后,DNS地址被重置为默认值119.29.29.29,这可能导致内网应用访问受阻。别担心,本文将指导你如何在MacOS 13.2.1系统中轻松解决这个问题clas...

怎样配置手机clash

  Clash,一款跨平台、功能丰富的代理软件,可通过配置导入的方式实现快速部署和使用。本文将详细介绍 Clash 导入配置的步骤和注意事项,帮助您轻松上手。   Cla...

clash苹果怎么使用

clash苹果怎么使用

  军团冲突王国崛起是一款高画质的角色扮演游戏,这款游戏里玩家需要 扮演将军来带领士兵进行战斗,游戏里的作战方式也是非常的讲究策略,而且游戏里的世界也是非常的庞大,不断的征战过程中会更快的...

Clash托管链接

Clash托管链接

  《边境开拓者》(Border Pioneer)是一款融合了像素风格、城市建造、生存防守以及塔防元素的策略游戏。玩家在游戏中扮演一名开拓者,在荒芜的边境地区建设城镇、收集资源,并抵御敌人...

clash代理失败

clash代理失败

  本篇文章主要带大家来了解Python怎么设置代理的知识,首先我们要知道怎么来设置代理不如先从什么是HTTP代理吧。   HTTP代理本质上是一个W...