SM4国密算法在Android内核的汇编语言快速实现
2021-05-10常晓阳杨中皇
郑 东,常晓阳,杨中皇
(1.西安邮电大学 网络空间安全学院,陕西 西安 710121;2.西安邮电大学 通信与信息工程学院,陕西 西安 710121)
Android手机操作系统因其操作快捷、应用众多等优点,目前市场占有率已达到72.21%[1]。根据Android系统的开源性特点,通过修改Android开源项目(Android Open Source Project,AOSP),可实现个性化定制。但是,也正是由于Android开源性的这一特点,使得Android终端上存储的用户隐私数据面临着巨大的安全风险。
随着使用移动设备用户的增加,数据安全作为信息安全的重要组成部分,已成为关系到国家安全的重要因素[2]。市场上的移动智能设备中所采用的核心密码算法均来自美国的高级加密标准(Advanced Encryption Standard,AES)、RSA加密算法和安全散列算法(Secure Hash Algorithm,SHA)等,这些算法不符合中国的商用密码规范,且随着硬件处理速度和解密手段的不断提高,安全性也面临严重挑战[3]。同时,移动智能设备用户的资料预设储存在国外,存在数据安全和隐私泄露风险,难以保护中国消费者的隐私[4]。国家密码管理局也公布了国产密码算法,应用较为广泛的有SM2椭圆曲线公钥密码算法、SM3密码杂凑算法和SM4分组密码算法等3种国家商用密码算法[5]。
目前,国密算法基于Android系统的研究成果众多,主要有:对移动设备的远程管理系统,通过管理移动设备功能与权限,防止恶意者窃取重要数据,提高移动设备的安全性[6];对Android文件的完整性检测,利用SM3密码杂凑算法计算文件的哈希值,并比较同一个文件不同时刻的哈希值,以此判断文件的完整性[7];对Android恶意软件的……
