软件密码模块安全要求
密码模块的设计需满足国密局《密码模块安全要求》。
-
标准情况
国内密码模块的安全标准由国密局发布,主要有《密码模块安全要求》和《密码模块安全检测要求》两个;
密码模块的安全标准,国际上有ISO19790标准,美国有FIPS标准,ISO19790标准参考了FIPS标准,国内标准又参考了ISO19790标准和FIPS标准。 -
模块分类
密码模块是指实现密码运算、密钥管理和其他密码服务功能的模块。
密码模块被划分为硬件密码模块、软件密码模块、固件密码模块、混合软件密码模块和混合固件密码模块。
硬件密码模块由硬件部件、支撑软件(如驱动程序)和内嵌环境(如模块内的嵌入式操作系统)组成。
软件密码模块是运行在可修改的运行环境下的代码的集合。如Linux、Windows为可修改的运行环境。
固件密码模块是指运行在不可修改的运行环境或受限制的运行环境下的代码的集合。如不可编程计算平台为不可修改的运行环境,软件模块和固件模块相同点都是代码的集合,不同点在于运行环境的不同。
混合软件密码模块由软件部件和分离的硬件部件组成。分离的硬件部件表示软件部件不是硬件部件运行所必须的,如监控硬件状态的软件。
混合固件密码模块由固件部件和分离的硬件部件组成。 -
安全总体要求
密码模块除实现正常的密码功能外,还必须满足:
- 要采用国家认可的密码算法;
- 密码模块要能设置使用权限;
- 必须确保模块中关键安全参数和敏感参数的安全;即使密码模块发生故障,也要确保关键安全参数和敏感参数的安全。
- 密码模块的运行状态要有指示;
- 安全等级划分
密码模块的安全等级划分为安全一级、安全二级、安全三级和安全四级。其中安全一级要求最低,安全四级要求最高。
4.1 安全一级
安全一级阐明了密码模块的基本安全要求。
硬件密码模块很容易就可达到安全一级要求;
软件或固件密码模块,只要能保证关键