聂萌瑶,张捐净
(安阳工学院计算机科学与信息工程学院,河南安阳455000)
基于Hadoop的加密文件破解系统的设计与实现
聂萌瑶,张捐净
(安阳工学院计算机科学与信息工程学院,河南安阳455000)
通过对已有云计算及大数据产品的测试,该文在CentOS7上采用面向对象的Java语言编写,采用MySQL处理后台数据,运用Hadoop离线分析技术对加密文件进行密码破解,从而实现了基于Hadoop的加密文件破解系统,以解决密码忘记后给人们带来的损失。
密码破解;CentOS7;Java;MySQL;Hadoop
在互联网的大环境下,人们会对一些重要的文件进行加密,由于文件的类型有很多,而忘记密码后给工作会造成许多困扰,又由于普通的PC机破解密码需要耗时很久,针对此问题,本课题利用分布式运算框架来对加密文件进行密码破解,不仅可以节约用户的时间,而且可以为用户提供服务,具有很现实的意义。
2.1 功能需求
基于Hadoop的加密文件破解系统主要包括管理员、未激活用户、激活用户三类角色,如图1所示,图中分三类角色。从不同用户的角度分析系统的功能模块,其中管理员的权限最高,它的功能包括管理用户的信息,提交或下载用户的任务,如图2所示;未激活用户和激活用户的功能包括登录注册,修改密码,上传、查看、下载任务等功能,如图3所示。
图2 管理员的功能模块
图3 用户的功能模块
2.2 数据库需求
数据库的设计是系统开发的基础和核心。在数据导入层和数据应用层用到MySQL关系型数据库,在本系统中设计三张表,包括任务信息表,激活信息表,用户信息表。
3.1 系统架构
根据第二部分的需求分析,考虑到数据量大、共享性高等原因,该平台采用Hadoop技术进行部署,系统架构如图4所示,从上到下分别为Sqoop、HDFS、MapReduce、数据分析、关系型数据库、浏览器。
图4 系统架构图
3.2 功能结构设计
系统的功能模块包括用户登录注册、用户信息管理、用户权限管理、云盘存储、文件破解模块五个模块,如图5所示。每个功能模块的具体功能如下:
1)用户登录注册模块:完成用户的登录和注册;
2)用户信息管理模块:管理用户的信息,比方可以修改用户的密码,对用户的权限进行激活;
3)用户权限管理模块:这个模块的功能根据不同的角色来定,管理员管用户信息和权限,被激活的用户破解所有文件,非激活的用户能破解办公文件;
4)云盘存储模块:把用户需要破解的文件传到HDFS上,另外还能够下载和删除;
5)文件破解模块:破解时采用密码字典和分布式处理的方式,根据不同的文件类型采用不同的方式将用户提交的文件通过Hadoop中的MapReduce来进行破解。
图5 系统功能模块
4.1 系统开发环境搭建
系统开发环境搭建主要包括以下部分:
1)在VMware Workstation虚拟机上安装CentOS7,另外要求系统的IP地址设置为192.168.110.150;
2)在CentOS7下搭建Hadoop伪分布式环境;
3)在CentOS7下安装MySQL数据库,在整个软件中数据库访问分为两部分,一个是Web方面的使用DBCP框架,一个是MapReduce中的状态反馈使用的JDBC。DBCP框架的数据库配置在配置文件中(src/dbcpconfig.properties)MapReduce中JD⁃BC是原生代码,在decoder.RunJob类中,需要把所有带JDBC的配置修改;
4)安装JDK,需要添加UnlimitedJCEPolicyJDK8;
5)部署Web服务器——Tomcat;
6)以上环境都部署完毕后在CentOS7中安装Eclipse,添加Web服务器Tomcat,然后将工程导入,添加应用到服务器,最后启动服务器即可。
4.2 系统实现
基于Hadoop的加密文件破解系统以Hadoop为基础对忘记密码的加密文件进行破解,具体的意义如下:1)完成对加密文件的破解;2)提供云盘功能;3)对云计算及大数据技术的应用进行探究。
[1]高登,徐德智.基于云计算的高职校际公共选修课平台的设计与实现[J].电脑知识与技术,2017(11):62-63.
[2]李文海.基于Hadoop的电子商务推荐系统的设计与实现[J].计算机工程与设计,2014(1):130-136.
TP393
A
1009-3044(2017)21-0089-02
2017-06-08
聂萌瑶(1989—),女,河南济源人,助教,硕士,研究方向为智能计算、云计算;张捐净(1985—),女,河南驻马店人,助教,硕士,研究方向为智能计算、无线传感网。