WO2019210767A1 - 一种在通用平台下安全交互的方法及智能终端 - Google Patents

一种在通用平台下安全交互的方法及智能终端 Download PDF

Info

Publication number
WO2019210767A1
WO2019210767A1 PCT/CN2019/081990 CN2019081990W WO2019210767A1 WO 2019210767 A1 WO2019210767 A1 WO 2019210767A1 CN 2019081990 W CN2019081990 W CN 2019081990W WO 2019210767 A1 WO2019210767 A1 WO 2019210767A1
Authority
WO
WIPO (PCT)
Prior art keywords
module
security chip
verification code
keyboard
universal platform
Prior art date
Application number
PCT/CN2019/081990
Other languages
English (en)
French (fr)
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 飞天诚信科技股份有限公司
Priority to US17/045,142 priority Critical patent/US11763036B2/en
Publication of WO2019210767A1 publication Critical patent/WO2019210767A1/zh

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/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/74Protecting 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 operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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

Definitions

  • the invention relates to a method and a smart terminal for secure interaction under a universal platform, and belongs to the technical field of information security.
  • the source code of the intelligent terminal universal platform (for example, the common platform is Android, UNIX, XENIX, LINUX, Netware, etc.) is open source.
  • the common platform has a vulnerability, some sensitive data is easily leaked.
  • the smart POS machine in the prior art mostly adopts the Android operating system as a general platform, communicates with the host computer through the universal platform, and if the Android system exists in the process of inputting the verification code and/or the transaction amount by the user, Vulnerabilities increase the risk of the verification code being stolen and/or the transaction amount being tampered with.
  • the verification code is stolen and/or the transaction amount is tampered with, it is easy to bring economic losses to the user. For example, when a user logs in to the system using the Android operating system, when the user enters the verification code for login verification, if the Android system has a vulnerability, the verification code input by the user is easily stolen. Once the verification code is stolen, the user is likely to be Data leakage in the system causes unnecessary losses.
  • the object of the present invention is to provide a method and a smart terminal for secure interaction under a universal platform, which can avoid the loss caused by the leakage of the verification code.
  • a method for secure interaction under a universal platform is provided, which is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module, and a common platform and security
  • the chip is connected through a security interface
  • the universal platform and the security chip are connected to the touch input module and the display module through a switching circuit
  • the method specifically includes the following steps:
  • Step S1 When the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step S2 When the security chip receives the switching notification, the control switching circuit switches the touch input module and the display module to be controlled by the security chip;
  • Step S3 the security chip control display module prompts the user to input a verification code, and controls the display module to generate and display the keyboard according to the coordinate data;
  • Step S4 The security chip obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the coordinate data;
  • Step S5 The security chip encrypts the obtained verification code to obtain the verification code ciphertext, and outputs the verification code ciphertext through the preset interface, and the control switching circuit switches the touch input module and the display module to be controlled by the universal platform.
  • the universal platform and the security chip are connected to the touch input module and the display module through the switching circuit, and can be replaced by: the universal platform and the security chip are connected to the touch input module through the switching circuit, and the display module is connected to the universal platform;
  • the control switching circuit switches the touch input module to be controlled by the security chip, and sends a notification of successful handover to the universal platform through the security interface;
  • control display module When the universal platform receives the notification of successful handover, the control display module prompts the user to input a verification code, and controls the display module to generate and display the keyboard according to the coordinate data;
  • step S5 the security chip control switching circuit switches the touch input module and the display module to be controlled by the universal platform, and is replaced by: the security chip control switching circuit switches the touch input module to be controlled by the universal platform.
  • the universal platform and the security chip are connected to the touch input module and the display module through the switching circuit, and can be replaced by: the universal platform and the security chip are connected to the display module through the switching circuit, and the touch input module is connected to the universal platform;
  • step S2 is replaced by: when the security chip receives the switching notification, the control switching circuit switches the display module to be controlled by the security chip;
  • step S3 further includes: the security chip sends a notification of successful handover to the universal platform through the security interface;
  • the universal platform When receiving the notification of successful handover, the universal platform obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the coordinate data to the security chip. Send the resulting verification code;
  • the security chip When receiving the verification code, the security chip encrypts the verification code to obtain the verification code ciphertext, outputs the verification code ciphertext through the preset interface, and controls the switching circuit to switch the display module to be controlled by the universal platform.
  • an intelligent terminal for secure interaction under a universal platform is provided, which is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module and a display module, and a universal platform and a security chip.
  • an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module and a display module, and a universal platform and a security chip.
  • the universal platform and the security chip are connected to the touch input module and the display module through the switching circuit;
  • a first switching notification module configured to send a switching notification to the security chip through the security interface when the verification code needs to be input
  • Security chips include:
  • a first receiving module configured to receive a handover notification from a universal platform
  • a first control module configured to: when the first receiving module receives the switching notification, the control switching circuit switches the touch input module and the display module to be controlled by the security chip;
  • a second control module configured to: after the first control module controls the switching circuit to switch the touch input module and the display module to be controlled by the security chip, the control display module prompts the user to input the verification code;
  • a third control module configured to: the first control module controls the switching circuit to switch the touch input module and the display module to be controlled by the security chip, and then controls the display module to generate and display the keyboard according to the coordinate data;
  • the first obtaining module is configured to obtain, from the touch input module, the verification code coordinate information generated by the touch input module according to the touch screen information of the user, and obtain the verification code according to the verification code coordinate information and the coordinate data;
  • An encryption module configured to encrypt a verification code obtained by the first obtaining module to obtain a verification code ciphertext
  • An output module configured to output a verification code ciphertext obtained by the encryption module through a preset interface
  • the first control module is further configured to: after the output module outputs the verification code ciphertext obtained by the encryption module through the preset interface, the control switching circuit switches the touch input module and the display module to be controlled by the universal platform.
  • the universal platform and the security chip are connected to the touch input module and the display module through the switching circuit, and may be replaced by: the universal platform and the security chip are connected to the touch input module through the switching circuit, and the display module is connected to the universal platform;
  • the first control module is replaced by a fourth control module
  • the second control module is replaced by a fifth control module
  • the third control module is replaced by a sixth control module
  • the fourth control module is configured to: when the first receiving module receives the switching notification, the control switching circuit switches the touch input module to be controlled by the security chip, and sends a notification of successful switching to the universal platform through the security interface;
  • the above universal platform further includes a third receiving module
  • a third receiving module configured to receive a notification that the handover from the security chip is successful
  • a fifth control module configured to: when the third receiving module receives the notification that the switching of the security chip is successful, the control display module prompts the user to input the verification code;
  • a sixth control module configured to: when the third receiving module receives the notification that the switching of the security chip is successful, control the display module to generate and display the keyboard according to the coordinate data;
  • the fourth control module is further configured to: after the output module outputs the verification code ciphertext obtained by the encryption module through the preset interface, the control switching circuit switches the touch input module to be controlled by the universal platform.
  • the universal platform and the security chip are connected to the touch input module and the display module through a switching circuit, and may be replaced by: the universal platform and the security chip are connected to the display module through the switching circuit, and the touch input module is connected to the universal platform;
  • the first control module is replaced by the seventh control module
  • a seventh control module configured to: when the first receiving module receives the switching notification, the control switching circuit switches the display module to be controlled by the security chip;
  • the security chip further includes a first sending module and a second receiving module
  • a first sending module configured to: the seventh control module controls the switching circuit to switch the display module to be controlled by the security chip, and send a notification of successful switching to the universal platform through the security interface;
  • the first obtaining module is replaced by a second acquiring module, and the universal platform further includes a second sending module;
  • the second obtaining module is configured to obtain, from the touch input module, the verification code coordinate information generated by the touch input module according to the touch screen information of the user, and obtain the verification code coordinate information and the coordinate data according to the verification code coordinate information and the coordinate data. Verification code;
  • a second sending module configured to send, to the security chip, a verification code obtained by the second acquiring module
  • a second receiving module configured to receive a verification code from a universal platform
  • the foregoing encryption module is specifically configured to encrypt the verification code received by the second receiving module to obtain the verification code ciphertext;
  • the seventh control module is further configured to: after the output module outputs the verification code ciphertext obtained by the encryption module through the preset interface, the control switching circuit switches the display module to be controlled by the universal platform.
  • the beneficial effects of the present invention are: before the user inputs the verification code, the security chip switches the display module and/or the touch input module to be controlled by the security chip, and even if there is a loophole in the universal platform, the verification code input by the user cannot be stolen, thereby The security of the user inputting the verification code is ensured, and the loss caused by the verification code leakage is avoided.
  • FIG. 1 is a flowchart of a method for secure interaction under a universal platform according to Embodiment 1 of the present invention
  • FIG. 2 is a flowchart of a method for secure interaction under a universal platform according to Embodiment 2 of the present invention
  • FIG. 3 is a flowchart of a method for secure interaction under a universal platform according to Embodiment 3 of the present invention.
  • FIG. 4 is a schematic structural diagram of an intelligent terminal that securely interacts under a universal platform according to Embodiment 4 of the present invention
  • FIG. 5 is a flowchart of a method for secure interaction under a universal platform according to Embodiment 4 of the present invention.
  • FIG. 6 is a schematic structural diagram of an intelligent terminal that securely interacts under a universal platform according to Embodiment 5 of the present invention.
  • FIG. 7 is a flowchart of a method for secure interaction under a universal platform according to Embodiment 5 of the present invention.
  • FIG. 8 is a block diagram of a module of an intelligent terminal that securely interacts under a universal platform according to Embodiment 6 of the present invention.
  • the first embodiment provides a method for secure interaction under a universal platform, and is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • the universal platform and the security chip are connected through a security interface, and are universal.
  • the platform and the security chip are connected to the touch input module and the display module through a switching circuit;
  • Embodiment 1 specifically includes the following steps:
  • Step S11 When the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step S12 When the security chip receives the switching notification, the control switching circuit switches the touch input module and the display module to be controlled by the security chip;
  • Step S13 the security chip control display module prompts the user to input a verification code, and controls the display module to generate and display the keyboard according to the coordinate data;
  • Step S14 The security chip obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the coordinate data;
  • Step S15 The security chip encrypts the obtained verification code to obtain the verification code ciphertext, and outputs the verification code ciphertext through the preset interface, and the control switching circuit switches the touch input module and the display module to be controlled by the universal platform.
  • the switching circuit can serve as a communication channel between the touch input module and the display module and the security chip;
  • the security chip controls the display module to prompt the user to input the verification code through the communication circuit, and controls the display module to generate and display the keyboard according to the coordinate data through the communication channel.
  • the security chip touches the communication channel through the communication channel.
  • the control input module obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user.
  • the security chip further includes: the security chip generates the random coordinate data according to the preset keyboard coordinates;
  • step S13 the security chip controls the display module to generate and display the keyboard according to the coordinate data, specifically: the security chip controls the display module to generate and display the random number keyboard according to the random coordinate data;
  • step S14 the security chip obtains the verification code according to the verification code coordinate information and the coordinate data, specifically: the security chip obtains the verification code according to the verification code coordinate information and the random coordinate data.
  • the universal platform sends the preset keyboard coordinates to the security chip through the security interface
  • the security chip generates random coordinate data according to the preset keyboard coordinates, specifically: the security chip generates random coordinate data according to the received preset keyboard coordinates.
  • the security chip generates random coordinate data according to preset keyboard coordinates, specifically: the security chip generates a random keyboard value sequence, and generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates.
  • the security chip generates a sequence of random keyboard values, specifically including:
  • Step M11 The security chip acquires a preset sequence of keyboard values, sets an initial value of the first index value by using a maximum keyboard value in the preset keyboard value sequence, and sets a second index by using a minimum keyboard value in the preset keyboard value sequence.
  • the initial value of the value, and the obtained preset keyboard value sequence is taken as the current preset keyboard value sequence
  • the initial value of the first index value is taken as the current first index value
  • the initial value of the second index value is taken as the current Two index values
  • Step M12 The security chip calls a random number generation function to generate a random number of one byte, and performs bitwise AND operation on the generated random number and the current first index value to obtain a bit and operation result;
  • Step M13 The security chip finds a keyboard value corresponding to the position of the bit and the operation result from the current preset keyboard value sequence, and uses the found keyboard value as a keyboard corresponding to the position of the current second index value in the random keyboard value sequence. The value gets the current random keyboard value sequence;
  • Step M14 The security chip removes the keyboard value corresponding to the position of the bit and the operation result in the current preset keyboard value sequence, and removes the keyboard value pair after the keyboard value removed in the current preset keyboard value sequence.
  • the keyboard value is complemented, and the sequence obtained by the complement is used as the current preset keyboard value sequence, and the current first index value and the current second index value are updated, and the updated current first index value and the current second index value are determined. If the number of keyboard values of the preset keyboard value sequence is exceeded, the current random keyboard value sequence is used as the final random keyboard value sequence; otherwise, the process returns to step M12.
  • the final random keyboard value sequence is 0x01, 0x09, 0x00, 0x08, 0x06, 0x07, 0x02, 0x03, 0x04, 0x05.
  • the method before the input of the verification code, the method further includes: acquiring, by the universal platform, the transaction information;
  • the method further includes: the universal platform transmitting the transaction information to the security chip through the security interface;
  • step S13 further includes: the security chip controls the display module to display the transaction amount according to the transaction information.
  • the security chip control display module prompts the user to input a verification code, controls the display module to generate and display the keyboard according to the coordinate data, and controls the display module to display the transaction amount according to the transaction information as follows:
  • the method when the verification code needs to be input, the method further includes: the universal platform sending a request for obtaining the verification code to the security chip through the security interface;
  • the security chip control display module prompts the user to input the verification code, specifically: the security chip controls the display module to prompt the user to input the verification code according to the request for obtaining the verification code;
  • Step A1 When the transaction amount needs to be input, the universal platform sends a notification of switching notification and obtaining a transaction amount to the security chip through the secure interface;
  • Step A2 When the security chip receives the switch notification and the request for obtaining the transaction amount, the control switching circuit switches the touch input module and the display module to be controlled by the security chip;
  • Step A3 The security chip controls the display module to prompt the user to input the transaction amount according to the request for obtaining the transaction amount, and controls the display module to generate and display the keyboard;
  • Step A4 The security chip obtains the transaction data coordinate information generated by the touch input module according to the user's touch screen information from the touch input module, and obtains the transaction amount data according to the transaction data coordinate information, and sends the transaction amount data to the common platform through the security interface.
  • the control switching circuit switches the touch input module and the display module to be controlled by a common platform;
  • step S13 further includes: the security chip controls the display module to display the transaction amount according to the transaction amount data.
  • the security chip control display module generates and displays a keyboard, specifically: the security chip generates random coordinate data according to preset keyboard coordinates, and controls the display module to generate and display a random number keyboard according to the random coordinate data; correspondingly, the security chip
  • the transaction amount data is obtained according to the transaction data coordinate information, specifically: the security chip obtains the transaction amount data according to the transaction data coordinate information and the random coordinate data;
  • the security chip generates the random coordinate data according to the preset keyboard coordinates, and controls the display module to generate and display the random number keyboard according to the random coordinate data.
  • the generated random coordinate data is:
  • the security chip control display module generates and displays a keyboard
  • the security chip controls the display module to generate and display the keyboard according to the preset coordinate data; correspondingly, the security chip obtains the transaction amount according to the transaction data coordinate information.
  • the data is specifically: the security chip obtains the transaction amount data according to the transaction data coordinate information and the preset coordinate data.
  • the step S14 includes: when the touch input module receives the touch screen information input by the user, the touch input module generates the verification code coordinate information according to the touch screen information, and uses the generated verification code coordinate information to update the register in the self register. Data and send an interrupt notification to the security chip;
  • Step S141 When the security chip receives the interrupt notification of the touch input module, the verification code coordinate information is read from the register of the touch input module;
  • Step S142 The security chip finds a keyboard value corresponding to the read verification code coordinate information from the coordinate data, and when the found keyboard value is a numeric key, adds the found keyboard value as one of the verification code to the current verification code.
  • a new verification code sequence is obtained after the sequence, the new verification code sequence is used as the current verification code sequence, the control display module displays the input one-bit data, and returns to step S141; when the found keyboard value is the backspace key, the control display module displays Delete one bit of data, return to step S141; when the found keyboard value is the confirmation key, the control display module displays the information of the completion of the input verification code, and the current verification code sequence as the verification code, step S15;
  • step S14 when the security chip receives the interrupt notification of the touch input module for the first time, the method further includes: the security chip initializing the verification code sequence, and using the verification code sequence after initialization as the current verification code sequence.
  • the security chip when the preset interface is a security interface, the security chip outputs the verification code ciphertext through the preset interface, where the security chip sends the verification code ciphertext to the common platform through the security interface;
  • the security chip When the preset interface is a financial IC card interface, the security chip outputs the verification code ciphertext through the preset interface, specifically: the security chip sends the verification code ciphertext to the financial IC card through the financial IC card interface.
  • the method when the verification code needs to be input, the method further includes: the universal platform sending a request for obtaining the verification code to the security chip through the security interface;
  • the security chip control display module prompts the user to input the verification code, specifically: the security chip controls the display module to prompt the user to input the verification code according to the request for obtaining the verification code;
  • the method further includes:
  • Step A11 When the transaction amount needs to be input, the universal platform sends a notification of switching notification and obtaining a transaction amount to the security chip through the secure interface;
  • Step A12 When the security chip receives the request for switching notification and obtaining the transaction amount, the control switching circuit switches the touch input module and the display module to be controlled by the security chip;
  • Step A13 The security chip controls the display module to prompt the user to input the transaction amount according to the request for obtaining the transaction amount, and controls the display module to generate and display the keyboard;
  • Step A14 The security chip obtains the transaction data coordinate information generated by the touch input module according to the user's touch screen information from the touch input module, and obtains the transaction amount data according to the transaction data coordinate information, and sends the transaction amount data to the common platform through the security interface.
  • the control switching circuit switches the touch input module and the display module to be controlled by a common platform.
  • the transaction amount data may be encrypted.
  • the security chip sends the transaction amount data to the general platform through the security interface, specifically: the security chip will encrypt the transaction.
  • the amount data is sent to the common platform through a secure interface.
  • the security chip obtains the transaction data coordinate information generated by the touch input module according to the user's touch screen information from the touch input module, and obtains the transaction amount data according to the transaction data coordinate information, which specifically includes:
  • the transaction data coordinate information is generated according to the touch screen information, the generated transaction data coordinate information is used to update the data in the own register, and the interrupt notification is sent to the security chip;
  • the touch input module receives the touch screen information input by the user
  • the verification code coordinate information generated according to the touch screen information is 0x01, 0x01
  • the data in the own register is updated by using the verification code coordinate information 0x01, 0x01.
  • Step H141 When the security chip receives the interrupt notification of the touch input module, the transaction data coordinate information is read from the register of the touch input module; for example, when the security chip receives the interrupt notification, the security chip reads from the register of the touch input module. Take the transaction data coordinate information as 0x01, 0x01.
  • Step H142 The security chip finds a keyboard value corresponding to the read transaction data coordinate information from the coordinate data, and when the found keyboard value is a numeric key, adds the found keyboard value as one bit of the transaction amount data to the current transaction.
  • a new transaction amount data sequence is obtained after the amount data sequence, and the new transaction amount data sequence is used as the current transaction amount data sequence, and the control display module displays the current transaction amount data sequence, and returns to step H141; when the found keyboard value is a backspace key
  • the control display module displays the transaction amount data after deleting one bit of data, returns to step H141; when the found keyboard value is the confirmation key, the current transaction amount data sequence is used as the final transaction amount data sequence, and according to the final transaction amount data sequence
  • the control display module displays the transaction amount;
  • the method further includes: the security chip initializing the transaction amount data sequence, and using the initialized transaction amount data sequence as the current transaction amount data sequence. For example, the transaction amount data sequence after initialization is empty.
  • the keyboard value of the numeric key is 0x00-0x09
  • the keyboard value of the backspace key is 0x0A
  • the keyboard value of the confirmation key is 0x0B.
  • the keyboard value 0x01 corresponding to the read verification code coordinate information 0x01, 0x01 is found, the found keyboard value 0x01 is a numeric key, and the found keyboard value 0x01 is added as one bit of the transaction amount data to the current transaction amount data sequence.
  • the new transaction amount data sequence 1 is obtained later, the new transaction amount data sequence is taken as the current transaction amount data sequence, and the control display module displays the current transaction amount data according to the current transaction amount data sequence 1 and returns to step H141;
  • the control display module displays the current transaction amount data according to the current transaction amount data sequence 1 as follows:
  • the found keyboard value is 0x02
  • 2 is added as one bit of the transaction amount data to the current transaction amount data sequence to obtain a new transaction amount data sequence 12
  • the new transaction amount data is obtained.
  • Sequence 12 is used as the current transaction amount data sequence, and the control display module displays the current transaction amount data according to the current transaction amount data sequence 12 as follows:
  • the security chip finds the keyboard value 0x01 corresponding to the read transaction data coordinate information 0x01, 0x01 from the random coordinate data, specifically: the security chip finds and reads the transaction data coordinate information 0x01 from the random coordinate data,
  • the coordinate value range corresponding to 0x01 is 0x00-0x04, 0x00-0x04, and the keyboard value 0x01 corresponding to the coordinate value range 0x00-0x04, x00-0x04 is found.
  • the found keyboard value is the keyboard value 0x0A of the backspace key, and the control display module displays the transaction amount data after deleting one bit of data. , return to step H141;
  • the found keyboard value is the keyboard value 0x0A of the backspace key
  • the control display module displays the transaction amount data after deleting one bit of data as follows:
  • the keyboard value found is the keyboard value 0x0A of the backspace key, specifically: when the security chip is input from the touch
  • the transaction data coordinate information read in the register of the module is 0x05, 0x14, and the coordinate value range corresponding to 0x05, 0x14 is found to be 0x04-0x08, 0x12-0x16, and is found corresponding to the coordinate value range 0x04-0x08, 0x12-0x16.
  • the keyboard value is 0x0A for the backspace key.
  • the keyboard value found is the keyboard value 0x0B of the confirmation key
  • the current transaction amount data sequence 12300 is used as the transaction amount data sequence, according to The final transaction amount data sequence 12300 controls the display module to display the transaction amount of 123.00.
  • the keyboard value found is the keyboard value 0x0B of the confirmation key, specifically: when the security chip is from the touch input module
  • the transaction data coordinate information read in the register is 0x09, 0x15, and the coordinate value range corresponding to 0x05, 0x14 is found to be 0x08-0x12, 0x12-0x16, and the keyboard corresponding to the coordinate value range 0x08-0x12, 0x12-0x16 is found.
  • the value is the keyboard value 0x0B of the confirmation key.
  • the beneficial effect of the first embodiment is that before the user inputs the verification code and the transaction amount, the security chip switches the display module and the touch input module to be controlled by the security chip, and even if there is a loophole in the universal platform, the verification code input by the user cannot be The amount of the transaction stolen and entered by the user cannot be tampered with, thereby ensuring the security of the user entering the verification code and the transaction amount, and avoiding the loss caused by the verification code leak and the transaction amount being falsified.
  • the second embodiment provides a method for secure interaction under a universal platform, and is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • the universal platform and the security chip are connected through a security interface, and are universal.
  • the platform and the security chip are connected to the touch input module through a switching circuit, and the display module is connected to the universal platform;
  • the method provided in Embodiment 2 specifically includes the following steps:
  • Step S21 When the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step S22 When the security chip receives the switching notification, the control switching circuit switches the touch input module to be controlled by the security chip, and sends a notification of successful handover to the universal platform through the security interface;
  • Step S23 When the universal platform receives the notification that the handover is successful, the control display module prompts the user to input a verification code, and controls the display module to generate and display the keyboard according to the coordinate data;
  • Step S24 The security chip obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the coordinate data;
  • Step S25 The security chip encrypts the obtained verification code to obtain the verification code ciphertext, outputs the verification code ciphertext through the preset interface, and controls the switching circuit to switch the touch input module to be controlled by the universal platform.
  • the switching circuit can serve as a communication channel between the touch input module and the security chip, and the switching circuit can also function as a switching circuit.
  • the security chip acquires the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module through the communication channel of the switching circuit.
  • the security chip after receiving the handover notification, further includes: the security chip generates a random keyboard value sequence, and sends the random keyboard value sequence to the universal platform through the security interface;
  • the universal platform further includes: the universal platform generates the random coordinate data according to the received random keyboard value sequence and the preset keyboard coordinates;
  • the universal platform controls the display module to generate and display the keyboard according to the coordinate data, specifically: the universal platform controls the display module to generate and display the random number keyboard according to the random coordinate data;
  • the method further includes: the universal platform transmitting the random coordinate data to the security chip through the security interface;
  • the security chip obtains the verification code according to the verification code coordinate information and the coordinate data, specifically: the security chip obtains the verification code according to the verification code coordinate information and the random coordinate data.
  • the security chip generates a sequence of random keyboard values. For example, refer to step M11 to step M14 in Embodiment 1, and details are not described herein again.
  • the universal platform after receiving the notification that the switching is successful, the universal platform further includes: generating, by the universal platform, a random keyboard value sequence, and generating random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates;
  • the universal platform controls the display module to generate and display the keyboard according to the coordinate data, specifically: the universal platform controls the display module to generate and display the random number keyboard according to the random coordinate data;
  • the method further includes: the universal platform transmitting the random coordinate data to the security chip;
  • the security chip obtains the verification code according to the verification code coordinate information and the coordinate data, specifically: the security chip obtains the verification code according to the verification code coordinate information and the random coordinate data.
  • the foregoing common platform generates a sequence of random keyboard values, which specifically includes:
  • Step L11 The universal platform acquires a preset sequence of keyboard values, sets an initial value of the first index value using a maximum keyboard value in the preset keyboard value sequence, and sets a second index using a minimum keyboard value in the preset keyboard value sequence.
  • the initial value of the value, and the obtained preset keyboard value sequence is taken as the current preset keyboard value sequence
  • the initial value of the first index value is taken as the current first index value
  • the initial value of the second index value is taken as the current Two index values
  • Step L12 The general platform calls the random number generating function to generate a random number of one byte, and performs bitwise AND operation on the generated random number and the current first index value to obtain a bit and operation result;
  • Step L13 The universal platform finds a keyboard value corresponding to the position of the bit and the operation result from the currently preset keyboard sequence value, and uses the found keyboard value as a keyboard corresponding to the position of the current second index value in the random keyboard value sequence. The value gets the current random keyboard value sequence;
  • Step L14 The universal platform removes the keyboard value corresponding to the position of the bit and the operation result in the preset keyboard value sequence, and removes the keyboard value pair after the keyboard value removed in the current preset keyboard value sequence.
  • the keyboard value is complemented, and the sequence obtained by the complement is used as the current preset keyboard value sequence, and the current first index value and the current second index value are updated to determine whether the updated current first index value and the current second index value are If the number of keyboard values exceeds the preset keyboard value sequence, the current random keyboard value sequence is used as the final random keyboard value sequence; otherwise, return to step L12;
  • the universal platform generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates, specifically: the universal platform uses the random keyboard value sequence to assign the preset keyboard coordinates to generate random coordinate data.
  • the method before the input of the verification code, the method further includes: acquiring, by the universal platform, the transaction information;
  • the method further includes: the universal platform controls the display module to display the transaction amount according to the transaction information.
  • the method before the input of the verification code, the method further includes:
  • Step C1 When the transaction amount needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step C2 When the security chip receives the handover notification, the control switching circuit switches the touch input module to be controlled by the security chip, and sends a notification of successful handover to the universal platform;
  • Step C3 When the universal platform receives the notification of successful handover, the control display module generates and displays a keyboard, and controls the display module to prompt the user to input the transaction amount;
  • Step C4 The security chip obtains transaction data coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains transaction data according to the transaction data coordinate information;
  • Step C5 The security chip sends the transaction data to the general platform through the security interface, and the control switching circuit switches the touch input module and the display module to be controlled by the universal platform;
  • the method further includes: the universal platform control display module displays the transaction amount according to the transaction data.
  • step S24 specifically includes:
  • the verification code coordinate information is generated according to the touch screen information, the generated verification code coordinate information is used to update the data in the self register, and the interrupt notification is sent to the security chip;
  • Step S241 when receiving the interrupt notification of the touch input module, the security chip reads the verification code coordinate information from the register of the touch input module;
  • Step S242 The security chip finds a keyboard value corresponding to the read verification code coordinate information from the coordinate data, and when the found keyboard value is a numeric key, adds the found keyboard value as one digit of the verification code to the current verification code.
  • a new verification code sequence is obtained after the sequence, and the new verification code sequence is used as the current verification code sequence, and the information of the input data is sent to the general platform through the security interface, and the process returns to step S241; when the found keyboard value is the backspace key, The common platform sends the backspace information, returning to step S241; when the found keyboard value is the confirmation key, sending the confirmation information to the universal platform, and using the current verification code sequence as the verification code, step S25;
  • Step S243 When the universal platform receives the information of the input data, the control display module displays the input of one bit of data; when the backspace information is received, the control display module displays the deletion of one bit of data; when the confirmation information is received, the control display module displays the completion input. Verification code information;
  • step S24 when the security chip receives the interrupt notification of the touch input module for the first time, the method further includes: the security chip initializing the verification code sequence, and using the verification code sequence after initialization as the current verification code sequence.
  • the security chip when the preset interface is a security interface, the security chip outputs the verification code ciphertext through the preset interface, where the security chip sends the verification code ciphertext to the universal platform through the security interface;
  • the security chip When the preset interface is a financial IC card interface, the security chip outputs the verification code ciphertext through the preset interface, specifically: the security chip sends the verification code ciphertext to the financial IC card through the financial IC card interface.
  • the method further includes:
  • Step C11 When the transaction amount needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step C12 When the security chip receives the switching notification, the control switching circuit switches the touch input module to be controlled by the security chip, and sends a notification that the switching is successful to the universal platform;
  • Step C13 When the universal platform receives the notification of successful handover, the control display module generates and displays a keyboard, and controls the display module to prompt the user to input the transaction amount;
  • Step C14 The security chip obtains transaction data coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains transaction data according to the transaction data coordinate information;
  • Step C15 The security chip sends the transaction data to the general platform through the security interface, and the control switching circuit switches the touch input module and the display module to be controlled by the universal platform.
  • the transaction data may be encrypted.
  • the security chip sends the transaction data to the general platform through the security interface, specifically: the security chip passes the encrypted transaction data through the security interface. Send to the general platform.
  • the beneficial effect of the second embodiment is that before the user inputs the verification code and the transaction amount, the security chip switches the touch input module to be controlled by the security chip, and even if there is a loophole in the universal platform, the verification code input by the user cannot be stolen and the user The entered transaction amount cannot be tampered with, thus ensuring the security of the user entering the verification code and the transaction amount, and avoiding the loss caused by the verification code leak and the transaction amount being tampered with.
  • the third embodiment provides a method for secure interaction under a universal platform, and is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • the common platform and the security chip are connected through a security interface, and are universal.
  • the platform and the security chip are connected to the display module through a switching circuit, and the touch input module is connected to the universal platform;
  • the method provided in Embodiment 3 specifically includes the following steps:
  • Step S31 When the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step S32 When the security chip receives the switching notification, the control switching circuit switches the display module to be controlled by the security chip;
  • Step S33 The security chip control display module prompts the user to input a verification code, controls the display module to generate and display the keyboard according to the coordinate data, and sends a notification of successful handover to the universal platform through the security interface;
  • Step S34 When receiving the notification that the handover is successful, the universal platform obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the coordinate data, and passes the verification code.
  • the security interface sends the obtained verification code to the security chip;
  • Step S35 When the security chip receives the verification code, the verification code is encrypted to obtain the verification code ciphertext, and the verification code ciphertext is output through the preset interface, and the control switching circuit switches the display module to be controlled by the universal platform.
  • the switching circuit can serve as a communication channel between the display module and the security chip, and the switching circuit can also function as a touch input module.
  • the communication channel with the universal platform; that is, in step S33, the security chip controls the display module to prompt the user to input the verification code through the communication channel, and the control module generates and displays the keyboard according to the coordinate data through the communication channel, and the common platform is used in step S34.
  • the communication channel of the switching circuit is used to obtain the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module.
  • the method before the verification code is required to be input, the method further includes:
  • Step E1 When the transaction amount needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step E2 When the security chip receives the handover notification, the control switching circuit switches the display module to be controlled by the security chip, and sends a notification of successful handover to the universal platform through the security interface;
  • Step E3 The security chip control display module generates and displays a keyboard, and controls the display module to prompt the user to input the transaction amount;
  • Step E4 When the universal platform receives the notification of successful handover, the touch input module obtains transaction data coordinate information generated by the touch input module according to the touch screen information of the user, and obtains transaction data according to the transaction data coordinate information;
  • step S31 further includes: the universal platform sends the transaction data to the security chip through the security interface;
  • the method further includes: the security chip control display module displays the transaction amount according to the transaction data.
  • the security chip when the preset interface is a security interface, the security chip outputs the verification code ciphertext through the preset interface, where the security chip sends the verification code ciphertext to the common platform through the security interface;
  • the security chip When the preset interface is a financial IC card interface, the security chip outputs the verification code ciphertext through the preset interface, specifically: the security chip sends the verification code ciphertext to the financial IC card through the financial IC card interface.
  • the step S34 specifically includes: when the touch input module receives the touch screen information input by the user, generating the verification code coordinate information according to the touch screen information, and updating the data in the self register by using the generated verification code coordinate information, and Send an interrupt notification to the general platform;
  • Step S341 When receiving the interrupt notification of the touch input module, the universal platform reads the verification code coordinate information from the register of the touch input module;
  • Step S342 The universal platform finds a keyboard value corresponding to the read verification code coordinate information from the coordinate data, and when the found keyboard value is a numeric key, adds the found keyboard value as one digit of the verification code to the current verification code.
  • a new verification code sequence is obtained after the sequence, the new verification code sequence is used as the current verification code sequence, the control display module displays the input one-bit data, and returns to step S341; when the found keyboard value is the backspace key, the control display module displays Delete one bit of data, return to step S341; when the found keyboard value is the confirmation key, the control display module displays the information to complete the input verification code, and the current verification code sequence as the verification code, step S35;
  • step S34 when the universal platform first receives the interrupt notification of the touch input module, the method further includes: the universal platform initializing the verification code sequence, and using the verification code sequence after the initialization as the current verification code sequence.
  • the method may further include:
  • Step E11 When the transaction amount needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step E12 When the security chip receives the handover notification, the control switching circuit switches the display module to be controlled by the security chip, and sends a notification of successful handover to the universal platform through the security interface;
  • Step E13 The security chip control display module generates and displays a keyboard, and controls the display module to prompt the user to input the transaction amount, and sends a notification of successful handover to the universal platform through the security interface;
  • Step E14 When the universal platform receives the notification of successful handover, the touch input module obtains transaction data coordinate information generated by the touch input module according to the touch screen information of the user, and obtains transaction data according to the transaction data coordinate information.
  • the beneficial effect of the third embodiment is that before the user inputs the verification code and the transaction amount, the security chip switches the display module to be controlled by the security chip, and even if there is a vulnerability in the universal platform, the verification code input by the user cannot be stolen and the user inputs.
  • the transaction amount cannot be tampered with, thus ensuring the security of the user entering the verification code and the transaction amount, and avoiding the loss caused by the verification code leak and the transaction amount being tampered with.
  • the fourth embodiment provides a method for secure interaction under a universal platform, and is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • the common platform and the security chip are shown in FIG. 4 .
  • the universal platform and the security chip are connected to the touch input module and the display module through the switching circuit;
  • the method provided in Embodiment 4 specifically includes the following steps:
  • Step S1 When the verification code needs to be input, the universal platform sends a switching notification to the security chip through the security interface, and sends the preset keyboard coordinates to the security chip;
  • the preset keyboard coordinates are specifically preset keyboard coordinate value ranges.
  • the default keyboard coordinates are:
  • Step S2 When the security chip receives the switching notification and the preset keyboard coordinates, the control switching circuit switches the touch input module and the display module to be controlled by the security chip, and generates random coordinate data according to the preset keyboard coordinates;
  • Step S3 the security chip control display module prompts the user to input a verification code, and controls the display module to generate and display a random number keyboard according to the random coordinate data;
  • Step S4 The security chip obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the random coordinate data;
  • Step S5 The security chip encrypts the obtained verification code to obtain the verification code ciphertext, and outputs the verification code ciphertext through the preset interface, and the control switching circuit switches the touch input module and the display module to be controlled by the universal platform.
  • the security chip when the preset interface is a security interface, the security chip outputs the verification code ciphertext through the preset interface, specifically: the security chip sends the verification code ciphertext to the common platform through the security interface; When the interface is a financial IC card interface, the security chip outputs the verification code ciphertext through the preset interface. The security chip sends the verification code ciphertext to the financial IC card through the financial IC card interface.
  • the security chip and the general platform are connected through a security interface, specifically: the universal platform and the security chip are connected by a hardware pin, and when the universal platform sends data to the security chip, the interface function corresponding to the security interface is called to the security chip through the hardware pin. Send data and receive the data returned by the security chip through the hardware pin.
  • Security chips and common platforms transmit data over a secure interface to ensure data security.
  • the step S1 to the step S2 may be replaced by: when the verification code needs to be input, the universal platform sends a switching notification to the security chip through the security interface; when the security chip receives the switching notification, the control switching circuit controls the touch.
  • the input module and the display module are switched to be controlled by the security chip, and the random coordinate data is generated according to the preset keyboard coordinates.
  • control pin of the security chip is connected to the control end of the switching circuit, and the first input end and the second input end of the switching circuit are respectively connected with the touch input module and the display module, and the switching circuit is respectively An output end is connected to a communication pin of the security chip, and a second output end of the switching circuit is connected to a communication pin of the universal platform;
  • the security chip control switching circuit switches the touch input module and the display module to be controlled by the security chip, specifically: the security chip inputs a high level signal to the control end of the switching circuit through its own control pin, and the control terminal of the switching circuit receives When the signal is high level, the first input end and the second input end of the control itself are connected to the first output end;
  • the security chip control switching circuit switches the touch input module and the display module to be controlled by a common platform, specifically: the security chip inputs a low level signal to the control end of the switching circuit through its own control pin, and switches the circuit.
  • the control terminal receives the low level signal, the first input end and the second input end of the control itself are connected to the second output end.
  • the security chip generates random coordinate data according to preset keyboard coordinates, specifically: the security chip generates a random keyboard value sequence, and generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates.
  • the foregoing security chip generates a sequence of random keyboard values, and specifically includes:
  • Step W11 The security chip acquires a preset sequence of keyboard values, sets an initial value of the first index value by using a maximum keyboard value in the preset keyboard value sequence, and sets a second index by using a minimum keyboard value in the preset keyboard value sequence.
  • the initial value of the value, and the preset keyboard value sequence is obtained as the current preset keyboard value sequence.
  • the initial value of the first index value is used as the current first index value
  • the initial value of the second index value is used as the current second index. value
  • the security chip obtains a preset keyboard value sequence 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, and sets the first index value using the maximum keyboard value 9 in the preset keyboard value sequence.
  • the initial value sets the initial value of the second index value using the minimum keyboard value 0 of the preset keyboard value sequence.
  • the preset keyboard value sequence may be a preset keyboard value sequence with a keyboard value of 0-9.
  • the preset keyboard value sequence can be 0x01, 0x08, 0x00, 0x02, 0x04, 0x03, 0x06, 0x05, 0x07, 0x09, or the preset keyboard value sequence can be 0x08, 0x04, 0x03, 0x01, 0x09, 0x00 , 0x02, 0x06, 0x05, 0x07.
  • the preset keyboard value sequence is 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09 as an example.
  • Step W12 the security chip calls a random number generating function to generate a random number of one byte, and performs bitwise AND operation on the generated random number and the current first index value to obtain a bit and operation result;
  • the security chip calls the random number generation function to generate a random number of one byte, specifically: the security chip calls the random number generation function hwGenRand(&rnd, 1) by generating an application of the random number or by using a true random source. A random number of bytes.
  • the security chip calls the random number generation function to generate a byte with a random number of 0x29.
  • the bitwise AND operation result of the generated random number 0x29 and 9 is 0x01.
  • Step W13 The security chip finds a keyboard value corresponding to the position of the bit and the operation result from the currently preset keyboard value sequence, and uses the found keyboard value as a keyboard corresponding to the position of the current second index value in the random keyboard value sequence. The value gets the current random keyboard value sequence;
  • the security chip finds the keyboard value 0x01 corresponding to the bit and operation result 0x01 position from the currently preset keyboard sequence values 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09.
  • the keyboard value 0x01 is used as the keyboard value 0x01 corresponding to the position of the current second index value 0 in the random keyboard value sequence, and the current random keyboard value sequence 0x01 is obtained.
  • Step W14 The security chip removes the keyboard value corresponding to the position of the bit and the operation result in the current preset keyboard value sequence, and removes the keyboard value pair after the keyboard value removed in the current preset keyboard value sequence.
  • the keyboard value is complemented, and the sequence obtained by the complement is used as the current preset keyboard value sequence, and the current first index value and the current second index value are updated, and the updated current first index value and the current second index value are determined. Whether the number of keyboard values of the preset keyboard value sequence is exceeded, the current random keyboard value sequence is used as the final random keyboard value sequence; otherwise, the process returns to step W12.
  • the security chip updates the current first index value by: the security chip decrements the current first index value by 1 to obtain the updated current first index value; and the security chip updates the current second index value, specifically: the security chip will be the current Adding an index value to 1 to obtain an updated current second index value;
  • the security chip removes the keyboard value 0x01 corresponding to the position of the operation result 0x01 in the currently preset keyboard value sequence from 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, and uses the current pre-
  • the keyboard value 0x09 after the keyboard value removed in the keyboard value sequence is set to complement the removed keyboard value, and the sequence obtained by the complement is 0x00, 0x09, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08.
  • the current preset keyboard value sequence updating the current first index value and the current second index value to obtain the updated current first index value 8 and the current second index value 1, and determining the updated current first index value 8 and current
  • the second index value 1 does not exceed the preset number of keyboard values of the keyboard value sequence, returning to step W12;
  • the final sequence of random keyboard values is: 0x01, 0x09, 0x00, 0x08, 0x06, 0x07, 0x02, 0x03, 0x04, 0x05.
  • the security chip generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates, specifically: the security chip according to the random keyboard value sequence, the preset backspace key keyboard value, and the preset confirmation.
  • the keyboard value of the key and the preset keyboard coordinates generate random coordinate data.
  • the security chip is based on a random keyboard value sequence 0x01, 0x09, 0x00, 0x08, 0x06, 0x07, 0x02, 0x03, 0x04, 0x05, the default backspace key keyboard value 0x0A, the preset confirmation key keyboard value 0x 0B And preset keyboard coordinates
  • the generated random coordinate data is:
  • the security chip control display module prompts the user to input a verification code, and controls the display module to generate and display the random number keyboard according to the random coordinate data as follows:
  • step S4 specifically includes:
  • the verification code coordinate information is generated according to the touch screen information, the generated verification code coordinate information is used to update the data in the self register, and the interrupt notification is sent to the security chip;
  • the touch input module receives the touch screen information input by the user
  • the verification code coordinate information generated according to the touch screen information is 0x01, 0x01
  • the data in the own register is updated by using the verification code coordinate information 0x01, 0x01.
  • Step S41 When the security chip receives the interrupt notification of the touch input module, the verification code coordinate information is read from the register of the touch input module;
  • the verification code coordinate information is read from the register of the touch input module to be 0x01, 0x01.
  • Step S42 The security chip finds a keyboard value corresponding to the read verification code coordinate information from the random coordinate data, and when the found keyboard value is a numeric key, adds the found keyboard value as one bit of the verification code to the current verification.
  • a new verification code sequence is obtained after the code sequence, the new verification code sequence is used as the current verification code sequence, the control display module displays the input one-bit data, and returns to step S41; when the found keyboard value is the backspace key, the control display module The display deletes one bit of data, returns to step S41; when the found keyboard value is the confirmation key, the control display module displays the information of the completion of the input verification code, and the current verification code sequence as the verification code, step S5;
  • step S4 when the security chip first receives the interrupt notification of the touch input module, the method further includes: the security chip initializing the verification code sequence, and using the verification code sequence after the initialization as the current verification code sequence.
  • the keyboard value of the numeric key is 0x00-0x09
  • the keyboard value of the backspace key is 0x0A
  • the keyboard value of the confirmation key is 0x0B.
  • the security chip when the security chip reads the verification code coordinate information from the register of the touch input module to 0x01, 0x01, the security chip takes random coordinate data.
  • the keyboard value 0x01 corresponding to the read verification code coordinate information 0x01, 0x01 is found, the found keyboard value 0x01 is a numeric key, and the found keyboard value 0x01 is added as one digit of the verification code to the back of the current verification code sequence.
  • a new verification code sequence 1 the new verification code sequence as the current verification code sequence, the control display module displays the input of one bit of data, returns to step S41;
  • the security chip finds the keyboard value 0x01 corresponding to the read verification code coordinate information 0x01, 0x01 from the random coordinate data, specifically: the security chip finds and reads the verification code coordinate information 0x01 from the random coordinate data,
  • the coordinate value range corresponding to 0x01 is 0x00-0x04, 0x00-0x04, and the keyboard value 0x01 corresponding to the coordinate value range 0x00-0x04, x00-0x04 is found.
  • the security chip When the security chip reads the verification code coordinate information from the register of the touch input module is 0x05, 0x14, the found keyboard value is the keyboard value 0x0A of the backspace key, and the control display module displays the deletion of one bit data, and returns to step S41;
  • the keyboard value found is the keyboard value 0x0A of the backspace key, specifically: when the security chip is input from the touch
  • the verification code coordinate information read in the register of the module is 0x05.
  • the coordinate value range corresponding to 0x05, 0x14 is found to be 0x04-0x08, 0x12-0x16, and it is found corresponding to the coordinate value range 0x04-0x08, 0x12-0x16.
  • the keyboard value is 0x0A for the backspace key.
  • the security chip When the security chip reads the verification code coordinate information from the register of the touch input module to 0x09, 0x15, the found keyboard value is the keyboard value 0x0B of the confirmation key, and the control display module displays the information of completing the input verification code, and the current The verification code sequence 123456 is used as the verification code, and step S5 is performed.
  • the security chip obtains the verification code 123456 obtained in the above step S5 to obtain the verification code ciphertext as D3 7C F6B3 1A B9 67 55; further, the verification code obtained by the security chip is 123456.
  • the security chip extracts the verification code 123456, and obtains the padding verification code data, and uses the preset key according to a preset algorithm (for example, the preset algorithm is 3DES algorithm) to the padded verification code.
  • the data is encrypted to obtain the verification code ciphertext as D3 7C F6 B3 1A B9 67 55.
  • the found keyboard value is the keyboard value 0x0B of the confirmation key
  • the security chip when the security chip reads the verification code coordinate information from the register of the touch input module as 0x09, 0x15, the found keyboard value is the keyboard value 0x0B of the confirmation key, specifically: when the security chip is from the touch input module
  • the coordinate code information read in the register is 0x09, 0x15, find the coordinate value range corresponding to 0x05, 0x14 is 0x08-0x12, 0x12-0x16, find the keyboard corresponding to the coordinate value range 0x08-0x12, 0x12-0x16
  • the value is the keyboard value 0x0B of the confirmation key.
  • the following operation is further performed: determining whether the control input switching circuit switches the touch input module to be controlled by the security chip until the current time exceeds a preset time, and then sends a timeout information to the universal platform. Otherwise continue to judge.
  • the preset time is 3 seconds.
  • the security chip control display module prompts the user to input the verification code, specifically: the security chip control display module displays the input box and prompts the user to input the verification code;
  • the method further includes: when the security chip receives the interrupt notification from the touch input module The coordinate information is obtained from the register of the touch input module.
  • the display module is controlled to generate and display the random number keyboard according to the random coordinate data.
  • the security chip control display module displays the input box and prompts the user to input a verification code, and controls the display module to generate and display the random number keyboard according to the random coordinate data as follows:
  • the security chip control display module displays the input box and prompts the user to input a verification code, and controls the display module to generate and display the random number keyboard according to the random coordinate data as follows:
  • the universal platform when the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface, specifically: when the universal platform receives the request for obtaining the verification code of the upper computer (that is, the verification code needs to be input), Sending a notification of a handover notification and obtaining a verification code to the security chip;
  • the method further includes: the general platform returns the verification code ciphertext to the upper computer.
  • the host computer receives the verification code ciphertext
  • the verification code ciphertext is decrypted to obtain a verification code, and it is determined whether the decrypted verification code is consistent with the verification code saved by itself, and then the verification is passed, otherwise the verification fails.
  • the login system is taken as an example for description (the smart terminal can be specifically a mobile terminal): the upper computer can be specifically the upper layer application of the universal platform, and the upper application sends a request for obtaining the verification code to the universal platform, and the universal platform receives the request for obtaining the verification code. And sending a handover notification and a request for obtaining a verification code to the security chip; when the universal platform receives the verification code ciphertext of the security chip, the verification code ciphertext is returned to the upper application.
  • the verification code ciphertext is decrypted to obtain a verification code, and it is determined whether the decrypted verification code is consistent with the verification code saved by itself, and then the verification is passed, otherwise the verification fails.
  • the method before the input of the verification code, the method further includes: acquiring, by the universal platform, transaction information;
  • the method further includes: the universal platform sends the transaction information to the security chip through the security interface;
  • the step S3 further includes: the security chip controls the display module to display the transaction amount according to the transaction information.
  • the intelligent terminal uses an intelligent POS machine as an example to illustrate:
  • the general platform obtains transaction information by scanning patterns (such as two-dimensional code, barcode, etc.), or obtains transaction information input by the user through an input module of the smart POS machine, or acquires a transaction from the upper computer.
  • scanning patterns such as two-dimensional code, barcode, etc.
  • the security chip After the smart POS machine obtains the transaction information, after performing application selection, application initialization, reading application data, offline authentication, sending a notification of switching notification, transaction information, and obtaining a verification code to the security chip; the security chip receives the switching notification, the transaction After the information and the request for obtaining the verification code, the above steps S2-S5 are performed, and in step S3, the security chip further controls the display module to display the transaction amount according to the transaction information; when the security chip sends the verification code ciphertext to the universal through the security interface in step S5; In the platform, after step S5, the general platform further sends the verification code ciphertext to the financial IC card, and the financial IC card decrypts the verification code ciphertext to obtain a verification code, and determines whether the decrypted verification code is the same as the verification code saved by itself.
  • step S5 is to verify the information passed and return the verification to the general platform, Then, the verification fails and returns the information of the verification failure to the universal platform.
  • the security chip sends the verification code ciphertext to the financial IC card through the financial IC card interface in step S5
  • the step S5 further includes: the financial IC card is verified by the verification code.
  • the text is decrypted to obtain a verification code, and it is judged whether the decrypted verification code is the same as the verification code saved by itself, and then the verification passes and returns the verification pass information to the security chip, otherwise the verification fails and the verification failure information is returned to the security chip.
  • the security chip returns the verified information or the information of the failed verification to the universal platform; preferably, after receiving the information of the verification passed by the security chip or the information of the verification failure, the universal platform processes the information that passes the verification or the information that fails the verification.
  • the general platform saves the information passed by the verification of the security chip or the information of the verification failure, or the general platform generates an offline transaction log according to the information passed by the security chip or the information of the verification failure.
  • the general platform obtains transaction information by scanning patterns (such as two-dimensional code, barcode, etc.), or obtains transaction information input by the user through an input module of the smart POS machine, or acquires transaction information from the upper computer.
  • scanning patterns such as two-dimensional code, barcode, etc.
  • the security chip After the smart POS machine obtains the transaction information, after performing application selection, application initialization, reading application data, offline authentication, sending a notification of switching notification, transaction information, and obtaining a verification code to the security chip; the security chip receives the switching notification transaction information and After the request for obtaining the verification code, the above steps S2-S5 are performed, and when the step S3 is performed, the security chip further controls the display module to display the transaction amount according to the transaction information; when the security chip sends the verification code ciphertext to the universal through the security interface in step S5; In the platform, after the step S5, when the universal platform receives the verification code ciphertext, the method further includes: the general platform organizes the online transaction message according to the verification code ciphertext.
  • the verification code ciphertext is obtained from the online transaction message, the verification code ciphertext is decrypted to obtain the verification code, and it is determined whether the decrypted verification code is consistent with the verification code saved by itself. Yes, the verification passes and returns the verification pass information to the common platform, otherwise the verification fails and returns the verification failure information to the general platform.
  • the method further includes: the universal platform sending a request for acquiring the verification code to the security chip through the security interface;
  • the security chip control display module prompts the user to input the verification code, specifically: the security chip controls the display module to prompt the user to input the verification code according to the request for obtaining the verification code;
  • the above includes:
  • Step A1 When the transaction amount needs to be input, the universal platform sends a notification of switching notification and obtaining a transaction amount to the security chip through the secure interface;
  • the smart POS machine executes the transaction request or receives the transaction request from the upper computer
  • the user needs to input the transaction amount
  • the universal platform sends the switching notification and the transaction amount to the security chip through the secure interface. Request.
  • Step A2 When the security chip receives the switch notification and the request for obtaining the transaction amount, the control switching circuit switches the touch input module and the display module to be controlled by the security chip;
  • step A2 the security chip control switching circuit switches the touch input module and the display module to a specific operation method controlled by the security chip, and the security chip control switching circuit described above in the fourth embodiment touch input module and display
  • the operation method of the module switching to be controlled by the security chip is the same and will not be described here.
  • Step A3 The security chip controls the display module to prompt the user to input the transaction amount according to the request for obtaining the transaction amount, and controls the display module to generate and display the keyboard;
  • Step A4 The security chip obtains the transaction data coordinate information generated by the touch input module according to the user's touch screen information from the touch input module, and obtains the transaction amount data according to the transaction data coordinate information, and sends the transaction amount data to the common platform through the security interface.
  • the control switching circuit switches the touch input module and the display module to be controlled by a common platform;
  • the step S3 further includes: the security chip controls the display module to display the transaction amount according to the transaction amount data.
  • the step A1 further includes: the universal platform sends the preset keyboard coordinates to the security chip through the security interface; correspondingly, the security chip controls the display module to generate and display the keyboard, specifically: the security chip Generating random coordinate data according to the received preset keyboard coordinates, and controlling the display module to generate and display a random number keyboard according to the random coordinate data; the security chip obtains the transaction amount data according to the transaction data coordinate information, specifically: the security chip according to the transaction data coordinates Information and random coordinate data yield transaction amount data.
  • the security chip generates random coordinate data according to the received preset keyboard coordinates, specifically: the security chip generates a random keyboard value sequence, and generates random coordinate data according to the random keyboard value sequence and the received preset keyboard coordinates; specific security The chip generates a random keyboard value sequence by referring to the above step W11 - step W14.
  • the security chip generates random coordinate data according to the random keyboard value sequence and the received preset keyboard coordinates, specifically: the security chip according to the random keyboard value sequence, the preset backspace key keyboard value, and the preset confirmation key.
  • the keyboard value and the preset keyboard coordinates generate random coordinate data.
  • the security chip control display module generates and displays a keyboard, specifically: the security chip generates random coordinate data according to preset keyboard coordinates, and controls the display module to generate and display a random number keyboard according to the random coordinate data;
  • the security chip obtains the transaction amount data according to the transaction data coordinate information, specifically: the security chip obtains the transaction amount data according to the transaction data coordinate information and the random coordinate data;
  • the security chip generates random coordinate data according to the preset keyboard coordinates, specifically: the security chip generates a random keyboard value sequence, and generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates; the specific security chip generates a random keyboard.
  • the sequence of values can be referred to the above steps W11 - W14.
  • the security chip generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates, specifically: the security chip according to the random keyboard value sequence, the preset backspace key keyboard value, and the preset confirmation key keyboard.
  • the value and the preset keyboard coordinates generate random coordinate data.
  • the security chip obtains the transaction amount data according to the transaction data coordinate information and the random coordinate data, and the security chip obtains the verification code according to the verification code coordinate information and the random coordinate data in the above step S4 in the fourth embodiment.
  • the operation method is similar, and will not be described here.
  • the security chip controls the display module to generate and display the keyboard, and may further be: the security chip controls the display module to generate and display the keyboard according to the preset coordinate data; accordingly, the security chip obtains the transaction amount according to the transaction data coordinate information.
  • the data is specifically: the security chip obtains the transaction amount data according to the transaction data coordinate information and the preset coordinate data.
  • the security chip control display module generates and displays the keyboard, and may specifically be: the security chip generates random coordinate data according to the preset keyboard coordinates, and controls the display module to generate and display the random number keyboard according to the random coordinate data; accordingly, the security chip is configured according to The transaction data coordinate information is used to obtain the transaction amount data, specifically: the security chip obtains the transaction amount data according to the transaction data coordinate information and the random coordinate data;
  • the security chip control display module generates and displays the keyboard, and may specifically be: the security chip controls the display module to generate and display the keyboard according to the preset coordinate data; accordingly, the security chip obtains the transaction amount data according to the transaction data coordinate information, specifically The security chip obtains transaction data according to the transaction data coordinate information and the preset coordinate data.
  • the security chip obtains the transaction data according to the transaction data coordinate information and the preset coordinate data
  • the security chip obtains the verification code coordinate information and the random coordinate data according to the above step S4 in the fourth embodiment.
  • the operation method of the verification code is similar, and will not be described here.
  • the fifth embodiment provides a method for secure interaction under a universal platform, and is applied to an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • an intelligent terminal including a universal platform, a security chip, a switching circuit, a touch input module, and a display module.
  • FIG. 6 the common platform and the security chip are shown in FIG.
  • the universal platform and the security chip are connected to the touch input module through the switching circuit, and the display module is connected to the universal platform;
  • the method provided in Embodiment 5 specifically includes the following steps:
  • Step R1 When the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step R2 When the security chip receives the switching notification, the control switching circuit switches the touch input module to be controlled by the security chip to generate a random keyboard value sequence;
  • the security chip generates a random keyboard value sequence, which is the same as the sequence of the random keyboard value generated by the security chip in Embodiment 1, and details are not described herein again.
  • Step R3 The security chip sends the random keyboard value sequence to the universal platform, and the universal platform generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates, and the control display module prompts the user to input the verification code, and controls the display module to generate according to the random coordinate data. And displaying a random number keyboard to send random coordinate data to the security chip;
  • Step R4 The security chip obtains the verification code coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains the verification code according to the verification code coordinate information and the random coordinate data;
  • Step R5 The security chip encrypts the obtained verification code to obtain the verification code ciphertext, and outputs the verification code ciphertext through the preset interface, and the control switching circuit switches the touch input module to be controlled by the universal platform.
  • the security chip when the preset interface is a security interface, the security chip outputs the verification code ciphertext through the preset interface, specifically: the security chip sends the verification code ciphertext to the universal platform through the security interface; When the interface is a financial IC card interface, the security chip outputs the verification code ciphertext through the preset interface. The security chip sends the verification code ciphertext to the financial IC card through the financial IC card interface.
  • the step R2 to the step R3 may be replaced by: when the security chip receives the switching notification, the control switching circuit switches the touch input module to be controlled by the security chip, and sends the successful switching to the universal platform through the security interface. Notice;
  • the universal platform When receiving the notification of successful handover, the universal platform generates a random keyboard value sequence, generates random coordinate data according to the random keyboard value sequence and the preset keyboard coordinates, and controls the display module to prompt the user to input the verification code, and controls the display module to generate according to the random coordinate data. Display a random number keyboard and send random coordinate data to the security chip.
  • control pin of the security chip is connected to the control end of the switching circuit
  • first input end of the switching circuit is connected to the touch input module
  • second input end is connected to the display module
  • switching circuit is connected.
  • An output end is connected to a communication pin of the security chip, and a second output end of the switching circuit is connected to a communication pin of the universal platform;
  • the security chip control switching circuit switches the touch input module to be controlled by the security chip, specifically: the security chip inputs a high level signal to the control end of the switching circuit through its own control pin, and the control end of the switching circuit receives the high power.
  • the security chip inputs a high level signal to the control end of the switching circuit through its own control pin, and the control end of the switching circuit receives the high power.
  • the signal is flat, the first input end of the control itself is in communication with the first output end;
  • the security chip control switching circuit switches the touch input module to be controlled by a common platform, specifically: the security chip inputs a low level signal to the control end of the switching circuit through its own control pin, and the control terminal of the switching circuit receives When the signal is low, the first input of the control itself is connected to the second output.
  • the following operation is further performed: determining whether the control input switching circuit switches the touch input module to be controlled by the security chip until the current time exceeds a preset time, and then sends a timeout information to the universal platform. Otherwise continue to judge.
  • the preset time is 3 seconds.
  • the universal platform generates a random keyboard value sequence, which specifically includes:
  • Step L11 The universal platform acquires a preset sequence of keyboard values, sets an initial value of the first index value using a maximum keyboard value in the preset keyboard value sequence, and sets a second index using a minimum keyboard value in the preset keyboard value sequence.
  • the initial value of the value, and the preset keyboard value sequence is obtained as the current preset keyboard value sequence.
  • the initial value of the first index value is used as the current first index value
  • the initial value of the second index value is used as the current second index. value
  • the general platform obtains a preset keyboard value sequence 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, and sets the first index value using the maximum keyboard value 9 in the preset keyboard value sequence.
  • the initial value sets the initial value of the second index value using the minimum keyboard value 0 of the preset keyboard value sequence.
  • the preset sequence of keyboard values may be a preset sequence of keyboard values having a keyboard value of 0-9.
  • the preset keyboard value sequence can be 0x01, 0x08, 0x00, 0x02, 0x04, 0x03, 0x06, 0x05, 0x07, 0x09, or the preset keyboard value sequence can be 0x08, 0x04, 0x03, 0x01, 0x09, 0x00 , 0x02, 0x06, 0x05, 0x07.
  • the preset keyboard value sequence is 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09 as an example.
  • Step L12 The general platform calls the random number generating function to generate a random number of one byte, and performs bitwise AND operation on the generated random number and the current first index value to obtain a bit and operation result;
  • the universal platform invokes the random number generation function to generate a random number of one byte, specifically: the general platform calls the random number generation function hwGenRand(&rnd, 1) by generating an application of the random number or by using a true random source. A random number of bytes.
  • the general platform calls the random number generation function to generate a byte with a random number of 0x29.
  • the bitwise AND operation result of the generated random number 0x29 and 9 is 0x01.
  • Step L13 The universal platform finds a keyboard value corresponding to the position of the bit and the operation result from the current preset keyboard value sequence, and uses the found keyboard value as a keyboard corresponding to the position of the current second index value in the random keyboard value sequence. The value gets the current random keyboard value sequence;
  • the common platform finds the keyboard value 0x01 corresponding to the bit and operation result 0x01 position from the currently preset keyboard sequence values 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09.
  • the keyboard value 0x01 is used as the keyboard value 0x01 corresponding to the position of the current second index value 0 in the random keyboard value sequence, and the current random keyboard value sequence 0x01 is obtained.
  • Step L14 The universal platform removes the keyboard value corresponding to the position of the bit and the operation result in the preset keyboard value sequence, and uses the keyboard value behind the keyboard value removed in the preset keyboard value sequence to remove the keyboard.
  • the value is complemented, and the sequence obtained by the complement is used as the current preset keyboard value sequence, and the current first index value and the current second index value are updated to determine whether the updated current first index value and the current second index value exceed
  • the preset number of keyboard values of the keyboard value sequence is to use the current random keyboard value sequence as the final random keyboard value sequence; otherwise, return to step L12.
  • the general platform updates the current first index value by: the general platform subtracts the current first index value by 1 to obtain the updated current first index value; and the security chip updates the current second index value, specifically: the universal platform will be the current Adding an index value to 1 to obtain an updated current second index value;
  • the general platform determines whether the updated current first index value and the current second index value exceed the preset keyboard value sequence, specifically: the general platform determines whether the updated current first index value is smaller than 0, determine whether the updated current second index value is greater than 9.
  • the common platform removes the keyboard value 0x01 corresponding to the position of the operation result 0x01 in the currently preset keyboard value sequence from 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, and uses the current pre-
  • the keyboard value 0x09 after the keyboard value removed in the keyboard value sequence is set to complement the removed keyboard value, and the sequence obtained by the complement is 0x00, 0x09, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08.
  • the current preset keyboard value sequence updating the current first index value and the current second index value to obtain the updated current first index value 8 and the current second index value 1, and determining the updated current first index value 8 and current
  • the second index value 1 does not exceed the preset number of keyboard values of the keyboard value sequence, returning to step W12;
  • the final sequence of random keyboard values is: 0x01, 0x09, 0x00, 0x08, 0x06, 0x07, 0x02, 0x03, 0x04, 0x05.
  • the universal platform generates random coordinate data according to a random keyboard value sequence and a preset keyboard coordinate, specifically: the universal platform uses a random keyboard value sequence to assign a preset keyboard coordinate to generate random coordinate data. Further specifically, the universal platform assigns random coordinate data to the preset keyboard coordinates by using a random keyboard value sequence, a keyboard value of a preset backspace key, and a keyboard value of a preset confirmation key.
  • the preset keyboard coordinates are specifically preset keyboard coordinate value ranges.
  • the general platform is based on a random keyboard value sequence 0x01, 0x09, 0x00, 0x08, 0x06 0x07, 0x02, 0x03, 0x04, 0x05, a preset backspace key keyboard value 0x0A, a preset confirmation key keyboard value 0x 0B and Preset keyboard coordinates
  • the generated random coordinate data is:
  • the above-mentioned universal platform control display module prompts the user to input a verification code, and controls the display module to generate and display the random number keyboard according to the random coordinate data as follows:
  • the universal platform control display module displays the input box and prompts the user to input a verification code, and controls the display module to generate and display the random number keyboard according to the random coordinate data as follows:
  • step R4 specifically includes:
  • the verification code coordinate information is generated according to the touch screen information, the generated verification code coordinate information is used to update the data in the self register, and the interrupt notification is sent to the security chip;
  • the touch input module receives the touch screen information input by the user
  • the verification code coordinate information is generated according to the touch screen information as 0x01, 0x01
  • the data in the self register is updated by using the generated verification code coordinate information 0x01, 0x01.
  • Step R41 When the security chip receives the interrupt notification of the touch input module, the verification code coordinate information is read from the register of the touch input module;
  • the verification code coordinate information is read from the register of the touch input module to be 0x01, 0x01.
  • Step R42 The security chip finds a keyboard value corresponding to the read verification code coordinate information from the random coordinate data, and when the found keyboard value is a numeric key, adds the found keyboard value as one of the verification code to the current verification.
  • a new verification code sequence is obtained after the code sequence, and the new verification code sequence is used as the current verification code sequence, and the input data information is sent to the general platform, and the process returns to step R41; when the found keyboard value is the backspace key, the common platform is used. Send the backspace information, return to step R41; when the found keyboard value is the confirmation key, send the confirmation message to the universal platform, and the current verification code sequence as the verification code, step R5;
  • step R4 when the security chip first receives the interrupt notification of the touch input module, the method further includes: the security chip initializing the verification code sequence, and using the verification code sequence after the initialization as the current verification code sequence.
  • the keyboard value of the numeric key is 0x00-0x09
  • the keyboard value of the backspace key is 0x0A
  • the keyboard value of the confirmation key is 0x0B.
  • the security chip when the security chip reads the verification code coordinate information from the register of the touch input module to 0x01, 0x01, the security chip takes random coordinate data.
  • the keyboard value 0x01 corresponding to the read verification code coordinate information 0x01, 0x01 is found, the found keyboard value 0x01 is a numeric key, and the found keyboard value 0x01 is added as one digit of the verification code to the back of the current verification code sequence.
  • a new verification code sequence 1 the new verification code sequence as the current verification code sequence, send the input data information to the general platform, return to step R41;
  • the security chip finds the keyboard value 0x01 corresponding to the read verification code coordinate information 0x01, 0x01 from the random coordinate data, specifically: the security chip finds and reads the verification code coordinate information 0x01 from the random coordinate data,
  • the coordinate value range corresponding to 0x01 is 0x00-0x04, 0x00-0x04, and the keyboard value 0x01 corresponding to the coordinate value range 0x00-0x04, x00-0x04 is found.
  • the security chip When the security chip reads the verification code coordinate information from the register of the touch input module is 0x04, 0x02, the found keyboard value is the keyboard value 0x0A of the backspace key, and sends the backspace information to the universal platform, and returns to step R41;
  • the keyboard value found is the keyboard value 0x0A of the backspace key, specifically: when the security chip is input from the touch
  • the verification code coordinate information read in the register of the module is 0x05.
  • the coordinate value range corresponding to 0x05, 0x14 is found to be 0x04-0x08, 0x12-0x16, and it is found corresponding to the coordinate value range 0x04-0x08, 0x12-0x16.
  • the keyboard value is 0x0A for the backspace key.
  • step R5 is performed; when the verification code obtained by the security chip is 123456, the security chip obtains the verification code 123456 obtained in the above step R5 to obtain the verification code ciphertext as D3 7C F6 B3 1A B9 6755; further, When the verification code obtained by the security chip is 123456, the security chip obtains the verification code 123456 obtained in the above step R5, and obtains the padding verification code data, and uses the preset key according to a preset algorithm (for example, the preset algorithm is 3DES). Algorithm) Encrypt the padded verification code data to obtain a verification code ciphertext of D3 7C F6 B3 1A B9 67 55.
  • a preset algorithm for example, the preset algorithm is 3DES.
  • the found keyboard value is the keyboard value 0x0B of the confirmation key
  • the security chip when the security chip reads the verification code coordinate information from the register of the touch input module as 0x09, 0x15, the found keyboard value is the keyboard value 0x0B of the confirmation key, specifically: when the security chip is from the touch input module
  • the coordinate code information read in the register is 0x09, 0x15, find the coordinate value range corresponding to 0x05, 0x14 is 0x08-0x12, 0x12-0x16, find the keyboard corresponding to the coordinate value range 0x08-0x12, 0x12-0x16
  • the value is the keyboard value 0x0B of the confirmation key.
  • Step R43 When the universal platform receives the information of the input data, the control display module displays the input of one bit of data; when the backspace information is received, the control display module displays the deletion of one bit of data; when the confirmation message is received, the control display module displays the completed input. Verification code information.
  • the universal platform when the verification code needs to be input, the universal platform sends a handover notification to the security chip through the security interface, specifically: when the general platform receives the transaction notification, after performing application selection, application initialization, reading application data, and offline authentication, The control display module prompts the user to input a verification code and sends a switching notification to the security chip;
  • the method further includes: organizing the online transaction message according to the verification code ciphertext.
  • the universal platform sends a handover notification to the security chip through the security interface, specifically: when the universal platform receives the request for obtaining the verification code from the upper computer, it is safe.
  • the chip sends a handover notification;
  • the method further includes: the universal platform returns the verification code ciphertext to the upper computer.
  • the host computer receives the verification code ciphertext
  • the verification code ciphertext is decrypted to obtain a verification code, and it is determined whether the decrypted verification code is consistent with the verification code saved by itself, and then the verification is passed, otherwise the verification fails.
  • the login system is taken as an example for description (the smart terminal can be specifically a mobile terminal): the upper computer can be specifically the upper layer application of the universal platform, and the upper application sends a request for obtaining the verification code to the universal platform, and the universal platform receives the request for obtaining the verification code. Sending a handover notification to the security chip; when the universal platform receives the verification code ciphertext of the security chip, the verification code ciphertext is returned to the upper application.
  • the upper layer application receives the verification code ciphertext
  • the verification code ciphertext is decrypted to obtain a verification code, and it is determined whether the decrypted verification code is consistent with the verification code saved by itself, and then the verification is passed, otherwise the verification fails.
  • the method further includes: acquiring, by the universal platform, the transaction information;
  • the method further includes: the universal platform controls the display module to display the transaction amount according to the transaction information.
  • the method further includes:
  • Step C1 When the transaction amount needs to be input, the universal platform sends a handover notification to the security chip through the security interface;
  • Step C2 When the security chip receives the handover notification, the control switching circuit switches the touch input module to be controlled by the security chip, and sends a notification of successful handover to the universal platform;
  • Step C3 When the universal platform receives the notification of successful handover, the control display module generates and displays a keyboard, and controls the display module to prompt the user to input the transaction amount;
  • Step C4 The security chip obtains transaction data coordinate information generated by the touch input module according to the touch screen information of the user from the touch input module, and obtains transaction data according to the transaction data coordinate information;
  • Step C5 The security chip sends the transaction data to the general platform through the security interface, and the control switching circuit switches the touch input module and the display module to be controlled by the universal platform;
  • the method further includes: the universal platform control display module displays the transaction amount according to the transaction data.
  • the intelligent terminal uses an intelligent POS machine as an example to illustrate:
  • the general platform obtains transaction information by scanning patterns (such as two-dimensional code, barcode, etc.), or obtains transaction information input by the user through an input module of the smart POS machine, or acquires a transaction from the upper computer.
  • the smart POS machine obtains the transaction information, after performing application selection, application initialization, reading application data, offline authentication, sending a notification of switching notification, transaction information, and obtaining a verification code to the security chip; the security chip receives the switching notification transaction information.
  • step R3 further controls the display module to display the transaction amount according to the transaction information; when the security chip sends the verification code ciphertext to the common platform through the security interface in step R5;
  • step S5 the method further includes: the universal platform sends the verification code ciphertext to the financial IC card, and the financial IC card decrypts the verification code ciphertext to obtain a verification code, and determines whether the decrypted verification code is the same as the verification code saved by itself.
  • step S5 further includes: the financial IC card verifies the verification code ciphertext. Decrypting to obtain the verification code, judging whether the decrypted verification code is the same as the verification code saved by itself, if the verification passes and returns the verification pass information to the security chip, otherwise the verification fails and returns the verification failure information to the security chip, and the security is safe. The chip returns the information that passes the verification or the information that fails the verification to the general platform.
  • the universal platform processes the information that passes the verification or the information that fails the verification (for example, the general platform saves the information passed by the verification of the security chip or the information of the verification failure, or the general platform generates an offline transaction log according to the information passed by the verification of the security chip or the information of the verification failure.
  • the general platform obtains transaction information by scanning patterns (such as two-dimensional code, barcode, etc.), or obtains transaction information input by the user through an input module of the smart POS machine, or acquires transaction information from the upper computer.
  • scanning patterns such as two-dimensional code, barcode, etc.
  • the smart POS machine After the smart POS machine obtains the transaction information, after performing application selection, application initialization, reading application data, offline authentication, sending a notification of switching notification, transaction information, and obtaining a verification code to the security chip; the security chip receives the switching notification transaction information and After the request for obtaining the verification code, the above steps R2-R5 are performed, and in step R3, the general platform further controls the display module to display the transaction amount according to the transaction information; and the security chip sends the verification code ciphertext to the common platform through the security interface in step R5.
  • the universal platform receives the verification code ciphertext, it also includes: the general platform organizes the online transaction message according to the verification code ciphertext.
  • the verification code ciphertext is obtained from the online transaction message, the verification code ciphertext is decrypted to obtain the verification code, and it is determined whether the decrypted verification code is consistent with the verification code saved by itself. Yes, the verification passes and returns the verification pass information to the common platform, otherwise the verification fails and returns the verification failure information to the general platform.
  • the sixth embodiment provides an intelligent terminal that interacts securely under the universal platform 1, and is applied to the smart device including the universal platform 1, the security chip 2, the switching circuit 3, the touch input module 4, and the display module 5, as shown in FIG.
  • the universal platform 1 and the security chip 2 are connected through a security interface, and the universal platform 1 and the security chip 2 are connected to the touch input module 4 and the display module 5 through the switching circuit 3;
  • the generic platform 1 includes:
  • the first switching notification module 11 is configured to send a switching notification to the security chip 2 through the security interface when the verification code needs to be input;
  • the security chip 2 includes:
  • a first receiving module 21 configured to receive a handover notification from the universal platform 1;
  • the first control module 22 is configured to: when the first receiving module 21 receives the switching notification, the control switching circuit 3 switches the touch input module 4 and the display module 5 to be controlled by the security chip 2;
  • the second control module 23 is configured to: after the first control module 22 controls the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, the control display module 5 prompts the user to input the verification code;
  • the third control module 24 is configured to: after the first control module 22 controls the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, control the display module 5 to generate and display the keyboard according to the coordinate data;
  • the first obtaining module 25 is configured to obtain, from the touch input module 4, the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user, and obtain the verification code according to the verification code coordinate information and the coordinate data;
  • the switching circuit 3 can be used as the touch input module 4 and the display module 5.
  • the communication channel with the security chip 2 that is, the second control module 23 controls the display module 5 to prompt the user to input the verification code through the communication channel 3
  • the third control module 24 controls the display module 5 through the communication channel of the switching circuit 3 according to the coordinate data.
  • the first acquisition module 25 acquires the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user from the touch input module 4 through the communication channel of the switching circuit 3.
  • the encryption module 26 is configured to encrypt the verification code obtained by the first obtaining module 25 to obtain a verification code ciphertext;
  • the output module 27 is configured to output the verification code ciphertext obtained by the encryption module 26 through the preset interface;
  • the first control module 22 is further configured to: after the output module 27 outputs the verification code ciphertext obtained by the encryption module 26 through the preset interface, the control switching circuit 3 switches the touch input module 4 and the display module 5 to be controlled by the universal platform 1. .
  • the security chip 2 may further include a first generation module
  • a first generating module configured to: when the first receiving module 21 receives the switching notification, generate random coordinate data according to the preset keyboard coordinates;
  • the third control module 24 is specifically configured to control, by the first control module 22, the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and generate random coordinates according to the first generation module.
  • the data control display module 5 generates and displays a random number keyboard;
  • the first obtaining module 25 is configured to obtain, from the touch input module 4, the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user, and the random coordinate data generated by the verification code coordinate information and the first generation module. Get the verification code.
  • the first switching notification module 11 is further configured to send the preset keyboard coordinates to the security chip 2 through the security interface;
  • the first receiving module 21 is further configured to receive preset keyboard coordinates from the universal platform 1;
  • the first generation module is configured to generate random coordinate data according to the preset keyboard coordinates received by the first receiving module 21 when the first receiving module 21 receives the switching notification.
  • the foregoing first generating module specifically includes:
  • a first generating unit configured to generate a random keyboard value sequence when the first receiving module 21 receives the switching notification
  • the second generating unit is configured to generate random coordinate data according to the random keyboard value sequence generated by the first generating unit and the preset keyboard coordinates.
  • the foregoing first generating unit specifically includes:
  • a first acquiring subunit configured to acquire a preset keyboard value sequence, and set an initial value of the first index value by using a maximum keyboard value in the preset keyboard value sequence acquired by the first obtaining subunit, and using a preset keyboard value
  • the minimum keyboard value in the sequence sets the initial value of the second index value, and takes the obtained preset keyboard value sequence as the current preset keyboard value sequence, and takes the initial value of the first index value as the current first index value, and The initial value of the second index value is taken as the current second index value;
  • a first generating subunit configured to call a random number generating function to generate a random number of one byte, and perform bitwise AND operation on the generated random number and the current first index value to obtain a bitwise operation result;
  • the search is used as a sub-unit for finding a keyboard value corresponding to a position of the bit and the operation result obtained by the first generation sub-unit from the current preset keyboard value sequence, and using the found keyboard value as a random keyboard value sequence
  • the keyboard value corresponding to the position of the current second index value is the current random keyboard value sequence
  • the complement sub-unit is removed, and the keyboard value corresponding to the position of the bit and the operation result in the current preset keyboard value sequence is removed, and the keyboard value after the keyboard value removed in the current preset keyboard value sequence is used. Complement the removed keyboard value, and use the sequence obtained by the complement as the current preset keyboard value sequence;
  • a determining subunit configured to determine whether the current first index value and the current second index value after the updated subunit is updated exceed a preset number of keyboard values of the keyboard value sequence
  • the judgment subunit determines that the result is YES
  • the current random keyboard value sequence obtained by the complement subunit is removed as a final random keyboard value sequence
  • the first generating subunit is further configured to: when determining that the subunit determining result is no, calling the random number generating function to generate a random number of one byte, and performing bitwise AND operation on the generated random number and the current first index value to obtain a bit And the result of the operation.
  • the universal platform 1 further includes a third acquiring module
  • a third obtaining module configured to obtain transaction information
  • the first handover notification module 11 is specifically configured to send a handover notification to the security chip 2 through the security interface when the verification code needs to be input, and send the transaction information acquired by the third acquisition module to the security chip 2 through the security interface. ;
  • the first receiving module 21 is further configured to receive transaction information from the universal platform 1;
  • the second control module 23 is further configured to control, by the first control module 22, the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and then control the display according to the transaction information received by the first receiving module 21.
  • Module 5 displays the transaction amount.
  • the first handover notification module 11 is configured to send a handover notification to the security chip 2 through the security interface when the verification code needs to be input, and send a request for obtaining the verification code to the security chip 2 through the security interface;
  • the first receiving module 21 is further configured to receive a request for a verification code from the universal platform 1;
  • the second control module 23 is specifically configured to be used by the first control module 22 to control the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and obtain the verification code according to the first receiving module 21
  • the request control display module 5 prompts the user to input a verification code
  • the above universal platform 1 also includes:
  • a second switching notification module configured to send a notification of switching notification and obtaining a transaction amount to the security chip 2 through the secure interface when the transaction amount needs to be input;
  • the above security chip 2 further includes:
  • a fourth receiving module configured to receive a handover notification from the universal platform 1 and a request for acquiring a transaction amount
  • An eighth control module configured to: when the fourth receiving module receives the switching notification and the request for acquiring the transaction amount, the control switching circuit 3 switches the touch input module 4 and the display module 5 to be controlled by the security chip 2;
  • the ninth control module is configured to control the switching module 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and then control the display module 5 according to the request for acquiring the transaction amount received by the fourth receiving module. Prompt the user to enter the transaction amount;
  • a tenth control module configured for the eighth control module to control the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and then control the display module 5 to generate and display the keyboard;
  • the fourth obtaining module is configured to: after the tenth control module controls the display module 5 to generate and display the keyboard, obtain, from the touch input module 4, the transaction data coordinate information generated by the touch input module 4 according to the touch screen information of the user, according to the transaction data coordinate Information yields transaction amount data;
  • a fifth sending module configured to send the transaction amount data obtained by the fourth obtaining module to the universal platform 1 through the security interface
  • the eighth control module is further configured to: after the fifth sending module sends the transaction amount data obtained by the fourth obtaining module to the universal platform 1 through the security interface, the control switching circuit 3 switches the touch input module 4 and the display module 5 to Controlled by the universal platform 1;
  • the second control module 23 is further configured to control, by the first control module 22, the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and control the transaction amount data according to the fourth obtaining module.
  • Display module 5 displays the transaction amount.
  • the tenth control module is specifically used by the eighth control module to control the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and then generate random coordinate data according to the preset keyboard coordinates.
  • the fourth obtaining module is specifically configured to use the tenth control module to control the display module 5 to generate and display the random number keyboard according to the random coordinate data, according to the acquired Transaction data coordinate information and random coordinate data generated by the tenth control module to obtain transaction amount data;
  • the tenth control module is specifically used by the eighth control module to control the switching circuit 3 to switch the touch input module 4 and the display module 5 to be controlled by the security chip 2, and then control the display module according to preset coordinate data.
  • the verification code coordinate information is generated according to the touch screen information, and the data in the self register is updated by using the generated verification code coordinate information, and is sent to the security chip 2 Send an interrupt notification;
  • the foregoing first obtaining module 25 specifically includes:
  • a first receiving unit configured to receive an interrupt notification of the touch input module 4
  • the first obtaining unit is configured to: when the first receiving unit receives the interrupt notification of the touch input module 4, read the verification code coordinate information from the register of the touch input module 4;
  • a first searching unit configured to find, from the coordinate data, a keyboard value corresponding to the verification code coordinate information read by the first acquiring unit;
  • the first unit is configured to: when the keyboard value found by the first searching unit is a numeric key, add the found keyboard value as a digit of the verification code to the end of the current verification code sequence to obtain a new verification code sequence, and the new The verification code sequence is used as the current verification code sequence;
  • the new verification code sequence is used as the current verification code sequence, and the control display module 5 displays the input one-bit data;
  • a second control unit configured to: when the keyboard value found by the first searching unit is a backspace key, the control display module 5 displays the deletion of one bit of data;
  • a third control unit configured to: when the keyboard value found by the first searching unit is a confirmation key, the control display module 5 displays information of completing the input verification code, and uses the current verification code sequence as a verification code;
  • the foregoing encryption module 26 is specifically configured to encrypt the verification code obtained by the third control unit to obtain a verification code ciphertext;
  • the first initializing unit is configured to initialize the verification code sequence when the first receiving unit receives the interrupt notification of the touch input module for the first time, and use the verification code sequence after the initialization as the current verification code sequence.
  • the universal platform 1 and the security chip 2 are connected to the touch input module 4 and the display module 5 through the switching circuit 3, and may be replaced by: the universal platform 1 and the security chip 2 through the switching circuit 3 and the touch input.
  • Module 4 is connected, and display module 5 is connected to universal platform 1;
  • the first control module 22 is replaced by the fourth control module
  • the second control module 23 of the security chip 2 is replaced with the fifth control module of the universal platform 1
  • the third control module 24 of the security chip is replaced with a universal one.
  • the fourth control module is configured to: when the first receiving module 21 receives the switching notification, the control switching circuit 3 switches the touch input module 4 to be controlled by the security chip 2, and sends a notification of successful switching to the universal platform 1 through the security interface;
  • the above universal platform 1 further includes a third receiving module
  • a third receiving module configured to receive a notification that the switching from the security chip 2 is successful
  • a fifth control module configured to: when the third receiving module receives the notification that the switching of the security chip 2 is successful, the control display module 5 prompts the user to input the verification code;
  • a sixth control module configured to: when the third receiving module receives the notification that the switching of the security chip 2 is successful, control the display module 5 to generate and display the keyboard according to the coordinate data;
  • the switching circuit 3 can serve as a communication channel between the touch input module 4 and the security chip 2, and
  • the switching circuit 3 can serve as a communication channel between the display module 5 and the universal platform 1; that is, the fifth control module controls the display module 5 to prompt the user to input the verification code through the communication channel 3, and the sixth control module passes the switching circuit 3 according to the coordinate data.
  • the communication channel control display module 5 generates and displays a keyboard.
  • the first acquisition module 25 obtains the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user from the touch input module 4 through the communication channel of the switching circuit 3.
  • the fourth control module is further configured to: after the output module 27 outputs the verification code ciphertext obtained by the encryption module 26 through the preset interface, the control switching circuit 3 switches the touch input module 4 to be controlled by the universal platform 1.
  • the security chip 2 further includes a second generation module
  • a second generating module configured to generate a random keyboard value sequence when the first receiving module 21 receives the switching notification
  • the fourth control module is further configured to send the random keyboard value sequence generated by the second generation module to the universal platform 1 through the security interface;
  • the above general platform 1 further includes a third generation module
  • the third receiving module is further configured to receive a sequence of random keyboard values from the security chip 2;
  • a third generating module configured to generate random coordinate data according to the random keyboard value sequence received by the third receiving module and the preset keyboard coordinates
  • the sixth control module is configured to: when the third receiving module receives the notification that the switching of the security chip 2 is successful, control the display module 5 to generate and display the random number keyboard according to the random coordinate data generated by the third generating module;
  • the above universal platform 1 further includes a third sending module
  • a third sending module configured to: after the second control module controls the display module 5 to generate and display the random number keyboard according to the random coordinate data generated by the third generating module, send the random coordinate data generated by the third generating module to the security chip through the security interface. 2;
  • the first receiving module 21 is further configured to receive random coordinate data from the universal platform 1;
  • the first obtaining module 25 is configured to obtain, from the touch input module 4, the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user, and the coordinate data and the coordinate data received by the first receiving module 21 according to the verification code coordinate information. Get the verification code.
  • the foregoing second generating module specifically includes:
  • the first obtaining sub-module is configured to obtain a preset keyboard value sequence, set an initial value of the first index value by using a maximum keyboard value in the obtained preset keyboard value sequence, and use a minimum keyboard in the preset keyboard value sequence
  • the value sets the initial value of the second index value, and takes the obtained preset keyboard value sequence as the current preset keyboard value sequence, and takes the initial value of the first index value as the current first index value, and the second index value
  • the initial value is used as the current second index value;
  • a first generating submodule configured to call a random number generating function to generate a random number of one byte, and perform bitwise AND operation on the generated random number and the current first index value to obtain a bit and operation result;
  • the first search is used as a sub-module, and is configured to find a keyboard value corresponding to a position of the bit and the operation result obtained by the first generation sub-module from the current preset keyboard value sequence, and use the found keyboard value as a random keyboard value sequence.
  • the keyboard value corresponding to the position of the current second index value is obtained by the current random keyboard value sequence;
  • the first removing complement sub-module is configured to remove the keyboard value corresponding to the position of the bit and the operation result in the current preset keyboard value sequence, and use the keyboard value after the current preset keyboard value sequence is removed.
  • the keyboard value complements the removed keyboard value, and the sequence obtained by the complement is used as the current preset keyboard value sequence;
  • a first update sub-module configured to: after the sequence of the complementing sub-module is used as the current preset keyboard value sequence, update the current first index value and the current second index value;
  • a first determining sub-module configured to determine whether the current first index value and the current second index value after the first update sub-module is updated exceeds a preset number of keyboard values of the keyboard value sequence
  • the first as a sub-module when the first judgment sub-module determines that the result is YES, the current random keyboard value sequence obtained by the first removal sub-module is used as the final random keyboard value sequence;
  • the first generating sub-module is further configured to: when the first determining sub-module determines that the result is no, the random number generating function is called to generate a random number of one byte, and the generated random number is bit-operated with the current first index value. Out of position and operation results.
  • the universal platform 1 further includes a fourth generation module and a fifth generation module;
  • a fourth generation module configured to generate a random keyboard value sequence when the third receiving module receives the notification that the switching from the security chip 2 is successful;
  • a fifth generation module configured to generate random coordinate data according to the random keyboard value sequence generated by the fourth generation module and the preset keyboard coordinates
  • the sixth control module is configured to: when the third receiving module receives the notification that the switching of the security chip 2 is successful, control the display module 5 to generate and display the random number keyboard according to the random coordinate data generated by the fifth generating module;
  • the universal platform 1 further includes a fourth sending module
  • the fourth sending module is configured to: after the sixth control module controls the display module 5 to generate and display the random number keyboard according to the random coordinate data generated by the fifth generating module, send the random coordinate data generated by the fifth generating module to the security chip 2;
  • the first receiving module 21 is further configured to receive random coordinate data from the universal platform 1;
  • the first obtaining module 25 is configured to obtain, from the touch input module 4, the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user, and the coordinate data and the coordinate data received by the first receiving module 21 according to the verification code coordinate information. Get the verification code.
  • the foregoing fourth generation module specifically includes:
  • a second acquiring sub-module configured to acquire a preset keyboard value sequence, set an initial value of the first index value by using a maximum keyboard value in the obtained preset keyboard value sequence, and use a minimum keyboard in the preset keyboard value sequence
  • the value sets the initial value of the second index value, and takes the obtained preset keyboard value sequence as the current preset keyboard value sequence, and takes the initial value of the first index value as the current first index value, and the second index value
  • the initial value is used as the current second index value;
  • a second generating submodule configured to call a random number generating function to generate a random number of one byte, and perform bitwise AND operation on the generated random number and the current first index value to obtain a bit and operation result;
  • the second search is used as a sub-module, and is configured to find a keyboard value corresponding to a position of the bit and the operation result obtained by the second generation sub-module from the currently preset keyboard value sequence, and use the found keyboard value as a random keyboard value sequence.
  • the keyboard value corresponding to the position of the current second index value is obtained by the current random keyboard value sequence;
  • a second removal sub-module configured to remove a keyboard value corresponding to a position of the bit and the operation result in the current preset keyboard value sequence, and use a keyboard value that is removed from the current preset keyboard value sequence
  • the keyboard value complements the removed keyboard value, and the sequence obtained by the complement is used as the current preset keyboard value sequence;
  • a second update sub-module configured to: after the second removal complement sub-module uses the sequence obtained by the complement as the current preset keyboard value sequence, updating the current first index value and the current second index value;
  • a second determining sub-module configured to determine whether the current first index value and the current second index value after the second update sub-module is updated exceeds a preset number of keyboard values of the keyboard value sequence
  • the second is used as a sub-module, when the second judgment sub-module determines that the result is YES, the current random keyboard value sequence obtained by the second removal sub-module is used as the final random keyboard value sequence;
  • the second generating sub-module is further configured to: when the second determining sub-module determines that the result is no, the random number generating function is called to generate a random number of one byte, and the generated random number is bit-operated with the current first index value. Out of position and operation results.
  • the above-mentioned universal platform 1 further includes a fifth acquisition module
  • a fifth obtaining module configured to obtain transaction information
  • the fifth control module is further configured to: when the third receiving module receives the notification that the switching of the security chip 2 is successful, control the display module 5 to display the transaction amount according to the transaction information acquired by the fifth obtaining module.
  • the above-mentioned universal platform 1 further includes:
  • a third switching notification module configured to send a switching notification to the security chip 2 through the security interface when the transaction amount needs to be input
  • a fifth receiving module configured to receive a notification that the switching from the security chip 2 is successful
  • the eleventh control module is configured to: when the fifth receiving module receives the notification that the switching from the security chip 2 is successful, the control display module 5 generates and displays the keyboard;
  • a twelfth control module configured to: when the fifth receiving module receives the notification that the switching from the security chip 2 is successful, the control display module 5 prompts the user to input the transaction amount;
  • the security chip 2 further includes:
  • a sixth receiving module configured to receive a handover notification from the universal platform 1;
  • the thirteenth control module is configured to: when the sixth receiving module receives the switching notification from the universal platform 1, the control switching circuit 3 switches the touch input module 4 to be controlled by the security chip 2, and sends a notification that the switching success is successful to the universal platform 1. ;
  • the sixth obtaining module is configured to obtain, from the touch input module 4, transaction data coordinate information generated by the touch input module 4 according to the touch screen information of the user, and obtain transaction data according to the transaction data coordinate information;
  • a sixth sending module configured to send the transaction data obtained by the sixth obtaining module to the universal platform 1 through the security interface
  • the thirteenth control module is further configured to: after the sixth sending module sends the transaction data obtained by the sixth obtaining module to the universal platform 1 through the security interface, the control switching circuit 3 switches the touch input module 4 and the display module 5 to Controlled by the universal platform 1;
  • the fifth receiving module is further configured to receive transaction data from the security chip 2;
  • the fifth control module is further configured to: when the third receiving module receives the notification that the switching of the security chip 2 is successful, the control display module 5 displays the transaction amount according to the transaction data received by the fifth receiving module.
  • the verification code coordinate information is generated according to the touch screen information, and the data in the self register is updated by using the generated verification code coordinate information, and is sent to the security chip 2 Send an interrupt notification;
  • the foregoing first obtaining module 25 specifically includes:
  • a second receiving unit configured to receive an interrupt notification of the touch input module 4
  • a second obtaining unit configured to: when the second receiving unit receives the interrupt notification of the touch input module 4, read the verification code coordinate information from the register of the touch input module 4;
  • a second searching unit configured to find, from the coordinate data, a keyboard value corresponding to the verification code coordinate information read by the second acquiring unit;
  • the second is used as a unit, when the keyboard value found by the second searching unit is a numeric key, the found keyboard value is added as one bit of the verification code to the end of the current verification code sequence to obtain a new verification code sequence, and the new The verification code sequence is used as the current verification code sequence;
  • a first sending unit configured to send the information of the input data to the universal platform 1 through the secure interface after the new verification code sequence is used as the current verification code sequence; and the keyboard value found by the second searching unit is a backspace key Sending backspace information to the universal platform 1; when the found keyboard value is a confirmation key, sending a confirmation message to the universal platform 1;
  • the third is used as a unit, when the found keyboard value is a confirmation key, the current verification code sequence is used as a verification code;
  • a second initializing unit configured to: when the second receiving unit receives the interrupt notification of the touch input module for the first time, initialize the verification code sequence, and use the verification code sequence after the initialization as the current verification code sequence;
  • the Universal Platform 1 also includes:
  • a receiving unit configured to receive information from the security chip 2
  • control display module 5 configured to: when the receiving unit receives the information of the input data, the control display module 5 displays the input of one bit of data; when the receiving unit receives the backspace information, the control display module 5 displays the deletion of one bit of data; when the receiving unit finds Upon receiving the confirmation information, the control display module 5 displays information that the input verification code is completed;
  • the encryption module 26 is specifically configured to encrypt the verification code obtained by the third unit as the verification code ciphertext.
  • the universal platform 1 and the security chip 2 are connected to the touch input module 4 and the display module 5 through the switching circuit 3, and may be replaced by: the universal platform 1 and the security chip 2 through the switching circuit 3 and the display module 5. Connected, the touch input module 4 is connected to the universal platform 1;
  • the first control module 22 is replaced by a seventh control module
  • a seventh control module when the first receiving module 21 receives the switching notification, the control switching circuit 3 switches the display module 5 to be controlled by the security chip 2;
  • the security chip 2 further includes a first sending module and a second receiving module
  • a first sending module configured to: the seventh control module controls the switching circuit 3 to switch the display module 5 to be controlled by the security chip 2, and then sends a notification of successful switching to the universal platform 1 through the security interface;
  • the first acquisition module 25 in the security chip 2 is replaced by the second acquisition module in the universal platform 1, and the universal platform 1 further includes a second sending module.
  • the second obtaining module is configured to obtain, from the touch input module 4, the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user, according to the verification code coordinate information, and the second acquisition module is configured to receive the notification of the successful switching of the security chip 2
  • the coordinate data is used to obtain a verification code
  • the seventh control module controls the switching circuit 3 to switch the display module 5 to be controlled by the security chip 2
  • the switching circuit 3 can serve as a communication channel between the display module 5 and the security chip 2
  • the switching circuit 3 can As the communication channel of the touch input module 4 and the universal platform 1
  • the second acquisition module acquires the verification code coordinate information generated by the touch input module 4 according to the touch screen information of the user from the touch input module 4 through the communication channel of the switching circuit 3 .
  • the second control module 23 controls the display module 5 to prompt the user to input the verification code through the communication channel 3.
  • the third control module 24 controls the display module 5 to generate and display the keyboard through the communication channel of the switching circuit 3 according to the coordinate data.
  • a second sending module configured to send, by using the security interface, the verification code obtained by the second acquiring module to the security chip 2;
  • a second receiving module configured to receive a verification code from the universal platform 1
  • the encryption module 26 is configured to encrypt the verification code received by the second receiving module to obtain the verification code ciphertext;
  • the seventh control module is further configured to: after the output module 27 outputs the verification code ciphertext obtained by the encryption module 26 through the preset interface, the control switching circuit 3 switches the display module 5 to be controlled by the universal platform 1.
  • the universal platform 1 further includes:
  • a fourth switching notification module configured to send a switching notification to the security chip 2 through the security interface when the transaction amount needs to be input
  • a seventh receiving module configured to receive a notification that the switching from the security chip 2 is successful
  • a seventh obtaining module configured to: when the seventh receiving module receives the notification that the switching from the security chip 2 is successful, obtain, from the touch input module 4, the transaction data coordinate information generated by the touch input module 4 according to the touch screen information of the user, according to Transaction data coordinate information to obtain transaction data;
  • the security chip 2 further includes:
  • An eighth receiving module configured to receive a handover notification from the universal platform 1;
  • the fourteenth control module is configured to: when the eighth receiving module receives the switching notification from the universal platform 1, the control switching circuit 3 switches the display module 5 to be controlled by the security chip 2, and sends the successful switching to the universal platform 1 through the security interface. Notice;
  • a fifteenth control module configured to: after the fourteenth control module sends a notification of successful handover to the universal platform 1 through the security interface, the control display module 5 generates and displays a keyboard;
  • control display module 5 prompts the user to input the transaction amount
  • the first switching notification module 11 is further configured to send the transaction data obtained by the seventh obtaining module to the security chip 2 through the security interface when the verification code needs to be input;
  • the first receiving module 21 is further configured to receive transaction data from the universal platform 1;
  • the second control module 23 is further configured to control the display module 5 to display the transaction amount according to the transaction data received by the first receiving module 21.
  • the output module 27 is configured to send the verification code ciphertext to the universal platform 1 through the security interface when the preset interface is a security interface.
  • the output module 27 is specifically configured to: when the preset interface is a financial IC card interface, send the verification code ciphertext to the financial IC card through the financial IC card interface.

Landscapes

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

Abstract

一种在通用平台下安全交互的方法,其包括:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;安全芯片接收到切换通知时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制,控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘,从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码,对得出的验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。本发明可以避免因验证码泄露所带来的损失。

Description

一种在通用平台下安全交互的方法及智能终端 技术领域
本发明涉及一种在通用平台下安全交互的方法及智能终端,属于信息安全技术领域。
背景技术
随着智能终端的不断推广,智能终端的安全性问题逐渐被用户所关注。智能终端通用平台(例如,通用平台为安卓、UNIX、XENIX、LINUX、Netware等平台)的源码是开源的,当通用平台存在漏洞时,一些敏感数据很容易被泄露。以智能POS机为例,现有技术中智能POS机多半采用安卓操作***作为通用平台,通过通用平台与上位机进行通信,在用户输入验证码和/或交易金额的过程中,如果安卓***存在漏洞,就增加了验证码被窃取和/或交易金额被篡改的风险,一旦验证码被窃取和/或交易金额被篡改,极易给用户带来经济上的损失。以用户使用安卓操作***的智能终端登录***为例,在用户输入验证码进行登录验证时,如果安卓***存在漏洞,用户输入的验证码就容易被窃取,一旦验证码被窃取,容易导致用户在***中的数据泄露,造成不必要的损失。
发明内容
本发明的目的是提供一种在通用平台下安全交互的方法及智能终端,其可避免因验证码泄露所带来的损失。
为此,根据本发明的一个方面,提供了一种在通用平台下安全交互的方法,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接,方法具体包括以下步骤:
步骤S1:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;
步骤S2:安全芯片接收到切换通知时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制;
步骤S3:安全芯片控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘;
步骤S4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
步骤S5:安全芯片对得出的验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。
优选地,上述通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接,可以替换为:通用平台和安全芯片通过切换电路与触控输入模块连接,显示模块与通用平台连接;
相应地,上述步骤S2-S3替换为:
安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,通过安全接口向通用平台发送切换成功的通知;
通用平台接收到切换成功的通知时,控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘;
上述步骤S5中,安全芯片控制切换电路将触控输入模块和显示模块切换为由通用平台控制,替换为:安全芯片控制切换电路将触控输入模块切换为由通用平台控制。
优选地,上述通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接,可以替换为:通用平台和安全芯片通过切换电路与显示模块连接,触控输入模块与通用平台连接;
相应地,上述步骤S2替换为:安全芯片接收到切换通知时,控制切换电路将显示模块切换为由安全芯片控制;
上述步骤S3中还包括:安全芯片通过安全接口向通用平台发送切换成功的通知;
上述步骤S4-步骤S5替换为:
上述通用平台接收到切换成功的通知时,从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码,向安全芯片发送得出的验证码;
上述安全芯片接收到验证码时,对验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将显示模块切换为由通用平台控制。
根据本发明的另外一方面,提供了一种在通用平台下安全交互的智能终端,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接;
通用平台包括:
第一切换通知模块,用于当需要输入验证码时,通过安全接口向安全芯片发送切换通知;
安全芯片包括:
第一接收模块,用于接收来自通用平台的切换通知;
第一控制模块,用于第一接收模块接收到切换通知时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制;
第二控制模块,用于第一控制模块控制切换电路将触控输入模块和显示模块切换为由安全芯片控制之后,控制显示模块提示用户输入验证码;
第三控制模块,用于第一控制模块控制切换电路将触控输入模块和显示模块切换为由安全芯片控制之后,根据坐标数据控制显示模块生成并显示键盘;
第一获取模块,用于从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
加密模块,用于对第一获取模块得出的验证码进行加密得到验证码密文;
输出模块,用于通过预设接口输出加密模块得到的验证码密文;
第一控制模块,还用于输出模块通过预设接口输出加密模块得到的验证码密文之后,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。
优选地,上述通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接,还可以替换为:通用平台和 安全芯片通过切换电路与触控输入模块连接,显示模块与通用平台连接;
相应地,上述第一控制模块替换为第四控制模块,第二控制模块替换为第五控制模块,第三控制模块替换为第六控制模块;
第四控制模块,用于第一接收模块接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,通过安全接口向通用平台发送切换成功的通知;
上述通用平台还包括第三接收模块;
第三接收模块,用于接收来自安全芯片的切换成功的通知;
第五控制模块,用于第三接收模块接收到安全芯片的切换成功的通知时,控制显示模块提示用户输入验证码;
第六控制模块,用于第三接收模块接收到安全芯片的切换成功的通知时,根据坐标数据控制显示模块生成并显示键盘;
上述第四控制模块,还用于输出模块通过预设接口输出加密模块得到的验证码密文之后,控制切换电路将触控输入模块切换为由通用平台控制。
优选地,上述通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接,还可以替换为:通用平台和安全芯片通过切换电路与显示模块连接,触控输入模块与通用平台连接;
相应地,上述第一控制模块替换为第七控制模块;
第七控制模块,用于第一接收模块接收到切换通知时,控制切换电路将显示模块切换为由安全芯片控制;
上述安全芯片还包括第一发送模块和第二接收模块;
第一发送模块,用于第七控制模块控制切换电路将显示模块切换为由安全芯片控制之后,通过安全接口向通用平台发送切换成功的通知;
上述第一获取模块替换为第二获取模块,通用平台还包括第二发送模块;
第二获取模块,用于接收到安全芯片的切换成功的通知时,从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
第二发送模块,用于向安全芯片发送第二获取模块得出的验证码;
第二接收模块,用于接收来自通用平台的验证码;
上述加密模块,具体用于对第二接收模块接收的验证码进行加密得到验证码密文;
上述第七控制模块,还用于输出模块通过预设接口输出加密模块得到的验证码密文之后,控制切换电路将显示模块切换为由通用平台控制。
本发明的有益效果是:在用户输入验证码之前,安全芯片将显示模块和/或触控输入模块切换为由安全芯片控制,通用平台即便存在漏洞,用户输入的验证码也无法被窃取,从而保证了用户输入验证码过程中的安全性,避免了因验证码泄露所带来的损失。
附图说明
图1为本发明实施例1中一种在通用平台下安全交互的方法流程图;
图2为本发明实施例2中一种在通用平台下安全交互的方法流程图;
图3为本发明实施例3中一种在通用平台下安全交互的方法流程图;
图4为本发明实施例4中一种在通用平台下安全交互的智能终端结构示意图;
图5为本发明实施例4中一种在通用平台下安全交互的方法流程图;
图6为本发明实施例5中一种在通用平台下安全交互的智能终端结构示意图;
图7为本发明实施例5中一种在通用平台下安全交互的方法流程图;
图8为本发明实施例6中一种在通用平台下安全交互的智能终端的模块组成框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
实施例1:
本实施例1提供一种在通用平台下安全交互的方法,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接;
如图1所示,本实施例1提供的方法具体包括以下步骤:
步骤S11:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;
步骤S12:安全芯片接收到切换通知时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制;
步骤S13:安全芯片控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘;
步骤S14:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
步骤S15:安全芯片对得出的验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。
优选地:本实施例1步骤S12中安全芯片控制切换电路将触控输入模块和显示模块切换为由安全芯片控制之后,切换电路可以作为触控输入模块和显示模块与安全芯片的通信通道;即步骤S13中安全芯片通过切换电路这个通信通道控制显示模块提示用户输入验证码,根据坐标数据通过切换电路这个通信通道控制显示模块生成并显示键盘,步骤S14中安全芯片通过切换电路这个通信通道从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息。
本实施例1中,步骤S12中,安全芯片接收到切换通知之后,还包括:安全芯片根据预设的键盘坐标生成随机坐标数据;
步骤S13中,安全芯片根据坐标数据控制显示模块生成并显示键盘,具体为:安全芯片根据随机坐标数据控制 显示模块生成并显示随机数键盘;
步骤S14中,安全芯片根据验证码坐标信息和坐标数据得出验证码,具体为:安全芯片根据验证码坐标信息和随机坐标数据得出验证码。
优选地,步骤S11中还包括,通用平台将预设的键盘坐标通过安全接口发送给安全芯片;
上述步骤S12中,安全芯片根据预设的键盘坐标生成随机坐标数据,具体为:安全芯片根据接收的预设的键盘坐标生成随机坐标数据。
具体地,上述安全芯片根据预设的键盘坐标生成随机坐标数据,具体为:安全芯片生成随机键盘值序列,根据随机键盘值序列和预设的键盘坐标生成随机坐标数据。
进一步具体地,安全芯片生成随机键盘值序列,具体包括:
步骤M11:安全芯片获取预设的键盘值序列,使用预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取的预设的键盘值序列作为当前预设的键盘值序列,将第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
步骤M12:安全芯片调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果;
步骤M13:安全芯片从当前预设的键盘值序列中找到与位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
步骤M14:安全芯片将当前预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列,更新当前第一索引值和当前第二索引值,判断更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数,是则将当前随机键盘值序列作为最终的随机键盘值序列;否则,返回步骤M12。
例如,得到最终的随机键盘值序列为0x01,0x09,0x00,0x08,0x06,0x07,0x02,0x03,0x04,0x05。
本实施例1中,上述当需要输入验证码之前,还包括:通用平台获取交易信息;
上述步骤S11中,当需要输入验证码时,还包括:通用平台将交易信息通过安全接口发送给安全芯片;
上述步骤S13中还包括:安全芯片根据交易信息控制显示模块显示交易金额。
例如,安全芯片控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘,并根据交易信息控制显示模块显示交易金额如下:
Figure PCTCN2019081990-appb-000001
或者,本实施例1中,上述当需要输入验证码时,还包括:通用平台通过安全接口向安全芯片发送获取验证码的请求;
上述安全芯片控制显示模块提示用户输入验证码,具体为:安全芯片根据获取验证码的请求控制显示模块提示用户输入验证码;
上述当需要输入验证码之前,还包括:
步骤A1:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知和获取交易金额的请求;
步骤A2:安全芯片接收到切换通知和获取交易金额的请求时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制;
步骤A3:安全芯片根据获取交易金额的请求控制显示模块提示用户输入交易金额,控制显示模块生成并显示键盘;
步骤A4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易金额数据,将交易金额数据通过安全接口发送给通用平台,控制切换电路将触控输入模块和显示模块切换为由通用平台控制;
上述步骤S13中还包括:安全芯片根据交易金额数据控制显示模块显示交易金额。
具体地,上述安全芯片控制显示模块生成并显示键盘,具体为:安全芯片根据预设的键盘坐标生成随机坐标数据,根据随机坐标数据控制显示模块生成并显示随机数键盘;相应地,上述安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和随机坐标数据得出交易金额数据;
本实施例1中,安全芯片根据预设的键盘坐标生成随机坐标数据,根据随机坐标数据控制显示模块生成并显示随机数键盘具体参考实施例4,在此不再赘述。例如生成的随机坐标数据为:
0x01,0x00-0x04,0x00-0x04 0x09,0x04-0x08,0x00-0x04 0x00,0x08-0x12,0x00-0x04
0x08,0x00-0x04,0x04-0x08 0x06,0x04-0x08,0x04-0x08 0x07,0x08-0x12,0x04-0x08
0x02,0x00-0x04,0x08-0x12 0x03,0x04-0x08,0x08-0x12 0x04,0x08-0x12,0x08-0x12
0x05,0x00-0x04,0x12-0x16 0x0A,0x04-0x08,0x12-0x16 0x0B,0x08-0x12,0x12-0x16
或者,具体地,上述安全芯片控制显示模块生成并显示键盘,具体为:安全芯片根据预设的坐标数据控制显示模块生成并显示键盘;相应地,上述安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和预设的坐标数据得出交易金额数据。
本实施例1中,上述步骤S14具体包括:触控输入模块每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向安全芯片发送中断通知;
步骤S141:安全芯片接收到触控输入模块的中断通知时,从触控输入模块的寄存器中读取验证码坐标信息;
步骤S142:安全芯片从坐标数据中找到与读取的验证码坐标信息对应的键盘值,当找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当 前验证码序列,控制显示模块显示输入一位数据,返回步骤S141;当找到的键盘值为退格键时,控制显示模块显示删除一位数据,返回步骤S141;当找到的键盘值为确认键时,控制显示模块显示完成输入验证码的信息,并将当前验证码序列作为验证码,执行步骤S15;
步骤S14中,安全芯片第一次接收到触控输入模块的中断通知时还包括:安全芯片初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列。
本实施例1中,当预设接口为安全接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过安全接口发送给通用平台;
当预设接口为金融IC卡接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡。
本实施例1中,上述当需要输入验证码时还包括:通用平台通过安全接口向安全芯片发送获取验证码的请求;
上述安全芯片控制显示模块提示用户输入验证码,具体为:安全芯片根据获取验证码的请求控制显示模块提示用户输入验证码;
上述步骤S15之后,还包括:
步骤A11:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知和获取交易金额的请求;
步骤A12:安全芯片接收到切换通知和获取交易金额的请求时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制;
步骤A13:安全芯片根据获取交易金额的请求控制显示模块提示用户输入交易金额,控制显示模块生成并显示键盘;
步骤A14:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易金额数据,将交易金额数据通过安全接口发送给通用平台,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。
本实施例1中,安全芯片得出交易金额数据之后,还可以对交易金额数据进行加密,相应地,上述安全芯片将交易金额数据通过安全接口发送给通用平台具体为:安全芯片将加密的交易金额数据通过安全接口发送给通用平台。
本实施例1中,上述安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易金额数据,具体包括:
触控输入模块每次接收到用户输入的触屏信息时,根据触屏信息生成交易数据坐标信息,使用生成的交易数据坐标信息更新自身寄存器中的数据,并向安全芯片发送中断通知;
例如,触控输入模块接收到用户输入的触屏信息时,根据触屏信息生成的验证码坐标信息为0x01,0x01,使用验证码坐标信息0x01,0x01更新自身寄存器中的数据。
步骤H141:安全芯片接收到触控输入模块的中断通知时,从触控输入模块的寄存器中读取交易数据坐标信息;例如,安全芯片收到中断通知时,从触控输入模块的寄存器中读取交易数据坐标信息为0x01,0x01。
步骤H142:安全芯片从坐标数据中找到与读取的交易数据坐标信息对应的键盘值,当找到的键盘值为数字键时,将查找到的键盘值作为交易金额数据的一位添加到当前交易金额数据序列的后面得到新的交易金额数据序列,将新的交易金额数据序列作为当前交易金额数据序列,控制显示模块显示当前交易金额数据序列,返回步骤H141;当找到的键盘值为退格键时,控制显示模块显示删除一位数据之后的交易金额数据,返回步骤H141;当找到的键盘值为确认键时,将当前交易金额数据序列作为最终交易金额数据序列,并根据最终交易金额数据序列控制显示模块显示交易金额;
当步骤H141中安全芯片第一次接收到触控输入模块的中断通知时还包括:安全芯片初始化交易金额数据序列,并将初始化之后的交易金额数据序列作为当前交易金额数据序列。例如,初始化之后的交易金额数据序列为空。
本实施例1中,数字键的键盘值为0x00-0x09,退格键的键盘值为0x0A,确认键的键盘值为0x0B。例如,当安全芯片从触控输入模块的寄存器中读取交易数据坐标信息为0x01,0x01时,安全芯片从随机坐标数据
0x01,0x00-0x04,0x00-0x04 0x09,0x04-0x08,0x00-0x04 0x00,0x08-0x12,0x00-0x04
0x08,0x00-0x04,0x04-0x08 0x06,0x04-0x08,0x04-0x08 0x07,0x08-0x12,0x04-0x08
0x02,0x00-0x04,0x08-0x12 0x03,0x04-0x08,0x08-0x12 0x04,0x08-0x12,0x08-0x12
0x05,0x00-0x04,0x12-0x16 0x0A,0x04-0x08,0x12-0x16 0x0B,0x08-0x12,0x12-0x16
中找到与读取的验证码坐标信息0x01,0x01对应的键盘值0x01,找到的键盘值0x01为数字键,将查找到的键盘值0x01作为交易金额数据的一位添加到当前交易金额数据序列的后面得到新的交易金额数据序列1,将新的交易金额数据序列作为当前交易金额数据序列,控制显示模块根据当前交易金额数据序1显示当前交易金额数据,返回步骤H141;
例如,当前交易金额数据序列为空时,将查找到的键盘值0x01作为交易金额数据的一位添加到当前交易金额数据序列的后面得到新的交易金额数据序列1,将新的交易金额数据序列作为当前交易金额数据序列,控制显示模块根据当前交易金额数据序1显示当前交易金额数据如下:
Figure PCTCN2019081990-appb-000002
当前交易金额数据序列为1时,查找到的键盘值为0x02,将2作为交易金额数据的一位添加到当前交易金额数据序列的后面得到新的交易金额数据序列12,将新的交易金额数据序列12作为当前交易金额数据序列,控制显示模块根据当前交易金额数据序12显示当前交易金额数据如下:
Figure PCTCN2019081990-appb-000003
Figure PCTCN2019081990-appb-000004
具体地,安全芯片从随机坐标数据中找到与读取的交易数据坐标信息0x01,0x01对应的键盘值0x01,具体为:安全芯片从随机坐标数据中查找到与读取的交易数据坐标信息0x01,0x01对应的坐标值范围为0x00-0x04,0x00-0x04,找到与坐标值范围0x00-0x04,x00-0x04对应的键盘值0x01。
当安全芯片从触控输入模块的寄存器中读取的交易数据坐标信息为0x05,0x14时,找到的键盘值为退格键的键盘值0x0A,控制显示模块显示删除一位数据之后的交易金额数据,返回步骤H141;
例如,当前交易金额数据序12时,找到的键盘值为退格键的键盘值0x0A,控制显示模块显示删除一位数据之后的交易金额数据如下:
Figure PCTCN2019081990-appb-000005
具体地,当安全芯片从触控输入模块的寄存器中读取的交易数据坐标信息为0x05,0x14时,找到的键盘值为退格键的键盘值0x0A,具体为:当安全芯片从触控输入模块的寄存器中读取的交易数据坐标信息为0x05,0x14时,找到与0x05,0x14对应的坐标值范围为0x04-0x08,0x12-0x16,找到与坐标值范围0x04-0x08,0x12-0x16对应的键盘值为退格键的键盘值0x0A。
当安全芯片从触控输入模块的寄存器中读取的交易数据坐标信息为0x09,0x15时,找到的键盘值为确认键的键盘值0x0B,将当前交易金额数据序列12300作为交易金额数据序列,根据最终交易金额数据序列12300控制显示模块显示交易金额123.00。
具体地,当安全芯片从触控输入模块的寄存器中读取的交易数据坐标信息为0x09,0x15时,找到的键盘值为确认键的键盘值0x0B,具体为:当安全芯片从触控输入模块的寄存器中读取的交易数据坐标信息为0x09,0x15时,找到与0x05,0x14对应的坐标值范围为0x08-0x12,0x12-0x16,找到与坐标值范围0x08-0x12,0x12-0x16对应的键盘值为确认键的键盘值0x0B。
本实施例1的有益效果是:在用户输入验证码和交易金额之前,安全芯片将显示模块和触控输入模块切换为由安全芯片控制,通用平台即便存在漏洞,用户输入的验证码也无法被窃取并且用户输入的交易金额无法被篡改,从而保证了用户输入验证码和交易金额过程中的安全性,避免了因验证码泄露和交易金额被篡改所带来的损失。
实施例2:
本实施例2提供一种在通用平台下安全交互的方法,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电路与触控输入模块连接,显示模块与通用平台连接;
如图2所示,本实施例2提供的方法具体包括以下步骤:
步骤S21:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;
步骤S22:安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,通过安全接口向通用平台发送切换成功的通知;
步骤S23:通用平台接收到切换成功的通知时,控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘;
步骤S24:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
步骤S25:安全芯片对得出的验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将触控输入模块切换为由通用平台控制。
优选地:本实施例2的步骤S22中安全芯片控制切换电路将触控输入模块切换为由安全芯片控制之后,切换电路可以作为触控输入模块与安全芯片的通信通道,同时切换电路也可以作为显示模块与通用平台的通信通道;即步骤S23中通用平台通过切换电路这个通信通道控制显示模块提示用户输入验证码,根据坐标数据通过切换电路这个通信通道控制显示模块生成并显示键盘,步骤S24中安全芯片通过切换电路这个通信通道从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息。
本实施例2中,上述安全芯片接收到切换通知之后,还包括:安全芯片生成随机键盘值序列,将随机键盘值序列通过安全接口发送给通用平台;
上述通用平台接收到切换成功的通知之后,还包括:通用平台根据接收的随机键盘值序列和预设的键盘坐标生成随机坐标数据;
上述通用平台根据坐标数据控制显示模块生成并显示键盘,具体为:通用平台根据随机坐标数据控制显示模块生成并显示随机数键盘;
上述通用平台根据坐标数据控制显示模块生成并显示键盘之后,还包括:通用平台将随机坐标数据通过安全接口发送给安全芯片;
上述步骤S24中,安全芯片根据验证码坐标信息和坐标数据得出验证码,具体为:安全芯片根据验证码坐标信息和随机坐标数据得出验证码。
具体地,上述安全芯片生成随机键盘值序列可以参考实施例1中步骤M11-步骤M14,在此不再赘述。
或者,本实施例2中,上述通用平台接收到切换成功的通知之后,还包括:通用平台生成随机键盘值序列,根据随机键盘值序列和预设的键盘坐标生成随机坐标数据;
相应地,上述通用平台根据坐标数据控制显示模块生成并显示键盘,具体为:通用平台根据随机坐标数据控制显示模块生成并显示随机数键盘;
上述通用平台根据坐标数据控制显示模块生成并显示键盘之后,还包括:通用平台将随机坐标数据发送给安全芯片;
上述步骤S24中,安全芯片根据验证码坐标信息和坐标数据得出验证码,具体为:安全芯片根据验证码坐标信息和随机坐标数据得出验证码。
具体地,上述通用平台生成随机键盘值序列,具体包括:
步骤L11:通用平台获取预设的键盘值序列,使用预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取的预设的键盘值序列作为当前预设的键盘值序列,将第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
步骤L12:通用平台调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果;
步骤L13:通用平台从当前预设的键盘序列值中找到与位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
步骤L14:通用平台将预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列,更新当前第一索引值和当前第二索引值,判断更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数,是则将当前随机键盘值序列作为最终的随机键盘值序列;否则,返回步骤L12;
相应地,上述通用平台根据随机键盘值序列和预设的键盘坐标生成随机坐标数据,具体为:通用平台使用随机键盘值序列对预设的键盘坐标进行赋值生成随机坐标数据。
本实施例2中,上述当需要输入验证码之前,还包括:通用平台获取交易信息;
相应地,上述通用平台控制显示模块提示用户输入验证码时,还包括:通用平台根据交易信息控制显示模块显示交易金额。
或者,本实施例2中,上述当需要输入验证码之前,还包括:
步骤C1:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知;
步骤C2:安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,向通用平台发送切换成功的通知;
步骤C3:通用平台接收到切换成功的通知时,控制显示模块生成并显示键盘,并控制显示模块提示用户输入交易金额;
步骤C4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据;
步骤C5:安全芯片将交易数据通过安全接口发送给通用平台,控制切换电路将触控输入模块和显示模块切换为由通用平台控制;
相应地,上述通用平台控制显示模块提示用户输入验证码时,还包括:通用平台控制显示模块根据交易数据显示交易金额。
本实施例2中,上述步骤S24具体包括:
触控输入模块每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向安全芯片发送中断通知;
步骤S241:安全芯片接收到触控输入模块的中断通知时,从触控输入模块的寄存器中读取验证码坐标信息;
步骤S242:安全芯片从坐标数据中找到与读取的验证码坐标信息对应的键盘值,当找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当前验证码序列,通过安全接口向通用平台发送输入数据的信息,返回步骤S241;当找到的键盘值为退格键时,向通用平台发送退格信息,返回步骤S241;当找到的键盘值为确认键时,向通用平台发送确认信息,并将当前验证码序列作为验证码,执行步骤S25;
步骤S243:通用平台接收到输入数据的信息时,控制显示模块显示输入一位数据;接收到退格信息时,控制显示模块显示删除一位数据;接收到确认信息时,控制显示模块显示完成输入验证码的信息;
步骤S24中,安全芯片第一次接收到触控输入模块的中断通知时还包括:安全芯片初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列。
本实施例2中,当预设接口为安全接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过安全接口发送给通用平台;
当预设接口为金融IC卡接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡。
本实施例2中,上述步骤S25之后,还包括:
步骤C11:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知;
步骤C12:安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,向通用平台发送切换成功的通知;
步骤C13:通用平台接收到切换成功的通知时,控制显示模块生成并显示键盘,并控制显示模块提示用户输入交易金额;
步骤C14:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据;
步骤C15:安全芯片将交易数据通过安全接口发送给通用平台,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。
本实施例2中,安全芯片得出交易数据之后还可以对交易数据进行加密,相应地,上述安全芯片将交易数据通过安全接口发送给通用平台具体为:安全芯片将加密的交易数据通过安全接口发送给通用平台。
本实施例2的有益效果是:在用户输入验证码和交易金额之前,安全芯片将触控输入模块切换为由安全芯片控制,通用平台即便存在漏洞,用户输入的验证码也无法被窃取并且用户输入的交易金额无法被篡改,从而保证了用 户输入验证码和交易金额过程中的安全性,避免了因验证码泄露和交易金额被篡改所带来的损失。
实施例3:
本实施例3提供一种在通用平台下安全交互的方法,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电路与显示模块连接,触控输入模块与通用平台连接;
如图3所示,本实施例3提供的方法具体包括以下步骤:
步骤S31:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;
步骤S32:安全芯片接收到切换通知时,控制切换电路将显示模块切换为由安全芯片控制;
步骤S33:安全芯片控制显示模块提示用户输入验证码,根据坐标数据控制显示模块生成并显示键盘,通过安全接口向通用平台发送切换成功的通知;
步骤S34:通用平台接收到切换成功的通知时,从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码,通过安全接口向安全芯片发送得出的验证码;
步骤S35:安全芯片接收到验证码时,对验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将显示模块切换为由通用平台控制。
优选地:本实施例3的步骤S32中安全芯片控制切换电路将显示模块切换为由安全芯片控制之后,切换电路可以作为显示模块与安全芯片的通信通道,同时切换电路也可以作为触控输入模块与通用平台的通信通道;即步骤S33中安全芯片通过切换电路这个通信通道控制显示模块提示用户输入验证码,根据坐标数据通过切换电路这个通信通道控制显示模块生成并显示键盘,步骤S34中通用平台通过切换电路这个通信通道从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息。
本实施例3中,上述当需要输入验证码之前,还包括:
步骤E1:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知;
步骤E2:安全芯片接收到切换通知时,控制切换电路将显示模块切换为由安全芯片控制,通过安全接口向通用平台发送切换成功的通知;
步骤E3:安全芯片控制显示模块生成并显示键盘,并控制显示模块提示用户输入交易金额;
步骤E4:通用平台接收到切换成功的通知时,从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据;
相应地,上述步骤S31中还包括:通用平台将交易数据通过安全接口发送给安全芯片;
上述安全芯片控制显示模块提示用户输入验证码时,还包括:安全芯片控制显示模块根据交易数据显示交易金额。
本实施例3中,当预设接口为安全接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过安全接口发送给通用平台;
当预设接口为金融IC卡接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡。
具体地,上述步骤S34具体包括:触控输入模块每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向通用平台发送中断通知;
步骤S341:通用平台接收到触控输入模块的中断通知时,从触控输入模块的寄存器中读取验证码坐标信息;
步骤S342:通用平台从坐标数据中找到与读取的验证码坐标信息对应的键盘值,当找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当前验证码序列,控制显示模块显示输入一位数据,返回步骤S341;当找到的键盘值为退格键时,控制显示模块显示删除一位数据,返回步骤S341;当找到的键盘值为确认键时,控制显示模块显示完成输入验证码的信息,并将当前验证码序列作为验证码,执行步骤S35;
步骤S34中,通用平台第一次接收到触控输入模块的中断通知时还包括:通用平台初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列。
本实施例3中,上述步骤S35之后,还可以包括:
步骤E11:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知;
步骤E12:安全芯片接收到切换通知时,控制切换电路将显示模块切换为由安全芯片控制,通过安全接口向通用平台发送切换成功的通知;
步骤E13:安全芯片控制显示模块生成并显示键盘,并控制显示模块提示用户输入交易金额,通过安全接口向通用平台发送切换成功的通知;
步骤E14:通用平台接收到切换成功的通知时,从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据。
本实施例3的有益效果是:在用户输入验证码和交易金额之前,安全芯片将显示模块切换为由安全芯片控制,通用平台即便存在漏洞,用户输入的验证码也无法被窃取并且用户输入的交易金额无法被篡改,从而保证了用户输入验证码和交易金额过程中的安全性,避免了因验证码泄露和交易金额被篡改所带来的损失。
实施例4:
本实施例4提供一种在通用平台下安全交互的方法,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,如图4所示,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电路与触控输入模块和显示模块连接;
如图5所示,本实施例4提供的方法具体包括以下步骤:
步骤S1:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知,并将预设的键盘坐标发送给安全芯片;
具体地,预设的键盘坐标具体为预设的键盘坐标值范围。
例如,预设的键盘坐标为:
0x00-0x04,0x00-0x04 0x04-0x08,0x00-0x04 0x08-0x12,0x00-0x04
0x00-0x04,0x04-0x08 0x04-0x08,0x04-0x08 0x08-0x12,0x04-0x08
0x00-0x04,0x08-0x12 0x04-0x08,0x08-0x12 0x08-0x12,0x08-0x12
0x00-0x04,0x12-0x16 0x04-0x08,0x12-0x16 0x08-0x12,0x12-0x16
步骤S2:安全芯片接收到切换通知和预设的键盘坐标时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制,根据预设的键盘坐标生成随机坐标数据;
步骤S3:安全芯片控制显示模块提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘;
步骤S4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和随机坐标数据得出验证码;
步骤S5:安全芯片对得出的验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将触控输入模块和显示模块切换为由通用平台控制。
本实施例4的上述步骤S5中,当预设接口为安全接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过安全接口发送给通用平台;当预设接口为金融IC卡接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡。
本发明中,安全芯片和通用平台通过安全接口连接,具体为:通用平台与安全芯片通过硬件管脚连接,通用平台向安全芯片发送数据时调用安全接口对应的接口函数通过硬件管脚向安全芯片发送数据,并通过硬件管脚接收安全芯片返回的数据。安全芯片和通用平台通过安全接口传输数据可以保证数据的安全性。
本实施例4中,上述步骤S1-步骤S2还可以替换为:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;安全芯片接收到切换通知时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制,根据预设的键盘坐标生成随机坐标数据。
具体地,本实施例4中,安全芯片的控制管脚与切换电路的控制端连接,切换电路的第一输入端和第二输入端分别与触控输入模块和显示模块连接,切换电路的第一输出端与安全芯片的通信管脚连接,切换电路的第二输出端与通用平台的通信管脚连接;
上述安全芯片控制切换电路将触控输入模块和显示模块切换为由安全芯片控制,具体为:安全芯片通过自身的控制管脚向切换电路的控制端输入高电平信号,切换电路的控制端收到高电平信号时,控制自身的第一输入端和第二输入端与第一输出端连通;
相应地,上述安全芯片控制切换电路将触控输入模块和显示模块切换为由通用平台控制,具体为:安全芯片通过自身的控制管脚向切换电路的控制端输入低电平信号,切换电路的控制端收到低电平信号时,控制自身的第一输入端和第二输入端与第二输出端连通。
具体地,上述安全芯片根据预设的键盘坐标生成随机坐标数据,具体为:安全芯片生成随机键盘值序列,根据随机键盘值序列和预设的键盘坐标生成随机坐标数据。
具体地,上述安全芯片生成随机键盘值序列,具体包括:
步骤W11:安全芯片获取预设的键盘值序列,使用预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取预设的键盘值序列作为当前预设的键盘值序列,第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
例如,安全芯片获取预设的键盘值序列0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,使用预设的键盘值序列中最大的键盘值9设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值0设置第二索引值的初始值。
本发明中,预设的键盘值序列可以为键盘值为0-9的预设的键盘值序列。例如,预设的键盘值序列可以为0x01,0x08,0x00,0x02,0x04,0x03,0x06,0x05,0x07,0x09,或者预设的键盘值序列可以为0x08,0x04,0x03,0x01,0x09,0x00,0x02,0x06,0x05,0x07。本实施例4以预设的键盘值序列为0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09为例进行说明。
步骤W12:安全芯片调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果;
本实施例4中,安全芯片调用随机数生成函数生成一个字节的随机数,具体为:安全芯片调用随机数生成函数hwGenRand(&rnd,1)通过生成随机数的应用程序或者通过真随机源生成一个字节的随机数。
例如,安全芯片调用随机数生成函数生成一个字节的随机数为0x29,当前第一索引值为9时,将生成的随机数0x29与9进行位与运算得到的位与运算结果为0x01。
步骤W13:安全芯片从当前预设的键盘值序列中找到与位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
例如,安全芯片从当前预设的键盘序列值0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09中找到与位与运算结果0x01位置所对应的键盘值0x01,将找到的键盘值0x01作为随机键盘值序列中与当前第二索引值0的位置对应的键盘值0x01,得到当前随机键盘值序列0x01。
步骤W14:安全芯片将当前预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列,更新当前第一索引值和当前第二索引值,判断更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数,是则将当前随机键盘值序列作为最终的随机键盘值序列;否则,返回步骤W12。
具体地,安全芯片更新当前第一索引值具体为:安全芯片将当前第一索引值减1得到更新后的当前第一索引值;安全芯片更新当前第二索引值具体为:安全芯片将当前第一索引值加1得到更新后的当前第二索引值;
例如,安全芯片将当前预设的键盘值序列中0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09与运算结果0x01的位置对应的键盘值0x01移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值0x09对移除的键盘值进行补位,将补位得到的序列0x00,0x09,0x02,0x03,0x04,0x05,0x06,0x07,0x08作为当前预设的键盘值序列,更新当 前第一索引值和当前第二索引值得到更新后的当前第一索引值8和当前第二索引值1,判断更新后的当前第一索引值8和当前第二索引值1没有超出预设的键盘值序列的键盘值个数,返回步骤W12;
例如,最终的随机键盘值序列为:0x01,0x09,0x00,0x08,0x06,0x07,0x02,0x03,0x04,0x05。
本实施例4中,上述安全芯片根据随机键盘值序列和预设的键盘坐标生成随机坐标数据,具体为:安全芯片根据随机键盘值序列、预设的退格键的键盘值、预设的确认键的键盘值和预设的键盘坐标生成随机坐标数据。
例如,安全芯片根据随机键盘值序列0x01,0x09,0x00,0x08,0x06,0x07,0x02,0x03,0x04,0x05、预设的退格键的键盘值0x0A、预设的确认键的键盘值0x 0B和预设的键盘坐标
0x00-0x04,0x00-0x04 0x04-0x08,0x00-0x04 0x08-0x12,0x00-0x04
0x00-0x04,0x04-0x08 0x04-0x08,0x04-0x08 0x08-0x12,0x04-0x08
0x00-0x04,0x08-0x12 0x04-0x08,0x08-0x12 0x08-0x12,0x08-0x12
0x00-0x04,0x12-0x16 0x04-0x08,0x12-0x16 0x08-0x12,0x12-0x16
生成的随机坐标数据为:
0x01,0x00-0x04,0x00-0x04 0x09,0x04-0x08,0x00-0x04 0x00,0x08-0x12,0x00-0x04
0x08,0x00-0x04,0x04-0x08 0x06,0x04-0x08,0x04-0x08 0x07,0x08-0x12,0x04-0x08
0x02,0x00-0x04,0x08-0x12 0x03,0x04-0x08,0x08-0x12 0x04,0x08-0x12,0x08-0x12
0x05,0x00-0x04,0x12-0x16 0x0A,0x04-0x08,0x12-0x16 0x0B,0x08-0x12,0x12-0x16
例如,上述安全芯片控制显示模块提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘如下:
Figure PCTCN2019081990-appb-000006
本实施例4中,上述步骤S4具体包括:
触控输入模块每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向安全芯片发送中断通知;
例如,触控输入模块接收到用户输入的触屏信息时,根据触屏信息生成的验证码坐标信息为0x01,0x01,使用验证码坐标信息0x01,0x01更新自身寄存器中的数据。
步骤S41:安全芯片接收到触控输入模块的中断通知时,从触控输入模块的寄存器中读取验证码坐标信息;
例如,安全芯片收到中断通知时,从触控输入模块的寄存器中读取验证码坐标信息为0x01,0x01。
步骤S42:安全芯片从随机坐标数据中找到与读取的验证码坐标信息对应的键盘值,当找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当前验证码序列,控制显示模块显示输入一位数据,返回步骤S41;当找到的键盘值为退格键时,控制显示模块显示删除一位数据,返回步骤S41;当找到的键盘值为确认键时,控制显示模块显示完成输入验证码的信息,并将当前验证码序列作为验证码,执行步骤S5;
步骤S4中,安全芯片第一次接收到触控输入模块的中断通知时还包括:安全芯片初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列。
本实施例4中,数字键的键盘值为0x00-0x09,退格键的键盘值为0x0A,确认键的键盘值为0x0B。
例如,当安全芯片从触控输入模块的寄存器中读取验证码坐标信息为0x01,0x01时,安全芯片从随机坐标数据
0x01,0x00-0x04,0x00-0x04 0x09,0x04-0x08,0x00-0x04 0x00,0x08-0x12,0x00-0x04
0x08,0x00-0x04,0x04-0x08 0x06,0x04-0x08,0x04-0x08 0x07,0x08-0x12,0x04-0x08
0x02,0x00-0x04,0x08-0x12 0x03,0x04-0x08,0x08-0x12 0x04,0x08-0x12,0x08-0x12
0x05,0x00-0x04,0x12-0x16 0x0A,0x04-0x08,0x12-0x16 0x0B,0x08-0x12,0x12-0x16
中找到与读取的验证码坐标信息0x01,0x01对应的键盘值0x01,找到的键盘值0x01为数字键,将查找到的键盘值0x01作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列1,将新的验证码序列作为当前验证码序列,控制显示模块显示输入一位数据,返回步骤S41;
具体地,安全芯片从随机坐标数据中找到与读取的验证码坐标信息0x01,0x01对应的键盘值0x01,具体为:安全芯片从随机坐标数据中查找到与读取的验证码坐标信息0x01,0x01对应的坐标值范围为0x00-0x04,0x00-0x04,找到与坐标值范围0x00-0x04,x00-0x04对应的键盘值0x01。
当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x05,0x14时,找到的键盘值为退格键的键盘值0x0A,控制显示模块显示删除一位数据,返回步骤S41;
具体地,当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x05,0x14时,找到的键盘值为退格键的键盘值0x0A,具体为:当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x05,0x14时,找到与0x05,0x14对应的坐标值范围为0x04-0x08,0x12-0x16,找到与坐标值范围0x04-0x08,0x12-0x16对应的键盘值为退格键的键盘值0x0A。
当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x09,0x15时,找到的键盘值为确认键的键盘值0x0B,控制显示模块显示完成输入验证码的信息,并将当前验证码序列123456作为验证码,执行步骤S5。安全芯片得到的验证码为123456时,上述步骤S5中安全芯片对得出的验证码123456进行加密得到验证码密文为D3 7C F6B3 1A B9 67 55;进一步地,安全芯片得到的验证码为123456时,上述步骤S5中安全芯片对得出的验证码123456进行填充,得到填充后验证码数据,使用预设密钥按照预设算法(例如,预设算法为3DES算法)对填充后的验证码数据进行加密得到验证码密文为D3 7C F6 B3 1A B9 67 55。
具体地,当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x09,0x15时,找到的键盘值为确认 键的键盘值0x0B,具体为:当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x09,0x15时,找到与0x05,0x14对应的坐标值范围为0x08-0x12,0x12-0x16,找到与坐标值范围0x08-0x12,0x12-0x16对应的键盘值为确认键的键盘值0x0B。
优选地,上述安全芯片得出验证码之前,还执行以下操作:判断从控制切换电路将触控输入模块切换为由安全芯片控制到当前时间是否超过预设时间,是则向通用平台发送超时信息,否则继续判断。例如,预设时间为3秒。
本实施例4中,上述安全芯片控制显示模块提示用户输入验证码,具体为:安全芯片控制显示模块显示输入框并提示用户输入验证码;
相应地,上述安全芯片控制显示模块提示用户输入验证码之后、安全芯片根据随机坐标数据控制显示模块生成并显示随机数键盘之前,还包括:当安全芯片接收到来自触控输入模块的中断通知时,从触控输入模块的寄存器中获取坐标信息,当判定坐标信息为输入框的坐标值时,根据随机坐标数据控制显示模块生成并显示随机数键盘。
本实施例4中,安全芯片控制显示模块显示输入框并提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘如下:
Figure PCTCN2019081990-appb-000007
输入验证码时显示如下:
Figure PCTCN2019081990-appb-000008
或者,安全芯片控制显示模块显示输入框并提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘如下:
Figure PCTCN2019081990-appb-000009
输入验证码时显示如下:
Figure PCTCN2019081990-appb-000010
本实施例4中,上述当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知,具体为:通用平台接收到上位机的获取验证码的请求时(即需要输入验证码),向安全芯片发送切换通知和获取验证码的请求;
相应地,上述步骤S5中,通用平台接收到验证码密文时,还包括:通用平台将验证码密文返回上位机。其中,当上位机接收到验证码密文时,对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码一致,是则验证通过,否则验证未通过。
以登录***为例进行说明(智能终端可以具体为移动终端):上位机可以具体为通用平台的上层应用,上层应用向通用平台发送获取验证码的请求,通用平台接收到获取验证码的请求时,向安全芯片发送切换通知和获取验证码的请求;通用平台接收到安全芯片的验证码密文时,将验证码密文返回上层应用。当上层应用接收到验证码密文时,对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码一致,是则验证通过,否则验证未通过。
优选地,本实施例4中,上述当需要输入验证码之前还包括:通用平台获取交易信息;
当需要输入验证码时,还包括:通用平台将交易信息通过安全接口发送给安全芯片;
相应地,上述步骤S3中还包括:安全芯片根据交易信息控制显示模块显示交易金额。
智能终端以智能POS机为例进行说明:
当智能POS机执行脱机交易时,通用平台通过扫描图案(如二维码、条形码等)获取交易信息,或者通过智能POS机的输入模块获取用户输入的交易信息,或者获取来自上位机的交易信息;智能POS机获取交易信息之后,执行应用选择、应用初始化、读应用数据、脱机认证之后,向安全芯片发送切换通知、交易信息和获取验证码的请求;安全芯片接收到切换通知、交易信息和获取验证码的请求之后执行上述步骤S2-S5,并且在步骤S3中安全芯片还根据交易信息控制显示模块显示交易金额;当步骤S5中安全芯片将验证码密文通过安全接口发送给通用平台时,步骤S5之后还包括:通用平台将验证码密文发送给金融IC卡,金融IC卡对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码相同,是则验证通过并向通用平台返回验证通过的信息,否则验证未通过并向通用平台返回验证失败的信息;当步骤S5中安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡时,步骤S5之后还包括:金融IC卡对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码相同,是则验证通过并向安全芯片返回验证通过的信息,否则验证未通过并向安全芯片返回验证失败的信息,安全芯片将验证通过的信息或者验证失败的信息返回通用平台;优选地,通用平台接收到安全芯片返回的验证通过的信息或者验证失败的信息之后,对验证通过的信息或者验证失败的信息进行处理(例如,通用平台对安全芯片返回的验证 通过的信息或者验证失败的信息进行保存,或者通用平台根据安全芯片返回的验证通过的信息或者验证失败的信息生成脱机交易日志)。
当智能POS机执行联机交易时,通用平台通过扫描图案(如二维码、条形码等)获取交易信息,或者通过智能POS机的输入模块获取用户输入的交易信息,或者获取来自上位机的交易信息;智能POS机获取交易信息之后,执行应用选择、应用初始化、读应用数据、脱机认证之后,向安全芯片发送切换通知、交易信息和获取验证码的请求;安全芯片接收到切换通知交易信息和获取验证码的请求之后执行上述步骤S2-S5,并且在执行步骤S3时安全芯片还根据交易信息控制显示模块显示交易金额;当步骤S5中当安全芯片将验证码密文通过安全接口发送给通用平台时,步骤S5之后,通用平台接收到验证码密文时,还包括:通用平台根据验证码密文组织联机交易报文。其中,当上位机接收到联机交易报文时,从联机交易报文中获取验证码密文,对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码一致,是则验证通过并向通用平台返回验证通过的信息,否则验证未通过并向通用平台返回验证失败的信息。
或者,优选地,本实施例4中,上述当需要输入验证码时,还包括:通用平台通过安全接口向安全芯片发送获取验证码的请求;
相应地,上述安全芯片控制显示模块提示用户输入验证码,具体为:安全芯片根据获取验证码的请求控制显示模块提示用户输入验证码;
相应地,上述当需要输入验证码之前,还包括:
步骤A1:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知和获取交易金额的请求;
以智能POS机执行交易为例:当智能POS机接收到用户的交易请求或者接收到上位机的交易请求时,需要用户输入交易金额,通用平台通过安全接口向安全芯片发送切换通知和获取交易金额的请求。
步骤A2:安全芯片接收到切换通知和获取交易金额的请求时,控制切换电路将触控输入模块和显示模块切换为由安全芯片控制;
步骤A2中,安全芯片控制切换电路将触控输入模块和显示模块切换为由安全芯片控制的具体操作方法,与本实施例4中上面所述的安全芯片控制切换电路将触控输入模块和显示模块切换为由安全芯片控制的操作方法相同,在此不再赘述。
步骤A3:安全芯片根据获取交易金额的请求控制显示模块提示用户输入交易金额,控制显示模块生成并显示键盘;
步骤A4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易金额数据,将交易金额数据通过安全接口发送给通用平台,控制切换电路将触控输入模块和显示模块切换为由通用平台控制;
相应地,上述步骤S3中还包括:安全芯片根据交易金额数据控制显示模块显示交易金额。
一种优选地的实施方式为,上述步骤A1中还包括:通用平台通过安全接口向安全芯片发送预设的键盘坐标;相应地,上述安全芯片控制显示模块生成并显示键盘,具体为:安全芯片根据接收的预设的键盘坐标生成随机坐标数据,根据随机坐标数据控制显示模块生成并显示随机数键盘;上述安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和随机坐标数据得出交易金额数据。
具体地,安全芯片根据接收的预设的键盘坐标生成随机坐标数据,具体为:安全芯片生成随机键盘值序列,根据随机键盘值序列和接收的预设的键盘坐标生成随机坐标数据;具体的安全芯片生成随机键盘值序列可以参考上述步骤W11-步骤W14。
进一步具体地,安全芯片根据随机键盘值序列和接收的预设的键盘坐标生成随机坐标数据,具体为:安全芯片根据随机键盘值序列、预设的退格键的键盘值、预设的确认键的键盘值和预设的键盘坐标生成随机坐标数据。
另一种优选的实施方式为,上述安全芯片控制显示模块生成并显示键盘,具体为:安全芯片根据预设的键盘坐标生成随机坐标数据,根据随机坐标数据控制显示模块生成并显示随机数键盘;相应地,上述安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和随机坐标数据得出交易金额数据;
具体地,安全芯片根据预设的键盘坐标生成随机坐标数据,具体为:安全芯片生成随机键盘值序列,根据随机键盘值序列和预设的键盘坐标生成随机坐标数据;具体的安全芯片生成随机键盘值序列可以参考上述步骤W11-步骤W14。
进一步具体地,安全芯片根据随机键盘值序列和预设的键盘坐标生成随机坐标数据,具体为:安全芯片根据随机键盘值序列、预设的退格键的键盘值、预设的确认键的键盘值和预设的键盘坐标生成随机坐标数据。
本实施例4中,安全芯片根据交易数据坐标信息和随机坐标数据得出交易金额数据的方法,与本实施例4中上述步骤S4中安全芯片根据验证码坐标信息和随机坐标数据得出验证码的操作方法类似,在此不再赘述。
优选地,上述安全芯片控制显示模块生成并显示键盘,还可以具体为:安全芯片根据预设的坐标数据控制显示模块生成并显示键盘;相应地,上述安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和预设的坐标数据得出交易金额数据。
或者,安全芯片控制显示模块生成并显示键盘,还可以具体为:安全芯片根据预设的键盘坐标生成随机坐标数据,根据随机坐标数据控制显示模块生成并显示随机数键盘;相应地,安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和随机坐标数据得出交易金额数据;
或者,安全芯片控制显示模块生成并显示键盘,还可以具体为:安全芯片根据预设的坐标数据控制显示模块生成并显示键盘;相应地,安全芯片根据交易数据坐标信息得出交易金额数据,具体为:安全芯片根据交易数据坐标信息和预设的坐标数据得出交易数据。本实施例4中,安全芯片根据交易数据坐标信息和预设的坐标数据得出交易数据的方法,与本实施例4中的上述步骤S4中安全芯片根据验证码坐标信息和随机坐标数据得出验证码的操作方法类似,在此不再赘述。
实施例5:
本实施例5提供一种在通用平台下安全交互的方法,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,如图6所示,通用平台与安全芯片通过安全接口连接,通用平台和安全芯片通过切换电 路与触控输入模块连接,显示模块与通用平台连接;
如图7所示,本实施例5提供的方法具体包括以下步骤:
步骤R1:当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知;
步骤R2:安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,生成随机键盘值序列;
具体地,本实施例5中上述安全芯片生成随机键盘值序列,与实施例1中安全芯片生成随机键盘值序列相同,在此不再赘述。
步骤R3:安全芯片将随机键盘值序列发送给通用平台,通用平台根据随机键盘值序列和预设的键盘坐标生成随机坐标数据,控制显示模块提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘,将随机坐标数据发送给安全芯片;
步骤R4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和随机坐标数据得出验证码;
步骤R5:安全芯片对得出的验证码进行加密得到验证码密文,通过预设接口输出验证码密文,控制切换电路将触控输入模块切换为由通用平台控制。
本实施例5的上述步骤R5中,当预设接口为安全接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过安全接口发送给通用平台;当预设接口为金融IC卡接口时,安全芯片通过预设接口输出验证码密文具体为:安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡。
本实施例5中,上述步骤R2-步骤R3还可以替换为:安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,通过安全接口向通用平台发送切换成功的通知;
通用平台接收到切换成功的通知时,生成随机键盘值序列,根据随机键盘值序列和预设的键盘坐标生成随机坐标数据,控制显示模块提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘,将随机坐标数据发送给安全芯片。
具体地,本实施例5中,安全芯片的控制管脚与切换电路的控制端连接,切换电路的第一输入端与触控输入模块连接,第二输入端与显示模块连接,切换电路的第一输出端与安全芯片的通信管脚连接,切换电路的第二输出端与通用平台的通信管脚连接;
上述安全芯片控制切换电路将触控输入模块切换为由安全芯片控制,具体为:安全芯片通过自身的控制管脚向切换电路的控制端输入高电平信号,切换电路的控制端收到高电平信号时,控制自身的第一输入端与第一输出端连通;
相应地,上述安全芯片控制切换电路将触控输入模块切换为由通用平台控制,具体为:安全芯片通过自身的控制管脚向切换电路的控制端输入低电平信号,切换电路的控制端收到低电平信号时,控制自身的第一输入端与第二输出端连通。
优选地,上述安全芯片得出验证码之前,还执行以下操作:判断从控制切换电路将触控输入模块切换为由安全芯片控制到当前时间是否超过预设时间,是则向通用平台发送超时信息,否则继续判断。例如,预设时间为3秒。
本实施例5中,上述通用平台生成随机键盘值序列,具体包括:
步骤L11:通用平台获取预设的键盘值序列,使用预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取预设的键盘值序列作为当前预设的键盘值序列,第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
例如,通用平台获取预设的键盘值序列0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,使用预设的键盘值序列中最大的键盘值9设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值0设置第二索引值的初始值。
本发明5中,预设的键盘值序列可以为键盘值为0-9的预设的键盘值序列。例如,预设的键盘值序列可以为0x01,0x08,0x00,0x02,0x04,0x03,0x06,0x05,0x07,0x09,或者预设的键盘值序列可以为0x08,0x04,0x03,0x01,0x09,0x00,0x02,0x06,0x05,0x07。本实施例5以预设的键盘值序列为0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09为例进行说明。
步骤L12:通用平台调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果;
本实施例5中,通用平台调用随机数生成函数生成一个字节的随机数,具体为:通用平台调用随机数生成函数hwGenRand(&rnd,1)通过生成随机数的应用程序或者通过真随机源生成一个字节的随机数。
例如,通用平台调用随机数生成函数生成一个字节的随机数为0x29,当前第一索引值为9时,将生成的随机数0x29与9进行位与运算得到的位与运算结果为0x01。
步骤L13:通用平台从当前预设的键盘值序列中找到与位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
例如,通用平台从当前预设的键盘序列值0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09中找到与位与运算结果0x01位置所对应的键盘值0x01,将找到的键盘值0x01作为随机键盘值序列中与当前第二索引值0的位置对应的键盘值0x01,得到当前随机键盘值序列0x01。
步骤L14:通用平台将预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列,更新当前第一索引值和当前第二索引值,判断更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数,是则将当前随机键盘值序列作为最终的随机键盘值序列;否则,返回步骤L12。
具体地,通用平台更新当前第一索引值具体为:通用平台将当前第一索引值减1得到更新后的当前第一索引值;安全芯片更新当前第二索引值具体为:通用平台将当前第一索引值加1得到更新后的当前第二索引值;
具体地,通用平台判断更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数,具体为:通用平台判断更新后的当前第一索引值是否小于0,判断更新后的当前第二索引值是否大于9。
例如,通用平台将当前预设的键盘值序列中0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09与运算结果0x01 的位置对应的键盘值0x01移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值0x09对移除的键盘值进行补位,将补位得到的序列0x00,0x09,0x02,0x03,0x04,0x05,0x06,0x07,0x08作为当前预设的键盘值序列,更新当前第一索引值和当前第二索引值得到更新后的当前第一索引值8和当前第二索引值1,判断更新后的当前第一索引值8和当前第二索引值1没有超出预设的键盘值序列的键盘值个数,返回步骤W12;
例如,最终的随机键盘值序列为:0x01,0x09,0x00,0x08,0x06,0x07,0x02,0x03,0x04,0x05。
本实施例5中,上述通用平台根据随机键盘值序列和预设的键盘坐标生成随机坐标数据,具体为:通用平台使用随机键盘值序列对预设的键盘坐标进行赋值生成随机坐标数据。进一步具体地,通用平台使用随机键盘值序列、预设的退格键的键盘值和预设的确认键的键盘值对预设的键盘坐标进行赋值生成随机坐标数据。
本实施例5中,预设的键盘坐标具体为预设的键盘坐标值范围。
例如,通用平台根据随机键盘值序列0x01,0x09,0x00,0x08,0x06 0x07,0x02,0x03,0x04,0x05、预设的退格键的键盘值0x0A、预设的确认键的键盘值0x 0B和预设的键盘坐标
0x00-0x04,0x00-0x04 0x04-0x08,0x00-0x04 0x08-0x12,0x00-0x04
0x00-0x04,0x04-0x08 0x04-0x08,0x04-0x08 0x08-0x12,0x04-0x08
0x00-0x04,0x08-0x12 0x04-0x08,0x08-0x12 0x08-0x12,0x08-0x12
0x00-0x04,0x12-0x16 0x04-0x08,0x12-0x16 0x08-0x12,0x12-0x16
生成的随机坐标数据为:
0x01,0x00-0x04,0x00-0x04 0x09,0x04-0x08,0x00-0x04 0x00,0x08-0x12,0x00-0x04
0x08,0x00-0x04,0x04-0x08 0x06,0x04-0x08,0x04-0x08 0x07,0x08-0x12,0x04-0x08
0x02,0x00-0x04,0x08-0x12 0x03,0x04-0x08,0x08-0x12 0x04,0x08-0x12,0x08-0x12
0x05,0x00-0x04,0x12-0x16 0x0A,0x04-0x08,0x12-0x16 0x0B,0x08-0x12,0x12-0x16
例如,上述通用平台控制显示模块提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘如下:
Figure PCTCN2019081990-appb-000011
输入验证码时显示如下:
Figure PCTCN2019081990-appb-000012
或者,通用平台控制显示模块显示输入框并提示用户输入验证码,根据随机坐标数据控制显示模块生成并显示随机数键盘如下:
Figure PCTCN2019081990-appb-000013
输入验证码时显示如下:
Figure PCTCN2019081990-appb-000014
本实施例5中,上述步骤R4具体包括:
触控输入模块每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向安全芯片发送中断通知;
例如,触控输入模块接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息为0x01,0x01,使用生成的验证码坐标信息0x01,0x01更新自身寄存器中的数据。
步骤R41:安全芯片接收到触控输入模块的中断通知时,从触控输入模块的寄存器中读取验证码坐标信息;
例如,安全芯片收到中断通知时,从触控输入模块的寄存器中读取验证码坐标信息为0x01,0x01。
步骤R42:安全芯片从随机坐标数据中找到与读取的验证码坐标信息对应的键盘值,当找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当前验证码序列,向通用平台发送输入数据的信息,返回步骤R41;当找到的键盘值为退格键时,向通用平台发送退格信息,返回步骤R41;当找到的键盘值为确认键时,向通用平台发送确认信息,并将当前验证码序列作为验证码,执行步骤R5;
步骤R4中,安全芯片第一次接收到触控输入模块的中断通知时还包括:安全芯片初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列。
本实施例5中,数字键的键盘值为0x00-0x09,退格键的键盘值为0x0A,确认键的键盘值为0x0B。
例如,当安全芯片从触控输入模块的寄存器中读取验证码坐标信息为0x01,0x01时,安全芯片从随机坐标数据
0x01,0x00-0x04,0x00-0x04 0x09,0x04-0x08,0x00-0x04 0x00,0x08-0x12,0x00-0x04
0x08,0x00-0x04,0x04-0x08 0x06,0x04-0x08,0x04-0x08 0x07,0x08-0x12,0x04-0x08
0x02,0x00-0x04,0x08-0x12 0x03,0x04-0x08,0x08-0x12 0x04,0x08-0x12,0x08-0x12
0x05,0x00-0x04,0x12-0x16 0x0A,0x04-0x08,0x12-0x16 0x0B,0x08-0x12,0x12-0x16
中找到与读取的验证码坐标信息0x01,0x01对应的键盘值0x01,找到的键盘值0x01为数字键,将查找到的键盘值0x01作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列1,将新的验证码序列作为当前验证码序列,向通用平台发送输入数据的信息,返回步骤R41;
具体地,安全芯片从随机坐标数据中找到与读取的验证码坐标信息0x01,0x01对应的键盘值0x01,具体为:安全芯片从随机坐标数据中查找到与读取的验证码坐标信息0x01,0x01对应的坐标值范围为0x00-0x04,0x00-0x04,找到与坐标值范围0x00-0x04,x00-0x04对应的键盘值0x01。
当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x04,0x02时,找到的键盘值为退格键的键盘值0x0A,向通用平台发送退格信息,返回步骤R41;
具体地,当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x05,0x14时,找到的键盘值为退格键的键盘值0x0A,具体为:当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x05,0x14时,找到与0x05,0x14对应的坐标值范围为0x04-0x08,0x12-0x16,找到与坐标值范围0x04-0x08,0x12-0x16对应的键盘值为退格键的键盘值0x0A。
当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x09,0x15时,找到的键盘值为确认键的键盘值0x0B,向通用平台发送确认信息,并将当前验证码序列123456作为验证码,执行步骤R5;安全芯片得到的验证码为123456时,上述步骤R5中安全芯片对得出的验证码123456进行加密得到验证码密文为D3 7C F6 B3 1A B9 6755;进一步地,安全芯片得到的验证码为123456时,上述步骤R5中安全芯片对得出的验证码123456进行填充,得到填充后验证码数据,使用预设密钥按照预设算法(例如,预设算法为3DES算法)对填充后的验证码数据进行加密得到验证码密文为D3 7C F6 B3 1A B9 67 55。
具体地,当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x09,0x15时,找到的键盘值为确认键的键盘值0x0B,具体为:当安全芯片从触控输入模块的寄存器中读取的验证码坐标信息为0x09,0x15时,找到与0x05,0x14对应的坐标值范围为0x08-0x12,0x12-0x16,找到与坐标值范围0x08-0x12,0x12-0x16对应的键盘值为确认键的键盘值0x0B。
步骤R43:通用平台接收到输入数据的信息时,控制显示模块显示输入一位数据;接收到退格信息时,控制显示模块显示删除一位数据;接收到确认信息时,控制显示模块显示完成输入验证码的信息。
具体地,上述当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知,具体为:通用平台收到交易通知时,执行应用选择、应用初始化、读应用数据、脱机认证之后,控制显示模块提示用户输入验证码,向安全芯片发送切换通知;
相应地,上述步骤R5中,通用平台接收到验证码密文时,还包括:根据验证码密文组织联机交易报文。或者,具体地,本实施例5中,上述当需要输入验证码时,通用平台通过安全接口向安全芯片发送切换通知,具体为:通用平台接收到上位机的获取验证码的请求时,向安全芯片发送切换通知;
相应地,上述步骤R5中,通用平台接收到验证码密文时,还包括:通用平台将验证码密文返回上位机。其中,当上位机接收到验证码密文时,对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码一致,是则验证通过,否则验证未通过。
以登录***为例进行说明(智能终端可以具体为移动终端):上位机可以具体为通用平台的上层应用,上层应用向通用平台发送获取验证码的请求,通用平台接收到获取验证码的请求时,向安全芯片发送切换通知;通用平台接收到安全芯片的验证码密文时,将验证码密文返回上层应用。当上层应用接收到验证码密文时,对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码一致,是则验证通过,否则验证未通过。
优选地,上述当需要输入验证码之前,还包括:通用平台获取交易信息;
相应地,上述通用平台控制显示模块提示用户输入验证码时,还包括:通用平台根据交易信息控制显示模块显示交易金额。
或者,优选地,上述当需要输入验证码之前,还包括:
步骤C1:当需要输入交易金额时,通用平台通过安全接口向安全芯片发送切换通知;
步骤C2:安全芯片接收到切换通知时,控制切换电路将触控输入模块切换为由安全芯片控制,向通用平台发送切换成功的通知;
步骤C3:通用平台接收到切换成功的通知时,控制显示模块生成并显示键盘,并控制显示模块提示用户输入交易金额;
步骤C4:安全芯片从触控输入模块获取触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据;
步骤C5:安全芯片将交易数据通过安全接口发送给通用平台,控制切换电路将触控输入模块和显示模块切换为由通用平台控制;
上述通用平台控制显示模块提示用户输入验证码时,还包括:通用平台控制显示模块根据交易数据显示交易金额。
智能终端以智能POS机为例进行说明:
当智能POS机执行脱机交易时,通用平台通过扫描图案(如二维码、条形码等)获取交易信息,或者通过智能POS机的输入模块获取用户输入的交易信息,或者获取来自上位机的交易信息;智能POS机获取交易信息之后,执行应用选择、应用初始化、读应用数据、脱机认证之后,向安全芯片发送切换通知、交易信息和获取验证码的请求;安全芯片接收到切换通知交易信息和获取验证码的请求之后执行上述步骤R2-R5,并且步骤R3中通用平台还根据交易 信息控制显示模块显示交易金额;当步骤R5中安全芯片将验证码密文通过安全接口发送给通用平台时,步骤S5之后还包括:通用平台将验证码密文发送给金融IC卡,金融IC卡对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码相同,是则验证通过并向通用平台返回验证通过的信息,否则验证未通过并向通用平台返回验证失败的信息;当步骤R5中安全芯片将验证码密文通过金融IC卡接口发送给金融IC卡时,步骤S5之后还包括:金融IC卡对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码相同,是则验证通过并向安全芯片返回验证通过的信息,否则验证未通过并向安全芯片返回验证失败的信息,安全芯片将验证通过的信息或者验证失败的信息返回通用平台;优选地,通用平台接收到安全芯片返回的验证通过的信息或者验证失败的信息之后,对验证通过的信息或者验证失败的信息进行处理(例如,通用平台对安全芯片返回的验证通过的信息或者验证失败的信息进行保存,或者通用平台根据安全芯片返回的验证通过的信息或者验证失败的信息生成脱机交易日志)。
当智能POS机执行联机交易时,通用平台通过扫描图案(如二维码、条形码等)获取交易信息,或者通过智能POS机的输入模块获取用户输入的交易信息,或者获取来自上位机的交易信息;智能POS机获取交易信息之后,执行应用选择、应用初始化、读应用数据、脱机认证之后,向安全芯片发送切换通知、交易信息和获取验证码的请求;安全芯片接收到切换通知交易信息和获取验证码的请求之后执行上述步骤R2-R5,并且步骤R3中通用平台还根据交易信息控制显示模块显示交易金额;并且步骤R5安全芯片将验证码密文是通过安全接口发送给通用平台,步骤R5之后,通用平台接收到验证码密文时,还包括:通用平台根据验证码密文组织联机交易报文。其中,当上位机接收到联机交易报文时,从联机交易报文中获取验证码密文,对验证码密文进行解密得到验证码,判断解密得到的验证码是否与自身保存的验证码一致,是则验证通过并向通用平台返回验证通过的信息,否则验证未通过并向通用平台返回验证失败的信息。
实施例6:
本实施例6提供一种在通用平台1下安全交互的智能终端,如图8所示,应用于包括通用平台1、安全芯片2、切换电路3、触控输入模块4和显示模块5的智能终端,通用平台1与安全芯片2通过安全接口连接,通用平台1和安全芯片2通过切换电路3与触控输入模块4和显示模块5连接;
通用平台1包括:
第一切换通知模块11,用于当需要输入验证码时,通过安全接口向安全芯片2发送切换通知;
安全芯片2包括:
第一接收模块21,用于接收来自通用平台1的切换通知;
第一控制模块22,用于第一接收模块21接收到切换通知时,控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制;
第二控制模块23,用于第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,控制显示模块5提示用户输入验证码;
第三控制模块24,用于第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据坐标数据控制显示模块5生成并显示键盘;
第一获取模块25,用于从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
优选地:本实施例6中第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,切换电路3可以作为触控输入模块4和显示模块5与安全芯片2的通信通道;即第二控制模块23通过切换电路3这个通信通道控制显示模块5提示用户输入验证码,第三控制模块24根据坐标数据通过切换电路3这个通信通道控制显示模块5生成并显示键盘,第一获取模块25通过切换电路3这个通信通道从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息。
加密模块26,用于对第一获取模块25得出的验证码进行加密得到验证码密文;
输出模块27,用于通过预设接口输出加密模块26得到的验证码密文;
上述第一控制模块22,还用于输出模块27通过预设接口输出加密模块26得到的验证码密文之后,控制切换电路3将触控输入模块4和显示模块5切换为由通用平台1控制。
优选地,上述安全芯片2还可以包括第一生成模块;
第一生成模块,用于第一接收模块21接收到切换通知时,根据预设的键盘坐标生成随机坐标数据;
相应地,上述第三控制模块24,具体用于第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据第一生成模块生成的随机坐标数据控制显示模块5生成并显示随机数键盘;
上述第一获取模块25,具体用于从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和第一生成模块生成的随机坐标数据得出验证码。
进一步地,上述第一切换通知模块11,还用于将预设的键盘坐标通过安全接口发送给安全芯片2;
相应地,上述第一接收模块21,还用于接收来自通用平台1的预设的键盘坐标;
上述第一生成模块,具体用于第一接收模块21接收到切换通知时,根据第一接收模块21接收的预设的键盘坐标生成随机坐标数据。
具体地,上述第一生成模块,具体包括:
第一生成单元:用于第一接收模块21接收到切换通知时,生成随机键盘值序列;
第二生成单元,用于根据第一生成单元生成的随机键盘值序列和预设的键盘坐标生成随机坐标数据。
进一步具体地,上述第一生成单元,具体包括:
第一获取子单元,用于获取预设的键盘值序列,使用第一获取子单元获取的预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取的预设的键盘值序列作为当前预设的键盘值序列,将第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
第一生成子单元,用于调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位 与运算得出位与运算结果;
查找作为子单元,用于从当前预设的键盘值序列中找到与第一生成子单元得出的位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
移除补位子单元,用于将当前预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列;
更新子单元,用于移除补位子单元将补位得到的序列作为当前预设的键盘值序列之后,更新当前第一索引值和当前第二索引值;
判断子单元,用于判断更新子单元更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数;
作为子单元,用于当判断子单元判断结果为是时,将移除补位子单元得到的当前随机键盘值序列作为最终的随机键盘值序列;
第一生成子单元,还用于当判断子单元判断结果为否时,调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果。
优选地,上述通用平台1还包括第三获取模块;
第三获取模块,用于获取交易信息;
相应地,上述第一切换通知模块11,具体用于当需要输入验证码时,通过安全接口向安全芯片2发送切换通知,并将第三获取模块获取的交易信息通过安全接口发送给安全芯片2;
上述第一接收模块21,还用于接收来自通用平台1的交易信息;
上述第二控制模块23,还用于第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据第一接收模块21接收的交易信息控制显示模块5显示交易金额。
或者,优选地,上述第一切换通知模块11,具体用于当需要输入验证码时,通过安全接口向安全芯片2发送切换通知,并通过安全接口向安全芯片2发送获取验证码的请求;
相应地,上述第一接收模块21,还用于接收来自通用平台1的验证码的请求;
上述第二控制模块23,具体用于第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据第一接收模块21接收的获取验证码的请求控制显示模块5提示用户输入验证码;
上述通用平台1还包括:
第二切换通知模块,用于当需要输入交易金额时,通过安全接口向安全芯片2发送切换通知和获取交易金额的请求;
上述安全芯片2还包括:
第四接收模块,用于接收来自通用平台1的切换通知和获取交易金额的请求;
第八控制模块,用于当第四接收模块接收到切换通知和获取交易金额的请求时,控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制;
第九控制模块,用于第八控制模块控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据第四接收模块接收的获取交易金额的请求控制显示模块5提示用户输入交易金额;
第十控制模块,用于第八控制模块控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,控制显示模块5生成并显示键盘;
第四获取模块,用于第十控制模块控制显示模块5生成并显示键盘之后,从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易金额数据;
第五发送模块,用于将第四获取模块得出的交易金额数据通过安全接口发送给通用平台1;
上述第八控制模块,还用于第五发送模块将第四获取模块得出的交易金额数据通过安全接口发送给通用平台1之后,控制切换电路3将触控输入模块4和显示模块5切换为由通用平台1控制;
上述第二控制模块23,还用于第一控制模块22控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据第四获取模块得出的交易金额数据控制显示模块5显示交易金额。
具体地,上述第十控制模块,具体用于第八控制模块控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据预设的键盘坐标生成随机坐标数据,根据随机坐标数据控制显示模块5生成并显示随机数键盘;相应地,上述第四获取模块,具体用于第十控制模块根据随机坐标数据控制显示模块5生成并显示随机数键盘之后,根据获取的交易数据坐标信息和第十控制模块生成的随机坐标数据得出交易金额数据;
或者,具体地,上述第十控制模块,具体用于第八控制模块控制切换电路3将触控输入模块4和显示模块5切换为由安全芯片2控制之后,根据预设的坐标数据控制显示模块5生成并显示键盘;相应地,上述第四获取模块,具体用于第十控制模块根据预设的坐标数据控制显示模块5生成并显示键盘之后,根据获取的交易数据坐标信息和预设的坐标数据得出交易金额数据。
具体地,上述触控输入模块4每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向安全芯片2发送中断通知;
相应地,上述第一获取模块25,具体包括:
第一接收单元,用于接收触控输入模块4的中断通知;
第一获取单元,用于第一接收单元接收触控输入模块4的中断通知时,从触控输入模块4的寄存器中读取验证码坐标信息;
第一查找单元,用于从坐标数据中找到与第一获取单元读取的验证码坐标信息对应的键盘值;
第一作为单元,用于当第一查找单元找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当前验证码序列;
第一控制单元,用于第一作为单元将新的验证码序列作为当前验证码序列之后,控制显示模块5显示输入一位数据;
第二控制单元,用于当第一查找单元找到的键盘值为退格键时,控制显示模块5显示删除一位数据;
第三控制单元,用于当第一查找单元找到的键盘值为确认键时,控制显示模块5显示完成输入验证码的信息,并将当前验证码序列作为验证码;
相应地,上述加密模块26,具体用于对第三控制单元得出的验证码进行加密得到验证码密文;
第一初始化单元,用于第一接收单元第一次接收到触控输入模块的中断通知时,初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列。
本实施例6中,上述通用平台1和安全芯片2通过切换电路3与触控输入模块4和显示模块5连接,还可以替换为:通用平台1和安全芯片2通过切换电路3与触控输入模块4连接,显示模块5与通用平台1连接;
相应地,上述第一控制模块22替换为第四控制模块,安全芯片2中的第二控制模块23替换为通用平台1中的第五控制模块,安全芯片中的第三控制模块24替换为通用平台1中的第六控制模块;
第四控制模块,用于第一接收模块21接收到切换通知时,控制切换电路3将触控输入模块4切换为由安全芯片2控制,通过安全接口向通用平台1发送切换成功的通知;
上述通用平台1还包括第三接收模块;
第三接收模块,用于接收来自安全芯片2的切换成功的通知;
第五控制模块,用于第三接收模块接收到安全芯片2的切换成功的通知时,控制显示模块5提示用户输入验证码;
第六控制模块,用于第三接收模块接收到安全芯片2的切换成功的通知时,根据坐标数据控制显示模块5生成并显示键盘;
优选地:本实施例6中第四控制模块控制切换电路3将触控输入模块4切换为由安全芯片2控制之后,切换电路3可以作为触控输入模块4与安全芯片2的通信通道,并且切换电路3可以作为显示模块5与通用平台1的通信通道;即第五控制模块通过切换电路3这个通信通道控制显示模块5提示用户输入验证码,第六控制模块根据坐标数据通过切换电路3这个通信通道控制显示模块5生成并显示键盘,第一获取模块25通过切换电路3这个通信通道从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息。
上述第四控制模块,还用于输出模块27通过预设接口输出加密模块26得到的验证码密文之后,控制切换电路3将触控输入模块4切换为由通用平台1控制。
优选地,上述安全芯片2还包括第二生成模块;
第二生成模块,用于第一接收模块21接收到切换通知时,生成随机键盘值序列;
相应地,上述第四控制模块,还用于将第二生成模块生成的随机键盘值序列通过安全接口发送给通用平台1;
上述通用平台1还包括第三生成模块;
上述第三接收模块,还用于接收来自安全芯片2的随机键盘值序列;
第三生成模块,用于根据第三接收模块接收的随机键盘值序列和预设的键盘坐标生成随机坐标数据;
上述第六控制模块,具体用于第三接收模块接收到安全芯片2的切换成功的通知时,根据第三生成模块生成的随机坐标数据控制显示模块5生成并显示随机数键盘;
上述通用平台1还包括第三发送模块;
第三发送模块,用于第六控制模块根据第三生成模块生成的随机坐标数据控制显示模块5生成并显示随机数键盘之后,将第三生成模块生成的随机坐标数据通过安全接口发送给安全芯片2;
上述第一接收模块21,还用于接收来自通用平台1的随机坐标数据;
上述第一获取模块25,具体用于从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和第一接收模块21接收的坐标数据得出验证码。
具体地,上述第二生成模块,具体包括:
第一获取子模块,用于获取预设的键盘值序列,使用获取的预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取的预设的键盘值序列作为当前预设的键盘值序列,将第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
第一生成子模块,用于调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果;
第一查找作为子模块,用于从当前预设的键盘值序列中找到与第一生成子模块得出的位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
第一移除补位子模块,用于将当前预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列;
第一更新子模块,用于第一移除补位子模块将补位得到的序列作为当前预设的键盘值序列之后,更新当前第一索引值和当前第二索引值;
第一判断子模块,用于判断第一更新子模块更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数;
第一作为子模块,用于当第一判断子模块判断结果为是时,将第一移除补位子模块得到的当前随机键盘值序列作为最终的随机键盘值序列;
第一生成子模块,还用于当第一判断子模块判断结果为否时,调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果。
或者,优选地,上述通用平台1还包括第四生成模块和第五生成模块;
第四生成模块,用于第三接收模块接收到来自安全芯片2的切换成功的通知时,生成随机键盘值序列;
第五生成模块,用于根据第四生成模块生成的随机键盘值序列和预设的键盘坐标生成随机坐标数据;
相应地,上述第六控制模块,具体用于第三接收模块接收到安全芯片2的切换成功的通知时,根据第五生成模块生成的随机坐标数据控制显示模块5生成并显示随机数键盘;
上述通用平台1还包括第四发送模块;
第四发送模块,用于第六控制模块根据第五生成模块生成的随机坐标数据控制显示模块5生成并显示随机数键盘之后,将第五生成模块生成的随机坐标数据发送给安全芯片2;
上述第一接收模块21,还用于接收来自通用平台1的随机坐标数据;
上述第一获取模块25,具体用于从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和第一接收模块21接收的坐标数据得出验证码。
具体地,上述第四生成模块,具体包括:
第二获取子模块,用于获取预设的键盘值序列,使用获取的预设的键盘值序列中最大的键盘值设置第一索引值的初始值,使用预设的键盘值序列中最小的键盘值设置第二索引值的初始值,并将获取的预设的键盘值序列作为当前预设的键盘值序列,将第一索引值的初始值作为当前第一索引值,将第二索引值的初始值作为当前第二索引值;
第二生成子模块,用于调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果;
第二查找作为子模块,用于从当前预设的键盘值序列中找到与第二生成子模块得出的位与运算结果的位置所对应的键盘值,将找到的键盘值作为随机键盘值序列中与当前第二索引值的位置对应的键盘值得到当前随机键盘值序列;
第二移除补位子模块,用于将当前预设的键盘值序列中与位与运算结果的位置对应的键盘值移除,并使用当前预设的键盘值序列中移除的键盘值后面的键盘值对移除的键盘值进行补位,将补位得到的序列作为当前预设的键盘值序列;
第二更新子模块,用于第二移除补位子模块将补位得到的序列作为当前预设的键盘值序列之后,更新当前第一索引值和当前第二索引值;
第二判断子模块,用于判断第二更新子模块更新后的当前第一索引值和当前第二索引值是否超出预设的键盘值序列的键盘值个数;
第二作为子模块,用于当第二判断子模块判断结果为是时,将第二移除补位子模块得到的当前随机键盘值序列作为最终的随机键盘值序列;
第二生成子模块,还用于当第二判断子模块判断结果为否时,调用随机数生成函数生成一个字节的随机数,将生成的随机数与当前第一索引值进行位与运算得出位与运算结果。
优选地,上述通用平台1还包括第五获取模块;
第五获取模块,用于获取交易信息;
相应地,上述第五控制模块,还用于第三接收模块接收到安全芯片2的切换成功的通知时,根据第五获取模块获取的交易信息控制显示模块5显示交易金额。
或者,优选地,上述通用平台1还包括:
第三切换通知模块,用于当需要输入交易金额时,通过安全接口向安全芯片2发送切换通知;
第五接收模块,用于接收来自安全芯片2的切换成功的通知;
第十一控制模块,用于第五接收模块接收到来自安全芯片2的切换成功的通知时,控制显示模块5生成并显示键盘;
第十二控制模块,用于第五接收模块接收到来自安全芯片2的切换成功的通知时,控制显示模块5提示用户输入交易金额;
相应地,上述安全芯片2还包括:
第六接收模块,用于接收来自通用平台1的切换通知;
第十三控制模块,用于第六接收模块接收到来自通用平台1的切换通知时,控制切换电路3将触控输入模块4切换为由安全芯片2控制,向通用平台1发送切换成功的通知;
第六获取模块,用于从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据;
第六发送模块,用于将第六获取模块得出的交易数据通过安全接口发送给通用平台1;
上述第十三控制模块,还用于第六发送模块将第六获取模块得出的交易数据通过安全接口发送给通用平台1之后,控制切换电路3将触控输入模块4和显示模块5切换为由通用平台1控制;
上述第五接收模块,还用于接收来自安全芯片2的交易数据;
上述第五控制模块,还用于第三接收模块接收到安全芯片2的切换成功的通知时,控制显示模块5根据第五接收模块接收的交易数据显示交易金额。
具体地,上述触控输入模块4每次接收到用户输入的触屏信息时,根据触屏信息生成验证码坐标信息,使用生成的验证码坐标信息更新自身寄存器中的数据,并向安全芯片2发送中断通知;
相应地,上述第一获取模块25,具体包括:
第二接收单元,用于接收触控输入模块4的中断通知;
第二获取单元,用于第二接收单元接收触控输入模块4的中断通知时,从触控输入模块4的寄存器中读取验证码坐标信息;
第二查找单元,用于从坐标数据中找到与第二获取单元读取的验证码坐标信息对应的键盘值;
第二作为单元,用于当第二查找单元找到的键盘值为数字键时,将查找到的键盘值作为验证码的一位添加到当前验证码序列的后面得到新的验证码序列,将新的验证码序列作为当前验证码序列;
第一发送单元,用于第二作为单元将新的验证码序列作为当前验证码序列之后,通过安全接口向通用平台1发送输入数据的信息;当第二查找单元找到的键盘值为退格键时,向通用平台1发送退格信息;当找到的键盘值为确认键时,向通用平台1发送确认信息;
第三作为单元,用于当找到的键盘值为确认键时,将当前验证码序列作为验证码;
第二初始化单元,用于第二接收单元第一次接收到触控输入模块的中断通知时,初始化验证码序列,并将初始化之后的验证码序列作为当前验证码序列;
通用平台1还包括:
接收单元,用于接收来自安全芯片2的信息;
控制单元,用于当接收单元接收到输入数据的信息时,控制显示模块5显示输入一位数据;当接收单元接收到退格信息时,控制显示模块5显示删除一位数据;当接收单元找接收到确认信息时,控制显示模块5显示完成输入验证码的信息;
加密模块26,具体用于对第三作为单元得出的验证码进行加密得到验证码密文。
本实施例6中,上述通用平台1和安全芯片2通过切换电路3与触控输入模块4和显示模块5连接,还可以替换为:通用平台1和安全芯片2通过切换电路3与显示模块5连接,触控输入模块4与通用平台1连接;
相应地,上述第一控制模块22替换为第七控制模块;
第七控制模块,用于第一接收模块21接收到切换通知时,控制切换电路3将显示模块5切换为由安全芯片2控制;
上述安全芯片2还包括第一发送模块和第二接收模块;
第一发送模块,用于第七控制模块控制切换电路3将显示模块5切换为由安全芯片2控制之后,通过安全接口向通用平台1发送切换成功的通知;
上述安全芯片2中的第一获取模块25替换为通用平台1中的第二获取模块,上述通用平台1还包括第二发送模块;
第二获取模块,用于接收到安全芯片2的切换成功的通知时,从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息,根据验证码坐标信息和坐标数据得出验证码;
优选地:本实施例6中第七控制模块控制切换电路3将显示模块5切换为由安全芯片2控制之后,切换电路3可以作为显示模块5与安全芯片2的通信通道,并且切换电路3可以作为触控输入模块4与通用平台1的通信通道;即第二获取模块通过切换电路3这个通信通道从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的验证码坐标信息,第二控制模块23通过切换电路3这个通信通道控制显示模块5提示用户输入验证码,第三控制模块24根据坐标数据通过切换电路3这个通信通道控制显示模块5生成并显示键盘。
第二发送模块,用于通过安全接口向安全芯片2发送第二获取模块得出的验证码;
第二接收模块,用于接收来自通用平台1的验证码;
加密模块26,具体用于对第二接收模块接收的验证码进行加密得到验证码密文;
上述第七控制模块,还用于输出模块27通过预设接口输出加密模块26得到的验证码密文之后,控制切换电路3将显示模块5切换为由通用平台1控制。
优选地,上述通用平台1还包括:
第四切换通知模块,用于当需要输入交易金额时,通过安全接口向安全芯片2发送切换通知;
第七接收模块,用于接收来自安全芯片2的切换成功的通知;
第七获取模块,用于第七接收模块接收到来自安全芯片2的切换成功的通知时,从触控输入模块4获取触控输入模块4根据用户的触屏信息生成的交易数据坐标信息,根据交易数据坐标信息得出交易数据;
相应地,上述安全芯片2还包括:
第八接收模块,用于接收来自通用平台1的切换通知;
第十四控制模块,用于第八接收模块接收到来自通用平台1的切换通知时,控制切换电路3将显示模块5切换为由安全芯片2控制,通过安全接口向通用平台1发送切换成功的通知;
第十五控制模块,用于第十四控制模块通过安全接口向通用平台1发送切换成功的通知之后,控制显示模块5生成并显示键盘;
第十六控制模块,用于第十四控制模块通过安全接口向通用平台1发送切换成功的通知之后,控制显示模块5提示用户输入交易金额;
上述第一切换通知模块11,还用于当需要输入验证码时,将第七获取模块得出的交易数据通过安全接口发送给安全芯片2;
上述第一接收模块21,还用于接收来自通用平台1的交易数据;
上述第二控制模块23,还用于控制显示模块5根据第一接收模块21接收的交易数据显示交易金额。
本实施例6中,上述输出模块27,具体用于:当预设接口为安全接口时,将验证码密文通过安全接口发送给通用平台1。
或者,上述输出模块27,具体用于:当预设接口为金融IC卡接口时,将验证码密文通过金融IC卡接口发送给金融IC卡。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何本领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所附权利要求书的保护范围为准。

Claims (20)

  1. 一种在通用平台下安全交互的方法,其特征在于,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,所述通用平台与所述安全芯片通过安全接口连接,所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块和所述显示模块连接,所述方法具体包括以下步骤:
    S1)当需要输入验证码时,所述通用平台通过所述安全接口向所述安全芯片发送切换通知;
    S2)所述安全芯片接收到所述切换通知时,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制;
    S3)所述安全芯片控制所述显示模块提示用户输入验证码,根据坐标数据控制所述显示模块生成并显示键盘;
    S4)所述安全芯片从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和所述坐标数据得出验证码;以及
    S5)所述安全芯片对得出的所述验证码进行加密得到验证码密文,通过预设接口输出所述验证码密文,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述通用平台控制。
  2. 根据权利要求1所述的方法,其特征在于,
    所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块和所述显示模块连接,替换为:所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块连接,所述显示模块与所述通用平台连接;
    所述步骤S2-S3替换为:
    所述安全芯片接收到所述切换通知时,控制所述切换电路将所述触控输入模块切换为由所述安全芯片控制,通过所述安全接口向所述通用平台发送切换成功的通知;
    所述通用平台接收到切换成功的通知时,控制所述显示模块提示用户输入验证码,根据坐标数据控制所述显示模块生成并显示键盘;以及
    所述步骤S5中,所述安全芯片控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述通用平台控制,替换为:所述安全芯片控制所述切换电路将所述触控输入模块切换为由所述通用平台控制。
  3. 根据权利要求1所述的方法,其特征在于,
    所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块和所述显示模块连接,替换为:所述通用平台和所述安全芯片通过所述切换电路与所述显示模块连接,所述触控输入模块与所述通用平台连接;
    所述步骤S2替换为:所述安全芯片接收到所述切换通知时,控制所述切换电路将所述显示模块切换为由所述安全芯片控制;
    所述步骤S3中还包括:所述安全芯片通过所述安全接口向所述通用平台发送切换成功的通知;
    所述步骤S4-步骤S5替换为:
    所述通用平台接收到切换成功的通知时,从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和坐标数据得出验证码,通过所述安全接口向所述安全芯片发送得出的所述验证码;以及
    所述安全芯片接收到所述验证码时,对所述验证码进行加密得到验证码密文,通过预设接口输出所述验证码密文,控制所述切换电路将所述显示模块切换为由所述通用平台控制。
  4. 根据权利要求1所述的方法,其特征在于,
    所述步骤S2中,所述安全芯片接收到所述切换通知之后,还包括:所述安全芯片根据预设的键盘坐标生成随机坐标数据;
    所述步骤S3中,所述安全芯片根据坐标数据控制所述显示模块生成并显示键盘,具体为:所述安全芯片根据所述随机坐标数据控制所述显示模块生成并显示随机数键盘;以及
    所述步骤S4中,所述安全芯片根据所述验证码坐标信息和所述坐标数据得出验证码,具体为:所述安全芯片根据所述验证码坐标信息和所述随机坐标数据得出验证码。
  5. 根据权利要求4所述的方法,其特征在于,
    所述步骤S1中还包括,所述通用平台将预设的键盘坐标通过所述安全接口发送给所述安全芯片;以及
    所述安全芯片根据预设的键盘坐标生成随机坐标数据,具体为:所述安全芯片根据接收的所述预设的键盘坐标生成随机坐标数据。
  6. 根据权利要求2所述的方法,其特征在于,
    所述安全芯片接收到所述切换通知之后,还包括:所述安全芯片生成随机键盘值序列,将所述随机键盘值序列通过所述安全接口发送给所述通用平台;
    所述通用平台接收到切换成功的通知之后,还包括:所述通用平台根据接收的所述随机键盘值序列和预设的键盘坐标生成随机坐标数据;
    所述通用平台根据坐标数据控制所述显示模块生成并显示键盘,具体为:所述通用平台根据所述随机坐标数据控制所述显示模块生成并显示随机数键盘;
    所述通用平台根据坐标数据控制所述显示模块生成并显示键盘之后,还包括:所述通用平台将所述随机坐标数据通过所述安全接口发送给所述安全芯片;以及
    所述步骤S4中,所述安全芯片根据所述验证码坐标信息和所述坐标数据得出验证码,具体为:所述安全芯片根据所述验证码坐标信息和所述随机坐标数据得出验证码。
  7. 根据权利要求2所述的方法,其特征在于,
    所述通用平台接收到切换成功的通知之后,还包括:所述通用平台生成随机键盘值序列,根据所述随机键盘值 序列和预设的键盘坐标生成随机坐标数据;
    所述通用平台根据坐标数据控制所述显示模块生成并显示键盘,具体为:所述通用平台根据所述随机坐标数据控制所述显示模块生成并显示随机数键盘;
    所述通用平台根据坐标数据控制所述显示模块生成并显示键盘之后,还包括:所述通用平台将所述随机坐标数据发送给所述安全芯片;以及
    所述步骤S4中,所述安全芯片根据所述验证码坐标信息和所述坐标数据得出验证码,具体为:所述安全芯片根据所述验证码坐标信息和所述随机坐标数据得出验证码。
  8. 根据权利要求1所述的方法,其特征在于,
    所述当需要输入验证码之前,还包括:所述通用平台获取交易信息;
    当需要输入验证码时,还包括:所述通用平台将交易信息通过所述安全接口发送给所述安全芯片;以及
    所述步骤S3中还包括:所述安全芯片根据所述交易信息控制所述显示模块显示交易金额。
  9. 根据权利要求1所述的方法,其特征在于,
    当需要输入验证码时,还包括:所述通用平台通过所述安全接口向所述安全芯片发送获取验证码的请求;
    所述安全芯片控制所述显示模块提示用户输入验证码,具体为:所述安全芯片根据所述获取验证码的请求控制所述显示模块提示用户输入验证码;
    所述当需要输入验证码之前,还包括下列步骤:
    A1)当需要输入交易金额时,所述通用平台通过所述安全接口向所述安全芯片发送切换通知和获取交易金额的请求;
    A2)所述安全芯片接收到切换通知和获取交易金额的请求时,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制;
    A3)所述安全芯片根据所述获取交易金额的请求控制所述显示模块提示用户输入交易金额,控制所述显示模块生成并显示键盘;以及
    A4)所述安全芯片从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据所述交易数据坐标信息得出交易金额数据,将所述交易金额数据通过所述安全接口发送给所述通用平台,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述通用平台控制;
    所述步骤S3中还包括:所述安全芯片根据所述交易金额数据控制所述显示模块显示交易金额。
  10. 根据权利要求2所述的方法,其特征在于,所述当需要输入验证码之前,还包括:所述通用平台获取交易信息;
    所述通用平台控制所述显示模块提示用户输入验证码时,还包括:所述通用平台根据所述交易信息控制所述显示模块显示交易金额。
  11. 一种在通用平台下安全交互的智能终端,其特征在于,应用于包括通用平台、安全芯片、切换电路、触控输入模块和显示模块的智能终端,所述通用平台与所述安全芯片通过安全接口连接,所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块和所述显示模块连接;
    所述通用平台包括:
    第一切换通知模块,用于当需要输入验证码时,通过所述安全接口向所述安全芯片发送切换通知;
    所述安全芯片包括:
    第一接收模块,用于接收来自所述通用平台的所述切换通知;
    第一控制模块,用于所述第一接收模块接收到所述切换通知时,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制;
    第二控制模块,用于所述第一控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,控制所述显示模块提示用户输入验证码;
    第三控制模块,用于所述第一控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,根据坐标数据控制所述显示模块生成并显示键盘;
    第一获取模块,用于从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和所述坐标数据得出验证码;
    加密模块,用于对所述第一获取模块得出的所述验证码进行加密得到验证码密文;以及
    输出模块,用于通过预设接口输出所述加密模块得到的所述验证码密文;以及
    所述第一控制模块,还用于所述输出模块通过预设接口输出所述加密模块得到的所述验证码密文之后,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述通用平台控制。
  12. 根据权利要求11所述的智能终端,其特征在于,
    所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块和所述显示模块连接,替换为:所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块连接,所述显示模块与所述通用平台连接;
    所述第一控制模块替换为第四控制模块,所述第二控制模块替换为第五控制模块,所述第三控制模块替换为第六控制模块;
    所述第四控制模块,用于所述第一接收模块接收到所述切换通知时,控制所述切换电路将所述触控输入模块切换为由所述安全芯片控制,通过所述安全接口向所述通用平台发送切换成功的通知;
    所述通用平台还包括第三接收模块;
    所述第三接收模块,用于接收来自所述安全芯片的切换成功的通知;
    所述第五控制模块,用于所述第三接收模块接收到所述安全芯片的切换成功的通知时,控制所述显示模块提示 用户输入验证码;
    所述第六控制模块,用于所述第三接收模块接收到所述安全芯片的切换成功的通知时,根据坐标数据控制所述显示模块生成并显示键盘;以及
    所述第四控制模块,还用于所述输出模块通过预设接口输出所述加密模块得到的所述验证码密文之后,控制所述切换电路将所述触控输入模块切换为由所述通用平台控制。
  13. 根据权利要求11所述的智能终端,其特征在于,
    所述通用平台和所述安全芯片通过所述切换电路与所述触控输入模块和所述显示模块连接,替换为:所述通用平台和所述安全芯片通过所述切换电路与所述显示模块连接,所述触控输入模块与所述通用平台连接;
    所述第一控制模块替换为第七控制模块;
    所述第七控制模块,用于所述第一接收模块接收到所述切换通知时,控制所述切换电路将所述显示模块切换为由所述安全芯片控制;
    所述安全芯片还包括第一发送模块和第二接收模块;
    所述第一发送模块,用于所述第七控制模块控制所述切换电路将所述显示模块切换为由所述安全芯片控制之后,通过所述安全接口向所述通用平台发送切换成功的通知;
    所述第一获取模块替换为第二获取模块,所述通用平台还包括第二发送模块;
    所述第二获取模块,用于接收到所述安全芯片的切换成功的通知时,从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和坐标数据得出验证码;
    所述第二发送模块,用于通过所述安全接口向所述安全芯片发送所述第二获取模块得出的所述验证码;
    所述第二接收模块,用于接收来自所述通用平台的验证码;
    所述加密模块,具体用于对所述第二接收模块接收的所述验证码进行加密得到验证码密文;以及
    所述第七控制模块,还用于所述输出模块通过预设接口输出所述加密模块得到的所述验证码密文之后,控制所述切换电路将所述显示模块切换为由所述通用平台控制。
  14. 根据权利要求11所述的智能终端,其特征在于,所述安全芯片还包括第一生成模块;
    所述第一生成模块,用于所述第一接收模块接收到所述切换通知时,根据预设的键盘坐标生成随机坐标数据;
    所述第三控制模块,具体用于所述第一控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,根据所述第一生成模块生成的所述随机坐标数据控制所述显示模块生成并显示随机数键盘;以及
    所述第一获取模块,具体用于从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和所述第一生成模块生成的所述随机坐标数据得出验证码。
  15. 根据权利要求14所述的智能终端,其特征在于,
    所述第一切换通知模块,还用于将预设的键盘坐标通过所述安全接口发送给所述安全芯片;
    所述第一接收模块,还用于接收来自所述通用平台的预设的键盘坐标;以及
    所述第一生成模块,具体用于所述第一接收模块接收到所述切换通知时,根据所述第一接收模块接收的所述预设的键盘坐标生成随机坐标数据。
  16. 根据权利要求12所述的智能终端,其特征在于,所述安全芯片还包括第二生成模块;
    所述第二生成模块,用于所述第一接收模块接收到所述切换通知时,生成随机键盘值序列;
    所述第四控制模块,还用于将所述第二生成模块生成的所述随机键盘值序列通过所述安全接口发送给所述通用平台;
    所述通用平台还包括第三生成模块;
    所述第三接收模块,还用于接收来自所述安全芯片的所述随机键盘值序列;
    所述第三生成模块,用于根据所述第三接收模块接收的所述随机键盘值序列和预设的键盘坐标生成随机坐标数据;
    所述第六控制模块,具体用于所述第三接收模块接收到所述安全芯片的切换成功的通知时,根据所述第三生成模块生成的所述随机坐标数据控制所述显示模块生成并显示随机数键盘;
    所述通用平台还包括第三发送模块;
    所述第三发送模块,用于所述第六控制模块根据所述第三生成模块生成的所述随机坐标数据控制所述显示模块生成并显示随机数键盘之后,将所述第三生成模块生成的所述随机坐标数据通过所述安全接口发送给所述安全芯片;
    所述第一接收模块,还用于接收来自所述通用平台的所述随机坐标数据;以及
    所述第一获取模块,具体用于从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和所述第一接收模块接收的所述坐标数据得出验证码。
  17. 根据权利要求12所述的智能终端,其特征在于,所述通用平台还包括第四生成模块和第五生成模块;
    所述第四生成模块,用于所述第三接收模块接收到来自所述安全芯片的切换成功的通知时,生成随机键盘值序列;
    所述第五生成模块,用于根据所述第四生成模块生成的所述随机键盘值序列和预设的键盘坐标生成随机坐标数据;
    所述第六控制模块,具体用于所述第三接收模块接收到所述安全芯片的切换成功的通知时,根据所述第五生成模块生成的所述随机坐标数据控制所述显示模块生成并显示随机数键盘;
    所述通用平台还包括第四发送模块;
    所述第四发送模块,用于所述第六控制模块根据所述第五生成模块生成的所述随机坐标数据控制所述显示模块 生成并显示随机数键盘之后,将所述第五生成模块生成的所述随机坐标数据发送给所述安全芯片;
    所述第一接收模块,还用于接收来自所述通用平台的所述随机坐标数据;以及
    所述第一获取模块,具体用于从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的验证码坐标信息,根据所述验证码坐标信息和所述第一接收模块接收的所述坐标数据得出验证码。
  18. 根据权利要求11所述的智能终端,其特征在于,所述通用平台还包括第三获取模块;
    所述第三获取模块,用于获取交易信息;
    所述第一切换通知模块,具体用于当需要输入验证码时,通过所述安全接口向所述安全芯片发送切换通知,并将所述第三获取模块获取的所述交易信息通过所述安全接口发送给所述安全芯片;
    所述第一接收模块,还用于接收来自所述通用平台的所述交易信息;以及
    所述第二控制模块,还用于所述第一控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,根据所述第一接收模块接收的所述交易信息控制所述显示模块显示交易金额。
  19. 根据权利要求11所述的智能终端,其特征在于,
    所述第一切换通知模块,具体用于当需要输入验证码时,通过所述安全接口向所述安全芯片发送切换通知,并通过所述安全接口向所述安全芯片发送获取验证码的请求;
    所述第一接收模块,还用于接收来自所述通用平台的所述验证码的请求;
    所述第二控制模块,具体用于所述第一控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,根据所述第一接收模块接收的所述获取验证码的请求控制所述显示模块提示用户输入验证码;
    所述通用平台还包括:
    第二切换通知模块,用于当需要输入交易金额时,通过所述安全接口向所述安全芯片发送切换通知和获取交易金额的请求;
    所述安全芯片还包括:
    第四接收模块,用于接收来自所述通用平台的切换通知和获取交易金额的请求;
    第八控制模块,用于当所述第四接收模块接收到切换通知和获取交易金额的请求时,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制;
    第九控制模块,用于所述第八控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,根据所述第四接收模块接收的所述获取交易金额的请求控制所述显示模块提示用户输入交易金额;
    第十控制模块,用于所述第八控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,控制所述显示模块生成并显示键盘;
    第四获取模块,用于所述第十控制模块控制所述显示模块生成并显示键盘之后,从所述触控输入模块获取所述触控输入模块根据用户的触屏信息生成的交易数据坐标信息,根据所述交易数据坐标信息得出交易金额数据;
    第五发送模块,用于将所述第四获取模块得出的所述交易金额数据通过所述安全接口发送给所述通用平台;
    所述第八控制模块,还用于所述第五发送模块将所述第四获取模块得出的所述交易金额数据通过所述安全接口发送给所述通用平台之后,控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述通用平台控制;以及
    所述第二控制模块,还用于所述第一控制模块控制所述切换电路将所述触控输入模块和所述显示模块切换为由所述安全芯片控制之后,根据所述第四获取模块得出的所述交易金额数据控制所述显示模块显示交易金额。
  20. 根据权利要求12所述的智能终端,其特征在于,所述通用平台还包括第五获取模块;
    所述第五获取模块,用于获取交易信息;以及
    所述第五控制模块,还用于所述第三接收模块接收到所述安全芯片的切换成功的通知时,根据所述第五获取模块获取的所述交易信息控制所述显示模块显示交易金额。
PCT/CN2019/081990 2018-05-04 2019-04-10 一种在通用平台下安全交互的方法及智能终端 WO2019210767A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/045,142 US11763036B2 (en) 2018-05-04 2019-04-10 Method for secure interaction on universal platform and smart terminal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810417700.9 2018-05-04
CN201810417700.9A CN108614968B (zh) 2018-05-04 2018-05-04 一种在通用平台下安全交互的方法及智能终端

Publications (1)

Publication Number Publication Date
WO2019210767A1 true WO2019210767A1 (zh) 2019-11-07

Family

ID=63661912

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/081990 WO2019210767A1 (zh) 2018-05-04 2019-04-10 一种在通用平台下安全交互的方法及智能终端

Country Status (3)

Country Link
US (1) US11763036B2 (zh)
CN (1) CN108614968B (zh)
WO (1) WO2019210767A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113517951A (zh) * 2021-05-16 2021-10-19 武汉领普科技有限公司 自发电开关及其处理方法、接收器及其处理方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108614968B (zh) * 2018-05-04 2020-11-24 飞天诚信科技股份有限公司 一种在通用平台下安全交互的方法及智能终端
US20220138306A1 (en) * 2020-11-05 2022-05-05 Adobe Inc. Offline multi-factor one-time password authentication
CN115103055B (zh) * 2022-06-17 2023-10-03 度小满科技(北京)有限公司 丢失处理方法、装置、移动终端及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986837A (zh) * 2014-05-28 2014-08-13 天地融科技股份有限公司 信息处理方法及装置
CN105760741A (zh) * 2016-02-19 2016-07-13 北京智能果技术有限公司 密码输入方法、安全芯片及***
CN107358094A (zh) * 2017-07-10 2017-11-17 广东天波信息技术股份有限公司 智能设备的密码输入***和方法
CN107563209A (zh) * 2017-08-28 2018-01-09 深圳市新国都支付技术有限公司 基于Android的触摸屏PIN输入方法及装置
CN107895268A (zh) * 2017-11-28 2018-04-10 艾体威尔电子技术(北京)有限公司 一种在智能支付终端上实现安全输入pin的方法
CN108614968A (zh) * 2018-05-04 2018-10-02 飞天诚信科技股份有限公司 一种在通用平台下安全交互的方法及智能终端

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013081406A1 (en) * 2011-12-02 2013-06-06 Samsung Electronics Co., Ltd. Method and apparatus for securing touch input
US9268930B2 (en) * 2012-11-29 2016-02-23 Gilbarco Inc. Fuel dispenser user interface system architecture
CN103136857B (zh) * 2012-12-20 2016-01-06 天地融科技股份有限公司 智能卡及智能卡交易控制方法
JP6081300B2 (ja) * 2013-06-18 2017-02-15 株式会社東芝 情報処理装置及びプログラム
JP2015052950A (ja) * 2013-09-06 2015-03-19 独立行政法人産業技術総合研究所 データ記憶装置、セキュアio装置
US10192054B2 (en) * 2013-09-13 2019-01-29 Intel Corporation Automatic pairing of IO devices with hardware secure elements
JP6117068B2 (ja) * 2013-09-20 2017-04-19 株式会社東芝 情報処理装置、およびプログラム
CN104239783A (zh) * 2014-09-19 2014-12-24 东软集团股份有限公司 一种特定信息安全输入***及方法
US9483653B2 (en) * 2014-10-29 2016-11-01 Square, Inc. Secure display element
US20160283944A1 (en) 2015-03-27 2016-09-29 Hubbard Mark O Method and apparatus for personal virtual authentication and authorization using digital devices and as an alternative for chip card or smart card
US10552619B2 (en) * 2015-07-20 2020-02-04 Intel Corporation Technologies for secure trusted I/O access control
CN110059500A (zh) * 2015-11-30 2019-07-26 华为技术有限公司 用户界面切换方法和终端
WO2017115174A1 (en) * 2015-12-28 2017-07-06 Mobeewave, Inc. System for and method of authenticating a user on a device
KR102514062B1 (ko) * 2018-02-27 2023-03-24 삼성전자주식회사 트러스트존 그래픽 렌더링 방법 및 그에 따른 디스플레이 장치
IL258368B2 (en) * 2018-03-26 2024-04-01 Kazuar Advanced Tech Ltd Secure computer system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986837A (zh) * 2014-05-28 2014-08-13 天地融科技股份有限公司 信息处理方法及装置
CN105760741A (zh) * 2016-02-19 2016-07-13 北京智能果技术有限公司 密码输入方法、安全芯片及***
CN107358094A (zh) * 2017-07-10 2017-11-17 广东天波信息技术股份有限公司 智能设备的密码输入***和方法
CN107563209A (zh) * 2017-08-28 2018-01-09 深圳市新国都支付技术有限公司 基于Android的触摸屏PIN输入方法及装置
CN107895268A (zh) * 2017-11-28 2018-04-10 艾体威尔电子技术(北京)有限公司 一种在智能支付终端上实现安全输入pin的方法
CN108614968A (zh) * 2018-05-04 2018-10-02 飞天诚信科技股份有限公司 一种在通用平台下安全交互的方法及智能终端

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113517951A (zh) * 2021-05-16 2021-10-19 武汉领普科技有限公司 自发电开关及其处理方法、接收器及其处理方法
CN113517951B (zh) * 2021-05-16 2022-06-03 武汉领普科技有限公司 自发电开关及其处理方法、接收器及其处理方法

Also Published As

Publication number Publication date
CN108614968A (zh) 2018-10-02
CN108614968B (zh) 2020-11-24
US20210150067A1 (en) 2021-05-20
US11763036B2 (en) 2023-09-19

Similar Documents

Publication Publication Date Title
WO2019210767A1 (zh) 一种在通用平台下安全交互的方法及智能终端
CN106899552B (zh) 认证方法,认证终端以及***
WO2018133686A1 (zh) 一种密码保护方法、装置及存储介质
AU2017279652B2 (en) Homomorphic Passcode Encryption
US20060291663A1 (en) Link key injection mechanism for personal area networks
US20150310427A1 (en) Method, apparatus, and system for generating transaction-signing one-time password
US20140156989A1 (en) Credential Recovery
US9646306B1 (en) Splicing resistant homomorphic passcode encryption
WO2018205456A1 (zh) 密码输入方法、计算机设备和存储介质
CN107864124B (zh) 一种终端信息安全保护方法、终端及蓝牙锁
KR102616421B1 (ko) 생체 인증을 이용한 결제 방법 및 그 전자 장치
CN106611310B (zh) 数据处理的方法、穿戴式电子设备和***
JP4636809B2 (ja) 情報処理端末およびその情報安全保護方法
US10742410B2 (en) Updating biometric template protection keys
KR20210046357A (ko) 블록체인 기반 시스템을 위한 키의 저장 및 복구 방법과 그 장치
CN111178884A (zh) 信息处理方法、装置、设备及可读存储介质
US20210091945A1 (en) Key Processing Method and Apparatus
CN106713618A (zh) 一种验证码的处理方法及移动终端
Frisby et al. Security Analysis of Smartphone Point-of-Sale Systems.
US12041179B2 (en) Digital signature terminal and secure communication method
CN107895268A (zh) 一种在智能支付终端上实现安全输入pin的方法
CN107026734A (zh) 一种利用认证持续有效性进行密码管理的方法及***
CN105471580A (zh) 一种复核签名方法和设备
CN114510688A (zh) 设备解锁方法、装置、计算机可读存储介质及电子设备
CN110555702A (zh) 用于用户的安全识别的设备和方法

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: 19796221

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: 19796221

Country of ref document: EP

Kind code of ref document: A1