IT评测·应用市场-qidao123.com

标题: 【阿一网络安全】怎样让你的暗码更安全?(二) - 非对称加密 [打印本页]

作者: 尚未崩坏    时间: 2024-12-8 01:06
标题: 【阿一网络安全】怎样让你的暗码更安全?(二) - 非对称加密
前次《【阿一网络安全】怎样让你的暗码更安全?(一) - 对称加密》提到加密算法的对称加密,我们这次来聊聊非对称加密。
和对称加密差别,非对称加密的加密密钥息争密密钥差别。
非对称加密

大概过程就是,发送方使用公钥对明文数据举行加密,把密文发送给吸收方,吸收方收到密文,用私钥举行解密。如图所示:

在我们使用对称加密的时候,不但要约定好发送、吸收方的密钥,还要担心密钥泄漏。而在非对称加密中,不需要担心这个问题,公钥自己就是公开的,不需要额外对其举行保密,可以把公钥发给所有需要的人。
非对称加密,除了加密功能之外,部分非对称算法还提供了签名功能(确保明文数据的完备性和真实性,并不是保密性)。
发送方用私钥对明文数据举行加密,得到签名。吸收方收到明文数据和签名后,用发送方的公钥解密签名,并将结果与明文数据比对。如果匹配,就证实这段消息确实是发送方发送的且没有被篡改。

非对称加密的核心头脑,是基于特定的数学困难设计的,特点就是:
经典且广泛使用的非对称加密算法包罗这几种,RSA、ECC和国密的SM2。
RSA

RSA是一种非对称加密算法,在公开密钥加密和电子贸易中被广泛使用,是由 Ron Rivest、Adi Shamir 和Leonard Adleman 三人一起提出,RSA就是他们三人姓氏的首字母构成。
RSA的安全性,基于 大整数因子分解 的数据困难,换言之,对一极大整数做因数分解愈困难,RSA 算法愈可靠。它使用两个差别的密钥举行加密,公钥用于加密,私钥用于解密。
密钥的天生

公钥和私钥,都是由 发送方 约定并天生的。
公钥 = (N, e)。
私钥 = (N, d)。
加密

c = me mod N
假设发送方想把明文 m 发送给吸收方,就可以按照这个公式把 明文 m,加密成 密文 c 发送给吸收方。
解密

m = cd mod N
与加密类似,吸收方获取到 密文 c,可以按照这个公式 把 密文 c,解密成 明文 m。
数字签名

RSA也可以用作 数字签名。
吸收方 想给 发送方 发消息的话,可以把 他想要发的消息明文盘算一个 散列值(Message Digest),然后用私钥 加密 这个 散列值 并放在消息明文后一起发送给发送方。
发送方 收到 吸收方发送的消息后,把密文用 公钥 举行解密,然后和 发送发自己对这个 消息明文 的盘算的散列值相比较,如果二者同等的话,那么就可以确保该消息 是吸收方发送的,并且没有被篡改过。
安全性


优缺点

长处:

缺点:

现实应用


虽然RSA的理论底子相对简朴,但是现实使用过程中,需要思量许多的细节,好比填充方案,密钥管理,性能优化等。
ECC

ECC(椭圆曲线暗码学,Elliptic Curve Cryptography),是一种基于椭圆曲线数学的公开密钥加密算法。
对比RSA的主要优势在于,使用较小的密钥长度就能提供相当级别的安全性,使得它特别适合资源受限的环境下使用,好比移动设备和物联网设备。
ECC 的安全性,基于椭圆曲线离散对数问题(ECDLP)的困难性,在椭圆曲线上,已知点P 和 点Q,找到整数k使得 Q = kP 是困难的。
密钥的天生

加密

解密

数字签名

签名:

验证:

安全性


优缺点

长处:

缺点:

现实应用


虽然ECC的数学底子看起来更复杂,但是他的盘算效率更加的高效。它的高效性使得它广泛用于许多加密货币中。实现过程中仍然需要注意一下细节,好比曲线的选择、随机数的天生等。
SM2

SM2是我国国家暗码管理局发布的一种公钥暗码算法,属于国家商用暗码,算法公开。
它基于ECC(椭圆曲线暗码学),但有其特定的参数和实现细节,加密强度和ECC相当。
密钥的天生

加密

解密

数字签名

签名:
验证:
安全性


优缺点

长处:

缺点:

现实应用


总结

本文主要简朴介绍了非对称加密算法 RSA、ECC 和 SM2 的基本原理,以及它们的实现过程。对比对称加密,非对称加密算法的最大优势就是保障了密钥分发的安全性、支持数字签名。
因此,如今大部分的认证和签名场景,其实使用的都是非对称加密算法。好比,在SSH登录、Git上传等场景中,我们都可以将自己的公钥上传到服务端,然后由客户端生存私钥。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4