目录
背景
近年来,随着物联网(IoT)的发展,无线传感器网络(WSN)和无线射频技术(RFID)的应用越来越广泛,它们具有硬件制造、维护成本低,网络健壮性、自组织性强、适用性广泛的特点,已经成为物联网应用的关键组成部分。在门禁、自动提款机、手机等轻量级设备上,由于软件和硬件的限制,如果使用之前的各类密码算法可能会因为密码算法的加密速度太慢或者密钥生成算法过于复杂,而不能达到加密的快速性、实时性的标准,从而推动了学术界对轻量级密码的研究,例如基于大整数因子分解困难问题的RSA、512bit分组的MD5。大多数用于工业应用的轻量级算法,设计于1980-1990年十年。但那时设计的轻量级密码无法抵抗现有发展的攻击,这是肯定的,因为没有绝对安全的密码嘛。
每个轻量级密码学的设计者都必须应对安全性、成本和性能之间的权衡。通常很容易优化这三个设计目标中的任何两个——安全性和成本、安全性和性能,或成本和性能,以牺牲其中一个为代价;然而,很难同时优化所有三个设计目标。可以通过流水线、抗侧通道的体系结构来实现安全和高性能的硬件,但是这也会导致高区域需求,从而产生高成本。另一方面,可以设计一个安全、低成本,但性能有限的硬件实现。
轻量级密码标准
并没有找到将加密算法归类为轻量级的严格标准,【轻量级算法的共同支持是对目标设备的主要资源的要求非常低。】
2013年,美国国家标准技术研究院(NIST)启动了“轻量级密码”项目。
2021年3月29日,NIST宣布了10名决赛选手,分别是ASCON、Elephant、GIFT-COFB、Grain128-AEAD、ISAP、Photon-Beetle、Romulus、Sparkle、TinyJambu和Xoodyak。【标准化过程的最后一轮预计将持续大约12个月,大概在2022年NIST将会召开最后一次研讨会,宣布最终选定的标准轻量级密码。】
国际方面,目前有国际标准ISO/IEC29192《轻量级密码》,包括6个部分:第1部分给出一般信息,如安全性、分类、实现要求;第2部分描述典型的分组密码PRESENT和CLEFIA等;第3部分描述流密码Enocoro和Trivium;第4部分描述IBS等三种非对称技术;第5部分描述PHOTON、SPONGENT、LesamntaLW三种散列函数;第6部分介绍消息认证码等。
轻量级密码分类
【可以按照轻量级密码的类别进行分类】轻量级分组密码、轻量级序列密码、轻量级公钥密码和轻量级散列函数等。
【可以按照轻量级密码适用的场景】面向软件的轻量级密码、面向硬件的轻量级密码、超轻量级密码学(ULWC)【指适合设计空间的特定区域的算法,如32位微控制器上的高速块密码】
轻量级对称密码
分组密码
算法 | 年份 | 适用环境 |
HIGH | 2006 | 对速度要求不高,但对硬件实现代价严格的资源受限环境 |
PRESENT | 2007< |