根所有权和独占访问是否意味着加密?

Mar*_*ols 11 encryption permissions ownership

如果我有一个具有以下权限和所有权的文件: -rw------- 1 root root,此文件是否已加密?

我问这个是因为我想知道如何真正保护文件不被读取为纯字节,然后被某些非 root 用户或攻击者重建。

Rin*_*ind 23

这个文件是加密的吗?

不。文件仍然是文件。如果有人重新启动进入实时会话,则执行重新启动的任何用户都可以看到该文件。如果有人取出硬盘并将其安装到他们作为管理员的另一个系统中,也是如此。

无论您使用哪种方法,都无法访问加密文件。

所有-rw------- 1 root root做的就是让一个文件由用户“根”,而不是由组“根”而不是“别人”可读可写的。相当严格,但如果你从不希望有人窥探它,那还不够好。

防止系统上任何人访问的唯一工作方法是不在该系统上存储文件。

  • 加密程序并不完美。加密是“完美的”,除非对加密数据有先验知识(对吗?)。 (4认同)
  • @MarcCayuelaRafols _“加密是“完美的”,除非......“_ - 加密方案(不是实现!)总的来说,**不*完美!或者至少,事实并非如此。例如,Vigenère 密码被设计破解,因为它很容易被频率分析攻击。再举一个例子,DES 能够很好地抵御此类攻击,但它的短密钥(56 位)很容易被现代资源暴力破解,使其在任何实际意义上都完全被破坏。AES,当今使用最广泛的对称密码到目前为止表现良好,但我们无法_证明_它没有使其易破解的缺陷。 (3认同)
  • “加密并不完美” 好吧,但就所有实际目的而言,它工作得非常好,使用未破解的密码和可接受的密钥长度。但一个常见的警告是,大多数人没有意识到 FDE 在系统开启时不会保护数据。 (2认同)
  • 同样,来自 Kevin Mitnick 的那句名言肯定很有趣,但如果你想使用 IRL,你必须加密并将文件存储在某个地方。 (2认同)

Byt*_*der 9

不,仅仅因为文件由例如root或与您不同的用户拥有并不会对其进行加密。

根据为所有者、组和所有其他人设置的文件权限,系统将授予或拒绝用户以特定方式访问文件。当然,这种保护仅适用于其他进程,而系统正在运行并控制所有文件 I/O。您只需启动不同的操作系统并挂载磁盘即可读取任何文件。


Dav*_*ter 7

简而言之,没有。文件所有权和访问权限是一种访问控制。加密和访问控制是正交(这里指“独立”)概念。两者都是实现/强制授权的方法

加密

意味着只有拥有解密密钥的代理才能访问文件或数据对象的解密“纯文本”。这种访问可以(暂时)扩展到其他代理,例如在内存中保存解密密钥的同一系统的用户。

访问控制

意味着权限,例如在计算机上运行的操作系统,决定谁可以访问哪种资源(可以是文件、数据对象或其他东西)。

他们为什么独立?

操作系统可能知道如何解密加密的数据对象以获得对其纯文本的访问权限,但这并不意味着它将这种访问权限扩展到所有用户。它通常会使用访问控制数据库来决定向谁扩展访问权限(如果有的话)。

相反,用户可能有权访问加密数据集,但由于缺乏有效的解密密钥,无法理解它,即无法访问其纯文本。(目前这对于 Ubuntu 附带的任何文件系统和文件系统工具是不可能的,但是这些功能正在以新的 ext4 功能的形式为开箱即用的 Ubuntu 开发,并且已经在其他文件系统中可用,例如ZFS 和 NTFS,尽管不一定在 Linux 上。)