如何“双重锁定”文件,以便必须由多人批准其访问权限

如何“双重锁定”文件,以便必须由多人批准其访问权限

我的情况有点奇怪。我帮助运营一个聊天网络,该网络允许人们在公共群组和私信中聊天。

人们乐意记录公共聊天,但认为记录私人聊天会严重侵犯隐私。该网络专门针对年轻人,因此我们中的一些人确实希望记录私人聊天,因为我们认为如果有人提出指控,我们的处境会很糟糕,我们说我们没有记录任何私人聊天,因为我们的志愿者担心他们的隐私。

所以,我想知道我们是否可以实施某种机制,至少需要两个人批准读取日志文件。

我知道原则上我们可以做到这一点,例如使用两个人的密钥加密文件,但这无法扩展到让 6 个人访问日志文件位置。

我们还需要考虑如果一个有访问权限的人消失或死亡,我们需要从这六人组中再找到两个值得信赖的人才能访问该文件。

另外,您还有什么其他方法可以让人们放心,让您不会浪费自己的空闲时间(这是什么?)偷听别人的谈话?访问警报等?

答案1

稍微扩展一下@斯文的评论,虽然有一些工具可以实现这一点,但这些工具在操作系统级别不可用。

因此答案分为两部分:

  • 制定有关访问此类日志文件的官方政策,并按照@Sven 的建议,确保您拥有强大的审计控制措施来检测对此类文件的任何访问。确保此政策明确规定,任何未经授权访问这些文件的行为都将产生后果。
  • 定义一个可行的解决方案来跟踪此类文件的访问请求:它可以像通用变更管理系统一样简单,其中必须“给予”(即记录)两个批准才能允许此类访问,或者您可以考虑让前端处理整个流程:收集访问请求、处理它们和任何批准,如果获得批准,则提供审查数据的方法。

任何技术措施都可能是具有足够特权的用户可以解决的问题,因此需要制定一项政策来定义所有这些规则,以及不遵守这些规则的后果。

答案2

这个问题可以使用秘密共享和阈值 RSA 来解决。

您可以创建一个秘密共享 RSA 密钥,该密钥可以从您决定的任意密钥部分恢复。可以从 6 份中的 2 份恢复的密钥只是无数可能性之一。

然后使用公钥加密日志。这将遵循公钥加密的标准做法,即每次启动加密日志时,服务器都会选择一个随机对称密钥进行加密(例如使用 AES)。然后使用 RSA 公钥加密对称密钥本身。解密期间对称密钥保留在内存中,但绝不会以明文形式保存。可以使用标准软件完成此加密。

当需要解密时,多个密钥共享者同意需要解密某个日志,并将他们的 RSA 密钥份额应用于加密的对称密钥。这导致对称密钥的秘密共享。然后,各方可以交换对称密钥的这些份额,然后各方可以重建对称密钥并解密所选日志文件。

相关内容