2.5.2. 顶层“Release”文件及真实性

[提示]提示

顶层“Release”文件用于签署secure APT系统下的归档文件。

每个 Debian 档案库的网址都有一个这样的 “Release” 文件,例如 “http://deb.debian.org/debian/dists/unstable/Release”,内容如下。

  1. Origin: Debian
  2. Label: Debian
  3. Suite: unstable
  4. Codename: sid
  5. Date: Sat, 14 May 2011 08:20:50 UTC
  6. Valid-Until: Sat, 21 May 2011 08:20:50 UTC
  7. Architectures: alpha amd64 armel hppa hurd-i386 i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 sparc
  8. Components: main contrib non-free
  9. Description: Debian x.y Unstable - Not Released
  10. MD5Sum:
  11. bdc8fa4b3f5e4a715dd0d56d176fc789 18876880 Contents-alpha.gz
  12. 9469a03c94b85e010d116aeeab9614c0 19441880 Contents-amd64.gz
  13. 3d68e206d7faa3aded660dc0996054fe 19203165 Contents-armel.gz
  14. ...
[注意]注意

第 2.1.4 节 “Debian 档案库基础” 里,你能够发现我使用”suite” 和 “codename”的逻辑。“发行版”被用来同时谈及”suite” 和 “codename”.所有由档案库提供的归档 “area” 名,会被列在 “Components” 下.

顶层文件 “Release“ 的完整性,是由叫 secure apt 的加密架构来验证.

  • 加密签名文件 “Release.gpg“ 是由顶层授权文件 “Release“ 和加密的 Debian 档案库公钥创建。

  • 公开的 Debian 档案库公钥能够放入“/etc/apt/trusted.gpg”;

  • secure APT 系统验证下载的顶层文件 “Release“ 的完整性。加密验证过程用到了”Release.gpg“文件和在”/etc/apt/trusted.gpg“里的 Debian 档案库公钥.

所有 “Packages“ 和 “Sources“ 文件的完整性是由在顶层 “Release“ 文件里的 MD5sum 值来验证。所有软件包文件的完整性由 “Packages“ 和 “Sources“ 文件里的 MD5sum 值来验证.参见 debsums(1) 和 第 2.4.2 节 “验证安装的软件包文件”.

因加密签名验证比计算 MD5sum 值消耗更多的 CPU,使用 MD5sum 值来验证每一个软件包,使用加密签名来验证顶层的 “Release“ 文件,这种方式提供 较好安全性的同时,也有比较好的性能 (参见 第 10.3 节 “数据安全基础”).