5种加密算法以及如何选择正确的算法

在深入探讨5种最常用的加密算法,以前所未有地简化它们之前,我们将分解两种主要的加密类型,对称和非对称。

加密是始终成为头条新闻的那些网络安全主题之一。对不同类型的加密有充分了解的任何人都可能会觉得,这种非凡的技术正处于一种不公正的状态,而这种非凡的技术是Internet安全和隐私的核心。加密是一种将数据转换为无法解密的格式,以便只有授权方才能访问信息的方法。

加密密钥与加密算法一起使加密过程成为可能。并且,基于这些密钥的应用方式,主要主要使用两种类型的加密方法:“对称加密”和“非对称加密”。这两种方法都使用不同的数学算法(即我们刚才提到的那些加密算法)对数据进行加密。常见的加密算法列表包括RSA,ECC,3DES,AES等。

在本文中,我们将学习对称和非对称加密及其用于加密数据的流行加密算法。

让我们对其进行哈希处理。

加密类型1:对称加密

顾名思义,对称加密方法使用单个加密密钥来加密和解密数据。对这两个操作使用单个键使其成为一个简单的过程,因此称为“对称”。以下是对称加密工作原理的直观细分:

让我们用一个简单的例子来了解对称加密过程:

纽约有两个非常亲密的朋友,分别叫鲍勃和爱丽丝。由于某种原因,爱丽丝不得不搬出这座城市。他们彼此交流的唯一方法是通过邮件。但是有一个问题:鲍勃和爱丽丝担心有人会读他们的信。

为了保护自己的字母免受他人的注意,他们决定以这样的方式编写消息:将消息中的每个字母替换为字母下方七个位置的字母。因此,与其说“ Apple”,不如说是“ hwwsl”(A-> H,P-> W,L-> S,E-> L)。为了将数据恢复为原始格式,他们必须在字母顺序的七个位置替换字母。

当然,这听起来对您来说太简单了-的确如此。那是因为罗马皇帝和军事将领尤利乌斯·凯撒(Julius Caesar)几个世纪以前就使用了这种技术。这种方法被称为“凯撒密码”,适用于字母替换技术。

如今的加密方法并非如此简单。广泛使用的加密算法是如此复杂,以至于许多超级计算机的综合计算能力也无法破解它们。因此,我们可以放心发送信用卡信息而无后顾之忧。

是什么使对称加密成为一项伟大的技术

对称加密的最突出特征是其过程的简单性。这种加密的这种简单性在于使用单个密钥进行加密和解密。结果,对称加密算法:

比非对称加密算法(我们将在稍后讨论)快得多,需要更少的计算能力,并且不要降低互联网速度。这意味着,当要加密的数据量很大时,对称加密被证明是一个不错的选择。

3种常见的对称加密算法

就像我们在凯撒(Caesar)的密码中看到的那样,每种加密数据的加密方法背后都有特定的逻辑。当今使用的加密方法依赖于高度复杂的数学函数,这些函数几乎不可能破解它们。

您可能意识到或没有意识到的是,存在数百种对称密钥算法!一些最常见的加密方法包括AES,RC4,DES,3DES,RC5,RC6等。在这些算法中,DES和AES算法是最著名的。虽然我们无法涵盖所有不同类型的加密算法,但让我们看一下三种最常见的加密算法。

1. DES对称加密算法

DES(数据加密标准)于1976年推出,是最古老的对称加密方法之一。它是由IBM开发的,用于保护敏感的,未分类的电子政府数据,并于1977年被正式采用,以供联邦机构使用。DES使用56位加密密钥,它基于Feistel结构,该结构由密码学家Horst Feistel设计。DES加密算法是TLS(传输层安全性)版本1.0和1.1中包含的算法。

DES通过将64位纯文本数据块划分为两个单独的32位块,并对每个块分别应用加密过程,将64位纯文本数据块转换为密文。这涉及16个回合的各种过程(例如扩展,置换,替换或使用回合密钥的XOR操作),数据将在加密后经历。最终,将生成64位加密文本块作为输出。

如今,DES已不再使用,因为它已被许多安全研究人员破解。在2005年,DES被正式弃用,并被AES加密算法所取代,我们将在稍后进行讨论。DES的最大缺点是其加密密钥长度短,这使暴力破解变得很容易。TLS 1.2是当今使用最广泛的TLS协议,它没有使用DES加密方法。

2. 3DES对称加密算法

顾名思义,3DES(也称为TDEA,代表三重数据加密算法)是已发布的DES算法的升级版本。3DES的开发是为了克服DES算法的缺点,并于1990年代后期开始投入使用。为此,它将DES算法三次应用于每个数据块。结果,此过程使3DES比其DES前身更难破解。它也已成为金融行业支付系统,标准和技术中广泛使用的加密算法。它也已成为TLS,SSH,IPsec和OpenVPN等加密协议的一部分。

所有加密算法最终都屈从于时间的力量,而3DES也不例外。研究人员Karthikeyan Bhargavan和GatanLeurent发现的Sweet32漏洞消除了3DES算法中存在的安全漏洞。这一发现导致安全行业考虑弃用该算法,美国国家标准技术研究院(NIST)在2019年发布的指南草案中宣布弃用该算法。

根据该草案,到2023年之后,将在所有新应用程序中废弃3DES的使用。值得注意的是,TLS 1.3(SSL / TLS协议的最新标准)也停止使用3DES。

3. AES对称加密算法

AES代表“高级加密系统”,是最广泛使用的加密算法之一,并且是DES算法的替代方法。AES也称为Rijndael,在2001年经NIST批准后成为一种加密标准。与DES不同,AES是一组分组密码,由不同密钥长度和分组大小的密码组成。

AES致力于替代和置换方法。首先,将明文数据转换为块,然后使用加密密钥应用加密。加密过程由各种子过程组成,例如子字节,移位行,混合列和添加回合密钥。根据密钥的大小,执行10、12或14次这样的回合。值得注意的是,上一轮不包括混合列的子过程以及为加密数据而执行的所有其他子过程。

使用AES加密算法的优势

所有这些可以归结为说AES是安全,快速和灵活的。与DES相比,AES是一种更快的算法。多个密钥长度选项是您最大的优势,因为密钥越长,破解它们的难度就越大。

如今,AES是使用最广泛的加密算法,它已在许多应用程序中使用,包括:

无线网络安全,处理器安全性和文件加密,SSL / TLS协议(网站安全),Wi-Fi安全性移动应用加密VPN(虚拟专用网)等许多政府机构,包括国家安全局(NSA),都依靠AES加密算法来保护其敏感信息。

加密类型2:非对称加密

与对称加密方法相反,非对称加密涉及多个密钥,用于数据的加密和解密。非对称加密包含在数学上彼此相关的两个不同的加密密钥。这些密钥之一称为“公共密钥”,另一个称为“私有密钥”。因此,为什么非对称加密方法也被称为“公钥密码术”。

如上例所示,当Alice和Bob想要交换信息时,对称加密非常有用。但是,如果鲍勃想要安全地与数百个人通信,该怎么办?如果他为每个人使用不同的数学键是否可行?并非如此,因为那将是很多玩杂耍的关键。

为了解决此问题,Bob使用公共密钥加密,这意味着他将公共密钥提供给向其发送信息并保留私有密钥给自己的每个人。他指示他们使用公钥加密信息,以便只能使用他拥有的私钥解密数据。这消除了密钥泄露的风险,因为只能使用Bob拥有的私有密钥来解密数据。

是什么使非对称加密成为一项伟大的技术

这种加密的第一个(也是最明显的)优点是它提供的安全性。在这种方法中,公共密钥(可公开使用)用于加密数据,而数据解密则使用私钥完成,私钥需要安全存储。这样可以确保数据免受中间人(MiTM)攻击。对于每分钟连接成千上万个客户端的Web /电子邮件服务器,非对称加密无非是一个福音,因为它们只需要管理和保护一个密钥。另一个要点是,公钥加密技术允许创建加密的连接,而不必先离线就可以交换密钥。

非对称加密提供的第二个关键功能是身份验证。如我们所见,用公共密钥加密的数据只能使用与其相关的私有密钥解密。因此,可以确保仅由应该接收数据的实体才能看到和解密数据。简单来说,它可以验证您是否正在与自己认为的个人或组织进行交谈。

非对称加密算法的2种主要类型

1. RSA非对称加密算法

由Ron Rivest,Adi Shamir和Adleman的伦纳德(因此“RSA”)于1977年发明的,RSA是,迄今为止,最广泛使用的非对称加密算法。它的效力在于它所依赖的“素数分解”方法。基本上,此方法涉及两个巨大的随机质数,并将这些数字相乘以创建另一个巨数。这里的难题是从这个巨大的乘法数确定原始素数。

事实证明,对于当今的超级计算机,这个难题实际上是不可能的-如果使用具有足够熵的正确密钥长度,更不用说人类了。2010年,一组研究人员进行了研究,他们花费了超过1500年的计算时间(分布在数百台计算机上)来破解RSA-768位密钥-远低于使用的标准2048位RSA密钥今天。

使用RSA加密算法的优势

RSA提供的一个巨大优势是它的可伸缩性。它具有各种加密密钥长度,例如768位,1024位,2048位,4096位等。因此,即使较低的密钥长度被成功强行强制执行,也可以使用较高的密钥长度进行加密因为随着密钥长度的增加,暴力破解密钥的难度也会增加。

RSA基于简单的数学方法,这就是为什么它在公钥基础结构(PKI)中的实现变得简单明了的原因。PKI的这种适应性及其安全性使RSA成为当今使用最广泛的非对称加密算法。RSA被广泛用于许多应用程序中,包括SSL / TLS证书,加密货币和电子邮件加密。

2. ECC非对称加密算法

1985年,两位名为Neal Koblitz和Victor S. Miller的数学家提出了在密码学中使用椭圆曲线的方法。在将近二十年之后,当ECC(椭圆曲线密码术)算法在2004-05年投入使用时,他们的想法变成了现实。

在ECC加密过程中,椭圆曲线表示满足数学方程式(y 2 = x 3 + ax + b)的点集。

像RSA一样,ECC也遵循不可逆原理。用简单的话来说,很容易在一个方向上进行计算,但是很难逆转并达到原始点。在ECC中,将表示曲线上一个点的数字乘以另一个数字,得出曲线上的另一个点。现在,要破解这个难题,您必须找出曲线上的新点。ECC的数学原理是这样的,即使您知道原始点,也几乎不可能找到新点。

使用ECC加密算法的优势

与RSA相比,ECC非常复杂(相对于当前的破解方法),它提供了更高的安全性。它提供与RSA类似的保护级别,但是使用的密钥长度短得多。结果,使用更大长度的密钥应用的ECC将使用蛮力攻击花费相当多的时间来破解。

ECC中较短密钥的另一个优点是性能更快。较短的密钥需要较少的网络负载和计算能力,这对于存储和处理能力有限的设备来说非常有用。在SSL / TLS证书中使用ECC时,可大大减少执行SSL / TLS握手所需的时间,并有助于您更快地加载网站。ECC加密算法用于加密应用,伪随机数生成器等中以应用数字签名。

但是,使用ECC的挑战在于,许多服务器软件和控制面板尚未添加对ECC SSL / TLS证书的支持。我们希望这种情况将来会改变,但这意味着RSA在此期间将继续成为使用更广泛的非对称加密算法。

混合加密:对称+非对称加密

首先,让我澄清一下,混合加密不是像对称和非对称加密一样的“方法”。它从这两种方法中汲取了最大的优势,并产生了协同作用以构建强大的加密系统。

与对称和非对称加密一样,它们都有缺点。对称加密方法非常适合大数据的快速加密。不过,它不提供身份验证,这是互联网安全所需要的时间。另一方面,由于使用了公钥/私钥对,因此非对称加密可确保您的预期收件人可以访问数据。但是,这种验证使加密过程在大规模实施时非常缓慢。

在许多应用程序中,例如网站安全性,需要高速加密数据,并且还需要验证身份以确保用户与目标实体进行对话。这就是混合加密思想的诞生。

混合加密技术用于SSL / TLS证书等应用程序。SSL / TLS加密是在服务器和客户端(Web浏览器)之间的一系列来回通信过程中应用的,此过程称为“ TLS握手”。在此过程中,使用私钥和公钥验证双方的身份。双方都确认了自己的身份之后,便使用临时(会话)密钥通过对称加密对数据进行加密。这确保了我们每分钟在互联网上发送和接收的大量数据的快速传输。

加密方法的类型:我们介绍了什么

如果您想知道哪种加密方法比另一种加密方法更好,那么对称和非对称加密都将它们的优势带到了桌上,那么就不会有任何明显的赢家,而且我们不能只选择一种来牺牲另一种。

从安全角度来看,非对称加密无疑会更好,因为它可以确保身份验证和不可否认性。但是,性能也是我们不能忽视的一个方面,这就是为什么始终需要对称加密的原因。

以下是我们就加密类型进行讨论的摘要:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值