一种iOS系统下基于密钥拆分保护的移动支付密码键盘及其实现方法技术方案

技术编号:26305332 阅读:23 留言:0更新日期:2020-11-10 20:02
本发明专利技术提出一种iOS系统下基于密钥拆分保护的移动支付密码键盘及其实现方法。本发明专利技术将键盘动态基于国产密码算法对移动支付场景下的敏感信息做加密保护,同时对密钥做了拆分处理,增加了攻击者获取完整密钥进行破解的难度。在键盘生成时,键盘动态显示。在键盘输入数据时,实现逐字即时加密,由数字信封技术保障安全传输,使前后端密文信息同步。对代码进行混淆保护,防止反编译攻击、逆向分析。本发明专利技术采用SDK方式易于部署和实现,避免了移动支付应用开发安全键盘的复杂度。

【技术实现步骤摘要】
一种iOS系统下基于密钥拆分保护的移动支付密码键盘及其实现方法所属
:本专利技术涉及信息安全领域,涉及IOS移动终端设备的一种密钥拆分保护的密码键盘及其实现方法。
技术介绍
:目前互联网技术快速发展,用户使用移动终端在网络环境中面临着各种威胁。在移动支付应用中,大量的个人隐私敏感数据如银行卡信息、身份信息和密码信息等会从系统键盘输入输出,从而暴露在不安全的环境中。攻击者可进行一系列基于键盘输入窃取的攻击行为,如对系统键盘进行数据监听、数据篡改,在输入时进行截屏、录屏攻击等。为了保护个人的数据隐私及安全,往往对服务器数据存储安全、客户端与服务器间的数据通讯安全做很好的加密保护,但却经常忽略了数据的第一入口保护。尤其在移动支付应用中,用户录入敏感信息时,应避免使用系统键盘,而使用自己定制的更加安全的键盘来保障用户的信息安全。但是,一般的安全密码键盘在加密时密钥会在内存中和本地存储时完整出现,攻击者可以利用此漏洞计算得到明文信息。而且一般的安全键盘在密码运算时并没有采用国产密码算法,如果“门锁”都是用国外技术、国外制造,就等同于安全的大门彻底敞开,面临重大安全风险。针对移动支付应用中键盘安全威胁的存在,为解决用户在移动支付时敏感信息输入的安全问题,本专利技术提出了一种iOS系统下基于密钥拆分保护的移动支付密码键盘实现方法。
技术实现思路
:本专利技术所述的一种iOS系统下基于密钥拆分保护的移动支付密码键盘,主要由客户端密码键盘SDK和服务端的密码键盘服务平台构成,是采用国密算法SM2、SM3、SM4进行数据的安全加密保护,并将私钥进行分散加密存储,计算时不会出现完整的私钥明文。所述的服务端的密码键盘服务平台实现数字信封的验证、解封与解密功能,得到用户密码原文。所述密码键盘SDK中包括数据加密模块,密码键盘模块,安全传输模块。由密码键盘模块获取加密数据,数据加密模块进行加密保护,最后由安全传输模块将密文发送至服务端。所述的密码键盘模块是在IOS系统上绘制随机序列的数字键盘、字母键盘、符号键盘。该模块的设计分为三层。一层为交互层,负责处理用户的界面交互。一层为显示层,负责键盘数据的显示。一层为数据获取层,负责获取键盘输入数据的摘要值。在数据输入过程中,在发生截屏时,监听系统通知,清空键盘数据,关闭交互层功能,自定义通知提示用户,防止用户信息被窃取。所述的数据加密模块完成逐字实时加密。在数据层获取到每个输入数据后,采用SM4算法,使用随机生成的对称密钥进行实时加密保护。所述的安全传输模块采用SM2算法,包括生成设备密钥对和数字信封。该模块提取设备信息,通过密钥拆分算法生成完整的SM2算法私钥数据和公钥数据作为设备密钥对。该模块将通信消息封装成完整的数字信封发送至服务端密码键盘服务平台。密码键盘SDK在使用前,对代码进加壳混淆处理,提供代码保护,防止反编译、逆向分析。本专利技术具有以下有益效果:1)键盘动态显示。提供用户交互的密码键盘界面,实现键盘信息与显示对应,结合键盘信息组装成键盘,且每次键盘显示动态变化。2)采用即时加密技术保证密码键盘输入安全。实现每个键值输入即时加密,确保内存与存储中不出现用户密码原文。3)本地存储的密钥拆分存储,计算中不出现完整密钥。4)采用数字信封技术保证密码在传输过程中的安全。5)所有密码运算均采用国产密码算法,包括SM2,SM3,SM4,从算法上保证了安全性。6)客户端采用SDK方式易于部署和实现。7)密码键盘SDK做代码混淆处理,防范反编译攻击、逆向分析。8)自定义通知,在发生截屏时清空键盘数据,关闭交互层功能,并提示用户,防止用户信息被窃取。附图说明:图1为本专利技术模块结构示意图具体实施方式:下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。所述的服务端的密码键盘服务平台实现数字信封的验证、解封与解密功能,得到用户密码原文。密码键盘SDK中包括数据加密模块,密码键盘模块,安全传输模块。由密码键盘模块获取加密数据,数据加密模块进行加密保护,最后由安全传输模块将密文发送至服务端。所述的密码键盘模块是在IOS系统上绘制随机序列的数字键盘、字母键盘、符号键盘。该模块的设计分为三层。一层为交互层,负责处理用户的界面交互。一层为显示层,负责键盘数据的显示。一层为数据获取层,负责获取键盘输入数据的摘要值。使用系统API绘制键盘时,显示层的键值信息和交互层生成随机的绑定关系。当点击交互层时,可以获取到预置相对应的显示层的指针,即代表键值信息,并将显示的键值做对应的SM3摘要处理,经过变换的数据信息就代表点击的数据信息,从而在数据层不会出现点击时的明文信息。所述的数据加密模块完成逐字实时加密。在数据层获取到每个输入数据的摘要值后,采用SM4算法,使用随机生成的对称密钥进行实时加密保护。每次随机生成的对称密钥不进行存储。所述的安全传输模块采用SM2算法,包括生成设备密钥对和数字信封。首次进行通讯时,该模块提取设备信息,通过密钥拆分算法生成完整的SM2算法私钥数据和公钥数据作为设备密钥对。并生成完整的数字信封发送至服务端密码键盘服务平台。IOS终端设备安全键盘的实现方法,包括如下步骤:1)密码键盘模块绘制键盘图形,显示层和交互层生成随机绑定关系。2)密码键盘模块中对显示层的键值使用SM3算法计算对应的摘要值。3)数据加密模块获取用户当前点击的键值所对应的摘要值,随机生成对称密钥,采用SM4算法,进行实时加密,当用户完成全部输入后,将所有密文按顺序拼接,完整的密文存储在内存中。4)实时监听系统通知,在发生截屏时清空键盘数据,关闭交互层功能,并提示用户,防止用户信息被窃取。5)安全传输模块根据设备信息和随机因子按照密钥拆分算法生成拆分形式的SM2算法密钥对,密钥不完整出现,存储在应用路径下。6)安全传输模块首次与后台安全通信使用SDK预置设备私钥封装完整的数字信封,内容包括设备公钥和设备ID标识。后续通信内容都使用该设备私钥封装完整的数字信封。7)服务端平台收到数字信封要先验证再解封最后解密得到用户密码原文。8)对代码进行混淆处理。本文档来自技高网...

【技术保护点】
1.一种iOS系统下基于密钥拆分保护的移动支付密码键盘及其实现方法其特征在于,由客户端密码键盘SDK和服务端的密码键盘服务平台构成,是采用国密算法SM2、SM3、SM4进行数据的安全加密保护,并将私钥进行分散加密存储,计算时不会出现完整的私钥明文。/n所述的服务端的密码键盘服务平台实现数字信封的验证、解封与解密功能,得到用户密码原文。/n所述的密码键盘SDK中包括数据加密模块,密码键盘模块,安全传输模块。由密码键盘模块获取加密数据,数据加密模块进行加密保护,最后由安全传输模块将密文发送至服务端。/n所述的密码键盘模块是在IOS系统上绘制随机序列的数字键盘、字母键盘、符号键盘。该模块的设计分为三层。一层为交互层,负责处理用户的界面交互。一层为显示层,负责键盘数据的显示。一层为数据获取层,负责获取键盘输入数据的摘要值。在数据输入过程中,在发生截屏时,监听系统通知,清空键盘数据,关闭交互层功能,自定义通知提示用户,防止用户信息被窃取。/n所述的数据加密模块完成逐字实时加密。在数据层获取到每个输入数据后,采用SM4算法,使用随机生成的对称密钥进行实时加密保护。/n所述的安全传输模块采用SM2算法,包括生成设备密钥对和数字信封。该模块提取设备信息,通过密钥拆分算法生成完整的SM2算法私钥数据和公钥数据作为设备密钥对。该模块将通信消息封装成完整的数字信封发送至服务端密码键盘服务平台。/n密码键盘SDK在使用前,对代码进加壳混淆处理,提供代码保护,防止反编译、逆向分析。/n...

【技术特征摘要】
1.一种iOS系统下基于密钥拆分保护的移动支付密码键盘及其实现方法其特征在于,由客户端密码键盘SDK和服务端的密码键盘服务平台构成,是采用国密算法SM2、SM3、SM4进行数据的安全加密保护,并将私钥进行分散加密存储,计算时不会出现完整的私钥明文。
所述的服务端的密码键盘服务平台实现数字信封的验证、解封与解密功能,得到用户密码原文。
所述的密码键盘SDK中包括数据加密模块,密码键盘模块,安全传输模块。由密码键盘模块获取加密数据,数据加密模块进行加密保护,最后由安全传输模块将密文发送至服务端。
所述的密码键盘模块是在IOS系统上绘制随机序列的数字键盘、字母键盘、符号键盘。该模块的设计分为三层。一层为交互层,负责处理用户的界面交...

【专利技术属性】
技术研发人员:刘辛越其他发明人请求不公开姓名
申请(专利权)人:北京创原天地科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1