一种算法和随机数检测系统技术方案

技术编号:23604998 阅读:30 留言:0更新日期:2020-03-28 06:00
本发明专利技术提供了一种算法和随机数检测系统,所述系统包括应用程序、数据文件接口模块、数据采集模块、数据检测模块、密码算法库、随机性检测算法库、以及密码设备接口模块;所述应用程序:为用户提供服务,所述数据文件接口模块用于规范算法和随机数文件存储格式,实现数据文件的基本操作接口;所述数据采集模块用于根据不同密码设备类型,从密码设备读取算法和随机数数据;所述数据检测模块用于根据获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性;所述密码算法库提供密码算法;所述随机性检测算法提供检测算法;所述密码设备接口包含密码设备厂商提供的驱动库和设备连接接口;本发明专利技术提高了检测效率。

An algorithm and random number detection system

【技术实现步骤摘要】
一种算法和随机数检测系统
本专利技术涉及密码算法合规性、正确性检测
,特别是一种算法和随机数检测系统。
技术介绍
目前中华人民共和国密码法已审议通过,根据密码法指导下将展开信息系统密码应用安全性评估。密码算法技术是密码应用中最为基础的环节,所以密码算法合规性检测是安全性评估中不可缺少的组成部分。密码算法合规性检测主要包含算法和随机数检测两个部分。现有的相关检测工具功能单一,没有按照相关标准进行测试及出具检测结果报告;无法对接云端管理平台,且现有的检测工具检测的效率低,需要多次进行反复测试后才能得到结果。
技术实现思路
为克服上述问题,本专利技术的目的是提供一种算法和随机数检测系统,能支持各种密码算法的检测,且检测效率高。本专利技术采用以下方案实现:一种算法和随机数检测系统,所述系统包括应用程序、数据文件接口模块、数据采集模块、数据检测模块、密码算法库、随机性检测算法库、以及密码设备接口模块;所述应用程序:为用户提供服务,所述服务包括:完整的检测应用、算法的采集存储、随机数的采集存储、算法数据文件的检测、随机数数据文件的检测;所述数据文件接口模块用于规范算法和随机数文件存储格式,实现数据文件的基本操作接口;所述数据采集模块用于根据不同密码设备类型,从密码设备读取算法和随机数数据;所述数据检测模块用于根据获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性;所述密码算法库提供密码算法,向其它模块提供加解密、签名验签、密钥产生的功能;所述随机性检测算法提供检测算法,向其它模块提供应用接口;所述密码设备接口包含密码设备厂商提供的驱动库和设备连接接口;将密码设备与密码设备接口模块连接,或者将数据文件导入到数据文件接口模块,用户通过应用程序请求服务,则应用程序调用数据采集模块通过密码设备接口模块或者数据文件接口模块获取算法或者随机数数据,数据检测模块根据数据采集模块获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性。进一步的,所述密码算法库包括SM2、SM3、SM4、SM9、ZUC、DES、AES、RSA、MD5、SHA1、SHA2、SHA3密码算法。进一步的,所述随机性检测算法库包括单比特频数检测、块内频数检测、扑克检测、重叠子序列检测、游程总数检测、游程分布检测、块内最大“1”游程检测、二元推导检测、自相关检测、矩阵秩检测、累加和检测、近似熵检测、线性复杂度检测、Maurer通用统计检测、以及离散傅立叶检测算法。进一步的,所述检测系统还包括管理平台协议接口模块,所述管理平台协议接口模块用于与云端管理平台交互的通信数据解析,实现完整的通信功能;所述检测系统通过管理平台协议接口模块与云端管理平台连接,操作人员通过云端管理平台能对检测系统中算法和随机数检测的结果进行查看和管理。进一步的,所述检测系统具体的检测原理为:将密码设备与密码设备接口模块连接,或者将数据文件导入到数据文件接口模块,用户通过应用程序填写被测目标基础信息和测试项目的编号,所述被测目标基础信息包括目标设备产品证书、现场图片、类型、厂家、或者型号;选择被测目标设备,加载被测目标设备驱动库,配置被测目标设备参数,该参数包括IP地址、端口;连接密码设备并通过数据采集模块读取密码设备信息;按检测标准或检测系统配置中设定的数据长度或级数获取随机数并按格式存储成文件,或按密码设备支持的算法或检测系统配置所选中的算法类型获取算法数据并按格式存储成文件,数据检测模块根据数据采集模块获取的算法和随机数数据,调用密码算法库和随机性检测算法库来对随机数进行检测和对算法进行检测,生成结果报告,将结果报告、测试过程产生的文件、用户输入和添加的原始记录文件,进行压缩打包,并用登录用户的数字证书进行签名,并存档。进一步的,所述检测标准包括GM/T0005随机性检测规范、GM/T0018密码设备应用接口规范、GM/T0046金融数据密码机检测规范、或GM/T0059-2018服务器密码机检测规范。进一步的,所述按密码设备支持的算法或检测系统配置所选中的算法类型获取算法数据,该算法数据获取流程:产生随机数作为密钥或密钥因子,产生随机数作为待加密/签名的信息,用密码算法库中指定算法对信息进行加密/签名,保存过程数据;该算法数据解密流程:检测系统对加密数据通过密码算法库中对应的加密算法进行解密,比对明文数据。进一步的,所述算法数据按JSON格式存储成文件,随机数按16进制数据格式存储成文件。本专利技术的有益效果在于:本系统集成了算法和随机数的检测,其中算法涵盖所有国家已公开的密码算法;随机数检测符合《GM/T0005随机性检测规范》要求。本系统检测结果完全符合国家密码管理局发布的相关标准。本系统可作为安全性评估工作中的一个测评工具,可与安全性评估管理平台进行对接,其功能强大,且检测效率高。附图说明图1是本专利技术实施例一的系统框架原理图。图2是本专利技术实施例一的系统应用示意图。图3是本专利技术实施例一的系统操作原理流程示意图。图4是本专利技术实施例二的系统框架原理图。具体实施方式下面结合附图对本专利技术做进一步说明。请参阅图1至图3所示,本专利技术提供了一种算法和随机数检测系统,所述系统包括应用程序、数据文件接口模块、数据采集模块、数据检测模块、密码算法库、随机性检测算法库、以及密码设备接口模块;所述应用程序:为用户提供服务,所述服务包括:完整的检测应用、算法的采集存储、随机数的采集存储、算法数据文件的检测、随机数数据文件的检测;所述数据文件接口模块用于规范算法和随机数文件存储格式,实现数据文件的基本操作接口;所述数据采集模块用于根据不同密码设备类型,从密码设备读取算法和随机数数据;所述数据检测模块用于根据获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性;所述密码算法库提供密码算法,向其它模块提供加解密、签名验签、密钥产生的功能;所述随机性检测算法提供检测算法,向其它模块提供应用接口;所述密码设备接口包含密码设备厂商提供的驱动库和设备连接接口;如图2所示,将密码设备与密码设备接口模块连接,或者将数据文件导入到数据文件接口模块,用户通过应用程序请求服务,则应用程序调用数据采集模块通过密码设备接口模块或者数据文件接口模块获取算法或者随机数数据,数据检测模块根据数据采集模块获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性。图2中应用框图所示本系统提供两种典型应用模式:1.从密码设备中获取数据,进行检测并归档上传到云端管理平台;2.从数据文件中获取数据,进行检测,由于数据文件的来源真实性不可追溯,所以该应用模式只能提供算法和随机数的验证功能,不能作为安全性评估的依据,不提供报告归档及上传云端管理平台的功能。其中,所述密码算法库包括SM2、SM3、SM4、SM9、ZUC、DES、AES、RSA、MD5、SHA1、SHA2、本文档来自技高网...

【技术保护点】
1.一种算法和随机数检测系统,其特征在于:所述系统包括应用程序、数据文件接口模块、数据采集模块、数据检测模块、密码算法库、随机性检测算法库、以及密码设备接口模块;/n所述应用程序:为用户提供服务,所述服务包括:完整的检测应用、算法的采集存储、随机数的采集存储、算法数据文件的检测、随机数数据文件的检测;所述数据文件接口模块用于规范算法和随机数文件存储格式,实现数据文件的基本操作接口;所述数据采集模块用于根据不同密码设备类型,从密码设备读取算法和随机数数据;所述数据检测模块用于根据获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性;所述密码算法库提供密码算法,向其它模块提供加解密、签名验签、密钥产生的功能;所述随机性检测算法提供检测算法,向其它模块提供应用接口;所述密码设备接口包含密码设备厂商提供的驱动库和设备连接接口;/n将密码设备与密码设备接口模块连接,或者将数据文件导入到数据文件接口模块,用户通过应用程序请求服务,则应用程序调用数据采集模块通过密码设备接口模块或者数据文件接口模块获取算法或者随机数数据,数据检测模块根据数据采集模块获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性。/n...

【技术特征摘要】
1.一种算法和随机数检测系统,其特征在于:所述系统包括应用程序、数据文件接口模块、数据采集模块、数据检测模块、密码算法库、随机性检测算法库、以及密码设备接口模块;
所述应用程序:为用户提供服务,所述服务包括:完整的检测应用、算法的采集存储、随机数的采集存储、算法数据文件的检测、随机数数据文件的检测;所述数据文件接口模块用于规范算法和随机数文件存储格式,实现数据文件的基本操作接口;所述数据采集模块用于根据不同密码设备类型,从密码设备读取算法和随机数数据;所述数据检测模块用于根据获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性;所述密码算法库提供密码算法,向其它模块提供加解密、签名验签、密钥产生的功能;所述随机性检测算法提供检测算法,向其它模块提供应用接口;所述密码设备接口包含密码设备厂商提供的驱动库和设备连接接口;
将密码设备与密码设备接口模块连接,或者将数据文件导入到数据文件接口模块,用户通过应用程序请求服务,则应用程序调用数据采集模块通过密码设备接口模块或者数据文件接口模块获取算法或者随机数数据,数据检测模块根据数据采集模块获取的算法和随机数数据,调用密码算法库和随机性检测算法库来验证算法和数据的有效性。


2.根据权利要求1所述的一种算法和随机数检测系统,其特征在于:所述密码算法库包括SM2、SM3、SM4、SM9、ZUC、DES、AES、RSA、MD5、SHA1、SHA2、SHA3密码算法。


3.根据权利要求1所述的一种算法和随机数检测系统,其特征在于:所述随机性检测算法库包括单比特频数检测、块内频数检测、扑克检测、重叠子序列检测、游程总数检测、游程分布检测、块内最大“1”游程检测、二元推导检测、自相关检测、矩阵秩检测、累加和检测、近似熵检测、线性复杂度检测、Maurer通用统计检测、以及离散傅立叶检测算法。


4.根据权利要求1所述的一种算法和随机数检测系统,其特征在于:所述检测系统还包括管理平台协议接口模块,所述管理平台协议接口模块用于与云端管理平台交互的通信数据解析,实现完...

【专利技术属性】
技术研发人员:邓福彪陈山徐九洲王琮文林萍
申请(专利权)人:福建金密网络安全测评技术有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1