《计算机网络:自顶向下方法(第8版)》Chapter 8 课后题

复习题

8.1节

在这里插入图片描述

R1. 机密性是攻击者截获原始明文消息的密文加密后无法确定原始明文的属性。消息完整性是接收方可以检测发送的消息(无论是否加密)在传输过程中是否又被更改的属性。
因此,这两者是不同的概念,可以独立存在。一个在传输中被篡改的加密消息仍然可能是机密的(攻击者无法确定原始明文),但如果错误未被检测到,则不会具有消息完整性。同样,一个在传输中被篡改(并被检测到)的消息可以是明文发送的,因此不会是机密的。

R2. 用户的笔记本电脑和一台网页服务器;两个路由器;两个 DNS 域名服务器

8.2节

在这里插入图片描述
在这里插入图片描述

R3. 对称密钥系统和公钥系统之间一个重要的区别是,在对称密钥系统中,发送方和接收方必须知道相同的密钥。在公钥系统中,加密密钥和解密密钥是不同的。加密密钥为整个世界(包括发送方)所知,但解密密钥仅为接收方所知。

R4. 在这种情况下,进行了一次已知明文攻击。如果以某种方式,发送者加密的消息是由攻击者选择的,那么这将是一次选择明文攻击。

R5. 有28种可能的输入块,每个映射是28个输入块的置换,因此有28!种映射,即有28!种可能的密钥

R6. 如果每个人都希望与另外N-1个人通信,那么每一对之间必须有一个共享的对称密钥。这样的配对有N*(N-1)/2对,因此需要N*(N-1)/2个密钥。
在公钥系统中,每个人都有一个所有人均知的公钥和一个只有该用户才知道的私钥。因此,在公钥系统中有2N个密钥。

R7. 运用规则:[(a mod n) * (b mod n)] mod n = (a * b) mod n
则:a mod n = 23,b mod n = 4;(a * b) mod n = 92

R8. 175

8.3~8.4节

在这里插入图片描述
在这里插入图片描述

R9. 消息摘要的一个要求是,给定一条消息M,很难找到另一条具有相同摘要的消息M‘;同样地,给定一个摘要值,也很难找到一条具有该摘要值的消息M’‘。我们有“消息完整性”,这意味着我们有合理的信心认为,给定一条消息M及其签名的摘要,这条消息自计算并签名以来未被篡改。这与互联网校验和不同,在图8-8中我们看到,很容易找到两条具有相同互联网校验和的消息。

R10. 不能。这是因为哈希函数是一个单向函数,也就是说,给定任何哈希值,原始消息无法被恢复(给定h使得h=H(m),而无法从h恢复m)

R11. 这个方案显然有缺陷。攻击者Trudy可以首先嗅探通信并通过从H(m) + s中提取最后一部分数字来获取共享密钥s。然后,Trudy可以伪装成发送者,创建她自己的消息t,并发送(t, H(t) + s)

R12. 假设Bob向Alice发送了一份加密文档。
为了能够验证,Alice必须能够说服自己,Bob确实发送了这份加密文档。
为了确保不可伪造,Alice必须能够说服自己,只有Bob能够发送这份加密文档(例如,没人能够猜出密钥并加密/发送这份文档)。
为了确保不可否认,Alice必须能够说服其他人,只有Bob能够发送这份文档。为了说明后者的区别,假设Bob和Alice共享一个秘密密钥,而且他们是世界上唯一知道这个密钥的人。如果Alice收到一份用这个密钥加密的文档,并且知道她自己没有加密这份文档,那么这份文档被视为可验证和不可伪造(假设使用了适当强度的加密系统)。然而,Alice无法说服其他人,Bob一定是发送了这份文档,因为实际上Alice自己也知道密钥,并且可以加密/发送这份文档。

R13. 公钥签名消息摘要更好,因为只需要对一个短消息摘要进行加密(使用私钥),而不是整个消息。由于使用类似RSA的公钥加密是昂贵的,签名(加密)较少的数据比签名(加密)较大量的数据更为理想。

R14. 这是错误的。为了生成证书,certifier.com 会包括数字签名,该签名是 foo.com 信息(包括其公钥)的哈希,并用 certifier.com 的私钥签名。

R15. 基于MAC的方案,Alice必须与每个潜在的接收者建立共享密钥。
使用数字签名时,她对每个接收者使用相同的数字签名;数字签名是通过用她的私钥对消息的哈希值进行签名而生成的。
在这里,数字签名显然是更好的选择。

R16. 不重数数的目的是防御重放攻击。

R17. 意味着发送随机数的实体将不再使用该值来检查另一个实体是否“在线”。指的是一个协议的生存期

R18. 在中间人攻击中,攻击者将自己置于Alice和Bob之间,改变他们之间发送的数据。如果Bob和Alice共享一个秘密认证密钥,那么任何更改都将被检测到。

8.5~8.8节

在这里插入图片描述
在这里插入图片描述

R19. Alice提供了数字签名,Bob可以通过这个签名验证消息来自Alice。PGP使用数字签名,而不是MAC,来确保消息的完整性。

R20. 错误。SSL使用隐式序列号。

R21. 防止连接重放攻击。

R22. 正确。初始向量(IV)总是以明文形式发送。在SSL中,它是在SSL握手期间发送的。

R23. 在客户端生成前主密钥(PMS)后,它将使用Alice的公钥对其进行加密,然后将加密后的PMS发送给Trudy。Trudy无法解密PMS,因为她没有Alice的私钥。因此,Trudy将无法确定共享的认证密钥。相反,她可能会通过选择一个随机密钥来进行猜测。在握手的最后一步中,她向Bob发送所有握手消息的MAC,使用猜测的认证密钥。当Bob收到MAC时,MAC测试将失败,Bob将结束TCP连接。

R24. 错误。通常,首先在主机A和主机B之间建立IPsec SA,然后流中的所有数据包都使用该SA。

R25. 错误。IPsec将为其发送的每个数据包增加序列号。

R26. 错误。IKE SA用于建立一个或多个IPsec SA。

R27. 01011100

8.9节

在这里插入图片描述
在这里插入图片描述

R28. 有状态的数据包过滤器维护连接表和访问控制列表。连接表跟踪所有正在进行的TCP连接,而访问控制列表指应检查连接的规则。

R29. 正确

R30. 正确

R31.有状态的数据包过滤器维护连接表和访问控制列表。连接表跟踪所有正在进行的TCP连接,而访问控制列表指示应检查连接的规则。

R32.正确

习题

P1.

使用图8-3中的单码代替密码,加密报文“This is an easy promblem”,并解密报文“rmij’u uamu xyj”
在这里插入图片描述

加密报文“This is an easy promblem”:uasi si mj cmiw lokhngch
解密报文“rmij’u uamu xyj”:wasn’t that fun

P2.

Trudy使用了已知明文攻击,其中她知道了 7个字母的(密文,明文)转换对,减少了8.2.1节的例子中将被检査的大约109数量级的可能替换的数量。请说明之。

如果Trudy知道“bob”和“alice”出现在报文中,那么她就能知道b,o,a,l,i,c,e的密文(因为“bob”是消息中唯一的回文,而“alice”是唯一的五个字母的单词)。如果Trudy知道七个字母的密文,那么她只需要尝试19!种可能,而不是26!种明文-密文对。19!和26!之间的差值是262524…*20,即3315312000,大约109

P3.

考虑图8-4所示的多码代替密码系统。利用报文“The quick brown fox jumps over the lazy dogs”得到的明文编码,选择明文攻击足以破解所有报文吗?为什么?
在这里插入图片描述

字母表中的每个字母都出现在短语“The quick brown fox jumps over the lazy dogs”中。在选择明文攻击的情况下(即攻击者同时拥有明文和密文),凯撒密码会被破解——入侵者会知道每个明文字母对应的密文字符。然而,维吉尼亚(Vigenere)密码(由26个类似的Caesar密码的代换表组成)并不总是将给定的明文字母转换为相同的密文字符,因此这种选择明文攻击无法立即破解维吉尼亚密码。

P4.

考虑图8-5中显示的块密码。假设每个块密码Ti 只是反转了 8 个输人比特的次序(例如,使得11110000变为00001111) 进一步假设64比特置乱函数不修改任何比特(使得第m 个比特的输出值 等于第m个比特的输人值)。
a. 对于n = 3和初始64比特输入等于10100000重复了 8次,输出的值是多少?
b. 重复(a),但此时将初始64比特的最后一个比特从0变为1。
c. 重复(a)和(b),但此时假定64比特的置乱函数反转了 64比特的次序。

在这里插入图片描述

a. 输出等于00000101重复八次。
b. 输出等于00000101重复七次+ 10000101。
c. 我们有(A R B R C R)R = CBA,其中A、B、C是字符串,R表示逆运算。因此:
  1.对于(a),输出是10100000重复八次;
  2.对于(b),输出是10100001 + (10100000重复七次)。

P5.

考虑图8-5 中的块密码。对于给定的“密钥",Alice和Bob将需要8个表,毎张表 8比特乘以8比特。对于Alice(或Bob)来说,要存储所有8张表,将需要多少比特的存储器?这个数如何与一个全表64比特的块密码所需的比特数进行比较?

共有8个表,每个表有28个条目,每个条目有8 bits,表数 * 每个表的大小 * 每个条目的大小= 8 * 28* 8= 214 bits
共有264个条目。每个条目有64bits。271bits

P6.

考虑在表8-1中的3比特块密码。假定明文是100100100.
a. 初始假设未使用CBC。生成的密文是什么?
b. 假设Trudy嗅探该密文。假设她知道正在应用无CBC的一个3比特块密码(但不知道特定的密码),她能够推测到什么?
c. 现在假设使用CBC,其中IV=111。产生的密文是什么?

在这里插入图片描述

a. 生成的密文为011011011

b. Trudy能推断出这三个明文块是相同的

c.
c(i) = KS(m(i) XOR c(i-1))
c(1) = KS(100 XOR 111) = KS (011) = 100
c(2) = KS(100 XOR 100) = KS (000) = 110
c(3) = KS(100 XOR 110) = KS (010) = 101

P7.

a. 使用RSA,选择p = 3和q =11,采用对每个字母独立加密的方法加密短语“dog”。对已加密报文应用解密算法恢复出原报文。
b. 重复(a),而此时加密“dog”作为一个报文w。

a.
p =3 ;q = 11;
n = p * q = 33;z = (p-1) *(q-1) = 20;
选取e = 9,为使得 ed mod z= 1,=> d = 9;
则:

明文字母m:数字表示me密文c=memod n
d426214425
o15384433593753
g74035360719

b.
将d o g 分别转化为5位二进制00100,01111,00111,拼起来得到001000111100111,转为十进制数m=4583,由于需要m<n。
因此取p = 43,q = 107,则n= p*q= 4601,z = (p-1) *(q-1) = 4452
选取e = 61 ,为使得 ed mod z= 1,=> d = 73;
公钥(4601,61),私钥(4601,73)
加密 c = memod n = 458361 mod 4601 = 402
解密 m = cd mod n = 40273 mod 4601 = 4583

P8.

考虑具有p = 5和q = 11的RSA,
a. n和z是什么?
b. 令e为3。为什么这是一个对e的可接受的选择?
c. 求 d 使得 de - 1 (mod z)且 d<160。
d. 使用密钥(n, e)加密报文m = 8。令c表示对应的密文。显示所有工作。提示:为了简化计算, 使用如下事实。
[(a mod n) * (b mod n) ] mod n = (a * b) mod n

n = p * q = 55;z = (p-1) *(q-1) = 40
e = 3 小于n,且e和z没有公因数
ed mod z = 1 ==> d = 27
密文c = me mod n = 17

P9.

在这个习题中,我们探讨Diffie-Hellman(DH)公钥加密算法,该算法允许两个实体协商一个共享的密钥。该DH算法利用一个大素数p和另一个小于p的大数g 。p和g 都是公开的(因此攻击者将知道它们)。在DH中,Alice 和Bob 每人分别独立地选择秘密密钥SA 和SB。Alice 则通过将g 提高到SA并以p 为模来计算她的公钥TA。类似地,Bob则通过将g 提高到SB 并以p 为模来计算他的公钥TB。此后Alice 和Bob 经过因特网交换他们的公钥。Alice 则通过将TB提高到SA 并以p为模来计算出共享密钥S。类似地,Bob则通过将TA提高到SB并以p为模来计算出共享密钥S’。
a. 证明在一般情况下,Alice和Bob得到相同的对称密钥,即证明S = S’。
b. 对于p=11和g = 2,假定Alice和Bob分别选择私钥SA = 5和SB=12,计算Alice和Bob的公钥TA和TB。显示所有计算过程。
c. 接着(b),现在计算共享对称密钥S。显示所有计算过程:
d. 提供一个时序图,显示Diffie-Hellman是如何能够受到中间人攻击的。该时序图应当具有3条垂直线,分别对应Alice、Bob和攻击者Trudy。

a.

AliceBob
私钥SASB
公钥TA= (g^SA) mod pTB= (g^SB) mod p
共享密钥S = (TB^SA) mod pS’ = (TA^SB) mod p

S
= (TB^TA) mod p
= ((g^SB mod p)^SA) mod p
= (g^(SBSA))mod p
= ((g^SA mod p)^SB) mod p = (TA ^SB)mod p = S’

b.和c.
p = 11;g = 2;SA = 5;SB=12

AliceBob
私钥SA = 5SB= 12
公钥TA= (g^SA) mod p = 10TB= (g^SB) mod p = 4
共享密钥S = (TB^SA) mod p = 1S’ = (TA^SB) mod p = 1

d.
在这里插入图片描述

  1. Trudy 收到Alice的公钥TA,并发送她自己的公钥TT给Bob
  2. 当Bob发送他的公钥TB,Trudy发送她的的公钥TT给Alice
  3. 此时,Trudy和Alice就共享密钥SAT达成一致,Trudy和Bob就共享密钥SBT达成一致
  4. 在此次交换后,Trudy只需使用公钥SAT和SBT就能解密Alice和Bob发送的任意消息

P10.

在这里插入图片描述
在这里插入图片描述

P11.

在这里插入图片描述
在这里插入图片描述

下列报文有相同校验和
在这里插入图片描述

P12.

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

P13.

在这里插入图片描述

文件被分割成大小相等的块。
对于每个块,计算其哈希值(例如使用MD5或SHA-1)。
所有块的哈希值都保存在.torrent文件中。
每当一个节点下载一个块时,它会计算该块的哈希值,并将其与.torrent文件中的哈希值进行比较。
如果两个哈希值相等,则该块是有效的。否则,该块是无效的,应被丢弃。

P14.

在这里插入图片描述

数字签名需要一个底层的公钥基础设施(PKI)和认证机构。对于OSPF,所有路由器都在同一个域中,因此管理员可以轻松地在每个路由器上部署对称密钥,而无需使用PKI

P15.

在这里插入图片描述在这里插入图片描述

Bob最初不知道自己是在和Trudy还是Alice通信。Bob和Alice共享一个私钥KA-B,而Trudy并不知道这个密钥。Trudy希望Bob能验证她(Trudy)的身份为Alice。Trudy将让Bob验证自己的身份,并等待Bob开始:

  1. Bob对Trudy说:“我是Bob” ,此时Bob开始验证自己的身份。随后,Bob对自己身份的验证会暂停几步。
  2. Trudy对Bob说:“我是Alice”,Trudy开始验证自己的身份为Alice。
  3. Bob对Trudy说:“R”,Bob回应第二步,发送一个随机数作为回复。Trudy还不知道KA-B®,因此她还无法回复。
  4. Trudy对Bob:“R”,Trudy回应第一步,继续Bob的身份验证,选择与Bob在第三步发送给她的加密值完全相同的值作为Bob加密的随机数。
  5. Bob对Trudy:“KA-B®”Bob通过加密他在第四步收到的随机数来完成自己的身份验证。Trudy现在有了KA-B®。(注:她没有,也不需要KA-B
  6. Trudy对Bob:“KA-B®”Trudy完成她的身份验证,用KA-B®回应Bob在第三步发送的R。由于Trudy返回了Bob在第三步正确加密的随机数,Bob以为Trudy是Alice!

P16.

在这里插入图片描述

这并不能真正解决问题。正如Bob之前的前半部分错误地认为自己正在验证Alice一样,Trudy也可以欺骗Alice,让她误以为自己正在验证Bob。问题的核心在于,Bob和Alice都无法确定他们所获得的公钥确实是对方的公钥。

P17.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

P18.

在这里插入图片描述

a. 不能,没有公钥和私钥对或预先共享的密钥,Bob无法验证Alice创建了该消息

b. Alice只需用Bob的公钥加密消息,并将加密的消息发送给Bob。
在这里插入图片描述

P19.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

a. 客户端

b. IP: 216.75.194.220;port: 443

c. 283

d. 3个

e. 包含一个加密的主密钥

f. 第一个字节为bc;最后一个字节为29

g. 6

P20.

在这里插入图片描述

假设SSL不提供序列号。假设Trudy,一个中间人,删除了一个TCP段。为了不让Bob察觉,Trudy还需要调整Alice发送给Bob的后续数据包中的序列号,以及Bob发送给Alice的确认号。结果将是,Bob会在不知情的情况下,在字节流中丢失相当于一个数据包的字节数。

P21.

在这里插入图片描述

不会接收,伪造的数据包将无法通过完整性检查(该检查使用共享的MAC密钥)。

P22.

在这里插入图片描述
在这里插入图片描述

a. ×;b.√;c.√;d.×

P23.

在这里插入图片描述

不会。
如果Trudy不改变序列号,R2在检查ESP头中的序列号时将检测到重复。如果Trudy增加序列号,数据包将在R2的完整性检查中失败。

P24.

在这里插入图片描述
在这里插入图片描述

P25.

在这里插入图片描述
a.
在这里插入图片描述
b.
在这里插入图片描述
c.
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/85942.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/85942.shtml

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

相关文章

抖音小程序开发:ttml和传统html的区别

1 传统 Web 中 HTML 的角色 HyperText Markup Language&#xff1a;用来描述页面结构——标题、段落、图片、表单…… 只负责“放什么元素、排在什么层级”&#xff0c;真正的行为靠 JS&#xff0c;视觉靠 CSS。 <!-- 传统网页&#xff1a;结构 class 交给 CSS --> &…

Unity2D 街机风太空射击游戏 学习记录 #12QFramework引入

概述 这是一款基于Unity引擎开发的2D街机风太空射击游戏&#xff0c;笔者并不是游戏开发人&#xff0c;作者是siki学院的凉鞋老师。 笔者只是学习项目&#xff0c;记录学习&#xff0c;同时也想帮助他人更好的学习这个项目 作者会记录学习这一期用到的知识&#xff0c;和一些…

Proteus如何创建第一个工程

视频教程&#xff1a; [最详细]Proteus新建第一个工程与快捷键设置 操作步骤 1打开Proteus后&#xff0c;左上角点击文件然后点击新建工程。 2新建工程后&#xff0c;弹出以下界面&#xff0c;选择修改自己的工程名字&#xff0c;&#xff08;工程名的后缀“.pdspsj”不要修改…

现代浏览器剪贴板操作指南 + 示例页面 navigator.clipboard 详解与实战

在 Web 开发中&#xff0c;复制文本到剪贴板是一个常见需求。多年来&#xff0c;过去我们依赖 Flash 或 document.execCommand(copy) 来实现。它曾是我们的得力助手&#xff0c;但这些方法存在兼容性差、安全性低的问题。现已经被正式标记为废弃&#xff08;Deprecated&#xf…

OpenCV-Python学习笔记

2 OpenCV中的Gui特性 2-1 图像入门 目标 学习如何读取图像、显示图像和保存图像 学习api函数&#xff1a;cv.imread()、cv.imshow()、cv.imwrite() 学习使用Matplotlib显示图像 使用OpenCV 读取图像 在OpenCV中&#xff0c;使用函数cv.imread()读取图像。 img cv.imread(le…

2025年- H87-Lc195--287.寻找重复数(技巧,二分查找OR动态规划)--Java版

1.题目描述 2.思路 3.代码实现 public class H287 {public int findDuplicate(int[] nums) {// 重复数字可能的最小值int min1;// 重复数字可能的最大值&#xff0c;数组长度为 n&#xff0c;数字范围是 [1, n-1]int maxnums.length-1;while(min<max) {// 防止溢出&#xf…

PVE使用ubuntu-cloud-24.img创建虚拟机并制作模板

前言 在使用pve时,虽然它已经可以克隆虚拟机,已经极大提升了创建虚拟机速度,但创建完成后,不可避免还是要配置下网络,因为服务器要使用静态IP,克隆出的机器需要重新设置新的IP地址,有没有连这一步都省了方法呢?有,就是Cloud-Init 创建虚拟机模板 1. 下载ubuntu-clo…

LLM增强检索---GraphRAG + LangGraph项目实战

专栏&#xff1a;大模型垂直应用技术​ ​​​​ 个人主页:云端筑梦狮 大模型应用落地亟需解决的核心问题有一个是&#xff1a;如何与私域数据交互。私域数据主要的问题是&#xff1a;需要有效地将企业数据整合进大语言模型中。由于大模型的上下文处理能力有限&#xff0c;一…

修改SSH端口实战

本次实战主要涉及SSH端口的修改和配置。首先&#xff0c;对master、slave1和slave2三台云主机的SSH配置文件进行修改&#xff0c;指定新的SSH端口&#xff0c;并重启SSH服务。接着&#xff0c;通过FinalShell工具修改连接端口&#xff0c;实现SSH连接到三台云主机。然后&#x…

PyTorch中的permute, transpose, view, reshape和flatten函数详解(已解决)

1.permute permute函数用于重新排列张量的维度。它接受一个元组作为参数&#xff0c;表示新的维度顺序。例如&#xff0c;如果我们有一个形状为(2, 3)的二维张量&#xff0c;我们可以使用permute函数将其维度重新排列为(3, 2)&#xff0c;如下所示&#xff1a; >>> …

开疆智能ModbusTCP转EtherCAT网关连接甘纳数据采集系统配置案例

本案例是通过开疆智能研发的ModbusTCP转EtherCAT网关连接ModbusTCP主站与甘纳数据采集系统的配置案例&#xff0c;具体配置如下。 配置过程 首先设置ModbusTCP主站&#xff0c;这里以信捷PLC为例 IP设定 要走Modbus-TCP协议&#xff0c;要把设备IP设在同一网段且地址不同&am…

Neo4j常用语法-path

在 Neo4j 中&#xff0c;Path&#xff08;路径&#xff09; 是连接两个或多个节点的关系序列&#xff0c;是图查询的核心概念之一。理解 Path 的用法对于复杂图分析至关重要 关键特性&#xff1a; 有向性&#xff1a;路径中的关系具有方向 可变长度&#xff1a;路径可以包含 0 …

从 Cluely 融资看“AI 协同开发”认证:软件考试应该怎么升级?

AI 工具大爆发&#xff0c;软件考试却还停在“纯手写”时代&#xff1f; 2025 年 6 月&#xff0c;一个标语写着 “Cheat on Everything”&#xff08;对&#xff0c;意思就是“什么都能开挂”&#xff09;的 AI 初创公司——Cluely&#xff0c;正式宣布获得由 a16z 领投的 1 …

商品中心—10.商品B端搜索系统的说明文档

大纲 1.商品B端搜索系统的运行流程 缓存和索引设计 2.商品B端搜索系统监听数据变更与写入ES索引 3.商品B端搜索系统的历史搜索词的实现 4.商品B端搜索系统的搜索词补全的实现 5.商品B端搜索系统的搜索接口实现 6.索引重建 1.商品B端搜索系统的运行流程 缓存和索引设计 …

HCIP-Datacom Core Technology V1.0_4 OSPF路由计算

ospf是如何计算生成这些路由呢&#xff0c; 区域内路由计算 LSA概述 同一个区域内路由器去进行一个数据库同步&#xff0c;形成一个LSDB&#xff0c;那么数据库里面所存在的LSA,是如何利用它去进行计算和生成路由的呢&#xff0c;以及这些LSA分别包含了哪些信息&#xff0c;比…

微服务拆分之术与道:从原则到实践的深度解析

引言&#xff1a;微服务的塞壬之歌 - 超越单体巨石 故事要从一家名为“巨石公司”&#xff08;Monolith Inc.&#xff09;的虚构企业说起。它的旗舰产品曾是公司的骄傲&#xff0c;但随着岁月流逝&#xff0c;这个系统逐渐演变成了一个“大泥球”&#xff08;Big Ball of Mud&a…

【新手向】GitHub Desktop 的使用说明(含 GitHub Desktop 和 Git 的功能对比)

GitHub Desktop 是 GitHub 公司推出的一款桌面应用程序&#xff0c;旨在帮助开发人员更轻松地使用 GitHub&#xff0c;以下是其简单的使用说明&#xff1a; 安装与登录 下载 GitHub Desktop |GitHub 桌面 访问GitHub Desktop 官方网站&#xff0c;根据自己的操作系统下载对应的…

Linux驱动编程 - gpio、gpiod函数

​​​​​ 目录 简介&#xff1a; 1、GPIO 子系统有两套API&#xff1a; 一、GPIO新、旧版互相兼容转换 API 1、转化函数 二、基于描述符接口(descriptor-based) &#xff08;以"gpiod_"为前缀&#xff09; 1、获取 GPIO 2.1 struct gpio_desc *gpiod_get(s…

Tensorflow推理时遇见PTX错误,安装CUDA及CuDNN, 解决问题!

问题原因&#xff1a; 使用TensorFlow一个小模型是进行推理的时候&#xff0c;报了PTX错误&#xff1a; Traceback (most recent call last): 20273 2025-06-18 10:20:38.345 INFO 1 --- [checkTask-1] c.l.a.d.a.util.AnalyzeCommonHelper : File "/home/python/commo…

C# 网络编程-关于HTTP/HTTPS的基础(一)

一、HTTP基础概念 1. 请求-响应模型 HTTP是基于客户端-服务器的无状态协议&#xff0c;流程如下&#xff1a; 客户端&#xff08;如浏览器&#xff09;发起请求。服务器接收请求并处理。服务器返回响应&#xff0c;包含状态码、Header和响应体。连接关闭&#xff0c;后续请求…