前面几篇博文对sm2,sm3,sm4,rsa,des等算法进行了介绍,并且用java,python语言实现了相关算法的运用。
本篇,作为一个阶段性总结,从整体上来回顾一下密码相关业务。当然,重点还是要放在商业密码算法上。

密码分类

密码法将密码分为核心密码、普通密码和商用密码。

  • 核心密码,保护国家秘密,保护绝密级、机密级、秘密级的国家秘密;
  • 普通密码,保护国家秘密,保护机密级、秘密级的国家秘密;
  • 商用密码,保护不属于国家秘密的信息。

密码相关法律法规

包括但不限于如下法律法规:
《中华人民共和国密码法》
《个人信息保护法(草案二次审议稿)》
《数据安全法》

商用密码的管理

国家鼓励和促进商用密码产业发展,以非歧视的原则依法平等对待包括外商投资企业在内的商用密码科研、生产、销售、服务、进出口等单位。商用密码的管理制度,主要包括有商用密码标准化制度、检测认证制度、进出口管理制度、电子政务电子认证服务管理制度以及商用密码事中事后监管制度。
其中,密评(商用密码应用安全评估)是密码行业发展不可或缺的一环。

国密算法分类总结

算法

说明

SM1

对称算法。主要由硬件提供,例如智能IC卡、智能密码钥匙、加密卡、加密机等安全产品。

SM2

椭圆曲线公钥密码算法,非对称算法。

SM3

杂凑算法。

SM4

分组算法,是对称算法。

SM7

分组密码算法,对称算法。SM7适用于非接触式IC卡,应用包括身份识别类应用(门禁卡、工作证、参赛证),票务类应用(大型赛事门票、展会门票),支付与通卡类应用(积分消费卡、校园一卡通、企业一卡通等)。

SM9

标识密码算法,适用于云技术的密码服务、电子邮件安全、智能终端保护、物联网安全、云存储安全等。

ZUC祖冲之算法

祖冲之序列密码算法是中国自主研究的流密码算法,是运用于移动通信4G网络中的国际标准密码算法,该算法包括祖冲之算法(ZUC)、加密算法(128-EEA3)和完整性算法(128-EIA3)三个部分。目前已有对ZUC算法的优化实现,有专门针对128-EEA3和128-EIA3的硬件实现与优化。

国密算法常用标准

在进行密码算法实现时,常常需要按照如下(包括但不限于)标准来进行。
《GMT 0028-2014 密码模块安全技术要求》
《GMT 0062-2018 密码产品随机数检测要求》
《GBT 15852.1-2008 信息技术 安全技术 消息鉴别码》
《GMT 0003.1-2012 SM2椭圆曲线公钥密码算法》
《GMT 0028-2014 密码模块安全技术要求》
《GMT0091-2020 《基于口令的密钥派生规范》》