基于移动端数据的安全存储研究与应用

2018-06-21 11:46朱剑陈家琪
软件导刊 2018年5期
关键词:解密

朱剑 陈家琪

摘 要:针对目前移动智能终端数据存储易泄露问题,提出一种移动端数据存储安全模型。考虑到移动终端计算能力局限性,提出一种改进的超轻量级加密算法,既能保证数据安全又可提高计算效率。将改进的基于时间戳的认证方案与透明加/解密技术相结合,使文件以密文形式上传到服务器,重新回到移动智能终端时才被解密成明文,实现对用户文件的全生命周期保护,保证数据传输安全性。以iOS客户端为例对方案进行了功能测试,实验表明,该系统能有效保障移动智能终端用户的数据安全性。

关键词:移动智能终端;超轻量级加密;时间戳认证;透明加/解密

DOI:10.11907/rjdk.172737

中图分类号:TP309

文献标识码:A 文章编号:1672-7800(2018)005-0201-04

Abstract:Aiming at the problem of easy leakage of mobile intelligent terminal data storage, a security model of mobile data storage is proposed. Considering the limitation of computing capability of mobile terminal, we propose an improved ultra-lightweight encryption algorithm in the model both to ensure data security and improve computing efficiency. Since time the model involves the server, so we make use of improved timestamp-based authentication scheme and transparent encryption/decryption technology, so that when the file is uploaded in cipher text to the file server, only to be decrypted into a plaintext after returned to the mobile intelligent terminal, to achieve the user file life cycle protection and to ensure the security of data transmission. We take iOS client as an example for the models functional test, which verifies its reliability in ensung data security of mobile terminal.

Key Words:mobile intelligent terminal; ultra-lightweight block cipher; timestamp based authentication; transparent encryption/decryption technology

0 引言

目前移動智能终端数据安全传输、存储保护脆弱,一些不法分子只要截获传输内容就很容易造成数据泄露,为此学者们进行了相关研究。如冉娟等[1]考虑到移动终端处理数据速度的局限性,推荐在服务端对数据进行加密存储;余琦等[2]提出的基于HDFS的云存储安全技术方案,虽然保证了数据的安全性,但是加解密过程计算量大、运算复杂度高,没有考虑到移动终端的计算能力局限性,不适合在移动智能终端上对数据文件进行加解密,同时没有考虑身份认证安全问题,用户身份容易被假冒;陈超群等[3]提出的移动智能终端信息防泄漏模型,虽然考虑到数据文件传输过程中的安全性,提出的轻量级SMS4加密算法非常适用于计算能力有限的移动设备,但是其将密钥存储在移动终端本地,造成用户在更换移动设备时容易密钥丢失,无法再还原密文。鉴于此,本文提出一种将密钥组成部分存储在服务端的方式来保证数据的可移植性,保证用户不会因为更换设备而丢失数据,同时通过对Jagdish Patil等[4]提出的超轻量级LiCi加密算法进行改进,使用透明加/解密过程,进一步提升安全性和节省内存,加快加解密速度;增加服务端对客户端的用户认证机制,加强访问控制,防止非法用户在获取到用户名和密码后窃取用户数据。提出了基于时间戳认证访问控制技术的移动智能终端防泄漏模型,该模型克服了“用户名+口令”这种单一因子认证模式的不足,增强了用户认证的安全性。

1 超轻量级加密算法

移动智能终端计算能力有限,本文对超轻量级LiCi[4]加密算法的密钥生成部分进行改进,使算法更加完善。

1.1 加密过程

LiCi算法包括一个31轮的Feistal结构,其每一轮加密流程如图1所示。该算法采用64位明文输入,加密后输出64位密文,其中用于非线性变换的4×4的S-box,每一轮需要两个子密钥rk1和rk2。

1.1.1 加密流程

输入明文等分成PT_MSB和PT_LSB两部分,每个32位,其加密流程伪代码如下:

(3)线性攻击:计算算法S盒的线性分布矩阵,可以得到矩阵元素的最大绝对值为16,从而分析出S盒线性逼近的概率较低,因此其线性特性较弱,满足分组密码算法对非线性特性的要求。

由此可见,改进的LiCi算法能够有效抵抗目前常见的攻击方法。

2 安全模型

基于透明加/解密技术的移动智能终端数据存储安全模型如图2所示,该模型借助改进的轻量级加密算法,并通过透明加/解密技术对移动智能终端上的文件进行自动加/解密。模型适用于Android、iOS等主流移动智能终端操作系统。在此首先要解决以下几个技术问题:①移动智能终端接入云存储服务器端时的身份认证问题;②移动智能终端本地的透明加/解密问题。

2.1 基于时间戳的认证方案

一个安全的访问模型少不了一个安全的认证方案,以防止非法入侵用户数据,目前移动客户端都采取了一定的保护措施,如加时间戳的方案、加随机数的方案等,但这些方案都有一定的缺陷。钟声等[9]提出的基于时间戳的密码身份认证方案,虽然能保证安全性,但过程太复杂,在申请认证过程中要求双方都等待回应,很浪费计算资源。因此,本文提出一种改进的基于时间戳的方案。

2.1.1 普通时间戳认证方案

普通的加时间戳方案主要用来防重放攻击。每次HTTP请求都需要加上timestamp参数,然后把timestamp和其它参数一起进行数字签名。因为一次正常的HTTP请求,从发出到服务器一般都不会超过60s,所以服务器收到HTTP请求后,首先判断时间是否超过60s,如果超过则认为是非法请求。假如黑客通过抓包得到了请求api,其中含有请求参数用户唯一id(uid)、时间戳(stime)以及私钥签名(sign)。一般情况下,黑客从抓包重放请求耗时远远超过60s,所以此时请求中的stime参数已经失效。如果黑客修改stime参数为当前的时间戳,则sign参数对应的数字签名就会失效。因为黑客不知道token值,没有办法生成新的数字签名。但这种方式的漏洞也显而易见:如果黑客确实在60s之内进行重放攻击成功,系统将毫无办法,所以这种方式不能保证请求仅一次有效。

2.1.2 改进的基于时间戳认证方案

改进的基于时间戳方案引进了一个nonce随机数方案,改进后的方案大致流程如图3所示,nonce的一次性方案可以解决timestamp参数60s的问题。在timestamp方案的基础上加上nonce参数,因为timstamp参数对于超过60s的请求都认为是非法请求,所以只需存储60s的nonce参数的“集合”即可。如果在60s内,重放该HTTP请求,因为nonce参数已经在首次请求时被记录在服务器的nonce参数“集合”中,所以会被判断为非法请求。超过60s之后,stime参数就会失效,此时因为黑客不清楚token的值,所以无法重新生成签名。

2.2 透明加/解密过程

本文采用基于改进的LiCi超轻量级加密算法对明文进行加密以保证加/解密速度。对称加密算法的优点是算法公开、计算量小、加密速度快、加密效率高。由于移动设备的计算能力有限,在本地加密文件采用对称加密更好,而LiCi算法正是对称加密,但采用对称加密就必须涉及到加密密钥的保存问题。本方案既不直接保存密钥到服务器也不直接保存在本地,而是根据加密时间的时间戳生成。这样做的目的是防止服务器数据泄露或客户端数据存储被盗导致密钥直接泄露,该过程如图4所示。

3 实验分析

3.1 安全性分析

通过在移动智能终端上对上传/下载的文件进行透明加/解密处理,保证了用户的数据文件在存储服务器端和传输过程中的机密性;通过改进的基于时间戳方案,可以有效防止攻击者假冒合法用户访问服务器端的数据文件。可见,本文提出的模型安全性取决于密码算法的安全性以及身份认证方法的安全性。下面在轻量级LiCi算法的安全性确有保障的前提下,对基于时间戳认证方法的安全性进行分析。

(1)抗重放攻击:假设攻击者试图进行重放攻击。由于认证消息中使用时间戳和nonce双重认证参数,使攻击者难以修改其中参数,如果使用相同的nonce则重放攻击请求会被服务端自动忽略,从而攻击者无法进行重放攻击。

(2)抗中间人攻击:假设攻击者试图进行中间人攻击。移动终端的请求api中采用RSA算法私钥加密签名,攻击者无法获得sign中的参数,无法进行中间人攻击。由此可见,改进的基于时间戳认证方法能够有效抵抗目前已知的多种攻击方法,同可靠的超轻量级LiCi算法一起,能为移动智能终端提供可靠的安全保障。

3.2 性能分析

移动智能终端采用OC语言,以Xcode为开发工具,测试平台为iPhone6s手机,搭载主频为1.8GHz,苹果A9处理器,iOS10操作系统,一台部署了Apache的Web服务器及Mysql 5.5版本的数据库。测试网络为无线局域网络。运行移动智能终端程序后,进入应用主界面,获取测试文件列表,如图5所示。

实验中对不同格式、不同大小的文件加解密時间进行测试,数据如表2所示。实验中的测试加/解密时间分别指本地加密时间(不包含密文上传时间)和本地解密时间 (加密文件下载到本地开始计时到文件解密完毕),因为这之间不涉及到网络耗时,所以数据测试更准确。表格中的数据以Xcode开发平台控制台输出为准。

4 结语

本文提出了基于改进的超轻量级LiCi算法的移动智能终端信息存储模型。案例研发及实验验证表明,该系统能有效保障移动智能终端用户数据的安全性。但当用户名和密码都被获取的情况下,黑客可在平台登录进而盗取用户数据,因此下一步的研究重点是如何预防伪造攻击,或者当用户发现自己的用户名和密码丢失的情况下如何采取补救措施。

参考文献:

[1] 冉娟,李晓宇.基于秘密共享协议的移动数据存储研究[J].计算机科学,2016,43(4):145-149.

[2] 余琦,凌捷.基于HDFS的云存储安全技术研究[J].计算机工程与设计,2013,34(8):2700-2705.

[3] 陈超群,李志华,闫成雨,等.移动智能终端信息防泄漏模型的研究及应用[J].计算机工程与设计,2016,37(10):2632-2638.

[4] PATIL J, BANSOD G, KANT K S. LiCi: A new ultra-lightweight block cipher[C].2017 International Conference on Emerging Trends & Innovation in ICT (ICEI) Pune Institute of Computer Technology, Pune, India, Feb 3-5,2017.

[5] ALIOTO M, BONGIOVANNI S, SCOTTI G, et al. Leakage power analysis attacks against a bit slice implementation of the serpent block cipher[C].Proceeding soft the 21st International Conference on Mixed Design of Integrated Circuits and Systems. Poland: IEEE Press,2014:241-246.

[6] BOGDANOV A, LEANDER G, KNUDSEN L R, et al. PRESENT-an ultraLightweight block cipher[J]. In P. Paillier and I. Verbauwhede, editors, Cryptographic Hardware and Embedded Systems—Springer Berlin Heidelberg,2007(4727):450-466.

[7] LEE C H. Biclique cryptanalysis of PRESENT-80 and PRESENT-128[J]. The Journal of Supercomputing October 2014,70(1):95-103.

[8] 惠越超,汪一鳴.基于S盒优化的轻量级加密算法设计[J].通信技术,2010,43(5):103-108.

[9] 钟声,邱钢,孙红兵.基于时间戳的密码认证方案[J].计算机应用,2006(26):295-301.

[10] BANSOD G, PATIL A, SUTAR S, et al. An ultra lightweight encryption design for security in pervasive computing[C].IEEE International Conference on High Performance and Smart Computing (HPSC), and IEEE International Conference on Intelligent Data and Security (IDS),2016.

[11] 李悦,李玮,曹艳琴,等.几种轻量级分组密码算法的性能分析[J].计算机应用与软件,2016,33(10):317-320.

[12] 李悦,李乾文,王高丽,等.基于轻量级加密算法的手机短信加密软件[J].计算机系统应用,2016,25(11):151-155.

(责任编辑:杜能钢)

猜你喜欢
解密
解密维也纳新年音乐会
炫词解密
解密“一包三改”
炫词解密
炫词解密
解密九宫格
解密后
解密坐标系中的平移变换
“三数”档案解密
解密“黑匣子”