密码学:对称加密算法、非对称加密算法、哈希算法

news2025/1/17 0:07:23

「作者简介」:冬奥会网络安全中国代表队,CSDN Top100,就职奇安信多年,以实战工作为基础著作 《网络安全自学教程》,适合基础薄弱的同学系统化的学习网络安全,用最短的时间掌握最核心的技术。

在这里插入图片描述

这一章节我们需要知道密码算法分哪几类,对称算法、非对称算法、哈希算法分别有哪些。

在这里插入图片描述

网络安全有 CIA 三大属性,也就是「保密性」「完整性」「可用性」,其中「保密性」「完整性」依赖「密码」实现。所以,密码是网络安全的基石,没有密码就没有网络安全。

扩展:这里的密码指的是「使用算法对数据进行加密或认证」的一种技术、产品或服务。严格来说,我们平时登录账号使用的那个不算密码,应该叫口令。

一个安全的密码需要满足以下三个条件:

  1. 破译密码的实际「计算量」无法实现。比如你用目前最高的算力的计算机也穷举不出来。
  2. 破译密码所需要的「时间」超过数据的生命周期。比如我的数据保密期是一年,你得花两年才能破译,那我的密码也算安全。
  3. 破译密码的「成本」超出数据本身的价值。比如我的数据价值一万,你得花了两万才能破译,那我的密码也算安全的。

密码学

  • 1、算法分类
  • 2、对称算法
    • 2.1、DES
      • 2.1.1、生日攻击
    • 2.2、3DES
    • 2.3、AES
    • 2.4、IDEA
    • 2.4、SM1
    • 2.6、SM4
    • 2.7、SM7
    • 2.8、RC2
    • 2.9、RC4
    • 2.10、RC5
    • 2.11、BlowFish
    • 2.12、TwoFish
  • 3、非对称算法
    • 3.1、RSA
    • 3.2、ECC
    • 3.3、EIGamal
    • 3.4、DSA
    • 3.5、DH
    • 3.6、SM2
    • 3.6、SM9
  • 4、哈希算法
    • 4.1、消息鉴别码
    • 4.2、数字签名
  • 5、国密算法
  • 6、PKI
    • 6.1、数字证书

1、算法分类

密码体系中有一些概念需要了解:

  • 明文:需要被保护的数据,需要保密。
  • 密文:加密后的数据,可以公开。
  • 算法:明文转换成密文的方法,可以公开(国密算法除外)。
  • 加密:明文转换成密文的过程。
  • 解密:密文转换成明文的过程。
  • 加密密钥:加密时需要使用的密钥,可以公开。
  • 解密密钥:解密时需要使用的密钥,需要保密。

发送方使用「算法」「加密密钥」将明文加密成密文后传输,密码分析者只能嗅探到「密文」,想看明文必须先解密;接收方收到密文后,使用「算法」「解密密钥」将密文解密成明文。通信流程如下:

在这里插入图片描述

其中最重要的是密码的算法和密钥,密码算法越「复杂」、密钥保管的越好、密钥的「长度」越长,密码的安全性就越高。

密码的算法分为对称算法、非对称算法、哈希算法三类:

  1. 「对称算法」:也叫加密算法,常用来加密数据,保证数据的机密性。
  2. 「非对称算法」:也叫密钥算法或数字签名算法,常用来做身份认证。
  3. 「哈希算法」:保证数据的完整性。

2、对称算法

对称算法的「加密密钥」「解密密钥」相同,也就是所谓的对称。

对称算法的安全性依赖「秘钥」,通信之前,双方「协商」一个秘钥,然后用这个秘钥进行加密和解密。

不同用户之间必须使用「不同」的对称秘钥,秘钥的「数量」随着用户数量增加呈「几何增长」

对称密钥算法由于密钥短,所以加密速度快、效率高,适合加密「大量」的数据。

对称算法的算法细节都是公开的,但秘钥需要保密,秘钥长度越长,安全性就越高,但计算时间也越长,效率就越差。

对称算法主要有:DES系列、SM系列、RC系列、fish系列。

「DES系列」:DES、3DES、AES、IDEA

  • DES:对称分组加密算法,分组长度64位,密钥长度64位,去掉8个校验位有效长度只有56位,已弃用。
  • 3DES:DES的升级版,使用3次DES加密数据,秘钥长度是112或168位。
  • AES:DES的替代方案,秘钥长度是128位、192位或256位,使用最多的对称加密算法。
  • IDEA:DES的替代方案,类似三重DES,秘钥长度是128位。

「SM系列」:SM1、SM4、SM7

  • SM1:(国产)商密1号算法,秘钥长度是128位,用来替代AES,算法不公开。
  • SM4:(国产)商密4号算法,秘钥长度是128位,用来替代AES,算法公开。
  • SM7:(国产)商密7号算法,秘钥长度是128位,算法未公开。

「RC系列」:RC2、RC4、RC5

  • RC2:DES的替代方案,秘钥长度是1~128位,已弃用。
  • RC4:流加密算法,密钥长度是40~204位。
  • RC5:参数可变,秘钥长度是0~2040位。

「fish系列」:BlowFish、TwoFish

  • BlowFish:DES的替代方案,分组长度64位,秘钥长度是32位到448位。
  • TwoFish:分组长度128位,秘钥长度是128、192、256位。

扩展:位是二进制的基本单位,有0和1两种表现形式;一个字节等于8位,也就是8个0或1。一个英文字符占一个字节,比如字符‘a’就是一个字节;一个汉字占两个字节,比如汉字“我”占两个字节。

2.1、DES

DES(Data Encryption Standard)是早期的数据加密标准,后来被发现不安全,已经淘汰了。

DES使用对称的分组加密算法,意思就是把数据分成多个数据块或分组,然后一块一块的加密。

  1. 数据分块:先把明文数据分成一个个64位的数据块,不足64位的就填充。
  2. 初始置换:把64位数据块作为输入,重新排序,生成新的64位数据块。
  3. 加密轮次:把64位数据块分为左右两个32位数据块,把右边的32位数据块扩展成48位的秘钥,用秘钥和左边的32位数据块进行异或,异或的32位结果和左边的32位数据拼接成新的64位数据块,作为下一轮加密的输入,重复进行16轮加密。
  4. 末尾置换:将加密后的64位数据块,重新排序,生成密文。

秘钥的长度是64位,减去8个校验位,实际有效的秘钥长度只有56位,很容易就能穷举出来。

2.1.1、生日攻击

生日攻击是密码学的攻击方式之一,DES就容易被生日攻击穷举爆破出来。

生日攻击来源于概率学中的生日问题,也叫生日悖论,这里的悖论是指跟人们的常识不同。比如一年有365天,生日就有365个,按照人们的常识,一间教室里最起码得有366个人才有可能出现两个人生日相同的情况。但实际上,一间教室只要有23个人,那么出现两个人生日相同的概率就会大于50%。

拿DES算法举例,DES的秘钥有效长度是54位,秘钥可能得数量就是2的54次方,这个数字看起来是巨大的,但按照生日攻击的逻辑,秘钥出现重复情况的概率要远比我们想象中的大,所以容易被穷举爆破。

2.2、3DES

3DES(Triple Data Encryption Standard)也叫Triple DES 或者 TDEA(Triple Data Encryption Algorithm),是三重加密算法,属于对称的分组加密算法,对一组64位的数据块执行三次DES算法,实现方式有4种:

  1. 使用三个不同的秘钥(k1,k2,k3)连续执行3次DES加密。
  2. 使用三个不同的秘钥(k1,k2,k3),第一次用DES加密,第二次用DES解密,第三次再用DES加密。
  3. 使用两个不同的秘钥(k1=k3,k2)连续执行3次DES加密。
  4. 使用两个不同的秘钥(k1=k3,k2),第一次用DES加密,第二次用DES解密,第三次再用DES加密。

前两种秘钥总长度是168位,后两种秘钥总长度是112位,比DES安全很多,但是加密时间太长,效率不高。

扩展:SSL/TLS协议信息泄露漏洞(CVE-2016-2183)就是因为TLS, SSH, IPSec协商及其他产品中使用的DES及Triple DES加密,被原理扫描出来的。Nessus将秘钥长度位64位~112位的任何加密判定为中等强度。

2.3、AES

AES(Advanced Encryption Standard)也叫高级加密标准,是美国国家标准技术研究所NIST为了取代DES而设定的加密标准。2000年从多个候选算法中选中Rijndael算法作为AES标准,2006年开始成为最流行的算法。

AES加密标准认为,安全的加密算法需要满足一下4个基本要求:

  1. 使用对称的分组加密方式。
  2. 分组长度最少128位。
  3. 秘钥长度最少128位。
  4. 算法容易被各种硬件和软件实现。

AES会把明文数据分成一个个128位的数据块,对每个数据块进行多轮行列混淆和加密。
AES支持128位、192位、256位三种秘钥长度,也就是我们常说的AES128、AES192、AES256。

2.4、IDEA

IDEA(International Data Encryption Algorithm)是国际数据加密算法。

将明文分割成64位的数据块,使用128位的秘钥进行加密。

加密强度很高,由于受专利保护,需要付费使用,所以使用量没有DES那么多。

2.4、SM1

SM1是商密1号算法,是国家密码管理局编制的商用的分组加密算法。

分组长度和秘钥长度都是128位,安全强度和AES相当。算法不公开,只能集成在芯片里使用。

2.6、SM4

SM4是商密4号算法,是国家密码管理局编制的商用的分组加密算法。

分组长度和秘钥长度是128位,安全强度和AES相当。算法公开,常用于无线局域网。

2.7、SM7

SM7是商密7号算法,是国家密码管理局编制的商用的分组加密算法。

分组长度和密钥长度都是128位,常用于非接触式IC卡,比如门禁卡、工作证、校园卡。

2.8、RC2

RC2是用来代替DES的对称的分组加密算法,

分组长度是64位,秘钥长度是可变的1~128位,在老旧机型上运行速度快,现在大部分场景下已经不推荐使用了。

2.9、RC4

RC4是一种对称的流加密算法,应用在有线等效保密协议WEP。

流加密就是使用固定长度的密钥生成一个随机的与明文数据字节数相同的密钥流,与明文的字节流逐位异或,生成密文。秘钥长度是可变的40位到2048位,

2.10、RC5

RC5是一种对称的分组加密算法,分组、秘钥可变。

分组长度可以是32位、64位、128位,秘钥长度是0~2040位,加密轮次随着长度的增加而增加。

2.11、BlowFish

BlowFish是用来替代DES的对称分组加密算法。

将明文分割成64位的数据块,使用32位到448位可变长度的秘钥进行加密。

加密强度很高,但分组块只有64位,相对于AES来说,更容易收到生日攻击。

2.12、TwoFish

TwoFish是一种对称的分组加密算法,常用于磁盘加密。

分组长度是128位,秘钥长度可以是是128位、192位、256位。

3、非对称算法

非对称算法的加密密钥和解密密钥是不同的,分别叫做公钥和私钥。公钥用来加密数据,可以公开传输;私钥用来解密数据,需要保密,保存在本地。

非对称算法的原理如下:

  1. 通信前,接收方生成一对密钥,将其中一个作为公钥发送给发送方;
  2. 发送方使用公钥将明文加密成密文,发送给接收方;
  3. 接收方使用私钥解密密文,拿到明文。

非对称算法通常是以某个数学难题为基础,扩展而来的,主要分大素数分解和离散对数这两种:

大素数分解类主要有:RSA

离散对数主要有:ECC、EIGamal、DSA、DH、SM2、SM9。

3.1、RSA

RSA是三个算法创始人名字的首字母缩写,以数学难题 大素数的因数分解 扩展出来的。

素数也叫质数,是一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,也就是除了1和它本身外不再有其他的因数。

因数分解就是把一个正整数写成几个约数的乘积,比如45可以分解成3×3×5

大素数的因数分解难题,简单来说就是:给出两个素数,很容易将他们相乘;但给出他们的乘积,想得到这两个素数就非常困难。比如我们给出一个几百位的素数,想要因数分解,从理论上来讲,几乎就是不可能的,这就是RSA算法安全性的保障。

素数越大,求解难度越高,官方给RSA的最小密钥长度要求是1024位。
DSA是1024位,ECC是160位

RSA的算法大致如下,大家了解大概步骤即可:

1)生成密钥:

  • 选择两个大素数p和q,计算他们的乘积 n=p×q。
  • 用欧拉函数计算t=(p-1)(q-1)。
  • 选择一个质数e,e和t互质,且1<e<t。
  • 计算e关于t的模逆元d,即(dxe)%t=1。
  • 生成公钥(n,e),生成私钥(n,d)

2)加密:

  • 将明文转化为整数m,m<n。
  • 用公钥加密m,密文c=m^e mod n。

3)解密:

  • 用私钥解密c,明文m=c^d mod n。

3.2、ECC

ECC(Elliptic curve cryptography)是椭圆曲线算法,以数学难题 椭圆曲线的离散对数 扩展出来的。

RSA的数学原理简单,实际应用中比较容易实现,求解难度是亚指数级的;而ECC的数学原理很复杂,实际应用中也比较难实现,求解难度是指数级的。ECC160位的密钥就能达到RSA1024位密钥的安全性,速度更快也更安全。

3.3、EIGamal

EIGamal是以数学难题 计算有限域上离散对数 扩展出来的。

求解离散对数是困难的,而其逆运算可以应用平方乘的方法有效的计算出来。

3.4、DSA

DSA(Digital Signature Algorithm)也叫DSS,是ElGamal的变种,也是以数学难题 有限域的离散对数 扩展出来的。

DSA的算法大致如下,了解步骤即可:

  1. 选择一个大素数p和一个小于p的奇数q,计算n=2p。
  2. 选择一个随机整数k(1 < k < q),计算g=g^k (mod p)。
  3. 私钥a^(p-1-k) ≡ 1 (mod p),1 < a < q,且a与q互质。
  4. 公钥b=g^a (mod p)。

3.5、DH

DH(Diffie-Hellman)是密钥交换协议,以数学难题 离散对数 扩展出来的,只用来协商密钥,不加密数据。

DH的算法大致如下,了解步骤即可:

  1. 发送方和接收方选择两个大素数 n 和 g。
  2. 发送方选择一个大随机整数 x,计算 X = g^x mod n,发送 X 给接收方。
  3. 接收方选择一个大随机整数 y,计算 Y = g^y mod n,发送 Y 给发送方。
  4. 发送方密钥 k1 = Y^x mod n;接收方密钥 k2=X^y mod n

密钥协商完成后,k1 == k2,n、 g、 X、Y都能在网络中捕获,但无法计算出密钥,除非能恢复x、y。发送方和接收方使用密钥和对称加密算法加密/解密数据。

3.6、SM2

SM2是商密2号算法,是国家密码管理局编制的商用的椭圆曲线公钥密码算法,以数学难题 椭圆曲线的离散对数 扩展出来的非对称加密算法。目的是替代RSA算法,算法未公开。

3.6、SM9

SM9是商密9号算法,是国家密码管理局编制的标识密码标准,加密强度相当于3072位的RSA,也是基于椭圆曲线的离散对数问题开发的非对称加密算法,主要用于身份认证,算法未公开。

4、哈希算法

哈希算法可以将任意长度的输入转换成固定长度的输出,用来保证数据的完整性。

哈希算法是单向的、不可逆的。数据只要有1个字符不一样,哈希值就会发生巨大变化,因此可以保证数据的完整性;计算哈希值需要用到密钥,密钥只有发送方和接收方有,因此可以保证数据不被其他发送者伪造;消息中携带的需要,可以保证数据发送的顺序。

常见的哈希算法有:MD5、SHA-1、SHA-2、SM3。

  • MD5:使用分组加密的方式计算哈希值,分组长度512位,输出是128位,容易碰撞,不安全。
  • SHA-1:使用分组加密的方式计算哈希值,分组长度512位,输出是160位,容易碰撞,不安全。
  • SHA-2:SHA-224、SHA-256、SHA-384、SHA-512这四个算法的统称,使用分组加密的方式计算哈希值,分组长度是512位,输出分别是224位、256位、284位、512位,不容易碰撞,相对安全。
  • SM3:商密3号算法,使用分组加密的方式计算哈希值,分组长度512位,输出是256位,安全性和SHA-256相同。

扩展:哈希碰撞就是两个不同的输入被转换成了相同的输出,因为哈希算法的输出长度是固定的,那它的结果集就是有限的。比如一年有365天,对应的有365个生日,当班里的人数超过365个时,就一定会有两个生日重复的人(实际上按照生日攻击的逻辑,23个人生日就有可能重复)。

4.1、消息鉴别码

消息鉴别码(Message Authentication Code,MAC)也叫消息认证码,使用密钥生成一个固定长度的输出,放在数据末尾一起传输,用来保证数据的完整性,实现身份验证。

计算消息鉴别码的算法教MAC函数,跟哈希函数类似,都是单向散列函数,不可逆,不同的是,哈希函数加密数据不需要密钥,只保证完整性,不做身份验证;而MAC函数加密数据需要密钥,即保证完整性,也能做身份验证。

4.2、数字签名

实现抗抵赖。

  1. 通信前,发送方将公钥发送给接收方。
  2. 通信时,发送方使用哈希算法计算出数据的哈希值,使用私钥加密哈希值得到数字签名,将数据和数字签名发送给接收方。
  3. 接收方使用同样的哈希算法计算数据的哈希值,并使用发送方的公钥解密数字签名得到哈希值,判断两个哈希值是否相同。

如果两个哈希值相同,就说明数据没有被伪造(真实性),就是你用私钥加密后发给我的(抗抵赖性)。

5、国密算法

前文提到的很多SM系列算法都是国密算法,由国家密码管理局发布。国密算法目前正在大力推广,相关政策规定关键信息基础设施系统、等保三级及以上系统、重要的电子政务平台都要使用国密算法做相应的改造。这一点我们必须要知道。

常用的国密算法:

  • SM1:(分组加密)对称加密算法,密钥长度128位,替代AES,集成在芯片里使用。
  • SM2:(椭圆曲线的离散对数)非对称加密算法,替代RSA。
  • SM3:(分组加密)哈希算法,输出长度256位,替代SHA-256。
  • SM4:(分组加密)对称加密算法,密钥长度128位,替代AES,用于无线局域网。
  • SM7:(分组加密)对称加密算法,密钥长度128位,替代AES,用于非接触式IC卡。
  • SM9:(椭圆曲线的离散对数)非对称加密算法,替代3072位的RSA。

6、PKI

PKI(Public Key Infrastructure)是公钥基础设施管理系统,利用公开密钥技术管理公开的密钥。

为了解决互联网中数据传输的保密性、完整性、身份认证和抗抵赖这四个问题,PKI通过第三方可信机构颁发数字证书,把用户信息和公钥绑定到一起。

PKI体系由4个部分组成:

  • CA(Certificate Authority):证书颁发机构,负责颁发和管理数字证书。
  • RA(注册权威):充当代理的角色,处理证书请求,分担CA的压力。
  • 证书库/CRL:通常以LDAP目录服务的形式存在,存储所有数字证书的数据库,维护CRL列表,CRL列表是证书黑名单,过期、吊销的证书都放在黑名单里。
  • 终端实体:使用证书的用户或应用程序。

6.1、数字证书

数字证书用来标识互联网中通讯各方的身份,证书内容至少要包含:证书有效期、颁发机构和机构的签名、证书持有者和持有者的公钥。

我们以百度为例查看百度的数字证书。点左边的小锁 -> 连接安全 -> 证书图标,打开证书,可以看到证书是颁发给百度的(baidu.com),颁发者是GlobalSign,有效期是一年。

在这里插入图片描述
点开详细信息可以看到公钥用的是2048位的RSA。

在这里插入图片描述

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

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

相关文章

【Python】利用代理IP爬取当当网数据做数据分析

前言 在数字化浪潮的推动下&#xff0c;电商平台已经彻底改变了我们的购物方式。从简单的在线交易到复杂的用户交互&#xff0c;电商平台积累了海量的用户数据。这些数据&#xff0c;如同隐藏在深海中的宝藏&#xff0c;等待着被发掘和利用。通过分析用户的浏览、搜索、购买等行…

Redis学习——Redisson 分布式锁集成及其简单使用

文章目录 引言1. Redisson概述1.1 Redisson的基本概念1.2 Redisson的主要功能1.3 Redisson的优点 2. 开发环境3. Redisson的安装与配置3.1 添加依赖3.2 配置Redisson 4. 使用Redisson4.1 可重入锁4.1.1 可重入锁的概念4.1.2 可重入锁的实现原理4.1.3 简单使用锁的获取和释放 4.…

数据恢复篇:如何在电脑上恢复已删除和丢失的音乐文件

尽管流媒体网络非常流行&#xff0c;但许多人仍然选择将音乐下载并保存在 PC 本地。这会使文件面临丢失或意外删除的风险。 幸运的是&#xff0c;您可以使用数据恢复软件恢复已删除的音乐和其他文件类型。这篇文章讨论了这些解决方案以及如何使用奇客数据恢复检索丢失的音乐文…

Java面试题--JVM大厂篇之深入了解G1 GC:高并发、响应时间敏感应用的最佳选择

引言&#xff1a; 在现代Java应用的性能优化中&#xff0c;垃圾回收器&#xff08;GC&#xff09;的选择至关重要。对于高并发、响应时间敏感的应用而言&#xff0c;G1 GC&#xff08;Garbage-First Garbage Collector&#xff09;无疑是一个强大的工具。本文将深入探讨G1 GC适…

抗腐蚀耐腐蚀不锈钢304/316L航空插头插座

不锈钢航空插头是一种专为航空航天、军事、工业等领域设计的连接器&#xff0c;具有高强度、耐腐蚀、耐高温等特点。它们通常用于在高振动、高湿度、高温度等恶劣环境下保持稳定的电气连接。不锈钢航空插头的设计充分考虑了这些极端条件&#xff0c;以确保信号和电源传输的可靠…

机器学习环境搭建

前言 个人笔记&#xff0c;记录框架和小问题&#xff0c;没有太详细记载。。 1、Anaconda安装 下载地址&#xff1a; Free Download | Anaconda &#xff08;慢&#xff09; ​ 国内镜像&#xff1a;https://link.csdn.net/?targethttp%3A%2F%2Fitcxy.xyz%2F241.html 下载…

(PC+WAP)高端大气的装修装潢公司网站模板

(PCWAP)高端大气的装修装潢公司网站模板PbootCMS内核开发的网站模板&#xff0c;该模板适用于装修公司网站、装潢公司网站等企业&#xff0c;当然其他行业也可以做&#xff0c;只需要把文字图片换成其他行业的即可&#xff1b;(PCWAP)&#xff0c;同一个后台&#xff0c;数据即…

【数据结构(邓俊辉)学习笔记】二叉搜索树04——AVL树

文章目录 1.重平衡1.1 AVL BBST1.2 平衡因子1.3 适度平衡1.4 接口1.5 失衡 复衡 2. 插入2.1 单旋2.2 双旋2.3 实现 3. 删除3.1 单旋3.2 双旋3.3 实现 4. &#xff08;3 4&#xff09;-重构4.1 "34"重构4.2 "34"实现4.3 rotateAt4.4 综合评价 1.重平衡 1…

SSZipArchive 解压后 中文文件名乱码问题

不知道什么情况&#xff0c;做为一个三方广泛使用的框架库&#xff0c;会出现这种比较低级的问题&#xff01; 还有中文的文件名解压后显示乱码&#xff01; 经过深入研究排查&#xff0c;发现目录或文件名编码错误&#xff01;但是POD库&#xff0c;不可能直接在里面改&#…

在线疫苗预约小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;工作人员管理&#xff0c;管理员管理&#xff0c;用户管理&#xff0c;疫苗管理&#xff0c;论坛管理&#xff0c;公告管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;公告&#xff0c;疫苗&…

SpringBoot + mkcert ,解决本地及局域网(内网)HTTPS访问

本文主要解决访问SpringBoot开发的Web程序,本地及内网系统,需要HTTPS证书的问题。 我测试的版本是,其他版本不确定是否也正常,测试过没问题的小伙伴,可以在评论区将测试过的版本号留下,方便他人参考: <spring-boot.version>2.3.12.RELEASE</spring-boot.vers…

redis-cluster(集群模式搭建)

redis中间件版本: redis-5.0.5环境介绍 这里使用服务器数量3&#xff0c;分别为172.0.0.1&#xff0c;172.0.0.2&#xff0c;172.0.0.3&#xff0c;每台机器redis节点数量2个&#xff0c;共6个redis节点构成redis-cluster模式。编译安装包 在172.0.0.1的机器上进入安装目录 cd …

【6.26更新】Win10 22H2 19045.4598镜像:免费下载!

当前微软已经发布了六月最新的KB5039299更新补丁&#xff0c;用户完成升级后&#xff0c;系统版本号将更新至19045.4598。此次更新解决了任务栏上应用跳转列表失败、可能导致系统无法从休眠状态恢复等多个问题&#xff0c;推荐大家升级。如果您不知道去哪里才能下载到该版本&am…

【JavaEE】JVM

文章目录 一、JVM 简介二、JVM 运行流程三、JVM 运行时数据区1、堆&#xff08;线程共享&#xff09;2、Java虚拟机栈&#xff08;线程私有&#xff09;3、本地方法栈&#xff08;线程私有&#xff09;4、程序计数器&#xff08;线程私有&#xff09;5、方法区&#xff08;线程…

002-关于Geogebra软件的介绍及与MatLab的区别

为什么要学Geogebra&#xff1f; 因为和MatLab的科学计算相比&#xff0c;GeoGebra重点突出教学展示&#xff0c;对于教师、学生人群来讲再合适不过了&#xff0c;尤其是可以融入到PPT里边呈现交互式动画&#xff0c;想想听众的表情&#xff01;这不就弥补了看到PPT播放数学公…

WEB攻防-XSS跨站反射型存储型DOM型标签闭合输入输出JS代码解析

文章目录 XSS跨站-输入输出-原理&分类&闭合XSS跨站-分类测试-反射&存储&DOM反射型XSS存储型XSSDOM-base型XSS XSS跨站-输入输出-原理&分类&闭合 漏洞原理&#xff1a;接受输入数据&#xff0c;输出显示数据后解析执行 基础类型&#xff1a;反射(非持续…

2010-2022年 政府透明度指数报告整理

政府透明度指数报告是衡量政府透明度的重要工具&#xff0c;它由独立的评估机构或研究机构发布&#xff0c;用以反映政府在不同方面的表现。以下是对政府透明度指数报告的详细介绍&#xff1a; 数据简介 定义&#xff1a;政府透明度指数报告衡量的是政府在信息公开、政策制定…

Apache ZooKeeper 简介

介绍 Apache ZooKeeper 是一种分布式协调服务&#xff0c;旨在管理和同步大量分布式应用程序。ZooKeeper 是 Apache 软件基金会下的一个开源项目&#xff0c;它解决了维护分布式应用程序的配置信息、命名、分布式同步和组服务的复杂性。本文探讨了 ZooKeeper 的架构、功能、应…

在安装HDFS过程中遇见Permission denied

HDFS Shell命令权限不足问题解决 问题 想必有同学在实战Shell的时候&#xff0c;遇到了&#xff1a; Permission denied: userroot, accessWRITE, inode"/":hadoop:supergroup:drwxr-xr-x 这种类似的问题。 问题的原因就是没有权限&#xff0c;那么为什么呢&#…

PyTorch之nn.Module、nn.Sequential、nn.ModuleList使用详解

文章目录 1. nn.Module1.1 基本使用1.2 常用函数1.2.1 核心函数1.2.2 查看函数1.2.3 设置函数1.2.4 注册函数1.2.5 转换函数1.2.6 加载函数 2. nn.Sequential()2.1 基本定义2.2 Sequential类不同的实现2.3 nn.Sequential()的本质作用 3. nn.ModuleList参考资料 本篇文章主要介绍…