CN1647443A - 初始化、维护、更新和恢复利用数据访问控制功能的集成系统中的安全操作 - Google Patents
初始化、维护、更新和恢复利用数据访问控制功能的集成系统中的安全操作 Download PDFInfo
- Publication number
- CN1647443A CN1647443A CNA038084309A CN03808430A CN1647443A CN 1647443 A CN1647443 A CN 1647443A CN A038084309 A CNA038084309 A CN A038084309A CN 03808430 A CN03808430 A CN 03808430A CN 1647443 A CN1647443 A CN 1647443A
- Authority
- CN
- China
- Prior art keywords
- integrated system
- software
- level
- data
- key
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- 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
- G06F21/575—Secure boot
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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/21—Indexing 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/2149—Restricted operating environment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了用于初始化、维护、更新和恢复集成系统(200)内安全操作的技术。所述技术,其利用了所述集成系统(200)内的数据访问控制功能(240),包括在集成系统内由当前级别的软件验证下一个级别的软件。所述验证发生于将控制传递给所述下一个级别的软件之前。进而,可以通过所述数据访问控制功能(240)有选择地限制所述下一个级别的软件修改所述集成系统的运行特性的能力。还提供了用于初始化所述集成系统(200)的安全操作、将使用第一密钥集加密的数据移植到使用第二密钥集加密的数据、更新所述集成系统(200)内的软件和密钥以及在触发器事件之后恢复集成系统(200)功能的技术。
Description
交叉引用
本申请包含涉及下列申请的主题的主题,每个下列申请都被受让给与本申请相同的受让人并于本申请的同日提交。每个以下列出的申请的全文都在此引入作为参考:
“Control Function Employing a Requesting Master ID and a DataAddress to Qualify Data Access Within an Integrated System”,Evans等人,美国申请号10/125,803,提交于2002年4月18日。
“Control Function with Multiple Security States for FacilitatingSecure Operation of an Integrated System”,Foster等人,美国申请号10/125,115,提交于2002年4月18日。
“Control Function Implementing Selective Transparent DataAuthentication Within an Integrated System”,Foster等人,美国申请号10/125,708,提交于2002年4月18日。
技术领域
本发明总体上涉及数据请求处理和在集成系统中传输数据,具体地说,涉及至少部分地通过集成系统的数据访问控制功能实现的用于初始化、维护、更新和恢复该集成系统的安全操作的技术。
背景技术
现在,将多个主设备(master)功能集成到单个系统芯片上是很普通的。当最初确定将多个分离组件集成到单个芯片上的体系结构时,对外部设备的访问是一个问题。例如,MPEG视频解码器系统经常采用各种数据区域的外部存储器,或采用诸如帧缓冲器之类的缓冲器。此外部存储器通常或者使用DRAM技术或者使用SDRAM技术来实现。
在本领域中,通常有两种方法用于访问芯片外设备。在第一种方法中,每个片上功能单元通过该特定单元专用的数据总线来访问所需的(多个)外部设备。尽管对于局部来说,对外部设备的访问是高效的,但在集成系统内总体上而言,该方法并非最佳。例如,虽然每个功能将具有对其自己的外部存储器区域的完全访问,但在集成系统的诸功能之间没有共享的访问。因此,经常需要将数据从系统的一个存储器区域传输到另一个存储器区域。这显著增加了数据传输并降低了整个系统的性能,即,与共享的存储器系统相比。
另一种方法是在集成系统中采用单个公共总线,其允许系统的一个或多个功能单元通过单个端口与外部设备通信。尽管允许共享设备,但此方法的一个难点涉及控制对集成系统中的内容或其他敏感数据的访问。例如,当在一个集成设计中使用大容量公共存储器池时,防止对受保护存储器空间(诸如由传输多路分配器提供给机顶盒解码器的压缩数据)的未经授权的访问变得很困难。对于编程接口是开放的并鼓励外部开发的系统来说尤其如此。每个功能主设备都应该能够访问存储器空间,区分访问是来自一个可信主设备还是来自一个外部请求(例如,来自不可信或开放主设备)是不可能的。
此外,当与具有多个使用共享存储器的功能主设备的片上系统一起工作时,期望提供一种机构,用于保护数据免于未经授权的访问,尤其是当所述数据包含设备的系统编程代码时。具体地说,帮助初始化一个安全操作环境开始于确保系统代码是安全的和执行预定的功能。因此,为了确保一个安全的运行环境,应当以一种安全的方式激活或引导所述集成系统。
在此基础上,在本领域中存在对集成系统的增强的数据访问控制方法的各种需要。具体地说,存在对用于初始化、维护、更新和恢复集成系统的安全操作的技术的需要。
发明内容
通过提供一种用于帮助具有多个级别软件的集成设备的安全操作的方法,克服了现有技术的缺点并提供了其他优点。所述方法包括:在将集成系统的控制传递给下一个级别的软件之前,由当前级别的软件来验证多个级别的软件的所述下一个级别的软件;以及限制所述下一个级别的软件修改所述集成系统的运行特性的能力,其中所述限制是通过所述集成系统的数据访问控制功能实现的。
在另一方面,提供了一种初始化集成系统的安全操作的方法。所述方法包括:为所述集成系统生成至少一个密钥;将初始代码加载到所述集成系统中,所述加载包括通过所述集成系统的数据访问控制功能使用所述至少一个密钥来加密所述初始代码;以及使用所述加密后的初始代码重新初始化所述集成系统。
在再一方面,提供了一种用于将使用第一密钥集加密的数据移植为使用第二密钥集加密的数据的方法。所述方法包括:解密使用所述第一密钥集加密的数据;以及通过所述集成系统中的数据访问控制功能使用第二密钥集来重新加密所述数据。有利地,通过使用所述数据访问控制功能来重新加密,所述数据的加密对于所述集成系统是唯一的。
在还一方面,提供了一种在触发器事件后恢复集成系统功能的方法。所述方法包括在篡改检测触发器事件后在所述集成系统中自动地建立降低级别的功能;以及允许通过用户有选择地采用可信恢复过程来完全恢复所述集成系统的功能。
本文中还公开了相应于以上概述方法的系统和计算机程序产品。
有利地,本文中公开的安全操作技术可以用于初始化、维护、更新和/或恢复集成系统中的安全操作环境。具体地说,所提供的技术提供了将更新限制为由数据访问控制功能维护的运行特性的能力。所述运行特性可以包括所述集成系统中不同级别软件所采用的一个或多个密钥集、访问表、访问级别以及访问参数。此限制更新的能力为不同级别的软件提供了分级的安全权限。
本文中提供的技术还提供了以安全方式(包括使用版本号来防止重放较早版本的软件或其他数据)在现场进行更新的能力。作为密钥管理过程的一部分,还提供了将加密的数据从第一密钥集移植到第二密钥集的能力,和/或从其它系统导入受保护的数据的能力。进而,描述了提供功能的能力,尽管所述集成系统已进入篡改触发的状态。具体地说,可以自动地提供不能访问机密数据和应用的受限功能,以及具有受限的服务设施依赖性用于恢复完整功能的机构。
通过本发明的技术可以实现其他特点和优点。本发明的其他实施例和方面在本文中进行了详细说明,它们被看作所要求的发明的一部分。
附图说明
在说明书结尾处的权利要求书中特别地指出并清楚地要求了作为本发明的主题。从以下结合附图的详细说明,本发明的上述和其他目的、特点和优点是显而易见的,这些附图是:
图1示出了通过存储器子系统采用公共存储器访问的典型集成设备的一个实例;
图2示出了根据本发明的一个方面在集成设备的安全存储器子系统中实现的访问控制功能的一个实施例;
图3示出了根据本发明的一个方面由本文中说明的安全操作技术识别和解决的一个问题;
图4示出了根据本发明的一个方面用于帮助具有多个级别的软件的集成设备的安全操作的技术的一个实施例;
图5示出了根据本发明的一个方面将图4的技术应用于与集成系统的数据访问控制功能关联的访问表的过程的一个实施例;
图6示出了根据本发明的一个方面用于将代码加载到集成系统中的过程的一个实施例;
图7A示出了根据本发明的一个方面用于初始地将加密的引导代码存储在集成系统中的过程的一个实例;
图7B示出了根据本发明的一个方面用于将图7A的所述过程存储的所述加密的代码从易失性存储器复制到非易失性存储器的过程的一个实例;
图8示出了根据本发明的一个方面用于验证软件级别并在诸级别的软件之间传递控制以及用于当引导代码更新可用时更新引导代码的过程的一个实施例;
图9示出了根据本发明的一个方面的初始化信号在访问控制功能处于安全状态的集成系统的诸组件之间传递的一个实施例;
图10示出了根据本发明的一个方面用于在具有多个级别的软件的集成系统中安全地更新某一级别的软件的过程的一个实施例;
图11示出了根据本发明的一个方面用于管理和更新由集成系统的数据访问控制功能采用的密钥集的过程的一个实施例;
图12A示出了根据本发明的一个方面用于接收加密的数据以便存储在集成系统中的过程的一个实施例;
图12B示出了根据本发明的一个方面用于检索出图12A的所述存储的加密数据并使用安全代码在软件中解密该数据的过程的一个实施例;
图12C示出了根据本发明的一个方面用于使用访问控制硬件重新加密所述解密的数据以便存储在安全存储器中的过程的一个实施例;以及
图13示出了根据本发明的一个方面用于在所述集成系统的计算环境中发生篡改触发器事件后恢复集成电路功能的过程的一个实施例。
具体实施方式
图1示出了具有多个内部功能主设备1101、1102、1103...110n的常规集成设备(总体表示为100)。主设备1101显示为处理器,其具有处理器核心112和存储器管理单元114。在本实例中,内部主设备1101、1102、1103...110n连接到存储器子系统120,其包括共享总线的总线控制逻辑130。本领域的技术人员将理解,虽然显示在存储器子系统内,总线控制130也可以位于子系统120之外。
总线控制单元130协调和合并所述集成设备中对从设备的请求。例如,第一从设备可以包括外部总线控制器140,该外部总线控制器140连接到诸如闪存的外部非易失性存储器150,该存储器150具有开放存储器部分155。第二从设备(存储器控制器160)连接到诸如SDRAM或DRAM的外部易失性存储器170。存储器170包括开放存储器部分175。总之,在此集成设计中,诸功能共享一个公共存储器池以便最小化存储器成本和有助于数据在诸功能之间传输。因此,所有内部主设备都具有对非易失性和易失性存储器两者的相同访问,并且存储空间都标记为开放,意味着对数据访问没有限制。
通常,非易失性存储器用于永久性存储,即使电源被移除,数据仍应保留。该存储器可以包含引导代码、操作代码(诸如操作系统和驱动程序)以及任何永久性数据结构。易失性存储器用于面向会话的存储,通常包含应用数据以及其他主设备的数据结构。由于易失性存储器速度比非易失性存储器快,当集成设备工作时,通常将操作代码移至易失性存储器并在其中执行指令。
注意在诸如图1提供的典型系统中,存在若干安全性风险,即,
1.通过修改所述操作代码或数据结构可以控制处理器的行为,并且可以危及内部数据或运行。
2.在某些情况下,诸如通信控制器等的外部主设备可由外部源控制,并且因为存储器是共享的,该外部主设备可以被用于危害内部代码或数据。
3.可以使用在软件开发中使用的调试和开发工具来修改或监视处理器的行为。
4.因为存储器是共享的,一个给定主设备可能不经意地损害或危及另一个内部主设备的运行。
此处提供的对上述安全性风险的解决方案包括提供布置在所述总线控制和所述从设备之间的数据路径内的访问控制功能。该访问控制功能可以使用(在一个实施例中)将功能主设备连接到从设备的内部总线的特性以允许根据一组安全控制信息来进一步评定每个访问请求,并且如果希望,可以阻止所述访问请求。有利地,该访问控制功能提供了这样的能力,即区分主设备通过其正在作出数据请求的访问以及该数据存储在何处,然后相应地或者许可或者限制访问,或以其他方式评定该访问。根据本发明的其他方面,此处还说明了其他访问控制功能。
图2示出了根据本发明的一个方面的包括访问控制功能240的系统(总的表示为200)的一个实施例。系统200也包括多个功能主设备2101...210n,其经由总线控制230与一个或多个从设备250&270通信。在此情况下,访问控制功能240居于总线控制230与从设备250&270当中的数据路径中间。作为一替代实施例,总线控制单元230可以位于安全存储器子系统单元之外。如图所示,第一从设备包括外部总线控制器250,第二从设备包括存储器控制器270。在此环境下,所述总线控制单元、访问控制单元以及外部控制器的组合形成了安全存储器子系统220。结果,限定为非易失性存储器260和易失性存储器280的外部地址空间分别可以进一步分隔成开放区域262和安全区域264,以及开放区域282和安全区域284。在此情况下,“安全”意味着主设备2101...210n只能访问在访问控制单元240中限定的空间。注意所述访问控制功能控制所有对开放和安全区域两者的访问。
在以上引入的标题为“Control Function Employing A Request MasterID And A Data Address To Qualify Data Access Within An IntegratedSystem”(采用请求主设备ID和数据地址来评定集成系统中数据访问的控制功能)的申请中包含了对单元240的访问控制功能的详细说明。进而,以上引入的申请详细说明了根据请求数据的功能主设备的访问级别和所请求数据的地址来评定对数据的请求时访问表248和加密/解密功能249的使用。
简言之,来自被所述总线控制单元许可控制的主设备的请求与所请求的地址和关联的控制(例如,读出或写入等)一起被发送到访问控制单元。所述访问控制功能使用所述访问表将所请求的地址、主设备id以及读出或写入指示符与该主设备的允许访问能力的定义进行比较。该给定请求可以被阻止(终止)、允许(未加密)或者允许(使用加密/解密)。如果所请求的传输是允许的,则将总线信号传送给诸从设备,并将基于所述访问表的与所述请求关联的访问参数发送给加密/解密引擎,即,如果加密/解密可以应用。使用所述关联的访问参数,该加密/解密引擎可以用于在将数据传输到给定从设备时加密写入的数据,或在数据从给定从设备返回时解密读出的数据。
除了根据请求主设备id和请求的地址来评定数据访问的功能以外,在以上引入的标题为“Control Function With Multiple Security States ForFacilitating Secure Operation Of An Integrated System”(具有多个安全装态用于帮助集成系统安全操作的控制功能)的申请中说明了将安全性状态机242添加到所述访问控制功能以例如控制所述访问表248和加密/解密功能249的操作的概念。还将片上存储装置243与所述安全性状态机242结合使用以保持替代引导地址245和主设备密钥集246。该存储装置是永久性的,因为即使总电源被移除,值仍将保留。结果是,一旦已初始化,从会话到会话都可以使用这些值,直到随着安全状态的改变被明确地复位或擦除,如以下说明的那样。
所述数据访问功能的安全性状态机可以是多个可能的安全状态(包括空状态和安全的状态)中的一个状态。在安全的状态中,控制功能将与引导代码请求关联的标准引导代码地址替换为替代引导代码地址。该替代引导代码地址寻址加密版本的引导代码,然后由所述控制功能采用保存在永久性存储装置中的主设备密钥集解密该加密版本的引导代码。当处于空状态时,该主设备密钥集被擦除。
作为上述数据访问功能的进一步增强,在以上引入的标题为“ControlFunction Implementing Selective Transparent Data Authentication WithinAn Integrated System”(在集成系统内实现选择性的透明数据验证的控制功能)的申请中说明了添加控制能力以有选择地验证所请求的数据的概念。此选择性验证对发起数据请求的集成设备的功能主设备来说可以是透明的。被请求的数据可以包括以加密形式存储在外部存储器中的代码或者数据。(注意“数据”在本文中(包括权利要求书)通常用于指代码或数据。)在上述数据访问控制功能的加密能力防止了直接观察或修改数据的同时,完整性检查功能进一步添加了检验被加密的值是否为原始写入存储器的相同值的能力。
在一个实施例中,根据本发明的一个方面的完整性检查功能与以上引入的申请中说明的访问表和访问参数一起工作。所述访问表中的一个附加参数可以指示要与验证后的数据关联的地址范围。完整性检查功能245根据所请求的数据传输确定存储器中完整性值的位置并且还如以下所述计算和比较该完整性值。
简言之,所述过程可以被分成例如预存储和后存储步骤:
预存储
生成第一完整性检查值,该值为要保密和验证的数据的数学上的精简版本。
加密所述数据并加密该第一完整性检查值。
在存储器中存储所述加密后的完整性值和所述加密后的数据。
后存储
从存储器中取出和解密所述完整性值,并取出和解密所述加密后的数据。
使用与生成所述第一完整性检查值采用的功能相同的功能来生成第二完整性检查值。
比较所述第一与第二完整性检查值。如果它们匹配,则验证了数据。否则,该数据已被破坏,应该采取纠正措施。
在以下说明的集成系统中,结合增强的安全操作概念,可以可选地采用完整性检查功能245。
图3表示典型集成设备中使用的软件的级别。如图所示,设备的硬件300是所述软件级别在其上运行的基础。当首次打开设备电源并使用初始化数据312执行初始化功能时,引导代码310运行。在初始化后,所述引导代码调用内核320(抽象为级别1)。内核320提供包括通用系统设置322和注册表324的操作系统服务和资源。然后连续调用一个或多个级别的软件,所述一个或多个级别的软件包括与软件访问控制或口令332和密钥334一起工作的诸如网络服务、文件管理、介质处理等的中间件和服务功能330。应用软件340位于所述中间件和服务软件级别330顶部并与诸如个人信息342和其他内容344之类的用户数据一起工作。
图3示出了为集成设备或系统提供安全性的挑战。作为一个总的规则,软件级别越接近底层硬件,该软件就越安全或越受信赖。但是,与之相反,软件级别越接近用户(例如一个应用),数据就越重要。这导致了安全性最低的软件保护最重要的数据。
图4示出了一种在集成系统中提供安全性的方法。从硬件400开始,每个级别的软件都由下面的级别的软件来验证。在引导代码410的情况下,如以上引入的申请中所限定的,通过使用解密和所述硬件中的主设备密钥来验证引导代码410,其中引导代码(或初始化代码)以加密形式存储在外部存储器中。还有,在验证之后并且在将控制传递给下一个级别的软件420、430、440等之前,每个居先的级别可以限制该下一个级别控制或修改系统的能力。因此,随着每个级别的加载,每个级别都被检验并且影响系统安全性的能力可以被进一步限制。
图5示出了在诸如图2中说明的集成系统的环境下图4中示出的方法的一种实施方式。具体地说,此实施方式是通过使用上述说明的和以上引入的申请中的访问控制功能来实现的。如上所述,引导代码400由硬件来验证,因此被看作最受信赖的级别的软件。该引导代码能够完全配置所述访问控制功能,包括解密中使用的密钥集、限定如何转换地址的地址表、根据主设备id和地址范围指定所允许的事务的访问级别以及限定如何处理请求的访问参数。所有这些信息仍由上述访问控制功能来维护。
将控制传递给下一个级别的软件(即级别一410)之前,在此例子中,所述引导代码隐藏密钥值以使它们对软件不直接可见,并且还锁定所述地址表和访问级别项(两者都包含在所述访问表内)以便下一个级别的软件不能对它们进行修改。但是,在此例子中,在该下一个级别仍可以更新所述访问参数。注意隐藏可以通过阻止读出访问以硬件实现,并且锁定可以通过阻止写入访问以硬件实现。本领域的技术人员将理解存在多种方式来控制(或锁定)对所述访问控制单元的寄存器的访问,诸如强制使用特权指令、只将寄存器连接到片上专用总线、存储器映射所述寄存器和使用所述访问控制单元中现有设置来限制对所述寄存器的访问等。
如图所示,将控制传递给最不受信赖的软件级别440之前,将锁定描述所述访问控制功能的最后一个运行特性(即,访问参数)以便它们不能被修改。
图6示出了用于为已被装配到计算系统中的集成设备初始化安全操作环境的过程的一个实施例。如图所示,该集成设备被装配到更大的系统605中,并在610处施加了电源。整个系统或计算环境被移至与系统制造商关联的物理安全环境600,在安全环境600中对所述集成设备进行配置以便安全操作。具体地说,前进到安全模式612、生成私有密钥615并将所述密钥和替代引导地址载入与所述设备的数据访问控制功能关联的永久性存储装置620。注意该私有密钥可以由所述制造商提供,也可以由所述集成设备自身生成。在后一情况下,所述密钥可以最佳地保存在契约(escrow)中。
接着配置所述访问表625以便使用所述主设备密钥集来加密写入到易失性存储器的数据并使用非易失性存储器地址进行白化,如以下结合图7A&7B所述。从易失性存储器读出的数据不会被密码地处理并将保持不变。还配置访问表以便写入非易失性存储器的数据不会改变。
然后,通过调试接口(参见图7A&7B)加载所述引导代码并在数据被写入易失性存储器时由所述数据访问控制功能使用所述主设备密钥集对该引导代码进行加密630。然后,如以下进一步解释的,将所述代码从易失性存储器复制到非易失性存储器(不在其中解密)635。最后,如以上引入的申请中说明的,所述集成设备被配置为安全模式640。注意此处理的结果是所述加密对于特定的集成系统来说是唯一的。
此时,可以将所述计算系统从物理安全位置600移出。然后使用所述加载的安全引导代码重新引导该系统645,然后,如果希望,通过使用具有自生成的密钥值的加密,该步骤可用于以安全方式加载其他代码650。图6的过程中的最后步骤是测试并发运所述计算系统655。
图7A进一步示出了图6的过程630。(注意图7A以及某些后续的图是图2的集成系统的简化描绘,其中为了简洁,省略了总线控制和从设备组件。)如图所示,可以使用调试接口或集成开发环境(IDE)将未加密的引导代码加载到集成设备中,所述集成设备已配置成安全操作。集成设备200使用所述内部主设备密钥加密存储在访问控制功能240的永久性存储装置243中的引导代码249,并将加密的引导代码700写入易失性存储器280中限定的位置。注意该加密的引导代码是首先被写入易失性存储器,因为非易失性存储器(例如闪存)需要多个操作来写入一个给定数据值,因此不能作为块操作来实现。由于以后要将加密的引导代码700复制到外部存储器中的另一个位置,与加密操作关联的访问表248项被配置成使用非易失性存储器中最终的地址位置作为进行白化的值。一个或多个以上引入的申请中进一步说明了白化。
图7B示出了用于由例如处理器2101将加密的引导代码从易失性存储器复制到非易失性存储器260的过程635。由于已经使用所述主设备密钥集和用于白化的非易失性存储器地址加密了所述引导代码,该引导代码不需要任何密码变换并且不必进行解密就可以直接被复制到非易失性存储器中。
图8示出了根据本发明的一个方面的初始化过程的流程图。开始于引导过程800,集成设备接通电源805并发出引导请求,该引导请求由所述数据访问控制功能使用所述替代引导地址重定向810。所述数据访问控制功能使用所述主设备密钥集解密从存储器检出的所述加密的代码815。在执行的第一指令中进行检查以查看更新的引导代码映像是否可用820。此检查应该在所述引导过程自身期间完成,因为没有其他级别的软件可以被授权以对所述引导代码作出更改。
如果没有更新,则所述引导代码生成将用于正在启动的给定会话的运行时密钥825。注意如果存在必须使用的来自先前会话的数据结构,所述引导代码也可以取出已由该先前会话存储的加密的密钥值。然后所述引导代码使用成熟的技术以数学处理存储器中的所述软件映像,以得到唯一的摘要或散列值并将结果与预期值进行比较来验证下一个级别的软件830。这可以使用所述安全引导代码在软件中完成。除了授权以外,所述引导代码还可以限制该下一个级别的软件修改或甚至观察与所述访问控制功能关联的安全设置和运行特性的能力。验证和锁定安全功能都完成后,控制被传递给下一个级别的软件835。如果该下一个级别的软件是最后的级别840,则加载软件的过程完成,所述设备的安全操作可以开始845。如果还有其他级别,则再次执行验证下一个级别和可选地锁定安全功能的任务,该循环将继续,直到所有级别都被加载。
如果存在所述引导代码的更新,则询问820后跟随着引导更新过程850。首先,使用当前引导代码(即,设备首次接通电源时正在运行的代码)验证并解密新的引导代码映像855。注意该新的映像可能以与所述集成设备内部使用的加密形式不同的加密形式被传输到系统。在此情况下,所述引导代码在软件中执行解密步骤。然后正在运行的引导代码使用所述访问控制功能将该新引导代码写入存储器以使用所述集成设备的主设备密钥集以与所述系统首次被装配时相同的方式解密该新代码860。但是,该新引导代码映像被写入不同于正在运行的引导代码的单独位置,以便如果系统在该过程中被意外地中断,该正在运行的引导代码在存储器中是完整的和可以使用的。一旦该新引导代码映像被完全验证并被写入非易失性存储器,所述正在运行的引导代码更新所述替代引导地址以指向该新引导代码映像865。一旦更新完成,所述系统重新启动870并返回引导过程800的开始处。在此过程的扩展中,可以根据需要由具有更高安全权限的某一级别的软件添加与所述引导或初始化代码不同的一个或多个级别的代码。例如,所述引导代码可用于更新所述内核。
作为所述引导更新过程850的扩展,可以将新的版本号与所述新的引导代码映像相关联860。这要求将版本号参数添加到与所述数据访问控制功能关联的片上永久性存储装置中存储的值,如一个或多个以上引入的申请中所说明的。再次地,所述版本号用于执行作为所述第一指令的解密的一部分的白化过程。所述引导代码映像包括版本号的好处在于,它可以防止攻击者通过只是制作拷贝然后重放来重用较早的引导代码映像。
图9示出了使用图8的引导过程启动的集成系统内的过程。当接通集成设备的主电源时,第一动作是处理器2101从预定地址请求数据(引导代码)。此外部数据请求被传递给数据访问控制功能240,数据访问控制功能240根据所述地址将该请求标识为引导代码请求,并将全部或部分所述地址替换成包含在所述控制功能的永久性存储装置243中的替代引导地址。然后该修改后的请求继续到外部存储器260。所述替代引导地址定义成指向这样的存储器部分,该部分包含先前已使用所述主设备密钥集加密的代码。此加密的代码710位于非易失性存储器260的安全区域中。所述加密的代码被返回到所述访问控制单元,该访问控制单元已配置成根据所述替代引导地址使用所述主设备密钥集来解密该返回的数据。然后解密的(并且安全的)引导代码被返回所述处理器以便执行。当所述处理器执行引导代码序列时将重复以上步骤。
图10示出了用于当所述集成系统正在运行时接受代码更新的过程。此更新检查过程1000开始于系统运行在安全操作模式1005。根据诸如内部周期性时间触发器或外部通知等的条件事件,系统进行检查1010以查看更新是否可用1015。如果“否”,则集成系统返回先前的安全操作状态并继续。如果更新可用,则可以使用业内成熟的安全网络协议下载该更新1020。可替代地,可以从固定媒介读取该更新。然后当前级别的软件确定其是否被授权进行请求的更新1025。如上所述,给定级别的软件只能由相同或更高级别权限的软件来验证。
如果当前级别的软件没有被授权进行更新,则该软件标记更新可用并存储该更新以便当接下来正确的级别将控制集成设备时由该级别的软件使用。注意通常需要存储在非易失性存储器中,以便所述更新可用于下一个会话。
如果当前级别的软件被授权,则继之以更新过程1050。此过程包括使用上述用于更新引导代码的诸过程来验证和解密所述更新。但是,不需要使用所述主设备密钥集来加密该更新。而是代之以采用运行时密钥。另外,无需将所述更新的版本号存储在片上永久性存储器中,但是该版本号可以被加密并存储在外部安全存储器中,因为它将由所述引导代码加载1060。接着,更新验证值以用于在系统初始化期间加载之前检验所述更新后的代码。
图11示出了用于管理密钥并根据需要更新密钥的过程。总体上,此过程采用所述数据访问控制功能作为从一种加密形式移植到另一种加密形式的装置。
在单一数据块上过度使用私有密钥增加了潜在地可用于密码分析的样本的数量。因此,为了保护私有密钥,应该限制采用密钥的样本的数量。该限制取决于攻击者可能使用的分析的类型并取决于采用的加密算法、密钥以及物理防护的强度。在现在的技术中,精确地计数私有密钥用在单一数据块上的次数是不切实际的。一种对此计数的逼近近似(其将需要每密钥集的存储容量)将是使用计数器来记录每密钥集的写入操作的次数,该计数大于或等于创建的唯一样本的数量。作为一种稍微低效的近似,可以同时计数读出和写入操作,不过这并不意味着可以增加计数阈值。
如密钥管理过程1100所示,在单个会话或跨会话期间生成(如以上结合所述引导过程所说明的)运行时密钥以供使用1105。同时,使用给定阈值初始化密钥利用率计数器。此计数器可以以软件实现,但更有利地作为所述访问控制功能的一部分以硬件实现,因为驱动该计数器所需的信息是可用的。进而,可以将该计数器与所述片上永久性存储装置关联,以便在会话之间维持该计数或可以使用软件捕获结果,加密该结果并存储该结果(当系统被断开电源时),然后当系统再次启动时重新加载该计数。
可选地,控制被传递给下一个级别的软件1110。注意当前级别的软件可以可替代地继续并直接使用所述密钥。每次使用所述密钥写入加密的数据时,所述密钥利用率计数器将递增1120。它可以可选地用于监视只是除了写入事件以外的读出事件,而不是取代它们。
在某些时刻,所述密钥利用率计数器将超出所述阈值1125。当出现这种情况时,如果与初始生成所述密钥的级别相同的级别的软件正在运行,则所述密钥更新过程1150被调用1130。如果软件的当前级别不同,则系统返回原始生成所述密钥的级别的软件并从该处调用所述密钥更新过程1135。
密钥更新过程1150利用所述访问控制功能来帮助从一个密钥集移植到另一个密钥集。首先修改所述访问控制功能的访问表,以便要移植的数据的当前位置被定义为使用旧密钥集解密,并且数据的新位置被定义为使用新密钥集解密1155。注意由于所述访问表可用于进行地址转换,集成设备的内部主设备可以将所述当前数据位置和新数据位置看作存储器中单独的地址范围,而地址转换后的外部请求可以将这两个位置定义为相同的地址范围。这允许从给定数据块的现有位置读取该数据块,然后将其写回相同的位置。
然后,使用所述新的访问表定义,从数据的当前位置读取该数据并将其写入到该数据的新的位置,有效地使用所述新密钥集重新加密了该数据1160。然后再次修改该访问表,以便所述新的位置被定义为使用所述新密钥集来加密和解密1165,并删除所有对旧密钥集和关联的数据位置的引用1170。
图12A-12C示出了用于将由外部源提供的数据从一种加密形式移植到另一种加密形式的相关技术。在此情况下,外部加密形式可以是不同于内部加密方法的算法和密钥集。如图12A所示,在此情况下,从使用外部算法加密的外部源通过通信端口1200接收数据。访问控制功能240被定义成将此外部数据不作修改地直接存储在外部存储器280中。如图12B所示,然后处理器2101以块为单位将该外部数据读入其高速缓冲存储器中,并使用用于解密的软件解密给定的块。一旦解密后,则将该未加密的块写入外部存储器280,如图12C所示。但是,所述访问控制功能被配置成使用内部算法和密钥集来加密该数据。此过程的结果是从外部接收的所有数据被转换为唯一的和由该集成设备控制的加密形式。这提供了保持加密数据的安全性的好处,同时利用了访问控制功能的硬件加速的优点。
图13示出了在所述集成系统在现场使用并且篡改事件触发了该系统从安全状态转变到空状态(如一个或多个以上引入的申请所说明的)之后用于恢复该集成系统的安全操作的过程的一个实施例。如图所示,通过触发后引导过程1300,在篡改事件后集成系统被接通电源1305并且所述引导请求不再重定向1310。从所述标准引导地址运行未加密的代码以初始化所述系统1315。初始化后的系统以降低的功能级别运行,从而不再将访问提供给安全数据或应用1325。可替代地,可以作出恢复原始集成系统功能的尝试1320。
如果集成系统所有者选择尝试完全恢复,则将该集成系统携带到包括安全物理位置1350的授权的服务中心。该服务中心使用调试工具(参见图7A)来加载未加密的初始化代码(其包括恢复引导代码以及制造商的公有密钥)1355。
然后所述集成系统重新启动以执行该初始化代码,其将首先生成新的主设备密钥集并将该主设备密钥集写入与所述数据访问控制功能关联的片上永久性存储装置中1360。然后所述访问控制功能被配置成使用该主设备密钥集来解密所述恢复引导代码,如以上结合图7A所说明的。新的引导代码的位置被写入所述替代引导地址区。然后该引导代码内部地生成公有/私有密钥对并在非易失性存储器中安全地恢复所述私有密钥。生成的公有密钥被使用制造商的公有密钥(之前与所述初始化代码一起提供)加密并被返回所述服务中心,该服务中心然后将其转发给制造商1365。此时,可以从安全物理位置1350移除所述集成系统。
系统重新启动并执行所述恢复引导代码1370。该初始化后的系统将建立到制造商的安全网络连接1375,然后使用公知的技术,可以下载并在所述集成系统上安装重新建立该系统的原始功能所需的数据和代码1380。
总之,本文中说明了用于初始化、维护、更新和恢复集成系统内安全操作的方法、系统和计算机程序产品。这些技术利用了所述集成系统内的数据访问控制功能。所述系统和计算机程序产品可以被广义地总结如下。
本文提供的一个方面是一种用于帮助具有多个级别软件的集成系统的安全操作的系统。该系统包括用于在将所述集成系统的控制传递给下一个级别的软件之前由当前级别的软件验证所述多个级别的软件中的所述下一个级别的软件的装置。还提供了数据访问控制器,所述控制器包括用于限制所述下一个级别的软件修改所述集成系统的运行特性的能力的装置。
在另一方面,还提供了一种用于初始化集成系统的安全操作的系统。该系统包括用于为所述集成系统生成至少一个密钥的装置和所述集成系统内的数据访问控制功能。所述数据访问控制功能接收进入所述集成系统的初始化代码并使用所述至少一个密钥加密该初始化代码。初始化系统还包括用于使用所述加密的初始化代码重新初始化所述集成系统的装置。
还提供了一种用于将使用第一密钥集加密的数据移植到使用第二密钥集加密的数据的系统。该系统包括在所述集成系统内解密使用第一密钥集加密的数据的装置;以及所述集成系统内的数据访问控制功能,所述数据访问控制功能包括用于使用第二密钥集重新加密所述数据的装置。
在另一方面,本文中说明了一种用于在触发器事件之后恢复集成系统功能的系统。该系统包括用于在所述集成系统内自动地建立降低级别的功能的装置,以及用于通过选择性的使用指定恢复过程允许所述集成系统的完全功能的恢复的装置。
在另一方面,提供了至少一个可由计算机读取的、有形地包含至少一个指令程序的程序存储装置,所述指令可由该计算机执行以实现帮助具有多个级别软件的集成系统的安全操作的方法。该方法包括在将所述集成系统的控制传递给下一个级别的软件之前由当前级别的软件验证所述多个级别的软件中的所述下一个级别的软件;以及限制所述下一个级别的软件修改所述集成系统的运行特性的能力,所述限制通过所述集成系统的数据访问控制功能来实现。
在再一方面,提供了至少一个可由计算机读取的、有形地包含至少一个可由该计算机执行的指令程序的程序存储装置以实现初始化集成系统的安全操作的方法。该方法包括为所述集成系统生成至少一个密钥;将初始化代码加载到所述集成系统中,所述加载包括通过所述集成系统的数据访问控制功能使用所述至少一个密钥来加密该初始化代码;以及使用所述加密的初始化代码重新初始化所述集成系统。
在还一方面,提供了至少一个可由计算机读取的、有形地包含至少一个可由该计算机执行的指令程序的程序存储装置以实现将使用第一密钥集加密的数据移植到使用第二密钥集加密的数据的方法。该方法包括:解密使用第一密钥集加密的数据;以及由集成系统内的数据访问控制功能使用第二密钥集重新加密所述数据。
在进一方面,提供了至少一个可由计算机读取的、有形地包含至少一个可由该计算机执行的指令程序的程序存储装置以实现触发器事件之后恢复集成系统功能的方法。该方法包括:在所述集成系统内自动地建立降低级别的功能;以及通过采用选择性的恢复过程允许所述集成系统的完全功能的恢复。
本领域的技术人员从上述讨论中将会注意到本发明可以被包括在具有例如计算机可用介质的一件制品(例如,一个或多个计算机程序产品)中。所述介质其中包含例如用于提供和有助于本发明功能的计算机可读程序代码装置。该件制品可以被包括为计算机系统的一部分或单独出售。
此外,可以提供至少一个可由计算机读取的、有形地包含至少一个可由该计算机执行的指令程序的程序存储装置以实现本发明的功能。
本文中示出的流程示意图只是一些例子。可能存在许多对这些示意图或其中描述的步骤(或操作)的变型而不偏离本发明的精神。例如,可以以不同的顺序执行这些步骤,或者可以添加、删除或修改这些步骤。所有这些变型都被看作所要求的发明的一部分。
尽管本文中示出并详细说明了诸优选实施例,对本领域的技术人员显而易见的是,可以作出各种修改、添加、替换等而不偏离本发明的精神,因此它们被看作在本发明的范围之内,如以下权利要求书中所限定的那样。
工业实用性
本发明在处理敏感数据(在被处理和移植之前需要被加密)的安全集成系统中存在广泛的实用性。
Claims (31)
1.一种帮助具有多个级别软件的集成系统的安全操作的方法,所述方法包括:
将所述集成系统的控制传递给下一个级别的软件之前,由当前级别的软件验证所述多个级别的软件中的所述下一个级别的软件;以及
限制所述下一个级别的软件修改所述集成系统的运行特性的能力,所述限制通过所述集成系统的数据访问控制功能来实现。
2.权利要求1的方法,其中所述限制包括限制所述下一个级别的软件修改由所述数据访问控制功能维护的一个或多个密钥集、一个或多个访问表、一个或多个访问级别以及一个或多个访问参数中的至少一个的能力。
3.权利要求2的方法,其中所述控制包括隐藏所述一个或多个密钥集或者锁定对由所述数据访问控制功能维护的所述一个或多个访问表、所述一个或多个访问级别以及所述一个或多个访问参数的访问中的至少一个。
4.权利要求1的方法,进一步包括验证要在初始化所述集成系统的安全操作中使用的初始化代码,所述初始化代码的验证由所述集成系统的数据访问控制功能来执行。
5.权利要求1的方法,与用于更新某一级别的软件的方法相结合,所述用于更新所述级别的软件的方法包括:
判定软件级别更新是否可用;
判定所述当前级别的软件是否被授权验证所述更新的级别的软件,如果是,使用所述数据访问控制功能接受所述集成系统中的所述软件级别更新。
6.权利要求5的方法,其中所述更新的级别的软件包括初始化代码更新,并且其中所述方法进一步包括:
验证并解密所述初始化代码更新;
使用由所述数据访问控制功能和新的版本号维护的主设备密钥集来加密所述解密的初始化代码更新;以及
将由所述数据访问控制功能维护的初始化重定向地址更新成新的、更新的初始化位置地址。
7.权利要求5的方法,其中如果所述当前级别的软件不能够验证所述软件级别更新,则将该软件级别更新保持在所述集成系统直至适当级别的软件运行并能够验证该软件级别更新。
8.权利要求5的方法,其中接受所述集成系统中的所述软件级别更新包括加密所述软件级别更新以便存储,所述加密包括当加密所述软件级别更新时使用新的版本号。
9.一种初始化集成系统的安全操作的方法,所述方法包括:
为所述集成系统生成至少一个密钥;
将初始代码加载到所述集成系统中,所述加载包括通过所述集成系统的数据访问控制功能使用所述至少一个密钥来加密所述初始代码;以及
使用所述加密的初始代码重新初始化所述集成系统。
10.权利要求9的方法,其中所述生成包括在所述集成系统内生成所述至少一个密钥。
11.权利要求9的方法,其中所述数据访问控制功能包括所述集成系统的硬件组件。
12.权利要求9的方法,进一步包括使用所述加密的初始代码将附加代码加载到所述集成系统中。
13.权利要求12的方法,其中所述附加代码的加载包括利用所述加密的初始代码在所述集成系统内实现随机密钥生成以便在由所述数据访问控制功能加密所述附加代码中使用。
14.权利要求9的方法,其中所述加载进一步包括使用所述至少一个密钥和用于白化的存储器地址来加密所述初始代码。
15.一种将使用第一密钥集加密的数据移植到使用第二密钥集加密的数据的方法,所述方法包括:
解密使用第一密钥集加密的数据;以及
由集成系统内的数据访问控制功能使用第二密钥集重新加密所述数据。
16.权利要求15的方法,其中所述数据访问控制功能包括所述集成系统的硬件组件。
17.权利要求15的方法,其中所述解密也由所述集成电路的所述数据访问控制功能来执行。
18.权利要求15的方法,进一步包括从与所述集成系统关联的存储装置中检索出使用所述第一密钥集加密的所述数据以便解密。
19.权利要求15的方法,进一步包括修改至少一个与所述数据访问控制功能关联的运行特性,所述至少一个运行特性位于由所述数据访问控制功能使用的访问表中,并且其中所述修改包括修改该访问表以指明当前位置中的加密数据要使用所述第一密钥集来解密,以及当存储到新的数据位置时要使用所述第二密钥集来重新加密。
20.权利要求15的方法,其中所述解密和重新加密将响应加密和解密数据中的至少一个已使用所述第一密钥集预定的计数,并且其中所述方法进一步包括计数所述第一密钥集在所述加密和解密数据的至少一个中使用的次数。
21.权利要求20的方法,其中所述计数包括利用由所述集成系统的所述数据访问控制功能维护的密钥利用率计数器。
22.权利要求15的方法,其中使用所述第一密钥集加密的所述数据是从对于所述集成系统是外部的源接收的。
23.权利要求22的方法,其中所述解密是在所述集成系统内的软件中执行的,并且其中通过所述数据访问控制功能重新加密是在所述集成系统的硬件中执行的。
24.权利要求23的方法,其中所述第二密钥集对于所述集成系统是唯一的。
25.一种在触发器事件之后恢复集成系统功能的方法,所述方法包括:
在所述集成系统内自动地建立降低级别的功能;以及
通过使用选择性的恢复过程允许所述集成系统的完全功能的恢复。
26.权利要求25的方法,其中所述恢复过程包括在安全物理位置将初始化代码加载到所述集成系统中。
27.权利要求26的方法,其中所述初始化代码的加载进一步包括将包括恢复初始化代码的未加密的初始化代码加载到所述集成系统中,并且其中所述方法进一步包括:
执行所述恢复初始化代码以得到主设备密钥和替代初始化地址;
使用所述主设备密钥加密所述恢复初始化代码并将该加密的初始化代码存储在所述替代初始化地址;以及
使用存储在所述替代初始化地址的所述加密的初始化代码重新初始化所述集成系统。
28.权利要求27的方法,进一步包括将所述主设备密钥和所述替代初始化地址存储在与所述集成系统的数据访问控制功能关联的永久性存储装置中。
29.权利要求27的方法,其中所述初始化代码进一步包括制造商的公有密钥,并且其中所述方法进一步包括:
在所述集成系统生成公有/私有密钥对;
安全地存储所述集成系统的私有密钥;以及
使用所述制造商的公有密钥加密所述集成系统的公有密钥。
30.权利要求29的方法,进一步包括建立所述集成系统与制造商之间的安全网络连接,所述建立使用所述生成的公有/私有密钥对,以及通过所述安全网络连接下载需要的代码和数据以重新建立所述集成系统的完整功能。
31.权利要求25的方法,其中在所述集成系统内自动地建立降低级别的功能包括限制对所述集成系统内安全代码和数据的访问。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/125,803 | 2002-04-18 | ||
US10/125,803 US6715085B2 (en) | 2002-04-18 | 2002-04-18 | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
PCT/US2003/011907 WO2003090402A1 (en) | 2002-04-18 | 2003-04-16 | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1647443A true CN1647443A (zh) | 2005-07-27 |
CN1647443B CN1647443B (zh) | 2010-05-05 |
Family
ID=29214852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN038084309A Expired - Fee Related CN1647443B (zh) | 2002-04-18 | 2003-04-16 | 帮助具有多个级别软件的集成系统的安全操作的方法和系统 |
Country Status (11)
Country | Link |
---|---|
US (3) | US6715085B2 (zh) |
EP (2) | EP1500225A4 (zh) |
JP (2) | JP4464689B2 (zh) |
KR (1) | KR100809977B1 (zh) |
CN (1) | CN1647443B (zh) |
AU (1) | AU2003223671A1 (zh) |
CA (1) | CA2481569C (zh) |
IL (1) | IL164718A (zh) |
PL (1) | PL372374A1 (zh) |
RU (1) | RU2295834C2 (zh) |
WO (1) | WO2003090402A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369141B (zh) * | 2007-03-12 | 2011-04-20 | Secunet安全网络股份公司 | 用于可编程数据处理设备的保护单元 |
CN102081534A (zh) * | 2009-11-30 | 2011-06-01 | 英特尔公司 | 自动模块化且安全的引导固件更新 |
CN102222049A (zh) * | 2010-04-14 | 2011-10-19 | 微软公司 | 自加密存储设备的可扩展管理 |
CN104320248A (zh) * | 2014-11-14 | 2015-01-28 | 中国建设银行股份有限公司 | 一种系统间密钥同步的方法及系统 |
CN105580027A (zh) * | 2013-09-30 | 2016-05-11 | 高通股份有限公司 | 用于使用不同域特定密钥确保内容安全的方法 |
CN107624178A (zh) * | 2015-06-26 | 2018-01-23 | 英特尔公司 | 快速归零的机柜式架构(rsa)和共享存储器控制器(smc)技术 |
CN107808099A (zh) * | 2016-09-08 | 2018-03-16 | 北京自动化控制设备研究所 | 嵌入式软件加密/解密系统及方法 |
CN110770733A (zh) * | 2017-08-17 | 2020-02-07 | 微芯片技术股份有限公司 | 用于在混合安全系统中对代码或数据的完整性检查并同时维护保密性的系统和方法 |
CN112214758A (zh) * | 2019-07-09 | 2021-01-12 | 意法半导体(大西部)公司 | 用于管理经加密的软件应用的设备和方法 |
CN112241272A (zh) * | 2019-07-17 | 2021-01-19 | 郑州宇通客车股份有限公司 | 一种车载仪表及其升级方法、系统 |
Families Citing this family (139)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7996670B1 (en) | 1999-07-08 | 2011-08-09 | Broadcom Corporation | Classification engine in a cryptography acceleration chip |
US6993007B2 (en) * | 1999-10-27 | 2006-01-31 | Broadcom Corporation | System and method for suppressing silence in voice traffic over an asynchronous communication medium |
EP1338939A1 (en) * | 2002-02-22 | 2003-08-27 | Hewlett-Packard Company | State validation device for a computer |
US7444682B2 (en) * | 2002-07-03 | 2008-10-28 | Macronix International Co., Ltd. | Security memory device and method for making same |
JP2004054834A (ja) * | 2002-07-24 | 2004-02-19 | Matsushita Electric Ind Co Ltd | プログラム開発方法、プログラム開発支援装置およびプログラム実装方法 |
AU2003209885A1 (en) * | 2002-09-20 | 2004-04-08 | Mks Inc. | Version control system for software development |
US7266786B2 (en) * | 2002-11-05 | 2007-09-04 | Sonics, Inc. | Method and apparatus for configurable address mapping and protection architecture and hardware for on-chip systems |
JP4099039B2 (ja) * | 2002-11-15 | 2008-06-11 | 松下電器産業株式会社 | プログラム更新方法 |
US8140824B2 (en) * | 2002-11-21 | 2012-03-20 | International Business Machines Corporation | Secure code authentication |
US7194626B2 (en) * | 2002-11-21 | 2007-03-20 | International Business Machines Corporation | Hardware-based secure code authentication |
US7974416B2 (en) * | 2002-11-27 | 2011-07-05 | Intel Corporation | Providing a secure execution mode in a pre-boot environment |
US7137109B2 (en) * | 2002-12-17 | 2006-11-14 | Hewlett-Packard Development Company, L.P. | System and method for managing access to a controlled space in a simulator environment |
US7568110B2 (en) | 2002-12-18 | 2009-07-28 | Broadcom Corporation | Cryptography accelerator interface decoupling from cryptography processing cores |
US7434043B2 (en) | 2002-12-18 | 2008-10-07 | Broadcom Corporation | Cryptography accelerator data routing unit |
US20040123120A1 (en) * | 2002-12-18 | 2004-06-24 | Broadcom Corporation | Cryptography accelerator input interface data handling |
US20040123123A1 (en) * | 2002-12-18 | 2004-06-24 | Buer Mark L. | Methods and apparatus for accessing security association information in a cryptography accelerator |
US7392404B2 (en) * | 2002-12-20 | 2008-06-24 | Gemalto, Inc. | Enhancing data integrity and security in a processor-based system |
AU2004213886A1 (en) * | 2003-02-21 | 2004-09-02 | Research In Motion Limited | System and method of multiple-level control of electronic devices |
US7509644B2 (en) * | 2003-03-04 | 2009-03-24 | Secure 64 Software Corp. | Operating system capable of supporting a customized execution environment |
JP2004287590A (ja) * | 2003-03-19 | 2004-10-14 | Matsushita Electric Ind Co Ltd | デバッグシステム、マイクロプロセッサ及びデバッガ |
US7171563B2 (en) * | 2003-05-15 | 2007-01-30 | International Business Machines Corporation | Method and system for ensuring security of code in a system on a chip |
US7478433B2 (en) * | 2003-06-19 | 2009-01-13 | Panasonic Corporation | Program execution system having authentication function |
US7469346B2 (en) * | 2003-06-27 | 2008-12-23 | Disney Enterprises, Inc. | Dual virtual machine architecture for media devices |
US7900250B1 (en) * | 2003-09-12 | 2011-03-01 | Nortel Networks Limited | Method of providing secure groups using a combination of group and pair-wise keying |
US7369815B2 (en) * | 2003-09-19 | 2008-05-06 | Qualcomm Incorporated | Power collapse for a wireless terminal |
US7571484B2 (en) * | 2003-12-04 | 2009-08-04 | Microsoft Corporation | System and method for image authentication of a resource-sparing operating system |
JP4574994B2 (ja) * | 2004-01-26 | 2010-11-04 | 東芝マイクロエレクトロニクス株式会社 | メモリ外付けマイコン |
US8112618B2 (en) * | 2004-04-08 | 2012-02-07 | Texas Instruments Incorporated | Less-secure processors, integrated circuits, wireless communications apparatus, methods and processes of making |
JP2005332221A (ja) * | 2004-05-20 | 2005-12-02 | Renesas Technology Corp | 記憶装置 |
JP4612461B2 (ja) * | 2004-06-24 | 2011-01-12 | 株式会社東芝 | マイクロプロセッサ |
US7461268B2 (en) * | 2004-07-15 | 2008-12-02 | International Business Machines Corporation | E-fuses for storing security version data |
US20060026417A1 (en) * | 2004-07-30 | 2006-02-02 | Information Assurance Systems L.L.C. | High-assurance secure boot content protection |
US8954751B2 (en) | 2004-10-08 | 2015-02-10 | International Business Machines Corporation | Secure memory control parameters in table look aside buffer data fields and support memory array |
US8332653B2 (en) * | 2004-10-22 | 2012-12-11 | Broadcom Corporation | Secure processing environment |
US7958369B2 (en) * | 2004-10-22 | 2011-06-07 | Hewlett-Packard Development Company, L.P. | Systems and methods for multiple level control of access of privileges to protected media content |
EP1659472A1 (en) * | 2004-11-22 | 2006-05-24 | Research In Motion Limited | Method and Device for Authenticating Software |
US20060136717A1 (en) | 2004-12-20 | 2006-06-22 | Mark Buer | System and method for authentication via a proximate device |
US8295484B2 (en) | 2004-12-21 | 2012-10-23 | Broadcom Corporation | System and method for securing data from a remote input device |
CN101084504B (zh) * | 2004-12-21 | 2010-04-14 | Nxp股份有限公司 | 具有改进的器件安全性的集成电路 |
US20060136705A1 (en) * | 2004-12-21 | 2006-06-22 | Motorola, Inc. | Multiple stage software verification |
JP4606339B2 (ja) * | 2005-02-07 | 2011-01-05 | 株式会社ソニー・コンピュータエンタテインメント | セキュアなプロセッサの処理の移行を実施する方法および装置 |
JP4522372B2 (ja) * | 2005-02-07 | 2010-08-11 | 株式会社ソニー・コンピュータエンタテインメント | プロセッサと外部のデバイスとの間にセキュアセッションを実現する方法および装置 |
WO2006082985A2 (en) * | 2005-02-07 | 2006-08-10 | Sony Computer Entertainment Inc. | Methods and apparatus for providing a secure booting sequence in a processor |
JP4669708B2 (ja) * | 2005-02-16 | 2011-04-13 | 株式会社日立製作所 | ストレージシステム、データ移動方法及び管理計算機 |
CN100358303C (zh) * | 2005-02-28 | 2007-12-26 | 联想(北京)有限公司 | 一种对被管理设备进行监控的方法 |
CN1703004B (zh) * | 2005-02-28 | 2010-08-25 | 联想(北京)有限公司 | 一种实现网络接入认证的方法 |
US8364792B2 (en) * | 2005-03-09 | 2013-01-29 | Vudu, Inc. | Method and system for distributing restricted media to consumers |
US7509250B2 (en) * | 2005-04-20 | 2009-03-24 | Honeywell International Inc. | Hardware key control of debug interface |
US20070005987A1 (en) * | 2005-06-30 | 2007-01-04 | Durham Lenitra M | Wireless detection and/or containment of compromised electronic devices in multiple power states |
JP4728060B2 (ja) * | 2005-07-21 | 2011-07-20 | 株式会社日立製作所 | ストレージ装置 |
US8984636B2 (en) | 2005-07-29 | 2015-03-17 | Bit9, Inc. | Content extractor and analysis system |
US8272058B2 (en) | 2005-07-29 | 2012-09-18 | Bit 9, Inc. | Centralized timed analysis in a network security system |
US7895651B2 (en) | 2005-07-29 | 2011-02-22 | Bit 9, Inc. | Content tracking in a network security system |
US20070055862A1 (en) * | 2005-09-08 | 2007-03-08 | Interdigital Technology Corporation | Method and system for distributing data |
US8656487B2 (en) * | 2005-09-23 | 2014-02-18 | Intel Corporation | System and method for filtering write requests to selected output ports |
KR100746012B1 (ko) * | 2005-11-07 | 2007-08-06 | 삼성전자주식회사 | 코드 이미지를 안전하게 갱신하고 부팅하는 방법 및 장치 |
US8627109B2 (en) * | 2005-11-23 | 2014-01-07 | Hewlett-Packard Development Company, L.P. | Method of securing access to a hard disk drive of a computer system with an enhanced security mode |
US20070136609A1 (en) * | 2005-12-13 | 2007-06-14 | Rudelic John C | Methods and apparatus for providing a secure channel associated with a flash device |
US7900060B2 (en) * | 2006-02-17 | 2011-03-01 | Vudu, Inc. | Method and system for securing a disk key |
EP1826697A1 (en) * | 2006-02-24 | 2007-08-29 | Giga Games System, SL | Method for booting and using software for AWP and B type amusing gaming machines, and for C type casino machines |
US8239686B1 (en) | 2006-04-27 | 2012-08-07 | Vudu, Inc. | Method and system for protecting against the execution of unauthorized software |
GB0615392D0 (en) * | 2006-08-03 | 2006-09-13 | Wivenhoe Technology Ltd | Pseudo random number circuitry |
US8032940B1 (en) * | 2006-10-25 | 2011-10-04 | Chaperon, LLC | Method and system for generating and employing a secure integrated development environment |
US8239688B2 (en) | 2007-01-07 | 2012-08-07 | Apple Inc. | Securely recovering a computing device |
US8254568B2 (en) * | 2007-01-07 | 2012-08-28 | Apple Inc. | Secure booting a computing device |
US8056143B2 (en) * | 2007-01-19 | 2011-11-08 | Research In Motion Limited | Selectively wiping a remote device |
US8615665B2 (en) * | 2007-01-26 | 2013-12-24 | Harris Corporation | Method for providing high assurance integrity of installed software images in a software defined radio |
EA010331B1 (ru) * | 2007-02-13 | 2008-08-29 | Общество С Ограниченной Ответственностью "Крипто-Про" | Способ обновления средства обеспечения безопасности программного средства |
JP4903071B2 (ja) * | 2007-03-15 | 2012-03-21 | 株式会社リコー | 情報処理装置、ソフトウェア更新方法及び画像処理装置 |
US8095816B1 (en) | 2007-04-05 | 2012-01-10 | Marvell International Ltd. | Processor management using a buffer |
US8443187B1 (en) | 2007-04-12 | 2013-05-14 | Marvell International Ltd. | Authentication of computing devices in server based on mapping between port identifier and MAC address that allows actions-per-group instead of just actions-per-single device |
US8145903B2 (en) * | 2007-05-25 | 2012-03-27 | Red Hat, Inc. | Method and system for a kernel lock validator |
US8422674B2 (en) * | 2007-05-29 | 2013-04-16 | International Business Machines Corporation | Application-specific secret generation |
US8433927B2 (en) * | 2007-05-29 | 2013-04-30 | International Business Machines Corporation | Cryptographically-enabled privileged mode execution |
US8332635B2 (en) * | 2007-05-29 | 2012-12-11 | International Business Machines Corporation | Updateable secure kernel extensions |
US8522043B2 (en) * | 2007-06-21 | 2013-08-27 | Microsoft Corporation | Hardware-based computer theft deterrence |
JP4956292B2 (ja) * | 2007-06-25 | 2012-06-20 | パナソニック株式会社 | 情報セキュリティ装置およびカウンタ制御方法 |
US8321706B2 (en) * | 2007-07-23 | 2012-11-27 | Marvell World Trade Ltd. | USB self-idling techniques |
JP2009032038A (ja) * | 2007-07-27 | 2009-02-12 | Hitachi Ltd | リムーバブルな暗号化/復号化モジュールが接続されるストレージシステム |
US20090055639A1 (en) * | 2007-08-20 | 2009-02-26 | Kimmo Kuusilinna | Methods and system for modular device booting |
JP2009053901A (ja) * | 2007-08-27 | 2009-03-12 | Seiko Epson Corp | プリンタ |
US8332636B2 (en) * | 2007-10-02 | 2012-12-11 | International Business Machines Corporation | Secure policy differentiation by secure kernel design |
JP5385148B2 (ja) * | 2007-10-05 | 2014-01-08 | パナソニック株式会社 | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 |
US20090119503A1 (en) * | 2007-11-06 | 2009-05-07 | L3 Communications Corporation | Secure programmable hardware component |
US8171309B1 (en) * | 2007-11-16 | 2012-05-01 | Marvell International Ltd. | Secure memory controlled access |
US8656190B2 (en) * | 2008-01-31 | 2014-02-18 | Microsoft Corporation | One time settable tamper resistant software repository |
US8661234B2 (en) * | 2008-01-31 | 2014-02-25 | Microsoft Corporation | Individualized per device initialization of computing devices in avoidance of mass exploitation of vulnerabilities |
US8090108B2 (en) * | 2008-04-15 | 2012-01-03 | Adaptive Chips, Inc. | Secure debug interface and memory of a media security circuit and method |
US8510560B1 (en) | 2008-08-20 | 2013-08-13 | Marvell International Ltd. | Efficient key establishment for wireless networks |
CN102160035A (zh) | 2008-09-18 | 2011-08-17 | 马维尔国际贸易有限公司 | 至少部分地在引导期间向存储器预加载应用 |
US10255463B2 (en) * | 2008-11-17 | 2019-04-09 | International Business Machines Corporation | Secure computer architecture |
US10452844B2 (en) * | 2008-11-26 | 2019-10-22 | International Business Machines Corporation | Protecting isolated secret data of integrated circuit devices |
CN102265263A (zh) * | 2008-12-24 | 2011-11-30 | 松下电器产业株式会社 | 总线控制器及初始引导程序的修补方法 |
WO2010077787A1 (en) * | 2009-01-05 | 2010-07-08 | Marvell World Trade Ltd. | Method and system for hibernation or suspend using a non-volatile-memory device |
US8589700B2 (en) * | 2009-03-04 | 2013-11-19 | Apple Inc. | Data whitening for writing and reading data to and from a non-volatile memory |
US9058491B1 (en) * | 2009-03-26 | 2015-06-16 | Micron Technology, Inc. | Enabling a secure boot from non-volatile memory |
JP4747288B2 (ja) * | 2009-04-03 | 2011-08-17 | 株式会社バッファロー | 外付け記憶装置及びその制御方法 |
US8424071B2 (en) * | 2009-04-15 | 2013-04-16 | International Business Machines Corporation | Method and apparatus for secure and reliable computing |
GB2474250B (en) * | 2009-10-07 | 2015-05-06 | Advanced Risc Mach Ltd | Video reference frame retrieval |
US9336410B2 (en) | 2009-12-15 | 2016-05-10 | Micron Technology, Inc. | Nonvolatile memory internal signature generation |
US8555059B2 (en) * | 2010-04-16 | 2013-10-08 | Microsoft Corporation | Secure local update of content management software |
RU2541196C2 (ru) * | 2010-07-22 | 2015-02-10 | Награвисьон С.А. | Способ обеспечения целостности программного обеспечения |
CA2759971A1 (en) * | 2010-11-29 | 2012-05-29 | Groupe Cgi Inc. | Method for storing (hiding) a key in a table and corresponding method for retrieving the key from the table |
US8862902B2 (en) * | 2011-04-29 | 2014-10-14 | Seagate Technology Llc | Cascaded data encryption dependent on attributes of physical memory |
WO2013012435A1 (en) | 2011-07-18 | 2013-01-24 | Hewlett-Packard Development Company, L.P. | Security parameter zeroization |
US9141394B2 (en) | 2011-07-29 | 2015-09-22 | Marvell World Trade Ltd. | Switching between processor cache and random-access memory |
US8732527B2 (en) | 2011-08-16 | 2014-05-20 | Google Inc. | Secure recovery apparatus and method |
US8756594B2 (en) * | 2011-10-28 | 2014-06-17 | Microsoft Corporation | Reactive anti-tampering system for protected services in an enterprise computing system |
US9021246B2 (en) * | 2011-10-28 | 2015-04-28 | GM Global Technology Operations LLC | Method to replace bootloader public key |
US9436629B2 (en) | 2011-11-15 | 2016-09-06 | Marvell World Trade Ltd. | Dynamic boot image streaming |
KR101301609B1 (ko) * | 2012-05-31 | 2013-08-29 | 서울대학교산학협력단 | 비밀키 생성 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 |
US9575768B1 (en) | 2013-01-08 | 2017-02-21 | Marvell International Ltd. | Loading boot code from multiple memories |
WO2014177905A1 (en) | 2013-04-30 | 2014-11-06 | Freescale Semiconductor, Inc. | Device having a security module |
US20140344581A1 (en) * | 2013-05-16 | 2014-11-20 | Cisco Technology, Inc. | Secure Upgrades for Field Programmable Devices |
US9736801B1 (en) | 2013-05-20 | 2017-08-15 | Marvell International Ltd. | Methods and apparatus for synchronizing devices in a wireless data communication system |
US9521635B1 (en) | 2013-05-21 | 2016-12-13 | Marvell International Ltd. | Methods and apparatus for selecting a device to perform shared functionality in a deterministic and fair manner in a wireless data communication system |
EP3028145A1 (en) | 2013-07-31 | 2016-06-08 | Marvell World Trade Ltd. | Parallelizing boot operations |
US9497221B2 (en) * | 2013-09-12 | 2016-11-15 | The Boeing Company | Mobile communication device and method of operating thereof |
EP3087471A4 (en) * | 2013-12-27 | 2017-10-11 | Intel Corporation | Controlled customization of silicon initialization |
US20150286823A1 (en) * | 2014-04-07 | 2015-10-08 | Qualcomm Incorporated | System and method for boot sequence modification using chip-restricted instructions residing on an external memory device |
US10691838B2 (en) | 2014-06-20 | 2020-06-23 | Cypress Semiconductor Corporation | Encryption for XIP and MMIO external memories |
US10169618B2 (en) | 2014-06-20 | 2019-01-01 | Cypress Semiconductor Corporation | Encryption method for execute-in-place memories |
US10192062B2 (en) * | 2014-06-20 | 2019-01-29 | Cypress Semiconductor Corporation | Encryption for XIP and MMIO external memories |
EP3040896A1 (en) | 2014-12-30 | 2016-07-06 | Gemalto Sa | Secure element |
US10541811B2 (en) * | 2015-03-02 | 2020-01-21 | Salesforce.Com, Inc. | Systems and methods for securing data |
US10114958B2 (en) * | 2015-06-16 | 2018-10-30 | Microsoft Technology Licensing, Llc | Protected regions |
US9996479B2 (en) * | 2015-08-17 | 2018-06-12 | Micron Technology, Inc. | Encryption of executables in computational memory |
US9917687B2 (en) * | 2015-10-12 | 2018-03-13 | Microsoft Technology Licensing, Llc | Migrating secrets using hardware roots of trust for devices |
WO2017168228A1 (en) | 2016-03-08 | 2017-10-05 | Marvell World Trade Ltd. | Methods and apparatus for secure device authentication |
SG10201602449PA (en) * | 2016-03-29 | 2017-10-30 | Huawei Int Pte Ltd | System and method for verifying integrity of an electronic device |
US10896267B2 (en) * | 2017-01-31 | 2021-01-19 | Hewlett Packard Enterprise Development Lp | Input/output data encryption |
CN108108631A (zh) * | 2017-11-29 | 2018-06-01 | 晨星半导体股份有限公司 | 一种根密钥处理方法及相关装置 |
US10757087B2 (en) | 2018-01-02 | 2020-08-25 | Winbond Electronics Corporation | Secure client authentication based on conditional provisioning of code signature |
US11314858B2 (en) * | 2018-10-10 | 2022-04-26 | Comcast Cable Communications, Llc | Event monitoring |
CN113496016A (zh) * | 2020-04-08 | 2021-10-12 | 深圳市中兴微电子技术有限公司 | 一种内存的访问方法、系统级芯片和电子设备 |
US11416621B2 (en) * | 2020-06-18 | 2022-08-16 | Micron Technology, Inc. | Authenticating software images |
US11728997B2 (en) * | 2020-09-08 | 2023-08-15 | Micron Technology, Inc. | Cloud-based creation of a customer-specific symmetric key activation database |
JP7391802B2 (ja) * | 2020-09-11 | 2023-12-05 | 株式会社東芝 | 情報処理装置、情報処理方法及びコンピュータプログラム |
US11580215B2 (en) * | 2020-09-14 | 2023-02-14 | Micron Technology, Inc. | Authenticating software images |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4168396A (en) | 1977-10-31 | 1979-09-18 | Best Robert M | Microprocessor for executing enciphered programs |
US4465901A (en) | 1979-06-04 | 1984-08-14 | Best Robert M | Crypto microprocessor that executes enciphered programs |
US6822553B1 (en) | 1985-10-16 | 2004-11-23 | Ge Interlogix, Inc. | Secure entry system with radio reprogramming |
US4920483A (en) | 1985-11-15 | 1990-04-24 | Data General Corporation | A computer memory for accessing any word-sized group of contiguous bits |
US4797853A (en) | 1985-11-15 | 1989-01-10 | Unisys Corporation | Direct memory access controller for improved system security, memory to memory transfers, and interrupt processing |
US4951249A (en) * | 1986-10-24 | 1990-08-21 | Harcom Security Systems Corp. | Method and apparatus for controlled access to a computer system |
US5144659A (en) | 1989-04-19 | 1992-09-01 | Richard P. Jones | Computer file protection system |
EP0463966B1 (en) * | 1990-06-29 | 1998-11-25 | Digital Equipment Corporation | High-performance multi-processor having floating point unit and operation method |
GB2255260B (en) | 1991-04-24 | 1995-06-14 | Mars Inc | Transaction systems |
US5421006A (en) | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5918007A (en) | 1992-05-27 | 1999-06-29 | International Business Machines Corporation | Trusted personal computer system with limited accessibility |
US5440713A (en) | 1992-05-29 | 1995-08-08 | Industrial Technology Research Institute | M-way N-port paged-interleaved memory system |
US5603081A (en) | 1993-11-01 | 1997-02-11 | Telefonaktiebolaget Lm Ericsson | Method for communicating in a wireless communication system |
SG48838A1 (en) | 1992-12-30 | 1998-05-18 | Telstra Corp Ltd | A method and apparatus for generating a cipher |
US5561817A (en) | 1993-08-16 | 1996-10-01 | Thermo King Corporation | Method of securely controlling direct memory access (DMA) of a shared memory by a DMA device on an expansion board |
US5841868A (en) | 1993-09-21 | 1998-11-24 | Helbig, Sr.; Walter Allen | Trusted computer system |
US5491827A (en) | 1994-01-14 | 1996-02-13 | Bull Hn Information Systems Inc. | Secure application card for sharing application data and procedures among a plurality of microprocessors |
US5805706A (en) * | 1996-04-17 | 1998-09-08 | Intel Corporation | Apparatus and method for re-encrypting data without unsecured exposure of its non-encrypted format |
US5564054A (en) * | 1994-08-25 | 1996-10-08 | International Business Machines Corporation | Fail-safe computer boot apparatus and method |
US5544255A (en) | 1994-08-31 | 1996-08-06 | Peripheral Vision Limited | Method and system for the capture, storage, transport and authentication of handwritten signatures |
US5893921A (en) | 1995-02-10 | 1999-04-13 | International Business Machines Corporation | Method for maintaining memory coherency in a computer system having a cache utilizing snoop address injection during a read transaction by a dual memory bus controller |
US5610980A (en) * | 1995-02-13 | 1997-03-11 | Eta Technologies Corporation | Method and apparatus for re-initializing a processing device and a storage device |
US5757915A (en) | 1995-08-25 | 1998-05-26 | Intel Corporation | Parameterized hash functions for access control |
DE19536169A1 (de) | 1995-09-29 | 1997-04-03 | Ibm | Multifunktionale Chipkarte |
US6577734B1 (en) * | 1995-10-31 | 2003-06-10 | Lucent Technologies Inc. | Data encryption key management system |
US5809230A (en) * | 1996-01-16 | 1998-09-15 | Mclellan Software International, Llc | System and method for controlling access to personal computer system resources |
US5825878A (en) | 1996-09-20 | 1998-10-20 | Vlsi Technology, Inc. | Secure memory management unit for microprocessor |
US5937063A (en) * | 1996-09-30 | 1999-08-10 | Intel Corporation | Secure boot |
US6101543A (en) | 1996-10-25 | 2000-08-08 | Digital Equipment Corporation | Pseudo network adapter for frame capture, encapsulation and encryption |
US5757919A (en) | 1996-12-12 | 1998-05-26 | Intel Corporation | Cryptographically protected paging subsystem |
JPH10177560A (ja) | 1996-12-17 | 1998-06-30 | Ricoh Co Ltd | 記憶装置 |
US5887131A (en) | 1996-12-31 | 1999-03-23 | Compaq Computer Corporation | Method for controlling access to a computer system by utilizing an external device containing a hash value representation of a user password |
US5930824A (en) * | 1997-02-04 | 1999-07-27 | International Business Machines Corporation | System and method for demand-base data recovery |
DE19708616C2 (de) | 1997-03-03 | 1999-09-02 | Siemens Ag | Elektronische Datenverarbeitungseinrichtung und -system |
GB2325061B (en) | 1997-04-30 | 2001-06-06 | Advanced Risc Mach Ltd | Memory access protection |
US5935247A (en) | 1997-09-18 | 1999-08-10 | Geneticware Co., Ltd. | Computer system having a genetic code that cannot be directly accessed and a method of maintaining the same |
US6438666B2 (en) * | 1997-09-26 | 2002-08-20 | Hughes Electronics Corporation | Method and apparatus for controlling access to confidential data by analyzing property inherent in data |
US6023510A (en) | 1997-12-24 | 2000-02-08 | Philips Electronics North America Corporation | Method of secure anonymous query by electronic messages transported via a public network and method of response |
US6230269B1 (en) | 1998-03-04 | 2001-05-08 | Microsoft Corporation | Distributed authentication system and method |
US6226742B1 (en) | 1998-04-20 | 2001-05-01 | Microsoft Corporation | Cryptographic technique that provides fast encryption and decryption and assures integrity of a ciphertext message through use of a message authentication code formed through cipher block chaining of the plaintext message |
US6141756A (en) * | 1998-04-27 | 2000-10-31 | Motorola, Inc. | Apparatus and method of reading a program into a processor |
US6775778B1 (en) * | 1998-05-29 | 2004-08-10 | Texas Instruments Incorporated | Secure computing device having boot read only memory verification of program code |
EP0961193B1 (en) * | 1998-05-29 | 2010-09-01 | Texas Instruments Incorporated | Secure computing device |
US6182142B1 (en) | 1998-07-10 | 2001-01-30 | Encommerce, Inc. | Distributed access management of information resources |
US6385727B1 (en) * | 1998-09-25 | 2002-05-07 | Hughes Electronics Corporation | Apparatus for providing a secure processing environment |
US6116402A (en) | 1998-10-23 | 2000-09-12 | Coinstar, Inc. | Voucher coding for self-service coin discriminator |
US20020013911A1 (en) * | 1998-11-24 | 2002-01-31 | Cordella Robert H. | Compact hardware architecture for secure exchange of information and advanced computing |
US20020032867A1 (en) * | 1998-11-24 | 2002-03-14 | Kellum Charles W. | Multi-system architecture using general purpose active-backplane and expansion-bus compatible single board computers and their peripherals for secure exchange of information and advanced computing |
US6408387B1 (en) * | 1999-01-22 | 2002-06-18 | Intel Corporation | Preventing unauthorized updates to a non-volatile memory |
US6311255B1 (en) | 1999-04-29 | 2001-10-30 | International Business Machines Corporation | System and method for selectively restricting access to memory for bus attached unit IDs |
US6711684B1 (en) * | 1999-06-08 | 2004-03-23 | General Instrument Corporation | Variable security code download for an embedded processor |
US6609169B1 (en) * | 1999-06-14 | 2003-08-19 | Jay Powell | Solid-state audio-video playback system |
US20020042882A1 (en) * | 2000-10-10 | 2002-04-11 | Dervan R. Donald | Computer security system |
US7055038B2 (en) * | 2001-05-07 | 2006-05-30 | Ati International Srl | Method and apparatus for maintaining secure and nonsecure data in a shared memory system |
US20020184512A1 (en) * | 2001-05-31 | 2002-12-05 | Cardoso Augusto C. | Method and apparatus for supporting remote configuration to facilitate subscriber management |
US6971051B2 (en) * | 2002-01-10 | 2005-11-29 | Agilent Technologies, Inc. | System and method of recovering from soft memory errors |
-
2002
- 2002-04-18 US US10/125,803 patent/US6715085B2/en not_active Expired - Lifetime
-
2003
- 2003-04-16 RU RU2004133759/09A patent/RU2295834C2/ru not_active IP Right Cessation
- 2003-04-16 JP JP2003587052A patent/JP4464689B2/ja not_active Expired - Fee Related
- 2003-04-16 PL PL03372374A patent/PL372374A1/xx not_active Application Discontinuation
- 2003-04-16 CN CN038084309A patent/CN1647443B/zh not_active Expired - Fee Related
- 2003-04-16 EP EP03719812A patent/EP1500225A4/en not_active Withdrawn
- 2003-04-16 CA CA002481569A patent/CA2481569C/en not_active Expired - Lifetime
- 2003-04-16 KR KR1020047014979A patent/KR100809977B1/ko not_active IP Right Cessation
- 2003-04-16 EP EP06100430A patent/EP1648109B1/en not_active Expired - Lifetime
- 2003-04-16 WO PCT/US2003/011907 patent/WO2003090402A1/en active Application Filing
- 2003-04-16 AU AU2003223671A patent/AU2003223671A1/en not_active Abandoned
- 2003-10-22 US US10/691,632 patent/US6957335B2/en not_active Expired - Lifetime
- 2003-10-23 US US10/691,924 patent/US7356707B2/en active Active
-
2004
- 2004-10-20 IL IL164718A patent/IL164718A/en active IP Right Grant
-
2008
- 2008-10-03 JP JP2008258322A patent/JP4473330B2/ja not_active Expired - Fee Related
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369141B (zh) * | 2007-03-12 | 2011-04-20 | Secunet安全网络股份公司 | 用于可编程数据处理设备的保护单元 |
CN102081534A (zh) * | 2009-11-30 | 2011-06-01 | 英特尔公司 | 自动模块化且安全的引导固件更新 |
US8589302B2 (en) | 2009-11-30 | 2013-11-19 | Intel Corporation | Automated modular and secure boot firmware update |
CN102081534B (zh) * | 2009-11-30 | 2015-09-02 | 英特尔公司 | 自动模块化且安全的引导固件更新 |
US9483246B2 (en) | 2009-11-30 | 2016-11-01 | Intel Corporation | Automated modular and secure boot firmware update |
CN102222049A (zh) * | 2010-04-14 | 2011-10-19 | 微软公司 | 自加密存储设备的可扩展管理 |
CN102222049B (zh) * | 2010-04-14 | 2015-09-30 | 微软技术许可有限责任公司 | 自加密存储设备的可扩展管理 |
CN105580027B (zh) * | 2013-09-30 | 2019-03-29 | 高通股份有限公司 | 用于使用不同域特定密钥确保内容安全的方法 |
CN105580027A (zh) * | 2013-09-30 | 2016-05-11 | 高通股份有限公司 | 用于使用不同域特定密钥确保内容安全的方法 |
CN104320248A (zh) * | 2014-11-14 | 2015-01-28 | 中国建设银行股份有限公司 | 一种系统间密钥同步的方法及系统 |
CN107624178A (zh) * | 2015-06-26 | 2018-01-23 | 英特尔公司 | 快速归零的机柜式架构(rsa)和共享存储器控制器(smc)技术 |
CN107624178B (zh) * | 2015-06-26 | 2021-05-11 | 英特尔公司 | 快速归零的机柜式架构(rsa)和共享存储器控制器(smc)技术 |
CN107808099A (zh) * | 2016-09-08 | 2018-03-16 | 北京自动化控制设备研究所 | 嵌入式软件加密/解密系统及方法 |
CN107808099B (zh) * | 2016-09-08 | 2021-03-16 | 北京自动化控制设备研究所 | 嵌入式软件加密/解密系统及方法 |
CN110770733A (zh) * | 2017-08-17 | 2020-02-07 | 微芯片技术股份有限公司 | 用于在混合安全系统中对代码或数据的完整性检查并同时维护保密性的系统和方法 |
CN110770733B (zh) * | 2017-08-17 | 2023-05-26 | 微芯片技术股份有限公司 | 用于在混合安全系统中对代码或数据的完整性检查并同时维护保密性的系统和方法 |
CN112214758A (zh) * | 2019-07-09 | 2021-01-12 | 意法半导体(大西部)公司 | 用于管理经加密的软件应用的设备和方法 |
CN112241272A (zh) * | 2019-07-17 | 2021-01-19 | 郑州宇通客车股份有限公司 | 一种车载仪表及其升级方法、系统 |
CN112241272B (zh) * | 2019-07-17 | 2023-08-01 | 宇通客车股份有限公司 | 一种车载仪表及其升级方法、系统 |
Also Published As
Publication number | Publication date |
---|---|
EP1648109A2 (en) | 2006-04-19 |
JP2009032282A (ja) | 2009-02-12 |
RU2295834C2 (ru) | 2007-03-20 |
US20030200454A1 (en) | 2003-10-23 |
US7356707B2 (en) | 2008-04-08 |
KR20040101342A (ko) | 2004-12-02 |
WO2003090402A8 (en) | 2004-12-29 |
CN1647443B (zh) | 2010-05-05 |
US20040083375A1 (en) | 2004-04-29 |
CA2481569C (en) | 2008-10-07 |
JP2005523537A (ja) | 2005-08-04 |
RU2004133759A (ru) | 2005-08-27 |
EP1500225A4 (en) | 2007-12-12 |
IL164718A (en) | 2009-11-18 |
JP4464689B2 (ja) | 2010-05-19 |
KR100809977B1 (ko) | 2008-03-07 |
PL372374A1 (en) | 2005-07-25 |
US6715085B2 (en) | 2004-03-30 |
CA2481569A1 (en) | 2003-10-30 |
IL164718A0 (en) | 2005-12-18 |
AU2003223671A1 (en) | 2003-11-03 |
US6957335B2 (en) | 2005-10-18 |
EP1648109A3 (en) | 2007-12-26 |
WO2003090402A1 (en) | 2003-10-30 |
EP1648109B1 (en) | 2013-03-27 |
JP4473330B2 (ja) | 2010-06-02 |
US20040088559A1 (en) | 2004-05-06 |
EP1500225A1 (en) | 2005-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1647443A (zh) | 初始化、维护、更新和恢复利用数据访问控制功能的集成系统中的安全操作 | |
US9842212B2 (en) | System and method for a renewable secure boot | |
CN103210396B (zh) | 包括用于保护敏感代码和数据的架构的方法和装置 | |
CN1097772C (zh) | 在安全存储区中保护应用程序数据的方法和装置 | |
US8522042B2 (en) | Method and apparatus for enforcement of software licence protection | |
US8296849B2 (en) | Method and apparatus for removing homogeneity from execution environment of computing system | |
JP5175856B2 (ja) | セキュアデバイス・システムにおけるフラッシュメモリ・ブロックの保護と方法 | |
CN1148645C (zh) | 执行加密程序的装置 | |
US8214630B2 (en) | Method and apparatus for controlling enablement of JTAG interface | |
KR100792287B1 (ko) | 자체 생성한 암호화키를 이용한 보안방법 및 이를 적용한보안장치 | |
US8190912B2 (en) | Program development method, program development supporting system, and program installation method | |
CN102105883A (zh) | 电子装置以及电子装置的软件或固件更新的方法 | |
WO2019104988A1 (zh) | Plc的安全处理单元及其总线仲裁方法 | |
US20080115217A1 (en) | Method and apparatus for protection of a computer system from malicious code attacks | |
CN1914849A (zh) | 受信移动平台体系结构 | |
CN104221027A (zh) | 硬件和软件关联和认证 | |
CN1421000A (zh) | 生成用在隔离执行环境中的密钥层组 | |
CN1662869A (zh) | 休眠保护 | |
US20130340087A1 (en) | Software License Management | |
CN103617401A (zh) | 一种数据文件保护方法及装置 | |
CN1969500A (zh) | 防护软件 | |
CN103282913A (zh) | 用于加载至少一个软件模块的代码的方法 | |
CN102495986A (zh) | 计算机系统中实现避免加密数据被盗用的调用控制方法 | |
US11874928B2 (en) | Security device, electronic device, secure boot management system, method for generating boot image, and method for executing boot chain | |
KR101761799B1 (ko) | 단말의 보안 데이터 관리 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100505 |
|
CF01 | Termination of patent right due to non-payment of annual fee |