用gpg和sha256验证ubuntu.iso

news2025/1/15 4:10:12

链接

  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.coloradmin.cn/o/2276793.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Wireshark抓包教程(2024最新版个人笔记)

改内容是个人的学习笔记 Wireshark抓包教程&#xff08;2024最新版&#xff09;_哔哩哔哩_bilibili 该课程笔记1-16 wireshark基础 什么是抓包工具&#xff1a;用来抓取数据包的一个软件 wireshark的功能&#xff1a;用来网络故障排查&#xff1b;用来学习网络技术 wireshark下…

Web开发(一)HTML5

Web开发&#xff08;一&#xff09;HTML5 写在前面 参考黑马程序员前端Web教程做的笔记&#xff0c;主要是想后面自己搭建网页玩。 这部分是前端HTML5CSS3移动web视频教程的HTML5部分。主要涉及到HTML的基础语法。 HTML基础 标签定义 HTML定义 HTML(HyperText Markup Lan…

RabbitMQ 的工作模式

目录 工作模式 Simple&#xff08;简单模式&#xff09; Work Queue&#xff08;工作队列&#xff09; Publish/Subscribe&#xff08;发布/订阅&#xff09; Exchange&#xff08;交换机&#xff09; Routing&#xff08;路由模式&#xff09; Topics&#xff08;通配…

备战蓝桥杯:树的存储与遍历(dfs和bfs)

树的概念 树的逻辑结构是树形结构&#xff0c;和我们之前的线性结构又不太一样了&#xff0c;是一种一对多的关系 树的结点分为根节点&#xff0c;叶子结点&#xff08;没有分支的结点&#xff09; 以及分支结点 从上往下看&#xff0c;每个结点都有0个或多个后继 从下往上…

超大规模分类(三):KNN softmax

传统的分类损失计算输入数据和每个类别中心的距离&#xff0c;来优化模型的训练。KNN softmax通过选择和输入数据最相关的top-K个类别&#xff0c;仅计算输入数据和top-K个类别中心的距离&#xff0c;以减小计算量。 KNN softmax首次诞生于达摩院机器智能技术实验室发表的SIGKD…

ubuntu官方软件包网站 字体设置

在https://ubuntu.pkgs.org/22.04/ubuntu-universe-amd64/xl2tpd_1.3.16-1_amd64.deb.html搜索找到需要的软件后&#xff0c;点击&#xff0c;下滑&#xff0c; 即可在Links和Download找到相关链接&#xff0c;下载即可&#xff0c; 但是找不到ros的安装包&#xff0c; 字体设…

项目实战——使用python脚本完成指定OTA或者其他功能的自动化断电上电测试

前言 在嵌入式设备的OTA场景测试和其他断电上电测试过程中&#xff0c;有的场景发生在夜晚或者随时可能发生&#xff0c;这个时候不可能24h人工盯着&#xff0c;需要自动化抓取串口日志处罚断电上电操作。 下面的python脚本可以实现自动抓取串口指定关键词&#xff0c;然后触发…

电脑分辨率调到为多少最佳?电脑分辨率最佳设置

电脑分辨率是指电脑屏幕上显示的像素点的数量&#xff0c;通常用水平和垂直方向的像素点数来表示&#xff0c;例如19201080。像素点越多&#xff0c;显示的内容就越清晰&#xff0c;但也会占用更多的系统资源和电力。那么多电脑分辨率多少最佳&#xff1f;以及电脑分辨率如何调…

代码随想录算法【Day20】

Day20 二叉搜索树 235. 二叉搜索树的最近公共祖先 理解只要当前节点的值在p和q节点的值的中间&#xff0c;那这个值就是最近的公共祖先&#xff0c;绝对不是次近的&#xff0c;这个题就好做了。 递归法 二叉搜索树本身是有序的&#xff0c;所以不涉及到前中后序的遍历 cl…

【SpringBoot】@Value 没有注入预期的值

问题复现 在装配对象成员属性时&#xff0c;我们常常会使用 Autowired 来装配。但是&#xff0c;有时候我们也使用 Value 进行装配。不过这两种注解使用风格不同&#xff0c;使用 Autowired 一般都不会设置属性值&#xff0c;而 Value 必须指定一个字符串值&#xff0c;因为其…

车联网安全 -- 数字证书到底证明了什么?

在车联网安全--TLS握手过程详解里面&#xff0c;我们了解到握手时&#xff0c;Server会向Client发送Server Certificate&#xff0c;用于证明自己的身份合法&#xff0c;为什么会有这一步呢&#xff1f; 我们回顾一下数字签名的过程&#xff1a; Bob将使用自己的公钥对“Hello…

Elasticsarch:使用全文搜索在 ES|QL 中进行过滤 - 8.17

8.17 在 ES|QL 中引入了 match 和 qstr 函数&#xff0c;可用于执行全文过滤。本文介绍了它们的作用、使用方法、与现有文本过滤方法的区别、当前的限制以及未来的改进。 ES|QL 现在包含全文函数&#xff0c;可用于使用文本查询过滤数据。我们将回顾可用的文本过滤方法&#xf…

【HTML+CSS+JS+VUE】web前端教程-31-css3新特性

圆角 div{width: 100px;height: 100px;background-color: saddlebrown;border-radius: 5px;}阴影 div{width: 200px;height: 100px;background-color: saddlebrown;margin: 0 auto;box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.5);}

Spring Boot 项目自定义加解密实现配置文件的加密

在Spring Boot项目中&#xff0c; 可以结合Jasypt 快速实现对配置文件中的部分属性进行加密。 完整的介绍参照&#xff1a; Spring Boot Jasypt 实现application.yml 属性加密的快速示例 但是作为一个技术强迫症&#xff0c;总是想着从底层开始实现属性的加解密&#xff0c;…

若依前后端分离项目部署(使用docker)

文章目录 一、搭建后端1.1 搭建流程&#xff1a;1.2 后端零件:1.2.1 mysql容器创建&#xff1a;1.2.2 redis容器创建&#xff1a;1.2.3 Dockerfile内容&#xff1a;1.2.4 构建项目镜像&#xff1a;1.2.5 创建后端容器&#xff1a; 二、前端搭建&#xff1a;2.1 搭建流程&#x…

Vue2+OpenLayers使用Overlay实现点击获取当前经纬度信息(提供Gitee源码)

目录 一、案例截图 二、安装OpenLayers库 三、代码实现 关键参数&#xff1a; 实现思路&#xff1a; 核心代码&#xff1a; 完整代码&#xff1a; 四、Gitee源码 一、案例截图 二、安装OpenLayers库 npm install ol 三、代码实现 覆盖物&#xff08;Overlay&#xf…

Oracle 终止正在执行的SQL

目录 一. 背景二. 操作简介三. 投入数据四. 效果展示 一. 背景 项目中要求进行性能测试&#xff0c;需要向指定的表中投入几百万条数据。 在数据投入的过程中发现投入的数据不对&#xff0c;需要紧急停止SQL的执行。 二. 操作简介 &#x1f449;需要DBA权限&#x1f448; ⏹…

Oopsie【hack the box】

Oopsie 解题流程 文件上传 首先开启机器后&#xff0c;我们先使用 nmap -sC -SV来扫描一下IP地址&#xff1a; -sC&#xff1a;使用 Nmap 的默认脚本扫描&#xff08;通常是 NSE 脚本&#xff0c;Nmap Scripting Engine&#xff09;。这个选项会自动执行一系列常见的脚本&am…

V少JS基础班之第四弹

一、 前言 第四弹内容是操作符。 本章结束。第一个月的内容就完成了&#xff0c; 是一个节点。 下个月我们就要开始函数的学习了。 我们学习完函数之后。很多概念就可以跟大家补充说明了。 OK&#xff0c;那我们就开始本周的操作符学习 本系列为一周一更&#xff0c;计划历时6…

【STM32-学习笔记-7-】USART串口通信

文章目录 USART串口通信Ⅰ、硬件电路Ⅱ、常见的电平标准Ⅲ、串口参数及时序Ⅳ、STM32的USART简介数据帧起始位侦测数据采样波特率发生器 Ⅴ、USART函数介绍Ⅵ、USART_InitTypeDef结构体参数1、USART_BaudRate2、USART_WordLength3、USART_StopBits4、USART_Parity5、USART_Mode…