如何从 php 为 Android 和 Ios 集成视频加密和解密?

Posted

技术标签:

【中文标题】如何从 php 为 Android 和 Ios 集成视频加密和解密?【英文标题】:How to integrate video encryption & decryption from php for Android & Ios both? 【发布时间】:2018-11-21 22:29:40 【问题描述】:

我研究了加密/解密机制并发现了许多解决方案,例如 AES 加密/解密。但是,我想保护我的视频,就像在 Hotstar、IMDB、Amazon Prime 等中保护的视频一样。为此,我得到了一个与 DRM 机制相关的解决方案。我了解它的工作过程,但是,它将如何从 php 端集成并将其与移动应用程序连接。有没有其他方法可以像上面提到的应用程序那样实现安全性。

【问题讨论】:

这种加密的目的是什么?这是针对中间人攻击的吗?或者你想要一些内容限制?您是要流式传输视频,还是先在客户端设备上下载(然后解密)? 我想将视频从应用程序上传到服务器,并且只允许特定用户访问。 @JonnieJS 所以这是一种授权机制,为什么需要加密? 加密是为了保护其他人的视频。即;如果我有视频并只分享给你。现在,如果您可以与其他人共享相同的链接,那么该人将不允许查看该视频。我将如何获得这种机制? @JonnieJS 【参考方案1】:

这不是一个加密问题。 这是一个授权问题。

我建议使用一些登录机制。就像 wordpress/drupal 一样。

    第一个用户将视频分享给他的朋友(他的朋友电子邮件地址) 朋友会收到一封邀请电子邮件,以注册帐户并观看视频。 好友,注册账号,登录。 在“与我共享的视频”页面中,他可以看到原始共享者与此特定电子邮件地址共享的视频。 (此信息来自某个数据库)

现在是流媒体部分,

    确保您保存视频的文件夹无法从 Internet 访问。 (其他一些文件夹,高于 public_html 在私有文件夹上使用.htaccess 直接限制访问。) 查看“与我共享的视频”页面时,会生成一个指向您的 PHP 控制器的视频的链接。类似www.mywebsite.com/watchvideo/620 当有人询问此视频时,您检查此人是否已登录,以及他的帐户是否可以再次访问此视频。如果是这样,请使用 php 缓冲区流式传输视频。了解更多信息:php output buffering 并使用readfile 流式传输视频

如果您觉得这个答案有帮助,考虑接受它。

【讨论】:

感谢您的回答。真的很可观。但是,我想要一个如下流程,1.)用户 A 将从应用程序创建一个帐户并从应用程序上传视频。 2.) 现在,用户 A 将从应用程序(用户 B 的电子邮件地址)将视频分享给用户 B。但是用户 B 没有必要在应用程序中拥有一个帐户。 3.) 当用户 B 从电子邮件中单击该链接时,他将首先要求进行身份验证(密码或任何其他密钥),在输入有效密码后,用户 B 可以在有限的时间内流式传输该视频。

以上是关于如何从 php 为 Android 和 Ios 集成视频加密和解密?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Javascript/PHP 从 Web 应用程序打开移动应用程序(Android 或 iOS)

将现有 PHP/MYSQL/ 网站转换为原生 IOS/Android 应用程序

如何从付费应用转换为应用内购买? iOS 和 Android + Flutter

从php中的地址获取纬度经度

如何在 PHP 中管理从移动应用程序登录的用户的会话?

PHP:正则表达式,如何验证 android 和 ios 深层链接 URI