【问题标题】:How protect music file downloaded by my music app?如何保护我的音乐应用下载的音乐文件?
【发布时间】:2019-11-21 21:37:13
【问题描述】:

我需要一个解决方案来保护在音乐应用中下载的音乐文件。

我们拥有音频的所有权利,因此,我们需要保证只有我们的应用能够播放这些音频。

这个音乐应用实际上只用于流媒体。下一个更新是实现下载和离线播放音乐的功能。

例如,我知道 Spotify 使用 DRM 保护,但对某些人来说有点争议,我认为这不是我们现在需要的。

在我的研究过程中,我没有找到任何具体的解决方案。所以,我的问题是我可以使用哪些功能、库或资源来保护下载的文件。

也许我需要加密/解密文件?但是,Swift 有这方面的本机功能,并且有一些可用的文档吗?

那么,我可以用什么来使用 Swift 保护音频,并且只在我自己的应用程序中继续播放音频?

【问题讨论】:

    标签: ios swift xcode security encryption


    【解决方案1】:

    这个问题几乎每天都会被问到,答案是并且将永远是一样的 - 如果用户可以在他们的设备上播放您的音频,那么他们也可以提取并保留该音频的副本 - 没有多少 DRM 、加密或任何其他任何人梦想的幼稚概念都可以改变这一点。

    您可以通过在您的应用中嵌入加密密钥并在播放文件之前通过流密码流式传输文件来防止“脚本小子”从手机上复制文件,但同样,逆向工程和获取密钥是微不足道的。

    【讨论】:

    • 感谢您的帮助。那么,您认为在这种情况下使用任何类型的“安全”都是微不足道的吗?哪怕是为了不让任何人这么容易拿到文件?目的是至少让它有点困难,而不是让某人将文件复制到其他设备那么简单。但我知道没有 100% 的方法,只有有人想通过它。
    【解决方案2】:

    您可以将您的 .mp3 文件转码为 HLS 文件,该文件将生成一个主播放列表和多个分段文件,然后您可以使用 ffmpeg 或 Apple Media 分段器对其应用 ALS 加密。

    更多信息:

    https://www.theoplayer.com/blog/content-protection-for-hls-with-aes-128-encryption

    【讨论】:

    • 感谢您的帮助。你的信息对我帮助很大。现在我正在搜索更多关于 AES 的信息,并找到了很多库和 Apple CryptoKit。我正在研究其中一些,看看这是否是我们需要的。因此,我确认并将您的答案标记为正确。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多