密码学:一文看懂初等数据加密一对称加密算法

在这里插入图片描述

文章目录

  • 对称加密算法简述
  • 对称加密算法的由来
  • 对称加密算法的家谱
  • 数据加密标准-DES
  • 简述
  • DES算法的消息传递模型
    • DES算法的消息传递过程
    • 和Base64算法的消息传递模型的区别
  • 算法的实现
  • 三重DES-DESede
    • 三重DES-DESede实现
  • 高级数据加密标准一AES
    • 实现
  • 国际数据加密标准-IDEA
    • 实现
  • 基于口令加密-PBE
    • 基于PBE算法的消息传递模型
  • 应用场景
  • 参考

我们都有使用密码保护私密信息的经历,甚至可以说是习惯。我们往往不希望无关的人窥探我们的隐私,从孩童时代就知道用“密码日记本”记录自己的一些隐私。密码日记本无非是一个带锁的日记本。不管是读日记还是写日记都离不开这个密码。
上述情形就好比我们应用黑匣子,需要读写操作,需要同一套密钥。写操作伴随加读操作伴随解密。加密和解密操作使用同一套密钥,这就是对称加密算法的核心。

对称加密算法简述

对称加密算法是当今应用范围最广,使用频率最高的加密算法。它不仅应用于软件行业,在硬件行业同样流行。各种基础设施但凡涉及安全需求,都会优先考虑对称加密算法。

对称加密算法的由来

对于大多数对称加密算法而言,解密算法是加密算法的逆运算,加密密钥和解密密钥相同。如果我们把Base64算法改良将其字符映射表作为密钥保存,就可以把这个改良后的Base64算法作为一种对称加密算法来看。当然,加密算法这样改良后的安全强度还远远不够,但足以让我们认识对称加密算法的特点。

对于Base64概念模糊的同学可以来这里报到:密码学:一文看懂Base64算法

对称加密算法易于理解,便于实现,根据加密方式又分为密码和分组密码,其分组密码工作模式又可分为ECB、CBC、CFB、OFB和CTR等,密钥长度决定了加密算法的安全性。
有关对称加密算法相关理论知识,可以来这里报到:密码学:一文读懂对称密钥体系

对称加密算法发展至今已相当完备。以DES算法为例,由于密钥长度的不满足,衍生出了DESede算法 (也称为TripleDES或3DES算法,翻译成中文是“三重DES”算法)。为了替代DES算法又有了AES (Rijndael) 算法。此外,还有RC系列算法包含RC2、RC4以及针对32位/64位计算机设计的RC5算法(细分为RC5-32和RC5-64,分别对应32位和64位计算机)
除了上述算法,我们还常常会用到Blowfish、 Twofish、Serpent、IDEA和PBE等对称加密算法。

对称加密算法的家谱

在对称加密算法中,DES算法最具有代表性,堪称典范。DESede是DES算法的变种。AES算法则作为DES算法的替代者,而IDEA算法作为一种强加密算法,成为电子邮件加密软件PGP (Pretty Good Privacy) 的核心算法之一。

数据加密标准-DES

DES算法和DESede算法统称DES系列算法。DES算法是对称加密算法领域中的典型算法,为后续对称加密算法的发展奠定了坚实的基础。DESede算法基于DES算法进行三重迭代,增加其算法安全性。经过一番筛选,Rijndeal算法最终成为了AES算法。这期间,对称加密算法发展迅速,与Rijndeal算法竞争的算法包括Blowfish、Serpent等。IDEA算法也源于增加算法的安全性替代DES算法,诸多对称加密算法的发展均源于DES算法的研究而来。

简述

1973年,美国国家标准局 (NBS, National Bureau ofStandards) (即现在的美国国家标准技术研究所 (NationalInstitute of Standards and Technology,NIST) ) 征求国家密码标准方案,IBM公司提交了自己研制的算法 (Luciffer算法,于1971年末提出)。1977年7月15日,该算法被正式采纳,作为美国联邦信息处理标准生效,并很快应用到国际商用数据加密领域,成为事实标准,即数据加密标准 (DataEncryption Standard,DES) ,DES算法由此诞生。

DES算法作为现代密码学领域中第一个官方授权的加密算法受到全球各大密码学机构的关注。DES算法密钥偏短,仅有56位迭代次数偏少,受到诸如查分密码分析和线性密码分析等各种攻击威胁,安全性受到严重威胁。不仅如此,由于DES算法具有半公开性质,被怀疑存在美国国家安全局 (National SecurityAgency,NSA) 安置的后门,受到各大密码学机构的强烈质疑。

1998年后,实用化DES算法破译机的出现彻底宣告DES算法已不具备安全性。1999年NIST颁布新标准,规定DES算法只能用于遗留加密系统,但不限制使用DESede算法。以当今计算机技术能力,经DES算法加密的数据在24小时内可能被破解。由此,DES算法正式退出历史舞台,AES算法成为它的替代者。

即便如此,DES算法对于密码学领域的贡献确实是巨大的。各种对称加密算法均由研究DES算法发展而来,对后续对称加密算法的发展起到奠基作用。DES算法实现不仅遍布软件行业,甚至很多硬件芯片本身也具备DES加密实现。同时,作为一款较易实现的加密算法,DES算法也成为最应学习的对称加密算法,其地位堪比C语言在计算机语言中的地位。

基于CBC工作模式的DES算法相关文档可参考:RFC1829

历经20年发展,DES算法不仅应用在软件行业,成为电子商务必不可少的加密算法,同时也逐步渗透到硬件行业。芯片级DES算法生产工艺相当完备,完全可以支持底层加密需求。

DES算法的消息传递模型

先来看看DES算法的消息传递过程,如下

DES算法的消息传递过程

在这里插入图片描述
甲乙双方作为消息传递双方 (甲方作为发送方,乙方作为接收方)我们假定甲乙双方在消息传递前已商定加密算法,欲完成一次消息传递需经过如下步骤:

1)由消息传递双方约定密钥,这里由甲方构建密钥

2)由密钥构建者公布密钥,这里由甲方将密钥公布给乙方

3)由消息发送方使用密钥对数据加密,这里由甲方对数据加密

4)由消息发送方将加密数据发送给消息接收者,这里由甲方将加密数据发送给乙方

5)由消息接收方使用密钥对加密数据解密,这里由乙方完成数据解密

对称加密算法的优点就是简单易行,通俗易懂。对于上述单向消息传递而言,如果乙方想要回复甲方消息,并不需要重复步骤1、2,仅须由乙方执行步骤3、4,由甲方执行步骤5即可。

基于DES算法构建的消息传递模型大都按照上述模型构建,同时包括其他对称加密算法,如DESede、AES和IDEA等。

并不是所有基于对称加密算法的消息传递模型都按此步骤构建,PBE算法就是一个例外。

和Base64算法的消息传递模型的区别

Base64算法和DES算法消息传递模型的主要差别在于密钥的使用。

基于Base64算法的消息传递模型中没有密钥的概念。那是因为Base64字符映射表本身已经公开,而Base64字符映射表本身起到了密钥的作用。消息传递双方通讯前不需要商榷该密钥,也就省去了构建密钥、公布密钥的步骤。

一文看懂Base64算法

算法的实现

在这里插入图片描述

来看一个加密例子:

原文:        DES
密钥:        qA2oZBaKNOk=
加密后:      QwCjNM5G8KM=
解密后:      DES

随着计算机的发展,密钥长度仅有56位的DES算法显得越来越不安全,为了提高其安全强度,DES算法在设计上的漏洞已经不能通过单纯地增加密钥长度来弥补,这引发了对称加密算法研发竞赛。
DESede和AES算法正是这场竞赛中具有代表性的算法。

三重DES-DESede

作为DES算法的一种改良,DESede算法针对其密钥长度偏短和迭代次数偏少等问题做了相应改进,提高了安全强度。但这仍不是终点,DESede算法的出现仅为DES算法的改良提供了一种参考。DESede算法处理速度较慢,密钥计算时间较长,加密效率不高等问题使得对称加密算法的发展仍不容乐观。

DES算法被广大密码学机构质疑的原因主要在于DES算法的半公开性,违反了柯克霍夫原则,各大密码学结构怀疑美国国家安全局在未公开的算法实现内安置后门。

DES算法有3点安全隐患: 密钥太短、迭代偏少和半公开性。这使得淘汰DES算法成为一种必然,但要淘汰DES算法必须找到合适的替代方案。

针对密钥太短和迭代偏少问题,有人提出了多重DES的方式来克服这些缺陷。比较典型的有两重DES (2DES) 、三重DES(3DES)和四重DES (4DES)等几种形式,但在实际应用中一般采用3DES方案,它还有两个别名Triple DES和DESede。在Java中,我们通常称其为DESede算法。当然,其他两种名称在使用时同样可以获得支持。

DESede算法将密钥长度增至112位或168位,抗穷举攻击的的能力显著增强,但核心仍是DES算法,虽然通过增加迭代次数提高了安全性,但同时也造成处理速度较慢,密钥计算时间加长,加密效率不高的问题。

三重DES-DESede实现

DESede算法与DES算法实现的主要差别在于算法、密钥长度两个方面。

  • 算法: 自然不用说,这是基本差别,只是DESede还有很多别名,如TripleDES和3DES指的都是DESede算法。
  • 密钥长度:DES算法实现支持56位密钥长度,加上Bouncy Castle相应实现可以支持到64位密钥长度。DESede算法实现所支持的密钥长度支持为112位和168位。DESede算法密钥长度恰恰是DES算法密钥长度的2倍或3倍。

有关DESede算法的Java6实现与Bouncy Castle实现细节如表7-2所示。
来看看一个例子:

原文:        DESede
密钥:        N8jTp6RuZxkjJea2XVvquV5YegHQ31cV
加密后:      touXuJw8vrc=
解密后:      DESede

高级数据加密标准一AES

DES算法漏洞的发现加速了对称加密算法的改进,通过对DES算法的简单改造得到的DESede算法虽然在一定程度上提升了算法安全强度。但DESede算法低效的加密实现和较慢的处理速度仍不能满足我们对安全的要求。AES算法正是基于这些缘由而诞生。

1997年,NIST发起了征集DES替代算法一AES (AdvancedEncryption Standard,高级数据加密标准)算法的活动。1997年9月12日,NIST发布了征集算法的正式公告和具体细节,要求AES算法要比DESede算法快,至少与DESede算法样安全,具有128位的分组长度,支持128位、192位和256位的密钥长度,同时要求AES要能够在世界范围内免费使用。

1998年8月20日,NIST在“第一次AES候选大会”上公布了满足条件的15个AES的候选算法,继而又从中筛选出5个候选算法,包括MARS、RC6、Rijndael、Serpent和Twofish。

2000年10月2日,由Daemen和 Rijmen两位比利时人提出的Rijndael算法,以其密钥设置快、存储要求低,在硬件实现和限制存储的条件下性能优异当选AES算法。

经过验证,目前采用的AES算法能够有效抵御已知的针对DES算法的所有攻击方法,如部分差分攻击、相关密钥攻击等。至今,还没有AES破译的官方报道。

AES算法因密钥建立时间短、灵敏性好、内存需求低等优点,在各个领域得到广泛的研究与应用。

目前AES常用 于 UMTS (Universal MobileTelecommunications System,通用移动通信系统) 。基于SSH (Secure shell,安全外壳) 协议的一些软件也使用了AES算法,SecureCRT。

除了常用的SSH软件外,在一些无线路由器中也使用AES算法构建加密协议。

实现

在这里插入图片描述

原文:        AES
密钥:        4qrBlCmeHHyEAyoNRY2djo1HWx8LLCH2NQHG9c0ahi4=
加密后:      XhWaN6Am1T3NVSFYs1OMVg==
解密后:      AES

国际数据加密标准-IDEA

早在NIST发布征集AES算法以前,就已经有人在找寻DES算法的替代算法了。IDEA算法的提出者未像DESede算法那样在原有DES算法的基础上做改进,而是独辟蹊径地寻求了突破性解决方案。IDEA算法早于AES算法作为DES算法的可选替代算法出现。

IDEA (International Data Encryption Algorithm,国际数据加密标准)算法是由旅居瑞士的中国青年学者来学嘉和著名密码专家James Massey于1990年提出的一种对称分组密码,并于1992年修改完成

IDEA算法使用长度为128位的密钥,数据块大小为64位。

从理论上讲,IDEA属于“强”加密算法。

IDEA算法在美国之外提出并发展起来,避开了美国法律上对加密技术的诸多限制。因此,有关IDEA算法和实现技术的书籍均可自由出版和交流,极大地促进了IDEA算法的发展和完善
IDEA算法是目前较为常用的电子邮件加密算法之一。

电子邮件加密软件PGP (Pretty Good Privacy) 使用了具有商业版权的IDEA算法,实现邮件加密/解密工作。

实现

在这里插入图片描述

原文:        IDEA
密钥:        W1a1IFCKIbXKdnejfT5b2A==
加密后:      er43StU2Txk=
解密后:      IDEA

基于口令加密-PBE

前面阐述了几种常用的对称加密算法,这些算法的应用模型甚至包括实现)几乎同出一辙。但并不是所有的对称加密算法都是如此,PBE算法综合了上述对称加密算法和消息摘要算法的优势,形成了对称加密算法的一个特例。

PBE (Password Based Encryption,基于口令加密)算法是一种基于口令的加密算法,其特点在于口令由用户自己掌管,采用随机数 (这里我们叫做盐)杂凑多重加密等方法保证数据的安全性。

PBE算法没有密钥的概念,密钥在其他对称加密算法中是经过算法计算得出的,PBE算法中则使用口令替代了密钥。

密钥的长短直接影响了算法的安全性,但不方便记忆。

即便是我们将密钥通过Base64编码转换为可见字符,长密钥一样不容易记忆。因此,在这种情况下密钥是需要存储的,但是口令则不然。

比如我们程序员天天都要开关电脑,那么进入操作系统的唯一途径就是输入口令。口令是我们便于记忆的一种凭证,基于这一点,PBE算法使用口令代替了密钥。

PBE算法并没有真正构建新的加密/解密算法,而是对我们已知的对称加密算法(如DES算法)做了包装。使用PBE算法对数据做加密/解密操作时,其实是使用了DES或AES等其他对称加密算法做了相应的操作。

既然PBE算法使用了我们较为常用的对称加密算法,那就无法回避密钥的问题。口令并不能替代密钥,密钥是经过加密算法计算得出的,但口令本身不可能很长,单纯的口令很容易通过穷举攻击方式破译,这就引入了“盐””。

盐能够阻止字典攻击或预先计算的攻击,它本身是一个随机信息,相同的随机信息极不可能使用两次。将盐附加在口令上,通过消息摘要算法经过迭代计算获得构建密钥/初始化向量的基本材料,使得破译加密信息的难度加大。

PBE算法是对称加密算法的综合性算法,常见算法如PBEWithMD5AndDES,该算法使用了MD5和DES算法构建PBE算法。

基于PBE算法的消息传递模型

基于PBE算法的消息传递模型与基于DES算法的消息传递模型还是有一定差别的。

甲乙双方作为消息传递双方 (甲方作为发送方,乙方作为接收方),我们假定甲乙双方在消息传递前已商定加密算法和迭代次数,欲完成一次消息传递需经过如下步骤:

1)由消息传递双方约定口令,这里由甲方构建口令

2)由口令构建者公布口令,这里由甲方将口令公布给乙方

3)由口令构建者构建本次消息传的使用的盐,这里由甲方构建胜

4)由消息发送方使用口令、盐对数据加密,这里由甲方对数据加密

5)由消息发送方将盐、加密数据发送给消息接收者,这里由甲方将盐、加密数据发送给乙方

6)由消息接收方使用盐、口令对加密数据解密,这里由乙方完成数据解密
在这里插入图片描述

对于上述单向消息传递而言,如果乙方想要回复甲方消息,甲乙并不需要重复步骤1、2,仅仅需由乙方执行步骤3、4、5,由甲方执行步骤6即可。

当然,甲乙双方也可以在消息传递过程中传递迭代次数。

我们可以设想,“盐”本身是一种可以由消息传递双方按一定规律约定的信息,譬如时间。也可以是某个不可变物理硬件的编号,譬如U盘的自身唯一标识。

甲乙双方可以通过约定消息传递时间,并将其作为“盐”的基本信息,根据预定算法(如MD5算法)对其处理,最终获得真正的“盐”。这样一来,“盐”就无需传递,提高了安全性。

换一种思路考虑,有这样一种系统,使用者需要将U盘插入计算机,同时输入口令方能登录系统,那么U盘就是“盐”信息的提供者。即使U盘丢失,加密的信息也未必能被窃取。

从另一个角度思考"盐”与口令就像两把不可分割的钥匙

应用场景

对称加密是一种加密方式,其中使用相同的密钥进行加密和解密。常用的对称加密算法包括 DES(Data Encryption Standard)、AES(Advanced Encryption Standard)、3DES(Triple DES)、Blowfish 等。对称加密算法的主要特点是加密解密速度快,但密钥管理相对复杂。

下面是对称加密的一些常用应用场景:

  1. 数据传输保密性:
    对称加密常用于确保数据在传输过程中的保密性。通信的两端使用相同的密钥来加密和解密传输的数据,以防止未经授权的访问者能够读取或篡改数据。例如,在安全套接字层(SSL/TLS)中,对称加密算法用于保护 Web 浏览器和服务器之间的数据传输。

  2. 文件加密:
    对称加密可以用于对存储在本地计算机或云存储中的文件进行加密。用户可以使用相同的密钥来加密和解密文件,确保只有授权用户能够访问文件内容。

  3. 数据库加密:
    对称加密可以用于对数据库中的敏感数据进行加密。这可以防止未经授权的访问者在数据库被盗或泄漏时查看敏感信息。

  4. 身份验证令牌加密:
    在身份验证和授权场景中,对称加密可用于加密和验证令牌,确保只有授权的用户能够访问受保护的资源。例如,JSON Web Tokens(JWTs)可以使用对称加密算法进行签名和验证。

  5. 硬件加密:
    对称加密也常用于硬件加密设备,如智能卡、硬件安全模块(HSM)等。这些设备可以用于存储密钥并执行对称加密操作,以提供更高的安全性。

  6. 电子邮件加密:
    对称加密可以用于加密电子邮件的内容,确保只有合法的收件人能够解密和阅读电子邮件。

但是需要注意的是,密钥的安全分发和管理对系统的整体安全性至关重要。

参考

《Java加密与解密艺术》

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

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

相关文章

25计算机专业考研经验贴之准备篇

Hello各位小伙伴,大家新年好! 马上就要进入寒假假期了,25考研也该提上日程了。今天先跟大家分享一下大家在假期可以先做起来的准备工作。 【选择学校】 择校是个非常重要的内容,因为不同学校的考试内容是不一样的,有些…

SpringBoot基于哨兵模式的Redis(7.2)集群实现读写分离

文章目录 一、前提条件二、SpringBoot访问Redis集群1. 引入依赖2. yaml配置3. 设置读写分离4. 简单的controller 三、运行四、测试1. 写2. 读3. 额外测试 环境 docker desktop for windows 4.23.0redis 7.2Idea 一、前提条件 先根据以下文章搭建一个Redis集群 Docker-Compo…

FreeRTOS 实时操作系统第九讲 - 链表 (数据结构)

一、链表简述 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列节点(链表中每一个元素称为节点)组成,节点可以在运行时动态生成。每个节点包括两个部分&…

Spring整合MyBatis框架!!!

搭建环境&#xff1a; pom.xml: <properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></pro…

指定linux文件夹下所有文件赋权命令“chmod -R 755”

仓库&#xff1a;Ai-trainee/GPT-Prompts-Hub 下面我们假设要为&#xff1a;/opt/robot/lib/robot_control/下所有子文件赋权 如果要为 robot_control 目录中的所有文件分配权限&#xff08;在 Linux 术语中也称为“更改文件权限”或“chmod”&#xff09;&#xff0c;则可以…

残疾大学生找工作好难

有点肢体残疾且普通话不太标准的大学生好难找工作啊&#xff0c;怎么办&#xff1f;难道得去捡垃圾了&#xff1f;求学多年&#xff0c;好容易读了个大学(省内一本)&#xff0c;我咋这么命苦&#xff0c;找了800多家&#xff0c;面试好几家&#xff0c;都没一个要我的。

Microsoft Visual Studio 2022 install Project 下载慢

1. 关闭Internet 协议版本6 2. 如果没有效果&#xff0c;打开Internet 协议版本4&#xff0c;更改DNS 3. 在浏览器中下载后安装&#xff0c;下载地址如下&#xff1a; Microsoft Visual Studio Installer Projects 2022 - Visual Studio Marketplace 4. 安装时注意关闭vs&…

2024CISA开门红,凌晨通过

祝各位新年快乐&#xff0c;万事顺遂 听说最近it内审有很多甲方开始裁员&#xff0c;为了防止波及到各位&#xff0c;想必各位也在考虑考取证书提高自己的权重&#xff0c;就算后面波及到了自己&#xff0c;去换工作的时候也会快人一步 但是大家都知道&#xff0c;最近都忙得…

一种DevOpts的实现方式:基于gitlab的CICD(一)

写在之前 笔者最近准备开始入坑CNCF毕业的开源项目&#xff0c;看到其中有一组开源项目的分类就是DevOpts。这个领域内比较出名的项目是Argocd&#xff0c;Argo CD 是一个用于 Kubernetes 的持续交付 (Continuous Delivery) 工具&#xff0c;它以声明式的方式实现了应用程序的…

五、HTML 标题

在 HTML 文档中&#xff0c;标题很重要。 一、HTML 标题 标题&#xff08;Heading&#xff09;是通过 <h1> - <h6> 标签进行定义的。<h1> 定义最大的标题。 <h6> 定义最小的标题。 <h1>这是一个标题。</h1> <h2>这是一个标题。&l…

第九节HarmonyOS 常用基础组件9-TextArea

1、描述 多行文本输入框组件&#xff0c;当输入的文本内容超过组件宽度时会自动换行显示。 2、接口 TextArea(value?:{placeholder?: ResourceStr, text?: ResourceStr, controller?: TextAreaController}) 3、参数 参数名 参数类型 必填 描述 placeholder Resour…

使用mysql查询当天、近一周、近一个月及近一年的数据以及各种报表查询sql

1.mysql查询当天的数据 1 select * from table where to_days(时间字段) to_days(now()); 2.mysql查询昨天的数据 1 select * from table where to_days(now( ) ) - to_days( 时间字段名) < 1 3.mysql查询近一个月的数据 1 SELECT * FROM table WHERE date(时间字段) …

迁移数据mysql到clickhouse

场景&#xff1a; 项目上需要将mysql表中数据迁移到clickhouse。 理论&#xff1a; 借助MaterializeMySQL 说明&#xff1a; 首先该方案实施需要启动mysql的binlog配置否则同步不了&#xff0c;尽管MaterializeMySQL官方说是在实验阶段&#xff0c;不应该在生产上使用&#x…

主浏览器优化之路2——Edge浏览器的卸载与旧版本的重新安装

Edge浏览器的卸载与旧版本的重新安装 引言开整寻找最年轻的她开始卸载原本的Edge工具下载后新版本的安装 结尾 引言 &#xff08;这个前奏有点长&#xff0c;但是其中有一些我的思考顿悟与标题的由来&#xff0c;望耐心&#xff09; 我在思考这个系列的时候 最让我陷入困得是…

Spring Boot依赖版本声明

链接 官网 Spring Boot文档官网&#xff1a;​​​​​​https://docs.spring.io/spring-boot/docs/https://docs.spring.io/spring-boot/docs/ Spring Boot 2.0.7.RELEASE Spring Boot 2.0.7.RELEASE reference相关&#xff1a;https://docs.spring.io/spring-boot/docs/2.…

文件夹重命名方法:提高效率减少错误,中英文批量翻译文件夹名称

在日常生活和工作中&#xff0c;经常要处理大量的文件夹&#xff0c;无论是整理电脑上的文件&#xff0c;还是为项目分类。如何快速、准确地重命名这些文件夹&#xff0c;对于提高工作效率和减少错误至关重要。现在来看下云炫文件管理器一些实用的文件夹重命名方法&#xff0c;…

Python+Requests实现接口自动化测试(超详细的)

一般对于自动化的理解&#xff0c;有两种方式的自动化。 第一&#xff0c;不需要写代码&#xff0c;完全由工具实现&#xff0c;这种方式的工具一般是公司自己研发的&#xff0c;方便黑盒测试人员使用。这种工具的特点是学习成本低&#xff0c;方便使用&#xff0c;但是通用性…

高压放大器输出接法及其注意事项

高压放大器应用场景非常广泛&#xff0c;非常适用于半导体高压驱动、TFT产业高压驱动、各种高压工程等应用&#xff1b;也很适用当作音频信号产生器或函数波形产生器的波形放大使用。使用场景广泛&#xff0c;放大器的输出接法也多种&#xff0c;对于不同的放大器也有对应的输出…

C++补充内容--EasyX-UI界面

esay x 其他 地图打印(利用二维数组) 双缓冲 当我们绘制一张图 然后另一张图盖住前一张图的某个部分的时候 由于while的存在 会导致 两张图不停的闪烁 所以加入双缓冲可以解决这个问题 开启双缓冲 之后等待Flush或者End 才会进行图片的绘制 不然不会进行图片的绘制,这样就可…

东信免驱系列身份证阅读器串口通讯协议解析示例,适用于单片机、ARM等系统开发集成使用

完整的一次读卡流程包括&#xff1a; 身份证寻卡 > 身份证选卡 > 身份证读卡&#xff0c;三个步骤 缺一不可&#xff08;见通讯协议&#xff09;。 寻卡&#xff1a;EA EB EC ED 04 00 B0 B4 BB 返回&#xff1a;EA EB EC ED 05 00 00 B0 B5 BB 选卡&#xff1a;EA …