根据2021年3月9日国家市场监督管理总局、国家标准化管理委员会发布的中华人民共和国国家标准公告(2021年第3号),全国信息安全标准化技术委员会归口的GB/T 39786-2021《信息安全技术 信息系统密码应用基本要求》国家标准(以下简称国标)正式发布,并于2021年10月1日起实施 。
与行标GMT0054-2018相比,国标将在全国范围多行业内适用,且其他各级标准不得与国标相抵触,GB/T 39786-2021《信息安全技术 信息系统密码应用基本要求》将成为未来很长时间信息系统安全标准体系中的主体。
要注意的是2017年我国修订了标准化法,“在公布国家标准之后,该项行业标准即行废止”的叙述已删除。国家标准发布实施之后,行业标准、团体标准与国标不符的,分为两种情况:与强制性国标冲突的条文,自动作废;与推荐性国家标准冲突的,未公布作废的行业标准、团体标准仍可选择性执行。简单来说,行业标准和国家标准是并行的,如果发生冲突则以国家标准为准。
在GBT39786-2021之后,一系列标准和文件均以该标准为基础,包括:
(1)GMT0115-2021 信息系统密码应用测评要求
(2)GMT0116-2021 信息系统密码应用测评过程指南
(3)信息系统密码应用高风险判定指引
(4)商用密码应用安全性评估量化评估规则
(5)商用密码应用安全性评估报告模板(2023版)
(6)商用密码应用安全性评估 FAQ (第二版)
具体内容上对比国标和行标的具体异同。
| 结构 | GMT0054-2018 | GBT39786-2021 | 差异分析 |
| 引言 | 对“密码技术”、“密码”和“可、宜、应”定义解释。 | 无 | |
| 范围 | 标准规定信息系统商用密码应用的基本要求。 适用范围用于指导、规范和评估信息系统中的商用密码应用。 | 规定信息系统第一级到第四级4个技术层面和4个管理层面要求。(说明第五级) 在本标准基础之上,各领域与行业可结合本领域与行业的密码应用需求来指导,规范信息系统密码应用。 | 增加信息系统等级(1-5级) |
| 规范性引用文件 | GMT0005 随机性检测规范 GMT0028密码模块安全技术要求 GMT0036采用接触卡的门禁系统密码应用技术指南 GMZ4001-2013密码术语 | GBT37092密码模块安全要求 | |
| 术语和定义 | 14个术语定义 | 去掉解密、密码算法和数字签名 | |
| 微缩语 | MAC | 无 | |
| 总体要求 | 密码算法、密码技术、密码产品和密码服务 | 作为通用要求提出,密码产品和服务应符合法律法规的相关要求。 | 增加通用要求 |
| 密码功能要求 | 机密性(4)、完整性(11)、真实性(6)和不可否认性(实体行为)应用场景和保护对象 | 技术框架,提出4个技术要求,4个管理要求。具体要求维度,按照机密性(4)、完整性(10,删除可信计算技术建立从系统到应用的信任链)、真实性(6,修改可信计算技术的平台身份鉴别)和不可否认性(数据原发和接收行为)。具体4个密码应用管理维度(管理制度、人员管理、建设运行和应急处置)。 要求等级描述(第1-5级),不同等级密码应用基本要求简表附录A。 | 删除可信计算技术相关,增加要求等级描述 |
| 技术要求 | 按照4个安全层面(总则、等级保护第1级-第四级)展开。 指标要求: (a)物理和环境安全-身份鉴别(可宜应应)、电子门禁记录数据完整性(可宜应应)、视频记录数据完整性(--应应) (b)网络和通信安全-身份鉴别(可宜应应)、通信数据完整性(可可宜应)、通信数据机密性(可宜应应)、访问控制信息完整性(可宜应应)、集中管理通道安全(--应应) (c)设备和计算安全-身份鉴别(可宜应应)、访问控制信息完整性(可宜应应)、敏感标记完整性(可宜应应)、日志记录完整性(可宜应应)、远程管理身份鉴别信息机密性(-宜应应)、重要程序或文件完整性(--应应) (d)应用和数据安全-身份鉴别(可宜应应)、访问控制(可宜应应)、数据传输安全(可宜应应)、数据存储安全(可宜应应)、日志记录完整性(可宜应应)、重要应用程序的加载和卸载(--应应)、抗抵赖(---应) | 将4个安全层面中的总则合并成通用要求。 按照第1级到4级展开,每个等级包括4个安全层面。 指标体系: (a)物理和环境安全-身份鉴别(可宜宜应)、电子门禁记录数据存储完整性(可可宜应)、视频监控记录数据存储完整性(--宜应) (b)网络和通信安全-身份鉴别(可宜应应)、通信数据完整性(可可宜应)、重要数据机密的机密性(可宜应应)、网络边界访问控制信息的完整性(可可宜应)、安全接入认证(--可宜) (c)设备和计算安全-算法鉴别(可宜应应)、远程管理通道安全(--应应)、系统资源控制信息完整性(可可宜应)、重要信息资源安全标记完整性(--宜应)、日志记录完整性(可可宜应)、重要可执行程序完整性和来源真实性(--宜应) (d)应用和数据安全-身份鉴别(可宜应应)、访问控制信息完整性(可可宜应)、重要信息资源安全标记完整性(--宜应)、重要数据传输机密性(可宜应应)、重要数据存储机密性(可宜应应)、重要数据传输完整性(可宜宜应)、重要数据存储完整性(可宜宜应)、不可否认性(--宜应) | 整体结构变化,从1-4等级维度展开。适当降低部分指标的要求(2、3等级),更新部分测评指标。 |
| 密钥管理 | 密钥管理按照信息系统第1-4级分别要求,包括密钥生成、密码存储、密钥分发、密钥导入和导出、密钥使用、密钥备份和恢复、密钥归档、密钥销毁。 | 附录B 密钥生存周期管理 | 不再按照系统等级来分别要求密钥管理过程,而是通过密码产品安全等级要求保证密码管理安全。 |
| 安全管理 | 安全管理 (a)制度-制定密码安全管理制度(可宜应应)、定期修改安全管理制度(可宜应应)、明确管理制度发布流程(-宜应应)、制度执行过程记录留存(---应) (b)人员-了解并遵守密码相关法律法规(应应应应)、正确使用密码相关产品(应应应应)、建立岗位责任及人员培训制度(-应应应)、建立关键岗位人员保密制度和调离制度(-应应应)、设置密码管理和技术岗位并定期考核(--应应)、背景调查(---应) (c)规划(可宜应应)、建设(可宜应应)、运行(可宜应应) (d)应急预案(-应应应)、事件处置(可应应应)、向有关主管部门上报处置情况(--应应) | 管理要求 (a)管理制度-具备密码应用安全管理制度(应应应应)、密钥管理规则(应应应应)、建立操作规程(-应应应)、定期修改安全管理制度(--应应)、明确管理制度发布流程(--应应)、制度执行过程记录留存(--应应) (b)人员管理-了解并遵守密码相关法律法规和密码管理制度(应应应应)、建立密码应用岗位责任制度(-应应应)、建立上岗人员培训制度(-应应应)、定期进行安全岗位人员考核(--应应)、建立关键岗位人员保密制度和调离制度(应应应应) (c)制定密码应用方案(应应应应)、制定密钥安全管理策略(应应应应)、制定实施方案(应应应应)、投入运行前进行密码应用安全性评估(可宜应应)、定期开展密码应用安全性评估及攻防对抗演习(--应应) (d)应急策略(可应应应)、事件处置(--应应)、向有关主管部门上报处置情况(--应应)
| 增加一些指标,提高部分指标要求。在管理要求中强调了密钥管理的内容。 |
| 附录A | 安全要求对照表 | 不同级别密码应用基本要求汇总列表 | 技术要求中通用要求统一(包括密码服务和密码产品),密钥管理不再单独作为指标,在GMT0115-2021中将密钥管理作为通用要求,不单独判定符合性。 |
| 附录B | 密码行业标准列表 | 密钥生存周期管理 | 只是给出密钥生存周期管理各环节的管理建议。 |
我正在使用Postgres.app在OSX(10.8.3)上。我已经修改了我的PATH,以便应用程序的bin文件夹位于所有其他文件夹之前。Rammy:~phrogz$whichpg_config/Applications/Postgres.app/Contents/MacOS/bin/pg_config我已经安装了rvm并且可以毫无错误地安装pggem,但是当我需要它时我得到一个错误:Rammy:~phrogz$gem-v1.8.25Rammy:~phrogz$geminstallpgFetching:pg-0.15.1.gem(100%)Buildingnativeextension
使用rspec-rails3.0+,测试设置分为spec_helper和rails_helper我注意到生成的spec_helper不需要'rspec/rails'。这会导致zeus崩溃:spec_helper.rb:5:in`':undefinedmethod`configure'forRSpec:Module(NoMethodError)对thisissue最常见的回应是需要'rspec/rails'。但这是否会破坏仅使用spec_helper拆分rails规范和PORO规范的全部目的?或者这无关紧要,因为Zeus无论如何都会预加载Rails?我应该在我的spec_helper中做
我正在尝试让Rails在Windows10上运行。我正在使用Ruby2.3.0和Rails4.2.6,并且暂时使用Nokogiri1.6.3。当我尝试运行railsnewdemo时,它返回错误:Anerroroccurredwhileinstallingnokogiri(1.6.7.2),andBundlercannotcontinue.Makesurethat`geminstallnokogiri-v'1.6.7.2'`succeedsbeforebundling.当我运行geminstallnokogiri-v'1.6.7.2时,我得到:ERROR:Errorinstallingn
情况:使用Rspec、FactoryGirl和VCR测试Rails应用程序。每次创建用户时,都会通过Stripe的API创建关联的Stripe客户。测试时,添加VCR.use_cassette或describe"...",vcr:{cassette_name:'stripe-customer'}do...到涉及用户创建的每个规范。我的实际解决方案如下:RSpec.configuredo|config|config.arounddo|example|VCR.use_cassette('stripe-customer')do|cassette|example.runendendend但这是
当我打电话时:require'retryable'这两个gem冲突:https://github.com/robertsosinski/retryablehttps://github.com/carlo/retryable因为他们都有一个“可重试”文件,所以他们要求用户要求。我对使用第一个gem很感兴趣,但这并不总是会发生。这段代码作为我自己的gem的一部分执行,它必须对所有用户都是可靠的。有没有办法从gem中专门要求(因为gem名称当然不同)?如何解决这个命名冲突?编辑:澄清一下,这是官方仓库,gem名称实际上是不同的(“retryable-rb”和“carlo-retryable”
我有以下正则表达式regexp=%r{((returned|undelivered)\smail|mail\sdelivery(\sfailed)?)}x但是当我在上面运行rubocop时,它会提示我需要“在正则表达式周围使用//”。我怎样才能绕过它? 最佳答案 您可以通过将.rubocop.yml文件添加到项目文件夹的根目录并设置适当的配置来禁用(和启用)任何rubocopcop。要查看您可以做什么,请查看rubocop包中的全局default.yml。它有完整的评论。对于这个特殊问题,创建一个.rubocop.yml和...要完
我目前正在开发一个ruby应用程序,但它运行得非常(非常!)慢..到目前为止,我已经尝试了几件事,我可以将其缩小到主要问题:Ruby正在尝试在$LOAD_PATH的每个目录中查找它的需求。基本上我所观察到的是,ruby正在查看大量文件,试图查看那里是否存在需求。如果找不到它们,它将转到下一个目录。好消息是我可以通过strace看到这种情况。有很多这样的输出:open("/boa_proj_build/nsteen/.gem/gems/i18n-0.7.0/lib/commander/help_formatters/base.rb",O_RDONLY|O_CLOEXEC)=-1ENO
我正在尝试通过rvm安装ruby2.0.0-p247。但是,它要求输入密码。提供sudo密码正常吗?我没有在sudoers文件中配置sudo密码。我正在使用OracleEnterpriseLinux6x64。 最佳答案 sudo用于autolibs-这意味着RVM将安装所需的软件,如openssh或libyaml,这是标准ruby正常工作所必需的。您可以更改autolibs以查看所需的包而不是安装它们:rvmautolibsread-fail并恢复到安装要求的默认设置:rvmautolibsreset
我有一个rubygem,我想在包含在railsactive_support模块中的gem中使用Hash.from_xml方法。我的gemspec中有以下代码:gem.add_dependency'active_support','~>3.0.0'但是,当我在本地构建和安装gem、运行irb、需要gem时,我没有看到包含主动支持的方法?关于我做错了什么或如何调试有什么建议吗?谢谢! 最佳答案 您需要从ActiveSupport要求您需要的方法;默认情况下不添加它们。正如Yevgeniy在评论中提到的那样,如果您需要所有内容,则执行
我无法让ruby成功地require'tk'。我正在使用rvm、ruby2.0.0、ActiveTcl-8.6和Ubuntu12.04LTS。我已经运行了随ActiveTcl一起提供的wish,它似乎正在运行。我查看了RVM网站http://rvm.io/integration/tk和几个像这样的StackOverflow问题RVMRubywithTKinstallation(OSX).我在不同版本的ruby上多次尝试rvmreinstall2.0.0--enable-shared--enable-pthread--with-tk--with-tcl但没有成功。有什么想法吗?当