手机动态口令系统的研究与实现毕业论文
2021-05-11 21:04:38
摘 要
如今,网络技术的快速发展使得其功能越来越强大,在我们的日常生活中,已经很难离开网络。然而,即使网络技术的发展如此快速,网络的安全还是得不到很好的保障,网络犯罪的例子多不胜数,网络攻击繁多的手段让人疲于应对。身份认证可以证实用户身份,可以保证用户的信息只有其本人可以获取。身份认证有很多的技术和方案,目前应用最多的就是静态密码技术,这种技术虽然方便简单,但是很不安全,容易被破解。银行等一些安全性要求较高的机构已经在使用动态口令,不过他们的动态口令产品成本较高,通用性差。
为了使身份认证变得更加方便和安全,降低动态口令产品的成本,本文研究和实现一个手机动态口令系统,系统分为两部分:手机令牌和认证服务器。手机令牌基于Android手机开发,是一款Android应用程序,动态口令从手机令牌读取用于登录认证服务器。根据设计要求和Android手机特性,动态口令选择基于时间同步的机制。文中重点研究了动态口令的生成,包括生成算法的选择、密钥构成和数据构成。为了保证整个系统的安全,研究了常用的加密算法,数据传输时使用RSA算法加密,数据库的数据使用AES加密。该系统使用方便,成本较低,安全性高。
关键词:身份认证;动态口令;Android;加密算法
Abstract
Now,the network technology is in high speed development,so that the function of network is more and more complete and comprehensive,it becomes a part of our daily life.However,the guarantee of network security is not good even the network technology is in a rapid development.There are many examples of Internet crime,and we are tired of network attacks.Authentication plays a important role in protecting network.There are many authentication technologies and solutions,the most widely used is the static password technology,which is convenient simple,but it is not safe and easy to crack.Some banks and other security requirments agencies have already used dynamic password,but their dynamic password products cost too much and in poor versatility.
To make authentication more convenient and secure,this article design and research a phone dynamic password system.The system is divided into parts:the phone tokens and authentication server.We can get dynamic password from the phone token,which can help us login in the authentication server,the phone token bases on Android.Depending on the system’s design requirements and the characteristics of Android,this article choose dynamic password authentication mechanism based on time-synchronous.In this article,we discuss how to generate dynamic password,including generation algorithm,the constitution of key and data.To ensure the security of the entire system,the data transmission process use the asymmetric encryption algorithm:RSA,the database uses the symmetric encryption algorithm encrypt the data.The system is easy to use,it overcomes the disadvantages of the prior dynamic password products and it is safe.
Key Words:Authentication;dynamic password;android;encrypt algorithm
目 录
第1章 绪论 1
1.1 选题背景及意义 1
1.2 国内外研究现状 2
1.3 主要研究内容 3
1.4 本文章节安排 3
第2章 系统方案论证与总体设计 4
2.1 动态口令认证技术的论证与选择 4
2.1.1 基于挑战/响应的异步认证技术 4
2.1.2 基于时间的同步认证技术 4
2.1.3 基于事件同步的认证技术 5
2.1.4 本文采取的认证技术 5
2.2 动态口令生成算法的论证与选择 6
2.2.1 消息摘要算法 6
2.2.2 本文选择的动态口令生成算法 6
2.3 系统总体设计 7
2.4 本章小结 8
第3章 基于Android的手机令牌设计 9
3.1 Android应用程序开发 9
3.2 用户注册功能实现 10
3.3 动态口令的生成 10
3.3.1 密钥的生成 11
3.3.2 待加密数据 11
3.3.3 生成动态口令 11
3.4 时间同步方案 12
3.5 网络通信的安全 12
3.5.1 非对称加密算法 12
3.5.2 网络通信过程 13
3.6 本章小结 14
第4章 认证服务器的设计与实现 15
4.1 认证服务器的相关技术与原理 15
4.2 开发环境搭建 16
4.3 认证服务器模块实现 16
4.4 数据库与数据安全 17
4.4.1 MySQL数据库 17
4.4.2 对称加密算法 17
4.4.3 数据加密和解密 18
4.5 本章小结 19
第5章 系统测试与分析 20
5.1 系统功能性测试 20
5.2 系统安全性分析 23
5.3 本章小结 24
第6章 总结与展望 25
6.1 工作总结 25
6.2 展望 25
参考文献 26
致 谢 27
附录A 28
第1章 绪论
1.1 选题背景及意义
随着互联网的不断发展,很多事情都可以在网络上完成,给人们带来了极大的便利,网上购物、办公、交流等已成为了人们日常生活中的一部分。互联网具有以下特点:开放、普及等,这些特点使得互联网具备蓬勃的生机,但同时也成为了网络罪犯们的乐园。新闻中,网络犯罪的报导时有发生。网络犯罪案件越来越多,。在网络环境中,怎样证明自己的身份,怎样防止别人冒用自己的身份等问题已经成为了人们亟待解决的焦点问题。解决这些问题的唯一和最好的途径就是进行身份认证[1]。
身份认证的作用就是验证用户身份。身份认证的依据应包含只有该用户所持有的并且可以验证的特定信息。其实现机制主要包括了以下三个方面[1]:
1. 基于用户的生物特征来证明身份。