freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

等级保护中的密码技术-02.对称加密算法
2021-03-09 15:51:54

1. 基本概念

1.1 密码技术的体系结构模型:

image

在体系结构模型中,如果加密密钥和解密密钥完全相同,这类加密算法就称为对称加密算法。对称加密算法在实际应用时,要求发送方和接收方在工作前商定一个密钥,大家使用共同的密钥进行加密和解密计算。

图片.png

1.2 对称加密算法的主要特点是算法公开、快速高效。

对称加密算法的核心优势是快速高效,对系统消耗很少,就可以支持对大量数据的加密和解密。比如非对称加密算法RSA对比对称加密算法AES,加密同样的数据,时间消耗大约相差1000倍左右。
    因为加密和解密的密钥相同,对称加密算法的安全核心是密钥,密钥的安全就等同于数据加密的安全,密钥安全问题是对称加密算法在实际应用中需要解决的主要问题。为了保证不同数据加密过程的安全性,一般使用不同的密钥,有些特殊场景甚至要求一次一密。随着密钥数量的增多,密钥的管理问题会逐渐显现出来,带来极大的管理负担。一个完整的加密技术方案,必须考虑密钥的管理。密钥管理涉及密钥的生成、使用、传输、存储和销毁等过程,是一套复杂的安全业务系统。

2. 典型算法

目前常见的典型对称加密算法包括DES、3DES、AES、RC等,这些算法其实背后都有一个家族,同一家族中算法的基本结构是一致的,主要是密钥长度、循环运行的次数等略有差异,下表列出来这些家族中的典型算法:

2.1 DES(Data Encryption Standard)

美国国家标准局于1976年发布的商用数据加密标准,基于Feistel结构。DES算法的数据分组长度和密钥长度都是64位。DES算法现在已经被证明是不够安全的,不建议使用。为了增强DES的安全性,推出来3DES算法,基于2个64位密钥,进行3轮DES加密,可以大大增强加密算法的强度。

2.2 AES(Advanced Encryption Standard)

美国国家标准技术研究所NIST在2001年发布的旨在取代DES的新一代数据加密标准。AES算法的数据分组长度是128位,密钥长度可以是128位、192位或256位。AES128在目前仍然被认为是安全的加密算法。

2.3 RC(Rivest Code)

RC算法是基于数据流,在加解密过程中没有数据分组的概念,面向字节进行加解密,密钥长度可变。

2.4 国密家族

SM1为对称加密算法,加密强度与AES相当,密钥长度和分组长度均为128位,该算法不公开,需要通过加密芯片的接口进行调用。SM4是无线局域网标准的分组数据算法,密钥长度和分组长度均为128位。SM7是一种分组密码算法,密钥长度和分组长度均为128位,SM7适用于非接触式IC卡。ZUC祖冲之算法是流密码算法,是运用于移动通信4G网络中的国际标准密码算法,该算法包括祖冲之算法(ZUC)、加密算法(128-EEA3)和完整性算法(128-EIA3)三个部分。

2.5 其他对称加密算法

TEA:它是一种分组密码算法,其明文数据分组长度为64位,密钥长度为128位。TEA算法在QQ应用中广泛使用。

3. 应用场景及方案

3.1 通信加密方案

通信加密方案中,最典型的是IPSec VPN和SSL/TLS VPN。

3.1.1 IPSec VPN

IPSec VPN是一套协议的合集,共同定义了一系列IP报文的安全传输封装标准。
    IPSec使用认证头AH(Authentication Header)和封装安全载ESP(Encapsulating Security Payload)两种安全协议来传输和封装数据,提供认证或加密等安全服务。
    AH对数据包和认证密钥进行Hash计算,接收方收到带有计算结果的数据包后,执行同样的Hash计算并与原计算结果比较,传输过程中对数据的任何更改将使计算结果无效,这样就提供了数据来源认证和数据完整性校验。AH协议的完整性验证范围为整个IP报文。
    ESP是一种基于IP的传输层协议,其工作原理是在每一个数据包的标准IP报头后面添加一个ESP报文头,并在数据包后面追加一个ESP尾(ESP Tail和ESP Auth data)。与AH不同的是,ESP将数据中的有效载荷进行加密后再封装到数据包中,以保证数据的机密性。

3.1.2 SSL/TLS VPN

SSL/TLS VPN起源于SSL协议,该协议现在已经升级为TLS协议,不过很多人还是习惯性称为SSL。我们日常使用HTTPS协议技术基于SSL/TLS协议进行加密传输的。
    SSL/TLS VPN与IPSec VPN相比,相对更简易更易于部署。任何安装浏览器的机器都可以使用SSL/TLS VPN,它不需要像传统IPSecVPN一样必须为每一台客户机安装客户端软件。
    SSL/TLS中客户端和服务器端通过协商确定使用密码套件中的一致的加密算法,其中对称加密算法主要包括AES-128、AES-256等。

3.2 存储加密方案

3.2.1 文件加密

文件加密即对需要保护的整个文件加密后存储在硬盘上,读取时先解密然后读取内容。
    根据文件加密的粒度,文件加密可以分为针对特定文件加密、针对特定文件夹加密、针对特定文件类型加密等。
    根据文件加密的使用方式,文件加密可以分为透明加密和不透明加密。透明加密即使用者不感知,在存储和查看时感觉不到加解密的过程。不透明加密即使用者明确感知文件的加解密过程,需要输入密钥或确认加解密。

3.2.2 数据库加密

当前主流的数据库都提供的自带的加密函数,实现对某些字段的存储加密。比如MySQL提供的数据加密方案中包括AES加解密方案AES_ENCRYPT() / AES_DECRYPT(),DES加解密方案DES_ENCRYPT() / DES_DECRYPT()等。微软的SQL Server几乎支持所有的主流对称加密算法。一般推荐使用AES-128或AES-256作为对称加密的数据加密算法。如果不愿意使用数据库自带的加密方案,也可以自定义数据加密方案,加密后再存储。数据库加密属于应用层加密方案,和实际业务绑定很紧,需要在业务层精准识别需要加密的敏感数据,针对性的进行加密、解密处理。

4.对称加密算法总结

对称加密算法是指加密密钥和解密密钥相同的加密算法,具有计算量小、加密速度快、加密效率高的特点,是业务数据加密的必选算法。目前密钥长度达到128位的加密算法才能保证安全性,一般推荐使用AES-128加密算法,国内某些特殊场景可以根据需要采用国密算法。
# 等级保护2.0 # 等级保护测评
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录