【毕业设计】基于JAVA的两个通用安全模块的设计与实现(源代码+论文)

news2025/1/18 8:46:16
目录

1.说明

2.系统设计与实现

2.1总体结构图

 2.2与数据库建立连接

 2.3与数据库建立连接

 2.4数字证书创建

 2.5关键代码说明

1.说明

详细介绍基于口令的身份认证与文件安全传输两个通用安全模块的设计原理和实现过程,分析了当前口令保存的安全性,提出了运用MD5算法等对口令进行处理,并将处理结果保存在数据库中的方法。同时为了进一步增强认证系统的灵活度,设计了用户注册时的口令模式选择、自主修改用户口令、自主选择口令字符串长度等策略。在本文设计的认证过程中,用户输入认证口令信息,作必要的处理之后,会与数据库里的用户真实信息进行对比来验证用户的合法性,合法用户登录成功后可以访问文件安全传输模块;而文件安全传输模块的设计,是应用SSL协议建立文件安全传输通道,可以保障机密文件内容不被窃听、篡改、伪造。整个系统采用JAVA语言对SSL协议、DES、MD5的支持设计实现的,具有设计简练、认证灵活、安全性能可靠、成本低廉等优点,能很好地解决各类企事业单位的用户身份鉴别和传输文件的机密性问题。

2.系统设计与实现

2.1总体结构图

根据需求分析及方案设计的结果,系统设计与实现的总体结构如图所示。

 2.2​​​​​​​与数据库建立连接

本系统是使用JDBC-ODBC桥驱动程序连接数据库的,JDBC-ODBC桥接器是用JdbcOdbc.Class和一个用于访问ODBC驱动程序的本地库实现的。首先建立ODBC数据源。ODBC数据源存储了如何与指定的数据建立程序的连接的有关信息。

先在WINDOWS ODBC数据源管理器中,建立一个名为“Person”的数据源的步骤如下:在“控制面板”里的“管理工具”中打开ODBC数据源管理器,选择“系统DSN”标签,单击“添加”按钮,选择数据源的驱动程序为SQL Server,输入数据源名称为“Person”,服务器选“本地”,用“使用网络登录ID的WINDOWS NT验证”,单击“下一步”,在“更改默认的数据库为”单选框,选择数据库为“MyDB”,单击“下一步”接受所有的默认选项。完成后,点“测试数据源”按钮,测试提示成功,则数据源配置成功。接着可以在程序中调用Class.forName方法加载JDBC-ODBC驱动程序,再调用DriverManager.getConnection方法发出连接请求。与数据库连接的部分代码如下:

Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );

String url="jdbc:odbc:Person";

Connection Insertconnection = DriverManager.getConnection( url);

 2.3​​​​​​​与数据库建立连接

本系统口令认证模块的默认口令实现的原理是基于单向函数,用MD5算出口令摘要,并保存在数据库里,以后每次登录都先将口令计算出摘要,与数据库里的摘要比较。

一次性口令实现原理及身份验证过程是基于SKEY原理,每次计算的方法是当用户第一次注册时,用MD5计算出口令的消息摘要,并从中截取用户要求的口令长度的字符串,作为一个口令生成,如果用户口要求的口令生成的个数大于1,则将这个生成的口令再用MD5计算出口令的消息摘要,并从中截取用户要求的口令长度的字符串,依此类推,计算出用户要求的个数,并将最后一个生成的口令存于数据库中,当用户用这些口令进行身份验证时就与SKEY的认证过程一样。

 2.4数字证书创建

在DOS下使用J2SDK提供的keytool工具创建密钥库,密钥库名为mykeystore,添加一个名为mytest的证书,mykeystore密钥库为服务器的密钥库。将mytest证书导出到clienttrust密钥库中。clienttrust密钥库为客户端信任的密钥库。

 2.5关键代码说明

 此源码非开源,若需要此源码可扫码添加微信或者qq:2214904953进行咨询!

2600多套项目欢迎咨询

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

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

相关文章

噪声系数测试之增益法

提到增益法测试噪声系数,大家并不陌生,这是一种简洁的测试方法,精度不如Y因子法,但是在某些测试场合,比如只有频谱仪而没有噪声头时,且待测件具有非常高的增益时,就可以使用增益法测试噪声系数。 增益法测试噪声系数的连接示意图如图1所示,其思路为:DUT输入端端接50 …

2024的新宠儿——Mamba(3):Mamba的三大创新

mamba(其对应论文为:https://arxiv.org/abs/2312.00752,这是其对应的GitHub代码地址:GitCode - 开发者的代码家园),在语言、音频、DNA序列模态上都实现SOTA,在最受关注的语言任务上,Mamba-3B超越同等规模的Transformer,与两倍大的Transformer匹敌,并且相关代码、预训练模…

PR CC 2024安装教程(附免费安装包资源)

鼠标右击软件压缩包,选择“解压到当前文件夹”。 打开解压后的文件夹,鼠标右击“Set-up”选择“以管理员身份运行”。 点击文件夹图标。” 点击“更改位置”。 更改完位置,点击“继续”。 软件正在安装,请耐心等待,谢谢…

3D打印随形水路:模具提质降本增效的利器

在科技飞速发展的时代,3D打印技术以其独特的优势,正在逐步改写传统制造业。其中,3D打印随形水路技术的出现,无疑是科技与制造领域的一次革命性结合。那么,随形水路的魅力究竟体现在何处呢? 随形水路&#x…

乡政府管理系统|基于Springboot的乡政府管理系统设计与实现(源码+数据库+文档)

乡政府管理系统目录 目录 基于Springboot的乡政府管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、用户信息管理 2、活动信息管理 3、新闻类型管理 4、新闻动态管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推…

浅浅了解一下 LibTorch

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ LibTorch 是 PyTorch 提供的一个二进制发行版,包含了所有必要的头文件、库和 CMake 配置文件,便于开发者依赖 PyTorch 开发应用。用户可以从 PyTorch 官网下载包含最新 LibTorch…

Java全套智慧校园系统源码springboot+elmentui +Quartz可视化校园管理平台系统源码 建设智慧校园的5大关键技术

Java全套智慧校园系统源码springbootelmentui Quartz可视化校园管理平台系统源码 建设智慧校园的5大关键技术 智慧校园指的是以物联网为基础的智慧化的校园工作、学习和生活一体化环境,这个一体化环境以各种应用服务系统为载体,将教学、科研、管理和校园…

nodejs工具模块学习

util 是一个Node.js 核心模块,提供常用函数的集合; util.inspect(object,[showHidden],[depth],[colors]) 是一个将任意对象转换 为字符串的方法,通常用于调试和错误输出; 如果只有一个参数 object,是要转换的对象&…

【星瑞格】SinoDB国产数据库安装初体验及学习指南

今天和大家一起来看看一款来自福建的国产数据库——SinoDB。本人很早就听说过这款数据库,而且星瑞格公司就在同一栋办公楼。虽然以前就已经对这颗国产数据库有一定的了解,并没有真正的去使用一把。随着数据库国产化改造工作的推进,身边的客户…

【科研】YOLOv8中anchor_points可视化(更新中)

目录 写在前面anchor-point可视化 写在前面 感叹一下:如果GPT能在我刚上大学的时候出来,也许我能学的比现在好太多,毕竟大学有一个比自己优秀太多的人引导着是多么地捷径。 anchor-point可视化

Qt | 远程仓库

git | 基本操作 01 远程仓库 在了解之前,先注册github(gitee或者gitcode等等)账号,由于你的本地Git仓库和github仓库之间的传输是通过SSH加密的,所以需要一点设置: 第一步:创建SSH Key。在用户主目录下,看看…

网工内推 | 兴业银行总行正编,科技运维部,硕士以上学历

01 兴业银行 招聘岗位:安全渗透专家 职责描述: 1.负责牵头组织本行红蓝对抗、攻防演练等工作; 2.负责牵头制定有效的渗透测试方案,开展对本行防御体系的验证工作; 3.负责牵头组织本行各类应用系统的渗透测试与漏洞扫…

Dinov2 + Faiss 图片检索

MetaAI 通过开源 DINOv2,在计算机视觉领域取得了一个显着的里程碑,这是一个在包含1.42 亿张图像的令人印象深刻的数据集上训练的模型。产生适用于图像级视觉任务(图像分类、实例检索、视频理解)以及像素级视觉任务(深度…

【可视化大屏开发】19. 加餐-百度地图API实现导航加线路热力图

需求 Web端使用场景中会涉及到地图导航路线情况,并利用热力图显示路况信息。 实现效果如下: 输入起始地点,选择并开始导航 最终效果 思路步骤 利用百度地图API显示地图交通拥堵情况的热力图,需要按照以下步骤进行开发 步骤1&a…

Ubuntu的终端中启用鼠标左键即为选中复制,右键粘贴的功能

在Ubuntu终端中启用鼠标复制和粘贴的功能需要进行一些设置。 首先,打开终端窗口,在菜单栏中找到“Edit”选项,点击“Profile Preferences”。然后,在“General”选项卡中,勾选“Use custom font”选项,可以…

【IEEE列表会议】第五届信息科学与并行、分布式处理国际学术会议(ISPDS 2024)火热征稿中!

IEEE列表会议,院士报告,高校背书,快至3天录用! 第五届信息科学与并行、分布式处理国际学术会议(ISPDS 2024) 2024 5th International Conference on Information Science, Parallel and Distributed Sys…

万物皆可计算|下一个风口:近内存计算-2

虽然PIM可以有缓解内存墙的问题,但是PIM设计面临着一系列技术和工程上的挑战,这些挑战直接影响着PIM技术的实用化和广泛应用: 地址翻译与操作映射: 在传统计算机体系结构中,地址空间由操作系统管理和调度,通…

Current browser version is 101.0.4951.54 with binary解决

目录 问题: 原因: 解决: 1. 卸载浏览器 2.安装新浏览器,取消自动更新 3.安装chromedriver.exe 问题: 今天在使用python selenium进行爬虫时,突然报错,前2天还正常使用 Current browser ve…

02 - ArcGIS For JavaScript-矢量数据的符号化处理(Symbol)

文章目录 综述Symbol的分类Point的符号化Point符号化为二维几何:Point位图符号化:Point的三维结合符号化Point 符号化为GLTF模型 PolylineSymbol-线符号化基本样式管道样式墙体样式条带样式方管样式 PolygonSymbol-面符号化水面效果拉伸效果填充效果 Mes…

【InternLM 实战营第二期作业04】XTuner微调LLM:1.8B、多模态、Agent

基础作业 训练自己的小助手认知 1.环境安装 安装XTuner 源码 # 如果你是在 InternStudio 平台,则从本地 clone 一个已有 pytorch 的环境: # pytorch 2.0.1 py3.10_cuda11.7_cudnn8.5.0_0studio-conda xtuner0.1.17 # 如果你是在其他平台&#x…