CN107657187A - 一种应用于Android系统的键盘输入方法和系统 - Google Patents

一种应用于Android系统的键盘输入方法和系统 Download PDF

Info

Publication number
CN107657187A
CN107657187A CN201710905834.0A CN201710905834A CN107657187A CN 107657187 A CN107657187 A CN 107657187A CN 201710905834 A CN201710905834 A CN 201710905834A CN 107657187 A CN107657187 A CN 107657187A
Authority
CN
China
Prior art keywords
key assignments
password
sequence
dummy keyboard
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710905834.0A
Other languages
English (en)
Inventor
张子锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PAX Computer Technology Shenzhen Co Ltd
Original Assignee
PAX Computer Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PAX Computer Technology Shenzhen Co Ltd filed Critical PAX Computer Technology Shenzhen Co Ltd
Priority to CN201710905834.0A priority Critical patent/CN107657187A/zh
Publication of CN107657187A publication Critical patent/CN107657187A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本发明属于信息安全技术领域,提供了一种应用于Android系统的键盘输入方法和系统,所述方法包括:若应用中触发密码输入事件,安全芯片生成随机的键值序列;密码服务模块基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引;触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列;所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码;当所述密码输入事件完成后,所述安全芯片将所述密码发送至所述应用。通过本发明可有效解决现有技术在键盘上输入密码时,密码容易被网络黑客窃取,导致用户的个人信息安全无法得到保障的问题。

Description

一种应用于Android系统的键盘输入方法和系统
技术领域
本发明属于信息安全技术领域,尤其涉及一种应用于Android系统的键盘输入方法和系统。
背景技术
Android系统是目前最流行的操作系统平台,由于其开放性高、可扩展性强,兼容多种应用程序,因此安装在Android系统中的各种应用程序已经成为人们日常生活中重要的组成部分。然而目前在应用程序使用过程中,用户往往需要在键盘中输入密码才能对应用程序进行操作;以财务管理类应用程序为例,用户在登录财务管理类应用程序时,需要输入登录密码和支付密码才能在财务管理类应用程序中完成转账和汇款操作;现有技术通过Android系统的网络应用层获取用户的输入密码按键值,该按键值即为密码密文,再将该按键值发送至Android系统核心处理层,验证用户的登录信息,同时用户可在该网络应用层多次输入密码按键值。
因此,现有技术中存在以下安全漏洞:由于密码密文的获取、存储以及核对各个环节都在Android系统的控制层完成,而Android系统的开放性极高,安全防护等级较低,则用户在键盘中输入密码密文的任何一个环节都极易地被外界不法分子入侵并窃取相应的密码密文,从而造成用户输入的密码密文泄漏。
发明内容
本发明提供一种应用于Android系统的键盘输入方法和系统,旨在解决现有技术在键盘中输入密码时,易遭到黑客窃取和密码密文容易被泄漏的问题。
本发明第一方面提供一种应用于Android系统的键盘输入方法,所述方法包括:
若应用中触发密码输入事件,安全芯片生成随机的键值序列;
密码服务模块基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引;
触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列;
所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码;
当所述密码输入事件完成后,所述安全芯片将所述密码发送至所述应用。
本发明第二方面提供一种应用于Android系统的键盘输入系统,所述键盘输入系统包括:
安全芯片,若应用中触发密码输入事件,所述安全芯片生成随机的键值序列;
密码服务模块,基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引;
触屏模块,通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列;
所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码;
当所述密码输入事件完成后,所述安全芯片将所述密码发送至所述应用。
本发明与现有技术相比存在的有益效果是:本发明采用分层控制的方法,触摸屏模块只获取按键索引序列,安全芯片只生成随机的键值序列,所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码,各个模块之间相互独立工作,即使网络黑客在用户密码输入过程中通过入侵Android系统窃取该按键索引序列,由于无法获取相应的键值序列,网络黑客也无法得到密码密文,并且由于安全芯片的安全防护等级极高,外界的不法分子无法暴力入侵该安全芯片,极大地提高了用户密码的安全性;从而有效地解决了现有技术中,用户在键盘输入密码时,易遭到网络黑客攻击导致密码外泄,用户个人信息无法得到保障的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种应用于Android系统的键盘输入方法的实现流程图;
图2是本发明实施例提供的一种应用于Android系统的键盘输入方法应用场景示意图;
图3是本发明实施例提供的当虚拟键盘的键值索引排列顺序会发生随机改变后,所述应用于Android系统的键盘输入方法的应用场景示意图;
图4是本发明实施例提供的一种应用于Android系统的键盘输入系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要首先说明的是,本发明中的Android(安卓)系统是一个以Linux为基础的开源移动设备操作系统,可用于智能手机和平板电脑,经过多年的发展,Android系统以其优越的性能以及良好的兼容性已经成为目前应用最广泛的操作系统,在实际应用中,Android系统包含多个版本:Android系统5.0和Android系统6.0等,本发明中所指的Android系统可以包含目前用户使用的所有不同版本,优选的,本发明的键盘输入方法可以应用在最新版本的Android系统中;
需要指出的是,目前Android系统主要的优点是:Android平台提供给第三方开发商一个十分宽泛、自由的环境,开放的平台允许任何移动终端厂商加入到Android系统中来,显著的开放性兼容各类应用程序,这也使得Android系统成为目前市场最为流行操作系统的最主要原因。Android系统主要的缺点为:由于Android系统的开发者一直以开发性作为该系统最显著的特色,并且由于Android系统几乎对外“不设安全防范”措施,导致Android系统成为网络黑客最重要攻击的目标,外界不法分子极容易通过入侵Android系统窃取用户的密码数据信息,导致用户的个人信息受到安全威胁。
图1示出了本发明实施例提供的应用于Android系统的键盘输入方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
步骤S101:若应用中触发密码输入事件,安全芯片生成随机的键值序列。
可选的,用户在应用中既可以通过触发网络控件也可以通过触发物理按键的方式触发密码输入事件,其中所述的安全芯片是一个独立于Android系统进行密钥生成、加解密的装置,内部拥有独立的处理器和存储单元,可存储密钥和特征数据,为用户输入的密码提高加密和安全认证服务,所述安全芯片进行独立的加解密,密钥被存储在硬件中,即使数据在传输过程中被窃取也无法解密;例如,当用户触发应用中的一个网络控件,该网络控件的功能为:在所述应用中输入密码,则此时安全芯片根据用户所触发的密码输入事件生成随机的键值序列,该键值序列为:abcdefghi,并将该键值序列存储在所述安全芯片中,以防外界不法分子盗取,从而极大地保护了密码原文的安全性。
步骤S102:密码服务模块基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引。
具体的,用户可以在所述密码服务模块生成的虚拟键盘中输入相应的密码,所述键值序列中的每一键值与所述虚拟键盘中的每一键值索引为一一对应,需要重点说明的是,所述键值序列并不等于键值索引序列,这两者只是具有相对应的关系。例如,在步骤S101中,安全芯片生成随机的键值序列为:abcdefghi,此时,密码服务模块基于该键值序列生成虚拟键盘,若该虚拟键盘中的键值索引为:123456789,则所述键值序列中的每一键值与所述虚拟键盘中的每一键值索引具有一一对应关系,比如,所述键值序列中的第一个键值“a”对应于所述虚拟键盘中的第一个键值索引“1”,…,所述键值序列中的第九个键值“i”对应于所述虚拟键盘中的第九个键值索引“9”,依次类推,可以得出所述键值序列中的每一个键值与所述虚拟键盘中每一个键值索引之间的对应关系。
步骤S103:触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列。
具体的,当用户需要输入密码时,需要在触摸屏中点击相应位置,即触屏操作;其中所述触摸屏的种类包括:矢量压力传感技术触摸屏、电阻技术触摸屏、电容技术触摸屏、红外线技术触摸屏、表面声波技术触摸屏。由于触摸屏为二维平面屏幕,当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化,在坐标轴的X和Y两个方向上产生信号,然后将该信号发送至触摸屏控制器,控制器侦测到这一接触并计算出X和Y的位置,即获取用户在所述虚拟键盘中的触屏位置,进一步形成相应的键值索引序列;例如,用户输入的密码为:123456,则用户需要通过触屏操作在所述虚拟键盘中选择特定的触屏位置,若用户输入的6位密码中每一个密码所对应的触屏位置坐标为:第一个密码“1”对应的坐标A点(0,0),第二个密码“2”对应的坐标B点(0,1),…,第五个密码“5”对应的坐标E点(0,5),第六个密码“6”对应的坐标F点(0,6)。根据用户所选择的触屏位置坐标点排列顺序为:ABCDEF,若得到对应的键值索引序列“987654”,其中所述键值索引序列中的每一个键值索引与用户所选择的每一个触屏位置坐标点一一对应,比如所述键值索引序列中的第一个键值索引“9”对应于用户所选择的第一个触屏位置坐标A点(0,0),第二个键值索引“8”对应于用户所选择的第二个触屏位置坐标B点(0,1),…,第五个键值索引“5”对应于用户所选择的第五个触屏位置坐标E点(0,5),第六个键值索引“4”对应于用户所选择的第六个触屏位置坐标F点(0,6),从而可得到了用户输入的密码对应的键值索引序列为“987654”。
步骤S104:所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码;
具体的,所述安全芯片根据所述键值索引序列中每一键值索引与所述键值序列中的每一键值的对照关系解析出所述的密码,并将该密码存储在所述安全芯片中;例如,所述键值索引序列为:153482,所述键值序列为:asdfghjkl,将该键值索引序列中的每一个键值索引分别与该键值序列中的每一键值进行对照解析,如第一个键值索引“1”对照所述键值序列中的第一个键值“a”,得到第一个键值索引“1”对应的第一个密码值为“a”;第二个键值索引“5”对照所述键值序列中的第五个键值“g”,得到第二个键值索引“5”对应的密码值为“g”;依次类推,将所述键值索引序列中每一键值索引与所述键值序列中的每一键值一一对照解析,得到完整的密码为:agdfks。
步骤S105:当用户的触屏操作结束后,所述安全芯片将所述密码发送至所述应用。
可选的,所述安全芯片通过一条专用数据通路将所述密码发送至所述应用,该专用数据通路具有内部封闭性,具有更高的传输安全性,当所述应用接收所述密码后,验证用户的身份信息,从而完成密码输入操作。
优选的,将所述密码进行压缩,得到数据压缩包,将该数据压缩包通过所述专用数据通路输出至所述应用,该应用对数据压缩包进行解压得到所述密码,由于在实际数据输出过程当中,用户输入的密码往往极为复杂,信息量较大,所述的密码中某些符号或者数字可能会重复出现,可以在传输密码数据时去除或者减少这些冗余的数据部分,由于数据压缩包所占用的存储空间较小,在专用数据通路中传输的速率更快,并且数据压缩包中所存储的信息也不容易丢失,具有更高的密码传输安全性。
本发明实施例中,由安全芯片生成键值序列,密码服务模块基于所述键值序列生成了虚拟键盘,触屏模块获取了用户输入的密码对应的键值索引序列,只有安全芯片才能基于所述键值索引序列和所述键值序列解析出所述密码,因此通过分层控制的方法,密码输入的不同阶段由各个模块独立完成,即使外界不法分子在密码输入过程中窃取了键值索引序列,由于所述键值序列存储在安全芯片中,不法分子无法仅凭键值索引序列得到用户输入的密码,从而极大地提高了用户密码的安全性,从而有效地解决了现有技术中用户在密码键盘输入密码时,相应的密码易遭到网络黑客窃取的问题。
优选的,在用户的触屏操作过程中,若所述虚拟键盘中有按键输入,所述安全芯片向所述密码服务模块返回关于该按键输入的键值反馈,所述键值反馈的内容为星号,并由所述密码服务模块存储该键值反馈。其中星号是指“*”,反馈也可以为“#”号等其它特殊字符,该键值反馈主要为了显示用户输入密码的数量以及状态,其中即可以通过移动终端的物理按键也可以通过所述虚拟键盘中软按键来触发相应的事件;需要说明的是,该键值反馈与所述键值索引序列并没有任何对应关系,所述键值反馈与所述键值序列中的键值也没有任何对应关系,所述密码服务模块接收的键值反馈仅仅为一个特殊符号,所述键值反馈与所述密码也没有任何对应关系。
进一步的,若应用中触发反馈清除事件,则所述密码服务模块清除该键值反馈;需要说明的是,这里所述清除该键值反馈是指:既可以是清除所述密码服务模块中存储的全部键值反馈,也可只清除所述密码服务模块中存储的其中一个键值反馈;
例如,所述密码服务模块存储所述键值反馈为“****”,若用户通过所述虚拟键盘中的软按键触发反馈清除事件后,所述密码服务模块将所述键值反馈全部清除,则此时所述密码服务模块中已经没有所述键值反馈;
例如,所述密码服务模块存储所述键值反馈为“****”,若用户通过所述虚拟键盘中的软按键触发反馈清除事件后,所述密码服务模块只是将其中的一个所述键值反馈清除,则此时所述密码服务模块存储所述键值反馈为“***”。
若应用中触发反馈取消事件,则所述密码服务模块通知所述应用退出所述密码输入事件,此时用户中断密码输入过程;
若应用中触发反馈确认事件,则所述密码服务模块通知所述应用完成所述密码输入事件,此时用户的触屏操作已经结束。
可选的,在所述密码服务模块基于所述安全芯片生成的所述键值序列生成虚拟键盘之后,所述触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列之前,还包括:所述密码服务模块将所述虚拟键盘绘制于终端显示界面的顶层;其中所述顶层是指由于所述虚拟键盘是一种程序界面,而不同的程序界面之间可以相互覆盖,而用户的终端显示界面可能包括多种应用的程序界面,为了能够获取用户在所述虚拟键盘中输入的键值索引序列,用户可以直接通过触屏操作在所述虚拟键盘选择特定的触屏位置,需要将所述虚拟键盘绘制在终端显示界面中所有应用界面的顶层,从而避免了恶意应用界面对所述虚拟键盘的覆盖,提高了用户输入的键值索引序列安全性。
可选的,所述密码服务模块基于所述键值序列生成虚拟键盘,具体包括:在所述触屏操作中,所述虚拟键盘每完成一次按键输入,所述密码服务模块基于所述键值序列随机生成一次虚拟键盘。为了防止外界人员通过用户的习惯性输入位置以及通过暴力解码操作获取用户的输入密码,所述虚拟键盘每完成一次按键输入,所述密码服务模块基于所述键值序列随机生成一次虚拟键盘,其中在每次所述密码服务模块基于所述键值序列随机生成虚拟键盘过程中,所述键值序列中的键值与所述虚拟键盘中的键值索引之间的对应关系并没有改变,只是所述虚拟键盘的键值索引排列顺序发生改变,针对一个特定的应用,可能用户每次输入的密码都相同,但是用户在所述虚拟键盘中的触屏位置排列情况却并不相同,相应的,外界人员就无法从用户习惯性输入位置来获取用户的键值索引序列,提高了用户输入密码的保密性。
为了更好的理解本实施例,下面结合图2,通过一个具体的应用场景来说明本实施例:
用户需要登录某一应用程序,该应用程序安装在该Android系统中,该应用程序的功能为:将自己账户里的钱打入对方账户内,在使用该应用程序时,需要先输入该应用程序的登录密码,其中所述登录密码已经提前设置;首先用户在移动终端201中启动该应用程序,所述安全芯片202随机生成键值序列,若该键值序列为:qwerty uiopa,基于该键值序列,则移动终端201跳转到相关显示界面,该显示界面主要包括虚拟键盘以及终端显示区域,该虚拟键盘在所述移动终端201显示界面的顶层,包括“0-9”以及“,”、“.”、“清除”、“取消”、“确认”的键值索引,该显示区域主要用于显示图像以及文字,所述虚拟键盘中的每一个键值索引与所述键值序列中的每一键值的对应规则如表1所示:
表1键值索引与键值之间的对应关系表
键值索引 键值 键值索引 键值
1 q 8 u
2 w 9 i
3 e 0 o
4 r , p
5 t . a
6 y 清除
7 空格 取消
确认
若用户登录该应用程序的密码数值为163824546,则用户在显示屏中选择所述虚拟键盘中的键值索引,用户在所述虚拟键盘中输入的键值索引序列为:163824546,将键值索引序列发送至所述安全芯片202,所述安全芯片202根据表1中键值索引与键值之间的对应关系解析出密码,比如用户输入的第一个键值索引为“1”对应的键值为“q”,用户输入的第二个键值索引为“6”对应的键值为“y”,…,用户输入的最后一个键值索引为“6”对应的键值为“y”,依次类推,从而用户输入的键值索引序列:163824546解析出来的密码为:qyeuwrtry,当用户输入密码结束时,所述安全芯片202将所述密码qyeuwrtry发送至应用程序中,并与用户提前设定的登录密码核对,若核对完全正确,则登录该应用程序。
优选的,若用户输入密码时,所述虚拟键盘中每当有按键输入,所述安全芯片202就返回该按键输入的键值反馈,该键值反馈的内容为星号“*”,并且将所述安全芯片202返回的键值反馈显示在所述移动终端201显示界面的特定显示区域;比如当用户输入的键值索引序列为:163824546,则所述安全芯片202返回的键值反馈为:*********,并将该键值反馈显示在所述移动终端201显示界面的特定显示区域。
若用户在所述虚拟键盘中输入的前三个键值索引序列为:654,则所述安全芯片202返回的键值反馈为:***,用户发现自己输入的前三个密码有误,此时用户直接选择触发相应的物理按键,该物理按键的功能为清除全部的所述键值反馈,则将所述安全芯片202已经返回的键值反馈全部被清除,这表示用户先前输入的键值索引序列有误,需要在所述虚拟键盘中重新输入键值索引序列:163824546。
若用户在所述虚拟键盘中输入第三个键值索引序列时,把第三个键值索引“3”误输入为键值索引“9”,所述安全芯片202返回的键值反馈为:***,此时用户直接选择触发另一个物理按键,该物理按键的功能为将其中的一个所述键值反馈清除,则此时的键值反馈为:**,用户需要重新输入第三个正确的键值索引。
若用户在输入第三个键值索引后,直接选择触发另一个物理按键,该物理按键的功能为:退出该应用程序中的密码输入事件,则表示用户中断了在所述虚拟键盘的密码输入过程。
若用户在输入第三个键值索引后,直接选择触发另一个物理按键,该物理按键的功能为:通知该应用程序完成所述密码输入事件,则表示用户在移动终端201的触屏操作已经结束,用户已经在所述虚拟键盘中输入了键值索引序列:163824546,可以对应用程序进行下一步操作。
可选的,当用户在所述虚拟键盘中输入键值索引序列时,若用户在移动终端201进行触屏操作时,所述虚拟键盘每完成一次按键输入,所述虚拟键盘的键值索引排列顺序会发生随机改变,其中,所述键值序列中的键值与所述虚拟键盘中的键值索引之间的对应关系并没有改变;例如,当用户输入第一个键值索引“1”之前,所述键值索引排列顺序如201所示,当用户输入第一个键值索引“1”之后,所述虚拟键盘的键值索引排列顺序如图3所示,图3与图2相比,只是图3中虚拟键盘的键值索引顺序与图2中有所不同,此时用户在移动终端301中的虚拟键盘中才能输入第二个键值索引“6”,与此类似,当用户在所述虚拟键盘中每输入一个键值索引后,则虚拟键盘的键值索引排列顺序就会发生随机变化,从而有利于用户输入密码的保密性。
从上述应用场景可以看出,本发明实施例将用户输入的密码在各个模块中存储,只有安全芯片才能根据所述键值索引序列和所述键值序列解析出密码,极大地提高了所述密码的安全性,即使网络黑客通过攻击Android系统窃取用户在所述虚拟键盘中输入的键值索引序列,但是该键值索引序列与密码并没有直接的联系,外界的不法分子也不能根据该键值索引序列获取用户的身份信息,从而有效地克服了现有技术中,用户在键盘输入密码的各个阶段全部在Android系统控制层完成,导致用户密码易遭到外界泄漏的不足。
另外,由于本实施例提供的应用场景只用于解释本发明,并不限定本发明的保护范围。
图4示出了本发明实施例提供的应用于Android系统的键盘输入系统的结构示意图,所述键盘输入系统40包括:
安全芯片401,若应用中触发密码输入事件,所述安全芯片401生成随机的键值序列;
密码服务模块402,基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引;
触屏模块403,通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列;
所述安全芯片401基于所述键值索引序列和所述键值序列,解析出所述密码;
当所述密码输入事件完成后,所述安全芯片401将所述密码发送至所述应用。
可选的,所述键盘输入系统40还包括:
在用户的触屏操作过程中,若所述虚拟键盘中有按键输入,所述安全芯片401向所述密码服务模块402返回关于该按键输入的键值反馈,所述键值反馈的内容为星号。
可选的,所述键盘输入系统40还包括:
若应用中触发反馈清除事件,则所述密码服务模块402清除该键值反馈;
若应用中触发反馈取消事件,则所述密码服务模块402通知所述应用退出所述密码输入事件;
若应用中触发反馈确认事件,则所述密码服务模块402通知所述应用完成所述密码输入事件。
可选的,在所述密码服务模块402基于所述安全芯片401生成的所述键值序列生成虚拟键盘之后,所述触屏模块403通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列之前,还包括:
所述密码服务模块402将所述虚拟键盘绘制于终端显示界面的顶层。
可选的,所述密码服务模块402基于所述键值序列生成虚拟键盘,具体包括:
在所述触屏操作中,所述虚拟键盘每完成一次按键输入,所述密码服务模块402基于所述键值序列随机生成一次虚拟键盘。
通过本实施例,将用户密码输入分为三个模块单独进行操作,其中,只能由所述安全芯片基于所述键值索引序列和所述键值序列才能解析出所述密码,并且所述安全芯片的安全防范级别极高,网络黑客无法通过非法入侵所述安全芯片来获取所述密码原文,从而极大地提高了用户信息的安全性;有效地解决了现有的键盘输入方法中,用户的密码易遭到外界分子窃取,对于网络黑客的攻击防范级别较低的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种应用于Android系统的键盘输入方法,其特征在于,所述方法包括:
若应用中触发密码输入事件,安全芯片生成随机的键值序列;
密码服务模块基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引;
触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列;
所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码;
当所述密码输入事件完成后,所述安全芯片将所述密码发送至所述应用。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在用户的触屏操作过程中,若所述虚拟键盘中有按键输入,所述安全芯片向所述密码服务模块返回关于该按键输入的键值反馈,所述键值反馈的内容为星号。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若应用中触发反馈清除事件,则所述密码服务模块清除该键值反馈;
若应用中触发反馈取消事件,则所述密码服务模块通知所述应用退出所述密码输入事件;
若应用中触发反馈确认事件,则所述密码服务模块通知所述应用完成所述密码输入事件。
4.根据权利要求1所述的方法,其特征在于,在所述密码服务模块基于所述安全芯片生成的所述键值序列生成虚拟键盘之后,所述触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列之前,还包括:
所述密码服务模块将所述虚拟键盘绘制于终端显示界面的顶层。
5.根据权利要求1所述的方法,其特征在于,所述密码服务模块基于所述键值序列生成虚拟键盘,具体包括:
在所述触屏操作中,所述虚拟键盘每完成一次按键输入,所述密码服务模块基于所述键值序列随机生成一次虚拟键盘。
6.一种应用于Android系统的键盘输入系统,其特征在于,所述键盘输入系统包括:
安全芯片,若应用中触发密码输入事件,所述安全芯片生成随机的键值序列;
密码服务模块,基于所述键值序列生成虚拟键盘,所述键值序列中的每一键值依序对应所述虚拟键盘中的每一键值索引;
触屏模块,通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列;
所述安全芯片基于所述键值索引序列和所述键值序列,解析出所述密码;
当所述密码输入事件完成后,所述安全芯片将所述密码发送至所述应用。
7.根据权利要求6所述的键盘输入系统,其特征在于,所述键盘输入系统还包括:
在用户的触屏操作过程中,若所述虚拟键盘中有按键输入,所述安全芯片向所述密码服务模块返回关于该按键输入的键值反馈,所述键值反馈的内容为星号。
8.根据权利要求7所述的键盘输入系统,其特征在于,所述键盘输入系统还包括:
若应用中触发反馈清除事件,则所述密码服务模块清除该键值反馈;
若应用中触发反馈取消事件,则所述密码服务模块通知所述应用退出所述密码输入事件;
若应用中触发反馈确认事件,则所述密码服务模块通知所述应用完成所述密码输入事件。
9.根据权利要求6所述的键盘输入系统,其特征在于,在所述密码服务模块基于所述安全芯片生成的所述键值序列生成虚拟键盘之后,所述触屏模块通过检测用户的触屏操作在所述虚拟键盘中的触屏位置,获取用户输入的密码对应的键值索引序列之前,还包括:
所述密码服务模块将所述虚拟键盘绘制于终端显示界面的顶层。
10.根据权利要求6所述的键盘输入系统,其特征在于,所述密码服务模块基于所述键值序列生成虚拟键盘,具体包括:
在所述触屏操作中,所述虚拟键盘每完成一次按键输入,所述密码服务模块基于所述键值序列随机生成一次虚拟键盘。
CN201710905834.0A 2017-09-29 2017-09-29 一种应用于Android系统的键盘输入方法和系统 Pending CN107657187A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710905834.0A CN107657187A (zh) 2017-09-29 2017-09-29 一种应用于Android系统的键盘输入方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710905834.0A CN107657187A (zh) 2017-09-29 2017-09-29 一种应用于Android系统的键盘输入方法和系统

Publications (1)

Publication Number Publication Date
CN107657187A true CN107657187A (zh) 2018-02-02

Family

ID=61116322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710905834.0A Pending CN107657187A (zh) 2017-09-29 2017-09-29 一种应用于Android系统的键盘输入方法和系统

Country Status (1)

Country Link
CN (1) CN107657187A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109101116A (zh) * 2018-07-24 2018-12-28 深圳享米科技有限公司 iOS终端设备安全键盘及其实现方法
CN110764628A (zh) * 2019-10-31 2020-02-07 浪潮金融信息技术有限公司 一种使用金属密码键盘作为系统键盘的方法
CN112927443A (zh) * 2019-12-06 2021-06-08 中国移动通信集团重庆有限公司 激光矩阵键盘的随机按键实现方法、装置及上位机
CN113672407A (zh) * 2021-08-24 2021-11-19 深圳技德终端技术有限公司 一种Linux兼容Android的键盘输入控制方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923619A (zh) * 2009-06-15 2010-12-22 鸿富锦精密工业(深圳)有限公司 密码按键伪装系统及方法
CN102117393A (zh) * 2011-01-04 2011-07-06 惠州Tcl移动通信有限公司 移动终端密码输入方法及移动终端
CN102880305A (zh) * 2012-09-24 2013-01-16 广东欧珀移动通信有限公司 一种键盘输入加密方法及其移动终端
CN103902056A (zh) * 2012-12-28 2014-07-02 华为技术有限公司 虚拟键盘输入方法、设备及系统
CN105760741A (zh) * 2016-02-19 2016-07-13 北京智能果技术有限公司 密码输入方法、安全芯片及系统
CN106022017A (zh) * 2016-05-06 2016-10-12 平安科技(深圳)有限公司 通过虚拟键盘实现密码输入的方法、装置和系统
CN106600854A (zh) * 2016-12-14 2017-04-26 艾体威尔电子技术(北京)有限公司 Pos机的se端接管安卓屏幕的密码键盘系统及其方法
CN106909858A (zh) * 2015-12-23 2017-06-30 阿里巴巴集团控股有限公司 密码输入方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923619A (zh) * 2009-06-15 2010-12-22 鸿富锦精密工业(深圳)有限公司 密码按键伪装系统及方法
CN102117393A (zh) * 2011-01-04 2011-07-06 惠州Tcl移动通信有限公司 移动终端密码输入方法及移动终端
CN102880305A (zh) * 2012-09-24 2013-01-16 广东欧珀移动通信有限公司 一种键盘输入加密方法及其移动终端
CN103902056A (zh) * 2012-12-28 2014-07-02 华为技术有限公司 虚拟键盘输入方法、设备及系统
CN106909858A (zh) * 2015-12-23 2017-06-30 阿里巴巴集团控股有限公司 密码输入方法及装置
CN105760741A (zh) * 2016-02-19 2016-07-13 北京智能果技术有限公司 密码输入方法、安全芯片及系统
CN106022017A (zh) * 2016-05-06 2016-10-12 平安科技(深圳)有限公司 通过虚拟键盘实现密码输入的方法、装置和系统
CN106600854A (zh) * 2016-12-14 2017-04-26 艾体威尔电子技术(北京)有限公司 Pos机的se端接管安卓屏幕的密码键盘系统及其方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109101116A (zh) * 2018-07-24 2018-12-28 深圳享米科技有限公司 iOS终端设备安全键盘及其实现方法
CN110764628A (zh) * 2019-10-31 2020-02-07 浪潮金融信息技术有限公司 一种使用金属密码键盘作为系统键盘的方法
CN110764628B (zh) * 2019-10-31 2023-06-27 浪潮金融信息技术有限公司 一种使用金属密码键盘作为系统键盘的方法
CN112927443A (zh) * 2019-12-06 2021-06-08 中国移动通信集团重庆有限公司 激光矩阵键盘的随机按键实现方法、装置及上位机
CN113672407A (zh) * 2021-08-24 2021-11-19 深圳技德终端技术有限公司 一种Linux兼容Android的键盘输入控制方法及装置

Similar Documents

Publication Publication Date Title
Bojinov et al. Kamouflage: Loss-resistant password management
Zhu et al. Captcha as graphical passwords—A new security primitive based on hard AI problems
CN108769027B (zh) 安全通信方法、装置、移动终端和存储介质
US20170193236A1 (en) Data security processing method and apparatus based on switch in dual system
US20180196952A1 (en) Method for securely transmitting a secret data to a user of a terminal
CN107273736B (zh) 密码输入方法、装置、计算机设备和存储介质
CA2969493C (en) System and method for enabling secure authentication
CN107657187A (zh) 一种应用于Android系统的键盘输入方法和系统
CN101794365B (zh) 在移动终端上安全输入信息的方法及移动终端
EP2936277B1 (en) Method and apparatus for information verification
CN102880560A (zh) 用户隐私数据保护方法以及使用该方法的移动终端
CN104270353B (zh) 一种信息安全传递方法及系统、接收终端、发送终端
CN104239804A (zh) 一种数据保护方法及装置
GB2514419A (en) Improved user authentication system and method
CN103678962B (zh) 管理个人信息的方法、装置及终端
CN104184900A (zh) 数据处理方法、系统和移动终端
CN114266033A (zh) 验证码生成方法、装置、验证码登录系统及电子设备
Perković et al. Breaking undercover: Exploiting design flaws and nonuniform human behavior
KR101228028B1 (ko) 가상 키보드 및 이를 이용한 정보 해킹방지방법
US20150169882A1 (en) System and method for providing graphical dynamic user authentication and device access
CN103795849A (zh) 在便携式终端中针对私密联系人执行操作的设备及方法
KR101122197B1 (ko) 터치 위치 해킹에 의한 정보 유출을 방지하는 가상키패드 표시 방법
US10845990B2 (en) Method for executing of security keyboard, apparatus and system for executing the method
Alsuhibany A camouflage text-based password approach for mobile devices against shoulder-surfing attack
Shin et al. Secure pattern-based authentication against shoulder surfing attack in smart devices

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180202