当前位置: 首页 > news >正文

用gpg和sha256验证ubuntu.iso

链接

  1. https://ubuntu.com/tutorials/how-to-verify-ubuntu
  2. https://releases.ubuntu.com/jammy/
  • 本文是2的简明版

sha256sum介绍

sha256sum -c SHA256SUMS 2>&1

这段脚本的作用是验证文件的 SHA-256 校验和。具体来说,命令的各个部分含义如下:

  • sha256sum: 这是一个用于计算和验证文件 SHA-256 校验和的命令行工具。

  • -c: 这个选项表示“检查”模式。它会读取指定的校验和文件(在这里是 SHA256SUMS),并验证该文件中列出的每个文件的 SHA-256 校验和。

  • SHA256SUMS: 这是一个包含文件名及其对应 SHA-256 校验和的文件。这个文件通常是由某个软件包的发布者提供的,用于确保下载的文件没有被篡改。

  • 2>&1: 这个部分是一个重定向操作。它将标准错误(文件描述符 2)重定向到标准输出(文件描述符 1),这样所有的输出(包括错误信息)都会被合并到一起,方便查看。

总结

整条命令的作用是:使用 sha256sum 工具检查 SHA256SUMS 文件中列出的文件的 SHA-256 校验和,并将所有输出(包括错误信息)打印到标准输出。这通常用于确保下载的文件的完整性和真实性。

用sha256校验iso的流程

  1. 验使用 GnuPG 来验证 SHA256SUMS 文件的签名
gpg --keyid-format long --verify SHA256SUMS.gpg SHA256SUMS

这段脚本的作用是使用 GnuPG(GNU Privacy Guard)工具来验证一个文件的完整性和真实性。

具体解释如下:

  • gpg:表示要运行 GnuPG 工具。
  • --keyid-format long:设置密钥 ID 的格式为长格式。
  • --verify SHA256SUMS.gpg SHA256SUMS:验证 SHA256SUMS.gpg 文件的签名,并使用 SHA256SUMS 文件中列出的哈希值来验证文件的完整性。在验证过程中,GnuPG 会检查签名是否有效以及是否与签名的密钥匹配。

总结起来,这段脚本的作用是使用 GnuPG 来验证 SHA256SUMS 文件的签名,并通过比对哈希值来验证文件的完整性。这段脚本的作用是使用 GnuPG(GNU Privacy Guard)工具来验证一个文件的完整性和真实性。

  1. 使用 GnuPG(GNU Privacy Guard)工具从指定的密钥服务器接收并导入一个公钥。
gpg --keyid-format long --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x843938DF228D22F7B3742BC0D94AA3F0EFE21092

这段脚本的作用是使用 GnuPG(GNU Privacy Guard)工具从指定的密钥服务器接收并导入一个公钥。

具体解释如下:

  • gpg:表示要运行 GnuPG 工具。
  • --keyid-format long:设置密钥 ID 的格式为长格式。
  • --keyserver hkp://keyserver.ubuntu.com:指定要使用的密钥服务器,这里使用的是 Ubuntu 密钥服务器。
  • --recv-keys 0x843938DF228D22F7B3742BC0D94AA3F0EFE21092:指定要接收的公钥的密钥 ID。公钥的密钥 ID 是一个唯一的标识符,用于确保所接收的公钥是预期的。
  1. 使用 GnuPG 工具列出指定公钥的信息和指纹。
gpg --keyid-format long --list-keys --with-fingerprint 0xD94AA3F0EFE21092

这段脚本的作用是使用 GnuPG 工具列出指定公钥的信息和指纹。

具体解释如下:

  • gpg:表示要运行 GnuPG 工具。
  • --keyid-format long:设置密钥 ID 的格式为长格式。
  • --list-keys:列出已导入的公钥列表。
  • --with-fingerprint:在列表中显示公钥的指纹信息。
  • 0xD94AA3F0EFE21092:指定要列出的公钥的密钥 ID。
  1. 检查Key fingerprint,应当与官网的密钥指纹匹配
pub   dsa1024/46181433FBB75451 2004-12-30 [SC]Key fingerprint = C598 6B4F 1257 FFA8 6632  CBA7 4618 1433 FBB7 5451
uid                  Ubuntu CD Image Automatic Signing Key <cdimage@ubuntu.com>pub   rsa4096/D94AA3F0EFE21092 2012-05-11 [SC]Key fingerprint = 8439 38DF 228D 22F7 B374  2BC0 D94A A3F0 EFE2 1092
uid                  Ubuntu CD Image Automatic Signing Key (2012) <cdimage@ubuntu.com>
  1. 用sha256校验和,按SHA256算法来验证.iso文件(下载desktop版本的话,最好把live-server那行注释掉)
$ sha256sum -c SHA256SUMS 2>&1
ubuntu-22.04.5-desktop-amd64.iso: 成功

color egg

可以从密钥服务器再接收一个公钥

$ gpg --keyid-format long --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x46181433FBB75451
gpg: 密钥 46181433FBB75451:公钥 “Ubuntu CD Image Automatic Signing Key <cdimage@ubuntu.com>” 已导入
gpg: 处理的总数:1
gpg:               已导入:1

再列出公钥的指纹

$ gpg --keyid-format long --list-keys --with-fingerprint 0x46181433FBB75451  0x843938DF228D22F7B3742BC0D94AA3F0EFE21092
pub   rsa4096/D94AA3F0EFE21092 2012-05-11 [SC]密钥指纹 = 8439 38DF 228D 22F7 B374  2BC0 D94A A3F0 EFE2 1092
uid                   [ 未知 ] Ubuntu CD Image Automatic Signing Key (2012) <cdimage@ubuntu.com>pub   dsa1024/46181433FBB75451 2004-12-30 [SC]密钥指纹 = C598 6B4F 1257 FFA8 6632  CBA7 4618 1433 FBB7 5451
uid                   [ 未知 ] Ubuntu CD Image Automatic Signing Key <cdimage@ubuntu.com>
http://www.lryc.cn/news/521065.html

相关文章:

  • 深入解析 ZooKeeper:分布式协调服务的原理与应用
  • 【Rust自学】11.10. 集成测试
  • 对当前日期进行按年、按月、按日的取值
  • 【Rust自学】12.2. 读取文件
  • C++内存泄露排查
  • Http 响应状态码 前后端联调
  • 48_Lua错误处理
  • shell脚本回顾1
  • 【3】管理无线控制器
  • SOME/IP 协议详解——服务发现
  • Flutter:封装ActionSheet 操作菜单
  • 力扣 全排列
  • Golang 设计模式
  • Matlab 具有周期性分布的死角孔的饱和空气多孔材料的声学特性
  • maven 项目怎么指定打包后名字
  • Java Web开发进阶——Spring Boot与Thymeleaf模板引擎
  • 论文笔记(四十七)Diffusion policy: Visuomotor policy learning via action diffusion(下)
  • 开始使用Panuon开源界面库环境配置并手写VS2019高仿界面
  • 新垂直电商的社交传播策略与AI智能名片2+1链动模式S2B2C商城小程序的应用探索
  • WPS计算机二级•表格函数计算
  • ESP32S3官方例程如何使用
  • 新版 MacOS 无法从 /usr/local/lib 加载动态链接库的解决办法
  • 【Varnish】:解决 Varnish 7.6 CDN 静态资源缓存失效问题
  • 【记录】篡改猴插件下载网页m3u8视频
  • PID控制器 (Proportional-Integral-Derivative Controller) 算法详解及案例分析
  • 【Java设计模式-5】装饰模式:给咖啡加点“佐料”
  • C++ using(八股总结)
  • 《分布式光纤传感:架设于桥梁监测领域的 “智慧光网” 》
  • C++(5)
  • 【进程与线程】程序和进程在内存中的表现