一种基于鸿蒙系统的密码输入的方法和系统技术方案

技术编号:34552732 阅读:20 留言:0更新日期:2022-08-17 12:38
本发明专利技术公开了一种基于鸿蒙系统的密码输入的方法和系统。所述方法包括:响应于输入密码请求,加载密码输入框,以便在所述密码输入框中接收密码;响应于加载密码输入框,生成自定义键盘;通过所述自定义键盘接收在所述密码输入框中输入的密码;以及对所述密码进行基于内存加密的第一加密和基于SM2数字信封的第二加密。本发明专利技术的密码输入的方案,利用JSON配置语言对键盘进行定制,从而大大提高了键盘界面定制的效率。同时,本发明专利技术的方案通过对输入的密码进行双重加密,从而提高了密码输入的安全性。另外,利用本发明专利技术的密码输入的方案进行密码输入,还可以实现防止第三方键盘替换、键盘钩子窃取密码以及防止截屏或录屏操作等功能。钩子窃取密码以及防止截屏或录屏操作等功能。钩子窃取密码以及防止截屏或录屏操作等功能。

【技术实现步骤摘要】
一种基于鸿蒙系统的密码输入的方法和系统


[0001]本专利技术一般地涉及操作系统安全领域。更具体地,本专利技术涉及一种基于鸿蒙系统的密码输入的方法和系统。

技术介绍

[0002]智能手机等移动终端的飞速普及已经对人类的生产、生活产生越来越大的影响;其中用户在手机端使用各类金融软件并输入用户密码已经成为一种常见的行为。因此,如何保障密码输入的安全性,已经成为保证用户财产安全的重要问题。目前,手机端常用的密码输入方式是使用手机自带的数字键盘,其包括0

9十个固定的数字按键以及一个确定按键和一个撤销按键。这种键盘的特点在于,这0

9十个数字按键的数字排列顺序固定,因此偷窥者可以通过记住用户的按键顺序,并从手机数字键盘中数字的固定排列顺序推算出用户的密码,从而造成用户的账户和密码的泄漏,进一步导致其资金受到损失。
[0003]除此之外,使用手机自带的系统键盘输入密码还会遇到以下问题。首先,系统键盘在使用过程中有可能会被第三方键盘替换,由此用户输入的密码内容完全暴露于第三方,从而存在将用户的个人隐私暴露于第三方的危险。其次,使用手机自带的系统键盘还容易被不法人员利用键盘钩子技术对输入内容进行监听。在这个过程中,用户在系统键盘上每按下一个键都会向操作系统发出相应的按键事件并携带输入的字符信息,由此第三方可以通过相关程序来进行事件监听,从而获取到当前用户的输入内容。
[0004]进一步地,使用系统键盘进行输入,其输入内容在手机内存中将以明文的形式存在。这样第三方可以利用软件工具通过内存dump的方式来获取内存中的数据,进而分析出明文所在的地址,最终获取用户的密码信息,从而导致安全隐患。再者,当利用系统键盘输入密码时,通过对手机进行截屏或录屏操作可能会将输入框中的内容或键盘的按键反馈状态等信息截取下来,从而造成输入信息的泄露。另外,目前手机使用的系统键盘的外观效果由操作系统决定,因此其模式固定,而针对目前大量涌现的APP软件,系统键盘显然不能与多数的APP的外观相匹配,从而导致APP无法根据自身的配色、图标等定制键盘样式。
[0005]针对上述问题,虽然现有技术中出现一些关于在手机终端上安全输入的解决方案,但是其主要是针对于安卓(Android)和苹果(IOS)系统,而针对于以华为技术有限公司的鸿蒙系统(HarmonyOS)为操作系统的手机来说,并没有相应的密码安全输入的解决方案。例如,为了防止对手机进行截屏或者录屏,现有技术中Android安全控件仅仅是调用了一下系统接口,这样将影响APP在其它场景下正常使用截屏或录屏的功能。进一步地,为了使得输入的密码在传输过程中更加安全,通常需要将密码进行加密处理。对此,现有技术中通常采用AES加密技术,该技术首先通过对输入的密码进行整体AES加密,这样每次输入一个字符就要把先前加密的数据进行解密;接着,再和当前输入的字符拼接起来重新加密。经过这样的加密处理其内存中仍然有很多明文存在,从而使得第三方通过获取这些明文就可以盗取密码。

技术实现思路

[0006]为解决上述
技术介绍
中的一个或多个问题,本专利技术提供了一种基于鸿蒙系统的密码输入的方法和系统。由此,可以实现当在手机端输入密码时,首先关闭系统键盘,接着弹出自定义键盘,以便对通过自定义键盘输入的密码进行加密操作,从而最终实现对密码进行安全输入的效果。为此,本专利技术在如下的多个方面提供解决方案。
[0007]具体地,一方面,本专利技术公开了一种基于鸿蒙系统的密码输入的方法。该方法包括:响应于输入密码请求,加载密码输入框,以便在所述密码输入框中接收密码;响应于加载密码输入框,生成自定义键盘;通过所述自定义键盘接收在所述密码输入框中输入的密码;以及对所述密码进行基于内存加密的第一加密和基于SM2数字信封的第二加密。
[0008]在一个实施例中,在所述生成自定义键盘的过程中,所述方法包括:响应于所述密码输入框获取焦点,关闭系统键盘;解析键盘界面配置数据,以便将其转换成键盘模型数据;根据所述键盘模型数据绘制所述自定义键盘。
[0009]在另一个实施例中,在所述生成自定义键盘的过程中,所述方法还包括:在所述自定义键盘中添加仅包含按键坐标位置的触摸事件,以便防止泄露密码输入过程中的按键字符信息。
[0010]在又一个实施例中,所述键盘界面配置数据包括json配置文件,所述方法还包括:解析所述json配置文件,以获得一个或多个键盘模型的模型数据。
[0011]在一个实施例中,所述键盘界面配置数据还包括json入口文件,其用于指示每个所述json配置文件所对应的键盘类型以及所述json配置文件之间的关系。
[0012]在另一个实施例中,所述json配置文件包括定义所述自定义键盘的按键属性和键盘属性的多个参数。
[0013]在又一个实施例中,在对所述密码进行基于内存加密的第一加密中,所述方法包括:随机生成SM4密钥K1;将接收到的每一个密码字符与随机数进行拼接;使用所述密钥K1进行SM4加密;以及将加密结果存储到密文数组中,从而保证在密码输入后,内存中不存在密码明文。
[0014]在一个实施例中,在对所述密码进行基于SM2数字信封的第二加密中,所述方法包括:将所述密文数组中的数据解密;随机生成SM4密钥K2;利用所述秘钥K2对所述数据解密的结果进行加密以便得到第一加密结果;利用内置的SM2公钥对所述秘钥K2加密得到第二加密结果;以及将所述第一加密结果和第二加密结果组装成SM2数字信封,以作为本次输入的加密结果。
[0015]在另一个方面中,本专利技术还公开了一种基于鸿蒙系统的密码输入的设备。该设备包括:处理器;以及存储器,其存储有用于实现密码安全输入的计算机程序指令,以实现上述实施例中任意一项所述的方法。
[0016]在又一个方面中,本专利技术还公开了一种计算机可读存储介质,其存储有用于实现密码安全输入的计算机程序指令,当所述计算机程序指令由处理器执行时,实现上述实施例中任意一项所述的方法。
[0017]利用上述多个方面及其实施例所描述的方案,本专利技术可以实现对自定义键盘的外观样式进行便捷更换,从而克服了现有技术中的系统键盘模式单一固定,与APP外观不匹配的弊端。进一步地,由于本专利技术在自定义键盘中加入了相应的触摸事件,由此使得第三方无
法通过坐标位置推断出字符信息,从而防止了利用键盘钩子窃取密码。另外,本专利技术的方案对用户输入的密码进行了基于内存加密的第一加密,从而克服了现有技术中输入的密码在内存中以明文形式存储而容易被窃取的弊端。进一步地,通过进行基于SM2数字信封的第二加密,并加入从服务器端发送过来的随机数,由此可以防止第三方重放攻击。另外,本专利技术的方案在自定义键盘弹出时通过调用相关软件方法来关闭系统截屏或录屏的功能,克服了现有技术中手机屏幕容易被截屏或录屏的弊端,从而进一步保证了手机密码输入的安全性。
附图说明
[0018]通过参考附图阅读下文的详细描述,本专利技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于鸿蒙系统的密码输入的方法,包括:响应于输入密码请求,加载密码输入框,以便在所述密码输入框中接收密码;响应于加载密码输入框,生成自定义键盘;通过所述自定义键盘接收在所述密码输入框中输入的密码;以及对所述密码进行基于内存加密的第一加密和基于SM2数字信封的第二加密。2.根据权利要求1所述的方法,其中在所述生成自定义键盘的过程中,所述方法包括:响应于所述密码输入框获取焦点,关闭系统键盘;解析键盘界面配置数据,以便将其转换成键盘模型数据;以及根据所述键盘模型数据绘制所述自定义键盘。3.根据权利要求2所述的方法,其中在所述生成自定义键盘的过程中,所述方法还包括:在所述自定义键盘中添加仅包含按键坐标位置的触摸事件,以便防止泄露密码输入过程中的按键字符信息。4.根据权利要求2所述的方法,其中所述键盘界面配置数据包括json配置文件,所述方法还包括:解析所述json配置文件,以获得一个或多个键盘模型的模型数据。5.根据权利要求2所述的方法,其中所述键盘界面配置数据还包括json入口文件,其用于指示每个所述json配置文件所对应的键盘类型以及所述json配置文件之间的关系。6.根据权利要求4所述的方法,其中所述json配置文件包括定义所述自定义...

【专利技术属性】
技术研发人员:王志勇
申请(专利权)人:中金金融认证中心有限公司
类型:发明
国别省市:

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

1