基于SM9密码算法的移动应用系统登录技术研究与开发毕业论文
2021-11-05 19:22:18
摘 要
在如今的信息时代,用户的身份信息保密工作至关重要,其中身份认证是非常重要的一环,对于用户的身份保密来说至关重要。在现在身份认证的方式中,移动应用系统大多是采用用户名加密码或者口令、令牌的方式来达到登录的目的。但是这些认证方法都存在很多安全问题。比如用户名加密码的登录方式,用户往往为了方便记忆,用户名和密码往往设置的比较简单并且与个人重要信息相关,如加入姓名拼音缩写或者生日等,这种做法用户的信息很容易被猜测,因此很容易受到不法分子的攻击;此外,当用户在移动设备上输入他们的密码时,密码很容易被偷窥,不法分子也很容易在用户的信息传输过程中对其进行拦截。总之,目前这些常用到的身份认证存在很大的安全隐患,用户的信息极易泄密。
随着互联网和众多移动应用系统的蓬勃发展,基于PKI/CA证书体系的的身份认证方法使用的越来越广泛,但是这种体系在事先都需要申请证书,这无疑又给用户带来了许多复杂、繁琐的过程。并且PKI身份认证体制在实际使用中常常要用到USBKEY,来实现密钥管理和密码运算,这无疑又给用户带来了携带不便、容易丢失等问题。
IBC(Identity-Based Cryptography标识密码算法)是一种新兴的密码技术,是PKI密码体系的最新发展,主要简化在具体安全应用在大量数字证书的交换问题,使安全应用更加易于部署和使用。在IBC密码体系中允许用户选择具有唯一性的身份标识(如手机号和email地址)作为公钥,并通过可信的中央服务器接受到自己的私钥,在安全通信过程不采用数字证书的概念,而直接将安全方案与加密或验证方法联系起来,可以大大减少传统证书体系中申请和验证环节,从而对密码系统管理的复杂性进行了大大的简化。该算法于2008年正式获得国家密码管理局的商密算法型号:SM9(商密九号算法)。
本文设计了基于SM9密码的移动应用登录系统的方案,SM9标识密码是基于公钥体系,加密密钥不同于解密密钥。并且SM9算法使用用户标识作为公钥,无需再申请数字证书,例如用户的手机号码、email地址等用户身份标识信息都可以作为公钥,因此可以为用户提供更加安全身份认证。
关键字:SM9密码;移动应用系统;安全登录
Abstract
In today's information age, the confidentiality of user's identity information is very important, in which identity authentication is a very important part, which is very important for user's identity confidentiality. In the current way of identity authentication, most mobile application systems use the way of user name plus password or password, token to achieve the purpose of login. But these authentication methods have many security problems. For example, the login mode of user name plus password is often set to facilitate memory. The user name and password are often relatively simple and related to important personal information, such as adding initials or birthdays, etc. in this way, the user's information is easy to be guessed, so it is easy to be attacked by lawbreakers. In addition, when users enter their secret on mobile devices Code, the password is easy to be peeped, illegal elements are also easy to intercept the user's information transmission process. In a word, these commonly used identity authentication has great security risks, and users' information is very easy to leak.
With the rapid development of Internet and many mobile application systems, the identity authentication method based on PKI / CA certificate system is more and more widely used, but this system needs to apply for Certificate in advance, which undoubtedly brings many complex and tedious processes to users. In addition, USBKEY is often used in PKI identity authentication system to realize key management and password operation, which undoubtedly brings inconvenience and easy loss to users.
IBC (identity based cryptography algorithm) is a new cryptography technology, which is the latest development of PKI cryptosystem. It mainly simplifies the exchange of a large number of digital certificates in specific security applications, making security applications easier to deploy and use. In the IBC cryptosystem, users are allowed to select unique identity (such as mobile phone number and email address) as public key, and receive their private key through trusted central server. In the process of secure communication, the concept of digital certificate is not used, but the security scheme is directly linked with encryption or authentication method, which can greatly reduce the application and authentication in the traditional certificate system The complexity of cryptosystem management is greatly simplified. In 2008, the algorithm officially obtained the commercial secret algorithm model of the State Password Administration: SM9 (commercial secret algorithm No.9).
This paper designs a scheme of mobile application login system based on SM9 password. SM9 identity password is based on public key system, and encryption key is different from decryption key. And SM9 algorithm uses user ID as public key, without applying for digital certificate, such as user's mobile phone number, email address and other user identity information can be used as public key, so it can provide users with more secure identity authentication.
Keywords: SM9 password; mobile application system; secure login
目录
第1章 绪论 1
1.1研究背景和意义 1
1.2国内外研究水平及动态 1
1.3论文结构 2
第2章 问题分析和解决方案设计 4
2.1问题分析 4
2.2解决方案设计 5
2.2.1整体方案构思 5
2.2.2方案设计 7
2.3本章小结 8
第3章 基于SM9密码的移动应用系统登录方案的实现 9
3.1移动应用系统(客户端)的实现 9
3.1.1通信模块 9
3.1.2密码算法模块 10
3.2服务器端的实现 11
3.2.1通信模块 12
3.2.2密码算法及辅助功能模块 12
3.2.3数据库 16
3.3本章小结 16
第4章 系统测试及安全性分析 17
4.1系统功能测试 17
4.2安全性分析 19
4.3本章小结 20
第5章 总结与展望 21
5.1总结 21
5.2展望 21
致谢 22
参考文献 23
第1章 绪论
1.1研究背景和意义
随着网络的不断发展,信息时代为我们平时的生活带来了极大的方便,也为各种机关、企业等提供了大数据分析支持。虽然全世界的网络安全防护都在不断提升,但是仍会出现一些影响范围较大、涉及人员众多的网络安全事件[1]。最近几年,全世界就发生了很多用户信息泄露的事件。比如国内的智能家居公司欧瑞博的数据库就曾遭到泄露,这次泄露内容涉及超过 20 亿条日志,从用户名、邮箱地址、密码等用户重要信息都有所涉及;美国重要的短信服务商—TrueDialog,其数据库也曾遭到泄露,涉及人数众多,总计有1亿多美国公民的信息安全受到了威胁;还有印度国有天然气公司的生物识别数据库,在2019年,百万计的用户信息也因网络安全问题被泄露出去,对众多用户的生活带去了不必要的麻烦。从这些影响范围较大的数据泄露事件来看,目前用户信息安全仍面临巨大的风险,因此采用更加强大的安全防护措施来对信息进行安全加密,成为目前亟待解决的问题。
身份认证是信息安全中的重要一环,目前最常用的用户名加密码的方式在目前的网络环境中已不再安全;使用短信验证码也面临在与服务商传送信息过程中可能会被不法分子拦截;若使用数字证书、动态令牌等认证方式,则还需要用户携带专用的辅助设备,给用户的日常使用带来了极大的不方便;使用生物特征鉴别的方式,其更大范围的推广和标准的统一性还需要更长时间的努力