CN112711452B - 一种图像显示方法与电子设备 - Google Patents
一种图像显示方法与电子设备 Download PDFInfo
- Publication number
- CN112711452B CN112711452B CN201911082843.XA CN201911082843A CN112711452B CN 112711452 B CN112711452 B CN 112711452B CN 201911082843 A CN201911082843 A CN 201911082843A CN 112711452 B CN112711452 B CN 112711452B
- Authority
- CN
- China
- Prior art keywords
- tee
- display
- layer
- ree
- graph
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012545 processing Methods 0.000 claims description 64
- 230000004044 response Effects 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 17
- 238000013175 transesophageal echocardiography Methods 0.000 description 330
- 238000010586 diagram Methods 0.000 description 20
- 230000007246 mechanism Effects 0.000 description 17
- 238000013461 design Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 239000008186 active pharmaceutical agent Substances 0.000 description 10
- 238000009877 rendering Methods 0.000 description 9
- 230000004927 fusion Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000238557 Decapoda Species 0.000 description 1
- 229920000433 Lyocell Polymers 0.000 description 1
- 206010044565 Tremor Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 244000240602 cacao Species 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1637—Details related to the display arrangement, including those related to the mounting of the display in the housing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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/04886—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/032—Protect output to user by software means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
一种图像显示方法与电子设备,该方法适用于包括可信执行环境TEE和富执行环境REE的电子设备。其中,TEE绘制第一图形,并在电子设备的显示屏中的第一图层显示第一图形;REE绘制第二图形,并在显示屏中的第二图层显示第二图形,第一图层位于第二图层之上;其中,第一图形上包括透明区域和非透明区域,非透明区域包括TEE绘制的内容,第二图形上与透明区域对应的显示区域包括REE绘制的内容,当第一图层和第二图层重叠显示时,透明区域不遮挡REE绘制的内容。也就是说,借助REE强大的绘图能力,提升可信用户界面(trusted user interface,TUI)的丰富性。
Description
本申请要求在2019年10月24日提交中国专利局、申请号为201911016209.6、申请名称为“一种图像显示方法与电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及安全验证技术领域,尤其涉及一种图像显示方法与电子设备。
背景技术
电子设备的功能越来越强大,安装的应用(application,app)越来越多,其中涉及到用户隐私信息的应用越来越多,例如,各类手机银行app等。
早期,电子设备仅支持富执行环境(rich execution environment,REE)架构,例如安卓架构。电子设备中的所有应用都在REE中运行,但是REE的安全等级较低,用户隐私信息容易被窃取。为了防止用户隐私信息的泄露,业界提出可信执行环境(trustedexecution environment,TEE),在硬件的支持下,TEE可以为应用提供安全的运行空间。因此,REE+TEE架构式的电子设备应用而生,当应用在TEE中运行时,安全性相对较高,当应用在REE中运行时,安全性较低。因此,涉及到用户隐私信息的应用或业务转移到TEE中运行,以保证数据安全性。
现有的REE+TEE架构,存在两种安全运行机制:
机制一:当应用在TEE运行时,REE控制显示界面,用户在该显示界面中输入口令等信息,REE将检测到的口令发送给TEE进行安全认证。
机制二:当应用在TEE运作时,TEE控制显示界面,用户在该显示界面中输入的口令等被TEE检测然后进行安全认证,口令输入不经过REE。其中,由TEE控制的显示界面被称为可信用户界面(trusted user interface,TUI)。
上述机制一,基于REE强大的绘图能力,所以当应用在TEE运行时,电子设备呈现的显示界面比较丰富,但是由于REE的安全性较低,REE检测到口令之后容易被窃取,安全性较低。上述机制二,虽然解决了机制一中安全性低的问题,但是存在如下缺陷:
1)受限于TEE的处理能力,一方面,TEE控制的TUI通常比较呆板;另一方面,TEE中运行的应用或业务相对较少,电子设备控制TUI时,在REE中运行的应用或业务的相关信息无法在TUI中显示。例如,电子设备控制TUI时,若REE中的应用接收到新消息或通知时,TEE无法在TUI中显示该新消息和通知,所以TUI视觉交互体验较差。
2)TUI上的用户交互操作灵敏性较差。例如,仅能识别有限的操作类型(例如按键点击),无法识别并处理全面屏手势、上滑/下拉菜单等输入操作。因此,目前TUI给用户触控响应不灵活的感受,用户体验较差。
因此,上述两种机制均存在不可避免的缺陷,都无法满足用户的需求。
发明内容
本申请的目的在于提供了一种图像显示方法与电子设备,用于提升TUI的视觉交互体验。
上述目标和其他目标将通过独立权利要求中的特征来达成。进一步的实现方式在从属权利要求、说明书和附图中体现。
第一方面,提供了一种图像显示方法,应用于包括可信执行环境TEE和富执行环境REE的电子设备,例如手机、平板电脑等。该方法包括:电子设备中TEE绘制第一图形,并在电子设备的显示屏中的第一图层显示第一图形;REE绘制第二图形,并在显示屏中的第二图层显示第二图形,其中,第一图层位于第二图层之上;第一图形上包括透明区域和非透明区域,非透明区域包括TEE绘制的内容,第二图形上与透明区域对应的显示区域包括REE绘制的内容,当第一图层和第二图层重叠显示时,透明区域不遮挡所述REE绘制的内容。
因此,当第一图层和第二图层重叠显示时,最终呈现的显示效果为,显示界面上既包括TEE提供的内容,也包括REE提供的内容。也就是说,借助REE的强大的绘图能力以及丰富的显示资源,第二图形中可以包括较为丰富的信息,例如状态栏、背景等,所以最终得到的显示界面即TUI较为丰富,解决了现有机制中,TEE控制显示屏时,TUI呆板的问题。
其中,第一图层和第二图层可以有多种方式确定,例如如下的方式1和方式2。
方式1,电子设备中触摸屏位于显示屏的上层,显示屏中包括多个图层,第一图层为靠近触摸屏的一个或多个图层,第二图层为远离触摸屏的一个或多个图层。
可以理解的是,显示屏上每个图层重叠显示,位于上层的图层会遮挡位于下层的图层。其中,位于上层的图层即靠近触摸屏的图层,位于下层即远离触摸屏的图层。因此,本申请实施例中,TEE在显示屏中靠近触摸屏的一个或多个图层显示第一图形,REE在显示屏中远离触摸屏的一个或多个图层显示第二图形,由于第一图形中包括透明区域,当第一图形和第二图形重叠显示时,第一图形中透明区域不遮挡第二图形中REE绘制的内容,借助REE强大的绘图能力,提升TUI的丰富性。
方式2,第一图层为显示屏中距离触摸屏最近的一个图层,第二图层为显示屏中除去第一图层之外的其它图层。
假设显示屏包括图层1-图层N,图层1距离触摸屏最近,图层N距离触摸屏最远;TEE在显示屏上图层1显示第一图形,REE在图层2-图层N中的一个或多个图层显示第二图形。可以理解的是,受限于全球标准平台(global platform,GP)的标准规范,TEE的处理能力有限,所以TEE仅控制图层1的话,可以缓解TEE的图形绘制压力,而且能够实现丰富TUI的效果。
在一种可能的设计中,TEE可以根据当前场景从一个或多个显示模板中确定与当前场景对应的显示模板;然后TEE根据显示模板绘制第一图形,REE根据显示模板绘制第二图形。
其中,当前场景可以是TEE内当前运行的应用,或,TEE内当前运行的应用内的业务。TEE根据当前场景确定显示模板之后,REE使用相同的显示模块绘制图形,具体可以使用如下方式1-方式3实现。
方式1,TEE根据当前场景确定合适的显示模板之后,向REE发送该显示模板的标识,然后REE根据该标识对应的显示模板绘制图形。
方式2,TEE根据当前场景确定合适的显示模板之后,向REE发送显示模板,REE使用该显示模板绘制图形。
方式3,TEE还可以和REE共同确定显示模板,具体的,二者可通过信息发送来协商确定。
应理解,上述3种方式仅是举例,不是限定,其它的能够使得TEE和REE使用相同显示模板的方式也是可以的。使用相同显示模板时,TEE绘制的第一图形中透明区域与第二图形上REE绘制的内容相对应,提升显示界面的丰富性。
其中,显示模板可以有多种实现方式,例如如下方式A和方式B。
方式A,显示模板为一个图形,该图形包括至少一个显示区域,其中的每个显示区域被配置为TEE绘制内容或者REE绘制内容。应理解,方式A中TEE和REE可以约定显示模块上哪个区域由TEE绘制,哪个区域由REE绘制。TEE根据显示模板绘制第一图形时,在显示模块上属于TEE绘制的区域内绘制内容,其它区域设置为透明区域。REE根据显示模板绘制第二图形时,在显示模板上属于REE绘制的区域内绘制内容。这样的话,当第一图形和第二图形重叠显示时,第一图形中透明区域不遮挡第二图形中REE绘制的内容。
方式B,显示模板包括至少一个图形,每个图形对应显示屏上的一个图层,每个图形被配置为TEE绘制或REE绘制。应理解,假设TEE控制图层1、REE绘制图层2-图层N,TEE根据图层1对应的图形绘制第一图形,REE根据图层2-图层N对应的图形绘制第二图形,无需约定哪些区域由TEE绘制,哪些区域由REE绘制。
在一种可能的设计中,TEE绘制的内容可以包括;与口令输入相关的信息。应理解,TEE绘制越少的内容,越可以缓解TEE的图形绘制压力,所以本申请实施例中,TEE可以仅绘制与口令输入相关的信息,例如数字按键值等;其它内容可以借助REE来绘制。
在一种可能的设计中,TEE还可以检测用户输入,并判断用户输入是否需要TEE响应;当用户输入不需要TEE响应时,将用户输入发送给REE,REE响应于用户输入执行相应的处理流程。
如前文所述,电子设备的显示界面上既包括TEE提供的内容,又包括REE提供的内容。用户可能在显示界面执行用户输入,该用户输入可能是针对TEE提供的内容的,也可能是针对REE提供的内容的。因此,本申请实施例中,当TEE检测到用户输入时,可以判断用户输入是否需要TEE响应,若不需要,则将用户输入发送给REE,由REE响应该用户输入,提升用户在显示界面(即TUI)上交互操作的多样性、灵敏性。
其中,电子设备判断用户输入是否需要TEE响应的方式可以是:当TEE确定用户输入是TEE内当前运行的应用内的输入时,确定用户输入需要TEE响应;当TEE确定用户输入不是应用内的输入时,确定用户输入不需要TEE响应。
在本申请实施例中,当应用在TEE中运行时,显示界面中包括TEE和REE提供的内容;TEE检测到用户输入之后,若确定该用户输入属于所述应用内的输入(例如口令输入)时,TEE响应该用户输入,以保证安全性;当TEE确定该用户输入不属于所述应用内的输入时,TEE将该用户输入发送REE,由REE响应该用户输入,提升用户在显示界面(即TUI)上交互操作的多样性、灵敏性。
其中,TEE判断用户输入是应用内输入还是非应用内输入的方式可以是如下方式中至少一种:
方式一,TEE绘制的第一图形包括透明区域和非透明区域,非透明区域包括TEE绘制的信息。因此,TEE判断用户输入的触控位置是否位于非透明区域内,若是,则确定用户输入是应用内输入;若否,则确定用户输入是非应用内输入。也就是说,TEE仅响应触控位置位于非透明区域内的用户输入。
方式二,TEE判断用户输入的操作类型是否是预设操作类型,预设操作类型包括点击操作,长按操作等;若是,则确定用户输入是应用内输入;若否(例如是上滑、下滑等操作),则确定用户输入是非应用内输入。也就是说,TEE仅响应操作类型是预设操作类型的用户输入。可以理解的是,上滑/下滑等手势操作通常不是用于输入口令的操作,所以TEE将上滑/下滑等手势操作发送REE进行响应。
需要说明的是,上述方式一和方式二可以单独使用,或者,为了提升准确性,方式一和方式二可以结合使用,具体的,应用内的输入包括:位于非透明区域内的输入,和/或,操作类型满足预设操作类型的输入;非应用内的输入,包括:位于非透明区域外的输入,和/或,操作类型不是预设操作类型的输入。
在一种可能的设计中,REE中的应用接收到通知消息时,REE更新第二图形,更新后的第二图形中与第一图形中透明区域对应的显示区域中显示通知消息;REE在第二图层中显示更新后的第二图形。
需要说明的是,现有的TEE+REE架构中,应用在TEE中运行时显示TUI,当REE中的应用收到通知消息时,TEE无法获取该通知消息,而REE不参与TUI的绘制,所以TUI中无法显示所述通知消息。但是,本申请实施例中,电子设备显示TUI时,当REE中的应用收到通知消息时,REE可以更新第二图像,更新后的第二图形中与第一图像上透明区域对应的显示区域包括通知消息,所以,TUI中可以显示该通知消息,提升TUI的丰富性。
第二方面,还提供一种电子设备,该电子设备包括可信执行环境TEE和富执行环境REE;其中,TEE中包括第一处理模块和第一显示模块,REE中包括第二处理模块和第二显示模块:第一处理模块,用于绘制第一图形;第一显示模块,用于在电子设备的显示屏中的第一图层显示第一图形;第二处理模块,用于绘制第二图形;第二显示模块,用于在显示屏中的第二图层显示第二图形,其中,第一图层位于第二图层之上;其中,所述第一图形上包括透明区域和非透明区域,所述非透明区域包括所述TEE绘制的内容,所述第二图形上与所述透明区域对应的显示区域包括所述REE绘制的内容,当所述第一图层和所述第二图层重叠显示时,所述透明区域不遮挡所述REE绘制的内容。
在一种可能的设计中,所述电子设备中触摸屏位于所述显示屏的上层,所述显示屏中包括多个图层,所述第一图层为靠近所述触摸屏的一个或多个图层,所述第二图层为远离所述触摸屏的一个或多个图层。
在一种可能的设计中,所述第一图层为所述显示屏中距离所述触摸屏最近的一个图层,所述第二图层为所述显示屏中除去所述第一图层之外的其它图层。
在一种可能的设计中,所述第一处理模块还用于:根据所述当前场景从一个或多个显示模板中确定与所述当前场景对应的显示模板;所述第一处理模块具体用于:根据所述显示模板绘制所述第一图形,所述第二处理模块具体用于:根据所述显示模板绘制所述第二图形。
在一种可能的设计中,所述显示模板为一个图形,所述图形上包括至少一个显示区域,其中的每个显示区域被配置为所述TEE绘制内容或者所述REE绘制内容;或者,所述显示模板包括至少一个图形,每个图形对应一个图层,每个图形被配置为所述TEE绘制或所述REE绘制。
在一种可能的设计中,所述TEE绘制的内容,包括;与口令输入相关的信息。
在一种可能的设计中,所述第一处理模块还用于:检测用户输入,并判断所述用户输入是否需要所述TEE响应;当所述用户输入不需要所述TEE响应时,通过所述TEE中的第一通信模块将所述用户输入发送给所述REE,所述REE响应于所述用户输入执行相应的处理流程。
在一种可能的设计中,所述第一处理模块在用于判断所述用户输入是否需要所述TEE响应时,具体用于:当确定所述用户输入是所述TEE内当前运行的应用内的输入时,确定所述用户输入需要所述TEE响应;当确定所述用户输入不是所述应用内的输入时,确定所述用户输入不需要所述TEE响应。
在一种可能的设计中,所述应用内的输入包括:位于所述非透明区域内的输入,和/或,操作类型满足预设操作类型的输入;非所述应用内的输入,包括:位于所述非透明区域外的输入,和/或,操作类型不是所述预设操作类型的输入。
在一种可能的设计中,所述第一处理模块还用于:当所述REE中的应用接收到通知消息时,更新所述第二图形,更新后的第二图形中与所述第一图形中透明区域对应的显示区域中显示所述通知消息;所述第二显示模块还用于,在所述第二图层中显示所述更新后的第二图形。
第三方面,还提供一种电子设备,该电子设备部署有可信执行环境TEE和富执行环境REE,还包括显示屏、处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序包括指令,当所述指令被所述处理器执行时,使得所述电子设备实现上述第一方面提供的图像显示方法。
第四方面,还提供一种计算机存储介质,所述计算机存储介质中存储有计算机程序,当计算机程序在部署有可信执行环境TEE和富执行环境REE的电子设备上运行时,使得所述电子设备实现上述第一方面提供的图像显示方法。
第五方面,还提供一种计算机程序,包括指令,当所述指令在部署有可信执行环境TEE和富执行环境REE的计算机上运行时,使得所述计算机实现上述第一方面提供的图像显示方法。
第六方面,还提供一种芯片,所述芯片能够运行在可信执行环境TEE和富执行环境REE,所述芯片用于读取存储器中存储的计算机程序,实现上述第一方面提供的图像显示方法。
第七方面,还提供一种电子设备上的图形用户界面,所述电子设备部署有可信执行环境TEE、富执行环境REE,还包括显示屏、一个或多个存储器、以及一个或多个处理器,所述一个或多个处理器用于执行存储在所述一个或多个存储器中的一个或多个计算机程序,所述图形用户界面包括所述电子设备上述第一方面提供的图像显示方法时显示的图形用户界面。
附图说明
图1为现有的TEE+REE架构的示意图;
图2为显示屏的逻辑结构示意图;
图3为本申请一实施例提供的图像显示方法的流程示意图;
图4为本申请一实施例提供的两种显示模板的示意图;
图5为本申请一实施例提供的第一图形、第二图形、以及融合之后的图形的示意图;
图6为本申请一实施例提供的显示屏的逻辑结构示意图;
图7为本申请一实施例提供的REE中应用收到通知消息时,显示界面的示意图;
图8为本申请一实施例提供的TEE+REE架构的示意图;
图9为本申请一实施例提供的图像显示方法的流程示意图;
图10为本申请一实施例提供的电子设备的逻辑结构示意图;
图11为本申请一实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请以下实施例中的附图,对本申请实施例中的技术方案进行详尽描述。
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
以下,先对本申请实施例中涉及的部分用语进行解释说明,以便于本领域技术人员容易理解。
1)、本申请实施例涉及的电子设备,可以是任何支持REE+TEE架构的电子设备,例如手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobileinternet device,MID)、可穿戴设备(例如,手表、手环、智能头盔等),虚拟现实(virtualreality,VR)设备、增强现实(augmented reality,AR)设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digitalassistant,PDA),工业控制(industrial control)中的无线终端、无人驾驶(selfdriving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。
需要说明的是,本申请实施例涉及的电子设备还可以是任意的、支持两种或两种以上运行环境的电子设备,本文中,以支持REE和TEE的电子设备为例,但是这并不构成对其的限定,支持其他的两种运行环境的电子设备也是可以的。
2)、富执行环境(rich execution environment,REE),是指电子设备中不具备特定安全功能的运行环境。例如,Android操作系统是一种富执行环境。
需要说明的是,REE除了被称为“富执行环境”之外,还可以被称为“不可信执行环境”、“普通执行环境”、“不安全执行环境”等等,本申请实施例对此不作限定。
3)、可信执行环境(trusted execution environment,TEE),是具有更高安全能力的运行环境。TEE通过硬件的支撑,具有安全能力并且能够满足一定的安全需求。TEE定义了严格的保护措施,因此比REE的安全级别更高,能够保护TEE中的资产(如数据,软件等)免受软件攻击,抵抗特定类型的安全威胁。
4)、REE+TEE架构,是指通过TEE与REE结合共同为应用提供服务的架构。也就是说,TEE与REE共同存在于电子设备中。示例性的,TEE通过硬件的支撑,可实现与REE相隔离的运行机制。TEE有自身的运行空间,比REE的安全级别更高,能够保护TEE中的资产(如数据,软件等)免受软件攻击。只有授权的安全软件才能在TEE中执行,同时它也保护了安全软件的资源和数据的机密性。相比REE,由于其隔离和权限控制等保护机制,TEE能够更好的保护数据和资源的安全性。
5)、客户端应用(client application,CA),通常是指运行在REE中的应用。CA在一定条件下,可以调用TA;例如,CA中的涉及用户信息的业务被触发,则CA调用TA。例如,CA可以通过客户应用程序编程接口(application programming interface,API)对TA进行调用。当CA调用TA之后,TA在TEE中运行,执行相关的安全操作。
6)、可信应用(trusted application,TA),是指运行在TEE中的应用,能够为运行在TEE之外的客户端应用(client application,CA)提供安全相关的服务。可以理解的是,一个CA对应一个TA(例如,一个TA为对应的CA提供不同的业务),或者一个CA可以对应多个TA(例如,一个CA中不同业务对应不同的TA),等等,本申请实施例不作限定。
7)、可信用户界面(trusted user interface,TUI),是TEE操作系统提供的一项安全功能,可以理解为是由TEE控制的安全显示界面,能够为在TEE中运行的各TA提供可信的用户交互界面,可确保TA在TEE中运行时,显示内容无法被REE获取,可提升业务的安全性。全球平台组织(global platform)对TUI的常用API进行了标准化,方便TA开发者利用这些API进行TUI的开发。通过TUI,可以实现安全显示、安全输入、安全指示标记三项最基础的安全用户交互功能。比如在金融领域,央行的手机盾规范中,就明确要求通过TUI保障输密、签名内容显示界面的安全性。
目前,由于TEE的处理能力有限,例如,绘图能力较弱,所以TEE控制的TUI比较呆板,无法呈现丰富的内容。
8)、手机盾,是一种用手机实现银行U盾(usbkey)功能的产品或者应用程序。手机盾可以在支持TEE+REE架构的手机中实现相关业务,手机中的TEE可以为手机盾提供密码运算和CA数字证书等全部功能所需的高安全环境。手机盾为移动互联网应用提供了密码运算支撑能力,用于身份认证、电子签名、数据保护等。
下面以手机盾业务为例,介绍现有TEE+REE安全架构下的业务执行流程。在TEE+REE架构下,手机盾签名密钥被保存在TEE中,所有签名操作都在TEE内执行,进而确保签名的过程达到金融级安全。用户可以在手机上执行一些大额交易或其他高敏感操作,当一笔业务需要手机盾签名才能进行时,待签名信息被发送到TEE,通过TUI显示并由用户进行确认,用户确认无误后输入手机盾个人通用身份标识码(personal identification number,PIN),该PIN被发送到TEE内的签名小程序进行验证,验证通过后,用户确认过的交易信息被发送到小程序进行签名,通过数字签名技术确保交易不可抵赖。
在上述手机盾业务执行流程中,TUI有两个重要作用:1、确保用户输入PIN的安全性,仅有手机盾才能访问,REE侧的应用无法通过读屏,读键盘等方式获取用户输入,确保PIN不会泄露,同时也能保证PIN是实时输入的。2、保证“所见即所签”(或者反过来说“所签即所见”),即,通过TUI保证送入手机盾进行签名的交易信息,不会被篡改或替换,这样,在用户确认交易信息无误后,送入到TEE内进行签名的信息就是用户确认过的信息。目前,业界普遍认为REE侧是不安全的,各种攻击方式都可能实现,如果没有TEE的引入,交易信息、用户PIN等都有可能被恶意程序获取、篡改,进而恶意程序/黑客能够跳过用户进行交易,或者是修改交易内容进行欺诈。显然,TUI的引入,对REE侧可能的恶意攻击行为起到明显的防御作用。但是,如前文所述,由于TEE的绘图能力较弱,所以TUI比较呆板,无法呈现丰富的内容。本申请实施例的显示方法旨在提升TUI的丰富性。
9)、本申请实施例涉及的应用程序(application,app),可以简称应用,为能够实现某项或多项特定功能的软件程序。通常,电子设备中可以安装多个应用,例如,即时通讯类应用、视频类应用、音频类应用、图像拍摄类应用、支付类应用等等。其中,即时通信类应用,例如可以包括短信应用、微信(WeChat)、WhatsApp Messenger、连我(Line)、照片分享(instagram)、Kakao Talk、钉钉等。图像拍摄类应用,例如可以包括相机应用(系统相机或第三方相机应用)。视频类应用,例如可以包括Youtube、Twitter、抖音、爱奇艺,腾讯视频等等。音频类应用,例如可以包括酷狗音乐、虾米、QQ音乐等等。支付类应用,例如支付宝、微信、各类银行app等。本申请实施例中提到的应用,可以是电子设备出厂时已安装的应用,也可以是用户在使用电子设备的过程中从网络下载或其他电子设备获取的应用。
10)、本申请实施例涉及的至少一个,包括一个或者多个;其中,多个是指大于或者等于两个。另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
参阅图1所示,为现有的TEE+REE架构的示意图。如图1所示,该架构包括TEE和REE;其中,REE中可运行CA,TEE中可运行TA。
该架构可以实现上述的机制二,当CA在REE中运行时,REE控制显示屏以及触摸屏;当TA在TEE中运行时,TEE控制显示屏以及触摸屏。具体的,CA可以通过富执行环境操作系统内核层(rich execution environment operation system kernel,REE OS kernel)中的显示屏驱动(display screen driver,DSD)控制显示屏,通过REE OS kernel中的触摸屏驱动(touch screen driver,TSD)控制触摸屏。TA可以通过可信执行环境操作系统内核层(trusted execution environment operation system kernel,TEE OS kernel)中的DSD控制显示屏,通过TEE OS kernel中的TSD控制触摸屏。也就是说,TA在TEE中运行时,显示屏显示TEE提供/绘制的显示内容,而且TEE检测触摸屏上的用户操作(例如,口令的输入等)。
1)目前,当TA在TEE中运行时,TEE控制显示屏的方式为:仅控制显示屏中的第一个图层。具体而言,参见图2所示,为显示屏的逻辑结构示意图。显示屏包括多个图层(displayscreen),例如,图层1-图层N,N为大于等于2的整数;触摸屏在图层1的上层。现有机制中,当CA在REE中运行时,REE独占显示屏,即REE控制显示屏中的所有图层。当TA在TEE中运行时,TEE控制显示屏中的图层1。即TEE仅绘制第一图形,然后将该第一图形显示于图层1上,由于图层1的第一图形会遮挡下层即图层2-图层N的图形,所以最终呈现出的TUI仅包括图层1上的内容,即TEE绘制的显示内容。但是,受限于全球标准平台(global platform,GP)的标准规范,TEE的处理能力有限,所以TUI通常比较呆板,仅能显示一些文字、按键、文本框等内容,其它内容例如状态栏(电量信息、运营商信息、时间信息等)等无法显示。
2)目前,当TA在TEE中运行时,TEE控制触摸屏。用户可能触发各类用户操作,例如,全面屏手势、上滑/下拉菜单等操作。这些操作与REE中的业务相关,与TEE中的业务不相关,TEE无法将这些操作发送给REE,TEE自身又无法响应这些操作,所以导致用户在TUI上触发各类操作,但TUI仅能识别有限的操作类型(例如按键点击),无法识别并处理其它操作,进而导致现有的TUI无法提供丰富的人机交互体验。
3)目前,当TA在TEE中运行时,REE中的CA的相关业务无法传递到TEE,例如,电子设备控制显示屏显示TUI时,REE中运行的应用接收到新消息或通知时,该新消息或通知无法传递到TEE,所以TEE无法在TUI中显示该新消息和通知,所以目前TUI的交互体验较差。
基于上述存在的问题,本申请实施例提供一种图像显示方法,该方法可以应用于部署有TEE和REE的电子设备。该显示方法为TEE和REE融合显示机制。具体的,当TA在TEE中运行时,TEE控制显示屏中的图层1,REE控制显示屏中的图层2-图层N。TEE绘制第一图形,并将第一图形显示于图层1上,REE绘制第二图形,并将第二图形显示在图层2-图层N中的一个或多个图层上;第一图形和第二图形融合(或称叠加、重叠等)得到TUI。其中,第一图形包括非透明区域和透明区域,非透明区域包括TEE绘制的内容例如口令输入信息,第一图形上的透明区域不会遮挡第二图形上与透明区域对应的区域的显示内容,因此,第一图形和第二图形融合显示之后的显示效果为:显示界面即TUI中既包括TEE绘制的内容,也包括REE绘制的内容。也就是说,借助REE的强大的绘图能力以及丰富的显示资源,第二图形中可以包括较为丰富的信息,例如状态栏、背景等,所以最终得到的显示界面较为丰富,解决了上述1)中TUI呆板的问题。
此外,当电子设备显示TUI时,REE可以更新第二图形,例如,当REE中的应用收到通知消息时,REE可以在第二图形上与第一图形中透明区域对应的区域中添加该通知消息,所以图层1上的第一图形不会遮挡该通知消息,所以最终呈现的显示效果为TUI中显示该通知消息。因此,解决了上述3)中TUI中交互体验差的问题。
进一步的,本申请实施例还提供REE和TEE融合输入机制:REE和TEE之间建立用于传输用户输入的通道,例如,REE中包括通信模块1,该通信模块1用于接收TEE发送的信息;TEE中包括通信模块2,该通信模块2用于接收向REE发送信息。当TA在TEE中运行时,TEE控制触摸屏,TEE检测到用户在TUI上的输入之后,判断用户输入由TEE处理还是由REE处理,若由REE处理,则将该用户输入通过所述通道发送给REE;若由TEE处理,则TEE内应用处理该用户输入。因此,解决了上述2)中TUI中人机交互体验差的问题。上述通信模块1和通信模块2可以是核间通信(interprocess communication,IPC)模块,也可以称为进程间通信模块,或者其它底层硬件通信模块。
下面对上述TEE和REE融合显示机制和融合输入机制进行详细介绍。参见图3所示,为本申请实施例提供的支持TEE+REE架构的电子设备的显示方法的流程示意图,如图3所示,该方法的流程包括:
301,构建一个或多个显示模板。
可以理解的是,显示模板即绘制图形时的参考模板。换言之,显示模板中包括显示区域的布局(位置、尺寸等)、每个区域中的显示内容等。方式A,一个显示模板即一个图形模板,该图形模板上划分不同的区域,每个区域用于显示对应的内容。TEE和REE可以约定显示模板中哪些区域的内容由TEE提供,哪些区域中的内容由REE提供。为了安全起见,TEE和REE中可以约定显示模板中与口令输入相关的内容由TEE提供,其它内容由REE提供。方式1中,显示模板相对简单。
方式B,一个显示模板包括多个图形模板,一个图形模板对应显示屏中的一个图层。例如,显示模板中包括2个图形模板,图形模板1对应显示屏上的图层1,图形模板2对应显示屏上的图层2。TEE控制显示屏的图层1时,可以参照图形模板1绘制第一图形,REE控制显示屏上的图层2时,可以参照图形模板2绘制第二图形。方式2中,TEE和REE无需约定绘制内容,提升效率。
显示模板也可以不需要,即每次绘制时都根据应用或操作系统提供的绘制逻辑来绘制。REE和TEE需要约定的部分可以通过预先设置的绘制逻辑来控制。
需要说明的是,301可以由REE执行,也可以由TEE执行。假设REE构建显示模板,则构建完成后,可以将显示模板发送给TEE。假设TEE构建显示模板,则构建完成后,可以将显示模板发送给REE,总之,实现TEE和REE共享显示模板的即可。
作为一种示例,显示模板与应用无关,TEE或REE构建一个或多个显示模板后,形成共享池,该共享池中包括所述一个或多个显示模块,任何应用在TEE中运行时,TEE都可以从所述共享池中选择一个显示模块使用,例如,可以根据当前场景(例如当前运行的应用,或应用内的细分场景)从共享池中选择合适的显示模板,具体在后文介绍。应理解的是,REE和TEE需要使用同一显示模板。
作为另一种示例,显示模板与应用相关。例如,电子设备下载应用时,一并下载该应用对应的显示模板,例如,显示模块可以是所述应用对应的提供商所提供。REE和TEE可以共享每个应用对应的显示模板,当某个应用在TEE中运行时,使用该应用对应的显示模板即可。
可以理解的是,显示模板可以有一个或多个,不同的场景下可以对应不同的显示模板。其中,示例性的,场景可以包括:
场景1,U盾场景,即电子设备运行U盾以实现相关业务的场景,该场景可以对应一个显示模板。
场景2,锁屏场景,即电子设备处于锁屏且暗屏状态,当电子设备检测到输入操作后,点亮电子设备且显示锁屏界面,该锁屏界面可以对应一个显示模板。
场景3,账号登录场景,例如,电子设备检测到输入操作,响应于该输入操作启动第一应用例如某个银行APP,显示账号登录界面,该账号登录界面可以对应一个显示模板。
场景4,转账场景,电子设备运行第一应用例如某个银行APP,当检测到输入操作,响应于该输入操作启动第一应用中的与安全相关的业务(例如,转账业务)时,显示密码输入界面,该密码输入界面可以对应一个显示模板。
需要说明的是,上述4个场景仅是举例,而非限定,只要涉及口令输入的任何场景都可以适用,本申请实施例不一一列举。
可选的,多个场景也可以对应同一显示模板。例如,上述场景1-场景4中至少两个场景对应同一显示模板。例如,上述场景3和场景4对应同一显示模板。
示例性的,以方式A为例,参见图4所示,为本申请实施例提供的两种显示模板的示意图。图4(a)为锁屏场景即场景2对应的显示模板一的示意图,图4(b)为登录银行app场景即场景3对应的显示模板二的示意图。以图4(a)所示的显示模板一为例,显示模板一中的部分区域显示TEE提供的内容,另一部分区域显示REE提供的内容。
302,应用在TEE中运行。
302中的应用可以是经过TEE授权的软件,例如支付宝、银行客户端、锁屏应用(screen lock App)等。
302可能存在多种情况,例如,情况1,电子设备显示主界面(home screen),该主界面中包括一个或多个应用的图标。假设某个应用设置有应用锁,当电子设备检测到针对该应用的图标的操作时,该应用在TEE中运行,显示所述应用的应用锁界面,其中包括口令输入区域。情况2,应用正在REE中运行,当检测到特定输入操作,所述特定输入操作用于启动所述应用中特定业务,例如涉及用户隐私信息的业务,如转账、支付等;响应于该特定输入操作,该应用切换到TEE中运行。其中,应用从REE切换到TEE中运行,即CA在REE中运行,然后CA调用TEE中与所述CA对应的TA,然后TA在TEE中运行。
303,TEE根据当前场景,确定合适的显示模板。
方式1,一个应用即一个场景,一个场景对应一个显示模板,所以,303中TEE根据运行的应用,确定与该应用对应的显示模板。举例来说,电子设备在TEE中运行招商银行APP时,可以使用招商银行APP提供的显示模板进行图形绘制。
方式2,一个应用中不同业务对应不同场景,例如,一个应用中包括转账业务、支付业务等等,不同业务对应不同场景。TEE可以根据当前场景确定对应的显示模板。示例性的,假设TEE确定当前处于锁屏场景,则选择图4(a)所示的显示模板一;若TEE确定当前处于转账场景,则选择图4(b)所示的显示模板二。
一个CA对应一个或多个TA,每个TA用于为该CA提供不同的与安全相关的业务。因此,当REE中的CA调用TEE中与该CA对应的TA时,TEE可以根据被调用的TA确定当前运行的应用或当前运行的应用内的业务,进而确定合适的显示模板。
举例来说,对于上述情况1,电子设备检测到针对应用1的图标的操作时,确定应用1设置有应用锁,CA调用TEE中用于处理应用1中与应用锁相关的业务的TA,然后,该TA在TEE中运行。这样的话,TEE根据被调用的TA,确定当前运行的应用为应用1,然后确定合适的显示模板。再例如,对于上述情况2,应用正在REE中运行,当检测到特定输入操作,确定该特定输入操作用于启动所述应用内的特定业务,调用TEE中与所述特定业务对应的TA,该TA在TEE中运行。因此,TEE可以根据所述TA,确定当前运行的应用,以及应用内运行的业务,然后确定合适的显示模板。
在其他一些实施例中,TEE还可以和REE共同确定显示模板,具体的,二者可通过信息发送来协商确定。在另外一些实施例中,TEE还可以接受REE确定的显示模板。
304,TEE根据确定出的显示模板,绘制第一图形,第一图形中包括透明区域和非透明区域,其中非透明区域为TEE绘制的内容。
前面介绍显示模板的两种方式,即方式A和方式B。
对于方式A,TEE与REE约定显示模板中哪些区域是TEE提供,哪些区域是REE提供。示例性的,假设TEE确定的显示模板是图4(a)所示的显示模板一,并约定显示模板一中口令输入区域的内容由TTE提供,所以TEE可以绘制第一图形,该第一图形上与口令输入区域对应的区域中包括口令输入信息,例如数字按键值等,第一图形上的其它区域为透明区域。示例性的,TEE绘制的第一图形如图5(a)所示,第一图形上除去数字按键值之外都是透明区域。
对于上述方式B,由于显示模板中包括每个图层对应的图形模板。假设第一个图层上显示TEE绘制的图形,第二个图层到第N个图层上显示REE绘制的图形,则TEE仅需根据第一个图层对应的图形模板绘制第一图形即可。
305,TEE在显示屏中第一图层显示第一图形。
可以理解的是,电子设备中触摸屏位于显示屏的上层,而显示屏包括多个图层,所以显示屏中第一图层可以是靠近触摸屏的一个或多个图层,例如,第一个图层,或者,第一个图层以及第二个图层。参见图6所示,显示屏包括多个图层,显示屏上的最终的TUI是由各个图层上的图形融合(或称叠加)得到的。TEE可以在第一图层例如图层1上显示第一图形。
306,TEE向REE发送显示模板的标识。
需要说明的是,本申请实施例不限定306与304、305之间的执行顺序。
可以理解的是,TEE和REE共享显示模块,当TEE将该显示模块的标识发送给REE之后,REE可以基于该标识确定对应的显示模板。
307,REE根据所述显示模板,绘制第二图形。
对于上述方式A,TEE与REE约定显示模板中哪些区域需要TEE提供,哪些区域需要REE提供。示例性的,假设TEE确定的显示模板是图4(a)所示的显示模板一,并约定显示模板一中仅“口令输入区域”的内容由TTE提供,其它区域的内容由REE提供,所以REE根据显示模板绘制第二图形。较为简单的方式为,REE可以仅绘制第二图形上与第一图形上的透明区域对应的区域,不绘制与非透明区域对应的区域;当然,REE也可以绘制全部的第二图形。
对于上述方式B,由于显示模板中包括每个图层对应的图形模板,假设第一个图层上显示TEE绘制的图形,第二个图层到第N个图层上显示REE绘制的图形,则REE根据第二个图层到第N个图层对应的图形模板绘制第二图形即可。
308,REE在显示屏中第二图层显示第二图形。
需要说明的是,307-308可以在303、304或305之前执行,也就是说,REE先绘制第二图形,然后TEE绘制第一图形;或者,TEE先绘制第一图像,然后REE绘制第二图形都可以,本申请实施例不作限定。当307在303之前执行时,REE可以根据当前场景确定合适的显示模板,然后,将显示模板的标识发送给TEE,只要TEE和REE使用的显示模板相同即可。
电子设备中触摸屏位于显示屏的上层,显示屏包括多个图层,所以显示屏中第二图层可以是远离触摸屏的一个或多个图层。示例性的,305中“第一图层”可以是第一个图层,308中“第二图层”可以是第二个图层到第N个图层;或者,“第一图层”可以是第一个图层到第3个图层,“第二图层”可以是第4个图层到第N个图层,等等,本申请实施例不作限定。
参见图6所示,图层1上显示第一图形,图层2-图层N显示第二图形。假设REE生成的第二图形如图5(b)所示,TEE绘制的第一图形为如图5(a)所示,在图层1上显示第一图形,第一图形中的透明区域无法遮挡第二图形上对应区域的内容,第一图形和第二图形融合得到最终的显示界面。例如,最终融合得到的显示界面为图5(c)所示的界面。因此,当应用在TEE中运行时,显示界面中不仅包括TEE提供的内容,还包括REE提供的内容,例如包括状态栏、背景等等,显示内容较为丰富。
需要说明的是,以锁屏场景为例,现有的TEE+REE架构中,锁屏界面是REE生成的界面,由于REE具有强大的绘图能力,所以锁屏界面中包括丰富的信息,例如状态栏(间、运营商、电量等信息),但是,由于REE安全性较低,当用户在锁屏界面中输入解锁密码时,容易泄露密码。本申请实施例提供的显示方法中,图5(c)中的锁屏界面是融合TEE绘制的第一图形和REE绘制的第二图形之后得到的TUI,该显示界面中关键信息例如口令输入信息是TEE绘制的,其它信息是REE绘制的。因此,REE无法获知口令输入信息,提升安全性,而且,借助REE的绘图能力,增加了TUI的丰富性。
需要说明的是,应用在TEE中运行的同时,REE中的应用可能会收到通知消息,此时REE可以更新第二图形,例如在第二图形上与第一图形中的透明区域对应的区域中增加所述通知消息,因此,第一图形和更新后的第二图形融合/重叠之后,显示所述通知消息。结合图5(c)和图7,图5(c)为TEE绘制的第一图形和REE绘制的第二图形融合之后的界面。此时,若REE中的短信收到通知消息,REE在第二图形上与第一图形中透明区域对应的区域(例如,状态栏区域)中绘制该通知消息,所以第一图形和更新后的第二图形融合之后,显示通知消息,如图7所示。
需要说明的是,现有的TEE+REE架构中,应用在TEE中运行时显示TUI,当REE中的应用收到通知消息时,TEE无法获取该通知消息,而REE不参与TUI的绘制,所以TUI中无法显示所述通知消息。但是,本申请实施例中,电子设备显示TUI时,当REE中的应用收到通知消息时,TUI中可以显示该通知消息,提升TUI的丰富性。
可以理解的是,到308为止,电子设备显示屏上的TUI为融合TEE绘制的第一图形和REE绘制的第二图形之后的界面,用户可以在TUI上执行用户输入,本申请实施例采用TEE和REE融合输入机制,具体通过如下步骤309-311实现:
309、TEE检测用户输入。
需要说明的是,在302之后,TEE控制触摸屏,即TEE检测触摸屏上的用户输入。示例性的,假设电子设备显示如图5(c)所示的TUI,该TUI中部分内容是TEE提供的,部分内容是REE提供的,用户可能在该TUI上的任意位置执行任意操作例如上滑/下滑等操作。因此,TEE检测到用户输入之后,可以判断该用户操作由TEE响应还是REE响应,即310。
310,TEE判断该用户输入由TEE响应还是由REE响应。
可以理解的是,应用在TEE中运行时,TEE根据显示模板绘制的第一图形,该第一图形中包括与所述应用相关的信息,例如口令输入信息。因此,TEE可以判断用户输入是所述应用内输入(下文中将应用内输入简称为APP内输入)还是非所述应用内输入(下文中将非应用内输入简称非APP输入)。其中,APP内输入包括APP内控制信息输入和APP内文本信息输入;APP内文本信息输入例如在TUI中输入的口令,其他非APP内文本信息输入比如点击TUI上的返回按键或者点击用于调整键盘输入法的按键等输入属于APP内控制信息输入。非APP内输入例如包括:全面屏手势操作、下拉菜单操作、屏幕底部虚拟按键操作等不是在所述应用内的输入。
方式一,TEE将非APP内输入发送给REE处理,将APP内输入发送TEE内部应用处理。可以理解的是,TEE向REE发送非APP内输入之前,TUI Service退出,释放触摸屏和显示屏图层1,并清除在图层1的内容,REE收到非APP内输入后,通过图层1-图层N输出响应。该方法中,应用在TEE中运行时,所有APP内输入均由TEE处理,不经过REE,安全性较高。
方式二,TEE将非APP内输入、APP内控制信息输入发送给REE处理,将APP内文本信息输入发送TEE内部应用处理。该方法中,应用在TEE中运行时,仅APP内文本信息输入(例如,口令输入)由TEE处理,其它输入通过REE处理,缓解TEE的处理压力。
以图5(c)为例,锁屏应用(screen lock App)在TEE中运行,TEE绘制的第一图形中仅包括数字按键值。TEE检测到用户输入口令后,判断用户输入是APP内文本信息输入,则将用户输入发送TEE中锁屏应用处理,若判断用户输入是APP内控制信息输入,例如点击返回按键,可以将用户发送输入REE,也可以将用户输入发送TEE内锁屏应用。
TEE判断用户输入是APP内输入还是非APP内输入的方式可以是如下方式中至少一种:
方式一,304中,TEE绘制的第一图形包括透明区域和非透明区域,非透明区域包括TEE绘制的信息。因此,TEE判断用户输入是应用内输入还是非应用内输入的方式可以是,判断用户输入的触控位置是否位于非透明区域内,若是,则确定用户输入是应用内输入;若否,则确定用户输入是非应用内输入。
方式二,TEE判断用户输入是应用内输入还是非应用内输入的方式还可以是,判断用户输入的操作类型是否是预设操作类型,预设操作类型包括点击操作,长按操作等;若是,则确定用户输入是应用内输入;若否(例如是上滑、下滑等操作),则确定用户输入是非应用内输入。可以理解的是,上滑/下滑等手势操作通常不是用于输入口令的操作,所以TEE可以根据用户操作的操作类型判断用户操作是否是APP内输入操作。
需要说明的是,上述方式一和方式二可以单独使用,或者,为了提升准确性,方式一和方式二可以结合使用,例如,TEE判断用户输入是否在非透明区域内,若是,继续判断用户输入的操作类型是否是预设操作类型,若是,则TEE内的应用响应用户输入;若用户输入不在非透明区域或者操作类型不是预设操作类型,则将用户输入发送REE处理。
311,TEE将用户输入发送给REE。
可以理解的是,TEE与REE之间可以建立用于传输用户输入的通道。如果309中TEE判断用户输入由REE处理,则将该用户输入通过所述通道发送给REE。REE接收到用户输入之后,响应用户输入。例如,以图5(c)为例,TEE检测到用户操作,TEE判断用户操作位于状态栏,且该用户操作的操作类型是向下滑动操作,TEE将用户操作发送给REE,REE响应用户操作,显示下拉菜单。
312,TEE内所述应用响应该用户输入。
302中应用在TEE中运行,如果309中TEE判断用户输入由TEE响应,则TEE中所述应用响应用户输入,例如,用户输入为APP内文本信息输入,则所述应用将输入的文本信息与预存的文本信息进行比对,若比对一致,则执行相应的处理流程,例如解锁电子设备、登录应用、转账、支付等流程。
需要说明的是,上述步骤301-308中,当应用在TEE中运行时,电子设备显示TUI,该TUI是TEE绘制的第一图形与REE绘制的第二图形的融合之后的显示界面,解决了传统技术中TUI呆板的问题。具体而言,当应用在TEE中运行时,TEE在图层1上显示第一图形,REE在图层2-图层N显示第二图形,第一图形和第二图形融合得到最终的显示界面。此时,若REE中的应用收到通知消息,可以在第二图形中添加该通知消息,这样的话,第一图形和更新后的第二图形融合之后得到的显示界面中可以显示所述通知消息。因此,解决了现有技术中,当电子设备显示TUI时,TUI中无法显示REE中应用收到通知消息的问题,提升了TUI的显示丰富性。
上述步骤309-311中,TEE检测到用户输入之后,若用户输入是APP内文本信息输入,则TEE内应用响应该用户输入,若用户输入不是APP被文本信息输入,则TEE将用户输入发送给REE,由REE进行处理。因此,解决了现有技术中TUI中用户操作灵敏性较差的问题。
本申请实施例提供的显示方法可以通过图8所示的TEE+REE架构实现。与图1所示的现有架构不同的是,该架构中,REE中增加了可信环境系统命令执行代理(agent forcommand from REE,Agent_ree),该Agent_ree可以作为通信模块,REE可通过Agent_ree接收TEE发送的用户输入。对应的,TEE中也增加通信模块,该通信模块用于向REE发送用户输入。此外,相较于图1所示的现有架构,该架构中的部分模块新增相应的功能,例如,TEE与REE共享显示模板;又例如,当TA在TEE中运行时,TEE在显示屏中图层1显示第一图形,REE在显示屏上图层2-图层N显示第二图形;又例如,TEE中的TUI service增加判断用户操作是否由TEE响应的功能。
以下对图8所示的TEE+REE架构中各个模块进行详细介绍。
REE中包括:CA、框架应用编程接口(Framework API)、可信客户端应用编程接口(TEE client application programming interface,TEE Client API)、富执行环境操作系统内核层(REE OS kernel)包括:显示屏驱动(display screen driver,DSD)、触摸屏驱动(touch screen driver,TSD)、Agent_ree。
当CA在REE中运行时,CA通过Framework API调用REE OS kernel中的DisplayScreen Driver,进而控制显示屏显示CA提供的显示界面。当用户在触摸屏上用户输入,Touch Screen Driver将该用户输入通过Framework API发送CA,CA响应该用户输入。
TEE中包括:TA、可信应用编程开发接口(TEE internal applicationprogramming interface,TEE Internal API)、可信执行环境中应用编程开发接口(TEE OSkernel)包括:安全用户接口服务组件(trusted User interface service,TUI Service)、Display Screen Driver、Touch Screen Driver、通信模块。该通信模块可以用于向REE中的Agent_ree发送用户输入。应理解,通信模块也可以集成于其它模块中,不需独立设置,例如通信模块的功能集成于TUI Service中,即由TUI Service向REE发送用户输入。因此,图8中通信模块以虚线表示。
TA在TEE中运行,TA通过TEE Internal API调用TUI service,TUI service通过display模块控制显示屏中图层1显示第一图形,REE通过REE OS kernel中display模块控制显示屏中图层2-图层N显示第二图形。第一图形和第二图形融合(或称重叠)之后得到TUI。当用户在触摸屏上输入操作,touch模块将输入操作发送TUI service,TUI service判断TEE是否响应输入操作,若是,则将输入操作发送TA进行响应,若否,则TUI service通过通信模块将输入操作发送REE中的Agent_ree,Agent_ree将输入操作发送CA进行响应。
参见图9所示,为通过图8所示的TEE+REE架构实现本申请实施例提供的显示方法的流程图,所述流程可以包括:
901,CA调用TA。
具体的,REE中的CA通过TEE Client API调用TEE的TA。
902:TA调用TUI Service。
903:TUI Service根据显示模板绘制第一图形,并通过TEE OS kernel中DisplayScreen Driver在显示屏图层1上第一图形。
需要说明的是,903中TUI Service可以根据当前场景确定合适的显示模板,然后根据显示模板绘制第一图形,具体过程不再重复赘述。
904:CA根据显示模板绘制第二图形,并通过REE OS kernel中的Display ScreenDriver在显示屏的图层2-图层N显示第二图形。
可以理解的是,903和904中使用的显示模块是同一个显示模板。需要说明的是,904与901-903之间的执行顺序,本申请实施例不作限定。
905,TEE中的Touch Screen Driver检测到用户输入,并发送TUI Service。
906,TUI Service判定用户输入的类型;若是非APP内输入,则执行907-909,若是APP内输入,则执行910。
907、TUI Service退出TUI服务。退出TUI服务可以包括清空图层1的显示内容,将图层1的控制权交付REE等。
908,TUI Service将用户输入发送Agent_ree。
909,Agent_ree将用户输入发送CA,CA处理用户输入。
需要说明的是,本申请实施例不限定907-909之间的执行顺序。
910,TUI Service判定TUI是否满足退出条件或TUI输入完成,若是,则执行911,若否,则执行905。其中,满足TUI退出条件可以包括:用户在TUI中点击取消按键触发TUI退出,或者,异常事件触发TUI退出,包括点击power键、来电、截屏等操作,或者,TA崩溃(Crash)触发TUI退出,或者,显示TUI预设时长例如120s无任何操作自动退出TUI。其中,TUI输入完成可以包括输入文本信息例如数字信息的个数达到预设个数,或者,用户在TUI中点击完成按键等。
911,TUI Service将输入信息发送TA,TA进行处理(例如进行安全验证),得到处理结果(例如验证通过与否)。
912,TA将处理结果发送CA,CA进行后续处理。
示例性的,以锁屏界面为例,若处理结果是用户输入的口令验证通过,则CA响应于该处理结果,通过显示屏显示主界面。
如图10所示,为本申请实施例提供的一种电子设备1000的逻辑结构示意图。电子设备1000可以是手机、平板电脑等。如图10所示,该电子设备1000包括TEE和REE,其中,TEE包括第一处理模块1001和第一显示模块1002,REE包括第二处理模块1003和第二显示模块1004。
其中,第一处理模块1001,用于绘制第一图形;
第一显示模块1002,用于在所述电子设备的显示屏中的第一图层显示所述第一图形;
第二处理模块1003,用于绘制第二图形;
第二显示模块1004,用于在所述显示屏中的第二图层显示所述第二图形,其中,所述第一图层位于所述第二图层之上;
其中,所述第一图形上包括透明区域和非透明区域,所述非透明区域包括所述TEE绘制的内容,所述第二图形上与所述透明区域对应的显示区域包括所述REE绘制的内容,当所述第一图层和所述第二图层重叠显示时,所述透明区域不遮挡所述REE绘制的内容。
可选的,所述电子设备中触摸屏位于所述显示屏的上层,所述显示屏中包括多个图层,所述第一图层为靠近所述触摸屏的一个或多个图层,所述第二图层为远离所述触摸屏的一个或多个图层。
可选的,所述第一图层为所述显示屏中距离所述触摸屏最近的一个图层,所述第二图层为所述显示屏中除去所述第一图层之外的其它图层。
可选的,第一处理模块1001还用于:根据所述当前场景从一个或多个显示模板中确定与所述当前场景对应的显示模板;第一处理模块1001具体用于:根据所述显示模板绘制所述第一图形,第二处理模块1003具体用于:根据所述显示模板绘制所述第二图形。
可选的,所述显示模板为一个图形,所述图形上包括至少一个显示区域,其中的每个显示区域被配置为所述TEE绘制内容或者所述REE绘制内容;或者,所述显示模板包括至少一个图形,每个图形对应一个图层,每个图形被配置为所述TEE绘制或所述REE绘制。
可选的,所述TEE绘制的内容,包括;与口令输入相关的信息。
可选的,第一处理模块1001还用于:检测用户输入,并判断所述用户输入是否需要所述TEE响应;当所述用户输入不需要所述TEE响应时,通过所述TEE中的第一通信模块将所述用户输入发送给所述REE,所述REE响应于所述用户输入执行相应的处理流程。
可选的,第一处理模块1001在用于判断所述用户输入是否需要所述TEE响应时,具体用于:当确定所述用户输入是所述TEE内当前运行的应用内的输入时,确定所述用户输入需要所述TEE响应;当确定所述用户输入不是所述应用内的输入时,确定所述用户输入不需要所述TEE响应。
可选的,所述应用内的输入包括:位于所述非透明区域内的输入,和/或,操作类型满足预设操作类型的输入;非所述应用内的输入,包括:位于所述非透明区域外的输入,和/或,操作类型不是所述预设操作类型的输入。
可选的,第一处理模块1001还用于:当所述REE中的应用接收到通知消息时,更新所述第二图形,更新后的第二图形中与所述第一图形中透明区域对应的显示区域中显示所述通知消息;所述第二显示模块还用于,在所述第二图层中显示所述更新后的第二图形。
在一个例子中,以上电子设备中的单元/模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integratedcircuit,ASIC),或,一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA),或这些集成电路形式中至少两种的组合。再如,电子设备中的单元/模块可以通过处理元件调度程序的形式实现,该处理元件可以是通用处理器,例如中央处理器(central processing unit,CPU)或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
需要说明的是,第一处理模块1001、第二处理模块1003可以是不同的物理器件(这里,物理器件可以包括芯片、芯片系统、电路、电路系统等),也可以是同一物理器件,例如都是处理器;处理器包括中央处理单元(central processing unit,CPU)、应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。当第一处理模块1001和第二处理模块1003是同一物理器件时,可以通过不同的计算机程序调用该物理器件以实现不同的功能。
需要说明的是,第一显示模块1002和第二显示模块1004可以是电子设备中的显示屏,显示屏可以包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。
如图11所示,本申请实施例提供一种电子设备。该电子设备1100部署有REE和TEE(图中未示出);还包括:显示屏1130;一个或多个处理器1110;存储器1120;其中,一个或多个处理器1110可以运行在REE或TEE中,当一个或多个处理器运行在TEE时,可以实现上述TEE执行的步骤,当一个或多个处理器运行在REE时,可以实现上述REE执行的步骤。一个或多个处理器1110可以通过计算机程序调度的方式在TEE和REE中切换运行。
其中,存储器1120中可以存储一个或多个计算机程序,所述一个或多个计算机程序被配置为被该一个或多个处理器1110执行,该一个或多个计算机程序包括指令,上述指令可以用于执行前述实施例中的各个步骤。
基于与上述方法实施例相同构思,本申请实施例中还提供一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令在被计算机调用时,使所述计算机执行上述提供的方法实施例中的各个实施例的具体过程。本申请实施例中,对所述计算机可读存储介质不做限定,例如,可以是RAM(random-access memory,随机存取存储器)、ROM(read-only memory,只读存储器)等。
基于与上述方法实施例相同构思,本申请实施例中还提供一种计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述任意一种可能的设计中提供的方法。
本领域内的技术人员应明白,本申请实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请中一些可能的实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括本申请实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (20)
1.一种图像显示方法,其特征在于,应用于包括可信执行环境TEE和富执行环境REE的电子设备,包括:
所述TEE和所述REE确定显示模板,所述显示模板用于绘制所述电子设备的显示界面,所述显示模板包括第一模板和第二模板,所述第一模板位于第一图层,所述第二模板位于第二图层,所述第一图层位于所述第二图层之上;所述第一模板对应于所述TEE,所述第二模板对应于所述REE;
所述TEE基于所述第一模板,绘制第一图形,所述第一图形上包括透明区域和非透明区域,所述非透明区域包括所述TEE绘制的内容;
所述REE基于所述第二模板,绘制第二图形,所述第二图形上与所述透明区域对应的显示区域包括所述REE绘制的内容;
在所述第一图层显示所述第一图形,在所述第二图层显示所述第二图形,所述第一图层内的所述透明区域不遮挡所述第二图层中所述REE绘制的内容;
所述REE中的应用接收到通知消息;
所述REE更新所述第二图形,更新后的第二图形中与所述第一图形中透明区域对应的显示区域中显示所述通知消息;
所述REE在所述第二图层中显示所述更新后的第二图形。
2.如权利要求1所述的方法,其特征在于,所述电子设备中触摸屏位于显示屏的上层,所述显示屏中包括多个图层,所述第一图层为靠近所述触摸屏的一个或多个图层,所述第二图层为远离所述触摸屏的一个或多个图层。
3.如权利要求2所述的方法,其特征在于,所述第一图层为所述显示屏中距离所述触摸屏最近的一个图层,所述第二图层为所述显示屏中除去所述第一图层之外的其它图层。
4.如权利要求1-3任一所述的方法,其特征在于,所述TEE和所述REE协商显示模板,包括:
根据当前场景从一个或多个显示模板中确定与所述当前场景对应的显示模板。
5.如权利要求1-3任一所述的方法,其特征在于,所述TEE绘制的内容,包括;与口令输入相关的信息。
6.如权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
所述TEE检测用户输入,并判断所述用户输入是否需要所述TEE响应;
当所述用户输入不需要所述TEE响应时,将所述用户输入发送给所述REE,所述REE响应于所述用户输入执行相应的处理流程。
7.如权利要求6所述的方法,其特征在于,所述判断所述用户输入是否需要所述TEE响应,包括:
当所述TEE确定所述用户输入是所述TEE内当前运行的应用内的输入时,确定所述用户输入需要所述TEE响应;
当所述TEE确定所述用户输入不是所述应用内的输入时,确定所述用户输入不需要所述TEE响应。
8.如权利要求7所述的方法,其特征在于,所述应用内的输入包括:位于所述非透明区域内的输入,和/或,操作类型满足预设操作类型的输入;
非所述应用内的输入,包括:位于所述非透明区域外的输入,和/或,操作类型不是所述预设操作类型的输入。
9.一种电子设备,其特征在于,包括可信执行环境TEE和富执行环境REE;其中,所述TEE中包括第一处理模块和第一显示模块,所述REE中包括第二处理模块和第二显示模块:
所述第一处理模块和所述第二处理模块确定显示模板,所述显示模板用于绘制所述电子设备的显示界面,所述显示模板包括第一模板和第二模板,所述第一模板位于第一图层,所述第二模板位于第二图层,所述第一图层位于所述第二图层之上;所述第一模板对应所述TEE,所述第二模板对应所述REE;
所述第一处理模块,用于基于所述第一模板,绘制第一图形;所述第一图形上包括透明区域和非透明区域,所述非透明区域包括所述TEE绘制的内容;
所述第二处理模块,用于基于所述第二模板,绘制第二图形;所述第二图形上与所述透明区域对应的显示区域包括所述REE绘制的内容;
所述第一显示模块,用于在所述第一图层显示所述第一图形;
所述第二显示模块,用于在所述第二图层显示所述第二图形;所述第一图层内的所述透明区域不遮挡所述第二图层中所述REE绘制的内容;
所述第二处理模块还用于:当所述REE中的应用接收到通知消息时,更新所述第二图形,更新后的第二图形中与所述第一图形中透明区域对应的显示区域中显示所述通知消息;
所述第二显示模块还用于,在所述第二图层中显示所述更新后的第二图形。
10.如权利要求9所述的电子设备,其特征在于,所述电子设备中触摸屏位于显示屏的上层,所述显示屏中包括多个图层,所述第一图层为靠近所述触摸屏的一个或多个图层,所述第二图层为远离所述触摸屏的一个或多个图层。
11.如权利要求10所述的电子设备,其特征在于,所述第一图层为所述显示屏中距离所述触摸屏最近的一个图层,所述第二图层为所述显示屏中除去所述第一图层之外的其它图层。
12.如权利要求9-11任一所述的电子设备,其特征在于,所述第一处理模块还用于:
根据当前场景从一个或多个显示模板中确定与所述当前场景对应的显示模板。
13.如权利要求9-11任一所述的电子设备,其特征在于,所述TEE绘制的内容,包括;与口令输入相关的信息。
14.如权利要求9-11任一所述的电子设备,其特征在于,所述第一处理模块还用于:
检测用户输入,并判断所述用户输入是否需要所述TEE响应;
当所述用户输入不需要所述TEE响应时,通过所述TEE中的第一通信模块将所述用户输入发送给所述REE,所述REE响应于所述用户输入执行相应的处理流程。
15.如权利要求14所述的电子设备,其特征在于,所述第一处理模块在用于判断所述用户输入是否需要所述TEE响应时,具体用于:
当确定所述用户输入是所述TEE内当前运行的应用内的输入时,确定所述用户输入需要所述TEE响应;
当确定所述用户输入不是所述应用内的输入时,确定所述用户输入不需要所述TEE响应。
16.如权利要求15所述的电子设备,其特征在于,所述应用内的输入包括:位于所述非透明区域内的输入,和/或,操作类型满足预设操作类型的输入;
非所述应用内的输入,包括:位于所述非透明区域外的输入,和/或,操作类型不是所述预设操作类型的输入。
17.一种电子设备,其特征在于,所述电子设备部署有可信执行环境TEE和富执行环境REE,还包括显示屏、处理器和存储器;其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述电子设备实现如权利要求1-8任一项所述的方法。
18.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有计算机程序,当计算机程序在部署有可信执行环境TEE和富执行环境REE的电子设备上运行时,使得所述电子设备实现如权利要求1-8任一项所述的方法。
19.一种芯片,其特征在于,所述芯片能够运行在可信执行环境TEE和富执行环境REE,所述芯片用于读取存储器中存储的计算机程序,实现如权利要求1-8任一项所述的方法。
20.一种电子设备上的图形用户界面,其特征在于,所述电子设备部署有可信执行环境TEE、富执行环境REE,还包括显示屏、一个或多个存储器、以及一个或多个处理器,所述一个或多个处理器用于执行存储在所述一个或多个存储器中的一个或多个计算机程序,所述图形用户界面包括所述电子设备执行如权利要求1至8中任意一项所述的方法时显示的图形用户界面。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/110337 WO2021077882A1 (zh) | 2019-10-24 | 2020-08-20 | 一种图像显示方法与电子设备 |
US17/727,148 US11948233B2 (en) | 2019-10-24 | 2022-04-22 | Image display method and electronic device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911016209 | 2019-10-24 | ||
CN2019110162096 | 2019-10-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112711452A CN112711452A (zh) | 2021-04-27 |
CN112711452B true CN112711452B (zh) | 2023-11-03 |
Family
ID=75541137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911082843.XA Active CN112711452B (zh) | 2019-10-24 | 2019-11-07 | 一种图像显示方法与电子设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11948233B2 (zh) |
CN (1) | CN112711452B (zh) |
WO (1) | WO2021077882A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210166227A1 (en) * | 2019-11-28 | 2021-06-03 | Qualcomm Incorporated | Secure User Interface With Improved User Experience |
CN114036015B (zh) * | 2021-10-07 | 2024-04-19 | 中国航空工业集团公司洛阳电光设备研究所 | 一种基于fpga的高安全性图形生成装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2648129A1 (en) * | 2011-12-02 | 2013-10-09 | Samsung Electronics Co., Ltd | Method and apparatus for securing touch input |
CN104115413A (zh) * | 2012-02-16 | 2014-10-22 | 三星电子株式会社 | 用于在支持安全执行环境的便携式终端中输出内容的方法和设备 |
CN104809413A (zh) * | 2015-05-13 | 2015-07-29 | 上海瓶钵信息科技有限公司 | 基于TrustZone技术的移动平台可信用户界面框架 |
CN104820573A (zh) * | 2015-05-27 | 2015-08-05 | 南京芯度电子科技有限公司 | 一种安全人机交互接口的系统及其实现方法 |
CN105528554A (zh) * | 2015-11-30 | 2016-04-27 | 华为技术有限公司 | 用户界面切换方法和终端 |
CN105683981A (zh) * | 2014-08-21 | 2016-06-15 | 华为技术有限公司 | 一种安全交互方法和设备 |
CN106201479A (zh) * | 2016-06-30 | 2016-12-07 | 深圳市金立通信设备有限公司 | 一种通讯消息的显示方法以及终端 |
CN106462713A (zh) * | 2015-04-30 | 2017-02-22 | 华为技术有限公司 | 终端的界面显示方法和终端 |
CN106845285A (zh) * | 2016-12-28 | 2017-06-13 | 北京握奇智能科技有限公司 | 一种tee系统与ree系统配合以实现服务的方法及终端设备 |
WO2017147786A1 (en) * | 2016-03-01 | 2017-09-08 | Qualcomm Incorporated | User interface for tee execution of a device |
CN107315970A (zh) * | 2016-04-26 | 2017-11-03 | 展讯通信(上海)有限公司 | 一种敏感数据的交互方法及装置 |
CN107924449A (zh) * | 2016-03-18 | 2018-04-17 | 华为技术有限公司 | 一种通知消息处理方法、装置及终端 |
CN109766152A (zh) * | 2018-11-01 | 2019-05-17 | 华为终端有限公司 | 一种交互方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9183373B2 (en) * | 2011-05-27 | 2015-11-10 | Qualcomm Incorporated | Secure input via a touchscreen |
US8751800B1 (en) * | 2011-12-12 | 2014-06-10 | Google Inc. | DRM provider interoperability |
US9124419B2 (en) * | 2012-05-08 | 2015-09-01 | Discretix Technologies Ltd. | Method, device, and system of secure entry and handling of passwords |
WO2015156640A1 (en) * | 2014-04-11 | 2015-10-15 | Samsung Electronics Co., Ltd. | Method and device for controlling security screen in electronic device |
US10410211B2 (en) * | 2015-06-15 | 2019-09-10 | Intel Corporation | Virtual POS terminal method and apparatus |
CN106325802B (zh) | 2016-08-16 | 2018-03-27 | 华为技术有限公司 | 一种显示方法、装置及操作图形用户界面的方法 |
KR102514062B1 (ko) * | 2018-02-27 | 2023-03-24 | 삼성전자주식회사 | 트러스트존 그래픽 렌더링 방법 및 그에 따른 디스플레이 장치 |
-
2019
- 2019-11-07 CN CN201911082843.XA patent/CN112711452B/zh active Active
-
2020
- 2020-08-20 WO PCT/CN2020/110337 patent/WO2021077882A1/zh active Application Filing
-
2022
- 2022-04-22 US US17/727,148 patent/US11948233B2/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2648129A1 (en) * | 2011-12-02 | 2013-10-09 | Samsung Electronics Co., Ltd | Method and apparatus for securing touch input |
CN104115413A (zh) * | 2012-02-16 | 2014-10-22 | 三星电子株式会社 | 用于在支持安全执行环境的便携式终端中输出内容的方法和设备 |
CN105683981A (zh) * | 2014-08-21 | 2016-06-15 | 华为技术有限公司 | 一种安全交互方法和设备 |
CN106462713A (zh) * | 2015-04-30 | 2017-02-22 | 华为技术有限公司 | 终端的界面显示方法和终端 |
CN104809413A (zh) * | 2015-05-13 | 2015-07-29 | 上海瓶钵信息科技有限公司 | 基于TrustZone技术的移动平台可信用户界面框架 |
CN104820573A (zh) * | 2015-05-27 | 2015-08-05 | 南京芯度电子科技有限公司 | 一种安全人机交互接口的系统及其实现方法 |
CN105528554A (zh) * | 2015-11-30 | 2016-04-27 | 华为技术有限公司 | 用户界面切换方法和终端 |
WO2017147786A1 (en) * | 2016-03-01 | 2017-09-08 | Qualcomm Incorporated | User interface for tee execution of a device |
CN107924449A (zh) * | 2016-03-18 | 2018-04-17 | 华为技术有限公司 | 一种通知消息处理方法、装置及终端 |
CN107315970A (zh) * | 2016-04-26 | 2017-11-03 | 展讯通信(上海)有限公司 | 一种敏感数据的交互方法及装置 |
CN106201479A (zh) * | 2016-06-30 | 2016-12-07 | 深圳市金立通信设备有限公司 | 一种通讯消息的显示方法以及终端 |
CN106845285A (zh) * | 2016-12-28 | 2017-06-13 | 北京握奇智能科技有限公司 | 一种tee系统与ree系统配合以实现服务的方法及终端设备 |
CN109766152A (zh) * | 2018-11-01 | 2019-05-17 | 华为终端有限公司 | 一种交互方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220245878A1 (en) | 2022-08-04 |
US11948233B2 (en) | 2024-04-02 |
WO2021077882A1 (zh) | 2021-04-29 |
CN112711452A (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2019250143B2 (en) | User interface for managing access to credentials for use in an operation | |
US11204693B2 (en) | Screenshot based TUI process for in-app purchase authentication | |
US9754095B2 (en) | Unlocking electronic devices using touchscreen input gestures | |
US9038166B2 (en) | Method and apparatus for authenticating password of user terminal | |
RU2635224C2 (ru) | Способ и аппарат для безопасного сенсорного ввода | |
US8938780B2 (en) | Display authentication | |
CN106888202B (zh) | 授权登录方法及装置 | |
CN106462713B (zh) | 终端的界面显示方法和终端 | |
US20130145475A1 (en) | Method and apparatus for securing touch input | |
US11948233B2 (en) | Image display method and electronic device | |
CN111758095A (zh) | 快速打开应用或应用功能的方法及终端 | |
US11994905B2 (en) | Trusted user interface display method and electronic device | |
KR20140027109A (ko) | 보안된 런타임 환경에서 데이터를 교환하기 위한 방법 | |
CN110618847A (zh) | 一种用户界面的显示方法和终端设备 | |
EP3841731B1 (en) | Securing sensitive user data across hardware and software components having unbalanced trust levels | |
CN111913773A (zh) | Nfc卡控制方法、控制装置及电子设备 | |
CN116049813B (zh) | 基于可信执行环境的触屏数据处理方法、设备及存储介质 | |
KR101290850B1 (ko) | 스크롤 휠을 이용한 사용자 단말기의 패스워드 인증 방법 및 그 장치 | |
US20170364242A1 (en) | Web content layout engine instance sharing across mobile devices | |
CA3021345A1 (en) | Computing device to generate a security indicator | |
KR102404704B1 (ko) | 키 보안 입력을 수행하는 사용자 디바이스 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |