国产密码算法及应用
国产商用密码算法及其相关标准介绍
标准咨询国产商用密码算法及其相关标准介绍谢宗晓(中国金融认证中心)董坤祥(山东财经大学管理科学与工程学院)甄杰(重庆工商大学管理科学与工程学院)1 概述《中华人民共和国密码法》第六条中规定:密码分为核心密码、普通密码和商用密码。
同时,在第七条和第八条中规定:核心密码、普通密码属于国家秘密,商用密码用于保护不属于国家秘密的信息。
因此,在常见应用中,商用密码得到了大面积的推广,以至于,在实践中,提到“国密”,经常就被默认为国产商用密码算法。
在现代密码系统中,密码算法、密码协议和密钥管理是三个不可或缺的部分,而在这三者之中,最为核心的毫无疑问就是密码算法。
虽然实践证明,绝大部分的安全漏洞都产生于实现和部署过程中,但是,算法的安全与否,直接决定了一个密码系统的基础是否安全。
例如,选用SHA-1、MD4、MD5、RC4和密钥长度小于2048位的RSA 等不安全的算法,不可能实现安全的密码系统。
已经发布的国产商用密码算法,按照类别可以分为:1)对称密码算法,主要包括ZUC 和SM4;2)非对称密码算法,主要包括SM2和SM9;3)密码杂凑算法,主要包括SM3。
2 对称密码算法对称密码(symmetric cryptography)是用相同的密钥(或方法)进行加密解密,这在逻辑上非常清晰,也最直观,有时候也被称之为共享密钥密码,对称密码算法的基本过程如图1所示。
1) 注意,RC4算法已经证明不安全。
图1 对称密码的工作过程已经发布国产商用密码算法中属于对称密码算法的有ZUC 和SM4。
ZUC(祖冲之密码算法)属于序列密码,也称为“流密码”,与之类似的国外密码算法如RC41)。
ZUC 对应的国家标准、行业标准,如表1所示。
SM4属于分组密码,也称为“块密码”,与之类似的国外密码算法如DES(数据加密标准),TDEA/3DES(三重数据加密标准)以及AES(高级加密标准)等。
SM4对应的国家标准、行业标准,如表2所示。
国产密码改造方案
国产密码改造方案单位办公系统国产密码改造方案1.国产密码算法背景随着国家信息化建设的不断推进,信息安全问题越来越受到重视。
为了加强信息安全保障,国家提出了推广使用国产密码算法的目标。
在此背景下,本单位决定对办公系统进行国产密码改造。
2.网络及业务现状分析在进行密码改造前,我们对办公系统的网络及业务进行了分析。
根据分析结果,我们发现系统存在一些安全隐患,需要加强保障。
同时,系统的业务量也在不断增加,需要更高效的密码算法来支持。
3.单位密码应用现状分析3.1 单位密码应用现状我们对本单位的密码应用现状进行了详细调查,发现目前存在一些问题。
例如,密码强度不够,易被破解;密码管理不规范,存在泄露风险等。
3.2 面临的问题在密码改造过程中,我们还面临着一些问题。
例如,如何保证密码算法的安全性和可靠性;如何进行系统的平滑升级等。
4.建设原则为了确保密码改造的顺利进行,我们制定了一系列建设原则。
例如,保证密码算法的安全性和可靠性;注重用户体验,确保密码使用的便利性等。
5.建设目标我们的建设目标是,通过密码改造,提升系统的信息安全保障能力,提高密码算法的效率和安全性,为单位的业务发展提供更好的支持。
6.设计依据在制定国产密码改造方案时,我们遵循了一系列设计依据。
例如,XXX发布的密码算法标准,以及国内外密码算法的研究成果等。
7.国密改造方案7.1 技术路线选择在国密改造方案中,我们选择了国产SM2、SM3、SM4算法作为密码算法。
同时,我们采用了一系列安全技术手段,如密钥管理、加密传输等,来保障密码算法的安全性和可靠性。
7.2 总体架构在本章节中,我们将会介绍整个国产密码改造项目的总体架构。
该架构包括了可信密码认证机制、数据存储保护机制、数据传输保护机制以及运行维护保护机制等多个方面。
7.3 改造方案为了保障信息安全,我们需要对原有的密码系统进行改造。
本节将会介绍我们的改造方案,包括可信密码认证机制、数据存储保护机制、数据传输保护机制以及运行维护保护机制等多个方面。
政府国产密码应用实施方案
政府国产密码应用实施方案随着信息化时代的到来,网络安全问题日益凸显,各国政府也越来越重视国家信息安全和数据隐私保护。
作为信息安全的重要组成部分,密码应用在政府和企业的信息系统中起着至关重要的作用。
为了加强国家信息安全防护,我国政府制定了国产密码应用实施方案,以提升密码应用的安全性和可控性。
一、国产密码应用实施的背景和意义。
随着国家信息化建设的不断深入,我国政府和企业的信息系统中使用了大量的密码应用,涉及到国家重要信息资产的保护和数据的安全传输。
然而,由于国外密码应用的可控性和安全性存在一定隐患,为了确保国家信息安全和数据隐私,我国政府有必要推动国产密码应用的实施,提升密码应用的安全性和可控性,减少对国外密码应用的依赖。
二、国产密码应用实施的原则和目标。
1. 原则。
(1)安全可控原则,国产密码应用必须具备安全可控的特点,确保国家信息安全和数据隐私。
(2)自主创新原则,鼓励国内企业在密码应用领域进行自主创新,提升技术实力和市场竞争力。
(3)多元发展原则,支持多家企业开展国产密码应用的研发和推广,形成多元化的密码应用市场格局。
2. 目标。
(1)提升密码应用的安全性和可控性,确保国家信息安全和数据隐私。
(2)推动国产密码应用在政府和企业信息系统中的广泛应用,减少对国外密码应用的依赖。
(3)促进国内密码应用产业的发展,提升技术实力和市场竞争力。
三、国产密码应用实施的具体措施。
1. 政策支持。
(1)加大政策扶持力度,鼓励企业在国产密码应用研发和推广方面进行投入。
(2)建立国产密码应用采购优惠政策,推动政府和企业采购国产密码应用。
2. 技术研发。
(1)加强国产密码应用的技术研发,提升密码算法的安全性和可靠性。
(2)推动国产密码应用与国际标准接轨,提升国产密码应用的国际竞争力。
3. 市场推广。
(1)加强国产密码应用的市场推广,提升用户的认可度和信任度。
(2)建立国产密码应用的认证机制,确保国产密码应用的质量和安全性。
国产商用密码应用方案
国产商用密码应用方案1. 简介密码应用方案是现代企业和组织中非常重要的安全措施之一。
它们用于保护敏感信息和数据,防止未经授权的访问和数据泄露。
本文档将介绍一种国产商用密码应用方案,该方案适用于各类企业和组织,能够提供高级的加密和访问控制功能。
2. 方案概述国产商用密码应用方案采用了先进的密码学算法和软硬件集成技术,以确保敏感信息和数据的安全性。
该方案具有以下主要特点:•强大的加密算法:方案使用了多种高级的加密算法,包括AES、RSA、SHA等,以保证信息的机密性和完整性。
•灵活的访问控制:方案支持多种访问控制策略,如基于角色的权限控制、审计日志等,可以根据企业和组织的需要进行个性化配置。
•安全的存储和传输:方案采用了安全的存储和传输机制,如数据加密和HTTPS传输,以保护数据在存储和传输过程中的安全性。
•容易集成和扩展:方案提供了丰富的API和插件接口,可以与其他系统和应用进行集成,并支持扩展和定制化开发。
3. 方案组成国产商用密码应用方案由以下几个核心组件组成:3.1 密码管理器密码管理器是方案的核心功能模块,负责存储和管理用户的密码。
它具有以下主要功能:•密码存储:密码管理器可以安全地存储用户的密码,保证密码的机密性和完整性。
•密码生成:密码管理器可以根据用户的需求生成强密码,并自动保存到存储中。
•密码共享:密码管理器支持密码的共享功能,可以安全地共享密码给其他用户或组织。
•访问控制:密码管理器支持灵活的访问控制策略,可以控制用户对密码的访问权限。
3.2 认证和授权模块认证和授权模块负责用户的身份认证和访问控制。
它具有以下主要功能:•用户认证:认证和授权模块支持多种用户认证方式,如用户名密码、双因素认证等。
•权限管理:认证和授权模块支持基于角色的权限管理,可以根据用户的角色控制其对密码的访问权限。
•审计日志:认证和授权模块记录用户的登录和操作日志,以便进行安全审计和追踪。
3.3 客户端应用方案提供了多种客户端应用,包括桌面应用、移动应用等,用于用户管理密码和进行访问控制。
国产密码算法软件引擎的安全挑战
国产商用密码技术的应用推广密码技术是网络空间安全的重要基础,在计算机和网络系统中发挥了不可替代的安全作用。
推广国产密码技术、应用商用密码算法,是建设我国网络空间安全基础设施的必要措施之一。
全面推广国产密码技术、深入应用商用密码算法,有如下三方面工作需要完成:(1)密码算法标准化。
目前我国已经制定并公开发布了完整的密码算法体系:分组密码算法SM4、流密码算法ZUC、杂凑算法SM3、公钥密码算法SM2(包括加解密、数字签名和密钥协商)和标识密码算法SM9。
而且,其中部分密码算法已经成为国际标准。
(2)制定配套的密码应用标准。
在数字证书、通信协议、应用接口等方面,形成配套标准,实现商用密码应用标准体系。
(3)形成多元化的密码产品生态。
各种不同形式的硬件、固件和软件密码产品,满足应用系统的不同需求;尤其是软件密码产品,更具有技术灵活性、实施部署更容易,在成本上也更具优势。
在商用密码算法和密码应用标准方面,我国已经发展多年。
然而,在密码产品多元化方面,一方面由于历史原因,我国商用密码长久以来只支持合规的硬件产品,近年来合格软件密码产品已经开放、但是软件密码产品发展仍然较弱;另一方面也由于软件密码产品面临着更大的技术挑战,尤其是密钥安全,所以在软件密码产品(或者称为软件密码引擎、密码算法软件模块)方面,还有更多的技术难题需要克服。
国产密码算法软件引擎的安全挑战从密码学基本原理出发,密码算法公开,密码产品最重要的、最需要保护的数据就是密钥以及各种敏感参数。
按照GM/T 0028《密码模块安全技术要求》和GM/T 0039《密码模块安全检测要求》,密码模块尤其需要确保关键安全参数和敏感参数的安全,其中最重要的参数就是密钥。
密码算法的密钥以及各种敏感参数(例如,IV 和Nonce 等),通常都是由随机数产生获取;另一方面,确定性随机数发生器也通常是带有密钥的密码功能模块;二者相互联系、密不可分。
相比于硬件形式的常见密码算法实现(例如,密码机、密码卡、USB 令牌等),密码软件引擎面临着更大的安全挑战。
国产密码算法
密码学的相关术语密码学(cryptography):通过将信息编码使其不可读,从而达到安全性。
算法:取一个输入文本,产生一个输出文本。
加密算法:发送方进行加密的算法。
解密算法:接收方进行解密的算法。
对称密钥加密(Symmetric Key Cryptography):加密与解密使用相同密钥。
非对称密钥加密(Asymmetric Key Cryptography):加密与解密使用不同密钥。
密钥对:在非对称加密技术中,有两种密钥,分为私钥和公钥,私钥是密钥对所有者持有,不可公布,公钥是密钥对持有者公布给他人的。
公钥:公钥用来给数据加密,用公钥加密的数据只能使用私钥解密。
私钥:如上,用来解密公钥加密的数据。
摘要:对需要传输的文本,做一个HASH计算。
签名:使用私钥对需要传输的文本的摘要进行加密,得到的密文即被称为该次传输过程的签名。
密码协议密码协议是指两个或两个以上的参与者为了达到某种特定目的而采取的一系列步骤。
规定了一系列有序执行的步骤,必须依次执行。
必须有两个或两个以上的参与者,有明确的目的。
参与者都必须了解、同意并遵循这些步骤。
常见的密码协议包括IPSEC VPN 协议、SSL VPN 协议、密钥交换协议等。
密码算法密码是指描述密码处理过程的一组运算规则或规程,一般是指基于复杂数学问题设计的一组运算,其基本原理基于数学难题、可证明计算、计算复杂度等。
主要包括:对称密码、公钥密码、杂凑算法、随机数生成。
•对称加密算法在对称加密算法中,加密使用的密钥和解密使用的密钥是相同的,加密和解密都是使用同一个密钥,不区分公钥和私钥。
通信双方采用相同的密钥来加解密会话内容,即一段待加密内容,经过同一个密钥的两次对称加密后,与原来的结果一样,具有加解密速度快和安全强度高的优点。
国际算法ES、AES。
国产算法:SM1、SM4、SM7。
•非对称加密算法非对称加解密算法又称为公钥密码,其密钥是成对出现的。
双方通信时,首先要将密钥对中的一个密钥传给对方,这个密钥可以在不安全的信道中传输;传输数据时,先使用自己持有的密钥做加密,对方用自己传输过去的密钥解密。
工业互联网网络安全的国产密码应用
512022年6月上 第11期 总第383期信息技术与应用China Science & Technology Overview0.引言工业互联网是新一代信息技术与工业经济领域深度融合形成的新兴业态,它将工业系统与高级计算、分析、传感技术及互联网高度融合,是一种能够实现将人、机、物全面互联的新型网络基础设施[1]。
随着工业互联网成为新基建的组成部分,工业互联网已成为国家关键信息基础设施的重要组成部分。
没有网络安全就没有国家安全,没有信息化就没有现代化,党的十八大以来,以习近平同志为核心的党中央重视互联网、发展互联网、治理互联网。
工业互联网的安全可控是确保其在各生产领域能够落地实施的前提,更是产业安全和国家安全的重要基础和保障。
密码技术作为保障工业信息安全的基础性技术,在工业互联网网络体系、平台体系、应用体系建设和网络安全防护体系中占据着举足轻重的地位。
我国高度重视国产密码算法尤其是轻量级密码算法的研究及其在工业互联网领域的应用。
国产商用密码算法已经形成了一套完整体系[2],并且由我国自主设计的ZUC 法已经成为第三代合作伙伴计划(3GPP)中的4G 国际标准, SM2/SM9数字签名算法、SM3密码杂凑算法、SM4分组密码算法,SM9标识加密算法也已达到国际先进水平,并且通过了国际标准化组织(ISO)和国际电工委员会(IEC)的认证,现已成为国际标准。
本文首先阐述密码技术在工业互联网平台基础设施建设、数据全生命周期保护、访问控制等方面的应用情况;其次,分析了目前密码技术在工业互联网应用中所存在的问题;再次,针对工业互联网终端的身份识别问题,设计了一种基于国密算法的安全身份认证协议;最后,分析该协议的双向认证、用户匿名性,并能抵抗假冒攻击等安全特性。
1.密码技术在工业互联网中的应用在工业互联网平台基础设施建设中,需要用到密码服务、密码管理和密码应用。
在IaaS 层,密码应用在租户数据和虚拟机镜像的数据加密保护方面;在PaaS 层,密码应用在数据加解密、安全认证、授权管理和协同签名等方面;在SaaS 层,密码应用在为工业互联网用户提供安全接入、数据加密、数据防篡改、工业敏感数据保护等方面,例如采用SM2算法和SM3算法进行数字签名和完整性校验,并提供数据原发证据和数据接收证据,实现抗抵赖保护。
保密性国产算法
保密性国产算法国家密码管理局1、密码算法是保障信息安全的核心技术,尤其是我国最关键的银行业核心领域长期以来都是沿用MD5、SHA-256、3DES、AES、RSA 等这些国际通用的密码算法体系及相关标准。
随着计算机性能提升,原本被认为安全的加密算法,也越来越容易破解。
19xx年,RSA公司破解DES用时76天,19xx年用时41天,19xx 年EFF仅用22小时。
20xx年,美国加州圣巴巴拉召开的国际密码大会上,王x云宣读了自己和研究团队对于MD4、MD5、HAVAL-128和RIPEMD四个国际著名密码算法的破译结果,实际是碰撞算法20xx年5月,密歇根大学宣布发现漏洞导致RSA 1024位私钥加密被破解2、随着金融安全上升到国家安全高度,近年来国家有关机关和监管机构站在国家安全和长远战略的高度提出了推动国密算法应用实施、加强行业安全可控的要求。
摆脱对国外技术和产品的过度依赖,建设行业网络安全环境,增强我国行业信息系统的“安全可控”能力显得尤为必要和迫切。
3、基于这种大背景下,国家密码管理局(国家商用密码管理办公室与中央密码工作领导小组办公室)逐步推出公布国内自主可控的商用密码算法标准,即国密系列算法。
国密和商密国密算法是国家密码管理局制定颁布的一系列的密码标准,即已经被国家密码局认定的国产密码算法,又称商用密码(是指能够实现商用密码算法的加密,解密和认证等功能的技术),保障在金融,医疗等领域的信息传输安全。
国密与商密,一般认为是同义词,是指由国家密码管理局公布认定的系列国产商用密码算法。
根据19xx年10月7日国务院发布实施的《商用密码管理条例》第一章第二条规定:“本条例所称商用密码,是指对不涉及国家秘密内容的信息进行加密保护或者安全认证所使用的密码技术和密码产品”。
国密算法常见的国密算法主要有以下几种:SM1:对称加密算法,与AES相当,算法不公开,专供硬件,主要用于智能IC卡。
SM2:非对称加密算法,基于ECC,强于RSA,算法公开,用于数字签名领域。
国产商用对称密码算法及其相关标准介绍
国产商用对称密码算法及其相关标准介绍作者:谢宗晓董坤祥甄杰来源:《中国质量与标准导报》2021年第04期1 对称密码算法对称密码(symmetric cryptography)也称为共享密钥密码,是指用相同的密钥进行加密解密,其中的“对称”指的是加密密钥和解密密钥是相同的,或者用简单的运算就可以推导两个密钥。
对称密码算法在逻辑上非常容易理解,因此出现的比较早,有时候也叫传统密码算法,以区别于公钥密码算法。
对称密码算法有两种主要形式:序列密码(stream cipher)和分组密码(block cipher)。
已经发布国产商用密码算法中属于对称密码算法的有ZUC(祖冲之密码算法)和SM4。
其中,ZUC属于序列密码,与之类似的国外密码算法如RC41)。
SM4属于分组密码,与之类似的国外密码算法如DES(Data Encryption Standard,数据加密标准)、TDEA/3DES(Triple Data Encryption Algorithm/3DES、三重数据加密标准)以及AES(Advanced Encryption Standard,高级加密标准)等。
2 对称密码算法标准为了配合WAPI2)无线局域网标准的推广应用,国家密码管理局在2006年公布了SMS43)算法。
2012年,该算法更名为SM4,成为行业标准。
2016年上升为国家标准。
SM4对应的国家/行业标准,如表1所示。
ZUC可以保护数据的机密性和完整性等,具体见GM/T 0001.2—2012和GM/T 0001.3—2012。
值得特别指出的是,2020年4月,ZUC已经成为国际标准ISO/IEC 18033-4:2011/Amd 1:2020 Information technology—Security techniques—Encryption algorithms—Part 4: Stream ciphers—Amendment 1: ZUC《信息技术安全技术加密算法第4部分:序列算法补篇1:ZUC》。
国密算法对照
国密算法对照
国密即国家密码局认定的国产密码算法。
例如:在门禁应用中,采用SM1算法进行身份鉴别和数据加密通讯,实现卡片合法性的验证,保证身份识别的真实性。
安全是关系国家、城市信息、行业用户、百姓利益的关键问题。
国家密码管理局针对现有重要门禁系统建设和升级改造应用也提出指导意见,加强芯片、卡片、系统的标准化建设。
国密门禁系统的升级的案例也逐渐增多,基于自主国产知识产权的CPU卡、CPU卡读写设备及密钥管理系统广泛受到关注。
一些厂商在2009年推出CPU卡安全门禁系列产品,在2010年北京安博会上,向业界展示出系列CPU卡门禁系统、系列安全门禁读卡器以及基于CPU 卡技术的一卡通系统等主流产品和系统。
这些厂商是全国推广的国密门禁产品的先驱者,使系列CPU卡门禁系统广泛应用于政府、监狱、司法、军工企业和大型公共智能建筑等高安全领域。
国密算法简介
版本人员时间升级内容❝课程目的◦了解国密算法的算法原理◦了解SM2、SM3、SM4的算法原理◦了解国密卡片相关API❝目标人员◦移动金融初级开发人员❝前置课程◦RSA密钥体系◦DES密钥体系❝基本知识❝对称加密算法SM2❝非对称加密算法SM4❝摘要算法SM3定义国密即国家密码局认定的国产密码算法,即商用密码,主要完成加密、解密、签名、验签、摘要等操作。
常用国密算法种类算法类型密钥长度输入数据要求输出数据特征SM2非对称加密算法公钥64字节,私钥32字节。
长度小于(2^32-1)*32=137,438,953,440字节(大约1374亿多)。
输出长度是明文长度+96,有随机数参数,每次密文不同。
SM3摘要算法--无要求。
固定长度,32字节。
SM4对称加密算法16字节分组长度16字节,需要填充到16字节整数倍。
有CBC和ECB两种模式,CBC需要设定初始值。
长度为16字节整数倍。
国密算法还有SM1、SM7、SSF33、祖冲之密码对称加密算法,SM9非对称加密算法。
国密算法与其他算法比较非对称加密算法SM2与RSA比较国密算法与其他算法比较SM2与RSA算法的一些统计数据RSA密钥强度(长度)SM2密钥强度(长度)破解时间(年)521比特106比特104(已破解)768比特132比特108(已破解)1024比特160比特10112048比特210比特1020国密算法与其他算法比较SM2与RSA算法的一些统计数据算法签名速度验签速度1024RSA2792次/秒51224次/秒2048RSA455次/秒15122次/秒256SM24095次/秒871次/秒国密算法与其他算法比较SM4与DES较从算法上看,国产SM4算法在计算过程中增加非线性变换,理论上能大大提高其算法的安全性,并且由专业机构进行了密码分析,民间也对21轮SM4进行了差分密码分析,结论均为安全性较高。
国密卡实现API类层次图class ng.Object◦class com.guomi.GMCipher◦class com.guomi.GMKeyBuilder◦class com.guomi.GMKeyPair◦class com.guomi.GMMessageDigest ◦class com.guomi.GMSignature◦class com.guomi.GMCipherExtend◦class com.guomi.GMSM2KeyExchange国密卡实现的API接口interface javacard.security.Key◦interface javacard.security.SecretKeyinterface com.guomi.SM1Keyinterface com.guomi.SM4Keyinterface com.guomi.SM7Keyinterface com.guomi.SSF33Key◦interface javacard.security.PrivateKey interface com.guomi.SM2PrivateKey ◦interface javacard.security.PublicKeyinterface com.guomi.SM2PublicKey国密卡实现的API接口interface com.unionpay.guomi.SM2Key ◦interface com.guomi.SM2PrivateKey◦interface com.guomi.SM2PublicKey目录❝算法原理❝加密❝解密❝签名❝验签算法原理❝国密SM2规定椭圆曲线参数(固定值,256比特)◦p :FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF◦a:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC◦b:28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93◦n:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF40939D54123◦gx:32C4AE2C1F1981195F9904466A39C9948FE30BBFF2660BE1715A4589334C74C7◦gy:BC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A474002DF32E52139F0A0❝各个参数意义如下椭圆曲线方程:y2=x3+ax+b,把它定义在Fp上, 要求a,b满足:4a3+27b2≠0(mod p)那么,p 、a 、b 用来确定一条椭圆曲线(确切来说应该是有限域Fp),G(gx,gy)为基点,n为点G 的阶,另外,还有一个非必要参数h,是椭圆曲线上所有点的个数m与n相除的整数部分;加密SM2公私玥结构、◦SM2公私玥关系P=d*G 或者(x ,y )=d*(gx ,gy ),即公钥P 是基点G 的d 倍点。
国产密码的研究与应用
国产密码的研究与应用张峰,李祥军,于乐,张弘扬, 唐克迪(中国移动通信集团公司信息安全管理与运行中心,北京 100053)摘 要 本文聚焦在国产密码的研究与应用,包括梳理国产密码政策法规和国产密码算法情况,分析当前密码技术面临的风险,列举国产密码在物联网中的成功应用,如身份认证、数据传输和数据存储方面的应用,最后提出对国产密码的发展展望。
关键词 国产密码;国产密码算法;物联网中图分类号 TN918 文献标识码 A 文章编号 1008-5599(2020)12-0019-06收稿日期:2020-11-05密码是网络安全的核心技术和基础支撑。
自2012年以来,国家密码管理局陆续发布了我国商用密码技术标准。
截止到2019年12月,已发布密码行业标准77项,范围涵盖密码算法、密码协议、密码产品、密码应用和密码检测等多个方面,已初步满足我国社会各行业在构建信息安全保障体系时的密码应用需求。
商业秘密具有秘密性、财产性和可分享性,商用密码的作用之一就是保护商业秘密。
目前国产密码在通信、金融、能源、互联网和物联网等各行业都有较多应用,如通过国密算法实现身份认证、通道加密、数据加密和数据防篡改等安全功能。
国产密码将在各行业更加深入和普及,相应的密码技术也会愈加成熟和完备。
1 国产密码概述1.1 国产密码国家政策法规国家对国产密码的重视程度不断增强,并发布了各类国产密码的指导标准(见表1),为保障国家关键信息基础设施安全、构建自主可控信息技术体系、打造以密码技术为核心的多种技术相互融合的新网络安全体系提供了坚实基础。
1.2 国产密码情况在我国,为了保障商用密码的安全性,国家商用密码管理办公室制定了一系列密码标准,如图1所示。
国产密码包括SM1、SM2、SM3、SM4、SM7、SM9和祖冲之密码算法(ZUC)等。
其中SM1、SM4、SM7和祖冲之密码(ZUC)是对称算法;SM2和SM9是非对称算法;SM3是杂凑算法。
国产商用密码算法SM3及其相关标准介绍
国产商用密码算法SM3及其相关标准介绍作者:谢宗晓甄杰董坤祥来源:《中国质量与标准导报》2021年第03期SM3密码杂凑算法发布于2010年12月17日1)。
密码杂凑算法也被称作“杂凑算法”“散列算法”或“哈希算法”。
在GM/Z 0001—2013《密码术语》中,上述几个术语对应的英文都是hash algorithm。
1 密码杂凑算法密码杂凑算法的主要功能是将一个任意长的比特串映射到一个固定长的比特串。
假设任意长度的消息M,经过函数H(M)运算后,得到一个固定长度为m的散列值h,如公式(1)所示。
h=H(M)(1)如果上述运算满足下面3个条件:(1)给定任意长度的消息M,容易固定长度的h;(2)给定h,计算M非常困难;(3)给定任意长度的消息M,要找到另一个任意长度的消息M′,能够满足H(M)= H (M′),非常困难。
观察(1)和(2),实际就是单向函数的要求,对于(3)而言,这个特性指的是抗碰撞性(collision resistance),即防止不同的输入产生相同的输出。
在实践中使用的密码杂凑函数必须具备强抗碰撞性,例如,MD4、MD5和SHA-1都是因为碰撞攻击算法而被攻破。
通俗而言,就是这些算法H(M),已经能够产生具备相同散列值h的两条不同消息M和M′。
由于密码杂凑算法这个特性,散列值h,就像是消息的“指纹”。
显然,密码杂凑算法可以用于验证消息的完整性(integrity),也可以更广泛地应用于数字签名和验证、消息鉴别码(message authentication code,MAC)的生成和验证,以及随机数的生成等。
2 SM3密码杂凑算法SM3是一种密码杂凑算法。
2012年,SM3被采纳为GM/T 0004—2012行业标准,2016年转化为GB/T 32905—2016国家标准。
具体信息如表1所示。
SM3的将输入的消息经过填充和迭代压缩等步骤,生成256比特杂凑值(散列值h)。
GB/T 32905—2016中举了一个通俗易懂的例子,消息01100001 01100010 01100011,长度l为24,首先①,在末尾加“1”,然后②,添加k个“0”凑成512的倍数,最后③,添加一个64位比特串,该比特串是输入消息长度l的二进制表示。
国产密码的研究与应用
国产密码的研究与应用摘要:文章重点对国内密码的研究和应用进行了分析,其中包括国内密码的政策和法规等方面的内容,并对国内密码算法的现状进行了梳理。
结合密码技术所面临的发展风险,讨论了国产密码在物联网中的相关应用,进一步提出与国产密码相关的发展展望,以期为相关人员提供参考和借鉴。
关键词:国产密码;国产密码算法;安全风险应对引言:在通信、能源、金融、物联网、互联网等多个行业中,国产密码的应用具有广泛性,通过运用国产密码算法,以发挥安全功能,如身份认证、数据加密、通道加密、数据防篡改等等。
随着国产密码在行业中的深入和普及,密码技术逐渐变得成熟和完备,能够辅助对信息安全保证体系的构建,并满足我国社会各行业的密码应用需求。
1.国产密码相关国家政策法规随着我国对国产密码重视程度的不断加强,在发布国产密码指导标准时,其类型各不相同。
为确保国家关键信息基础设施建设的安全性,完成对自主可控信息技术体系的构建,将密码技术作为核心,在促进多种科学技术相互融合时,基于该类坚实的基础,能够完成对新网络安全体系的构建。
2.国产密码算法2.1SM1算法SM1属于分组密码算法,当密钥为128 bit时,实际的数据包为128 bit。
无论是安全,还是软硬件的实现,还是性能上,都丝毫不逊色于 AES,至于具体的算法,目前还没有公开,通常是作为一个 IP核心储存在芯片内。
当前,以SM1算法为基础的各种安全产品已被研制出来。
例如,系列芯片、智能 IC卡、加密卡、智能密码钥匙、加密机等,并在电子政务、电子商务等多个领域中有着广泛的应用。
2.2SM2算法SM2是一种基于 ECC的椭圆曲线加密系统,其安全性能优于 ECDSA和 ECDH,在签名和密钥交换等方面也有较大的区别。
在SM2中,有一条以256比特为主的标准曲线。
SM2标准主要包括四个方面的内容:总则,数字签名算法,密钥交换协议,公钥加密算法。
在每一部分,都有一个用于说明详细内容和实例的附录。
国产加密算法的种类及应用场景
国产加密算法的种类及应用场景国产加密算法是指中国自行研发的加密算法,用于保护重要信息的安全性。
这些算法在网络通信、数据存储和加密应用等各个领域都有重要的应用。
下面将介绍几种常见的国产加密算法及其应用场景。
1. SM系列算法SM系列是国家商用密码算法,包括对称加密算法SM1和SM4,以及非对称加密算法SM2和SM9。
SM1使用128位密钥和分组长度,广泛应用于数据加密、虚拟化安全、物联网安全等领域。
SM4是一种高速、高安全性的分组加密算法,被广泛应用于数据存储、网络通信和云计算等领域。
SM2和SM9作为国内首个自主知识产权的非对称加密算法,被广泛应用于数字签名、身份认证和密钥交换等领域。
2. ZUC算法ZUC是中国自主研发的一种流密码算法,用于移动通信中的安全保护。
它具有高速、高安全性和低功耗的特点,被广泛应用于3G、4G和5G等移动通信标准中的数据加密和身份认证,保障用户的通信安全。
3. SM3哈希算法SM3是中国自主研发的一种密码哈希算法,用于数字签名、消息认证和数据完整性验证等领域。
它具有较高的安全性和抗攻击性,广泛应用于电子商务、电子票据和电子数据交换等场景中。
4. LBlock算法LBlock是中国自主设计的一种分组密码算法,采用128位密钥和分组长度,适用于数据加密和解密操作。
它具有较高的安全性和较快的运算速度,适用于云计算、大数据存储和传输等领域。
5. LDHC算法LDHC是中国自主研发的一种基于曲线密码算法,用于数字签名、密钥交换和加密等场景。
它采用椭圆曲线上的点进行运算,具有较高的安全性和较快的运算速度,被广泛应用于物联网、无线通信和移动支付等领域。
以上是国产加密算法的几种常见类型及其应用场景。
这些算法在国内自主创新的基础上,经过严密的安全评测和认证,广泛应用于各个领域,为保护重要信息的安全提供了可靠的技术支持。
如果把国产密码算法和国际密码算法组合使用,是否大家都会信任?
如果把国产密码算法和国际密码算法组合使用,是否大家都会信任?这是一个备受争议的话题。
在过去的几年中,中国一直在推动使用国产密码算法,以保护国家安全。
许多人对这些算法的可靠性和安全性表示怀疑。
与此国际密码算法在全球范围内得到广泛使用,被认为是安全可靠的。
那么,如果将这两种算法组合使用,是否能够消除人们的疑虑,提高安全性呢?让我们来了解一下国产密码算法和国际密码算法的特点。
国产密码算法是由中国自主研发的一种加密算法。
它包括SM1、SM2、SM3和SM4四个部分。
其中,SM1是对称加密算法,SM2是非对称加密算法,SM3是哈希算法,SM4是对称加密算法。
这些算法在中国的金融、电信和等领域得到广泛应用。
由于国产密码算法的实现方式和代码并未公开,因此很难评估其安全性。
国际密码算法是由全球密码学家共同研发的加密算法。
它包括AES、RSA、SHA等多种算法。
这些算法已经得到了广泛的应用和认可,被认为是安全可靠的。
由于这些算法的实现方式和代码都是公开的,因此可以通过公开的审计来评估其安全性。
那么,如果将国产密码算法和国际密码算法组合使用,是否能够提高安全性呢?答案是肯定的。
通过组合使用这两种算法,可以充分利用它们各自的优点,弥补彼此的不足。
例如,可以使用国际密码算法来加密数据,然后再使用国产密码算法来加密密钥,这样可以同时保证数据的安全性和密钥的安全性。
组合使用国产密码算法和国际密码算法还可以提高系统的鲁棒性。
如果只使用一种算法,那么一旦这种算法被攻破,整个系统的安全性就会受到威胁。
而如果使用两种算法,那么攻击者需要攻破两种算法才能破解系统,这样就大大提高了系统的安全性。
要注意的是,国产密码算法和国际密码算法组合使用时需要遵循一定的规则。
需要选择合适的算法组合方式。
例如,可以选择使用国际密码算法来加密数据,然后使用国产密码算法来加密密钥,或者反过来。
需要确保算法的实现方式和代码都是公开的,以便进行公开的审计。
需要对算法进行充分的测试和评估,以确保其安全性和可靠性。
奇安信堡垒机支持国密算法
奇安信堡垒机支持国密算法摘要:1.引言:介绍奇安信堡垒机支持国密算法的背景和意义2.国密算法简介:简要介绍国密算法的发展历程和应用场景3.奇安信堡垒机概述:介绍堡垒机的作用和功能特点4.奇安信堡垒机支持国密算法的作用:详细说明支持国密算法对堡垒机的安全性能提升5.应用案例分享:展示奇安信堡垒机在实际应用中发挥的国密算法优势6.总结:强调国密算法在网络安全中的重要性,以及奇安信堡垒机在保障数据安全方面的出色表现正文:【引言】随着信息技术的飞速发展,数据安全已成为我国网络安全领域的重中之重。
在这个背景下,国内知名网络安全企业奇安信近日宣布其堡垒机支持国密算法。
这一举措不仅有助于提升我国网络安全防护能力,也为广大用户提供了一种更安全、可靠的解决方案。
【国密算法简介】国密算法,即国产密码算法,是我国自主研发的一套加密技术。
它的发展历程可以追溯到20世纪70年代,经过多年的迭代和优化,现已成为一套成熟、可靠的加密体系。
国密算法在我国政府、金融、电信等关键领域得到广泛应用,有效保障了国家信息安全。
【奇安信堡垒机概述】堡垒机是一种安全设备,主要用于保护企业内部网络与外部网络之间的数据传输安全。
奇安信堡垒机凭借其强大的安全性能和易用性,赢得了众多用户的信赖。
它具有如下功能特点:1.强大的加密能力:支持多种加密算法,包括国密算法在内的多种加密标准。
2.严格的身份认证:对接入设备进行身份认证,确保只有经过授权的设备才能访问内部网络。
3.灵活的策略管理:根据企业需求,设置不同的安全策略,实现对数据传输的全方位保护。
4.完善的管理监控:实时监控堡垒机运行状态,便于管理员及时发现并处理安全问题。
【奇安信堡垒机支持国密算法的作用】奇安信堡垒机支持国密算法,主要有以下几点优势:1.提高数据安全性:国密算法加密强度高,难以破解,有效防止了数据泄露风险。
2.满足合规要求:支持国密算法,有助于企业满足我国相关法律法规对数据安全的要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
国产密码算法及应用商用密码,是指能够实现商用密码算法的加密、解密和认证等功能的技术。
(包括密码算法编程技术和密码算法芯片、加密卡等的实现技术)。
商用密码技术是商用密码的核心,国家将商用密码技术列入国家秘密,任何单位和个人都有责任和义务保护商用密码技术的秘密。
商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。
比如各种安全认证、网上银行、数字签名等。
为了保障商用密码安全,国家商用密码管理办公室制定了一系列密码标准,包括SSF33、SM1(SCB2)、SM2、SM3、SM4、SM7、SM9、祖冲之密码算法等等。
其中SSF33、SM1、SM4、SM7、祖冲之密码是对称算法;SM2、SM9是非对称算法;SM3是哈希算法。
目前已经公布算法文本的包括SM2椭圆曲线公钥密码算法、SM3密码杂凑算法、SM4分组密码算法等。
一、国密算法简介1.SM1对称密码国密SM1算法是由国家密码管理局编制的一种商用密码分组标准对称算法,分组长度为128位,密钥长度都为128比特,算法安全保密强度及相关软硬件实现性能与AES相当,算法不公开,仅以IP核的形式存在于芯片中。
采用该算法已经研制了系列芯片、智能IC卡、智能密码钥匙、加密卡、加密机等安全产品,广泛应用于电子政务、电子商务及国民经济的各个应用领域(包括国家政务通、警务通等重要领域)。
2.SM2椭圆曲线公钥密码算法SM2算法就是ECC椭圆曲线密码机制,但在签名、密钥交换方面不同于ECDSA、ECDH等国际标准,而是采取了更为安全的机制。
国密SM2算法标准包括4个部分,第1部分为总则,主要介绍了ECC 基本的算法描述,包括素数域和二元扩域两种算法描述,第2部分为数字签名算法,这个算法不同于ECDSA算法,其计算量大,也比ECDSA 复杂些,也许这样会更安全吧,第3部分为密钥交换协议,与ECDH 功能相同,但复杂性高,计算量加大,第4部分为公钥加密算法,使用ECC公钥进行加密和ECC私钥进行加密算法,其实现上是在ECDH 上分散出流密钥,之后与明文或者是密文进行异或运算,并没有采用第3部分的密钥交换协议产生的密钥。
对于SM2算法的总体感觉,应该是国家发明,其计算上比国际上公布的ECC算法复杂,相对来说算法速度可能慢,但可能是更安全一点。
设需要发送的消息为比特串M,len为M的比特长度。
为了对明文M进行加密,作为加密者的用户应实现以下运算步骤:步骤1:用随机数发生器产生随机数k∈[1,n -1];步骤2:计算椭圆曲线点C1=[k]G=(X1,Y1 ),将C1的数据类型转换为比特串;步骤3:计算椭圆曲线点S=[h]P,若S是无穷远点,则报错;步骤4:计算椭圆曲线点[k]P =(X2,Y2),将坐标X2,Y2的数据类型转换为比特串;步骤5:计算t=KDF(x2 ll y2,len),若t为全0比特串,则返回步骤1;步骤6:计算C2 = M⊕t;步骤7:计算C3=Hash(x2 ll M ll y2);步骤8:输出密文C=C1 ll C2 ll C3。
2010年底,国家密码管理局公布了我国自主研制的“椭圆曲线公钥密码算法”(SM2算法)。
为保障重要经济系统密码应用安全,国家密码管理局于2011年发布了《关于做好公钥密码算法升级工作的通知》,要求“自2011年3月1日期,在建和拟建公钥密码基础设施电子认证系统和密钥管理系统应使用SM2算法。
自2011年7月1日起,投入运行并使用公钥密码的信息系统,应使用SM2算法。
”近期,人民银行组织召开多次专题会议讨论研究金融领域国产加密算法升级改造的相关工作。
3.SM3杂凑算法又叫文摘算法,也有叫杂凑算法的。
功能与MD5,SHA-1相同。
产生256位的编码。
该算法位不可逆的算法。
具体算法也是保密。
SM3密码杂凑算法给出了杂凑函数算法的计算方法和计算步骤,并给出了运算示例。
此算法适用于商用密码应用中的数字签名和验证,消息认证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。
在SM2、SM9标准中使用。
此算法对输入长度小于2的64次方的比特消息,经过填充和迭代压缩,生成长度为256比特的杂凑值,其中使用了异或,模,模加,移位,与,或,非运算,由填充,迭代过程,消息扩展和压缩函数所构成。
SM3算法包括预处理、消息扩展和计算Hash值三部分。
预处理部分由消息填充和消息分组两部分组成。
首先将接收到的消息末尾填充一个“1”,再添加k个“0”,使得填充后的数据成为满足length = 448mod512bit的数据长度,再在末尾附上64bit消息长度的二进制表示数,然后将消息分成512bit的子块,最后将每个512bit的消息子块扩展成132个字用于Hash值的计算。
SM3算法计算流程图如图所示。
SM3算法的Hash运算主要是在压缩函数部分,压缩函数共包含64轮,每轮包括12步运算,64轮循环计算结束后,再将计算结果与输入到本轮计算的初始数据进行异或运算,即上一次Hash运算的Hash值输出与输入到本轮计算的初始数据异或得到本次Hash值输出,Hn即为最终的Hash值,H0为设计者提供的初始值IV。
图SM3算法流程图4.SM4对称算法此算法是一个分组算法,用于无线局域网产品。
该算法的分组长度为128比特,密钥长度为128比特。
加密算法与密钥扩展算法都采用32轮非线性迭代结构。
解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。
定义反序变换R为:R(A0,A1,A2,A3)=(A3,A2,A1,A0),A i∈Z322,i = 0,1,2,3。
设明文输入为(X0,X1,X2,X3)∈(Z322)4,密文输出为(Y0,Y1,Y2,Y3)∈(Z322)4,轮密钥为rk i∈Z322。
则本算法的加密变换为:X i+4 = F(X i,X i+1,X i+2, X i+3,rk i)= Xi⊕T(X i+1⊕X i+2⊕X i+3⊕rk i),i= 0,1,2,3 (31)(Y0,Y1,Y2,Y3)= R(X32,X33,X34,X35)=(X35,X34,X33,X32)。
本算法的解密变换与加密变换结构相同,不同的仅是轮密钥的使用顺序。
加密时轮密钥的使用顺序为:(rk0, rk1, …, rk31)。
解密时轮密钥的使用顺序为:(rk31, rk30, …, rk0)。
SM4算法的优点是软件和硬件实现容易,运算速度快,但该算法的缺点是消息安全取决于对密钥的保护,泄漏密钥就意味着任何人都能对消息进行密码和解密。
由于其加密过程和解密过程互逆,这两个过程均使用相同的保密密钥,使得对称密钥加密体制的适用范围受到了很大限制。
5.SM7对称密码SM7算法是一种分组密码算法,分组长度为128比特,密钥长度为128比特。
SM7的算法文本目前没有公开发布。
SM7适用于非接IC卡应用包括身份识别类应用(门禁卡、工作证、参赛证),票务类应用(大型赛事门票、展会门票),支付与通卡类应用(积分消费卡、校园一卡通、企业一卡通、公交一卡通)。
6.SM9非对称算法SM9是基于对的标识密码算法,与SM2类似,包含四个部分:总则,数字签名算法,密钥交换协议以及密钥封装机制和公钥加密算法。
在这些算法中使用了椭圆曲线上的对这一个工具,不同于传统意义上的SM2算法,可以实现基于身份的密码体制,也就是公钥与用户的身份信息即标识相关,从而比传统意义上的公钥密码体制有许多优点,省去了证书管理等。
双线性对的双线性的性质是基于对的标识密码SM2中的总则部分同样适用于SM9,由于SM9总则中添加了适用于对的相关理论和实现基础。
SM9给出了数字签名算法(包括数字签名生成算法,数字签名验证算法),密钥交换协议,以及密钥封装机制和公钥加密算法(包括密钥封装算法,加密盒解密算法)。
数字签名算法适用于接收者通过签名者的标识验证数据的完整性和数据发送者的身份,也适用于第三方确定签名及所签数据的真实性。
密钥交换协议可以使用通信双方通过双方的标识和自身的私钥经过两次或者可选三次信息传递过程,计算获取一个由双方共同决定的共享秘密密钥。
密钥封装机制和公钥加密算法中,利用密钥封装机制可以封装密钥给特定的实体。
公钥加密和解密算法即基于标识的非对称秘密算法,该算法使消息发送者可以利用接收者的标识对消息进行加密,唯有接收者可以用相应的私钥对该密文进行解密,从而获取消息。
基于对的算法中同样使用了国家密管理局批准的SM3密码杂凑算法和随机数发生器,密钥封装机制和公钥加密算法中使用了国家密码管理局批准的对称密码算法和消息认证码函数。
7.祖冲之对称算法祖冲之密码算法由中国科学院等单位研制,运用于下一代移动通信4G网络LTE中的国际标准密码算法。
祖冲之密码算法(ZUC)的名字源于我国古代数学家祖冲之,祖冲之算法集是由我国学者自主设计的加密和完整性算法,是一种流密码。
它是两个新的LTE算法的核心,这两个LTE算法分别是加密算法128-EEA3和完整性算法128-EIA3。
ZUC算法由3个基本部分组成,依次为:1、比特重组;2、非线性函数F;3、线性反馈移位寄存器(LFSR)。
二、国密算法行业应用2014年,中国银联发布了《中国银联IC卡技术规范》和《中国银联银行卡联网联合技术规范》,在兼容最新国际通用技术标准的基础上支持国产密码,丰富了安全算法体系,促进了信息安全,自主可控水平实现提高。
1.长沙银行长沙银行是首批开展国密算法金融IC卡试点银行之一,此次发行金融IC卡中采用了我国安全可控的国密算法芯片。
应用在长沙银行金融IC卡上的大唐CE3D系列双界面金融安全芯片采用了32位CPU 内核,拥有高达80KB的EEPROM数据存储空间,符合中SM2/3/4算法升级要求,支持JAVA操作技术,具有高安全、高性能、低功耗的特点,实现国密算法的金融IC卡成功跨行交易。
2.鹤壁银行2014年5月12日,国密多应用金融IC卡项目产品展示会暨示范应用推广研讨会在河南鹤壁召开。
在本次研讨会上,全球首张加载国产密码算法的金融IC卡正式亮相,并在鹤壁银行实现了首批试商用发卡。
作为国产智能卡芯片的佼佼者,同方微电子为本次发卡提供了符合规范的芯片产品——THD86。
该项目通过推进金融信息系统国产密码的应用,将为打破国外密码算法及产品在金融领域应用的垄断局面、全面带动国内信息安全及金融服务相关产业发展提供有力保障,实现国家金融安全的重大战略。
金融IC卡国产密码算法应用示范项目自2013年5月份开始已取得了阶段性的成果,分别完成了支持国产密码算法的银行端系统改造、ATM、POS、刷卡器、加密机、IC卡芯片等一系列产品的研发和接入银行系统,组成了包括芯片厂商、COS厂商、卡商、密码设备供应商、支撑系统提供商及银行核心系统供应商等的金融IC卡国产密码应用的完整产业链。