一种基于异构集群的在线密码破解系统.docx

上传人:王** 文档编号:1661238 上传时间:2024-11-25 格式:DOCX 页数:11 大小:61.44KB
下载 相关 举报
一种基于异构集群的在线密码破解系统.docx_第1页
第1页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第2页
第2页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第3页
第3页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第4页
第4页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第5页
第5页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第6页
第6页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第7页
第7页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第8页
第8页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第9页
第9页 / 共11页
一种基于异构集群的在线密码破解系统.docx_第10页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《一种基于异构集群的在线密码破解系统.docx》由会员分享,可在线阅读,更多相关《一种基于异构集群的在线密码破解系统.docx(11页珍藏版)》请在优知文库上搜索。

1、OO引H随着互联网技术的发展,越来越多的设备和应用接入互联网,特别是5G技术的日渐成熟,使万物互联1时代近在咫尺.互联网使信息传递更为便捷,为了解决随之而来的信息安全风睑,密码学技术也得到了空前的发展和运用.密码学技术与我们的生活息息相关,比如设百个人电脑登录电码能够保护我们的电脑数据安全;设置网站登录口令能够保护我们的网站数据安全;设置数据库访问密码能够保护数据库的数据安全等。同时,在现实生活中许多不法分子也利用密码学技术,传递犯罪信息并隐藏犯罪证据,从事违法犯罪勾当,给国家安全和社会稳定带来很大的威胁.二战时期德军的Enigma密码机与其破解过程,已成为密码学中出码技术与密码破解技术相互较

2、量的经典案例.定码学技术与密码破译技术就像一对挛生兄弟一样,在相互较量中伴随成长.现代密码技术建立在求解数学难题基础上,密码算法公开,经过了充分的验证,已很难从算法自身的漏洞出发进行破解.利用高性能计算对密文进行爆力破解已成为密码破解的常规手段.暴力破解需要强大的计算能力.通用计算机大致经历了以下发展过程:(1)从单核到多核,再到众核从1971年第一块微处理器4004在Inte1.公司诞生CPU的集成晶体管数和时钟频率逐年上升。随着时钟频率超过3GHz,单核处理器开始消耗过多的功率,单核处理器的发展遇到瓶颈.2005年AMDvInte1.相继推出双核CPU,CPU的发展步入多核心时代。2018

3、年10月,Inte1.发布的最新消费级处理器第九代酷春i9-9900K已有8个核心,时钟频率最高可达5GHzo不同于CPU作为通用处理器存在,GPU(GraphicsProcessingUnit,图形处理器)从一诞生起就专注于解决图形渲染问迤,而图形处理所特有的并行化处理特性,使得GPU具备并行计算的潜质.本世纪初,可编程特性被引入GPU,GPGPU(GPU通用计算)时代到来,其中以NVIDIA公司推出的CUDA(ComputeUnifiedDeviceArehiteCtUre,统一计算设备架构)为代表。由于一张GPGPU土往往集成了成百上千个计算核心,因此被称为众核处理器.比如NVIDIA公

4、司最新发布的消费级显卡GeforceRTX2080集成了2944个CUDACores.(2)从同构到异构CPU和GPU各有所长:CPU适合做通用计算,如逻辑性强的算法、业务管理、任务调度、人机交互等任务;GPU适合做并行计算,如图像处理、科学计算等大并发任务。大型的复杂计算往往需要同时使用CPU和GPU,在这种情况下CPU+GPU的异构计算机得到广泛应用.(3)从单机到集群单机受限于整机设计,计算能力到达一定水平后就很难提升,且后期难以升级。计算机集群区能够通过局域网或互联网将单机能力较差的计算节点组成一个系统,具有很强的可扩展性,能够较方便地获得较低成本的综合算力。密码破解系统需要强大的算力

5、,而异构集群系统能够提供性价比高、易扩展的算力.因此,基于异构集群系统构建密码破解系统便成了很自然的选择。当前空码破解系统多为单机版,硬件系统、软件系统的安装和使用都较为更杂,通过B/S架构向用户提供在线密码破解服务,可让用户省去机房建设和维护的成本以及软件的部署和安装成本.基于以上因素的考虑,研究并实现了一种基于异构集群的在线密码破解系统.O1.系统需求分析与一般的高性能计算集群相比,在线密码破解系统有其自身的特点,例如:(1)被解算法属于计算密集型任务。(2)每个破解算法具备多种破解模式.(3)以Web方式提供在线破解能力。为了满足以上需求,该系茹火自以下组成部分:(1)GPGPU异构集群

6、.(2)并行计算编程框架.(3)集群作业管理系统.(4)Web管理账务.(5)计笄节点的任务执行程序.线密码破解系统的系统组成见图Io作*僧奥系统并打程序*程”境S1在线隹码破解系统组成图1.1 GPGPU异构集群GPGPU异构集群为满足密码破解系统的需求,应具有以下特点:(1)1个管理节点+N个计算节点管理节点负责集群状态监控和作业管理。计算节点负责执行来自管理节点的任务分片.管理节点将任务分解为任务分片队列,以实现多个计算节点的并行计算。(2)计算资源可扩展、可替换通过增加计算节点上的GPU卡,或在集群系统中增加计算节点,快速增加计算资源.当发现计算节点异常后,也可通过快速更换计算节点保障

7、破解任务的正常运行。图2是计算机集群系统的网络拓扑图.iMVAi1.-WVA计算节点图2计K机集群系垸网络拓扑图1.2 并行计算编程框架为使用GPGPU进行高性能计算庖使用相应的并行计算编程框架囹.包括NVIDIA提出的CUDA编程框架,AMD提出的BrOOk+编程环境,OPene1.联盟提出的OPenC1.并行编程模型.其中CUDA和OPenC1.使用更为广泛.CUDA是NVIDIA公司推出的一种并行计算架构,它是一种高级编程语言,开发者能够很快上手,所编写出的程序可以在NVIDIAGPU上高速运行.CUDA架构只支持NVIDIA公司的产品,而OPenC1.并行编程框架则支持多核CPU、GP

8、U、FPGA,多核DSP系统等多种并行计算架构。由于本系统GPU全部为NVIDIA系列,考虑到CUDA编程语言更容易国在NVID1.A显卡上运行效率更高本系统采用CUDA并行编程框架。1.3 集群作业管理系统为了使计算机集群的计算资源得到充分利用,需根据计算机节点情况和任务的资源需求情况对任务进行合理调度。目前有十几种不同的作业管理系统叫其中1.SF、1.oAD1.EVE1.ER,PBS.CONDOR是当今最具代表性和影响力的几种集群作业管理系统.其中PBS.CONDOR是研究性质的软件,1.SF、1.OAD1.EVE1.ER是商用软件,它们的主要功能为集群系统监控和作业调度等。表1是几种作业

9、管理系统的比较。表1作业系统比较比较项系统名称1.SF1.OAD1.EVE1.ERPBS(X)NDOR支持环境5444支持的作业类型5454作业渊度和节点分配策略3n资源怅理功能4555作业监控能力4444安全性5454H志管理功能4444可用性5545友好性5553总分数42384136其中PBS和1.SF综合比分最高.1.SF被公认为是市场上最成功的集群作业管理系统,在功能和可用性上有较强的优势;PBS为开源项目,可根据项目自身特点对其进行定制化开发,其成本和可定制化更有优势.综合考虑,本系统使用PBS进行密码破解集群作业管理。WEB管理服务是集群作业管理系统与用户间的人机交互接口,主要提

10、供集群任务管理、资源管理、日志报表、集群监控、系统设置等功能.(1)任务管理任务管理提供任务管理、任务直询功能.其中,任务管理功能包含新建任务、任务状态管理等;任务查询可对历史任务进行多条件联合检索.(2)资源管理资源管理是为任务提交提供基础数据的功能模块.包括彩虹表管理.字典管理,算法管理等功能.(3)日志报表日志报表功能包括报表管理,操作日志,访问日志等功能.(4)集群监控功能集群监控功能包括硬件资源监控、警报系统等功能.硬件资源监控可直看系统中CPU、GPU、内存、存储以及网络的使用情况;警报系统提供了当系统资源使用过高时告警功能.(5)系统设芭功能系统设首功能包括系统设置以及用户设置功

11、能,系统设置提供了为集群配置、在线升级等功能;用户设置提供了用户管理和权限管理的功能.1.5任务执行程序密码破解任务最终会下发到各个计节点,由计算节点的任务执行程序执行.任务执行程序包含代理程序和密码破解程序两个部分.以下是任务执行程序具有的功能:(1)因为PBS未能提供对GPU的状态监控能力,可通过代理程序将GPU状态信息实时传送给WEB管理服务.(2)因为PBS可将任务分片调度到计算节点,而不能直接调度到计算节点上的GPU计算单元(_股有多个GPU计算单元),可通过代理程序将任务分片迸一步狮,交给多个GPU计算单元并行处理.(3)为了实现破解算法的可扩展性,可将破解算法设计成单个可执行程序

12、的形式,交由代理程序调用。02系统设计2.1搭建基础设施基于第1节的需求分析,搭建了一套GPU集群,其配皆如表2所示.表2集群系猊配M参数管理节点计算节点数盘I8CPUInte1.(K)Xron(K)(TUE5-262O*2GPU数*08*4TrSIK20n存储2TB5I2GB网卡T兆网KF兆网K计算节点和管理节点通过交换机连接,形成一个高速局域网.利用NFS(NetWorkFi1.eSyStem,网络文件系统)将管理节点上的字典文件、彩虹表文件、计算节点可执行程序(计算节点代理程序、密码破解程序)共享给8个计算节点使用。PBS系统由Server(服务进程)、Schedu1.er(调度进程)和

13、Mom(执行进程)组成,Server和Schedu1.er位于管理节点用于任务调度控制,Mom位于计算节点用于任务执行.PBS系统的工作流程如下:(1)由用户发起破解任务分片执行事件,SerVer开始一个调度周期.(2)Server向Schedu1.er发送一个调度命令.(3)Schedu1.er向Mom请求可用资源信息.(4)Mom返回给Schedu1.er一个资源信息.(5)SChedU1.er得到资源信息后,向SerVer请求作业信息.(6)SerVer收到请求后,将作业信息发给Schedu1.er,SChedUIer根据作业信息和调度策略产生执行作业的策略.(7)Schedu1.er发

14、送执行作业请求至Servero(8)SerVer接收请求后,发送作业至Mom执行作业.(9)Mom收到执行命令后将任务交给计算节点执行程序执行.(10)计算节点执行程序将结果反馈给Mome(11)Mom将执行结果反馈给SerVer,完成一个调度周期.2.3 WEB管理服务WEB管理服务提供作业调度功能,具工作流程如下:(1)用户通过Web界面创建密码破解任务,提交后存入任务数据库中.(2)对任务进行分割,分割后的任务分片放入任务分片队列中.(3)任务分片队列周期性读取任务分片并将任务分片提交给计算节点执行,直到任务分片队列执行完成.在破解任务执行过程中,计算节点将执行进度、破解速度、执行结果等

15、数据及时反馈给管理节点,管理节点及时更新任务分片队列.在计算节点执行任务分片的同时,管理节点会实时监控任务分片的执行情况和计算节点的工作状态,如发现异常,将修改任务分片状态,在下一次任务分片轮询过程中重新执行.2.4 任务执行程序设计位于计算节点上的密码破解任务执行程序由计算节点代理程序和定码破解程序组成.其中代理程序对管理节点的任务调度指令进行监听和解析,调用相应密码破解算法,在密码破解过程中将任务信息以及GPU硬件的状态信息及时反馈给管理节点.03系统实例3.1 任务提交用户通过浏览器登录密码破解Web管理服务后,打开新建任务窗口,按照展示设芭空码破解任务所需的属性.计算资源、破解任务所需文件、破解模式、任务空间等,点击提交后完成密码破解任务的创建,如图3所示.图4密码破解任考提交界面3.2 任务队列密码破解任务创建成功后,将在任务列表中显7K任务信息一包括任务当前状态、任务属性、速度、进度等,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机应用/办公自动化

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!