我在哪里可以将我不想要的临时文件显示给用户?

时间:2010-09-28 17:01:44

标签: objective-c xcode macos

在我的Mac软件中,我需要解密一个文件,在我对它进行操作后,我会将其删除。我的问题是:我在哪里可以放这个文件?我不想把它展示给用户。

2 个答案:

答案 0 :(得分:4)

以下API将为您提供一个“不在路上”的目录路径:

NSTemporaryDirectory();

您的意思是“在用户无法访问的位置解密文件吗?”您的应用可以写入的任何位置,用户都可以看到。理论上,用户可以访问他们有物理访问权限的计算机上的任何位或字节。

有一些模糊处理可以减少用户遇到敏感数据的几率,但它们适用于特定情况。

您能告诉我们更多有关您最终目标的信息吗?您是否尝试实施DRM /复制保护方案?你想防止游戏中的作弊吗?你不相信你的用户吗?什么?

答案 1 :(得分:1)

我认为你最好的选择就是将它留在记忆中。

如果这不是一个选项,那取决于你想用它做什么。您可以打开一个临时文件,并立即删除它 - 保持有效的文件句柄打开,但不保留磁盘上的链接。

也许是另一种选择 - 你可以让你的辅助程序从STDIN或管道中读取吗?然后你可以解密文件并通过管道传递它的内容?显然,这个过程越复杂,它可能带来的链接就越薄弱,但有时你只需要把事情搞定。