0

在我的应用程序中,我在 UIWebView 中显示 HTML 内容。HTML 内容从服务器下载并存储在 iPad 的文件系统中,以便离线使用。HTML 通过其 CSS 文件中的 @font-face 使用自定义字体:

@font-face {font-family: 'CustomFont'; src: url(Custom-Font.otf);}

为了完成这项工作,字体.otf文件也被下载并存储在 iPad 的文件系统中。

问题是,现在任何可以访问他的 iPad 文件系统的人都可以使用该字体(如果你使用 IExplorer 之类的东西,这真的很容易)。

这会导致一些法律问题,因为大多数字体提供商不允许他们的字体免费分发(当我使用这种方法时,他们实际上是这样)。

我的问题:有什么方法可以在文件系统中加密字体并在 UIWebView 尝试加载它们时解密它们?

4

3 回答 3

0

请参阅“iOS App Programming Guide”中的使用磁盘加密保护数据:

在 iOS 4 及更高版本中,应用程序可以使用数据保护功能为其磁盘数据添加一定级别的安全性。数据保护使用特定设备(例如 iPhone 3GS 和 iPhone 4)上的内置加密硬件,以加密格式将文件存储在磁盘上。当用户的设备被锁定时,即使是创建它们的应用程序也无法访问受保护的文件。用户必须至少一次明确地解锁设备(通过输入适当的密码),然后您的应用才能访问其受保护的文件之一。

我没有对此进行测试,但我强烈假设 iExplorer 无法读取加密文件。

于 2012-08-13T18:55:47.740 回答
0

我找到了一个非常有效的解决方案:Robin Summerhill写了一篇很棒的教程,介绍了如何使用 Apple 的 CommonCrypto API 和自定义 URL 协议保护 iOS 应用程序中的资源。您可以使用它来加密所有嵌入式资源,它也适用于字体。

于 2012-08-15T20:01:59.600 回答
0

如果您没有从字体提供商那里获得重新分发其字体的许可,那么通过将它们嵌入您的应用程序中,您将侵犯版权。加密文件不会改变这一点。

于 2012-08-15T20:06:31.687 回答