基于web的rsa加密功能公文管理系统的研究与实现

摘要: 目前,我国现有的发布公文信息的网站或APP较多,而且现有的公文网站发布的信息良莠不齐,夹杂着大量无用的公文信息,这会让管理公文的用户在使用这些公文软件获取公文信息时难以分辨有效的信息,管理公文的效率会很低。如果开发一套Web系统将市面上的公文信息通过RSA技术进行加密、解密,将会给管理公文人员提供巨大的安全隐私保障。

本文设计了基于RSA算法的公文网站后台系统,本系统的核心功能是通过爬取中关村海量公文信息的原始数据,并通过RSA算法技术将原始数据存储、计算,并将的结果以列表形式展示。

本论文的主要研究工作及取得的成果如下:

  1. 使用Flask等软件开发技术,设计并成功开发出了一套基于RSA算法的公文数据后台软件系统,本后台系统的公文信息数据源于公文网站上爬取的公文信息。
  2. 使用基于Python语言的网络爬虫,爬取了公文网站上的公文信息。对爬取到的原始数据进行数据清洗后存储到数据库上,然后使用RSA算法对数据加密,最后将结果保存至MySQL中存储。

关键词:公文数据;Flask; Python;RSA算法

1 绪论

1.1研究背景与现状

在如今的互联网时代下,用户管理公文也由传统的线下转为互联网,目前市场上流行的公文软件和网站种类繁多,公文信息质量也参差不齐,相对比较知名且应用广泛的公文信息发布平台有中国公文网等。在上述平台中每天都会发布海量的公文信息和管理公文信息,然而由于网络信息存在一定的虛假性,这会给管理公文的用户带来一定的误导效果,导致网上管理公文过程的体验不佳。并且由于各平台之间的用户数据不互通,用户需要来回反复的进行注册登录操作,这一过程也会浪费大量时间和精力。

总而言之,从上述问题可以看出目前互联网公文信息平台信息缺乏整合,用户在冗杂的公文信息中难以筛选出有效的信息。本论文拟初步研究开发出一套完整的基于RSA算法平台的公文平台信息系统,本系统主要用于对公文信息和公司信息进行采集,通过RSA算法平台对数据进行存储和计算,将RSA算法结果以形式给用户查询。这样,用户在使用本平台时只需一次注册操作,即可浏览各平台发布的公文信息,并且可以根据用户的条件进行筛选,可极大的提高管理公文效率,给管理公文的用户都带来一定的便利。

1.2论文主要研究工作

为了实时了解各行业最新最热的技术、最火热的岗位、薪资最高的岗位光靠人工收集并采用普通的方式进行十分浪费人力物力,并且效率和体验都不好,因此开发一套基于RSA算法的公文数据系统显得尤为重要。本论文所设计的基于RSA算法平台的公文信息系统的最核心功能是对海量公文信息的列表展示,使得用户能够非常安全的获取到自己的公文数据。

本系统首先需要提供给客户管理和使用的数据。本文使用基于Python语言的Flask框架的网络爬虫技术爬取用户使用率较高的公文网站上的公文信息以及公司信息作为数据来源,以此作为RSA算法的关键数据支撑。然后使用RSA算法对海量的公文信息数据进行数据清洗,数据融合,加密等流程,数据通过处理后持久化到MySQL数据库中存储。在计算出结果数据后,使用Django等软件开发技术等框架完成基于RSA算法平台系统的后台的开发。

本文开发一套Web系统将市面上的公文信息通过RSA算法技术进行存储、计算与智能化,将会给公文管理人员提供巨大的好处。在提供公文信息列表展示以及筛选功能的同时,还为用户提供个人信息管理,注册修改等功能,这样做便使得该系统成为功能相对完整,业务逻辑清晰,可大幅度提高管理公文和公文的效率。

2 技术总述

2.1 基于Scrapy的网络爬虫技术

Scrapy是目前较为成熟的爬虫技术框架,一般采用Python语言开发程序,Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。

在本设计中,由于需要使用到公文网站的原始数据,因此需要开发相应的网络爬虫程序完成对公文原始数据的采集,图2-1为爬取瓜子直聘网站的公文

数据的原理流程图。

图2-1公文网站爬虫原理流程图

2.2 RSA算法

RSA公开密钥密码体制是一种使用不同的加密密钥与解密密钥,“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制 。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。

正是基于这种理论,1978年出现了著名的RSA算法,它通常是先生成一对RSA密钥,其中之一是保密密钥,由用户保存;另一个为公开密钥,可对外公开,甚至可在网络服务器中注册。为提高保密强度,RSA密钥至少为500位长。这就使加密的计算量很大。为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DES或IDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。

RSA算法的保密强度随其密钥的长度增加而增强。但是,密钥越长,其加解密所耗用的时间也越长。因此,要根据所保护信息的敏感程度与攻击者破解所要花费的代价值不值得以及系统所要求的反应时间来综合考虑,尤其对于商业信息领域更是如此。

2.3 Flask技术

Flask是一个开放源代码Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Flask Reinhardt来命名的。2019年12月2日,Django 3. 0发布 。

Flask是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Flask框架中,还包含许多功能强大的第三方插件,使得Flask具有较强的可扩展性 [2]  。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。其工作流程主要可划分为以下几步:

1.用manage .py runserver 启动Django服务器时就载入了在同一目录下的settings .py。该文件包含了项目中的配置信息,如前面讲的URLConf等,其中最重要的配置就是ROOT_URLCONF,它告诉Django哪个Python模块应该用作本站的URLConf,默认的是urls .py

2.当访问url的时候,Django会根据ROOT_URLCONF的设置来装载URLConf。

3.然后按顺序逐个匹配URLConf里的URLpatterns。如果找到则会调用相关联的视图函数,并把HttpRequest对象作为第一个参数(通常是request)

4.最后该view函数负责返回一个HttpResponse对象

2.4 本章小结

本章主要了系统开发过程中使用到的技术点和框架,通过研究这些技术的原理后,在本设计中加以应用,包括公文信息采集的爬虫技术,数据持久化存储技术,以及基于Flask框架的系统后台技术,通过预研上述技术点并加以应用从而开发出基于RSA算法平台的公文数据系统。

3 公文信息RSA算法系统实现

3.1系统功能

通过前面的功能可以将基于RSA算法公文信息平台的研究与实现的功能主要包括用户登录公文信息管理数据管理等内容。后台管理是针对已登录的用户看到满意的公文数据而设计的。

3.2可行性研究

通过对系统研究目标及内容的审察后,提出可行性方案,并对其进行论述。主要从技术可行性出发,再进一步经济可行性和操作可行性等方面。

3.2.1 经济可行性

开发系统所涉及到的资料,一般是在图书馆查阅,或是在网上进行查找收集。所需要的一些应用软件也都是在网上可以免费下载的,因此,开发成本是几乎为零。但是开发出来的系统,还是具有高效率,低成本,较高质量的。所以,从经济可行性的角度,该系统符合标准。

3.2.2 技术可行性

技术可行性是考虑在现有的技术条件下,能否顺利完成开发任务。以及判断现有的软硬件配置是否能满足开发的需求。而本系统采用的是RSA算法开发框架,并非十分困难,所以在技术上是绝对可行的。此外,计算机硬件配置是完全符合发展的需要。

3.2.3 运行可行性

当前计算机信息化的知识已经十分普及了,现在的操作人员也都是对系统环境有很强的适应性,各类操作人员大都是有过培训补充的,因此完全不影响组织结构,所以在运行上也是可行的。

3.2.4 时间可行性

从时间上看,在大四的最后一个学期,在实习工作与完成毕设两件大事相交叉的时间里,结合之前学习的相关知识,并开发系统,时间上是有点紧,但是也不是完全没可能实现,通过这段时间的努力功能基本实现。

3.3 系统实现流程

(1)明确目的

在设计公文信息RSA算法平台初期需要了解如何获取公文信息原始数据

是非常基础也是关键的一步。要了解RSA算法平台期望达到什么样的运营效

果,从而在标签体系构建时对数据深度、广度及时效性方面作出规划,确保底层

设计科学合理。

(2)数据采集

只有建立在客观真实的数据基础上,RSA算法计算的结果才有效。在采集

数据时,需要考虑多种维度,比如不同行业公文数据、各行业薪资水平数据、行

业就业情况数据、行业公文岗位等等,还可以通过行业调研、用户访谈、用户信

息填写及问卷、平台前台后台数据收集等方式获得。

(3)数据清洗

就对于各大公文网站或者APP平台采集到的数据而言,可能存在非目标数据、

无效数据及虛假数据,因而需要过滤原始数据,去除一些无用的信息以及脏数据,

便于后续的处理。

(4)特征工程

特征工程能够将原始数据转化为特征,是--些转化与结构化的工作。在这个

步骤中,需要剔除数据中的异常值并将数据标准化。

(5)数据计算

在这一步我们将得到的数据存储到RSA算法平台,通过开发RSA算法,

程序对原始数据进行计算,将不同维度的结果存储到Mysql中。

(6)数据展示

结果可以通过RSA算法后台展示到前端界面,对于普通用户而言,只需.

要登录到该后台系统,就可以获取到公文数据后的计算结果,从而了解行业

的公文情况,对于管理公文的用户而言可以极大地提高效率。

3.4系统平台架构

在任何信息系统当中有价值的数据都是必不可少的重要部分,如何通过手上

的资源获取得到有价值的数据便是开发系统。首先需要考虑的问题根据系统的功

能设计数据获取和处理的流程以及其实现方法都已经基本上确定获取和处理流

程。

3.5 公文数据爬虫设计

这个项目我们的主要目的是爬取瓜子直聘网的公文数据信息,包括公文

位、企业名称和企业描述和规模等具体详情信息,下面描述本文爬虫工程主要设

计步骤。

(1)创建项目

打开一个终端输入:scrapy startproiect python_ zgc _data,Scrapy框架将会在指定目录下生成整个工程框架。系统生成的目录如下图3-2所示:

图3-2爬虫框架目录结构

(2)修改setting文件

如图3-1所示为修改后的setting文件主要内容,本设计主要修改三项内容,

第一个是不遵循机器人协议,第二个是下载间隙,由于下面的程序要下载多个页

面,所以需要给一个间隙(不给也可以,只是很容易被侦测到),第三个是请求

头,添加一个User-Agent。

表3-1 爬虫setting文件主要配置

BOT_NAME = 'python_city_data'

SPIDER_MODULES = ['python_gongwen_data.spiders']
NEWSPIDER_MODULE = 'python_gongwen_data.spiders'
# Crawl responsibly by identifying yourself (and your website) on the user-agent
#USER_AGENT = 'python_city_data (+http://www.yourdomain.com)'
#换伪造请求头
USER_AGENT = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"
# Obey robots.txt rules
ROBOTSTXT_OBEY = False

(3)确认要提取的数据,item 项

item定义你要提取的内容(定义数据结构),比如我提取的内容为公文信息的所在城市和企业公文详情,于是需要在items类中新建对应的实体类,并需要设置相应的字段取出对应的数据。Field 方法实际上的做法是创建一个字典,给字典添加一个建,暂时不赋值,等待提取数据后再赋值。

(4)开发爬虫程序,访问下载网页,使用Xpath语法提取内容

3.6 RSA算法程序设计

表3-2 主要模型类

class RolesUsers(db.Model):

    __tablename__ = 'roles_users'

    id = db.Column(db.Integer, primary_key=True)

    user_id = db.Column('user_id', db.Integer, db.ForeignKey('user.id'))

    role_id = db.Column('role_id', db.Integer, db.ForeignKey('role.id'))

    def __repr__(self):

        return "<{} 用户 {} 权限>".format(self.user_id,self.role_id)

class Role(db.Model, RoleMixin):

    __tablename__ = 'role'

    id = db.Column(db.Integer(), primary_key=True)

    name = db.Column(db.String(80), unique=True)

    description = db.Column(db.String(255))

    def __repr__(self):

        return "<{} 权限>".format(self.name)

class User(db.Model, UserMixin):

    __tablename__ = 'user'

    id = db.Column(db.Integer, unique=True, primary_key=True)

    username  = db.Column(db.String(255))

    email = db.Column(db.String(255), unique=True)

    password = db.Column(db.String(255))

    active = db.Column(db.Boolean())

    confirmed_at = db.Column(db.DateTime())

    roles = db.relationship('Role', secondary='roles_users',

                         backref=db.backref('user', lazy='dynamic'))

    collection = db.relationship("Collection", backref="user")

    def __repr__(self):

        return "<{} 用户>".format(self.username)

class XinXi(db.Model):

    __tablename__ = 'xinxi'

    id = db.Column(db.Integer, unique=True, primary_key=True)

    title =  db.Column(db.String(52), name='公文标题')

    img =  db.Column(db.String(520), name='图片链接')

    leixing = db.Column(db.String(52), name='类型')

    brand = db.Column(db.String(52), name='公文类型')

    content = db.Column(db.TEXT, name='介绍')

    price = db.Column(db.Float, name='密码')

    url = db.Column(db.String(520), name='链接')

    datetime = db.Column(db.DateTime, nullable=True, default=datetime.datetime.now)

    collection = db.relationship("Collection", backref="xinxi")

    def __repr__(self):

        return "<{} 数据>".format(self.title)

class Collection(db.Model):

    __tablename__ = 'collection'

    id = db.Column(db.Integer, unique=True, primary_key=True)

    xinxi_id = db.Column(db.Integer, db.ForeignKey('xinxi.id'))

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))

    datetime = db.Column(db.DateTime, nullable=True, default=datetime.datetime.now)

    def __repr__(self):

        return "< {} : 收藏表>".format(self.xinxi_id)

再编写完上述任务的业务代码后,还需要定义一个主类用于管理上述的作业,RSA算法框架会将上述的任务拆分为一个个的job,并提交到后台上管理执行。下表3-4为公文信息所属行业RSA算法作业管理类的主要逻辑。

3-4 所属RSA算法

class UserCf():

    def __init__(self,data):

        self.data=data

    def getItems(self,username1,username2):

        return self.data[username1],self.data[username2]

    def Euclidean(self,user1, user2):

        # 取出两位用户加密过的公文

        user1_data = self.data[user1]

        user2_data = self.data[user2]

        distance = 0

        # 找到两位用户都加密过的公文,并计算欧式距离

        for key in user1_data.keys():

            if key in user2_data.keys():

                # 注意,distance越大表示两者越复杂

                distance += pow(float(user1_data[key]) - float(user2_data[key]), 2)

        return 1 / (1 + sqrt(distance))  # 这里返回值越小,复杂度越大

    # 计算某个用户与其他用户的复杂

    def top10_simliar(self,userID):

        res = []

        for userid in self.data.keys():

            # 排除与自己计算复杂

            if not userid == userID:

                simliar = self.Euclidean(userID, userid)

                res.append((userid, simliar))

        res.sort(key=lambda val: val[1])

        return res[:4]

        return recommendations[:10]

if __name__=='__main__':

    users = {1: {273: 4}

    userCf=UserCf(data=users)

    r = userCf.recommend(1)

任务主类编写成功后并提交到RSA算法环境上,通过RSA算法命令执行该RSA算法作业。

4 后台系统实现

基于RSA算法公文信息平台的基本业务功能是采用Django框架实现的, 在本文的第四章将详细介绍后台系统的实现部分,包括详细阐述了系统功能模块的具体实现,并展示说明了部分模块的功能界面。

4.1 开发环境与配置

4.1.1 开发环境

本系统设计基于B/S架构,其中服务器包括应用服务器和数据库服务器。这种架构模式,使用户只需要在有网络的地方即可通过浏览器访问,而不需要再安装客户端软件,交互性更强。基于RSA算法公文信息平台使用Pycharm集成开发工具。而系统运行配置时,选择应用本地来部署Web服务器来保障平台的正常运行。本系统的主要开发环境以及开发工具如表4-1所示。

表4-1 系统开发环境和工具

项目

系统环境及版本

硬件环境

Windows 64 位操作系统

Python

Python2.6

数据库

MySql

开发工具

Pycharm

项目架构

Flask

4.1.2 框架配置介绍 

本系统使用集成开发工具Pycharm进行开发,由于 IDEA 中本地配置详细资料有很多,不做详细赘述, 本文主要介绍 Flask框架的配置。首先需要在项目中中引入各框架以及数据库连接等所需要工具包。

4.2 数据库的设计

数据库设计是系统设计中特别重要的一部分。数据库的好坏决定着整个系统的好坏,并且,在之后对数据库的系统维护、更新等功能中,数据库的设计对整个程序有着很大的影响。

根据功能模块的划分结果可知,本系统的用户由于使用账号和密码进行登录,因此在本系统中需要分别进行数据记录。首先根据如下6个数据实体:用户、公文信息等数据库表。

用户的属性包括用户编号、用户名、密码和性别、注册账号的时间。用户实体属性图如图4-2所示:

图4-2 用户实体属性图

根据以上,各个实体之间有一定的关系,使实体与实体可以联系起来,建立成整个系统的逻辑结构,本系统中,普通用户通过对公文信息的管理,使公文信息与用户实体存在对应关系。

4.3 系统功能模块实现

4.3.1登录认证

用户登录时需要在登录界面输入用户名、密码进行身份认证,要求必须是表单认证、校验。具体流程如时序图如4-2所示。

图4-2登录认证流程图

公文信息RSA算法系统的用户登录界面如下图所4-3所示:

图4-3用户登录注册界面

登陆成功后,系统会成功跳转至首页,在首页中,位于上方的横栏是对本系统的基本信息的描述和欢迎登录效果,另外登录用户的用户名也会显示在首页中,可直接表明用户己成功登录。左侧则是本系统的导航菜单,可折叠展示,较为方便,右方则为欢迎页效果。公文信息RSA算法系统的首页界面如下图所4-4所示:

图4-4 公文信息RSA算法系统首页界面

4.3.2公告信息管理功能

公文信息管理功能是对公文信息进行查询,删除等操作的功能集合,公文信

息管理功能使用到了公文信息表t_ car,公文信息表t_car的主要数据字段,结构,类型及描述如下表4-2所示。

表4-2 公文信息表字段

字段名称

数据类型

是否允许为空

描述

id

int

不允许

自增主键,唯一ID

Password

String

允许

密码

name

String

允许

公文名称

size

String

允许

公文规模

type

String

允许

类型

experience

String

允许

使用年限

industry

String

允许

发表年份

recruiter

String

允许

公文署名

length

String

允许

大小范围

公文信息RSA算法系统的公文信息管理功能界面如下图所4-5所示:

图4-5公告信息后台管理界面

公文信息管理

功能流程功能图如图3-6所示:

图4-6 公文信息管理功能流程图

 通过“公文信息管理”按钮,进入公文信息管理界面,用户可以看到公文信息列表,例如:企业名称、所在城市、数量、公文要求、薪资待遇、公文时间的详细信息。通过此界面,用户可以对公文信息进行删除管理操作。

4.3.3公文信息管理功能

数据模块就是对我们采集和计算的结果的展示。数据模块的

数据进行一个精美而又直接的展示,我们采用大屏的方式进行展示,展示数据结

构分明,背景具有科技感,把相对复杂的、抽象的数据通过可视的、交互的方式

进行展示,从而形象直观地表达数据蕴含的信息和规律。公文信息RSA算法看板界面如图4-7所示。

图4-7公文信息RSA添加界面

公文信息RSA算法开发的难点并不在于图表类型的多样化,而在于如何能在简单的一页之内让用户读懂公文数据之间的层次与关联,这就关系到布局、色彩、图表、动效的综合运用。如排版布局应服务于业务,避免为展示而展示;配色一般以深色调为主,注重整体背景和单个视觉元素背景的一致性。本文使用中地图、线条等组件,将结果较为直观的展示给平台用户,使得用户能够简便的获取有效的信息。

4.4 本章小结

本章主要了基于RSA算法的公文信息系统开发过程中使用到的技术和具体的实现步骤,这其中主要介绍了基于Flask框架的公文信息RSA算法系统的搭建环境和开发步骤,包括程序中的一些数据库配置等。前端页面采用的是RSA算法和Flask实现。

5 总结与展望

5.1 系统开发遇到的问题 

由于基于RSA算法公文信息平台是由本人独立开发,因此在系统设计和业务逻辑方面更多地借鉴了目前市场上较为流行的框架和技术点,包括RSA算法技术,很多是不熟悉没接触过的,在开发过程中不断学习新知识。另外由于本人的时间和精力的原因,在系统开发过程中有很多地方可能并不能够完全尽如人意,还有许多需要补充的功能与模块。

5.2 总结与展望 

RSA算法公文信息系统是在对相关管理范畴进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计等,是一个具有实际应用意义的管理系统。根据本毕业设计要求,经过四个多月的设计与开发,RSA算法公文信息系统基本开发完毕。其功能基本符合用户的需求。
    为保证有足够的技术能力去开发本系统,首先本人对开发过程中所用到的工

具和技术进行了认真地学习和研究,详细地钻研了基于Python的网络爬虫技术

以及Echarts, CSS, HTML等前端开发技术,同时还研究了RSA算法开发技术RSA加密算法等。

从公文数据RSA算法平台需求开始,到整体框架的设计以及各个详细功能的设计具体实现,最后基于RSA算法平台的公文信息系统的基础架构和详细功能已经大致开发完毕,并将其部署在本地服务器当中运行,用户可以登录使用该系统进行公文信息的筛选,同时查询RSA算法的结果。


6系统测试

系统测试是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现系统潜在的问题,保证系统的正常运行。

管理人员用户公文管理系统已经基本完成,系统已经实现的功能满足了用户和管理员的需求,为了检验系统是否能安全有效运行和查找系统存在的问题,将对系统进行全面的测试。

6.1系统测试方案

分别对用户和管理员进行测试。测试用户功能,使用新账号在系统上完成注册、登录、上传公文信息、进行认证、发布公告、管理用户行为、退出登录等操作。预计可以成功的实现以上的所有操作。

测试管理员功能。登录管理员账号,对其用户测试时新用户发出的请求进行查看、审核、删除、认证等请求。并在日志中查看操作记录,成功退出登录。因为本系统需要管理员对用户认证用户才可以进行用户行为上传和加入用户行为,所以用户测试和管理员测试需要同时进行。

6.2系统测试过程

(1)使用用户名为admin密码为123的账号进行注册,管理员可在用户列表中查看用户admin的个人信息。

预计结果:成功注册,管理员可以看见admin的用户信息。

测试结果:成功注册。管理员可以看见admin的用户信息。

(2)使用户名zhangsan的账号进行登录。管理员使用管理员账号登录。

预计结果:用户和管理员成功登录。

测试结果:用户和管理员成功登录。

(3)用户上传自己的管理人员证照片和管理人员信息提交认证,管理员在管理人员认证页面可以收到认证信息并给予通过认证。

预计结果:成功上传信息,管理员通过认证。

试结果:成功上传信息,管理员通过认证。

(4)用户上传身份证照片和用户本人照片申请用户公文管理认证,管理员收到用户公文管理认证申请,可以查看提交的照片并通过认证。

预计结果:成功认证。

测试结果:成功认证。

(5)用户填写用户行为名为456的用户行为信息,上传用户行为文件,提交审核,管理员收到审核请求,查看用户行为信息和用户行为文件,给予审核通过。

预计结果:审核通过。

测试结果:审核通过。

(6)用户浏览其他用户行为并选择一个加入,并查看用户已加入的用户行为列表。

预计结果:加入成功,并显示在加入的用户行为列表中。

测试结果:加入成功,并显示在加入的用户行为列表中。

(7)管理员对其用户名为pangzhanlong的用户进行停用操作。

预计结果:zhangsan用户显示在停用名单中且不能登录。

测试结果:zhangsan用户显示在停用名单中且不能登录。

(8)对用户行为名为456的用户行为进行审核操作。

预计结果:在用户公文管理列表中用户行为名为456的用户行为状态显示已审核。

测试结果:在用户公文管理列表中用户行为名为456的用户行为状态显示未审核。

(9)启用用户zhangsan和用户行为456。

预计结果:用户zhangsan显示在用户列表中,用户行为456状态为正常。

测试结果:用户zhangsan显示在用户列表中,用户行为456状态为正常。

(10)在统计中可以查看以上测试的操作。

预计结果:在统计中可以查看到相关的操作。

测试结果:在统计中可以查看到相关的操作。

(11)用户zhangsan可以重新登录并退出,管理员退出系统。

预计结果:可以重新登录并退出,管理员成功退出。

测试结果:可以重新登录并退出,管理员成功退出。

6.3本章小结

本章主要对公文管理系统系统的各个功能进行了完整的测试,测试结果和预计结果吻合,该系统可以正常使用。

参考文献

  1. 李颖. 公文记忆观视野下的互联网企业用户浏览公文管理探析[J]. 公文学通讯, 2013(1):4.
  2. 李兆明. 关于互联网企业用户浏览公文管理体制改革的探讨[J]. 公文学研究, 2006(1):5.
  3. 覃兆刿, 罗琴. 互联网企业内部控制与互联网企业用户浏览公文管理的相关性——基于《互联网企业内部控制基本规范》的公文话题[J]. 公文学研究, 2012.
  4. 刘冰. 民营互联网企业用户浏览公文管理模式研究[D]. 吉林大学, 2011.
  5. 宗培岭. 试论现代互联网企业用户浏览公文管理制度[J]. 公文与建设, 2004, 000(008):51-53.
  6. 周英. 互联网企业用户浏览公文管理的网络信息化及开发利用[J]. 安徽大学学报(哲学社会科学版), 2003.
  7. 宗培岭. 现代互联网企业制度下公文工作运行机制研究[M]. 中国公文出版社, 2006.
  8. 范巧燕. 互联网企业用户浏览公文管理:电力互联网企业创新研究[M]. 经济管理出版社, 2008.
  9. 赵峰. 电力互联网企业用户浏览公文管理与时俱进策略研究[J].  2020.
  10. 史江, 刘婷婷. 互联网企业用户浏览公文管理社会化问题初探[J]. 公文学通讯, 2010(5):4.
  11. 廖娟娟. 基于JAVA的互联网企业用户浏览公文管理系统的设计与实现[J]. 电脑迷, 2018(4):1.
  12. 王晓君. 基于JAVA平台的互联网企业人事用户浏览公文管理系统的设计与实现[D]. 吉林大学.
  13. 张淼, 刘东旭. 基于Java EE的人力资源管理系统的设计与实现[J]. 普洱学院学报, 2020, 36(3):2.
  14. 缪兴华, 陈路. 基于Java的互联网企业科研用户浏览公文管理平台的设计与实现[J]. 电脑知识与技术:学术版, 2012(1X):3. 
  15. 乔建惠. 基于Java Web的互联网企业毕业生用户浏览公文管理系统设计与实现——以江西财经大学公文馆为例[J]. 软件导刊, 2010(11):4.
  16. 王晓君. 基于JAVA平台的互联网企业人事用户浏览公文管理系统的设计与实现[D]. 吉林大学
  17. 王进. 基于Java Web的公文馆网上预约服务系统[J]. 卷宗, 2018.
  18. 詹斌. 基于Web的用户浏览公文管理系统的设计与实现[J]. 用户浏览公文管理系统, 2015.
  19. Prager R ,  Sparago P . Enterprise, stream-based, information management system: US, US6768999 B2[P]. 2004.
  20. Wang X B . Java information management system developing model design[J]. Journal of Shenyang Institute of Aeronautcal Engineering, 2005.
  21. Javadi M , MD Dastjerdia. Evaluation effect of management information system implementation on personnel resistance causes in Isfahan power plant management corporation in Iran[J]. Procedia Computer Science, 2011, 3(3):1296-1303.
  22. Kiemle S ,  Mikusch E ,  Reck C , et al. Data Information and Management System for Earth Observation Products based on CORBA and Java[C]// EOGEO2000. 2000.
  23. Gonzales A ,  Casquejo M . A Web-based Records Management System for the Electrical Equipment and Energy Utilization of the University of the Immaculate Conception[J]. Iamure International Journal of Mathematics Engineering & Technology, 2014, 8(1). Manolov S H . Method and apparatus for session management in an enterprise java bean session bean:, US20070078855[P]. 2007.
  24. 陈丽敏. Design and Implementation of Education and Training Management System in Electric Power Company. 2014.
  25. Within B U . Student and Unit Management System - Maintain System Requirements Specification. 1998.
  26. Lukii M . Electronic Records Management System Requirements. Hrvatska znanstvena bibliografija i MZOS-Svibor, 2009.
  27. Jonathan, P, Wanderer, et al. Decision support using anesthesia information management system records and accreditation council for graduate medical education case logs for resident operating room assignments.[J]. Anesthesia & Analgesia, 2013.
  28. Lee J M ,  Lee S C ,  Kim H S , et al.Apparatus and method for sharing the landmark information of the location service using a java record management system in a wireless communication terminal:, US20090138198a1[P]. 2009.
  29.  Hokao S ,  Tanaka H ,  Yoshihama M , et al. Development of management system for student course records using Java and PostgreSQL[C]// SICE 2003 Annual Conference. IEEE, 2003.
  30. 刘明珠, 姜波, 黄峻. 大数据时代下的互联网企业用户浏览公文管理[C]// 建设与文化强国相匹配的"公文强国". 2014.


Research and Implementation of a Web-based Document Management System with rsa Encryption Function

Abstract:At present, there are many websites or apps in China that publish official document information, and the information published by existing official document websites is mixed with a large amount of useless official document information. This makes it difficult for users who manage official documents to distinguish effective information when using these official document software to obtain official document information, and the efficiency of managing official documents will be very low. If a web system is developed to encrypt and decrypt official document information on the market through RSA technology, it will provide huge security and privacy protection for document management personnel.

This article designs a backend analysis system for official document websites based on RSA algorithm. The core function of this system is to crawl the raw data of massive official document information in Zhongguancun, store and calculate the raw data through RSA algorithm technology, and display the analysis results in a list form.

The main research work and achievements of this paper are as follows:

1. We have designed and successfully developed a backend software system for official document data analysis based on RSA algorithm using software development techniques such as Flask. The official document information data of this backend system comes from the official document information crawled from the official document website.

2. Web crawler based on Python language crawled the official document information on the official document website. Clean the raw data crawled and store it in the database, then encrypt the data using RSA algorithm, and finally save the results to MySQL for storage and analysis.

 

Key words: official document data;Flask;Python;RSA algorithm

谢  辞

时光飞逝,四年的本科生生涯即将结束。在这四年的时光里,有遇到难题时的手足无措,有获得专业进步时的开心。经历了许多的事情,自己也在不知不觉中成长了很多,心中充盈最多的仍是感激。

首先感谢我的导师,她严谨的治学态度深深地影响每位同学。我要感谢我的父母,他们总是默默的付出,在生活上给与我最大的帮助,在学习上也给我很多建议。

最后,由衷的感谢各位评审老师在百忙之中抽出时间来参与我的论文评审和答辨。

  • 27
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值