由古论今,三千年加密算法发展史(五)
报名入口来源:中国教育在线 2022-05-31
哈希算法
哈希算法也是非常常见的加密算法之一。他和对称算法以及非对称算法最大的区别是,它不是用来做数据传输,而是对数据是否被篡改加以验证,防止不法分子篡改数据。它的特点是无论原文多长都会变成固定长度的字符串,只能加密不能解密(只能单向运算)。对于不同的输入,理论上会生成不同的输出(部分算法已出现大规模碰撞,碰撞就是指不同明文相同密文的情况)。
常见哈希算法包含MD5、SHA-1和SHA 224/256/512等。其中,MD5和SHA-1已经被证明不再安全,所以,建议使用SHA256/512等安全性高的算法。
数据库加密算法
上述加密算法已经广泛应用在各个领域。随着云和大数据的高速发展,数据库也逐渐从安全的局域网环境,向私有云甚至公有云迁移。云环境下服务器变得不再可信,数据库迁移到云上,面临更加严峻的挑战,数据云上安全问题成为不可回避的问题。数据库中保存着关键数据,云上主机存在众多不安全隐患,所以云上数据库加密成为解决这些安全隐患的一剂良药。
数据库加密不同于文件加密和通讯加密等常见加密。数据库加密需要特别关注加密算法是否存在膨胀性,并对加密算法的性能有苛刻的要求。而对称加密中的流加密在运行效率和解决数据膨胀上有天然优势,只可惜在一定情况下安全性较弱。有部分安全厂商采用这种方式提供数据库加密服务。
但更稳妥的做法是采用对称加密中的分组加密(AES)进行相关加密处理。分组加密安全性高,在安全方面比较有保障,但需要解决由于数据块大小限制带来的膨胀问题。这需要根据具体情况或字段设计足够精妙的使用方案,来针对不同字段或类型解决膨胀问题,最终形成完美的数据库加密方案。
密码算法是保障信息安全的核心技术,尤其是最关键的银行业核心领域长期以来都是沿用3DES、SHA-1、RSA等国际通用的密码算法体系及相关标准,为从根本上摆脱对国外密码技术和产品的过度依赖。
近年来国家有关机关和监管机构站在国家安全和长远战略的高度提出了推动国密算法应用实施、加强行业安全可控的要求。摆脱对国外技术和产品的过度依赖,建设行业网络安全环境,增强我国行业信息系统的“安全可控”能力显得尤为必要和迫切。
具体而言,国产密码算法(国密算法)是指国家密码局认定的国产商用密码算法,比如,在金融领域目前主要使用公开的SM2、SM3、SM4三类算法,分别是非对称算法、哈希算法和对称算法。
以SM4算法为例:SM4分组密码算法是我国自主设计的分组对称密码算法,用于实现数据的加密/解密运算,以保证数据和信息的机密性。要保证一个对称密码算法的安全性的基本条件是其具备足够的密钥长度,SM4算法与AES算法具有相同的密钥长度分组长度128比特,因此在安全性上高于3DES算法。