CN107533516B - 用于管理对在装置的芯片上的系统的安全模块的多次访问的设备 - Google Patents

用于管理对在装置的芯片上的系统的安全模块的多次访问的设备 Download PDF

Info

Publication number
CN107533516B
CN107533516B CN201680022512.5A CN201680022512A CN107533516B CN 107533516 B CN107533516 B CN 107533516B CN 201680022512 A CN201680022512 A CN 201680022512A CN 107533516 B CN107533516 B CN 107533516B
Authority
CN
China
Prior art keywords
secure module
data
module
chip
stream cipher
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
Application number
CN201680022512.5A
Other languages
English (en)
Other versions
CN107533516A (zh
Inventor
A.雷利米
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.)
Gemalto Corp
Original Assignee
Gemalto Corp
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 Gemalto Corp filed Critical Gemalto Corp
Publication of CN107533516A publication Critical patent/CN107533516A/zh
Application granted granted Critical
Publication of CN107533516B publication Critical patent/CN107533516B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • 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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2125Just-in-time application of countermeasures, e.g., on-the-fly decryption, just-in-time obfuscation or de-obfuscation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Landscapes

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

Abstract

设备(1)旨在管理对在装置(3)的片上系统(2)的安全模块(5)的多次访问,并且包括流密码装置(13,132),其被布置为利用种子和加密密钥,在运行中和在单程中计算将在片上系统(2)的安全模块(5)和非安全模块(4)之间传递的数据的完整性检查,并且利用加密密钥在运行中和在单程中加密/解密这些数据,以及控制装置(1,12),其为了允许经加密的/经解密的数据在安全模块(5)和非安全模块(4)之间的传递,向流密码装置(13,132)提供加密密钥和种子并且向安全模块(5)和非安全模块(4)请求数据传递并检索状态。

Description

用于管理对在装置的芯片上的系统的安全模块的多次访问的 设备
技术领域
本发明涉及可合成的安全元件(或者模块),其被包括在硬件主机中并且其用作若干图像所有者的若干虚拟安全元件,更确切地说,涉及一种管理对这样的安全元件(或者模块)的多次访问(multiple accesses)以高效地共享它们的硬件主机的方式。
背景技术
安全元件(嵌入式或可移除式)通常托管单一操作系统(或者OS),该单一操作系统(或者OS)提供对于根据来自至少一个图像所有者的要求而定制的通用和特定服务的访问。因此,例如,它可以是SIM(或UICC)卡或者智能卡或者芯片卡或者集成电路卡。
在下面的描述中,将认为图像所有者是已经从图像制造者购买图像的商业实体,图像制造者是已经构建图像的实体,并且图像是在安全元件和嵌入式装置的存储器中存储的二进制信息的结构化和经加密的表示,其中该安全元件和嵌入式装置用于解密封装数据、管理权限和检查加载的经解密的数据的完整性。
如本领域技术人员所知,在安全元件的操作系统之上,可以定义包含应用并且由OS服务支持的存储器域。
为了安全元件的OS支持图像所有者的单一图像,它只支持由(或为)这个图像所有者所定义的要求的单一集合。但是,当硬件主机的安全元件必须用作若干图像所有者的若干虚拟安全元件时,它的OS可能无法支持由(或为)这些图像所有者所定义的集合的所有要求。
发明内容
因此,本发明的目的是改善该情况,更确切地说,允许硬件主机的安全硬件环境的共享,该硬件主机包括用作若干图像所有者的若干虚拟安全元件的安全模块(或者元件)。
为了这个效果,本发明特别提供了一种设备,其旨在管理对装置的片上系统(或者System on Chip,SoC)的安全模块的多次访问,并且包括:
-流密码装置,被布置为利用种子(seed)和加密密钥在运行中(on the fly)和在单程中(in a single pass)计算将在片上系统的安全和非安全模块之间传递的数据的完整性检查,并且利用这个加密密钥在运行中和在该单程中加密/解密这些数据,以及
-控制装置,用于为了允许经加密/经解密的数据在安全模块和非安全模块之间的传递,向流密码装置提供加密密钥和种子并且向该安全和非安全模块请求数据传递并检索状态。
根据本发明的设备可以包括单独或组合考虑的附加的特征,并且特别是:
-它可以还包括第一存储器装置以及第二存储器,该第一存储器装置用于在临时经加密的数据块从流密码装置传递到片上系统的非安全模块的期间存储该临时经加密的数据块,该第二存储器用于在临时数据块从片上系统的安全模块传递到流密码装置的期间存储该临时数据块;
-它的控制装置可以被布置为向片上系统的安全模块提供经计算的完整性检查;
-它的控制装置可以被布置为向片上系统的安全模块和非安全模块提供通道信息、定义传递的数据到给定功能的路由;
-它的流密码装置可以包括第一部分以及第二部分,该第一部分被布置为在运行中和在单程中计算将从非安全模块传递到片上系统的安全模块的数据的完整性检查,并且在运行中和在该单程中解密将向安全模块传递的数据,该第二部分被布置为在运行中和在单程中计算将从安全模块传递到片上系统的非安全模块的数据的完整性检查,并且在将它们向片上系统的非安全模块传递之前在运行中和在该单程中加密这些数据;
它的控制装置可以包括第一部分以及第二部分,该第一部分被布置为为了允许经加密的数据从非安全模块向流密码装置的传递和之后数据从流加密装置向安全模块的传递,将加密密钥和种子提供给流密码装置并且向安全模块和非安全模块请求数据传递并检索状态,该第二部分被布置为为了允许数据从安全模块向流密码装置的传递和之后经加密的数据从流加密装置向非安全模块的传递,将加密密钥和种子提供给流密码装置并且向安全模块请求数据传递并检索状态。
本发明还提供了一种片上系统(或者SoC),其旨在配备装置并且包括安全模块和非安全模块,以及诸如上述的并且交互安全模块与非安全模块之间的数据传递的设备。
本发明还提供了一种装置,其包括诸如上述系统的至少一个片上系统(或者SoC)。
例如,这个装置可以定义具有对快速非易失性存储器(或Non Volatile Memory,NVM)进行快速访问的任何组件或者设备。
附图说明
本发明的其它特征和优点将在研究下文的详细的说明书和附图时变得显而易见,其中唯一的图示意性地和功能性地示出了包括片上系统的实施例的装置的示例,该片上系统包括根据本发明的设备的实施例的示例。
具体实施方式
附图可以不仅仅是用于完成本发明,如果需要的话,还可以有助于其定义。
本发明特别地致力于提供旨在配备装置3的片上系统(或者SoC)2的设备1,以便由若干图像所有者管理对此片上系统2的安全模块5的多次访问。
在下面的描述中,作为示例,将认为装置3是个人计算机。但是本发明不限于这种类型的装置。它涉及包括包含安全模块(或者单元)的至少一个片上系统(或者SoC)的任何OEM(“原始设备制造商(Original Equipment Manufacturer)”)设备,特别是智能电话、电子平板、智能手表、膝上型计算机和游戏机。
此外,在下面的描述中,作为示例,将认为片上系统2是应用处理器。但是本发明不限于这种类型的SoC。实际上,它涉及到具有对快速非易失性存储器(或NVM)快速访问的任何SoC,特别是ASIC、FPGA和微控制器。
在唯一的图中所示的示例中,装置3包括片上系统2,其包含非安全模块4、安全模块5和交互这些非安全模块4与安全模块5之间的数据传递的设备1。
非安全模块4提供至少一个功能。例如,它允许通信设备与装置3交换数据。此外,非安全模块4存储了属于不同图像所有者的并且分别与不同的要求的集合相关联的一组图像。再次申明图像是在安全元件和嵌入式装置的存储器中存储的二进制信息的结构化的和经加密的表示,其中该安全元件和嵌入式装置用于解密封装数据、管理权限和检查加载的经解密的数据的完整性。非安全模块4和安全模块5可以在不同的时钟域和电源域上操作。
在唯一的图中所示的非限制性示例中,非安全模块4和安全模块5每个特别地包括中央处理单元(或者CPU)6、存储器管理单元(或者Memory Management Unit,MMU)7、随机存取存储器(或者Random Access Memory,RAM)8、以及直接存储器存取(或者Direct MemoryAccess,DMA)元件9。安全模块5还包括基于能够由例如标准数字硅技术来合成的诸如逻辑NVM(“非易失性存储器(Non Volatile Memory)”)的技术的一次性可编程(或者One TimeProgrammable,OTP)元件10。
例如,CPU 6通过两个总线(I-总线和D-总线)的手段被耦合到MMU 7,MMU 7还通过总线的手段被耦合到RAM 8,并且RAM8还通过总线的手段被耦合到DMA 9。OTP元件10通过总线的手段被耦合到相关联的MMU 7。
每个MMU 7负责在虚拟地址中转换其相关联的RAM 8的物理地址并且检查与虚拟地址范围相关联的许可权限。例如,RAM(或者物理存储器)8在被称为页的多个逻辑区域中被分段。因此,在这种情况下,MMU 8管理被称为TLB(“转换后备缓冲器(TranslationLookaside Buffer)”)的结构的集合。
TLB是存储器管理硬件用来提高虚拟地址转换速度的高速缓存。TLB有时被实现为内容寻址存储器(Content-Addressable Memory,CAM)。CAM搜索键是虚拟地址,并且搜索结果是物理地址。如果所请求的地址存在于TLB中,则CAM搜索产生快速匹配,并且可以使用所检索的物理地址来访问存储器。这被称为TLB命中(hit)。如果请求的地址不在TLB中,则这是未命中(miss),并且会生成MMU页异常(exception)。如果之前已经加载了最近最少使用(last recently used)的物理页,则这个异常可以生成最近最少使用的物理页的备份。通过对设备1(更确切地说是下面描述的它的控制装置112、存储设备122和流密码设备132)进行编程,将这个备份加密并且从安全模块5传递到非安全模块4。非安全模块4将在非易失性存储器(例如FLASH存储器)中备份数据块。非安全模块4通过使用两个DMA9、设备1(更准确地说是下面描述的它的控制装置111,存储器装置121和流密码装置131)将经加密的物理页传递到安全模块5,然后更新所关心的TLB。
所关心的CPU6恢复MMU异常,并且继续运行它的位于先前丢失的存储器的虚拟地址的程序。如果物理页先前还没有被加载,则它的备份是无用的。然后所关心的MMU 7用作存储器保护单元(或者Memory Protection Unit,MPU),因此每个虚拟地址范围都具有它的用于检查存储器访问的许可权限。
如在唯一的图中所示的,根据本发明,设备1包括至少一个控制装置111和流密码设备131,其中j=1或2。
流密码装置13j,被布置为利用种子和加密密钥在运行中和在单程中计算将在片上系统的安全和非安全模块之间传递的数据的完整性检查,并且利用这个加密密钥在运行中和在该单程中加密/解密这些数据。
例如,可以通过使用种子和加密密钥的算法的手段在运行中计算每个完整性检查。这个算法可以是,例如GCM(Galois Counter Mode,Galois计数器模式)算法。但是很多其它的算法可以用于计算完整性检查和在单程中解密/加密数据。
控制装置11j,被布置为:为了允许在安全模块5和非安全模块4之间的经加密/经解密的数据的传递,将加密密钥和种子提供给流密码装置13j并且向安全模块5和非安全模块4请求数据传递并检索状态。
因此,控制装置的功能之一是向安全模块5或非安全模块4通知关于从非安全模块4或者安全模块5的初始化的数据传递。当这样的信息(或者通知)已经完成时,每个模块4、模块5根据由控制装置11j提供的参数(以下详细描述)适当地编程它自己的DMA元件9。两个DMA元件9的开始允许在给定的逻辑通道中的给定方向(sense)的数据传递。
由于本发明,片上系统2的安全模块5分别用作若干图像所有者的若干虚拟安全元件,因此可以由这些图像所有者共享装置3的安全硬件环境。此共享不能被认为是同时的,因为在给定时间处只能访问一个图像,因此必须进行切换从图像访问到另一图像。但是这种切换可以非常快,因此允许装置3支持图像的使用的准同时性。
流密码装置13j和控制装置11j优选地由(多个)电子电路(或者(多个)硬件模块)和软件模块的组合构成。因此,如唯一的图的非限制性示例所示,它们中的每一个优选地被分成由索引j(j=1或2)引用的两个部分,为了缓解它们的硬件集成到片上系统2中。在这种情况下,每个部分(j)专用于在单一方向中的数据传递(这里,第一部分(j=1)专用于从非安全模块4到安全模块5的数据传递,而第二部分(j=2)专用于从安全模块5到非安全模块4的数据传递)。但在实施例的变形中,流密码装置13j和控制装置11j中的每一个可以是负责在非安全模块4和安全模块5之间在两个方向上的所有数据传递的单一模块。
因此,在所示出的实施例的示例中,流密码装置13j的第一部分131,被布置为在运行中和在单程中计算将从非安全模块4传递到安全模块5的数据的完整性检查,并且在运行中和在该单程中解密将被传递到安全模块5的经加密的数据(并且它从非安全模块4中接收)。此流加密装置13j的第一部分131被耦合到安全模块5的DMA 9。流密码装置13j的第二部分132,被布置为在运行中和在单程中计算将从安全模块5传递到非安全模块4的数据的完整性检查,并且在将数据传递到非安全模块之前,在运行中和在该单程中解密将从安全模块5中接收的该数据。流加密装置13j的第二部分132还被耦合到安全模块5的DMA 9。
以相同的方式,控制装置11j的第一部分111被布置为:为了允许经加密的数据从非安全模块4到流密码装置13j(更准确地说是它的第一部分131)的传递和之后的经解密的数据从流密码装置13j(更准确地说是它的第一部分131)到安全模块5的传递,向流密码装置13j(更准确地说是它的第一部分131)提供加密密钥和种子并且向非安全模块4请求数据传递并检索状态。此控制装置11j的第一部分111被耦合到非安全模块4和安全模块5的MMU 7和CPU 6,以及被耦合到流密码装置13j的第一部分131。控制装置11j的第二部分112被布置为:为了允许数据从安全模块5到流密码装置13j(更准确地说是它的第二部分132)的传递和之后的经加密的数据从流密码装置13j(更准确地说是它的第二部分132)到非安全模块4的传递,向流密码装置13j(更准确地说是它的第二部分132)提供加密密钥和种子并且向安全模块5请求数据传递并检索状态。此控制装置11j的第二部分132被耦合到非安全模块4和安全模块5的MMU 7和CPU 6,以及被耦合到流密码装置13j的第二部分132
优选地,控制装置11j(的每个部分)被布置为在安全模块侧上暴露检索经解密的数据的经计算的完整性检查的能力。因此,控制装置11j(的每个部分)优选地被布置为将经计算的完整性检查提供给安全模块5。此经计算的完整性检查可以自动地与在传递的数据块末尾附加的经解密的完整性检查进行比较。完整性检查错误可以在安全模块5中的CPU 6生成异常。
还优选地,控制装置11j(的每个部分)被布置为向安全模块5和非安全模块4提供通道信息、定义传递的数据到给定功能的路由。
例如,控制装置11j的第一部分111可以被布置为通过包括以下参数的请求的手段来请求数据传递:执行数据突发的分段和重新组合的链接位(chaining bit)信息、执行数据分组到给定功能的路由的通道信息、要传递的数据的长度、用于加密/解密的加密密钥、用于计算要传递的数据的完整性检查的种子、以及用于启用加密/解密的命令。
还例如,控制装置11j的第一部分111可以被布置为通过发送包括以下参数的请求来读取状态:通知关于从非安全模块4的传递结束的确认的位、通知关于从安全模块5的传递结束的确认的位、执行数据突发的分段和重新组合的链接位信息、执行数据分组到给定功能的路由的通道信息、要传递的数据的长度、以及由流密码装置13j的第一部分131计算的完整性检查。以上描述允许诸如在ETSI标准TS102.622中定义的HCP的基本原理的支持。
以相同的方式,控制装置11j的第二部分112可以被布置为通过包括以下参数的请求的手段来请求数据传递:执行数据突发的分段和重新组合的链接位信息、执行数据分组到给定功能的路由的通道信息、以及要传递的数据的长度。
还例如,控制装置11j的第二部分112可以被布置为通过发送包括以下参数的请求来读取状态:通知关于从安全模块5的传递结束的确认的位、执行数据突发的分段和重新组合的链接位信息、执行数据分组到给定功能的路由的通道信息、以及要传递的数据的长度。
为了缓解数据传递,如在唯一的图中的非限制性示例示出的,设备1还可以包括第一存储器装置121和第二存储器装置122。第一存储器装置121被布置为在临时经加密的数据块从流密码装置13j(更准确的说是从其第一部分131)传递到非安全模块4的期间存储该临时经加密的数据块。被耦合到非安全模块4的DMA 9并且被耦合到控制装置11j的第一部分111的第一存储器装置121优选地是FIFO(“先进先出(First In First Out)”)类型。第二存储器装置122被布置为临时数据块从安全模块5传递到流密码装置13j(更准确的说是从其第二部分132)期间存储该临时数据块。被耦合到非安全模块4的DMA 9并且被耦合到控制装置11j的第二部分112的第二存储器装置122优选地也是FIFO类型。
当更新控制装置11j(的一部分)时,它产生通知所关心的CPU 6的中断信号。
重要的是要注意,安全模块5的每个初始引导基于它的OTP元件10的存储器内容,更准确地说是基于安全模块5的主引导加载器(或者Primary Boot Loader,PBL)。在芯片2系统的制造期间,OTP元件10被部分地编程,使得安全模块5能够计算ECC(“纠错码(ErrorCorrecting Code)”)键对(即私钥和公钥)。私钥被自编程到OTP元件10的存储器中,并且为了ECC签名,将公钥传递到托管(host)HSM(“硬件安全模块(Hardware Secure Module)”)的测试设备。ECC证书被返回到安全模块5并且被编程到它的OTP元件10的存储器中。
为了加载给定的所请求的图像(在所存储的属于不同图像所有者的一组图像当中选择),PBL检查OTP元件10的成功密封,然后等待从非安全模块4输送命令的数据传递。当PBL接收到该命令时,它从非安全模块4加载最后一个图像目录,查找与所请求的图像相关的第一物理页以加载第一物理页,然后在其虚拟起始地址开始它的运行。
非安全模块4可以被布置为生成两个管理命令:“停止”,以使得安全模块5适当地停止,并且将所有加载到经加密的数据块的物理页备份到由非安全模块4管理的NVM存储器,和“开始”,要求安全模块5加载/初始化给定的图像。
由于这个开始命令,非安全模块4可以要求由安全模块5加载给定的图像。因此,例如,移动电话可以从用于执行GSM认证的网络访问中接收命令,然后非安全模块4将停止正在进行的图像并且加载与请求该访问的GSM订阅相关的图像,然后发生NFC(“近场通信(Near Field Communication)”)业务,最后GSM图像是备份,并且加载NFC银行(banking)图像以供运行。
本发明提供了若干优点,特别是:
-它允许硬件主机支持若干图像所有者的要求的若干集合,
-它允许共享相同的硬件主机而不导致图像所有者之间的干扰,
-它允许支持图像所有者独立的认证过程而不考虑所需的安全级别,
-它允许硬件主机在它的物质资源(特别是由非安全模块管理的NVM存储器大小)的限制内支持任何数量的图像,
-它允许硬件主机上从图像切换到另一图像的低延迟,
-它允许硬件主机在它的切换延迟的限制内支持使用图像的准同时性,
-它允许硬件主机在它的物质资源的限制内支持任何大小的图像。
本发明不限于上述的设备、片上系统和装置的实施例,仅作为示例,但是它包括在下文权利要求的范围内由本领域技术人员可以考虑的所有替代实施例。

Claims (8)

1.一种用于管理对在装置(3)的片上系统(2)的安全模块(5)的多次访问的设备(1),所述安全模块(5)分别用作对于多个图像所有者的多个虚拟安全元件,其中,所述设备包括:
a)流密码装置(13j),其被布置为:利用种子和加密密钥在运行中和在单程中计算将在所述片上系统(2)的所述安全模块(5)和非安全模块(4)之间传递的数据的完整性检查,并且利用所述加密密钥在运行中和在所述单程中加密/解密所述数据,所述非安全模块(4)存储属于所述多个图像所有者并且分别与多个要求的集合相关联的一组图像,以及
b)控制装置(11j),其用于为了允许经加密的/经解密的数据在所述安全模块(5)和非安全模块(4)之间的传递,向所述流密码装置(13j)提供所述加密密钥和所述种子并且向所述安全模块(5)和非安全模块(4)请求数据传递并检索状态。
2.如权利要求1所述的设备,其特征在于它进一步包括:第一存储器装置(121)以及第二存储器装置(122),所述第一存储器装置(121)用于在临时的经加密的数据块从所述流密码装置(13j)传递到所述片上系统(2)的所述非安全模块(4)的期间存储该临时的经加密的数据块,所述第二存储器装置(122)用于在临时数据块从所述片上系统(2)的安全模块(5)传递到所述流密码装置(13j)的期间存储该临时数据块。
3.如权利要求1和2中的一项所述的设备,其特征在于所述控制装置(11j)被布置为向所述片上系统(2)的所述安全模块(5)提供经计算的完整性检查。
4.如权利要求1和2中的一项所述的设备,其特征在于所述控制装置(11j)被布置为向所述片上系统(2)的所述安全模块(5)和非安全模块(4)提供通道信息、定义所传递的数据到给定功能的路由。
5.如权利要求1和2中的一项所述的设备,其特征在于所述流密码装置(13j)包括第一部分(131)以及第二部分(132),所述第一部分(131)被布置为在运行中计算将从所述非安全模块(4)传递到所述片上系统(2)的所述安全模块(5)的数据的完整性检查,并且在运行中和在所述单程中解密将要向所述安全模块(5)传递的经加密的数据,所述第二部分(132)被布置为在运行中和在单程中计算将从所述安全模块(5)传递到所述片上系统(2)的所述非安全模块(4)的数据的完整性检查,并且在将数据传递到所述片上系统(2)的非安全模块(4)之前在运行中和在所述单程中加密所述数据。
6.如权利要求1和2中的一项所述的设备,其特征在于所述控制装置(11j)包括第一部分(111)以及第二部分(112),所述第一部分(111)被布置为为了允许经加密的数据从所述非安全模块(4)到所述流密码装置(13j)的传递和之后经解密的数据从所述流密码装置(13j)到所述安全模块(5)的传递,向所述流密码装置(13j)提供所述加密密钥和所述种子并且向所述非安全模块(4)请求数据传递并检索状态,所述第二部分(112)被布置为为了允许数据从所述安全模块(5)到所述流密码装置(13j)的传递和之后经加密的数据从所述流密码装置(13j)到所述非安全模块(4)的传递,向所述流密码装置(13j)提供所述加密密钥和所述种子并且向所述安全模块(5)请求数据传递并检索状态。
7.一种用于装置(3)的片上系统(2),其特征在于其包括安全模块(5)和非安全模块(4)、以及根据权利要求1-6中的任 一项并且 交互所述安全模块(5)与非安全模块(4)之间的数据传递的设备(1)。
8.一种电子装置,其特征在于,所述电子装置包括至少一个根据权利要求7所述的片上系统(2)。
CN201680022512.5A 2015-04-17 2016-04-13 用于管理对在装置的芯片上的系统的安全模块的多次访问的设备 Active CN107533516B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15305586.8 2015-04-17
EP15305586.8A EP3082290A1 (en) 2015-04-17 2015-04-17 Device for managing multiple accesses to a secure module of a system on chip of an apparatus
PCT/EP2016/058076 WO2016166134A1 (en) 2015-04-17 2016-04-13 Device for managing multiple accesses to a secure module of a system on chip of an apparatus

Publications (2)

Publication Number Publication Date
CN107533516A CN107533516A (zh) 2018-01-02
CN107533516B true CN107533516B (zh) 2021-07-13

Family

ID=53052774

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680022512.5A Active CN107533516B (zh) 2015-04-17 2016-04-13 用于管理对在装置的芯片上的系统的安全模块的多次访问的设备

Country Status (5)

Country Link
US (1) US10693842B2 (zh)
EP (2) EP3082290A1 (zh)
KR (1) KR102421318B1 (zh)
CN (1) CN107533516B (zh)
WO (1) WO2016166134A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10298553B2 (en) 2017-03-31 2019-05-21 Sprint Communications Company L.P. Hardware trusted data communications over system-on-chip (SOC) architectures
CN107256363B (zh) * 2017-06-13 2020-03-06 杭州华澜微电子股份有限公司 一种由加解密模块阵列组成的高速加解密装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553349A (zh) * 2003-05-29 2004-12-08 联想(北京)有限公司 一种安全芯片及基于该芯片的信息安全处理设备和方法
CN102648471A (zh) * 2008-11-24 2012-08-22 塞尔蒂卡姆公司 用于基于硬件的安全的系统和方法
CN102819706A (zh) * 2012-07-26 2012-12-12 重庆大学 在现有嵌入式设备上实现可信嵌入式系统的装置和方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6857076B1 (en) * 1999-03-26 2005-02-15 Micron Technology, Inc. Data security for digital data storage
CN1524362A (zh) * 2001-07-06 2004-08-25 �ʼҷ����ֵ������޹�˾ 加密帧的下一个包中的流加密信息冗余
JP4288893B2 (ja) * 2001-09-26 2009-07-01 ソニー株式会社 情報処理装置、プログラムロード方法、記録媒体、プログラム更新方法及び回路素子
US7827223B2 (en) * 2004-04-22 2010-11-02 Fortress Gb Ltd. Accelerated throughput synchronized word stream cipher, message authenticator and zero-knowledge output random number generator
US7697688B1 (en) * 2004-10-27 2010-04-13 Marvell International Ltd. Pipelined packet encapsulation and decapsulation for temporal key integrity protocol employing arcfour algorithm
US20060126841A1 (en) * 2004-12-14 2006-06-15 Tata Consultancy Services Ltd. Method and apparatus for a security system for wireless networks
EP1811415A1 (en) * 2005-12-23 2007-07-25 Nagracard S.A. Secure system-on-chip
US8127130B2 (en) * 2006-04-18 2012-02-28 Advanced Communication Concepts, Inc. Method and system for securing data utilizing reconfigurable logic
US20080120676A1 (en) * 2006-11-22 2008-05-22 Horizon Semiconductors Ltd. Integrated circuit, an encoder/decoder architecture, and a method for processing a media stream
US8392726B2 (en) * 2006-12-20 2013-03-05 Stmicroelectronics S.A. Protection of memory areas
US8332931B1 (en) * 2008-09-04 2012-12-11 Marvell International Ltd. Processing commands according to authorization
US20100299517A1 (en) * 2009-05-22 2010-11-25 Nuvon, Inc. Network System with a Plurality of Networked Devices with Various Connection Protocols
GB2501847A (en) * 2011-01-18 2013-11-06 Fortress Gb Ltd System and method for computerized negotiations based on coded integrity
US8718278B2 (en) * 2011-01-20 2014-05-06 International Business Machines Corporation Method and system for encryption of a datastream
KR20130048508A (ko) * 2011-11-02 2013-05-10 에스케이플래닛 주식회사 단말기의 루트 키 생성 시스템 및 방법과 장치, 그리고 이를 지원하는 단말기
KR101502652B1 (ko) * 2011-11-16 2015-03-17 경희대학교 산학협력단 무선 단말기와 유선 단말기 사이의 비밀키 교환 방법
US9250945B2 (en) * 2012-03-27 2016-02-02 Microsoft Technology Licensing, Llc Detecting a repeating execution time sequence in a virtual machine
US9379887B2 (en) * 2012-09-14 2016-06-28 Qualcomm Incorporated Efficient cryptographic key stream generation using optimized S-box configurations
US10103876B2 (en) * 2012-10-17 2018-10-16 Synopsys, Inc. System and method for multichannel cryptographic processing
KR101954733B1 (ko) * 2012-10-26 2019-03-06 삼성전자주식회사 보안 콘텐츠를 처리하는 시스템 온 칩 및 그것을 포함하는 모바일 장치
US9455962B2 (en) * 2013-09-22 2016-09-27 Winbond Electronics Corporation Protecting memory interface
IL231550A0 (en) * 2014-03-17 2014-08-31 Nuvoton Technology Corp Saving secure information in external memory
US9419952B2 (en) * 2014-06-05 2016-08-16 Stmicroelectronics (Grenoble 2) Sas Memory encryption method compatible with a memory interleaved system and corresponding system
WO2016096000A1 (en) * 2014-12-17 2016-06-23 Telefonaktiebolaget Lm Ericsson (Publ) Stream ciphering technique

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553349A (zh) * 2003-05-29 2004-12-08 联想(北京)有限公司 一种安全芯片及基于该芯片的信息安全处理设备和方法
CN102648471A (zh) * 2008-11-24 2012-08-22 塞尔蒂卡姆公司 用于基于硬件的安全的系统和方法
CN102819706A (zh) * 2012-07-26 2012-12-12 重庆大学 在现有嵌入式设备上实现可信嵌入式系统的装置和方法

Also Published As

Publication number Publication date
CN107533516A (zh) 2018-01-02
WO2016166134A1 (en) 2016-10-20
EP3082290A1 (en) 2016-10-19
KR102421318B1 (ko) 2022-07-14
KR20170138412A (ko) 2017-12-15
EP3284207A1 (en) 2018-02-21
US20180097781A1 (en) 2018-04-05
EP3284207B1 (en) 2019-06-05
US10693842B2 (en) 2020-06-23

Similar Documents

Publication Publication Date Title
US11088846B2 (en) Key rotating trees with split counters for efficient hardware replay protection
US20200349265A1 (en) Technologies for trusted i/o with a channel identifier filter and processor-based cryptographic engine
KR101880075B1 (ko) 중복 제거 기반 데이터 보안
CN107851163B (zh) 用于i/o数据的完整性、防重放和真实性保证的技术
CN107408081B (zh) 提供对存储器的加强重放保护
CN107430670B (zh) 用于存储器保护的柔性计数器系统
US9607177B2 (en) Method for securing content in dynamically allocated memory using different domain-specific keys
EP3320478B1 (en) Secure handling of memory caches and cached software module identities for a method to isolate software modules by means of controlled encryption key management
CN107451072B (zh) 具有即时加密器的计算系统及其操作方法
US20220197825A1 (en) System, method and apparatus for total storage encryption
US10303621B1 (en) Data protection through address modification
EP2947594A2 (en) Protecting critical data structures in an embedded hypervisor system
US11126566B2 (en) Method and apparatus for sharing security metadata memory space
US20180260151A1 (en) Data Storage Device and Operating Method Therefor
CN111566650A (zh) 管理加密系统中的密码术密钥集合
US11494523B2 (en) Direct memory access mechanism
CN107533516B (zh) 用于管理对在装置的芯片上的系统的安全模块的多次访问的设备
KR102588733B1 (ko) 온-더-플라이 인크립터를 갖는 집적회로, 그것을 포함하는 컴퓨팅 시스템 및 그것의 동작 방법
EP3292504B1 (en) Secure element with shared memories, for a multi-image owner device
KR102365263B1 (ko) 하드웨어 기반의 gpu 메모리 보호를 위한 효율적인 암호화 방법 및 장치
US20180307626A1 (en) Hardware-assisted memory encryption circuit

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