登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 计算机科学与技术 > 正文

分布式环境下安全身份认证系统的设计与实现毕业论文

 2022-01-16 06:01  

论文总字数:22227字

摘 要

随着科学技术发展到一个较为成熟的阶段,计算机和互联网也慢慢的普及开来,计算机技术已经和人们的日常生活密不可分。但是互联网不光带给人们便利,其实还隐藏着很多陷阱,用户的信息随时都有可能被盗取。随着使用计算机的人越来越多,用户信息的保密和安全性逐渐受到大家的关注,没有人希望自己的信息人尽皆知,尤其是现在社会,人们的隐私保护意识越来越强。

我在日常的上网过程中也发现,网络上充斥着各种各样的安全陷阱,可能是一个文件,一张照片或者是一段链接......都有可能使自己的信息遭到泄露。但其实在使用网络的时候可以发现,现在的很多软件或网站都有各自的比较好的防御手段。而本文就是对分布式环境下的一次性口令技术进行讨论。

这次设计使用node.Js作为开发软件,用npm进行库的引用和依赖管理,JavaScript作为开发语言进行前端开发。

软件一共分为四个模块,口令的生成,口令的管理,口令的认证以及系统权限的设置。口令的生成主要是依靠单项算法计算得出。口令管理则包括密钥的加密验证等步骤。口令的认证依靠谷歌身份验证器认证口令是否能够使用。权限设置则体现在一次性口令的认证使用的特殊性中。

关键词:计算机信息安全;数据加密应用;一次性口令。

Abstract

With the development of science and technology to a more mature stage, computers and the Internet have gradually spread, and computer technology has penetrated into every aspect of people's lives.But the Internet not only brings convenience to people, but also hides many traps. Users'information may be stolen at any time.With the increasing use of computers, the confidentiality and security of user information has gradually attracted everyone's attention. No one wants to know their own information, especially in today's society, people's awareness of privacy protection is getting stronger and stronger.

I also found in the daily online process that the network is full of various security traps, which may be a file, a photo or a link... all of which may cause your information to be leaked. . But in fact, when using the network, you can find that many software or websites now have their own better defenses. This article is a discussion of one-time password technology in a distributed environment.

This design uses node.Js as the development software, npm for library reference and dependency management, and JavaScript as the development language for front-end development.

The software is divided into four modules, password generation, password management, password authentication, and system permission settings. The generation of passwords is mainly based on a single-item algorithm. Password management includes steps such as encryption verification of the key. Password authentication relies on the Google Authenticator to verify that the password is available. The permission setting is reflected in the particularity of the authentication use of the one-time password.

  Keywords: computer information security; data encryption application; one-time password.

目录

第一章 引言 6

1.1 系统开发的背景与意义 6

1.2 一次性密码研究的国内外现状 7

1.2.1 早期情况 7

1.2.2 现况 8

第二章 开发平台简介 12

2.1 HBuilderX——HTML5的Web开发工具 12

2.2 Node.js————JavaScript 运行环境 13

2.3 NPM————代码仓库 14

第三章 需求分析 16

3.1 代码实现环境需求分析 16

3.1.1 满足分布式的要求 16

3.1.2 轻量级开发 16

3.1.3 纠错容易 16

3.2 一次性密码需求分析 16

3.2.1一次性密码的生成 16

3.2.2一次性密码的验证 17

3.2.3一次性密码的管理 17

3.2.4 确实能用 17

3.2.5 时间同步 17

第四章 系统详细设计和实现过程 18

4.1 一次性密码生成的设计与实现 18

4.1.1HOTP密码生成 19

4.1.2HOTP密码检验 21

4.1.3TOTP密码算法图解 23

4.1.2 TOTP密码检验 24

4.1.3 二维码验证 28

4.1.4 在客户端上实现 29

4.2 用户注册 33

4.3 用户认证 33

4.3 用户认证 34

4.5安全性分析 39

第五章 总结与展望 41

5.1 总结 41

5.2 展望 42

参考文献 43

第一章 引言

1.1 系统开发的背景与意义

图1-1 黑客的进攻

近年来,随着网络技术的快速发展,系统安全性,合法的网络资源使用和隐私保护已经得到了广泛的研究。认证技术是一种用于安全防护的重要机制。大多数传统身份验证技术都是基于静态密码。静态密码认证的优点在于十分简单,却很有效。但是,由于密码始终保持不变,它的安全性非常的低。静态密码身份验证无法抵御重放攻击,密码泄露,猜测攻击等各种各样的攻击。就像是我们在买手机,静态密码是价格最低的那个手机,但即便能够完成通信的功能,比起价格高昂的其他手机,其功能和性能必定差了许多。人们在选购时也就有了选择,是要简单便宜的,还是昂贵但厉害的。为了克服静态密码认证的缺陷,有人提出了更进一步的一次性密码认证。在该方案中,发送到服务器的密码或认证数据在每个登录请求中是不同的。它可以抵御重放攻击,猜测攻击等多种攻击。并且可以有效的防止密码泄漏,因为密码通常是通过单向函数加密或转换的。

1.2 一次性密码研究的国内外现状

图1-2 早期的一次性密码表

1.2.1 早期情况

到目前为止,国内外已经提出了许多一次性密码认证方案来用户的登陆信息和认证需要使用到的数据。一次性密码学早期提出的方案的安全性高低主要取决于用户已知的信息,例如基于Lamport(1981年提出的单向散列函数的一次性密码认证方案)及其改进版本。大多数现有的一次性密码认证方案基于单向散列函数,某种单向加密算法亦或是一些用于被挑战的问题,例如离散对数问题等。有一个经典的一次性加密口令认证方案————S/KEY口令序列认证方案,它就是基于Lamport方式的一种一次性口令认证方案。一开始它曾使用DES(Data Encryption Standard,一种块加密算法)作为加密算法,通常是简单而有效的(就计算成本而言),但是简单就意味着他们的安全性并不高。后来由于安全隐患还是改用MD4和MD5单向散列算法。

请支付后下载全文,论文总字数:22227字

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图