数据库安全性与完整性设计

文章标签集合[数据库安全,数据敏感,通信安全,MD5,盐加密]

1  系统设计 

1.1设计目标

(1)确定系统中需要保护的敏感数据和通信内容;

(2)设计合适的签名、加密和解密算法;

(3)实现前端和后端的签名、加密和解密功能;

(4)配置合适的密钥管理和证书管理机制;

(5)进行系统测试和安全性评估。

1.2 需求描述

1.2.1  信息要求:

(1)用户信息: 包括用户名、密码等个人身份信息。

(2)图书信息: 包括书名、作者、出版社等图书相关信息。

(3)借阅信息: 包括借阅时间、归还时间等借阅记录。

(4)通信内容: 所有用户与系统之间的通信内容,包括登录请求、图书查询请求、借阅请求等。

1.2.2  处理要求:

(1)用户密码处理: 用户密码应采用MD5加密算法进行存储,确保用户密码的安全性。

(2)图书管理: 管理员具有添加、修改、删除图书的权限,确保图书信息的准确性和完整性。

(3)用户管理: 管理员具有添加、修改、删除用户的权限,确保用户信息的准确性和完整性。

(4)借阅信息管理: 记录每次借阅和归还操作,包括借阅时间、归还时间等,以便追溯用户借阅历史。

1.2.3  安全性与完整性要求:

(1)MD5加密存储:系统将用户密码进行MD5加密存储,以增强用户密码的安全性。这一措施有助于防止密码泄露及提高系统对用户身份验证的保障。

(2)角色权限限制:对不同的角色赋予不同的权限,防止无权限角色对数据进行修改。

1.3开发和运行环境选择

开发工具: 前台开发语言为JAVA,后台数据库为MySql

运行环境:windows 11操作系统 

2  网络安全相关设计

2.1网络安全相关原理论述

2.2.1  MD5盐加密算法原理:

(1)盐生成: 对每个用户生成一个唯一的盐,通常采用随机数生成器产生。

(2)盐与密码结合: 将用户输入的密码与盐进行拼接。

(3)MD5哈希运算: 对拼接后的密码和盐进行MD5哈希运算,生成哈希值。 (4)存储哈希值和盐: 将生成的哈希值和盐存储在数据库中。

2.2.2  安全性原理:

(1)防止彩虹表攻击: 盐的引入使得即使相同的密码也会产生不同的哈希值,从而防止攻击者通过预先计算的彩虹表来破解密码。

(2)提高密码破解难度: 每个用户使用独特的盐,即便密码相同,由于盐的不同,破解者需要分别攻击每个用户的密码,增加了破解难度。

(3)降低暴力破解速度: 盐的引入使得暴力破解攻击难以有效进行,因为攻击者需要针对每个用户尝试不同的盐。

MD5盐加密算法是一种相对较简单但有效的密码存储方法,尽管MD5本身存在弱点,但结合盐的使用可以提高密码存储的安全性。

2.2相应功能概要设计

加密算法的实现体现在用户注册登录模块,当用户输入密码后,会对密码进行MD5盐加密,以加密过后的密码存储到数据库中,无法通过数据库数据直接获得真实的用户密码,而在用户登录过程中,通过对比用户输入的密码,和对数据库用户密码的解密结果来保证用户的安全登录。

3  图书管理系统详细设计

本系统是一个图书管理系统,实现对图书、用户和借阅信息的有效管理,分为管理员和用户两个角色,以满足图书馆的日常运作需求。

3.1.1  管理员功能:

3.1.1.1 图书管理

(1)添加图书:管理员可以添加新的图书信息,包括图书编号、书名、作者、出版社、出版日期、借阅状态等。

(2)删除图书:管理员可以删除不再馆藏的图书信息。

3.1.1.2 用户管理

(1)添加管理员:管理员可以添加新的管理员信息

(2)删除用户:管理员可以删除不再使用系统的用户信息。

3.1.1.3 借阅管理

(1)查看借阅记录:管理员可以添加新的管理员信息

(2)修改借阅状态:管理员可以改变图书的借阅状态。

3.1.2  用户功能:

3.1.1.1 用户注册

3.1.1.2 图书借阅

3.1.1.3 图书归还

4  系统测试

  1. 进行一个新用户的注册,输入密码完成注册后,到数据库查看对应密码,可以得到预期结果:数据库的用户密码是通过加密之后的密码
  2. 分别登录管理员和用户角色,可以看到对应的功能模块不一致,通过前端限制不同角色的权限。
  3. 操作各个功能模块,检测是否能达到预期效果。

更多精彩内容关注下方: 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/703349.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【前端素材】推荐优质后台管理系统Uena平台模板(附源码)

一、需求分析 后台管理系统(或称作管理后台、管理系统、后台管理平台)是一种专门用于管理网站、应用程序或系统后台运营的软件系统。它通常由一系列功能模块组成,为管理员提供了管理、监控和控制网站或应用程序的各个方面的工具和界面。以下…

DAY33--learning English

一、积累 1.testify 2.sanctuary 3.assauslt 4.grocery 5.peg 6.figure 7.carton 8.bruise 9.dangle 10.script 11.lad 12.manipulate 13.molecule 14.shuttle 15.gutter 16.drastic 17.wag 18.rear 19.nail clipper 20.cereal 二、练习 1.牛津原译 Testify v. /ˈtestɪfaɪ…

通配符证书的作用

通配符证书是一种 SSL/TLS 证书,可用于保护多个域(主机),由域名字段中的通配符 (*) 指示。这种证书主要用于具有许多子域的组织。通配符证书对主域及其所有一级子域有效。例如,一个针对 *.example.com 的通配符证书可以…

CleanMyMac2024一款备受赞誉的mac电脑垃圾清理软件

在数字世界中,我们的Mac不仅仅是一台电脑,更是我们工作、娱乐和生活的得力助手。然而,随着时间的推移,系统垃圾、无用文件和缓存不断堆积,让Mac变得迟钝,甚至威胁到我们的数据安全。此刻,您需要…

linux---nginx基础

目录 一、Nginx的概念 二、Nginx常用功能 1、HTTP(正向)代理,反向代理 1.1正向代理 1.2 反向代理 2、负载均衡 2.1 轮询法(默认方法) 2.2 weight权重模式(加权轮询) 2.3 ip_hash 3、web缓存 三、基础特性 四…

Centos配置SSH并禁止密码登录

CentOS8 配置SSH使用密钥登录并禁止密码登录 一、概念 SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。 SSH提供两个级别的认证: 基于口令的认证 基于密钥的认证 基本使…

【Java程序员面试专栏 算法思维】二 高频面试算法题:二分查找

一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,本篇主要聊聊二分查找,包括基础二分,寻找目标值的左右边界,搜索旋转数组以及波峰,以及x的平方根问题,所以放到一篇Blog中集中练习 题目关键字解题思路时间空…

python实现线下缓存最优算法

对于现代计算机为了加快数据存储速度,一般会采用多级缓存的方法,以最简单的二级缓存来说,数据会存放在两个地方,一个地方就是存在内存当中,另一个存放的地方就是存放在硬盘当中,但是这两个地方数据读取的速…

matlab滤波器设计

1、内容简介 略 51-可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 matlab滤波器设计-butter、ellip、cheby1、cheby2_哔哩哔哩_bilibili 4、参考论文 略

光量子计算公司ORCA将在英国国家量子计算中心部署量子计算测试平台

内容来源:量子前哨(ID:Qforepost) 编辑丨慕一 编译/排版丨沛贤 深度好文:800字丨7分钟阅读 全栈光量子计算系统公司ORCA Computing 将为英国国家量子计算中心(NQCC)搭建量子计算测试平台并提…

上海AI Lab联合上交推出复杂图表推理多模态评测基准ChartX与基座模型ChartVLM

近期,众多多模态大语言模型(MLLM)相继问世。然而,这些模型对于视觉图表中所包含的信息的感知能力以及推理能力尚未得到充分的挖掘与探索。本研究中,为了对现有的 MLLM 在图表领域的性能进行全方位、严格的评估&#xf…

Vue项目创建——每一步都有记录和说明

文章目录 1. 首先下载Node2. 全局安装vue/cli3. 创建Vue项目4. 启动Vue项目 1. 首先下载Node 既然都开始创建Vue项目了,想必大家电脑里面都有Node跟npm了,这里就不赘述了。 2. 全局安装vue/cli vue/cli是什么 vue/cli 是一个全局安装的 npm 包&#x…

网络质量分析,DNS解析慢、网页经常打开失败、慢等

抓包统计分析DNS:解析用时、解析结果、解析状态 如图 #_*_ coding:utf8 _*_ ## 网络质量分析,DNS解析慢、网页经常打开失败、慢等 ## 抓包分析DNS:解析用时、解析结果、解析状态 # 2024-02-22 # Linux tcpdump 抓包示例:tcpdump …

AIGC学习笔记——DALL-E2详解+测试

它主要包括三个部分:CLIP,先验模块prior和img decoder。其中CLIP又包含text encoder和img encoder。(在看DALLE2之前强烈建议先搞懂CLIP模型的训练和运作机制,之前发过CLIP博客) 论文地址:https://cdn.openai.com/pap…

常用实验室器皿耐硝酸盐酸进口PFA材质容量瓶螺纹盖密封效果好

PFA容量瓶规格参考:10ml、25ml、50ml、100ml、250ml、500ml、1000ml。 别名可溶性聚四氟乙烯容量瓶、特氟龙容量瓶。常用于ICP-MS、ICP-OES等痕量分析以及同位素分析等实验,也可在地质、电子化学品、半导体分析测试、疾控中心、制药厂、环境检测中心等机…

MCU独立按键单控LED实现

##江科大视频学习,并且对具体的一些小细节进行更详细的分析。 什么是独立按键? 轻触按键:相当于是一种电子开关,按下开头接通,松开时开头断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开。 注意…

亿道丨三防平板也有国产,六大特点你知道多少?

国产三防平板是指由国内厂商自主研发和生产的具有防水、防尘和防摔等特性的平板电脑产品。与一般的平板电脑相比,国产三防平板有以下特点: 防护性能更好:国产三防平板采用的材料、密封性能以及相关的防护设计都经过严格测试和认证&#xff0c…

经典枚举算法

解析: 首先答案肯定是字符串的某个前缀,然后简单直观的想法就是枚举所有的前缀来判断,我们设这个前缀串长度为 lenx ,str1 的长度为 len1,str2 的长度为 len2,则我们知道前缀串的长度必然要是两个字符串长…

Oracle内存计算应用模式

前言 内存计算是利用内存来加速数据访问和应用的性能,并降低应用开发复杂度的技术。近十年来,随着软硬件技术的发展和用户需求的成熟,内存计算技术已经得到了广泛地应用。 Oracle在内存计算领域具有非常重要的地位,这主要得益于…

数据库应用:Windows 部署 MySQL 8.0.36

目录 一、实验 1.环境 2.Windows 部署 MySQL 8.0.36 3.Windows配置环境变量 4.Navicat链接MySQL 二、问题 1.安装MySQL 报错 一、实验 1.环境 (1)主机 表1 主机 主机软件版本IP备注WindowsMySQL8.0.36localhost 2.Windows 部署 MySQL 8.0.…