CN113614720A - 一种动态配置可信应用程序访问控制的装置和方法 - Google Patents

一种动态配置可信应用程序访问控制的装置和方法 Download PDF

Info

Publication number
CN113614720A
CN113614720A CN201980093935.XA CN201980093935A CN113614720A CN 113614720 A CN113614720 A CN 113614720A CN 201980093935 A CN201980093935 A CN 201980093935A CN 113614720 A CN113614720 A CN 113614720A
Authority
CN
China
Prior art keywords
application
trusted
access
public key
execution environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980093935.XA
Other languages
English (en)
Inventor
桑泊.索维欧
佩卡·莱蒂宁
桑迪普·塔姆拉卡尔
连刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN113614720A publication Critical patent/CN113614720A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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/33User authentication using certificates
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种处理器,用于提供REE和TEE,其中,所述TEE中的存储器受到保护,以免受在REE中执行的应用程序访问或修改。所述处理器将客户端应用程序安装在所述REE中,并验证使用服务提供商私钥生成的签名。所述处理器确定所述客户端应用程序需要来自TA的服务,联系外部实体,并接收服务提供商公钥以及用于安装所述TA的数据。所述密钥和所述数据安全地传输到所述TEE。所述处理器在所述TEE中配置安全域,在所述安全域中安装所述TA,并将所述TA与所述安全域相关联,其中,所述安全域也与所述服务提供商公钥相关联。所述处理器在所述安全域内配置访问控制列表,其中,对所述TA的访问由所述访问控制列表控制。

Description

一种动态配置可信应用程序访问控制的装置和方法
技术领域
本公开的各个方面大体上涉及移动计算装置,并且更具体地,涉及移动计算装置内的软件安全。
背景技术
移动计算装置或设备,如手机或其他支持通信的移动计算设备,通常包括多个执行环境,以增强安全性以及保护重要机密数据和进程。通常,第一执行环境,称为富执行环境(rich execution environment,REE),包括由谷歌公司生产的Android操作***或由苹果公司生产的iOS等功能齐全的操作***(operating system,OS),以及一组丰富的支持软件服务。所述REE用于托管需要丰富的全功能用户体验的用户应用程序。第二执行环境,称为可信执行环境(trusted execution environment,TEE)或安全执行环境(secureexecution environment,SEE),包括一组少得多的软件服务,并且通常包括基于硬件的安全特征,以保护存储在所述TEE中的机密数据和程序。所述TEE内执行的软件数量减少,通过减少攻击载体以及减少可能的软件缺陷来提高安全性。
通常使用基于硬件的安全特征,在所述TEE内保护加密操作和相关机密密钥材料等敏感应用程序。所述TEE通过一个受控和明确定义的接口公开服务,该接口可以由在所述REE内执行的客户端应用程序(client application,CA)访问。可信应用程序(trustedapplication,TA)暴露所述CA消费的服务。例如CA–TA对的一个示例是在所述REE内执行的Android支付应用程序,该应用程序需要访问在所述TEE内执行的可信加密签名应用程序,以便使用批准的签名密钥签署支付交易。签名密钥是在TEE内受保护的机密密钥材料的示例。签名算法和签名密钥保留在TEE内并且在TEE外不可访问。只有签名服务可以通过REE-TEE接口访问。在REE中运行的恶意软件无法访问私钥或加密服务,因此无法滥用或分发签名密钥或相关联的加密服务。攻击者必须使用实际的物理设备才能签署支付消息。
攻击者仍然可以通过在REE中运行伪装成合法支付应用程序的恶意应用程序来破坏支付过程,从而诱使支付TA签署欺诈性消息。理想情况下,TEE或TA包括保护措施,以防止诈用可信应用程序。
一种方法是在TEE内包括一个可信用户界面,这样TA就不需要直接接受来自REE的输入。向TEE环境中添加额外软件会增加TEE受到威胁的机会。此外,可信用户界面将具有与REE应用程序的用户界面明显不同的外观和感觉,因此,在REE中运行的应用程序的配套部分将出现明显不同,导致用户体验不佳。
或者,访问控制机制可以包括在REE中,例如在由谷歌公司生产的SE Android操作***中所做的那样,以使TEE仅可用于某些REE侧CA。遗憾的是,这些方案往往非常复杂,导致难以维护或修改,并且维护或修改时存在风险。此外,这些方案依赖于在REE中运行的软件,因此容易受到篡改,无法提供某些类型TA所需的高水平安全性。
因此,需要提供至少能解决上述问题中的一些问题的方法和装置。
发明内容
所公开实施例的一个目的是提供改进的方法和装置,该方法和装置能够实现对移动计算装置内可信应用程序的安全和有效的访问。本目的由独立权利要求的主题解决。其他有利的修改可以在从属权利要求中找到。
根据第一方面,上述及另外的目的和优点是通过一种装置实现和获得的,该装置包括耦合到存储器的处理器,其中,所述处理器和所述存储器用于提供富执行环境和可信执行环境。所述可信执行环境中的所述存储器和进程受到保护,以免受在所述富执行环境内执行的应用程序的访问或修改。所述处理器用于在所述富执行环境内安装第一客户端应用程序,其中,所述第一客户端应用程序包括基于服务提供商私钥生成的签名,并确定所述第一客户端应用程序需要来自可信应用程序的服务。所述处理器用于向外部实体发送安装所述可信应用程序的请求;在所述富执行环境内接收一个或多个消息,其中,所述一个或多个消息包括与所述服务提供商私钥相对应的服务提供商公钥和用于安装所述可信应用程序的数据;并且将所述一个或多个消息安全地传输到所述可信执行环境。所述处理器在所述可信执行环境内配置安全域,其中,所述安全域与所述服务提供商公钥相关联;在所述可信执行环境内安装所述可信应用程序;并且将所述可信应用程序与所述安全域相关联。所述处理器在所述安全域(security domain,SD)内配置访问控制列表,其中,对所述可信应用程序的访问由所述访问控制列表控制。配置所述SD和所述访问控制列表使得所述TA安全性更高和访问控制得更好。在没有指定的ACL配置的情况下,可以通过允许任何CA访问TA或允许TA仅服务预定义的CA来实现对TA的访问。允许所有CA访问TA会产生严重的安全风险,而允许基于预定义列表的访问是有问题的,因为无法将TA提供的安全关键服务公开给安装TA后开发的任何新CA。
根据第一方面,在所述装置的第一种可能的实现形式中,所述处理器用于在所述富执行环境内,生成来自第二客户端应用程序的对所述可信应用程序的访问请求。所述处理器识别所述第二客户端应用程序,并从安装包获取与所述第二客户端应用程序对应的应用程序公钥,其中,所述安装包包括所述第二客户端应用程序和所述应用程序公钥。所述处理器将所述访问请求和所述应用程序公钥安全地传输到所述可信执行环境,并在所述可信执行环境内,确定所述第二客户端应用程序是否被授权访问所述可信应用程序。所述确定基于所述应用程序公钥和所述访问控制列表。在所述第二客户端应用程序被授权的情况下,所述处理器用于允许所述第二客户端应用程序访问所述可信应用程序。根据所述访问控制列表验证每个请求,可以在将每个访问请求转发到所述可信应用程序之前,可靠地授权该请求。
根据第一方面本身或第一种可能的实现形式,在所述装置的一种可能的实现形式中,所述应用程序公钥包括应用程序证书,并且所述处理器用于将所述应用程序证书安全地传输到所述可信执行环境。使用应用程序证书可以验证所述公钥以及与所述客户端应用程序相关联的其他信息的真实性和完整性。
根据第一方面,在所述装置的一种可能的实现形式中,所述访问控制列表包括多个应用程序公钥,并且所述处理器用于允许基于所述多个公钥访问所述可信应用程序。在所述访问控制列表中包括多个公钥可以在不安装更新或所述TA的多个副本的情况下,修改对所述可信应用程序的访问。
根据第一方面,在所述的装置的一种可能的实现形式中,所述应用程序公钥与所述服务提供商公钥相同,并且所述处理器用于基于所述应用程序公钥和所述访问控制列表允许或拒绝对所述可信应用程序的访问。对所述客户端应用程序和所述服务提供商使用相同的公钥可以保证所述可信应用程序、所述安全域和所述客户端应用程序都由同一来源提供。
根据第一方面,在所述装置的一种可能的实现形式中,所述安全域与多个可信应用程序相关联,并且所述处理器用于基于所述访问控制列表允许对所述多个关联可信应用程序中的任何一个的访问。在单个安全域中安装多个可信应用程序,通过避免所述TEE中非必要安全域的激增,简化了访问。
根据第一方面,在所述装置的一种可能的实现形式中,所述装置是移动通信设备。由于移动通信设备始终由用户携带,因此提高这些设备的安全性变得愈发重要。
根据第一方面,在所述装置的一种可能的实现形式中,所述处理器用于确定第二客户端应用程序需要访问所述可信应用程序。所述处理器向所述外部实体发送允许所述第二客户端应用程序访问的请求,在所述富执行环境内接收一个或多个消息,并将一个或多个消息安全地传输到所述可信执行环境,其中,所述一个或多个消息包括对应于所述第二客户端应用程序的应用程序公钥,以及用于更新所述访问控制列表的数据。所述处理器基于所述应用程序公钥更新所述访问控制列表,其中,所述更新用于允许所述第二客户端访问所述可信应用程序。在所述访问控制列表中包括多个公钥使得多个客户端应用程序能够访问同一可信应用程序,而无需安装由不同公钥签名的所述可信应用程序的多个副本。
根据第一方面,在所述装置的一种可能的实现形式中,所述访问控制列表包括访问规则,并且所述处理器用于基于所述访问规则允许对所述可信应用程序的访问。当所述安全域中存在多个公钥和/或多个可信应用程序时,在所述访问控制列表中包括访问规则和/或权限提供了一种改进访问控制的方法。
根据所公开实施例的第二方面,上述及另外的目的和优点是通过一种方法实现和获得的,所述方法包括在所述富执行环境内安装客户端应用程序,其中,所述客户端应用程序包括基于服务提供商私钥生成的签名,以及确定所述客户端应用程序需要来自可信应用程序的服务。所述方法向外部实体发送安装所述可信应用程序的请求;在所述富执行环境内接收一个或多个消息,其中,所述一个或多个消息包括与所述服务提供商私钥相对应的服务提供商公钥和用于安装所述可信应用程序的数据;并且将一个或多个消息安全地传输到所述可信执行环境。该方法在所述可信执行环境内配置安全域,其中,所述安全域与所述服务提供商公钥相关联;在所述可信执行环境内安装所述可信应用程序;并且将所述可信应用程序与所述安全域相关联。该方法在所述安全域内配置访问控制列表,其中,客户端应用程序对所述可信应用程序的访问由所述访问控制列表控制。配置所述SD和所述访问控制列表的使得所述TA的安全性更高和访问控制得更好。
根据第二方面,在所述方法的第一种可能的实现形式中,所述方法在所述富执行环境内,生成来自第二客户端应用程序的对所述可信应用程序的访问请求,识别所述第二客户端应用程序,从安装包中获取与所述第二客户端应用程序对应的应用程序公钥。所述安装包包括所述第二客户端应用程序和所述对应的应用程序公钥。所述方法将所述访问请求和所述应用程序公钥安全地传输到所述可信执行环境,并在所述可信执行环境内,确定所述第二客户端应用程序是否被授权访问所述可信应用程序,其中,所述确定基于所述应用程序公钥和所述访问控制列表。在所述第二客户端应用程序被授权的情况下,该方法允许所述第二客户端应用程序访问所述可信应用程序。根据所述访问控制列表验证每个请求,可以在将每个访问请求转发到所述可信应用程序之前,可靠地授权该请求。
根据第二方面,在所述方法的一种可能的实现形式中,所述应用程序公钥包括应用程序证书,并且所述方法包括将所述应用程序证书安全地传输到所述可信执行环境。使用应用程序证书可以验证所述公钥以及与所述客户端应用程序相关联的其他信息的真实性和完整性。
根据第二方面本身,在所述方法的一种可能的实现形式中,所述访问控制列表包括多个公钥,并且所述方法允许基于所述多个公钥访问所述可信应用程序。在所述访问控制列表中包括多个公钥,可以在不安装更新或所述TA的多个副本的情况下,修改对所述可信应用程序的访问。
根据第二方面,在所述方法的一种可能的实现形式中,所述应用程序公钥与所述服务提供商公钥相同,并且所述方法基于所述应用程序公钥和所述访问控制列表允许或拒绝对所述可信应用程序的访问。对所述客户端应用程序和所述服务提供商使用相同的公钥可以保证所述可信应用程序、所述安全域和所述客户端应用程序都由同一来源提供。
根据第二方面,在所述方法的一种可能的实现形式中,所述安全域与多个可信应用程序相关联,并且所述方法基于所述访问控制列表允许对所述多个相关联的可信应用程序中的任何一个的访问。在单个安全域中安装多个可信应用程序,通过避免所述TEE中非必要安全域的激增,简化了访问。
根据所公开实施例的第三方面,上述及另外的目的和优点通过一个计算机程序产品实现和获得,所述计算机程序产品包括非瞬时性计算机程序指令,当由处理器执行时,所述非瞬时性计算机程序指令用于使得所述处理器执行根据第二方面本身或根据第二方面的可能的实现形式中的任一种所述的方法。
示例性实施例的这些和另外的方面、实现形式和优点将从本文结合附图描述的实施例变得明显。然而,应当理解,说明书和附图仅仅是为了说明的目的而设计的,而不是作为所公开发明的限制的定义,对此,应参考所附权利要求。本发明的附加方面和优点将在下面的描述中阐述,并且部分地从描述中显而易见,或者可以通过本发明的实践了解。此外,本发明的各方面和优点可以通过所附权利要求中特别指出的工具和组合来实现和获得。
附图说明
在本公开内容的以下详述部分中,将参看附图中所展示的示例性实施例来更详细地解释本发明,其中:
图1是结合所公开实施例的各方面的安全软件分发和安装过程100的框图;
图2是根据所公开实施例的各方面的移动计算装置的框图,所述移动计算装置用于基于访问控制列表控制对可信应用程序的访问;
图3是根据所公开实施例的各方面的示例性方法的流程图,所述方法用于在TEE内安装TA和配置访问控制列表;以及
图4示出了结合所公开实施例各方面的示例性方法的流程图,所述方法用于允许对可信应用程序的访问。
具体实施方式
参见图1,图1示出了结合所公开实施例的各方面的安全软件分发和安装***100的框图。所公开实施例的各方面涉及一种装置110,所述装置110包括耦合到存储器152、154的处理器150。所述处理器150和所述存储器152、154用于提供富执行环境(rich executionenvironment,REE)112和可信执行环境(trusted execution environment,TEE)114。所述可信执行环境114中的所述存储器154和进程122、128、140受到保护,以免受在所述富执行环境112内执行的应用程序116、117的访问或修改。
在一个实施例中,所述处理器150用于在所述富执行环境112内安装第一客户端应用程序116,其中,所述第一客户端应用程序包括基于服务提供商私钥生成的签名。所述处理器150还用于确定所述第一客户端应用程序需要来自可信应用程序122的服务,然后向外部实体106发送安装所述可信应用程序的请求。
所述处理器150用于在所述富执行环境内接收一个或多个消息,其中,所述一个或多个消息包括与所述服务提供商私钥相对应的服务提供商公钥和用于安装所述可信应用程序的数据。所述处理器150还用于将所述一个或多个消息安全地传输到所述可信执行环境114,并在所述可信执行环境114内配置安全域120。所述安全域120与所述服务提供商公钥126相关联。
所述处理器150用于在所述可信执行环境114内安装所述可信应用程序122,将所述可信应用程序122与所述安全域120相关联,并在所述安全域120内配置访问控制列表128。对所述可信应用程序122的访问由所述访问控制列表128控制。
如本文所使用的,术语数字签名或签名是指从计算机文件、消息或其他数字数据集的内容加密导出的难以再现的二进制值。签名可以验证数字数据集的真实性和完整性。签名可以基于工业标准签名算法生成,例如由因特网工程任务组(Internet EngineeringTask Force,IETF)维护的评论请求3279(RFC3279)中定义的签名算法,或者可以基于能够验证数字数据集的真实性和完整性的任何合适的签名算法。
如本文所使用的,术语私钥和公钥是指适当的非对称密码算法的密钥对中的两个密钥,例如通用关键字密码(Rivest-Shamir-Adleman,RSA)密码学、椭圆曲线密码学(elliptic curve cryptography,ECC)、或其他合适的公钥或非对称密码算法。使用公钥加密的数据只能使用来自同一加密密钥对的相关联或相应的私钥进行解密,反之亦然。
如本文所使用的,术语安全传输或安全地传输消息或数据是指,在通过计算机网络发送或传输数据或信息时保护数据或信息的方式。消息和/或数据可以通过在两个实体之间配置或建立的安全通信信道安全地传输。安全通信通道对两个实体进行认证,并确保通过安全通信链路发送的消息或数据的隐私。安全传输可以通过建立基于安全协议的安全通信信道,并在该安全通信信道上交换信息或消息来实现。例如,安全套接字层(securesocket layer,SSL)和传输层安全(transport layer security,TLS)是在协议栈的较低级别提供隐私和认证的协议,并可以提供一种在网络上安全传输数据的方法。在传输层或会话层确保通信安全可以为许多应用程序提供足够的安全性,但可能不足以为所有应用程序提供安全性。可选地,可以使用更高级别的协议安全地传输信息,例如作为全球平台行业计划一部分开发的开放信任协议(Open Trust Protocol,OTrP)或其他专有安全协议。这些更高级别的协议可以包括预定义的对话和会话,并且可以在每个消息中嵌入随机数(nonce)值,从而安全地传输消息和数据,所述传输的消息或数据具有更高的隐私性、真实性和完整性。一个示例。
如本文所使用的,术语安全域是指逻辑构造,其中,单个同构安全策略应用于提供或与安全上下文或域关联的所有安全服务或TA。可以在TEE内配置安全域,用于控制对安全服务的访问,所述安全服务由安装在所述安全域内的一个或多个TA提供。许多安全或可信协议,如上述OTrP,配置为支持在TEE内创建和管理安全域,作为保护某些TA的一种方式。
软件开发公司和软件供应商创建用于在如UE 110等各种移动计算装置上使用的应用程序。设计用于在UE 110上运行的应用程序使用各种实体或在线服务102进行分发,这些实体或在线服务102位于UE 110的外部,可以通过各种私有和公共计算机网络(如互联网)从UE 110访问。
当准备分发用户应用程序或软件应用程序时,与应用程序相关联的软件和数据将组装到分发软件包中,如Android软件包(通常具有.apk文件扩展名)或iOS应用程序存档(通常具有.ipa文件扩展名)。服务提供商104使用服务提供商的私钥127基于分发包生成数字签名,并将数字签名包括在最终分发包146中。然后,分发包146被转发到应用程序存储库106,在那里它可用于分发到UE 110。这些用户应用程序设计为在UE 110的REE 112内运行,因此可以直接从应用程序存储库106下载134,并通过在UE 110的REE 112内执行的OS安装在设备上。
为了便于保护敏感信息和算法,可以将处理安全敏感操作和数据的软件应用程序的某些部分分为更小且更易保护的应用程序,本文中称为可信应用程序(trustedapplication,TA)。TA通常用于执行加密或其他重要安全操作,并且可以包括执行加密功能所需的相关机密信息或密钥材料。为了保护TA免受恶意应用程序的访问、滥用或篡改,将TA有益地安装在TEE内。
将TA 122等TA设计为在TEE 114内执行,因此需要更安全的分发过程。为了保持UE110的安全性和完整性,在UE 110的REE 114内执行的软件未被授权或允许对TEE 114的软件、数据或配置进行修改。可信软件应用程序的分发包148的准备类似于正常世界应用程序的准备,其中,软件开发商或供应商将TA的所有软件和数据组装成分发包,并且服务提供商104使用服务提供商的私钥127对分发包148进行数字签名。然后,TA的分发包148被转发到本文中称为可信服务管理器(trusted service manager,TSM)108的实体。
TSM 108是UE 110外部的服务或实体,可由UE 110通过私有或公共计算机网络访问。TSM 108可以访问机密材料,例如私有密码密钥,这些机密材料可用于向UE 110的TEE114识别TSM 108,所述TSM 108识别为被授权在TEE 114内进行修改,例如安装TA 122。被授权的TSM 108可以将TA 122下载到UE 110等移动计算装置上的TEE 114中,安装TA 122,并在移动计算装置在现场时,对TEE 114内的环境进行其他配置更改。在制造或提供UE 110时,可以将信任锚或其他密钥材料嵌入到TEE 114中,这样可以在TEE 114和TSM 108之间建立高度安全的网络连接。这些信任锚和密钥确保TEE 114的安全,并确保TEE 114和TSM 108之间通信的完整性和隐私性。仅允许授权的TSM 108修改给定的TEE 114或与给定的TEE114通信。
需要使用应用程序时,UE 110可以联系应用程序存储库106,并下载134所需的应用程序包146。一旦下载,应用程序包146可用于将软件应用程序116安装在UE 110的REE112中。软件应用程序116在本文中将被称为客户端应用程序(client application,CA)116。使用术语CA是因为CA 116充当标准客户端-服务器软件模型的客户端侧,其中,CA 116用于发送由***服务接收和处理的请求,例如由TA 122提供的加密或其他服务。
在下载所需的应用包146之后,UE 110可以优选地通过替代通信信道获得与私钥127相对应的公钥126,并使用该公钥126来验证所需的应用包146。所需的应用包146也可以称为分发包,用于分发和安装CA 116。可用于验证分发包146的公钥126称为与CA 116相关联。与CA 116相关联的公钥126在本文中被称为应用程序公钥。如本文所使用的,术语应用程序公钥是指与CA相关联的公钥,该公钥可用于验证用于分发CA的分发包。
为了满足高度敏感应用的安全需求,UE 110用于支持如上所述的多个计算环境。处理器150用于提供REE 112,所述REE 112在存储器152的一部分内执行。TEE 114运行在主处理器150的安全区域和存储器154的***分中,并用于提供与REE 112分开的隔离执行环境,同时用于保证在TEE 114内加载的数据和程序代码的完整性和机密性。存储器154和在TEE 114内执行的进程受到保护,以免受在REE 112内执行的进程修改或访问。
在安装CA 116期间或之后,在REE 112内执行的OS或其他进程可以检测到CA 116需要来自TA 122的服务。可以在将CA 116安装到UE 110上时检测对TA 122的需求,或者可选地,可以在稍后的时间内进行检测,例如,在执行CA 116时,或者在REE 112内执行扫描或其他操作期间。在检测到对TA 122的需求后,UE 110将向可信服务管理器(trustedservice manager,TSM)108发送请求安装TA 122的消息,以获得所需的TA 122。
为使TA 122可以在TEE 114内安全地传输、配置和安装,TSM 108在TSM 108和TEE114之间建立安全通信通道138。可信通信代理118包括在REE 112中,以便于建立所述安全通信信道138。在一个实施例中,安全通信信道138可以基于以上讨论的OTrP。对于OTrP,可信通信代理118是OTrP代理的实现,OTrP代理用于在TSM 108与在TEE 114内执行的OTrP TA140之间建立安全通信信道。
TA 122在TEE 114内的安装涉及由TSM 108管理或控制的多个步骤。一旦TSM 108建立安全通信信道138,TSM 108和TEE 114之间就会交换一个或多个消息,以在TEE 114内创建安全域(security domain,SD)120,在SD 120内安装TA 122,并配置与SD 120相关联的访问控制列表128。
SD 120与服务提供商104相关联,并且包括服务提供商的公钥126,该公钥126可用于识别和授权对SD 120的访问和管理。可选地,公钥126可以嵌入到公钥证书中,例如已经签署的或由可信证书颁发机构颁发的X.509证书。
TSM 108通过一个或多个消息,配置SD 120内或与SD 120关联的访问控制列表128。访问控制列表128有利地存储在TEE 114内保护的存储器154中,从而保护访问控制列表128免受例如在REE 112中执行的程序等在TEE 114外部执行的应用程序或软件进程的修改。
通过在访问控制列表128中包括例如公钥126等与CA 116相关联的识别信息,访问控制列表可以用于确定可以允许哪个CA 116访问TA 122。当CA 116请求访问特定TA 122时,根据访问控制列表128中的公钥校验来自CA 116的公钥126或其他识别信息,以确定CA116是否被授权访问所请求的TA 122。可选地,访问控制列表128可以将规则或权限与识别信息相关联,以进一步引导对TA 122的访问。
在某些实施例中,需要允许第二CA 117访问已经安装在SD 120中的TA 122。当第二CA 117与应用程序公钥129相关联时,其中,所述应用程序公钥129不同于与第一CA 116相关联的公钥,可以不允许第二CA 117访问SD 120或TA 122。允许第二CA 117访问TA 122的一种方法是创建第二SD(未示出),并使用如上所述的相同过程将TA 122的第二副本安装在第二SD中。然而,安装TA 122的第二个副本不仅浪费计算资源,还可能引入版本控制等其他软件相关问题。
所公开的实施例提供了一种改进的方案,对访问控制列表128进行更新以允许第二CA 117访问先前已安装在SD 120中的TA 122。可以通过添加应用程序公钥129或第二CA117的其他识别信息来更新访问控制列表128。
如上所述,TEE 114的任何修改都必须由TSM 108通过安全通信信道138进行。通过从UE 110向TSM 108发送消息来发起配置所述访问控制列表128,该消息请求授权第二CA117对TA 122进行访问。TSM 108与TEE 114建立安全信道138,并通过安全通信信道138发送一个或多个消息,以更新私钥129或其他识别信息或者将私钥129或其他识别信息添加到访问控制列表128中。可选地,可以在访问控制列表128中配置访问规则或权限,以便于引导对第二CA 117的访问控制决策。
图2示出了UE 200的框图,示出了用于控制CA 116、117对TA 122、228的访问的过程,该过程结合了所公开的实施例的各个方面。图2中所示的UE 200类似于图1中所示的UE110,其中相同的数字表示相同的元件。200包括第二TA 228,该第二TA 228已经由TSM 108根据上述过程安装在SD 120中。
在操作中,当在REE 112内执行的CA 116需要TA 122的服务时,CA 116生成对TA122的访问请求248。访问请求248可以是TA 122支持的服务处理的任何请求。例如,访问请求248可以是为零售购买生成数字签名的请求,或者可以是对媒体文件进行解密或对银行交易进行加密等的请求。
可信代理或守护程序(teecd)214接收访问请求248,识别CA 116,并从例如Android清单中检索250应用程序公钥或证书230。应用程序证书230唯一地识别了客户端应用程序分发包210的签名者,并包括可用于识别CA 116的公钥。在某些实施例中,证书230可以是服务提供商104的证书,并包括服务提供商公钥126。可选地,证书230可以不同于服务提供商104的证书,但仍然可以包括与服务提供商公钥126相同的公钥。
客户端证书230和关联的访问请求248安全地传输254到TEE 114。可以有利地采用任何适当的方式将访问请求248和关联的应用程序证书230从REE 112安全地传输到TEE114。例如,在一个实施例中,UE 110在REE 112内采用Android OS。在Android OS的示例中,可以将应用程序证书230复制到由OS内核管理的内存中,并通过使用共享内存空间安全地传输到TEE 114。访问请求238通过在REE 112的OS内执行的信任区驱动程序212和在TEE114内执行的REE连接代理226安全地传输252、254。本领域技术人员将容易地认识到,可以有利地采用将访问请求248连同应用程序证书230或相应的公钥安全地传输到TEE 114的任何方式,而不偏离所公开实施例的精神和范围。
访问请求248和应用程序证书230和/或公钥的验证由访问控制列表(accesscontrol list,ACL)验证点进程224在TEE 114内执行。ACL验证点进程224对照访问控制列表128校验258与访问请求248相关联的公钥,以确定是否应该允许所请求的访问。可选地,ACL验证点进程224可以包括在TA加载器280中,TA加载器280用于加载并准备TA 122以在TEE 114内执行。在一个实施例中,当访问请求248中包括的公钥存在于访问控制列表128中时,ACL验证点进程224允许对TA 122的访问。或者,ACL验证点进程224可以包括附加逻辑,以基于与访问控制列表128中的每个公钥相关联的规则或权限允许或拒绝访问。当允许访问时,将请求248传递给TA 122进行处理,由TA 122生成的任何结果均可以返回给CA 116。
在某些实施例中,可能需要在将访问请求248传递给TA 122之前加载TA 122。当加载TA 122时,TA加载器280可以校验TA安装数据282,以验证包括在TA安装数据282中的公钥与CA 116公钥126相匹配。
在某些实施例中,与不同公钥129相关联的第二CA 117也可能需要访问TA 122。如上所述,访问控制列表128可以进行更新以包括与第二CA 117相关联的公钥129。然后,ACL验证点224可以用于基于访问控制列表129中的第二公钥129允许访问。
在某些实施例中,多个TA 122、228可以安装在单个SD 120中。当SD 120包括多个TA 122、228时,可能需要允许某些CA 116同时访问TA 122、228,并限制第二CA 117仅访问第二TA 228。这些附加访问规则例如可用于确定哪个CA 116、117可以访问哪个TA 122、228。可选地,访问规则可以提供更细粒度的控制,以允许一个CA 116访问由TA 122提供的特定服务集,并允许第二客户端应用程序117访问由TA 122提供的不同服务集。
图3示出了结合所公开实施例的各方面的示例性方法300,所述方法300用于在TEE内安装TA和配置访问控制列表。在将CA安装302到移动计算装置或UE的REE内时,示例性方法300开始。在安装CA时,UE可以确定304需要TA的服务。可选地,UE可以在安装后的某个时间,例如加载和执行CA时进行确定304。
UE向TSM等外部实体发送请求308,以获取所需的TA。为了保护TEE的安全,在TEE外部执行的程序,如在REE中执行的用户应用程序或操作***服务,无权对TEE的数据、程序代码或配置进行修改。外部实体或TSM拥有私钥等机密材料,这些材料表明其有权在特定UE上安装TA并修改TEE的数据和配置。
在外部实体和TEE之间建立安全通信信道,例如上述安全通信信道138。在REE内执行的各种组件可以参与建立安全通信通道,但是这些组件都无法查看或修改通过安全通信通道的任何消息。外部实体和UE之间交换的所有消息都安全地传输到TEE 312。
UE和外部实体之间的安全通信信道可以基于任何适当类型的计算机网络,例如空中接口或基于硬件的网络。适当的空中接口的示例包括任何移动电话空中接口标准,如LTE、LTE-advanced等,或无线网络,如Wi-Fi,或任何其他可以支持计算机网络的空中接口。基于硬件的网络是任何在网络节点之间使用铜缆、光纤或其他物理连接的计算机网络方法。
在TEE内创建314安全域。安全域创建了逻辑分离或容器,用于在TEE内提供隔离空间,在该空间中,程序和数据可以受到保护,以免受安全域内未授权程序的访问或篡改。
TA安装在安全域320内并与安全域320相关联。将TA与安全域相关联,仅允许授权访问安全域的进程访问TA,从而保护TA。
在每个安全域322内创建和/或配置访问控制列表。访问控制列表由ACL验证点进程或类似进程使用,以确定是否应允许特定TA的访问请求。访问控制列表可以包括公钥列表或其他信息,该信息适于识别哪些CA被授权访问SD内的TA。可选地,访问控制列表可以包括与每个公钥相关联的附加规则或权限,以进一步引导访问决策。
在某些实施例中,需要允许第二CA访问安装在SD内的TA。这可以通过更新访问控制列表以包括与第二CA关联的公钥或其他识别信息来实现。UE可以在需要时向TSM或其他授权访问和修改TEE的外部实体发送消息。作为响应,TSM或其他外部实体可以与TEE建立安全通信通道,并更新访问控制列表以包括附加公钥或其他所需信息。
图4示出了结合所公开实施例各方面的示例性方法400的流程图,所述方法400用于允许对可信应用程序的访问。为便于理解,下面将针对基于Android OS的UE描述示例性方法400。本领域技术人员将容易地认识到,示例性方法400可以有利地用于控制在具有REE和TEE的任何UE上对TA的访问,而不偏离所公开实施例的精神和范围。
当在UE的REE内执行的CA需要来自TA的服务时,所述CA生成402访问请求,包括TA处理所请求的操作所需的任何信息。所述OS的组件等在REE中执行的进程,识别和验证404所述CA和所述访问请求。例如,通过从与CA相关联的Android清单中检索应用程序证书,获得406与CA相关联的公钥和应用程序证书(可选地)。访问请求与公钥或应用程序证书一起安全地传输410到TEE。在TEE内执行的ACL验证点进程接收访问请求以及CA的公钥,并确定CA是否被授权410访问TA。此确定可以基于访问请求中包括的公钥或其他识别信息,以及与安装了TA的SD相关联的访问控制列表。当ACL验证点确定应允许访问412-Y时,将访问请求转发414到TA,当访问被拒绝412-N时,访问请求被拒绝418。
在某些实施例中,访问控制列表包括多个公钥或识别信息。在这种情况下,当访问控制列表中的所述多个公钥中的一个对应于第二CA的公钥时,可以允许具有与SD不同公钥的第二CA访问。
可选地,SD可能安装了一个以上TA。ACL验证点可以用于基于与访问请求相关联的公钥允许对一个或多个TA的访问。
因此,尽管文中已示出、描述和指出应用于本发明的示例性实施例的本发明的基本新颖特征,但应理解,所述领域的技术人员可以在不脱离本发明的精神和范围的情况下,对装置和方法的形式和细节以及装置操作进行各种省略、取代和改变。进一步地,明确希望,以大体相同的方式执行大体相同的功能以实现相同结果的那件元件的所有组合均在本发明的范围内。此外,应认识到,结合所揭示的本发明的任何形式或实施例进行展示和/或描述的结构和/或元件可作为设计选择的通用项而并入所揭示或描述或建议的任何其他形式或实施例中。因此,本发明仅受限于随附权利要求书所述的范围。

Claims (14)

1.一种装置(110),其特征在于:包括耦合到存储器(152,154)的处理器(150),其中,所述处理器(150)和所述存储器(152,154)用于提供富执行环境(112)和可信执行环境(114),其中,所述可信执行环境(114)中的所述存储器(154)和进程(122,128,140)受到保护,以免受在所述富执行环境(112)中执行的应用程序(116,117)访问或修改,并且所述处理器(150)用于:
在所述富执行环境(112)内安装第一客户端应用程序(116),其中,所述第一客户端应用程序包括基于服务提供商私钥生成的签名;
确定所述第一客户端应用程序需要来自可信应用程序(122)的服务;
向外部实体(106)发送安装所述可信应用程序的请求;
在所述富执行环境(112)内接收一个或多个消息,其中,所述一个或多个消息包括与所述服务提供商私钥相对应的服务提供商公钥和用于安装所述可信应用程序的数据;
将所述一个或多个消息安全地传输到所述可信执行环境(114);
在所述可信执行环境(114)内配置安全域(120),其中,所述安全域(120)与所述服务提供商公钥(126)相关联;
在所述可信执行环境(114)内安装所述可信应用程序(122);
将所述可信应用程序(122)与所述安全域(120)相关联;以及
在所述安全域(120)内配置访问控制列表(128),其中,对所述可信应用程序(122)的访问由所述访问控制列表(128)控制。
2.根据权利要求1所述的装置(110),其特征在于,所述处理器(150)用于:
在所述富执行环境(112)内,生成来自所述第一客户端应用程序(116)的对所述可信应用程序(122)的访问请求;
识别所述第一客户端应用程序(116);
从安装包(146)获取与所述第一客户端应用程序对应的应用程序公钥,其中,所述安装包(146)包括所述第一客户端应用程序(116)和所述应用程序公钥;
将所述访问请求和所述应用程序公钥安全地传输到所述可信执行环境(114);
在所述可信执行环境(114)内,确定所述第一客户端应用程序(116)是否被授权访问所述可信应用程序(122),其中,所述确定基于所述应用程序公钥和所述访问控制列表(128);以及
在所述第一客户端应用程序(116)被授权的情况下,允许所述第一客户端应用程序(116)访问所述可信应用程序(128)。
3.根据前述权利要求中任一项所述的装置(110),其特征在于,所述应用程序公钥包括应用程序证书,并且所述处理器用于将所述应用程序证书安全地传输到所述可信执行环境(114)。
4.根据前述权利要求中任一项所述的装置(110),其特征在于,所述访问控制列表(128)包括多个应用程序公钥,并且所述处理器(150)用于允许基于所述多个公钥访问所述可信应用程序(122)。
5.根据权利要求2或3所述的装置(110),其特征在于,所述应用程序公钥与所述服务提供商公钥(126)相同,并且所述处理器(150)用于基于所述应用程序公钥和所述访问控制列表(128)允许或拒绝对所述可信应用程序(122)的访问。
6.根据前述权利要求中任一项所述的装置(110),其特征在于,所述安全域与多个可信应用程序(122,228)相关联,并且所述处理器用于基于访问控制列表(128)允许对所述多个关联可信应用程序(122,228)中的一个或多个的访问。
7.根据前述权利要求中任一项所述的装置(110),其特征在于,所述装置(110)是移动通信设备。
8.一种方法(300),其特征在于,包括:
在富执行环境内安装(302)客户端应用程序,其中,所述客户端应用程序包括基于服务提供商私钥生成的签名;
确定(304)所述客户端应用程序需要来自可信应用程序的服务;
向外部实体发送(308)安装所述可信应用程序的请求;
在所述富执行环境内接收(310)一个或多个消息,其中,所述一个或多个消息包括与所述服务提供商私钥相对应的服务提供商公钥和用于安装所述可信应用程序的数据;
将所述一个或多个消息安全地传输(312)到所述可信执行环境;
在所述可信执行环境内配置(314)安全域,其中,所述安全域与所述服务提供商公钥相关联;
在所述可信执行环境内安装(318)所述可信应用程序;
将所述可信应用程序与所述安全域相关联(320);以及
在所述安全域内配置(322)访问控制列表,其中,客户端应用程序对所述可信应用程序的访问由所述访问控制列表控制。
9.根据权利要求8所述的方法(300),其特征在于,所述方法(300)还包括:
在所述富执行环境内,生成(402)来自第二客户端应用程序的对所述可信应用程序的访问请求;
识别(404)所述第二客户端应用程序;
从安装包获取(406)与所述第二客户端应用程序对应的应用程序公钥,其中,所述安装包包括所述第二客户端应用程序和所述对应的应用程序公钥;
将所述访问请求和所述应用程序公钥安全地传输(408)到所述可信执行环境;
在所述可信执行环境内,确定(410)所述第二客户端应用程序是否被授权访问所述可信应用程序,其中,所述确定基于所述应用程序公钥和所述访问控制列表;以及
在所述第二客户端应用程序被授权的情况下,允许(414)所述第二客户端应用程序访问所述可信应用程序。
10.根据权利要求8或9所述的方法(300),其特征在于,所述应用程序公钥包括应用程序证书,并且所述方法包括:将所述应用程序证书安全地传输到所述可信执行环境。
11.根据权利要求8至10所述的方法(300),其特征在于,所述访问控制列表包括多个公钥,并且所述方法包括:允许基于所述多个公钥访问所述可信应用程序。
12.根据权利要求8至11所述的方法(300),其特征在于,所述应用程序公钥与所述服务提供商公钥相同,并且所述方法包括:基于所述应用程序公钥和所述访问控制列表允许或拒绝对所述可信应用程序的访问。
13.根据权利要求8至12所述的方法(300),其特征在于,所述安全域与多个可信应用程序相关联,并且所述方法包括:基于所述访问控制列表允许对所述多个关联可信应用程序中的任何一个的访问。
14.一种计算机程序产品,其特征在于,包括非瞬时性计算机程序指令,当由处理器(150)执行时,所述非瞬时性计算机程序指令用于使所述处理器(150)执行根据权利要求7至11中任一项所述的方法。
CN201980093935.XA 2019-03-13 2019-03-13 一种动态配置可信应用程序访问控制的装置和方法 Pending CN113614720A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2019/056231 WO2020182302A1 (en) 2019-03-13 2019-03-13 Apparatus and method for dynamic configuration of trusted application access control

Publications (1)

Publication Number Publication Date
CN113614720A true CN113614720A (zh) 2021-11-05

Family

ID=65767026

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980093935.XA Pending CN113614720A (zh) 2019-03-13 2019-03-13 一种动态配置可信应用程序访问控制的装置和方法

Country Status (3)

Country Link
EP (1) EP3912064A1 (zh)
CN (1) CN113614720A (zh)
WO (1) WO2020182302A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117353921A (zh) * 2023-12-06 2024-01-05 飞腾信息技术有限公司 密钥管理方法、装置、计算设备及计算机可读存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3991497B1 (en) 2019-09-19 2024-02-14 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and apparatus for uplink information transmission and user equipment
CN113014539B (zh) * 2020-11-23 2022-05-17 杭州安芯物联网安全技术有限公司 一种物联网设备安全保护***及方法
FR3118223B1 (fr) * 2020-12-17 2023-11-17 Tages Methode d’association d’un programme logiciel executable avec une plateforme informatique
CN115618327B (zh) * 2022-12-16 2023-06-13 飞腾信息技术有限公司 安全架构***、安全管理方法、计算设备及可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3179690A1 (en) * 2015-12-11 2017-06-14 Gemalto Sa Mobile device having trusted execution environment
US11126706B2 (en) * 2017-03-07 2021-09-21 Huawei Technologies Co., Ltd. Hypervisor measurement agent

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117353921A (zh) * 2023-12-06 2024-01-05 飞腾信息技术有限公司 密钥管理方法、装置、计算设备及计算机可读存储介质
CN117353921B (zh) * 2023-12-06 2024-02-13 飞腾信息技术有限公司 密钥管理方法、装置、计算设备及计算机可读存储介质

Also Published As

Publication number Publication date
WO2020182302A1 (en) 2020-09-17
EP3912064A1 (en) 2021-11-24

Similar Documents

Publication Publication Date Title
EP3382933B1 (en) Using a trusted execution environment as a trusted third party providing privacy for attestation
US11711222B1 (en) Systems and methods for providing authentication to a plurality of devices
US10341321B2 (en) System and method for policy based adaptive application capability management and device attestation
JP6262278B2 (ja) アクセス制御クライアントの記憶及び演算に関する方法及び装置
US11849029B2 (en) Method of data transfer, a method of controlling use of data and cryptographic device
JP5860815B2 (ja) コンピューターポリシーを施行するためのシステムおよび方法
EP2328107B1 (en) Identity controlled data center
KR101530809B1 (ko) 멀티-테넌트 서비스 제공자에 의한 동적 플랫폼 재구성
US20190080104A1 (en) Data access control systems and methods
CN113614720A (zh) 一种动态配置可信应用程序访问控制的装置和方法
US20090319793A1 (en) Portable device for use in establishing trust
US20060195689A1 (en) Authenticated and confidential communication between software components executing in un-trusted environments
JP2019526993A (ja) ネットワーク機能仮想化システム及び検証方法
US20140317400A1 (en) System and method for validation and enforcement of application security
US10237057B2 (en) Method and system for controlling the exchange of privacy-sensitive information
US9323911B1 (en) Verifying requests to remove applications from a device
CN112765637A (zh) 数据处理方法、密码服务装置和电子设备
US20150047001A1 (en) Application program execution device
WO2012120313A1 (en) A cryptographic system and method
Kim et al. Secure user authentication based on the trusted platform for mobile devices
EP4174695A1 (en) Method to store data persistently by a software payload
EP4175219A1 (en) Method to establish a secure channel
EP4175218A1 (en) Method to establish a secure channel
Pei et al. RFC 9397 Trusted Execution Environment Provisioning (TEEP) Architecture
CN116781359A (zh) 一种使用网络隔离和密码编译的门户安全设计方法

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