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

常用的密码算法有哪些?

我们将密码算法分为两大类。

  • 对称密码(密钥密码)——算法只有一个密钥。如果多个参与者都知道该密钥,该密钥 也称为共享密钥。
  • 非对称密码(公钥密码)——参与者对密钥的可见性是非对称的。例如,一些参与者仅 知道公钥,而另一些参与者同时知道公钥和私钥。

虽然对称密码和非对称密码并不是密码学中仅有的两类原语,但是由于我们很难对密码学的 其他的子类进行划分,所以本书的大部分篇幅都是关于对称和非对称密码原语的。当今广泛应用 的密码算法都包含在这两类原语中。另一种划分密码学原语的方式如下。

  • 基于数学理论构造——这种密码算法的构造都建立在诸如因子分解之类的数学困难问题 上。基于 RSA 算法的数字签名和非对称加密就属于这种构造。
  • 基于启发式构造——这种算法的构造依赖于密码分析者的观察和统计分析。AES 算法就 是这种构造的典型案例。

这种分类方式还考虑到算法效率因素,基于数学理论构造通常比基于启发式构造的密码算法 要慢得多。我们可以得出这样的结论:对称密码大多数都是基于启发式构造的,而非对称密码主 要是基于数学理论构造的。

我们很难严格地对密码学涉及的所有算法进行准确分类。事实上,每本书或每门课程对密码 学定义和分类都有所不同。其实,这些定义和分类对我们来说并不重要, 因为我们只会将这些密码学原语看作独特且具有各自的安全声明的工具。反过来,我们可以把这些工具当作构造安全协 议的基础原语。对于实现协议安全,了解这些工具的工作原理以及提供的安全声明才是重中之重。 出于这种考虑,本书的第一部分主要介绍常用的密码原语及其安全属性。

本书中的许多概念在初次使用时可能比较难懂。但与学习和理解其他知识一样,对这些概念 了解得越多,在具体语境中见到的次数越多,我们就越能把它们抽象出来,理解起来也就愈加自 然。本书的作用就是帮助读者建立起密码算法构造的抽象思维模型,理解把各类密码算法组合在 一起形成安全协议的方法。本书会反复提到各类密码原语构造的接口,给出它们在现实世界的实 际使用示例。

密码学以前的定义很简单,其原理类似于 Alice 和 Bob 想要交换秘密信息。当然,现在密码学 的定义已经有了变化。当今,密码学围绕着新的发现、突破和实际需求演变成一门非常复杂的学科。 归根结底,密码学的真正目的在于增强协议安全性,使协议在敌手存在的情况下仍能安全运行。

为了准确地理解密码学使协议变得安全的原理,厘清协议所要达到的一系列安全目标至关重 要。本书涉及的密码原语至少满足下面性质中的一条。

  • 机密性——掩藏和保护一些不想让别人看到的消息。例如,加密就可以掩盖传输中的消息。
  • 认证性——确定通信另一方的身份。例如,认证技术可以让我们确信接收到的消息确实 是由 Alice 发送来的。

当然,这里只是对密码学所能提供的算法功能进行了简化。在大多数情况下,每个密码原语 的安全定义中都包含对算法功能的详细说明。密码原语的使用方式不同,协议产生的安全属性也 会不同。

在本书中,我们将会学习一些新的密码原语,同时还会学习将它们组合起来实现满足机密性或认证性等安全属性的方法。请认识到这样一个事实:密码学是一门在敌手存在的环境下为协议提供安全保护的技术。虽然本书对“敌手”还没给出明确的定义,但是我们可以把企图破坏协议 的参与者、观察者、中间人都当作敌手。这些角色反映了现实生活中敌手可能的身份。毕竟,密 码学是一个实用的领域,它最终对抗的坏人是有血有肉的。


对称密码:对称加密概述

对称加密(Symmetric Encryption)是密码学的重要概念之一。对称密码在密码学中有着举足 轻重的地位,本书中的大多数密码算法或协议都用到对称密码。现在,我们借助将要介绍的第一 个协议引入对称加密这个新概念。想象这样一个情景:Alice 需要给住在城堡外的 Bob 寄送一封 信件。如图 1.1 所示,Alice 要求她忠实的信使(Messenger)骑上他的骏马,穿越前方危险的土 地,向 Bob 传递重要消息。然而,Alice 对信使很是怀疑;尽管这位忠实的信使为她效劳多年, 但她仍希望此次传递的消息对包括信使在内的所有被动观察者均保密。试想一下,这封信可能包 含一些关于王国的流言蜚语。

Alice 需要的是一个协议,它能模拟 Alice 亲自将消息传递给 Bob 的过程。这是一个在现实 中不可能解决的问题,除非我们采用密码学(或隐形传输)技术。这就要用到密码学家多年前发 明的一种新型加密算法,常称为对称加密算法(Symmetric Encryption Algorithm)。

注意:

顺便说一下, 密码学算法通常也被称为密码学原语。我们可以将密码学原语视为密码学中一种 最小的算法构造,它通常与其他原语一起用于构造新的协议。“密码学原语”一词经常出现在相关 文献中,了解它有利于阅读文献,但它本身确实没有特别的意义,仅仅是一个新的术语而已。

接下来,让我们看看如何使用这个对称加密算法向信使隐藏 Alice 的真实消息。现在,假设 这个密码学原语是一个提供了以下两个函数的黑盒子(我们无法看到它的内部构造)。

  • ENCRYPT;
  • DECRYPT 。

第一个函数 ENCRYPT 以密钥(Secret Key) 和消息(Message)为输入,它输出一系列看起 来像是随机选择的数字,如果我们愿意的话,它也可以输出像噪声一样的数据。我们把这个函数 的输出称为加密消息。函数 ENCRYPT 的原理如图 1.2 所示。

第二个函数 DECRYPT 是第一个函数 ENCRYPT 的逆函数,它以 ENCRYPT 输入的密钥和输 出的加密消息为输入,输出原始消息。函数 DECRYPT 的原理如图 1.3 所示。

为了使用这个新的密码学原语,Alice 和 Bob 不得不在现实世界中先会面一次,商定他们将 要使用的密钥。之后,Alice 可以使用商定的密钥和函数 ENCRYPT 去保护她的消息。接着,她 将加密的消息交给信使,并由信使转交给 Bob 。Bob 收到加密的消息后,使用与 Alice 相同的密钥和函数 DECRYPT 恢复出原始消息。具体过程如图 1.4 所示。

在该消息传递过程中,信使拥有的都是看起来随机的消息,这不会对他获得隐藏的消息提供 任何有意义的帮助。借助密码学技术,我们有效地将不安全的协议转变为安全协议。新协议使得 Alice 可以在没有任何人(除 Bob 外)知道消息内容的情况下向 Bob 传递一封机密信件。

在密码学中,使一个协议变得安全的常见做法就是:使用密钥将消息转变成噪声,使经过变 换后的消息与随机数字序列无法区分开来。在接下来的章节中,我们将通过学习更多的密码算法 来了解这个过程。

顺便说一句,对称加密是对称密码(Symmetric Cryptography)或密钥密码(Secret Key Cryptography)的一部分。此类密码学原语的不同函数往往使用相同的密钥。在后面的章节中, 我们还会看到密钥有时不止一个。

非对称加密:两个密钥优于一个密钥

在前面关于对称加密的讨论中,我们曾提到:Alice 和 Bob 在安全传递信件前需要见面,以 确定他们将要使用的对称加密密钥。这是一个合理的要求,许多协议实际上都有这样的前提要求。 然而,这样的要求在有许多参与者的协议中很快变得不那么实用:在安全连接到谷歌、Facebook 、 亚马逊和其他数十亿网站之前, 网络浏览器是否也要满足这样的要求(即在连接前,浏览器之间要相互确定使用的对称加密密钥)?

这也称为密钥分发问题,在相当长的一段时间内该问题都未被解决,直到 20 世纪 70 年代末 密码学家发现了另一类称为非对称密码(Asymmetric Cryptography)或公钥密码(Public Key Cryptography)的算法,密钥分发问题才得以解决。在非对称密码中,不同的函数(ENCRYPT 和 DECRYPT )使用不同的密钥(对称密码仅使用单个密钥)。为了说明公钥密码如何帮助人们 建立信任,我将在本节介绍一些非对称密码原语。注意,这些原语只是本书内容的概览,在后续 章节中我们会更详细地讨论这些密码原语。

以上内容来自《深入浅出密码学》

密码学大咖DavidWong编写,专业团队翻译,通过插图和简明的描述,深入浅出讲解密码学,书中附有配套彩图、章节习题及答案,帮你巩固知识点。

全书分为两个部分,第一部分介绍密码原语,涉及密码学基础概念、哈希函数、消息认证码、认证加密、密钥交换、非对称加密和混合加密、数字签名与零知识证明、随机性和秘密性等内容;第二部分涉及安全传输、端到端加密、用户认证、“加密货币”、硬件密码学、后量子密码、新一代密码技术等内容。

本书形式新颖、深入浅出,非常适合密码学领域的师生及信息安全从业人员阅读,也适合对密码学及其应用感兴趣的读者阅读。

相关文章:

常用的密码算法有哪些?

我们将密码算法分为两大类。 对称密码(密钥密码)——算法只有一个密钥。如果多个参与者都知道该密钥,该密钥 也称为共享密钥。非对称密码(公钥密码)——参与者对密钥的可见性是非对称的。例如,一些参与者仅…...

SNS (Simple Notification Service)简介

SNS (Simple Notification Service) 是一种完全托管的发布/订阅消息收发和移动通知服务,用于协调向订阅终端节点和客户端的消息分发。 和SQS (Simple Queue Service)一样,SNS也可以轻松分离和扩展微服务,分布式系统和无服务应用程序&#xf…...

JVM初步理解浅析

一、JVM的位置 JVM的位置 JVM在操作系统的上一层,是运行在操作系统上的。JRE是运行环境,而JVM是包含在JRE中 二、JVM体系结构 垃圾回收主要在方法区和堆,所以”JVM调优“大部分也是发生在方法区和堆中 可以说调优就是发生在堆中&#xf…...

【巨人的肩膀】MySQL面试总结(一)

💪 目录💪1、什么是ER图2、数据库范式了解吗3、超键、候选键、主键、外键分别是什么?4、为什么不推荐使用外键与级联5、什么是存储过程6、drop、delete与truncate区别7、数据库设计通常分为那几步8、什么是关系型数据库9、什么是SQL10、MySQL…...

【数据结构之树】——什么是树,树的特点,树的相关概念和表示方法以及在实际的应用。

文章目录一、1.树是什么?2.树的特点二、树的相关概念三、树的表示方法1.常规方法表示树2.使用左孩子右兄弟表示法3. 使用顺序表来存储父亲节点的下标三、树在实际的应用总结一、1.树是什么? 树是一种非线性的数据结构,它是由n(n&…...

JavaScript语法

文章目录一、JavaScript是什么?JavaScript引入方式二、基础语法书写语法输出语句变量数据类型运算符流程控制语句数组函数JS变量作用域对象一、JavaScript是什么? JavaScript:是一门跨平台的脚本语言,用来控制网页行为&#xff0…...

【BIOS/UEFI】HII 基本框架及概述

HII(Human Interface Infrastructure )定义了一套管理用户输入的基础框架。HII数据库主要提供用户安装、卸载以及使用各种字符串、字体和图片等资源的接口。 HID Devices 是用户输入设备,如键盘、串口和网络;Display Devices 是输…...

sprintf(...)溢出边界导致程序崩溃的问题

文章目录小结问题及解决参考小结 使用sprintf(...)进行格式化是一种标准的做法,但是这样做是有一个极大的风险,由于sprintf(...)不进行边界检查,这样会有写操作溢出边界的风险,并导致程序崩溃。本文进行了简单写操作溢出边界的测…...

公式推导+dfs简版

写在前面的话:心可以冷,但手不能停 第一题:C. Flexible String 题目大意:给一个aaa字符串和bbb字符串和数字kkk,首先设置一个计数器cntcntcnt,其中可以对aaa字符串做以下操作:替换aaa中的一个字母xxx&#…...

论文笔记 | 标准误聚类问题

关于标准误的选择,如是否选择稳健性标准误、是否采取聚类标准误。之前一直是困惑的,惯用的做法是类似主题的文献做法。所以这一次,借计量经济学课程之故,较深入学习了标准误的选择问题。 在开始之前推荐一个知乎博主。他阅读了很…...

银行管理系统--课后程序(Python程序开发案例教程-黑马程序员编著-第7章-课后作业)

实例1:银行管理系统 从早期的钱庄到现如今的银行,金融行业在不断地变革;随着科技的发展、计算机的普及,计算机技术在金融行业得到了广泛的应用。银行管理系统是一个集开户、查询、取款、存款、转账、锁定、解锁、退出等一系列的功…...

【18】组合逻辑 - VL18 实现3-8译码器①

VL18 实现3-8译码器① 1 题目 【这题我的思路非常绝境】奈斯 !! 看真值表的思路:Yi所在列【0仅一个其余全1】,故【以0为对象求解】 观察发现:E3 E2_n E1_n = 100 时 是 译码的使能信号 ; 并且E3 E2_n E1_n为其他值时,都不使能译码 然后就很简单,没有仿真就成功了 2 代…...

2020蓝桥杯真题最长递增 C语言/C++

题目描述 在数列a_1 ,a_2,⋯,a_n 中&#xff0c;如果a_i <a_i1 <a_i2<⋯<a_j&#xff0c;则称 a_i至 a_j为一段递增序列&#xff0c;长度为 j−i1。 定一个数列&#xff0c;请问数列中最长的递增序列有多长。 输入描述 输入的第一行包含一个整数 n。 第二行包含…...

华为OD机试题 - 寻找连续区间(JavaScript)| 机考必刷

更多题库,搜索引擎搜 梦想橡皮擦华为OD 👑👑👑 更多华为OD题库,搜 梦想橡皮擦 华为OD 👑👑👑 更多华为机考题库,搜 梦想橡皮擦华为OD 👑👑👑 华为OD机试题 最近更新的博客使用说明本篇题解:寻找连续区间题目输入输出示例一输入输出说明示例二输入输出Cod…...

一次疲惫的调试--累了及时透气

原创 射频清茶 深山小老虎 2023-03-11 14:32发表于广东 收录于合集 #射频调试3个 #网分4个 #Wi-Fi 2个 进来透透气 道不尽红尘舍恋 诉不完人间恩怨 世世代代都是缘 喝着相同的水 留着相同的血 这条路漫漫又长远 红花当然配绿叶 这一辈子谁来陪 渺渺茫茫来又回 往日情景再…...

综合练习7 摄氏度转华氏温度(“\t“的使用,循环语句)

综合练习7 摄氏度转华氏温度 使用do…while循环&#xff0c;在控制台输入摄氏温度与华氏温度的对照表。 对照表从摄氏温度-30℃到50℃&#xff0c;每行间隔10℃&#xff0c;运行如下&#xff1a; 摄氏温度&#xff1a;-30℃ 华氏温度&#xff1a;-22.0℉ 摄氏温度&#xff1a;…...

AWS数据库总结

RDS – 联机事务处理OLTP&#xff08;Online Transaction Processing&#xff09;&#xff0c;包括&#xff1a; SQL ServerOracleMySQL ServerPostgreSQLAuroraMariaDB非关系数据库DynamoDB数据仓库RedShift – 联机分析处理OLAP&#xff08;Online Analytics Processing&…...

2个步骤就能批量给视频添加滚动字幕

现在很多小伙伴在剪辑视频的时候都会给自己的视频添加适配的字幕&#xff0c;但是有很多的视频想要添加一样的滚动字幕时&#xff0c;有一个能批量添加剪辑的工具非常重要&#xff0c;今天小编就给大家分享一个可以批量剪辑大量视频的工具&#xff0c;下面一起看看具体的操作步…...

PHP 的运行方式有哪些?

PHP本质上的运行方式可以分为两种&#xff1a; 基于命令行的基于PHP-FPM的 但实际上&#xff0c;PHP能做的事很多&#xff0c;很多场景下&#xff0c;不同的运行方式能让开发更方便&#xff0c;减轻各种工作。 测试开发 PHP内置了一个HTTP 的server。这意味着&#xff0c;很…...

Web学习3_JavaScript

1.1 JS的调用方式与执行顺序 使用方式 HTML页面中的任意位置加上<script type"module"></script>标签即可。 常见使用方式有以下几种&#xff1a; 直接在<script type"module"></script>标签内写JS代码。script type"modu…...

「MySQL基础」不可重复读和幻读的区别

「MySQL基础」不可重复读和幻读的区别 文章参考&#xff1a; 在数据库中不可重复读和幻读到底应该怎么分&#xff1f; 作者&#xff1a;暖猫Suki、普通熊猫 文章目录「MySQL基础」不可重复读和幻读的区别一、概述二、小结一、概述 正好在琢磨这个问题&#xff0c;也被搞得头昏…...

CorelDRAW2023最新版新增功能200多个新模板

CorelDRAW是一款平面矢量绘图排版软件&#xff0c;CorelDRAW运用涵盖企业VI设计&#xff0c;广告设计&#xff0c;包装设计&#xff0c;画册设计&#xff0c;海报、招贴设计&#xff0c;UI界面设计&#xff0c;网页设计&#xff0c;书籍装帧设计&#xff0c;插画设计&#xff0…...

springboot自定义日志以及行号正确展示

在开发springboot项目时&#xff0c;我们可能需要自定义日志实现。需要对slf4j的日志实现进行一次外层包装 这个很简单&#xff0c;按照org.slf4j.Logger方式定义一个类Logger类MyLogger。 让后实现MyLoggerImpl&#xff1a; public class MyLoggerImpl implements CoreLogge…...

【GAOPS055】verilog 乘法、除法和取余

乘法硬件原理 结论 可以将乘法A x B转为A的移位相加。 利用乘2n就是左移n位的特性乘2^n就是左移n位的特性乘2n就是左移n位的特性&#xff0c;将数拆分为2n2^n2n表示 思路1 原始列竖式计算方法ref例2.9 思路2 B总是可以拆分为&#xff1a;B(an2nan−12n−1...a121a020)B(…...

TCP UPD详解

文章目录TCP UDP协议1. 概述2. 端口号 复用 分用3. TCP3.1 TCP首部格式3.2 建立连接-三次握手3.3 释放连接-四次挥手3.4 TCP流量控制3.5 TCP拥塞控制3.6 TCP可靠传输的实现3.7 TCP超时重传4. UDP5.TCP与UDP的区别TCP UDP协议 1. 概述 TCP、UDP协议是TCP/IP体系结构传输层中的…...

金三银四、金九银十 面试宝典 MySQL面试题 超级无敌全的面试题汇总(超万字的面试题,让你的MySQL无可挑剔)

MySQL数据库 - 面试宝典 又到了 金三银四、金九银十 的时候了&#xff0c;是时候收藏一波面试题了&#xff0c;面试题可以不学&#xff0c;但不能没有&#xff01;&#x1f941;&#x1f941;&#x1f941; 一个合格的 计算机打工人 &#xff0c;收藏夹里必须有一份 MySQL 八…...

【Java】初识Java

Java和C语言有许多类似之处&#xff0c;这里就只挑不一样的点来说&#xff0c;所以会比较杂乱哈~ 目录 1.数据类型 2.输入与输出 2.1三种输出 2.2输入 2.3循环输入输出 //猜数字小游戏 //打印乘法口诀表 3.方法 //交换两个数&#xff08;数组的应用&#xff09; //模…...

JVM相关知识

JVM类加载过程类什么时候被加载什么情况下会发生栈内存溢出JVM内存模型常量池回收方法区垃圾回收流程圾收集算法分代收集理论标记-清除算法标记-复制算法标记-整理算法类加载过程 加载–验证–准备–解析–初始化–使用–卸载 ​ 加载&#xff1a;通过全类名获取类的二进制流…...

【LeetCode】剑指 Offer(21)

目录 题目&#xff1a;剑指 Offer 39. 数组中出现次数超过一半的数字 - 力扣&#xff08;Leetcode&#xff09; 题目的接口&#xff1a; 解题思路&#xff1a; 代码&#xff1a; 过啦&#xff01;&#xff01;&#xff01; 题目&#xff1a;剑指 Offer 40. 最小的k个数 -…...

线性求解器Ax=b的验证

文章目录前言Matrix MarketMatlab IORead dataWrite data测试C IORead and write dataDownload MatrixIO 代码下载参考网址前言 一般情况集成了一个线性求解器&#xff08;Axb&#xff09;&#xff0c;我们需要验证其性能和精度&#xff0c;这时需要大量数据来做验证&#xff…...

java 事件处理机制 观察者模式

事件处理机制有三个要素事件、事件源、事件监听与java的对应关系如下事件事件源事件监听javaclassjava.util.EventObjectjava.util.EventObject 的 source 属性interfacejava.util.EventListener观察者模式又被称为发布-订阅&#xff08;Publish/Subscribe&#xff09;模式&…...

使用 HTML5 轻松验证表单插件

下载:https://download.csdn.net/download/mo3408/87559594 效果图: 当您通过表单从人们那里收集信息时,必须应用某种验证。如果不这样做,可能会导致客户流失、数据库中的垃圾数据甚至网站的安全漏洞。从历史上看,构建表单验证一直很痛苦。在服务器端,全栈框架会为您处理…...

【Error: ImagePullBackOff】Kubernetes中Nginx服务启动失败排查流程

❌pod节点启动失败&#xff0c;nginx服务无法正常访问&#xff0c;服务状态显示为ImagePullBackOff。 [rootm1 ~]# kubectl get pods NAME READY STATUS RESTARTS AGE nginx-f89759699-cgjgp 0/1 ImagePullBackOff 0 103…...

九龙证券|直逼1.5万亿!A股融资余额创年内新高,青睐这些行业和个股

2023年以来&#xff0c;A股商场震动重复&#xff0c;商场走势整体先扬后抑&#xff0c;各路资金看法纷歧&#xff0c;但数据显现&#xff0c;融资客在此期间整体持续净买入&#xff0c;未受到商场动摇的明显冲击&#xff0c;融资余额日前已迫临1.5万亿元&#xff0c;创出年内新…...

【JavaScript】36_正则表达式

正则表达式 正则表达式 正则表达式用来定义一个规则通过这个规则计算机可以检查一个字符串是否符合规则 或者将字符串中符合规则的内容提取出来 正则表达式也是JS中的一个对象&#xff0c; 所以要使用正则表达式&#xff0c;需要先创建正则表达式的对象 new RegExp() 可以…...

参考 | 辨别真假笔记本三星内存条 (ddr4)

参考 | 辨别真假笔记本三星内存条 (ddr4) 文章目录参考 | 辨别真假笔记本三星内存条 (ddr4)1. 三星内存条标签纸上编码的含义2. 三星内存颗粒上编码的含义3. 辨别内容参考1. 三星内存条标签纸上编码的含义 内存条贴张上面有两串值得注意的编码, 其中编码的具体意义参考三星官方…...

JavaScript Math(算数)对象

Math&#xff08;算数&#xff09;对象的作用是&#xff1a;执行常见的算数任务。在线实例round()如何使用 round()。random()如何使用 random() 来返回 0 到 1 之间的随机数。max()如何使用 max() 来返回两个给定的数中的较大的数。&#xff08;在 ECMASCript v3 之前&#xf…...

MyBatis里面用了多少种设计模式?

在MyBatis的两万多行的框架源码中&#xff0c;使用了大量的设计模式对工程架构中的复杂场景进行解耦&#xff0c;这些设计模式的巧妙使用是整个框架的精华。经过整理&#xff0c;大概有以下设计模式&#xff0c;如图1所示。图101类型&#xff1a;创建型模式▊ 工厂模式SqlSessi…...

第三十二周精华分享(2023.02.27-2023.03.06)

本帖是知识星球各类问答以及文章精华沉淀区&#xff0c;而知识星球相关资源沉淀则在置顶帖的「资源沉淀」中。 学计算机的都应该知道有个局部性原理&#xff0c;其实局部性原理在很多场合都适用&#xff0c;比如80%的圈友的痛点或者疑惑其实都集中在一些固定的方面或者问题上&…...

数学建模资料整理

数学建模中有三类团队&#xff1a; 第一类&#xff1a;拿到题目&#xff0c;讨论&#xff0c;然后建模手开始建模&#xff0c;编程手开始处理数据&#xff0c;写作手开始写作。 第二类&#xff1a;拿到题目&#xff0c;团内大佬&#xff0c;开始建模&#xff0c;然后编程&#…...

设计模式---抽象工厂模式

目录 1 介绍 2 优缺点 3 实现 1 介绍 抽象工厂模式(Abstract Factory Pattern) 是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式&#xff0c;它提供了一种创建对象的最佳方式。 在抽象工厂模式中&#xff0c;接口是负…...

Java Web 实战 07 - 多线程基础之单例模式

大家好 , 这篇文章给大家带来的是单例模式 , 单例模式中分为懒汉模式和饿汉模式 , 懒汉模式是需要用的到的时候才去创建实例 , 而饿汉模式是程序一启动就立刻创建实例 , 在这其中还有很多其他问题需要我们去研究 推荐大家跳转到这里 , 观看效果更加 上一篇文章的链接我也贴在这…...

uniapp上实现左右关联滚动

先看效果&#xff1a; 代码&#xff1a; <template><view class"container"><!-- 左侧fixed导航区域 --><view class"left"><viewv-for"item in leftList":key"item.id"class"left_item":class…...

Docker Remote API未授权访问

目录Docker简述Docker 2375端口安全风险Docker命令连接利用声明&#xff1a;本文仅供学习参考&#xff0c;其中涉及的一切资源均来源于网络&#xff0c;请勿用于任何非法行为&#xff0c;否则您将自行承担相应后果&#xff0c;本人不承担任何法律及连带责任。Docker简述 Docke…...

【蓝桥杯】第十四届蓝桥杯模拟赛(第三期)C++ (弱go的记录,有问题的话求指点)

博主是菜鸡啦&#xff0c;代码仅供参考&#xff0c;只确定能过样例&#xff0c;嘻嘻~第一题&#xff0c;填空题问题描述请找到一个大于 2022 的最小数&#xff0c;这个数转换成十六进制之后&#xff0c;所有的数位&#xff08;不含前导 0&#xff09;都为字母&#xff08;A 到 …...

算法24:LeetCode_并查集相关算法

目录 题目一&#xff1a;力扣547题&#xff0c;求省份数量 题目二&#xff1a;岛屿数量 题目三&#xff1a;岛屿数量拓展 什么是并查集&#xff0c;举个简单的例子。学生考试通常会以60分为及格分数&#xff0c;我们将60分及以上的人归类为及格学生&#xff0c;而60分以下归…...

TypeScript核心知识点

TypeScript 核心 类型注解 知道&#xff1a;TypeScript 类型注解 示例代码&#xff1a; // 约定变量 age 的类型为 number 类型 let age: number 18 age 19: number 就是类型注解&#xff0c;它为变量提供类型约束。约定了什么类型&#xff0c;就只能给该变量赋值什么类型的…...

基于“遥感+”融合技术在碳储量、碳收支、碳循环等多领域监测与模拟实践

以全球变暖为主要特征的气候变化已成为全球性环境问题&#xff0c;对全球可持续发展带来严峻挑战。2015年多国在《巴黎协定》上明确提出缔约方应尽快实现碳达峰和碳中和目标。2019年第49届 IPCC全会明确增加了基于卫星遥感的排放清单校验方法。随着碳中和目标以及全球碳盘点的现…...

外卖点餐系统小程序 PHP+UniAPP

一、介绍 本项目是给某大学餐厅开发的外面点餐系统&#xff0c;该项目针对校内的学生&#xff0c;配送由学校的学生负责配送。因此&#xff0c;该项目不同于互联网的外卖点餐系统。 该系统支持属于 Saas 系统&#xff0c;由平台端、商家端、用户端、以及配送端组成。 其中&a…...

vuex3的介绍与state、actions和mutations的使用

一、定义官网&#xff1a;Vuex 是什么&#xff1f; | Vuex (vuejs.org)Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态&#xff0c;并以相应的规则保证状态以一种可预测的方式发生变化。二、安装cdn<script src"/path/…...