《密码编码学与网络安全原理与实践》第十四章第十五章密钥管理和用户认证

news2024/12/24 0:02:29

密钥管理与分发

密钥分发管理

传统上,对称加密被用于实现消息的保密性(confidentiality)

面临的攻击:局域网内监听、搭线窃听

传输媒介:线缆(双绞线、同轴电缆、光纤) (电磁波干扰)、微波链路、卫星信道

保密通信两种基本选择:链路加密(link encryption)、端对端加密(end-to-end encryption)

在这里插入图片描述

两种方法的共用提供了一个好的模式

主机用端对端加密密钥来加密用户数据;整个分组使用链路加密

分组在网络中传输时,各个节点用链路加密密钥来解密信息头。然后再加密,发送到下一条链路;仅在分组交换节点的存储器内可以看到信息头的明文

WAP Security (Wireless Application Protocol)(无线应用协议)

Crossing the WAP Security Gap (安全鸿沟)

在网关, WTLS(Wireless Transport Layer Security(无线安全传输层)消息被转换为SSL消息,在很短的时间内,消息在网关内是明文,形成安全软肋。

链路加密:一般处于较低层次(OSI的物理层或者链路层)

端到端加密:网络层或传输层、表示层或应用层;两个不同体系结构的网络之间、相同体系结构但相互隔离的网络之间

加密所在逻辑层次越高,需要加密的数据越少且越安全

缺点是随着实体个数上升,会更加复杂且密钥数量更多

对网络层加密,可以使用带有加密函数的前端处理器(FEP),通常是末端系统的网卡,来实现整个网络传输的安全性

对具有类似存储转发功能的电子邮件等应用,获得端对端加密只能在应用层上进行

在这里插入图片描述

除链路头外的网络层数据头、TCP头、IP头和数据均被加密,因此到达路由器时就需要暂时解密为明文。在网关中也是如此。

以TCP层加密为例,消息过网关时,TCP连接被终止并开始新连接,用户数据被解密。并在下一次传输前再对用户数据和TCP加密。在网关内部的缓冲区内数据暂时是明文。

传输保密性和流量分析

可从数据传输分析中得到的信息:通信双方的身份、通信双方通信的频率、报文模式、报文长度、报文数量、特定的通信之间交谈所关联的事件

传输保密性的实现(防范手段):

链路加密方式:分组首部加密–但仍可以看到网络中的总通信量;通信量填充(浪费带宽)

端到端加密方式:有很大限制(应用层:攻击者可以判断出通信双方;传输层:攻击者可以得到网络层的地址和传输格式);填充数据单元;发送空白报文(浪费带宽)

对称加密中的密钥分配和管理

密钥分配方式:

1、由A选定密钥,物理地传送给B

2、第三方选定密钥,物理地传送给A和B

3、使用A和B共有的旧密钥加密新密钥后传送给另一方

4、A和B都有到第三方的加密连接,则由第三方用加密连接传送给A和B

其他……

密钥分配问题的规模取决于通信的个数(在网络层或者IP层实现端对端加密:要求每对主机都要有一个密钥,N台主机需要N(N-1)/2个密钥;在应用层实现端对端加密:每对通信用户或进程均需要一对密钥)

密钥分发中心KDC:基于密钥层次体系,至少需要两个密钥层;两个终端系统间通信使用临时密钥(通常指会话密钥);会话密钥用于逻辑连接,连接断开就丢失;主密钥可以通过一些不加密的方式分发,如物理传递

密钥分级:典型的应用中,密钥分为主密钥和会话密钥两级:会话密钥:用于数据加密,临时;主密钥:由KDC和用户共享,长期

同一个本地域中的各个实体要相互通信,由本地KDC负责密钥分发;不同域中的实体要通信,则需一个共享密钥,该共享密钥由两个对应的本地KDC通过全局KDC协商产生。

层次策略使得主密钥分发的开销最小化

会话密钥生命周期:交换越频繁就越安全,网络负担越大;面向连接的协议:每次会话使用一个新会话密钥;无连接协议:最安全的做法是每次使用新的会话密钥

密钥分配协议1

在这里插入图片描述

攻击一:不包含对KDC的实体认证

在这里插入图片描述

攻击二:中间人攻击

在这里插入图片描述

密钥分配协议2

在这里插入图片描述

攻击:不包含对消息的实体认证

在这里插入图片描述

密钥分配协议3

在这里插入图片描述

攻击:AB通信中不包含对A的实体认证

在这里插入图片描述

密钥分配协议4

在这里插入图片描述

攻击:AB通信中不包含对消息的认证(新鲜性)

在这里插入图片描述

最终的密钥分配协议:

原型为Needham-Schroeder协议,是Kerberos的基础

在这里插入图片描述

N1,N2:现时数(nonce):是对于一次交互的唯一标志符,可以为:时间戳、计数器、随机数,或以上的组合

分布式密钥控制:

在小的范围,可以假定所有用户之间共享密钥;通过主密钥协商(产生)会话密钥;不需要KDC或其他第三方;密钥数总量为n(n-1)/2;每个节点至多保存n-1个主密钥,可以产生很多会话密钥;由于会话密钥生命周期短,所以不易被攻破

在这里插入图片描述

密钥分发

密钥如何管理?

公钥的前提:公开自己的密钥

难点:不能轻易接受其他人的公钥

特点:关键不在于加密,而是认证

已提出的集中公钥分发方法:公开发布、公开可访问目录、公钥授权、公钥证书

途径一:公开发布

无控制的公钥分发

问题:任何人都可伪造公钥发布过程,直到公钥拥有者发现假冒

途径二:公开可访问目录

维护一个动态可访问的公钥目录来获得更大的安全性,由某可信实体或组织负责该目录的维护和分配

缺点:一旦攻击者获得目录管理员私钥,则可伪造任意通信方;攻击者还可能修改目录管理员保存的记录来达到目标

途径三:公钥授权

通过更加严格的控制目录中的公钥分配,可使公钥分配更加安全

在这里插入图片描述

问题:只能从管理机构获得公钥。公钥管理员成为瓶颈;容易产生DOS攻击;管理机构如何得到A的公钥?A如何得到管理机构的公钥?且公钥管理员维护的{姓名,公钥}目录也容易被篡改

途径四:公钥证书

由Kohnfelder提出。思想:通信各方使用证书来交换密钥,而不是通过公钥管理员。安全性与从公钥管理员处获得的密钥的可靠性相同。

证书由证书管理员产生,包含公钥和其他信息,发给拥有相应私钥的通信方,通信一方通过传递证书将公钥传给另一方,其他人可以验证证书确实是由证书管理员产生的。

要求:任何通信方都可以读取证书并确定证书拥有者的姓名和公钥;任何通信方可验证证书是真实的;任何通信方可验证证书的时效性;只有证书管理员才能产生和更新证书

效果:类似身份证

在这里插入图片描述

问题:A如何得到CA的公钥?密钥丢失后,如何挂失?(证书撤销列表)

利用公钥密码分配会话密钥

简单的秘密分配:A生成公私钥对{PKA,SKA},并将PKA和IDA发送给B;B用A的公钥加密会话密钥KS,返回给A;A放弃{PKA,SKA}, B放弃PKA

在这里插入图片描述

插入攻击:

攻击者Malice可以在(1)中用{PKM,IDA}替换{PKA,IDA}

Malice获得Ks后,用对Ks再次加密,转发给A

则A和B均知道Ks,但他们不知道Malice也知道Ks

具有保密性和真实性的密钥分配:

A用B的公钥对自己的身份IDA和临时交互号N1加密发送给B

B发送用A的公钥PKA加密的消息

A用B的公钥对B的挑战N2进行加密,B确认通信伙伴是A

A选择会话密钥,用自己的私钥SKA对Ks进行签名,再用B的公钥加密。确保只有B才能解密Ks,且只有A能发送该消息

B用自己的私钥解密第4步的消息,得到Ks

在这里插入图片描述

以固定口令为基础的认证方式存在很多问题:网络数据流窃听;字典攻击;穷举攻击;窥探;社交工程;垃圾搜索;

X.509 认证服务

X.509 是关于证书结构和认证协议的一种重要标准,并被广泛使用。

X.509 是基于公钥密码体制和数字签名的服务。

X.509定义了:用户目录的认证服务框架(可以用于14.3中方案)、基于公钥证书的一个认证协议

X.509的核心是与每个用户相关的公钥证书,这些用户证书由一些可信的签证机构(CA)创建并被CA或用户放入目录服务器中。

常用格式:

在这里插入图片描述

版本(Version):区分合法证书的不同版本,默认设置为1。如果存在发行商唯一标识或主体唯一标识,则版本号为2;如果存在一个或多个扩展,则版本号为3。

序列号(Serial number):一个整数,在CA中唯一标识证书。

签名算法标识(Signature algorithm identifier):带参数的、用于给证书签名的算法,由于此信息在证书尾部的域Signature中还会出现,这里很少含该信息。

发行商名字(Issue name): X.509中创建、签名证书的认证中心CA的名字。

有效期(Period of validity):包含两个日期,即证书的生效日期和终止日期。

证书主体名(Subject name): 获得证书的用户名,证明拥有相应私钥的主体是公钥的所有者。

证书主体的公钥信息(Subject’s public-key information):主体的公钥以及将被使用的密钥的算法标识,带有相关的参数。

发行商唯一标识(Issuer unique identifier):由于X.509的名字被许多不同实体引用,因此用可选位串唯一标识认证中心。

证书主体唯一标志(Subject unique identifier):由于X.509的名字被许多不同实体引用,因此用可选位串唯一标识证书主体。

扩展(Extensions): 一个或多个扩展域集,扩展域是在版本3中增加的。

签名(Signature):覆盖证书的所有其他域,以及其他域被CA私钥加密后的hash代码,以及签名算法标识。

该标准使用如下标注定义证书

CA<< A >>= CA{ V,SN,AI,CA,TA,A,AP }

其中:

Y<< X >> =用户X的证书是认证中心Y发放的;Y{I}= Y签名I,包含I和I被加密后的hash代码

CA生成的用户证书具有以下特点:

任何可以访问CA公钥的用户均可获得证书中的用户公钥。

只有CA可以修改证书。

由于证书不可伪造,因此证书可以存放在目录中,而不需要对目录进行特别保护。

获得用户证书:是否属于同一个CA

如果所有用户都属于同一个CA:

说明对该CA有普遍信任,所有用户的证书均可存放于同一个目录中,以被所有用户存取。另外,用户也可以直接将其证书传给其他用户。一旦B拥有了A 的证书,B即可确信用A的公钥加密的消息是安全的,不可能被窃取;同时,用A的私钥签名的消息也不可能仿造。

如果用户数量很多,不可能期望所有用户从同一个CA获得证书。由于证书是CA签发的,每一个用户都需要拥有一份CA的公钥来验证签名,该公钥必须用一种绝对安全的方式提供给每个用户,使得用户可以信任该证书。因此,拥有许多CA,并要求每个CA按一种安全的方式给其用户群提供该CA的公钥。

对于不同CA

假设A获得了CA_X1的证书;B获得了CA_X2的证书

此时,如果A无法安全地获得X2的公钥,则由X2发放的B的证书对A而言就无法使用,A只能读取但无法验证其签名。

然而,如果两个CA之间能安全地交换它们的公钥,则使A获得B的公钥过程:

A 从目录中获得由X1签名的X2的证书,由于A知道X1的公钥,A可以从证书中获得X2的公钥,并用X1的签名来验证证书。

A再到目录中获取由X2颁发的B的证书,由于A已经得到了X2的公钥,A即可利用它验证签名,安全地获得B的公钥。

A 使用了一个证书链来获得B的公钥,在X.509中,该链标识如下: X 1 < < X 2 > > X 2 < < B > > X_1<< X_2 >>X_2<< B >> X1<<X2>>X2<<B>>

同样,B可以逆向链获得 A 的公钥: X 2 < < X 1 > > X 1 < < A > > X_2<<X_1>>X_1<<A>> X2<<X1>>X1<<A>>

这个模式可以推广:

对经过长度为N的CA链的认证过程可表示如下: X 1 < < X 2 > > X 2 < < X 3 > > … X N < < B > > X_1<< X_2 >>X_2<< X_3>>…X_N<< B >> X1<<X2>>X2<<X3>>XN<<B>>

在这种情况中,链中的每对 C A ( X i , X i + 1 ) CA(X_i,X_{i+1}) CA(Xi,Xi+1)必须互相发放证书。

X.509推荐的层次结构

前向证书:由其他CA发给X的证书。

后向证书:X发给其他CA的证书。

例如:

用户A可以通过创建一条到B的路径获得相关证书:X<< W >>W<< V >>V<< Y >>Y<< Z >>Z<< B >>

当A获得相关证书后,可以通过顺序展开证书路径获得B的公钥,用这个公钥,A可将加密消息送往B,如果A想得到B返回的加密消息或对发往B的消息签名,则B需要按照下述证书路径获得A的公钥:Z<< Y >>Y<< V >>V<< W >>W<< X >>X<< A >>

B可以获得目录中的证书集,或A可在它发给B的初始消息中将其包含进去。

撤销证书

有效期:在旧证书失效前发放新证书

其它原因可能导致提前撤销证书:用户密钥(私钥)被认为不安全、用户不再信任该CA、CA证书被认为不安全

每个CA必须保留一张表,其中包含所有被CA撤销且还未到期的证书,包括发给用户和其他CA的证书,这张表也应被放在目录中。

(目录是指管理用户信息数据库的服务器,用户信息包括用户名到网络地址的映射和用户的其他属性等)

每个放在目录中的证书撤销表(CRL)均被其发行商签名,并包含发行商的名字、表创建的时间、下一张CRL表发放的时间以及每个撤销证书的入口。每个入口中包含该证书的序列号和撤销时间。由于一个CA中的序列号是唯一的,因此序列号足以表示一张证书。

当一个用户在一个消息中接收了一个证书,该用户必须确定该证书是否已被撤销。用户可以在接到证书时检查目录,为了避免目录搜索时的延迟,用户可以将证书和CRL缓存。

X.509 包含三种可选的认证过程:单向认证、双向认证、三向认证

这三种方法均采用了公钥签名。假设双方知道对方的公钥,可以通过目录服务获得证书或证书由初始消息携带。

X.509 版本 3的格式增加了一些可选的扩展项。 每一个扩展项有:一个扩展标识、一个危险指示(用于指出该扩展项是否能安全地被忽略,如果为TRUE且实现时未处理它,则其证书将会被当作非法的证书。)、一个扩展值

三类证书扩展项:密钥和策略信息、证书主体和发行商属性、证书路径约束

PKI公钥基础设施

RFC 4949(互联网安全术语)定义了PKI系统是由硬件、软件、人、策略和程序构成的一整套体系。这些程序是用来创建、管理、存储、分发和撤销建立在非对称密码算法之上的数字证书。

创建PKI的主要目的就是用来安全、便捷、高效地获得公钥。

PKIX模型:在X.509基础上建立的一个可以用来构建网络认证体系的基本模型

在这里插入图片描述
元素:端实体签证机构CA注册机构RA证书撤销列表发布点证书存取库
PKIX管理任务:用户注册、初始化、认证书、密钥对的回复、密钥对更新、证书撤销请求、交叉认证
在这里插入图片描述
在这里插入图片描述

用户认证

用户认证:核实身份的方法是由或者对一个系统实体提出的

用户认证是最基本也是最重要的一道防线,用户认证是访问控制以及用户承担责任的基础

认证方法包含两步:鉴定阶段核实阶段

票据是一种将身份和附加属性与用户权标可信地绑定得到的数据结构,并在认证过程中可以被验证方所验证。

权标可以能够唯一标识用户的密钥或者加密口令

认证一个用户的身份的四个常用工具:

知道什么:如口令、PIN或者之前准备的问题答案

拥有什么:如加密密钥、电子密钥卡、智能卡和物理密钥,这种类型的认证信息为:令牌

静态生物特征:如指纹、视网膜和脸

动态生物特征:如声音模式、手写特征和打字节奏

双向认证

能够使通信双方互相认证彼此身份交换会话密钥
已认证的密钥交换要注意保密性时效性

防止重放攻击

方法是为每一个用于认证交互的消息附上一个序列号,但是由于开销问题,序列号基本不会用于认证和密钥交换,反而是时间戳和挑战/应答两种方法更常用。

注意时间戳方法不能用于面向链接的应用,挑战/应答方法不适用于无连接类型的应用。

认证的作用

通常是,接收者需要确保消息确实来自所谓的发送者。

在分布式环境中,一个两层的对称加密密钥可用于为通信提供保密性,该方案需要可信的密钥分发中心(KDC)参与,每一方和KDC之间都共享一个密钥(称为主密钥)。KDC负责产生两者之间的会话密钥,并使用主密钥来保证会话密钥分发的安全。

使用时间戳来防止重放攻击

在这里插入图片描述

而存在另一种情况:

时钟或者同步机制的破坏或者错误都可能导致分布的时钟不同步,可能会造成攻击者截获消息后重放时的时间戳刚好满足接收者的时间,这种攻击称为抑制重放攻击(Suppress Replay Attack)

在这里插入图片描述

Kerberos

Kerberos认证身份不依赖主机操作系统的认证、不信任主机地址、不要求网络中的主机保持物理上的安全。

在整个网络中,除了Kerberos服务器外,其他都是危险区域,任何人都可以在网络上读取、修改、插入数据。

Kerberos把身份认证的任务集中在身份认证服务器上

Kerberos的认证服务任务被分配到两个相对独立的服务器:认证服务器AS(Authenticator Server)和票据许可服务器TGS(Ticket Granting Server)

它们同时连接并维护一个中央数据库存放用户口令、标识等重要信息。

整个Kerberos系统由四部分组成:AS,TGS,Client,Server。

Kerberos 环境包括Kerberos服务器、若干客户端和若干应用服务器:

Kerberos服务器必须有存放用户标识(UID)和用户口令的数据库。所有用户必须在Kerberos服务器注册。

Kerberos服务器必须与每个应用服务器共享一个特定的密钥,所用应用服务器必须在Kerberos服务器注册。

这种环境称为一个。为了支持域间认证,又引入:

每个互操作域的Kerberos服务器应共享一个密钥,双方的Kerberos服务器应互相注册。

要求一个域的Kerberos服务器必须信任其他域的Kerberos服务器对其用户的认证。另外,其他域的应用服务器也必须信任第一域中的Kerberos服务器。

版本4–>版本5变更

首先从两个方面阐述了版本4的局限性:环境缺陷、技术不足

环境缺陷方面:

加密系统依赖性:使用 DES–>使用加密类型标记密文

Internet协议依赖性:只能用 IP 地址–>用类型和长度标记网络地址,允许使用任何类型的网络地址

消息字节顺序:发送者决定–>按照抽象语法表示(ASN.1)和基本编码规则(BER)规定

票据的生命周期: 最大 28×5=1280分钟–>票据中包含精确的起止时间,允许任意长度的生命周期

向前认证:发给客户端的证书不能转发–>提供这项功能

域间认证: O(N2)个Kerberos-to-Kerberos关系–>支持一种需要较少连接的方法

技术不足方面:

两次加密:提供给客户端的票据需要经过两次加密,而第二次不是必须的–>减少一次加密

PCBC加密:使用 DES 的非标准模式PCBC加密,易受交换密码块攻击–>提供精确的完整性检查机制,并用标准的CBC模式加密

会话密钥:同一会话密钥被多次使用–>客户端与服务器可以协商得到子会话密钥,保证每个密钥仅被使用一次

口令攻击:这两个版本均易受到口令攻击,但对版本5的攻击相对更难实现

攻击者可以通过尝试各种口令,来试图获得正确的客户端口令

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

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

相关文章

windows11-ubuntu-可爱的截图-启动时按F2可以选简体中文

windows11-ubuntu-可爱的截图-启动时按F2可以选简体中文

c++ 46 const

const伪命题 可以间接修改

Java-自定义注解中成员变量是Class<?>

在Java中,自定义注解可以包含各种类型的成员变量,包括 Class<?> 类型。这种类型的成员变量 通常用于表示某个类的类型信息。下面我将详细介绍如何定义一个包含 Class<?> 类型成员变量的 自定义注解,并给出一些示例代码。 1. 定义自定义注解 定义一个自定义…

jmeter使用while控制器时防止死循环

while 控制器&#xff1a;当前条件为true会一直循环&#xff0c;直到条件为false时退出循环 如果环境出现问题&#xff0c;可能导致死循环&#xff0c;需要进行设置 本次结合计时器进行组合配置&#xff0c;防止死循环 配置while控制器 条件&#xff1a;${__jexl3("${i…

libnl教程(2):发送请求

文章目录 前言示例示例代码构造请求创建套接字发送请求 简化示例 前言 前置阅读要求&#xff1a;libnl教程(1):订阅内核的netlink广播通知 本文介绍&#xff0c;libnl如何向内核发送请求。这包含三个部分&#xff1a;构建请求&#xff1b;创建套接字&#xff1b;发送请求。 …

milvus helm k8s开启监控

https://milvus.io/docs/monitor.md 文章写的很清晰 &#xff0c;我这边做一下个人补充&#xff0c;初版可能只是配置&#xff0c;具体的grafana 监控报表后期补一下。 架构如下&#xff1a; values.yaml 配置 enabled: true 改为true metrics:enabled: trueserviceMonitor:…

F.Enchanted

https://codeforces.com/gym/105139/problem/F24湖北省赛F 看了一下前面两种操作&#xff0c;做法不是很明显 后面两种操作&#xff0c;一看就是可持久化线段树&#xff0c;单点修改&#xff0c;版本复制 接下来解决前面的两种操作 第一个操作 两个相同的合成一个新的(33-&…

Linux基础-磁盘管理

基于Ubuntu 20.04环境测试验证。 一、磁盘空间查看 1.1 磁盘分区管理 - fdisk fdisk通常被用来查看系统磁盘的分区信息&#xff0c;同时fdisk也支持对磁盘空间进行分区&#xff08;下一章节介绍&#xff09;。 命令参数&#xff1a; Usage:fdisk [options] <disk> …

科普----Linux的前世今生

提到电脑的操作系统 相信大多数人会脱口而出&#xff1a;Windows&#xff01;MacOS&#xff01; 没错&#xff0c;这确实是目前市场上主流的两款操作系统。 但对于从事IT相关工作的人们来说&#xff0c;还有一种系统也必须拥有姓名 那就是Linux 看到这个词&#xff0c;大家…

unity游戏开发003:深入理解Unity中的坐标系

Unity游戏开发 “好读书&#xff0c;不求甚解&#xff1b;每有会意&#xff0c;便欣然忘食。” 本文目录&#xff1a; Unity游戏开发 Unity游戏开发深入理解Unity中的坐标系前言1. 坐标轴2. 左手坐标系3. 世界坐标系 vs. 局部坐标系4. 坐标变换5. 注意事项 总结 深入理解Unity中…

虚幻5|简单装备武器

一&#xff0c;首先我们要创建一个actor蓝图类 打开组件添加一个静态网格体&#xff0c;点击该组件&#xff0c;右侧细节找到网格体资产&#xff0c;选择需要的武器 三&#xff0c;打开角色的骨骼网格体&#xff0c;添加武器插槽 这个有些动作包里的骨骼网格体是加了骨骼&…

10 - Linux系统安全及应用

目录 一、账号安全控制 1.系统账号清理 2.密码安全控制 3.命令历史限制 4.终端自动注销 二、用户切换和用户提权 1. su 命令 - 切换用户 1.1 su 命令的用途及用法 1.2 限制使用su 命令的用户 1.3 查看su操作记录 2. sudo 命令 - 用户提权 2.1 sudo 命令的用途及用法…

Unity转Unreal5从入门到精通之如何实现一个简单的AI寻路

前言 我们今天使用最基础的引擎知识&#xff0c;来给大家创建一个简单的AI&#xff0c;可以追踪目标&#xff0c;攻击目标。 使用Unity类比的话&#xff0c;就是一个怪物预制体&#xff0c;放到了寻路上&#xff0c;当他视野看到目标后&#xff0c;就一直追踪目标&#xff0c;…

转账记录是怎样使用ZK实现证明的

目录 转账记录是怎样使用ZK实现证明的 1. 准备阶段 2. 生成证明 3. 转账记录的验证过程 4. 隐私保护 5. 应用场景 结论 转账记录是怎样使用ZK实现证明的 转账记录使用ZK(零知识证明)实现证明的过程,主要依赖于零知识证明技术中的协议,如ZK-SNARKs(Zero-Knowledge S…

72、docker资源管理

一、docker数据卷 容器和宿主机之间数据共享-----------挂载卷------------容器内的目录和宿主机的目录进行挂载。实现数据文件共享。 容器的生命周期是有限的&#xff0c;一旦重启所有对容器内部文件数据的修改以及保存的数据会被初始化&#xff0c;所以为了防止数据丢失&am…

Java语言程序设计基础篇_编程练习题16.22(播放、循环播放和停止播放一个音频剪辑)

题目&#xff1a;16.22&#xff08;播放、循环播放和停止播放一个音频剪辑&#xff09; 编写一个满足下面要求的程序&#xff1a; 使用AudioClip获取一个音频文件&#xff0c;该文件存放在类目录下。放置三个标记为Play、Loop和Stop的按钮&#xff0c;如图16-46a所示。单击Pla…

什么是调度中心控制台,它在现代运营管理中扮演什么角色?

在现代复杂多变的运营环境中&#xff0c;调度中心控制台作为企业内部信息管理的核心枢纽&#xff0c;扮演着至关重要的角色。它不仅是一个技术平台&#xff0c;更是企业高效运营和智能决策的重要支撑。接下来就给大家科普一下关于调度中心控制台知识点&#xff0c;及在现代运营…

HarmonyOS笔记4:从云数据库获取数据

移动应用获取数据的方式主要有&#xff1a; 1.从网络中获取数据接口API。 2.从华为云数据库获取云数据库的资源。 3.从移动终端直接获取本地的数据 在HarmonyOS笔记3中已经完成了方式一从网络中获取数据接口API的方式。在本篇笔记中&#xff0c;将讨论从云数据库中获取数据。 因…

极狐GitLab CI/CD 如何构建镜像并推送到 azure 镜像仓库?

极狐GitLab 是 GitLab 在中国的发行版&#xff0c;专门面向中国程序员和企业提供企业级一体化 DevOps 平台&#xff0c;用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规&#xff0c;而且所有的操作都是在一个平台上进行&#xff0c;省事省心省钱。可以一键安装极狐GitL…

远程访问安全:rsync、ProFTPD、OpenSSH和VNC漏洞分析

文章目录 rsync未授权访问概念复现个别工具检测批量工具检测 proftpd远程命令介绍CVE-2015-3306复现 openssh信息泄露介绍复现 libssh身份绕过介绍条件危害复现 向日葵远程RCE介绍条件靶场&#xff1a; VNC配置不当介绍复现 在当今高度互联的数字时代&#xff0c;远程访问工具已…