国密简介与现状

人类社会出现后就出现了信息交流,也就有了保护信息不被第三方获知的需求。密码由来已久,其发展经历了古典密码、机械密码、现代密码三个阶段。在这一过程中,密码技术在保密与破译、窃密与反窃密的激烈博弈中不断演变,理论发展最终使得密码学成为科学,当前,广泛多样性的应用需求和日趋激烈的攻防对抗,正在推动密码技术快速发展。

随着全球数字经济发展,网络空间必将成为战略威慑和控制的新领域、维护经济社会稳定的新阵地以及未来各国军事角逐的新战场,网络安全被纳入国家安全重要战略地位。密码作为保障网络安全的核心技术,是构建网络信任的基础支撑。我们利用密码的安全认证、加密保护、信任传递等特性,来消除或控制潜在的安全危机。

商用密码正是诞生于这样的背景之下的现代密码,商用密码是对不涉及国家秘密内容的信息进行加密保护或者安全认证,所使用的密码技术和密码产品。口语中一般也称呼商用密码为国密。商用密码算法标准由国家密码管理局制定,与此同时国密密码管理局也制定了大量的产品、接口规范以及应用场景,用于保障金融,医疗等领域的信息传输安全。

商用密码是密码技术的重要组成部分,在维护国家安全和主权、促进经济发展、保护人民群众利益中发挥着不可替代的重要作用。密码算法是非常基础和重要的密码技术。国家密码管理局高度重视密码算法管理工作。党的十八大以来,商用密码实现了跨越式发展。在科技和产业发展方面,密码科技创新能力不断增强,形成了较完善的标准体系,祖冲之(ZUC)、SM2、SM3、SM4 和 SM9 等我国商用密码算法已成为我国密码行业和国家标准,并被纳入 ISO/IEC 国际标准正式发布。

国密算法概述

SM1 和 SM7 算法没有公开,仅以 IP 核的形式存在于芯片中,需要通过加密芯片的接口进行调用。

密码算法是保障信息安全的核心技术,尤其是最关键的银行业核心领域长期以来都是沿用3DES、SHA-1、RSA等国际通用的密码算法体系及相关标准。

随着近年来外部的国际贸易冲突和技术封锁,内部互联网的快速发展,IOT领域的崛起,以及金融领域的变革愈演愈烈。摆脱对国外技术和产品的过度依赖,建设行业网络安全环境,增强我国行业信息系统的安全可信显得尤为必要和迫切。

国家商用密码算法与标准体系

2010年底,国家密码管理局公布了我国自主研制的“椭圆曲线公钥密码算法”(SM2算法)。为保障重要经济系统密码应用安全,国家密码管理局于2011年发布了《关于做好公钥密码算法升级工作的通知》,明确要求“自2011年3月1日起,在建和拟建公钥密码基础设施电子认证系统和密钥管理系统应使用国密算法。自2011年7月1日起,投入运行并使用公钥密码的信息系统,应使用SM2算法。”

自2012年以来,国家密码管理局以《中华人民共和国密码行业标准》的方式,陆续公布了SM2/SM3/SM4等密码算法标准及其应用规范。其中“SM”代表“商密”,即用于商用的、不涉及国家秘密的密码技术。

我国高度重视商用密码国际标准化工作,大力推进以我国自主设计研制的SM系列密码算法为代表的中国商用密码标准纳入国际标准,积极参与国际标准化活动,加强国际交流合作。

2011年9月,我国设计的祖冲之(ZUC)算法纳入国际第三代合作伙伴计划组织(3GPP)的4G移动通信标准,用于移动通信系统空中传输信道的信息加密和完整性保护,这是我国密码算法首次成为国际标准。

2015年5月起,我国陆续向ISO提出了将SM2、SM3、SM4和SM9算法纳入国际标准的提案。

2017年,SM2和SM9算法正式成为ISO/IEC国际标准。

2018年,SM3算法正式成为ISO/IEC国际标准。

2020年4月, ZUC序列密码算法正式成为ISO/IEC国际标准。

2021年2月,SM9算法正式成为ISO/IEC国际标准。

2021年6月,SM4算法正式成为ISO/IEC国际标准。

我国商用密码国际标准体系已初步成型,为密码在全球范围的发展与应用提供了中国方案,贡献了中国智慧。

在转化运用国际标准方面,商用密码行业标准GM/T0028《密码模块安全技术要求》和GM/T0039《密码模块安全检测要求》,分别参考国际标准ISO19790和ISO24759编制,为规范商用密码产品管理、提升商用密码产品安全防护能力发挥了重要作用,充分体现了商用密码标准制定的开放性。

密码算法

SM2 基于椭圆曲线的公钥密码算法

SM2 基于椭圆曲线密码(ECC)的公钥密码算法标准,提供数字签名,密钥交换,公钥加密,可用于替换RSA/ECDSA/ECDH等国际算法。

该算法是基于椭圆曲线上离散对数计算问题,由于基于椭圆曲线上离散对数问题的困难性要高于一般乘法群上的离散对数问题的困难性,且椭圆曲线所基于的域的运算要远小于传统离散对数的运算位数。因此,椭圆曲线密码体制比原有的RSA密码体制更具优越性。

SM2 算法密钥长度为256比特,具有密钥长度短、安全性高等特点。SM2算法中的公钥加密算法可应用于数据加/解密和密钥协商等。SM2算法中的数字签名算法已在我国电子认证领域广泛应用。

SM3 消息摘要算法

SM3是消息摘要算法,哈希结果为固定的256 bits,可用于替换MD5/SHA1/SHA256等国际算法。

该算法采用M-D结构,输入消息经过填充、扩展、迭代压缩后,生成长度为256比特的杂凑值。SM3算法的实现过程主要包括填充分组和迭代压缩等步骤。SM3算法在结构上和SHA-256相似,消息分组大小、迭代轮数、输出长度均与SHA-256相同。但相比于SHA-256,SM3算法增加了多种新的设计技术,从而在安全性和效率上具有优势。在保障安全性的前提下,SM3算法的综合性能指标与SHA-256在同等条件下相当。

SM4 分组密码算法

SM4算法是我国颁布的商用密码标准算法中的分组密码算法。为配合无线局域网标准的推广应用,SM4算法于2006年公开发布,并于2012年3月发布密码行业标准,2016年8月转化为国家标准。SM4算法是一个迭代的分组密码算法,数据分组长度为128比特,密钥长度为128比特,加密算法与密钥扩展算法都采用32轮非线性迭代结构(非平衡Feistel结构),明文分组经过迭代加密函数变换后的输出,又成为下一轮迭代加密函数的输入,如此迭代32轮,最终得到密文分组。每一轮迭代的函数相同,输入的轮密钥不同。Feistel结构的特点是加密和解密的算法结构一样。

SM9 公钥密码算法

SM9算法是一种基于双线性对的标识密码算法,它可以把用户的身份标识用以生成用户的公、私密钥对,主要用于数字签名、数据加密、密钥协商以及身份认证等。SM9标识密码算法的密钥长度是256比特,应用与管理不需要数字证书、证书库或密钥库。签名者持有一个标识和相应的私钥,该私钥由密钥生成中心通过主私钥和签名者的标识结合产生,签名者用自身的私钥对数据产生数字签名,验证者用签名者的标识生成其公钥,验证签名的可靠性,即验证发送数据的完整性、来源的真实性和数据发送者身份。

ZUC 祖冲之算法

祖冲之序列密码算法是中国自主研究的流密码算法,是运用于移动通信4G网络中的国际标准密码算法,该算法包括祖冲之算法(ZUC)、加密算法(128-EEA3)和完整性算法(128-EIA3)三个部分。

法律法规

《中华人民共和国密码法》

2019年10月26日,十三届全国人大常委会第十四次会议通过《中华人民共和国密码法》,于2020年1月1日起正式施行。出台密码法是几代密码人的梦想,是密码事业发展的现实需要,是密码工作历史上具有里程碑意义的重大事件。密码法的颁布和实施,是构建国家安全法律制度体系的重要举措,是维护国家网络空间主权安全的重要举措,是推动密码事业高质量发展的重要举措,是密码守好党和国家“命门”、“命脉”的重要法律保障。

随着《密码法》的颁布实施,我国商用密码在新的历史起点上,必将迎来更加广阔的发展空间。

《商用密码管理条例》

《国家商用密码管理条例》于1999年10月由国务院颁布,共七章27条,是为了加强商用密码管理,保护信息安全,保护公民和组织的合法权益,维护国家的安全和利益,所制定的条例。

《网络安全等级保护基本要求》

《信息安全技术—网络安全等级保护基本要求》(GB/T 22239-2019)是2019年12月1日实施的一项中国国家标准,归口于全国信息安全标准化技术委员会。

该要求规定了网络安全等级保护的第一级到第四级等级保护对象的安全通用要求和安全扩展要求。安全要求细分为技术要求和管理要求。其中技术要求部分为“安全物理环境”、“安全通信网络”、“安全区域边界”、“安全计算环境”、“安全管理中心”;管理要求部分为“安全管理制度”、“安全管理机构”、“安全管理人员”、“安全建设管理”、“安全运维管理”,两者合计共分为10大类。

安全技术要求的分类体现了“从外部到内部”的纵深防御思想,对等级保护对象的安全防护应考虑从通信网络、区域边界和计算环境从外到内的整体防护,同时考虑其所处的物理环境的安全防护,对级别较高的还需要考虑对分布在整个系统中的安全功能或安全组件的集中技术管理手段。

安全管理要求的分类体现了“从要素到活动”的综合管理思想,安全管理需要的“机构”、“制度”和“人员”三要素缺一不可,同时应对系统的建设整改过程和运行维护过程中重要活动实施控制和管理,对级别较高的需要构建完备的安全管理体系。

该标准适用于指导分等级的非涉密对象的安全建设和监督管理。

Copyright © openanolis.cn 2023 all right reserved
作者: OpenAnolis
链接: https://github.com/openanolis/whitebook-shangmi
来源: OpenAnolis
本文原创发布于「OpenAnolis」,转载请注明出处,谢谢合作!