本篇来介绍计算机领域的信息安全以及加密相关基础知识,这些在嵌入式软件开发中也同样会用到。
对称加密是指加密和解密的密钥是相同的,属于不公开密钥的加密算法。其缺点是加密强度不高,且密钥分发困难。
对称加密算法 | 描述 |
---|---|
DES | DES(Data Encryption Standard),即数据加密标准,通过替换+位移,使用56位密钥,64位数据块,速度快,密钥易产生。 |
3DES | 即三重数据加密算法,是一种对称密钥加密块密码,相当于是对每个数据块应用三次数据加密标准(DES)算法。 |
AES | AES(Advanced Encryption Standard),是美国联邦政府采用的一种区块加密标准。 |
RC-5 | RC5的主要特性是很快,只是用基本的计算机运算(加、异或、移位等),轮数可变,密钥位数可变,从而大大增加灵活性。 |
IDEA | IDEA(International Data Encryption Algorithm),即国际数据加密算法,使用128位密钥,64位数据块,比DES的加密性好,对计算机功能要求相对低。 |
非对称加密是指加密和解密的密钥是不同的,信息传递双方都拥有自己的公钥和私钥,用对方的公钥加密,用自己的私钥解密。
公钥只能用做数据加密,公钥加密的数据,只能用对应的私钥才能解密。这是非对称加密的核心概念。
非对称加密算法 | 描述 |
---|---|
RSA | RSA加密算法是由罗纳德·李维斯特(Ronald Linn Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德尔曼(Leonard Adleman)于1977年共同发明的。使用1024或512位密钥,计算量极大,难破解。 |
ElGamal | ElGamal加密算法是一个基于迪菲-赫尔曼密钥交换的非对称加密算法。它在1985年由塔希尔·盖莫尔提出。 |
ECC | CC(Ellipse Curve Ctyptography),是一种基于椭圆曲线数学的公开密钥加密算法。椭圆曲线在密码学中的使用是在1985年由Neal Koblitz和Victor Miller分别独立提出的。ECC可以使用更小的密钥并提供相当高等级的安全。ECC164位的密钥相当于RSA1024位密钥提供的保密强度,且计算量较小,处理速度更快,存储空间和传输带宽占用较少。 |
信息摘要,是指一段数据的特征信息,当数据发生变化时,信息摘要也会发生改变。
信息传递时,发送方将数据和对应的信息摘要一起发送,接收方收到后,根据收到的数据重新生成一个信息摘要,若与收到的摘要相同,则说明数据正确。
信息摘要由哈希函数生成。
摘要算法 | 特点 |
---|---|
MD5(Message-Digest Algorithm) | 产生128位的输出 |
SHA-1(Secure Hash Algorithm 1) | 产生160位的输出,安全性更高 |
虽然通过信息摘要,可以判断数据有没有被篡改,但仍然会存在的问题是:如果发送方的数据和摘要都被篡改了,那么接收方拿到错误的数据生成的摘要也和篡改的摘要相同,接收方就无法判断接收的数据是否正确了。
数字签名用于验证发送方是否合法。
数字签名的基本原理是:
另外,由上述示意图可以看出,数字签名技术与非对称加密技术使用公钥和私钥的过程正好是相反的。
当数字签名和信息摘要合用后,就能保证数据不会产生错误。
数字证书指的是互联网通信中,标志通信各方身份信息的一个数字认证,用于识别对方的身份。
数字证书由用户申请,证书签证机关CA(Certificate Authority)对其核实签发,是对用户公钥的认证。
每一个发送方都要先向CA申请数字证书,数字证书是经过CA数字签名的,即CA使用私钥加密。当发送方要发送数据时,接收方首先下载CA的公钥,来验证数字证书的真伪,如果是真的,就能保证发送方是真的,因为CA是权威机构,会确保合法性。
本篇介绍了信息安全的基础知识,以及数据加密相关的基础知识,包括加密的分类,信息摘要,数字签名与数字证书等。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有