WO2018053988A1 - Secure input system and method, intelligent terminal, and storage medium - Google Patents

Secure input system and method, intelligent terminal, and storage medium Download PDF

Info

Publication number
WO2018053988A1
WO2018053988A1 PCT/CN2017/073033 CN2017073033W WO2018053988A1 WO 2018053988 A1 WO2018053988 A1 WO 2018053988A1 CN 2017073033 W CN2017073033 W CN 2017073033W WO 2018053988 A1 WO2018053988 A1 WO 2018053988A1
Authority
WO
WIPO (PCT)
Prior art keywords
input
interference
event
character
input event
Prior art date
Application number
PCT/CN2017/073033
Other languages
French (fr)
Chinese (zh)
Inventor
姚均营
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2018053988A1 publication Critical patent/WO2018053988A1/en

Links

Images

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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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

Definitions

  • the present invention relates to communication technologies, and in particular, to a security input system input system and method, and an intelligent terminal and a storage medium.
  • the embodiments of the present invention provide a security input system, a method, and an intelligent terminal, which are used to solve the problem that the input method is easily hacked in the related art, and the information input by the user is easily stolen.
  • a security input system including:
  • An input driver module configured to write a user input event to a device input node file
  • the interference event insertion module is configured to generate an input event for interference when the device input node file is detected to have an input event, and write the input event to the device input node file;
  • An input event processing module configured to read an input event in the device input node file and pass it to an input method program
  • a security input processing module configured to receive a character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and The culled characters are sent to the target program.
  • a secure input device including a memory and a processor, wherein the memory stores executable instructions for causing the processor to perform operations including the following :
  • an intelligent terminal including: the security input device of the present invention.
  • a security input method including:
  • a storage medium where executable instructions are stored, and the executable instructions are used to perform security provided by an embodiment of the present invention. Input method.
  • the security input system and method and the intelligent terminal and the storage medium provided by the embodiment of the present invention insert an interference input event when an input event is input on the user side, and when the character obtained by the input method program is sent to the target program, the character is interfered according to the interference
  • the character obtained by the input event is culled, so that in the case that the input method program is maliciously invaded, the malicious program cannot accurately collect the real content input by the user, thereby achieving the purpose of safe input.
  • the solution according to the embodiment of the present invention can improve the input of the common input method program on the basis of the existing input system, reduce the security risk caused by the input method itself, and greatly improve the safety factor of the product. .
  • FIG. 1 is a structural block diagram of a security input system according to a first embodiment of the present invention
  • FIG. 2 is a schematic diagram of an input system framework when a smart terminal does not adopt a security input system according to a second embodiment of the present invention
  • FIG. 3 is a schematic diagram of an input system framework when a smart terminal adopts a security input system according to a second embodiment of the present invention
  • FIG. 4 is a flow chart of a security input system framework of a smart terminal according to a second embodiment of the present invention.
  • FIG. 5 is a flowchart of implementing a character security input by a smart terminal application security input system according to a second embodiment of the present invention
  • FIG. 6 is a flowchart of a security input method according to a third embodiment of the present invention.
  • the malicious program obtains the input content of the target program through the process injection technology.
  • Process injection is simply a technique that copies a piece of code to a target process and then lets the target process execute the code. Through the process injection technology, a part of the input box can be run in the target program or injected into the input method to obtain the input content.
  • keyboard events through the operating system underlying keyboard events to obtain records, that is, by obtaining the input value of the keyboard input, and then converting the encoded value into keyboard characters, such as in a Linux-based mobile terminal can be recorded by the /dev/input path Enter the device content, get the user input, and complete the intrusion.
  • Solution 1 Touching the terminal security transaction method, the method is installed on the touch terminal by installing the input method, and the installed input method is bound to the transaction program, and the binding input method is used in the transaction program and the switch to the ordinary input method is prohibited. Unsafe input method can be avoided to steal user sensitive information, which reduces the possibility of data being stolen when inputting sensitive data.
  • Scheme 2 A method and terminal for implementing a secure input, the method being applied to a display having a terminal, the terminal comprising a first application, comprising: obtaining an input initial input character, displaying the initial input character in an input box; identifying an input mode of inputting the initial input character; and based on the input mode and a predetermined instruction security policy determining a valid input character corresponding to the initial input character; providing the valid input character to the first application.
  • the instruction security policy identifies and converts the input initial input characters into effective instructions, so that the user can safely input various private information and security information on the terminal without having to worry about the observer in a complicated environment. The security of private and security information is guaranteed.
  • the embodiment of the invention provides a security input system and method, an intelligent terminal and a storage medium.
  • the system automatically adds an interference input event, and after the input method generates a character, the system deletes the system.
  • the interfering characters are automatically added, and then the system process passes the remaining user-entered characters to the target program. In this way, the input method program cannot accurately obtain the real content input by the user, and realizes the safe input of the content.
  • a security input system is provided. As shown in FIG. 1, the system includes: an input driving module 110, an interference event insertion module 120, and an input event processing module. Block 130 and secure input processing module 140.
  • the above module is a division of the architecture of the security input system at the functional level. In actual applications, some modules may be merged or some modules may be further split, which can be easily changed by those skilled in the art based on FIG.
  • modules from the hardware implementation level, it can be implemented by a processor (CPU), a microprocessor (MCU) / an application specific integrated circuit (ASIC) or a logic programmable gate array (FPGA).
  • CPU central processing unit
  • MCU microprocessor
  • ASIC application specific integrated circuit
  • FPGA logic programmable gate array
  • the input driving module 110 is configured to write a user input event to the device input node file; that is, when the user has an input operation, the device input node file records the coordinates of the corresponding character of the user input operation, for example, in a Linux-based intelligent system.
  • the coordinate information is recorded in the device input node file /dev/input/event*.
  • the interference event insertion module 120 is configured to generate an input event for interference when the device input node file is detected to have an input event, and write the input event to the device input node file;
  • the input event processing module 130 is configured to read an input event in the device input node file and pass it to the input method program;
  • the security input processing module 140 is configured to receive a character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and The culled characters are sent to the target program.
  • the target program may be, but is not limited to, a software application that requires high input security, such as mobile banking software.
  • the interference event insertion module 120 parses the layout information of the current input interface, acquires the center position coordinates of each character in the input interface, and extracts coordinates of several characters in the input interface according to the setting extraction mechanism, and An input event for interference is generated based on the coordinates of the extracted character.
  • the interference event insertion module 120 writes the generated input event for interference into the device input node file according to the set interference event insertion rule.
  • the interference event insertion rule a person skilled in the art can flexibly configure, for example, it can be configured to insert an interference input event after each input event written by the input driving module 110, and write each input in the input driving module 110. Inserting a plurality of interference input events after the input event, inserting an interference input event after the input drive module 110 writes the plurality of input events, or inserting a plurality of interference input events after the input drive module 110 writes the plurality of input events, and many more.
  • the manner in which the security input processing module 140 determines whether the character sent by the input method program is a disturbing character includes but is not limited to:
  • the interference event insertion module 120 sends an interference notification to the security input processing module 140 when the input event for interference is written into the device input node file;
  • the security input processing module 140 determines an interference character corresponding to the input event for interference according to the received interference notification, and performs an interference character culling operation according to the determined interference character.
  • An implementation manner in which the security input processing module 140 can determine the interference character according to the interference notification is that the interference notification sent by the interference event insertion module 120 carries the character information corresponding to the input event for the interference.
  • the security input processing module 140 can retrieve the input interface information.
  • the interference event insertion module can send the inserted input event information to the secure input processing module through the notification, and is processed by the security input.
  • the module 140 determines the interference character based on the input interface information and the input event information.
  • the present invention does not limit the implementation form of the interference notification, and it is within the scope of the protection idea of the present invention that the security input processing module 140 can determine the interference character by the interference notification.
  • the interference event insertion module 120 inserts an input for interference.
  • the character corresponding to the event should be distinguished from the character corresponding to the monitored user's input event.
  • the interference event insertion module 120 writes the generated input event for interference into the device input node file according to the set interference event insertion rule.
  • the security input processing module 140 may retrieve the interference event insertion rule, and according to the interference event insertion rule, determine the interference character corresponding to the input event for the interference, and perform the interference character according to the determined interference character. Eliminate the operation.
  • the insertion rule of the interference event insertion module 120 inserting the interference event is to insert an interference input event after each input event written by the input driving module 110, then the character recognized by the corresponding input method program is: true character pseudo character true character The order of the pseudo-characters..., therefore, the secure input processing module 140 can automatically determine that the even-numbered characters are inserted interfering characters and need to be culled.
  • the security input system when the user clicks on the character in the input keyboard, the input coordinates are generated, and when the input coordinates are written into the device input node file /dev/input/event*
  • the system generates single or multiple interference coordinates and writes them to the device input node file /dev/input/event*.
  • the input method program responds to these input coordinates in the input node file of the device, multiple characters are sequentially generated, which include the normal characters input by the user and the interfering characters added by the system, and the system is responsible for deleting the interfering characters and The remaining characters entered by the remaining user are passed to the target program. In this way, even in the case that the input method program is maliciously invaded, the malicious program cannot accurately collect the real content input by the user, thereby achieving the purpose of safe input.
  • an intelligent terminal is provided.
  • the input system frame diagram when the smart terminal does not adopt the security input system described in the first embodiment is as shown in FIG. 2, and the input system framework is known from the figure. It includes three parts: target program, system process, and input method process.
  • target programs such as social software and mobile banking software
  • first The system process requests to open the input method program.
  • the system process receives the application, it binds the input box and displays the input method.
  • a target program, a system process, and an input method process cooperatively interact through InputMethodManager, InputMethodManagerService, and InputMethodService, respectively.
  • the input method After binding the input box and displaying the input method, the user clicks on the touch screen, the input method generates a character, and the character is transmitted to the target program, and after the target program receives the character, it is displayed on the corresponding control.
  • the input security of such an input system relies on an input method program, and there is an input security risk when the input method is not trusted.
  • FIG. 3 it is an input system framework diagram of the smart terminal according to the embodiment of the present invention after applying the security input system according to the first embodiment.
  • a custom input management service is added to the system process (that is, the functions of the interference event insertion module 120 and the security input processing module 140 in the first embodiment are added on the basis of the original input management service). Used to complete the insertion of interference events and the elimination of interfering characters.
  • This embodiment implements optimization and improvement of the character input process by adding a custom input server in the system process. For example, when the user has an input operation, the input event corresponding to the input operation is recorded, and the interference input event is automatically added. After the input method program generates a character according to the input event, the character content is not directly transmitted to the target program, but the interference character is to be The culling saves only the normal characters entered by the user, and then the system process passes the normal characters to the target program.
  • the input method program cannot accurately obtain the character content input by the user, and the security risk caused by the input method program can be avoided.
  • FIG. 4 it is a flowchart of a security input system framework of an intelligent terminal according to an embodiment of the present invention, and the process is as follows:
  • the user performs an input operation through a touch screen or a physical button of the smart terminal;
  • the system kernel layer touch screen of the smart terminal, the physical button and the like convert the physical signal into an input event according to an event rule defined by the multi-touch protocol, and Write to the device input node file; for example, in a smart terminal based on the Linux operating system, the input device node file is in the /dev/input/ directory.
  • the input event processing thread (corresponding to the input event processing module) of the system framework layer is responsible for reading the input events in the input device node file and passing them to the upper application. For example, when a user invokes an input method program to input a character, the input event processing thread passes the user's input event to the input method program, and then the input method program generates a character based on the incoming input event.
  • the system framework layer in addition to completing the normal input event reading, the system framework layer also writes an interference event in the input device node file through the interference event insertion thread (corresponding to the interference event insertion module).
  • the interference event insertion thread communicates with the security input processing thread (corresponding to the security input processing module) to notify the character corresponding to the interference event inserted by the security input processing thread when the interference event is inserted, and the security input processing thread inputs the information according to the obtained information.
  • the result characters generated by the method are processed, the interfering characters are deleted, and only the normal characters input by the user are retained.
  • the secure input processing thread passes the normal characters obtained after processing to the target program.
  • a flowchart of implementing a character security input by a smart terminal application security input system includes the following steps:
  • the touch screen driver responds to the click action, obtains coordinates of the click position, generates an input event, and reports the coordinate content to the intelligent terminal input subsystem.
  • the input device node file receives an input event.
  • the touch screen driver writes input events to the input device node file.
  • the input device file is in the /dev/input/ directory.
  • the input event processing thread of the smart terminal monitors the content change in the input device node file, and encapsulates the original coordinate information, and sends the original coordinate information to the upper application (ie, the input method program) by inputting an event.
  • the input method program generates a character, such as the letter a, in response to the input event.
  • the smart terminal security input processing thread receives and caches characters sent by the input method program, such as the letter a.
  • the smart terminal interference event insertion thread generates interference coordinates, writes to the /dev/input input device node file, and notifies the security input processing thread of the interference character information corresponding to the interference coordinate;
  • the rule for generating the interference coordinates is to obtain the coordinates of the center position of each letter control by parsing the layout information of the current input interface, and then randomly take out some of the letter coordinates of the letter as the interference coordinates.
  • the input event processing thread of the smart terminal monitors the inserted interference coordinate information in the input device node file, and performs encapsulation, and sends an interference input event to the input method program.
  • the input method program generates an interference character, such as the letter b, in response to the input event.
  • the smart terminal security input processing thread caches all characters, such as ab.
  • the smart terminal security input processing thread deletes the interference character, and only retains the user input character, for example, changes ab to a.
  • the smart terminal security input processing thread sends the final character to the target program, for example, sending the letter a to the target program.
  • the target program displays characters input by the user, such as displaying the letter a.
  • the system automatically generates interference coordinates automatically, and generates interference characters through the input method, and then the system process restores the input content containing the interference characters to the user.
  • a security input method is provided, as shown in FIG. 6, including:
  • Step S601 when it is detected that the input driver writes the input event of the user to the device input node file, generates an input event for interference, and writes the input event to the input node of the device.
  • an input event for interference is generated, including:
  • the generated input event for interference is written into the device input according to the set interference event insertion rule. Node file.
  • Step S602 the input event in the device input node file is transmitted to the input method program
  • Step S603 receiving a character generated according to the input event sent by the input method program, and culling the interference character corresponding to the input event for interference from the received character, and sending the unremoved character To the target program.
  • the manner of determining whether the character sent by the input method program is a disturbing character includes but is not limited to:
  • Manner 1 When generating an input event for interference, record the character corresponding to the input event for interference. In this way, after receiving the character generated according to the input event sent by the input method program, the interference character corresponding to the input event for interference can be determined according to the recorded character to perform the culling operation of the interference character.
  • Manner 2 After receiving the character generated according to the input event sent by the input method program, determining, according to the interference event insertion rule, the interference character corresponding to the input event for interference, to perform the interference character culling operation.
  • the interference input event when there is an input event on the user side, the interference input event is inserted, and when the character obtained by the input method program is sent to the target program, the character obtained according to the interference input event in the character is removed, so that the input method is In the case of malicious intrusion, malicious programs cannot be accurately received.
  • the real content of the user input is collected to achieve the purpose of safe input.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention can take the form of a hardware embodiment, a software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • the embodiment of the invention discloses a security input system and method, and an intelligent terminal and a storage medium.
  • the system includes: an input driving module configured to write a user input event to a device input node file; and an interference event insertion module configured to After detecting that the device input node file has an input event write, generating an input event for interference and writing to the device input node file; inputting an event processing module configured to read an input event in the device input node file and Passed to the input method program; the secure input processing module is configured to receive the character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and the unremoved character Characters are sent to the target program.
  • the invention can safely improve the input of the common input method program on the basis of the existing input system, reduce the security risk caused by the input method program itself, and greatly improve the safety factor of the product.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)

Abstract

Provided are a secure input system and method, an intelligent terminal, and a storage medium. The system comprises: an input driving module (110) used to write a user input event to a device input node file; an interference event insertion module (120) used to generate an input event for interference and to write the same to the device input node file upon detecting writing of an input event to the device input node file; an input event processing module (130) used to read the input event in the device input node file and to transmit the same to an input method application; and a secure input processing module (140) used to receive characters generated by the input method application according to the input event, to delete interference characters corresponding to the input event for interference from the received characters, and to transmit the remaining characters to a target application.

Description

安全输入系统、方法及智能终端、存储介质Safety input system, method and intelligent terminal, storage medium 技术领域Technical field
本发明涉及通信技术,尤其涉及一种安全输入系统输入系统、方法及智能终端、存储介质。The present invention relates to communication technologies, and in particular, to a security input system input system and method, and an intelligent terminal and a storage medium.
背景技术Background technique
随着智能手机的快速普及,移动支付等业务在手机终端的服务获得了快速增长,随之而来的客户信息失窃和资金损失却成为普通用户的一大安全威胁。比如一种隐私窃取类病毒——“键盘黑手”,曾在海外流行,该病毒被打包到知名手机输入法SwiftKey KeyBoard中,可以直接监听用户键盘输入,上传泄露用户账户密码信息,甚至包括信用卡、网银等支付资料,该病毒的危害十分严重。With the rapid popularization of smart phones, services such as mobile payment have experienced rapid growth in the service of mobile terminals, and the subsequent theft of information and the loss of funds have become a major security threat for ordinary users. For example, a privacy-threatening virus, the "black keyboard", has been popular overseas. The virus is packaged into the well-known mobile phone input method SwiftKey KeyBoard, which can directly monitor the user's keyboard input, upload and leak the user account password information, and even include credit cards. Online banking and other payment materials, the virus is very serious.
现有方案虽然在一定程度上解决了安全输入的问题,但同时也可以看到,上述方案均存在用以解决相关技术中输入法程序易被入侵,导致用户输入的信息易被窃取的问题。Although the existing solutions solve the problem of security input to a certain extent, it can also be seen that the above solutions all have the problem that the input method is easily invaded and the information input by the user is easily stolen.
发明内容Summary of the invention
本发明实施例提供一种安全输入系统、方法及智能终端,用以解决相关技术中输入法程序易被入侵,导致用户输入的信息易被窃取的问题。The embodiments of the present invention provide a security input system, a method, and an intelligent terminal, which are used to solve the problem that the input method is easily hacked in the related art, and the information input by the user is easily stolen.
依据本发明实施例的一个方面,提供一种安全输入系统,包括:According to an aspect of an embodiment of the present invention, a security input system is provided, including:
输入驱动模块,配置为将用户的输入事件写入设备输入节点文件;An input driver module configured to write a user input event to a device input node file;
干扰事件插入模块,配置为在监测到所述设备输入节点文件有输入事件写入时,生成用于干扰的输入事件,将该输入事件写入所述设备输入节点文件; The interference event insertion module is configured to generate an input event for interference when the device input node file is detected to have an input event, and write the input event to the device input node file;
输入事件处理模块,配置为读取所述设备输入节点文件中的输入事件,并将其传递给输入法程序;An input event processing module configured to read an input event in the device input node file and pass it to an input method program;
安全输入处理模块,配置为接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。a security input processing module configured to receive a character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and The culled characters are sent to the target program.
依据本发明实施例的另一个方面,提供一种安全输入装置,包括存储器和处理器,所述存储器中存储有可执行指令,所述可执行指令用于引起所述处理器执行包括以下的操作:According to another aspect of an embodiment of the present invention, a secure input device is provided, including a memory and a processor, wherein the memory stores executable instructions for causing the processor to perform operations including the following :
监测到输入驱动将用户的输入事件写入设备输入节点文件时,生成用于干扰的输入事件,并将该输入事件写入所述设备输入节点文件;When it is detected that the input driver writes the user's input event to the device input node file, generates an input event for interference, and writes the input event to the device input node file;
将所述设备输入节点文件中的输入事件传递给输入法程序;Passing an input event in the device input node file to an input method program;
接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。Receiving a character generated according to the input event sent by the input method program, and culling the interference character corresponding to the input event for interference from the received character, and transmitting the unremoved character to the target program .
依据本发明实施例的另一个方面,提供一种智能终端,包括:本发明所述的安全输入装置。According to another aspect of an embodiment of the present invention, an intelligent terminal is provided, including: the security input device of the present invention.
依据本发明的另一个方面,还提供一种安全输入方法,包括:According to another aspect of the present invention, a security input method is also provided, including:
监测到输入驱动将用户的输入事件写入设备输入节点文件时,生成用于干扰的输入事件,并将该输入事件写入所述设备输入节点文件;When it is detected that the input driver writes the user's input event to the device input node file, generates an input event for interference, and writes the input event to the device input node file;
将所述设备输入节点文件中的输入事件传递给输入法程序;Passing an input event in the device input node file to an input method program;
接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。Receiving a character generated according to the input event sent by the input method program, and culling the interference character corresponding to the input event for interference from the received character, and transmitting the unremoved character to the target program .
依据本发明实施例的另一个方面,提供一种存储介质,所述存储介质中存储有可执行指令,所述可执行指令用于执行本发明实施例提供的安全 输入方法。According to another aspect of the present invention, a storage medium is provided, where executable instructions are stored, and the executable instructions are used to perform security provided by an embodiment of the present invention. Input method.
本发明实施例有益效果如下:The beneficial effects of the embodiments of the present invention are as follows:
本发明实施例提出的安全输入系统、方法及智能终端、存储介质,在用户侧有输入事件时,插入干扰输入事件,并在向目标程序发送输入法程序得到的字符时,将字符中根据干扰输入事件得到的字符剔除,这样在输入法程序被恶意入侵的情况下,恶意程序也无法准确收集到用户输入的真正内容,从而达到安全输入的目的。The security input system and method and the intelligent terminal and the storage medium provided by the embodiment of the present invention insert an interference input event when an input event is input on the user side, and when the character obtained by the input method program is sent to the target program, the character is interfered according to the interference The character obtained by the input event is culled, so that in the case that the input method program is maliciously invaded, the malicious program cannot accurately collect the real content input by the user, thereby achieving the purpose of safe input.
可见,本发明实施例所述方案能够在现有输入系统基础上,对普通输入法程序的输入做安全提升,降低因输入法程序本身带来的安全风险,较大程度的提升产品的安全系数。It can be seen that the solution according to the embodiment of the present invention can improve the input of the common input method program on the basis of the existing input system, reduce the security risk caused by the input method itself, and greatly improve the safety factor of the product. .
附图说明DRAWINGS
图1为本发明第一实施例提供的一种安全输入系统的结构框图;1 is a structural block diagram of a security input system according to a first embodiment of the present invention;
图2为本发明第二实施例中智能终端未采用安全输入系统时的输入系统框架示意图;2 is a schematic diagram of an input system framework when a smart terminal does not adopt a security input system according to a second embodiment of the present invention;
图3为本发明第二实施例中智能终端采用安全输入系统时的输入系统框架示意图;3 is a schematic diagram of an input system framework when a smart terminal adopts a security input system according to a second embodiment of the present invention;
图4为本发明第二实施例中智能终端的安全输入系统框架流程图;4 is a flow chart of a security input system framework of a smart terminal according to a second embodiment of the present invention;
图5为本发明第二实施例中智能终端应用安全输入系统实现字符安全输入的流程图;FIG. 5 is a flowchart of implementing a character security input by a smart terminal application security input system according to a second embodiment of the present invention; FIG.
图6为本发明第三实施例提供的一种安全输入方法的流程图。FIG. 6 is a flowchart of a security input method according to a third embodiment of the present invention.
具体实施方式detailed description
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更 透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While the embodiments of the present invention have been shown in the drawings, the embodiments Instead, these embodiments are provided to enable The disclosure is to be thoroughly understood and the scope of the disclosure may be fully conveyed to those skilled in the art.
目前智能终端键盘输入安全风险,可以归纳如下:At present, the security risks of smart terminal keyboard input can be summarized as follows:
1、恶意程序通过进程注入技术获取目标程序的输入内容。进程注入简单来说就是将一段代码拷贝到目标进程,然后让目标进程执行这段代码的技术。通过进程注入技术可以在目标程序中运行一段获取输入框的内容或者注入到输入法中获取输入内容。1. The malicious program obtains the input content of the target program through the process injection technology. Process injection is simply a technique that copies a piece of code to a target process and then lets the target process execute the code. Through the process injection technology, a part of the input box can be run in the target program or injected into the input method to obtain the input content.
2、通过操作系统底层的键盘事件获取记录,也就是通过获取键盘输入的编码值,再将编码值转换成键盘字符,比如在基于Linux系统的移动终端中可以通过记录/dev/input路径下的输入设备内容,获取用户输入内容,完成入侵。2, through the operating system underlying keyboard events to obtain records, that is, by obtaining the input value of the keyboard input, and then converting the encoded value into keyboard characters, such as in a Linux-based mobile terminal can be recorded by the /dev/input path Enter the device content, get the user input, and complete the intrusion.
3、通过输入法获取键盘输入内容。智能终端上的各类程序的内容输入必须通过输入法来完成,所以,只要用户的重要信息输入调用到输入法,就有可能给输入法程序机会窃取到用户输入信息。恶意程序入侵输入法程序不需要特殊的权限,迷惑性强,难度低。如果普通用户下载安装包含恶意代码的输入法程序,或者终端上正常的输入法程序被恶意程序入侵,那么用户就会面临信息被窃取的安全风险。比如,上文提到的“键盘黑手”就是采用打包国外手机输入法SwiftKey KeyBoard进行键盘输入窃取。3. Get the keyboard input content through the input method. The content input of various programs on the smart terminal must be completed by the input method, so as long as the user's important information input is called to the input method, it is possible to steal the input information to the user. Malicious program intrusion input method program does not require special permissions, is confusing and difficult. If a normal user downloads an input method that contains malicious code, or a normal input method on the terminal is invaded by a malicious program, the user is exposed to the security risk of the information being stolen. For example, the "keyboard black hand" mentioned above is a keyboard input stealing using a packaged foreign mobile phone input method SwiftKey KeyBoard.
针对通过输入法获取键盘输入内容这种安全风险,已有的解决方案有:For the security risks of obtaining keyboard input through input methods, the existing solutions are:
关于智能终端安全输入的方法,目前已经存在一些方案,例如:Regarding the method of intelligent terminal security input, there are already some solutions, such as:
方案一:触摸终端安全交易的方法,该方法通过在触摸终端安装输入法,所安装的输入法绑定在交易程序上,在交易程序中使用绑定的输入法并禁止切换到普通输入法,可避免不安全输入法窃取用户敏感信息,降低了在输入敏感数据时数据被悄悄窃取的可能。Solution 1: Touching the terminal security transaction method, the method is installed on the touch terminal by installing the input method, and the installed input method is bound to the transaction program, and the binding input method is used in the transaction program and the switch to the ordinary input method is prohibited. Unsafe input method can be avoided to steal user sensitive information, which reduces the possibility of data being stolen when inputting sensitive data.
方案二:安全输入的实现方法和终端,该方法应用于一具有显示屏的 终端,所述终端包括第一应用程序,包括:获得输入的初始输入字符,将所述初始输入字符显示在一输入框内;识别输入所述初始输入字符的输入方式;基于所述输入方式和预定的指令安全策略,确定所述初始输入字符对应的有效输入字符;将所述有效输入字符提供给所述第一应用程序。这种采用指令安全策略对输入的初始输入字符进行识别并转换形成有效指令,使得用户可以在环境复杂的情形下无须顾忌旁观者而能够在终端上安全的输入各种隐私信息和安全信息,有效地保证了隐私信息和安全信息的安全性。Scheme 2: A method and terminal for implementing a secure input, the method being applied to a display having a terminal, the terminal comprising a first application, comprising: obtaining an input initial input character, displaying the initial input character in an input box; identifying an input mode of inputting the initial input character; and based on the input mode and a predetermined instruction security policy determining a valid input character corresponding to the initial input character; providing the valid input character to the first application. The instruction security policy identifies and converts the input initial input characters into effective instructions, so that the user can safely input various private information and security information on the terminal without having to worry about the observer in a complicated environment. The security of private and security information is guaranteed.
现有方案虽然在一定程度上解决了安全输入的问题,但同时也存在一些弊端,主要表现为:Although the existing scheme solves the problem of security input to a certain extent, it also has some drawbacks, mainly as follows:
对于方案一,是借助专用的输入法程序完全安全输入,对普通输入法不起作用,用户使用终端时很多情况下是使用普通输入法程序完成输入。所以,此种方案覆盖面不广;For the first solution, it is completely safe input by means of a dedicated input method program, and it does not work for the ordinary input method. In many cases, when the user uses the terminal, the input is completed using the ordinary input method program. Therefore, the coverage of such a scheme is not wide;
对于方案二,是通过将初始输入字符转换成预置的有效字符,达到安全输入的目的,这种方案需要用户预置字符的转换对应关系,用户在使用时会出现忘记字符对应关系的情况,所以,此方案在应用推广上存在一定弊端。For scheme 2, the purpose of safe input is achieved by converting the initial input characters into preset valid characters. This scheme requires the conversion correspondence of the user preset characters, and the user may forget the correspondence of the characters when using. Therefore, this program has certain drawbacks in application promotion.
本发明实施例提出一种安全输入系统、方法及智能终端、存储介质,在用户通过输入法输入字符信息时,系统自动加入干扰输入事件,并在输入法程序生成字符后,通过系统进程删除系统自动加入的干扰字符,然后由系统进程将剩下的用户输入的字符信递给目标程序。这样输入法程序无法准确获取到用户输入的真正内容,实现内容的安全输入。The embodiment of the invention provides a security input system and method, an intelligent terminal and a storage medium. When a user inputs character information through an input method, the system automatically adds an interference input event, and after the input method generates a character, the system deletes the system. The interfering characters are automatically added, and then the system process passes the remaining user-entered characters to the target program. In this way, the input method program cannot accurately obtain the real content input by the user, and realizes the safe input of the content.
下面对本发明实施例的实施过程进行详细阐述。The implementation process of the embodiment of the present invention is described in detail below.
在本发明的第一实施例中,提供一种安全输入系统,如图1所示,所述系统包括:输入驱动模块110、干扰事件插入模块120、输入事件处理模 块130和安全输入处理模块140。In a first embodiment of the present invention, a security input system is provided. As shown in FIG. 1, the system includes: an input driving module 110, an interference event insertion module 120, and an input event processing module. Block 130 and secure input processing module 140.
上述模块是对安全输入系统在功能层面的架构的划分,实际应用中可以将部分模块合并或者将部分模块进行进一步拆分,属于本领域技术人员基于图1可以轻易做出的变换。The above module is a division of the architecture of the security input system at the functional level. In actual applications, some modules may be merged or some modules may be further split, which can be easily changed by those skilled in the art based on FIG.
对于上述模块来说,从硬件实施的层面,可以通过处理器(CPU)、微处理器(MCU)/专用集成电路(ASIC)或逻辑可编程门阵列(FPGA)实现。For the above modules, from the hardware implementation level, it can be implemented by a processor (CPU), a microprocessor (MCU) / an application specific integrated circuit (ASIC) or a logic programmable gate array (FPGA).
输入驱动模块110,配置为将用户的输入事件写入设备输入节点文件;即,用户有输入操作时,设备输入节点文件会记录下用户输入操作对应字符的坐标,比如在基于Linux的智能系统中,坐标信息会被记录在设备输入节点文件/dev/input/event*中。The input driving module 110 is configured to write a user input event to the device input node file; that is, when the user has an input operation, the device input node file records the coordinates of the corresponding character of the user input operation, for example, in a Linux-based intelligent system. The coordinate information is recorded in the device input node file /dev/input/event*.
干扰事件插入模块120,配置为在监测到所述设备输入节点文件有输入事件写入时,生成用于干扰的输入事件,将该输入事件写入所述设备输入节点文件;The interference event insertion module 120 is configured to generate an input event for interference when the device input node file is detected to have an input event, and write the input event to the device input node file;
输入事件处理模块130,配置为读取所述设备输入节点文件中的输入事件,并将其传递给输入法程序;The input event processing module 130 is configured to read an input event in the device input node file and pass it to the input method program;
安全输入处理模块140,配置为接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。The security input processing module 140 is configured to receive a character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and The culled characters are sent to the target program.
其中,所述目标程序可以但不限于为对输入安全要求较高的软件应用,例如手机银行软件等等。The target program may be, but is not limited to, a software application that requires high input security, such as mobile banking software.
在本发明的一个实施例中,干扰事件插入模块120,解析当前输入界面的布局信息,获取输入界面中各字符的中心位置坐标,按设定抽取机制在输入界面中抽取若干字符的坐标,并根据抽取的字符的坐标,生成用于干扰的输入事件。 In an embodiment of the present invention, the interference event insertion module 120 parses the layout information of the current input interface, acquires the center position coordinates of each character in the input interface, and extracts coordinates of several characters in the input interface according to the setting extraction mechanism, and An input event for interference is generated based on the coordinates of the extracted character.
在本发明的又一实施例中,干扰事件插入模块120,按照设定的干扰事件插入规则,将生成的用于干扰的输入事件写入所述设备输入节点文件。In still another embodiment of the present invention, the interference event insertion module 120 writes the generated input event for interference into the device input node file according to the set interference event insertion rule.
其中,对于干扰事件插入规则,本领域技术人员可以灵活配置,例如,可以配置为:在输入驱动模块110写入的每个输入事件后插入一个干扰输入事件、在输入驱动模块110写入的每个输入事件后插入多个干扰输入事件、在输入驱动模块110写入多个输入事件后插入一个干扰输入事件、或者,在输入驱动模块110写入多个输入事件后插入多个干扰输入事件,等等。For the interference event insertion rule, a person skilled in the art can flexibly configure, for example, it can be configured to insert an interference input event after each input event written by the input driving module 110, and write each input in the input driving module 110. Inserting a plurality of interference input events after the input event, inserting an interference input event after the input drive module 110 writes the plurality of input events, or inserting a plurality of interference input events after the input drive module 110 writes the plurality of input events, and many more.
优选地,本发明实施例中,安全输入处理模块140判断输入法程序发送的字符是否为干扰字符的方式包括但不限于为:Preferably, in the embodiment of the present invention, the manner in which the security input processing module 140 determines whether the character sent by the input method program is a disturbing character includes but is not limited to:
方式一:method one:
干扰事件插入模块120,将用于干扰的输入事件写入所述设备输入节点文件时,向安全输入处理模块140发送干扰通知;The interference event insertion module 120 sends an interference notification to the security input processing module 140 when the input event for interference is written into the device input node file;
安全输入处理模块140,根据接收到的干扰通知,确定出用于干扰的输入事件对应的干扰字符,并根据确定出的干扰字符,进行干扰字符剔除操作。The security input processing module 140 determines an interference character corresponding to the input event for interference according to the received interference notification, and performs an interference character culling operation according to the determined interference character.
其中,安全输入处理模块140根据干扰通知能够确定出干扰字符的一种实施方式为:干扰事件插入模块120发送的干扰通知中携带有用于干扰的输入事件对应的字符信息。当然,还有其他实现形式,例如,安全输入处理模块140侧能够调取输入界面信息,此时,干扰事件插入模块可以将插入的输入事件信息通过通知发送到安全输入处理模块,由安全输入处理模块140根据输入界面信息和输入事件信息,确定干扰字符。本发明不对干扰通知的实现形式做限定,只要通过干扰通知能够使得安全输入处理模块140确定出干扰字符的方案,都在本发明的保护思想范围之内。An implementation manner in which the security input processing module 140 can determine the interference character according to the interference notification is that the interference notification sent by the interference event insertion module 120 carries the character information corresponding to the input event for the interference. Of course, there are other implementation forms. For example, the security input processing module 140 can retrieve the input interface information. At this time, the interference event insertion module can send the inserted input event information to the secure input processing module through the notification, and is processed by the security input. The module 140 determines the interference character based on the input interface information and the input event information. The present invention does not limit the implementation form of the interference notification, and it is within the scope of the protection idea of the present invention that the security input processing module 140 can determine the interference character by the interference notification.
本实施例中,可选地,干扰事件插入模块120插入的用于干扰的输入 事件对应的字符应区别于监测到的用户的输入事件对应的字符。In this embodiment, optionally, the interference event insertion module 120 inserts an input for interference. The character corresponding to the event should be distinguished from the character corresponding to the monitored user's input event.
方式二:Method 2:
干扰事件插入模块120,按照设定的干扰事件插入规则,将生成的用于干扰的输入事件写入所述设备输入节点文件。此时,安全输入处理模块140,可以调取干扰事件插入规则,并根据所述干扰事件插入规则,确定出用于干扰的输入事件对应的干扰字符,并根据确定出的干扰字符,进行干扰字符剔除操作。The interference event insertion module 120 writes the generated input event for interference into the device input node file according to the set interference event insertion rule. At this time, the security input processing module 140 may retrieve the interference event insertion rule, and according to the interference event insertion rule, determine the interference character corresponding to the input event for the interference, and perform the interference character according to the determined interference character. Eliminate the operation.
例如,干扰事件插入模块120插入干扰事件的插入规则为在输入驱动模块110写入的每个输入事件后插入一个干扰输入事件,那么对应输入法程序识别出来的字符就是:真字符伪字符真字符伪字符…的顺序,所以,安全输入处理模块140可以自动判定出偶数位的字符为插入的干扰字符,需要剔除。For example, the insertion rule of the interference event insertion module 120 inserting the interference event is to insert an interference input event after each input event written by the input driving module 110, then the character recognized by the corresponding input method program is: true character pseudo character true character The order of the pseudo-characters..., therefore, the secure input processing module 140 can automatically determine that the even-numbered characters are inserted interfering characters and need to be culled.
综上可知,在本发明实施例所述的安全输入系统下,用户点击输入键盘中字符时,会产生输入坐标,并在将输入坐标写入设备输入节点文件/dev/input/event*中时,系统会生成单个或多个干扰坐标,并写入到设备输入节点文件/dev/input/event*中。当输入法程序响应设备输入节点文件中的这些输入坐标时,会依次生成多个字符,这些字符中包含了用户输入的正常字符和系统加入的干扰字符,系统负责将干扰字符进行删除,并将剩下的用户输入的正常字符传递给目标程序。这样,即便在输入法程序被恶意入侵的情况下,恶意程序也无法准确收集到用户输入的真正内容,从而达到安全输入的目的。In summary, in the security input system according to the embodiment of the present invention, when the user clicks on the character in the input keyboard, the input coordinates are generated, and when the input coordinates are written into the device input node file /dev/input/event* The system generates single or multiple interference coordinates and writes them to the device input node file /dev/input/event*. When the input method program responds to these input coordinates in the input node file of the device, multiple characters are sequentially generated, which include the normal characters input by the user and the interfering characters added by the system, and the system is responsible for deleting the interfering characters and The remaining characters entered by the remaining user are passed to the target program. In this way, even in the case that the input method program is maliciously invaded, the malicious program cannot accurately collect the real content input by the user, thereby achieving the purpose of safe input.
在本发明的第二实施例中,提供一种智能终端,该智能终端未采用第一实施例所述的安全输入系统时的输入系统框架图如图2所示,由图可知,输入系统框架中包括:目标程序、系统进程、输入法进程三部分。In the second embodiment of the present invention, an intelligent terminal is provided. The input system frame diagram when the smart terminal does not adopt the security input system described in the first embodiment is as shown in FIG. 2, and the input system framework is known from the figure. It includes three parts: target program, system process, and input method process.
当目标程序,如社交软件、手机银行软件需要输入字符内容时,首先向系 统进程申请打开输入法程序,系统进程接收到申请时,绑定输入框并显示输入法。比如,在基于Android的系统终端中目标程序、系统进程和输入法进程分别通过InputMethodManager、InputMethodManagerService、InputMethodService进行协作交互。When target programs, such as social software and mobile banking software, need to input character content, first The system process requests to open the input method program. When the system process receives the application, it binds the input box and displays the input method. For example, in an Android-based system terminal, a target program, a system process, and an input method process cooperatively interact through InputMethodManager, InputMethodManagerService, and InputMethodService, respectively.
当绑定输入框并显示输入法后,用户点击触摸屏,输入法进程生成字符,并将字符传送给目标程序,目标程序接收到字符后,显示在相应控件上。此种输入系统的输入安全性需要依赖输入法程序,当输入法程序不可信时,存在输入安全风险。After binding the input box and displaying the input method, the user clicks on the touch screen, the input method generates a character, and the character is transmitted to the target program, and after the target program receives the character, it is displayed on the corresponding control. The input security of such an input system relies on an input method program, and there is an input security risk when the input method is not trusted.
如图3所示,为本发明实施例所述智能终端应用了第一实施例所述的安全输入系统后的输入系统框架图。在该输入系统框架下,系统进程中增加了自定义输入管理服务(即在原有的输入管理服务基础上,增加了第一实施例中的干扰事件插入模块120和安全输入处理模块140的功能),用来完成干扰事件的插入和干扰字符的剔除。As shown in FIG. 3, it is an input system framework diagram of the smart terminal according to the embodiment of the present invention after applying the security input system according to the first embodiment. In the input system framework, a custom input management service is added to the system process (that is, the functions of the interference event insertion module 120 and the security input processing module 140 in the first embodiment are added on the basis of the original input management service). Used to complete the insertion of interference events and the elimination of interfering characters.
本实施例通过在系统进程中增加自定义输入服务器,实现了对字符输入流程的优化改进。例如,在用户有输入操作时,记录输入操作对应的输入事件,并自动加入干扰输入事件,在输入法程序根据输入事件生成字符后,字符内容不直接传送给目标程序,而是要把干扰字符剔除,仅保留用户输入的正常字符,然后再由系统进程将正常字符传递给目标程序。This embodiment implements optimization and improvement of the character input process by adding a custom input server in the system process. For example, when the user has an input operation, the input event corresponding to the input operation is recorded, and the interference input event is automatically added. After the input method program generates a character according to the input event, the character content is not directly transmitted to the target program, but the interference character is to be The culling saves only the normal characters entered by the user, and then the system process passes the normal characters to the target program.
在智能终端安全输入系统框架中,输入法程序无法准确得到用户输入的字符内容,可以避免因为输入法程序的导致的安全风险。In the framework of the intelligent terminal security input system, the input method program cannot accurately obtain the character content input by the user, and the security risk caused by the input method program can be avoided.
如图4所示,为本发明实施例所述智能终端的安全输入系统框架流程图,流程如下:As shown in FIG. 4, it is a flowchart of a security input system framework of an intelligent terminal according to an embodiment of the present invention, and the process is as follows:
用户通过智能终端的触摸屏或物理按键等进行输入操作;The user performs an input operation through a touch screen or a physical button of the smart terminal;
智能终端的系统内核层触摸屏、物理按键等驱动程序(对应输入驱动模块)根据多点触控协议定义的事件规则将物理信号转化成输入事件,并 写入到设备输入节点文件;比如在基于linux操作系统的智能终端中,输入设备节点文件在/dev/input/目录下。The system kernel layer touch screen of the smart terminal, the physical button and the like (corresponding to the input driver module) convert the physical signal into an input event according to an event rule defined by the multi-touch protocol, and Write to the device input node file; for example, in a smart terminal based on the Linux operating system, the input device node file is in the /dev/input/ directory.
系统框架层的输入事件处理线程(对应输入事件处理模块)负责读取输入设备节点文件中的输入事件,并传递给上层应用程序。比如,当用户调用输入法程序输入字符时,输入事件处理线程将用户的输入事件传递给输入法程序,然后输入法程序根据传入的输入事件生成字符。The input event processing thread (corresponding to the input event processing module) of the system framework layer is responsible for reading the input events in the input device node file and passing them to the upper application. For example, when a user invokes an input method program to input a character, the input event processing thread passes the user's input event to the input method program, and then the input method program generates a character based on the incoming input event.
在安全输入系统中,系统框架层除完成常规的输入事件读取外,还通过干扰事件插入线程(对应于干扰事件插入模块)在输入设备节点文件中写入干扰事件。In the secure input system, in addition to completing the normal input event reading, the system framework layer also writes an interference event in the input device node file through the interference event insertion thread (corresponding to the interference event insertion module).
干扰事件插入线程在插入干扰事件时,与安全输入处理线程(对应于安全输入处理模块)进行通信,通知安全输入处理线程所插入的干扰事件对应的字符,安全输入处理线程根据得到的信息对输入法生成的结果字符进行处理,删除干扰字符,仅保留用户输入的正常字符。The interference event insertion thread communicates with the security input processing thread (corresponding to the security input processing module) to notify the character corresponding to the interference event inserted by the security input processing thread when the interference event is inserted, and the security input processing thread inputs the information according to the obtained information. The result characters generated by the method are processed, the interfering characters are deleted, and only the normal characters input by the user are retained.
最后,安全输入处理线程将处理后得到的正常字符传递给目标程序。Finally, the secure input processing thread passes the normal characters obtained after processing to the target program.
如图5所示,为本发明实施例所述智能终端应用安全输入系统实现字符安全输入的流程图,包括如下步骤:As shown in FIG. 5, a flowchart of implementing a character security input by a smart terminal application security input system according to an embodiment of the present invention includes the following steps:
S502,用户点击屏幕输入法键盘上的某个字符,比如字母a。S502. The user clicks on a character on the keyboard of the screen input method, such as the letter a.
S504,触摸屏驱动程序响应点击动作,得到点击位置的坐标,生成输入事件;并将坐标内容上报给智能终端输入子系统。S504: The touch screen driver responds to the click action, obtains coordinates of the click position, generates an input event, and reports the coordinate content to the intelligent terminal input subsystem.
S506,输入设备节点文件接收输入事件;S506. The input device node file receives an input event.
具体的,触摸屏驱动程序将输入事件写入输入设备节点文件中,比如在基于linux的智能系统中,输入设备文件在/dev/input/目录下。Specifically, the touch screen driver writes input events to the input device node file. For example, in a Linux-based intelligent system, the input device file is in the /dev/input/ directory.
S508,智能终端的输入事件处理线程监听输入设备节点文件中的内容变化,并将原始坐标信息进行封装,以输入事件的方式发送给上层应用程序(即:输入法程序)。 S508. The input event processing thread of the smart terminal monitors the content change in the input device node file, and encapsulates the original coordinate information, and sends the original coordinate information to the upper application (ie, the input method program) by inputting an event.
S510,输入法程序响应输入事件,生成字符,比如字母a。S510. The input method program generates a character, such as the letter a, in response to the input event.
S512,智能终端安全输入处理线程接收并缓存输入法程序发送过来的字符,比如字母a。S512. The smart terminal security input processing thread receives and caches characters sent by the input method program, such as the letter a.
S514,智能终端干扰事件插入线程生成干扰坐标,写入到/dev/input输入设备节点文件中,并将干扰坐标对应的干扰字符信息通知给安全输入处理线程;S514, the smart terminal interference event insertion thread generates interference coordinates, writes to the /dev/input input device node file, and notifies the security input processing thread of the interference character information corresponding to the interference coordinate;
详细地,生成干扰坐标的规则是通过解析当前输入界面的布局信息,获取各个字母控件的中心位置坐标,然后随机取出其中的若干字母坐标作为干扰坐标。In detail, the rule for generating the interference coordinates is to obtain the coordinates of the center position of each letter control by parsing the layout information of the current input interface, and then randomly take out some of the letter coordinates of the letter as the interference coordinates.
S516,智能终端的输入事件处理线程监听输入设备节点文件中的插入的干扰坐标信息,并进行封装,发送干扰输入事件给输入法程序。S516. The input event processing thread of the smart terminal monitors the inserted interference coordinate information in the input device node file, and performs encapsulation, and sends an interference input event to the input method program.
S518,输入法程序响应输入事件,生成干扰字符,比如字母b。S518. The input method program generates an interference character, such as the letter b, in response to the input event.
S520,智能终端安全输入处理线程缓存所有字符,比如ab。S520. The smart terminal security input processing thread caches all characters, such as ab.
S522,智能终端安全输入处理线程删除干扰字符,仅保留用户输入字符,比如将ab变更为a。S522. The smart terminal security input processing thread deletes the interference character, and only retains the user input character, for example, changes ab to a.
S524,智能终端安全输入处理线程将最终字符发送给目标程序,比如将字母a发送给目标程序。S524. The smart terminal security input processing thread sends the final character to the target program, for example, sending the letter a to the target program.
S526,目标程序显示用户输入的字符,比如显示字母a。S526, the target program displays characters input by the user, such as displaying the letter a.
以上流程步骤完成字符的安全输入,在这个流程中,当用户执行输入时,系统快速的自动生成干扰坐标,并通过输入法生成干扰字符,然后系统进程将包含了干扰字符的输入内容恢复为用户输入的字符。The above process steps complete the safe input of characters. In this process, when the user performs input, the system automatically generates interference coordinates automatically, and generates interference characters through the input method, and then the system process restores the input content containing the interference characters to the user. The characters entered.
在本发明的第三实施例中,提供一种安全输入方法,如图6所示,包括:In a third embodiment of the present invention, a security input method is provided, as shown in FIG. 6, including:
步骤S601,监测到输入驱动将用户的输入事件写入设备输入节点文件时,生成用于干扰的输入事件,并将该输入事件写入所述设备输入节点文 件;Step S601, when it is detected that the input driver writes the input event of the user to the device input node file, generates an input event for interference, and writes the input event to the input node of the device. Piece
本实施例中,生成用于干扰的输入事件,包括:In this embodiment, an input event for interference is generated, including:
解析当前输入界面的布局信息,获取输入界面中各字符的中心位置坐标;Parsing the layout information of the current input interface, and obtaining the coordinates of the center position of each character in the input interface;
按设定抽取机制在输入界面中抽取若干字符的坐标,并根据抽取的字符的坐标,生成用于干扰的输入事件。According to the setting extraction mechanism, coordinates of several characters are extracted in the input interface, and an input event for interference is generated according to the coordinates of the extracted characters.
优选地,本实施例中,在监测到输入驱动将用户的输入事件写入设备输入节点文件时,按照设定的干扰事件插入规则,将生成的用于干扰的输入事件写入所述设备输入节点文件。Preferably, in this embodiment, when the input driver is detected to write the input event of the user to the device input node file, the generated input event for interference is written into the device input according to the set interference event insertion rule. Node file.
步骤S602,将所述设备输入节点文件中的输入事件传递给输入法程序;Step S602, the input event in the device input node file is transmitted to the input method program;
步骤S603,接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。Step S603, receiving a character generated according to the input event sent by the input method program, and culling the interference character corresponding to the input event for interference from the received character, and sending the unremoved character To the target program.
本实施例中,判断输入法程序发送的字符是否为干扰字符的方式包括但不限于为:In this embodiment, the manner of determining whether the character sent by the input method program is a disturbing character includes but is not limited to:
方式一:生成用于干扰的输入事件时,记录用于干扰的输入事件对应的字符。这样,当接收到所述输入法程序发送的根据所述输入事件生成的字符后,就可以根据记录的字符确定所述用于干扰的输入事件对应的干扰字符,以进行干扰字符的剔除操作。Manner 1: When generating an input event for interference, record the character corresponding to the input event for interference. In this way, after receiving the character generated according to the input event sent by the input method program, the interference character corresponding to the input event for interference can be determined according to the recorded character to perform the culling operation of the interference character.
方式二:接收所述输入法程序发送的根据所述输入事件生成的字符后,根据干扰事件插入规则,确定出用于干扰的输入事件对应的干扰字符,以进行干扰字符剔除操作。Manner 2: After receiving the character generated according to the input event sent by the input method program, determining, according to the interference event insertion rule, the interference character corresponding to the input event for interference, to perform the interference character culling operation.
综上所述,在用户侧有输入事件时,插入干扰输入事件,并在向目标程序发送输入法程序得到的字符时,将字符中根据干扰输入事件得到的字符剔除,这样在输入法程序被恶意入侵的情况下,恶意程序也无法准确收 集到用户输入的真正内容,从而达到安全输入的目的。In summary, when there is an input event on the user side, the interference input event is inserted, and when the character obtained by the input method program is sent to the target program, the character obtained according to the interference input event in the character is removed, so that the input method is In the case of malicious intrusion, malicious programs cannot be accurately received. The real content of the user input is collected to achieve the purpose of safe input.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention can take the form of a hardware embodiment, a software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。 The above is only the preferred embodiment of the present invention and is not intended to limit the scope of the present invention.
工业实用性Industrial applicability
本发明实施例公开了一种安全输入系统、方法及智能终端、存储介质,所述系统包括:输入驱动模块,配置为将用户的输入事件写入设备输入节点文件;干扰事件插入模块,配置为在监测到设备输入节点文件有输入事件写入时,生成用于干扰的输入事件后写入设备输入节点文件;输入事件处理模块,配置为读取设备输入节点文件中的输入事件,并将其传递给输入法程序;安全输入处理模块,配置为接收输入法程序发送的根据输入事件生成的字符,并从接收的字符中剔除用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。本发明能够在现有输入系统基础上,对普通输入法程序的输入做安全提升,降低因输入法程序本身带来的安全风险,较大程度的提升产品的安全系数。 The embodiment of the invention discloses a security input system and method, and an intelligent terminal and a storage medium. The system includes: an input driving module configured to write a user input event to a device input node file; and an interference event insertion module configured to After detecting that the device input node file has an input event write, generating an input event for interference and writing to the device input node file; inputting an event processing module configured to read an input event in the device input node file and Passed to the input method program; the secure input processing module is configured to receive the character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and the unremoved character Characters are sent to the target program. The invention can safely improve the input of the common input method program on the basis of the existing input system, reduce the security risk caused by the input method program itself, and greatly improve the safety factor of the product.

Claims (14)

  1. 一种安全输入系统,包括:A safety input system that includes:
    输入驱动模块,配置为将用户的输入事件写入设备输入节点文件;An input driver module configured to write a user input event to a device input node file;
    干扰事件插入模块,配置为在监测到所述设备输入节点文件有输入事件写入时,生成用于干扰的输入事件,将所述输入事件写入所述设备输入节点文件;The interference event insertion module is configured to generate an input event for interference when the device input node file is detected to have an input event, and write the input event to the device input node file;
    输入事件处理模块,配置为读取所述设备输入节点文件中的输入事件,并将所述输入事件其传递给输入法程序;An input event processing module configured to read an input event in the device input node file and pass the input event to an input method program;
    安全输入处理模块,配置为接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。a security input processing module configured to receive a character generated according to the input event sent by the input method program, and remove the interference character corresponding to the input event for interference from the received character, and The culled characters are sent to the target program.
  2. 如权利要求1所述的系统,其中,所述干扰事件插入模块,还配置为解析输入界面的布局信息,获取所述输入界面中各字符的中心位置坐标,按设定抽取机制在所述输入界面中抽取若干字符的坐标,并根据抽取的字符的坐标,生成用于干扰的输入事件。The system of claim 1, wherein the interference event insertion module is further configured to parse the layout information of the input interface, obtain the center position coordinates of each character in the input interface, and press the setting extraction mechanism at the input. The coordinates of several characters are extracted from the interface, and an input event for interference is generated according to the coordinates of the extracted characters.
  3. 如权利要求1所述的系统,其中,所述干扰事件插入模块,还配置为按照设定的干扰事件插入规则,将生成的用于干扰的输入事件写入所述设备输入节点文件。The system of claim 1 wherein said interference event insertion module is further configured to write the generated input event for interference to said device input node file in accordance with a set interference event insertion rule.
  4. 如权利要求1至3任一项所述的系统,其中,A system according to any one of claims 1 to 3, wherein
    所述干扰事件插入模块,还配置为将用于干扰的输入事件写入所述设备输入节点文件时,向所述安全输入处理模块发送干扰通知;The interference event insertion module is further configured to: when the input event for interference is written into the device input node file, send an interference notification to the security input processing module;
    所述安全输入处理模块,还配置为根据接收到的干扰通知,确定出用于干扰的输入事件对应的干扰字符,并根据确定出的干扰字符,进行干扰字符剔除操作。The security input processing module is further configured to determine, according to the received interference notification, an interference character corresponding to an input event for interference, and perform an interference character culling operation according to the determined interference character.
  5. 如权利要求4所述的系统,其中,所述干扰事件插入模块,还配置 为将用于干扰的输入事件对应的字符信息作为通知的内容发送到所述安全输入处理模块。The system of claim 4 wherein said interference event insertion module is further configured The character information corresponding to the input event for interference is sent to the secure input processing module as the content of the notification.
  6. 如权利要求3所述的系统,其中,所述安全输入处理模块,还配置为调取所述干扰事件插入规则,并根据所述干扰事件插入规则,确定出用于干扰的输入事件对应的干扰字符,并根据确定出的干扰字符,进行干扰字符剔除操作。The system of claim 3, wherein the security input processing module is further configured to retrieve the interference event insertion rule and determine interference corresponding to an input event for interference according to the interference event insertion rule. Characters, and perform interference character culling operations based on the determined interference characters.
  7. 一种安全输入装置,包括存储器和处理器,所述存储器中存储有可执行指令,所述可执行指令用于引起所述处理器执行包括以下的操作:A secure input device includes a memory and a processor, the memory storing executable instructions for causing the processor to perform operations including:
    监测到输入驱动将用户的输入事件写入设备输入节点文件时,生成用于干扰的输入事件,并将该输入事件写入所述设备输入节点文件;When it is detected that the input driver writes the user's input event to the device input node file, generates an input event for interference, and writes the input event to the device input node file;
    将所述设备输入节点文件中的输入事件传递给输入法程序;Passing an input event in the device input node file to an input method program;
    接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。Receiving a character generated according to the input event sent by the input method program, and culling the interference character corresponding to the input event for interference from the received character, and transmitting the unremoved character to the target program .
  8. 一种智能终端,所述智能终端包括权利要求7所述的安全输入装置。An intelligent terminal comprising the secure input device of claim 7.
  9. 一种安全输入方法,包括:A safe input method, including:
    监测到输入驱动将用户的输入事件写入设备输入节点文件时,生成用于干扰的输入事件,并将所述输入事件写入所述设备输入节点文件;When it is detected that the input driver writes the user's input event to the device input node file, generates an input event for interference, and writes the input event to the device input node file;
    将所述设备输入节点文件中的输入事件传递给输入法程序;Passing an input event in the device input node file to an input method program;
    接收所述输入法程序发送的根据所述输入事件生成的字符,并从接收的所述字符中剔除所述用于干扰的输入事件对应的干扰字符,以及将未被剔除的字符发送至目标程序。Receiving a character generated according to the input event sent by the input method program, and culling the interference character corresponding to the input event for interference from the received character, and transmitting the unremoved character to the target program .
  10. 如权利要求9所述的方法,其中,所述生成用于干扰的输入事件,包括:The method of claim 9 wherein said generating an input event for interference comprises:
    解析输入界面的布局信息,获取输入界面中各字符的中心位置坐标; Parsing the layout information of the input interface, and obtaining the coordinates of the center position of each character in the input interface;
    按设定抽取机制在输入界面中抽取若干字符的坐标,并根据抽取的字符的坐标,生成用于干扰的输入事件。According to the setting extraction mechanism, coordinates of several characters are extracted in the input interface, and an input event for interference is generated according to the coordinates of the extracted characters.
  11. 如权利要求9所述的方法,其中,所述将所述输入事件写入所述设备输入节点文件,包括:The method of claim 9 wherein said writing said input event to said device input node file comprises:
    在监测到输入驱动将用户的输入事件写入设备输入节点文件时,按照设定的干扰事件插入规则,将生成的用于干扰的输入事件写入所述设备输入节点文件。When it is detected that the input driver writes the user's input event to the device input node file, the generated input event for interference is written to the device input node file according to the set interference event insertion rule.
  12. 如权利要求9至11任一项所述的方法,其中,还包括:The method of any one of claims 9 to 11, further comprising:
    生成用于干扰的输入事件时,记录用于干扰的输入事件对应的字符;When generating an input event for interference, recording a character corresponding to the input event for interference;
    在接收所述输入法程序发送的根据所述输入事件生成的字符后,根据记录的字符确定所述用于干扰的输入事件对应的干扰字符,进行干扰字符的剔除操作。After receiving the character generated according to the input event sent by the input method program, determining the interference character corresponding to the input event for interference according to the recorded character, and performing the culling operation of the interference character.
  13. 如权利要求9所述的方法,其中,还包括:The method of claim 9 further comprising:
    在接收所述输入法程序发送的根据所述输入事件生成的字符后,根据所述干扰事件插入规则,确定出用于干扰的输入事件对应的干扰字符,进行干扰字符剔除操作。After receiving the character generated according to the input event sent by the input method program, determining, according to the interference event insertion rule, an interference character corresponding to an input event for interference, and performing an interference character culling operation.
  14. 一种存储介质,所述存储介质中存储有可执行指令,所述可执行指令用于执行权利要求9至13任一项所述的安全输入方法。 A storage medium storing executable instructions for performing the secure input method of any one of claims 9 to 13.
PCT/CN2017/073033 2016-09-21 2017-02-07 Secure input system and method, intelligent terminal, and storage medium WO2018053988A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610838138.8A CN107844717A (en) 2016-09-21 2016-09-21 Safe input system, method and intelligent terminal
CN201610838138.8 2016-09-21

Publications (1)

Publication Number Publication Date
WO2018053988A1 true WO2018053988A1 (en) 2018-03-29

Family

ID=61657539

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/073033 WO2018053988A1 (en) 2016-09-21 2017-02-07 Secure input system and method, intelligent terminal, and storage medium

Country Status (2)

Country Link
CN (1) CN107844717A (en)
WO (1) WO2018053988A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111193740B (en) * 2019-12-31 2023-03-14 苏宁金融科技(南京)有限公司 Encryption method, device, decryption method, computer device and storage medium
CN114153726B (en) * 2021-11-25 2024-05-17 麒麟软件有限公司 Login test method and device based on linux desktop operating system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060075135A1 (en) * 2004-10-01 2006-04-06 Microsoft Corporation Effective protection of computer data traffic in constrained resource scenarios
CN101101625A (en) * 2007-08-07 2008-01-09 江雨 Input data safe treatment method and device
CN102393894A (en) * 2011-09-30 2012-03-28 飞天诚信科技股份有限公司 Method and device for enhancing user information input security
CN104143068A (en) * 2014-07-16 2014-11-12 宇龙计算机通信科技(深圳)有限公司 Password authentication method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060075135A1 (en) * 2004-10-01 2006-04-06 Microsoft Corporation Effective protection of computer data traffic in constrained resource scenarios
CN101101625A (en) * 2007-08-07 2008-01-09 江雨 Input data safe treatment method and device
CN102393894A (en) * 2011-09-30 2012-03-28 飞天诚信科技股份有限公司 Method and device for enhancing user information input security
CN104143068A (en) * 2014-07-16 2014-11-12 宇龙计算机通信科技(深圳)有限公司 Password authentication method and system

Also Published As

Publication number Publication date
CN107844717A (en) 2018-03-27

Similar Documents

Publication Publication Date Title
US10616194B2 (en) Secure data destruction in a distributed environment using key protection mechanisms
US11645383B2 (en) Early runtime detection and prevention of ransomware
CN105493054B (en) It is protected using the rapid data of double file system
US10178077B2 (en) Preventing persistent storage of cryptographic information using signaling
US8997230B1 (en) Hierarchical data security measures for a mobile device
US20190332765A1 (en) File processing method and system, and data processing method
CN105519038A (en) Data protection based on user input during device boot-up, user login, and device shut-down states
CN105518699A (en) Data protection based on user and gesture recognition
US10733594B1 (en) Data security measures for mobile devices
JP2016528841A (en) System and method for identifying compromised private keys
EP3176719B1 (en) Methods and devices for acquiring certification document
CN108400868B (en) Seed key storage method and device and mobile terminal
US11809556B2 (en) System and method for detecting a malicious file
US10223538B1 (en) Preventing persistent storage of cryptographic information
WO2018053988A1 (en) Secure input system and method, intelligent terminal, and storage medium
CN107633174B (en) User input management method and device and terminal
CN108734014A (en) Cryptographic data authentication method and apparatus, code data guard method and device
US20230140559A1 (en) Systems and methods for monitoring secure web sessions
CN113656376B (en) Data processing method and device and computer equipment
WO2018094984A1 (en) Input event management method and device and mobile terminal
Shuang Using Context to Verify User Intentions
CA3067041A1 (en) A safe & secure internet or network connected computing machine providing means for processing, manipulating, receiving, transmitting and storing information free from hackers, hijackers, virus, malware, etc.
JP2023037147A (en) Data providing device, data acquisition device, and program
Xu Analysis of Mobile Banking Malware on the Android Operating System
US20170286973A1 (en) Method and Device for Detecting Theft of Resources

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17852068

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17852068

Country of ref document: EP

Kind code of ref document: A1