软件密码模块安全要求

软件密码模块安全要求

密码模块的设计需满足国密局《密码模块安全要求》。

  1. 标准情况
    国内密码模块的安全标准由国密局发布,主要有《密码模块安全要求》和《密码模块安全检测要求》两个;
    密码模块的安全标准,国际上有ISO19790标准,美国有FIPS标准,ISO19790标准参考了FIPS标准,国内标准又参考了ISO19790标准和FIPS标准。

  2. 模块分类
    密码模块是指实现密码运算、密钥管理和其他密码服务功能的模块。
    密码模块被划分为硬件密码模块、软件密码模块、固件密码模块、混合软件密码模块和混合固件密码模块。
    硬件密码模块由硬件部件、支撑软件(如驱动程序)和内嵌环境(如模块内的嵌入式操作系统)组成。
    软件密码模块是运行在可修改的运行环境下的代码的集合。如Linux、Windows为可修改的运行环境。
    固件密码模块是指运行在不可修改的运行环境或受限制的运行环境下的代码的集合。如不可编程计算平台为不可修改的运行环境,软件模块和固件模块相同点都是代码的集合,不同点在于运行环境的不同。
    混合软件密码模块由软件部件和分离的硬件部件组成。分离的硬件部件表示软件部件不是硬件部件运行所必须的,如监控硬件状态的软件。
    混合固件密码模块由固件部件和分离的硬件部件组成。

  3. 安全总体要求
    密码模块除实现正常的密码功能外,还必须满足:

  1. 要采用国家认可的密码算法;
  2. 密码模块要能设置使用权限;
  3. 必须确保模块中关键安全参数和敏感参数的安全;即使密码模块发生故障,也要确保关键安全参数和敏感参数的安全。
  4. 密码模块的运行状态要有指示;
  1. 安全等级划分
    密码模块的安全等级划分为安全一级、安全二级、安全三级和安全四级。其中安全一级要求最低,安全四级要求最高。
    4.1 安全一级
    安全一级阐明了密码模块的基本安全要求。
    硬件密码模块很容易就可达到安全一级要求;
    软件或固件密码模块,只要能保证关键安全参数和敏感参数的安全,基本都能达到安全一级要求;保护参数的典型方法有多种,通常做法是将密钥分割存放,也有将密钥存放在CPU中,或固件中,或系统保护的进程中,或采用白盒密码。
    软件密码模块在商密鉴定时,一般都要运行环境绑定,即明确该模块只能应用在哪个环境中。
    软件密码模块最高只能到安全二级,据说有达到安全三级的软件密码模块。目前国内达到安全三级的硬件密码模块都很少。
    4.2 安全二级
    本文只介绍安全一级软件密码模块,安全二级、安全三级、安全四级的要求详见《密码模块安全要求》。
  2. 具体安全要求
    5.1 安全域划分
    密码模块有11个安全域,分别是密码模块规格、密码模块接口、角色/服务/鉴别、软件/固件安全、运行环境、物理安全、非入侵式安全、敏感安全参数管理、自测试、生命周期保障和对其他攻击的缓解。其中物理安全和非入侵式安全要求不适用于软件模块。
    有387条安全要求,涵盖了密码模块设计、实现、测试、操作、废弃、配置管理,以及文档编写。安全一级密码模块只需要满足222条即可,其中部分安全要求只需要在文档中阐述清楚即可,不用在密码模块中实现。
    密码模块评级时,会针对各安全域独立评级,最后以11个域所获得的最低评级作为整体评级。
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值