CN1423766A - 提供安全控制软件或固件代码下载和接收下载代码的计算装置的安全操作的方法和装置 - Google Patents
提供安全控制软件或固件代码下载和接收下载代码的计算装置的安全操作的方法和装置 Download PDFInfo
- Publication number
- CN1423766A CN1423766A CN 01808148 CN01808148A CN1423766A CN 1423766 A CN1423766 A CN 1423766A CN 01808148 CN01808148 CN 01808148 CN 01808148 A CN01808148 A CN 01808148A CN 1423766 A CN1423766 A CN 1423766A
- Authority
- CN
- China
- Prior art keywords
- certifying signature
- code
- code block
- storage unit
- calculation element
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
-
- 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/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- 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/572—Secure firmware programming, e.g. of basic input output system [BIOS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
Abstract
用于安全下载软件的方法和系统包括接收下载代码块的主处理器,这些代码块与从代码块的内容导出的计算验证签名相关联。安全处理器从下载的代码块内容再计算该验证签名并将计算的验证签名与同代码块一起接收的验证签名进行比较。如果签名不匹配或下载数据没有附有签名,则安全处理器确定该代码是来自越权发送端或在传送时被改动、也许含有病毒。于是安全处理器采取适当的保护行动。
Description
发明领域
本发明涉及向接收计算装置、例如机顶终端,发送软件或固件编程代码的领域。本发明还涉及以一种安全方式控制向接收计算装置下载此类代码、使得代码中不允许有任何的病毒或更动、而且该代码不能自由地转发给其它的计算装置的领域。本发明还涉及执行下载程序代码的计算装置的安全操作、以防止计算装置被用来越权接入一些服务的领域。本发明还涉及安全操作计算装置、以便防止执行可能损害计算装置或导致其以越权方式工作的病毒或其它代码的领域。
发明背景
在当今社会中,由于数据网络,例如公众电话网、万维网以及有线和卫星电视的出现,通信业有了极大的进展。特别是有了万维网和其他计算机网络,消息以及甚至可执行的软件都可容易地发送到远处。软件的电子传送可用来进行这种软件的商业分销、或者用来将购买人的或连接到网络的数据终端的现有软件升级。
虽然这种容易的接入软件和其他信息非常有价值,也很有优势,但对安全的关注也日益增强。计算网络主要是互联网的普遍问题就是会破坏数据以及损害计算机系统工作的计算机病毒的传播。
另一个问题就是软件的越权共享和复制。这种复制对于投入了重大资源来创建该软件的版权所有人来说可真是代价昂贵。
在有线电视系统方面,这种关注也日益增强。在有线电视系统中,机顶终端或机顶盒通常是由有线电视公司提供给它的用户的。机顶终端连接在例如有线系统的输出端和用户的电视机或电脑之间。这样机顶终端就可接收来自有线系统运营商的前端设备的有线电视信号。
机顶终端可实现各种功能。例如,机顶终端可控制用户对有线网络一些特殊频道的接入。如果用户没有预定“收费频道”,机顶终端可限制用户接入那些频道。另一方面,机顶终端允许用户接入他已预定了的那些收费频道。
另外,当前还有一种趋势是将各种可用的数据网络结合在一起,这样每个家庭或办公室只需对信息高速公路有单一的连接即可。这种趋势的一个实例就是有线电视网络在不断发展其提供接入互联网的能力。在这种系统中,机顶终端可以是一个带调制解调器的增强终端,既可连接到互联网,又可连接到有线电视信号。
机顶终端通常包括由其中央处理器执行的软件和固件,在执行时使终端能够完成所调用的各种功能。关于机顶终端的软件和固件,有至少四个主要的关注方面。
首先,需要防止用户改变机顶盒中的软件和固件,以免用户越权接入他未付费的有线网络提供的服务。有线系统运营商的商业生存能力取决于能否防止对系统服务的越权和未付费的接入。这类服务实际上可包括任何电子数据服务,例如,多个电视频道,付费频道,按画面计费的节目,视频点播节目,互联网接入,电子邮件,电话等。
有关的一个问题还在于:改变机顶装置中的软件和固件的越权试图可能会损坏终端或使其失效。这是有线系统运营商特别关注的问题,如果机顶盒的所有权由有线系统运营商保留的话,而现在常常就是这种情况。另外,也会对机顶盒制造商的信誉造成损坏,特别是如果机顶盒的失效原因、即违法对机顶盒作改动、被成功地隐瞒的话。
对机顶盒的软件和固件作非法改动也会对有线系统本身产生不利的影响。这种不利的影响甚至会扩大到致使部分或全部有线系统失效。这一后果可能是有意的或无意的。不论那种情况,有线系统的运营商都会由于有线系统的损坏或客户的不满意而受到严重伤害。
第二,应保护机顶盒的软件和固件,使之不能有意和恶意引入会损害机顶终端功能的计算机病毒。在机顶终端用来连接到互联网时,这一点特别重要。
第三,由于有线系统的发展、或者由于用户要求附加的服务或取消不再需要的服务,需要对机顶盒的软件和固件进行定期升级或更改。对机顶终端作这种更改的优选装置就是通过有线网络本身下载已升级或更改的软件或固件。这就不需要技术员去拜访机顶终端的所在位置。但这就需要在新的软件或固件被下载时提供某种安全性,使其在被接收和存储在机顶终端中时不被更改。
第四,机顶终端的软件和固件通常是专有的并且代表了大笔投资。因此,应防止机顶终端的软件和固件被非法复制,例如,用在另一个机顶终端上。
因此,技术上需要一种方法和系统、它能安全下载软件和固件、特别是对有线电视系统的机顶终端,以确保软件或固件是在授权的、没有更改或引入病毒的情况下被发送的。技术上还需要一种方法和系统、它防止由终端存储和执行的软件或固件被更改从而越权接入一些服务。技术上还需要一种方法和系统、它防止非法复制软件或固件供越权使用,特别是从机顶终端非法复制软件或固件。
发明概述
本发明的一个目的就是满足上述和其他需要。具体的说,本发明的一个目的就是提供一种方法和系统、用以安全下载软件和固件、特别是对有线电视系统的机顶终端、以防止在传输时对所述软件和固件的越权更改或将计算机病毒引入所述软件和固件。本发明的另一目的是提供一种方法和系统、用于防止越权复制软件和固件,特别是对有线电视系统的机顶终端中的软件和固件的越权复制。
在本说明书中将阐述本发明的其他目的,优点和新颖的特征,本专业的技术人员通过阅读这些材料或实践本发明可以领会或了解这些目的、优点和特征。本发明的目的和优点可以通过所附权利要求阐述的装置达到。
为了达到上述和其他目的,可以将本发明描述为向计算装置安全传送编程代码的系统。在主要的实施例中,本发明的系统包括:连接到输入数据线的主处理器,用来接收编程代码块,每个块都与从代码块的内容中导出的验证签名相关联;存储编程代码块的存储单元;以及安全处理器,用以独立地为每个编程代码块计算验证签名并将计算的验证签名与同所述代码块一起传送的验证签名对比。如果计算的验证签名不能与传送的验证签名一致,安全处理器就采取适当的行动,例如从存储器中清除未验证的代码块,或禁用计算装置。
可以提供连接到安全处理器的第二个隔离的存储单元来存储安全处理器计算验证签名所需的数据。安全处理器可连续地再验证存储单元存储的编程代码块以确保它们的连续合法性。
主处理器,存储单元和安全处理器都由存储器总线互连。为了避免主处理器和安全处理器之间的冲突,安全处理器最好只在主处理器不用存储器总线的总线周期时访问存储单元。提供一个存储器总线控制器来控制这种安排并控制主处理器和安全处理器接入到存储器总线。
存储单元最好包括中间存储器和静态存储器。主处理器最初将下载的代码块写入中间存储器。在安全处理器验证了代码块后,代码块再被输送到静态存储器。
在优选实施例中,计算装置是包含有主处理器、存储单元和安全处理器的机顶终端。输入数据线是连接到有线电视系统的连线。
在这样的实施例中,可以把权利管理消息与编程代码块相关联。除非该权利管理消息与存储在安全处理器中的预定权利管理消息相匹配,安全处理器将制止进一步存储、使用或执行这些编程代码块。这允许通过不加区别地向系统中向所有机顶终端广播新的编程代码来对有选择的机顶终端重新编程。
作为附加的安全措施,代码块在被主处理器接收时可以加密。此时安全处理器最好包括解密程序,例如可执行的解密软件,以便将被加密的代码块解密。
本发明还包括一种方法,用于对计算装置作编程代码安全传输、更重要的是、用于监控和确保存储在计算装置中的编程代码的连续完整性。利用上述系统的固有原理,该方法还包括以下主要步骤:用一种算法对接收到的或存储在存储单元中的一个或多个编程代码块中每一个代码块计算验证签名,根据该编程代码块的数值内容来计算验证签名;以及将计算的验证签名与同所述编程的块相关联地传输或存储的传输的验证签名相比较,所述传输的验证签名是利用同一算法产生的。
本发明还包括用于将编程代码安全传输到计算装置的第二系统。该第二系统包括:连接到输入数据线的主处理器,用来接收编程代码块,每个块都与从代码块的内容中导出的验证签名相关联;存储编程代码块的存储单元;以及靠主处理器运行的后台软件任务,用于利用与合法发送端相同的方法独立地对每个编程代码块计算验证签名、并将该计算的验证签名与同该代码块一起传输的验证签名对比。如前所述,如果计算的验证签名不能与传送的验证签名相匹配,则该后台软件就可禁用该计算装置。
如果存储单元包括中间存储器和静态存储器,那么,当后台软件任务验证了代码块后,那些代码块就可被输送到静态存储器中。如果把权利管理消息与编程代码块相关联,那么,除非该权利管理消息与存储在计算装置中的预定权利管理消息相匹配,后台软件任务可制止进一步存储、使用或执行这些编程代码块。
附图简要说明
附图举例说明本发明并且是本说明书的一部分。附图与以下的描述一起展示并解释了本发明的原理。
图1是根据本发明的计算装置、例如有线电视系统的机顶终端的第一实施例。
图2是根据本发明的计算装置的第二实施例。
优选实施例的详细说明
现利用附图,对本发明的优选实施例作解释。图1示出根据本发明的一种计算装置(100)。计算装置(100)可以是通过数据线(106)从远处的(数据)源下载软件和固件并将它们存储备以后执行的任何装置。在优选实施例中,计算装置(100)是有线电视系统中的机顶终端,而数据线(106)是连接到有线信号提供商的外部连线。但是,另一方面,数据线(106)也可以连接到计算机装置的任何外部端口、或者是计算装置(100)的内部数据线、通过该数据线可将编程代码引入到装置(100)、具体地说、引入到主处理器(101)中。此处所用的编程“代码”包括(但不限于):引导程序代码;BIOS(基本输入/输出软件)代码;操作系统软件或固件;装置驱动程序软件或固件;应用软件(例如,web浏览器,电子程序引导,电子邮件,聊天室等);网页;以及图形图像。
根据本发明的原理,计算装置(100)包括两个不同的处理器。第一个是主处理器(101),它可以是例如中央处理单元。主处理器(101)是执行目标代码实现计算装置(100)的功能的处理器。第二处理器是安全处理器,用来验证通过数据线(106)下载的代码,以便防止引入病毒或在传输中已被更改的代码或越权代码对象。安全处理器(102)可连续再验证存储单元(103)以前接收和存储的代码块,以防止对驻留在机顶终端(100)的可执行代码或数据作越权窜改或添加。
根据本发明的原理,当软件或固件是要被下载到计算装置(100)时,合法发送端会将正发送的代码分为块或分组。然后采用一种需要一个或多个密钥的算法,利用代码数据的每个块或分组的内容来计算验证签名,正如本专业的技术人员所了解的那样。
该数据块与计算的验证签名相关联地通过外部数据线(106)传送到主处理器(101)。主处理器(101)使用存储器总线(104)把下载的代码写入存储单元(103)。存储单元(103)可以是任何形式的非易失性的长期的电子数据存储装置,例如包括:电子存储装置、硬磁盘驱动器、或光盘或磁-光盘驱动器。
存储单元(103)分成存储块(块1到块N)。这些块可对应于存储单元(103)中存储数据的物理分区。存储块最好还可以对应于下载时软件或固件被分割成的数据块或分组。
安全处理器(102)具有连接到存储器总线(104)、再连接到存储单元(103)的连线(105)。在软件或固件下载到存储单元(103)以后,安全处理器(102)将访问每个存储块。将安全处理器(102)编程、以便复制合法代码发送端使用的算法、产生每个代码块的验证签名。
这样,安全处理器(102)就可验证由主处理器(101)接收并存储在存储单元(103)中的代码。另一种方案是,代码块最初由安全处理器(102)接收,而不由主处理器(101)接收。此时,安全处理器(102)验证代码块,然后将它们存储到存储器(103)中。可以使用单独的中间存储器或存储单元(103)的指定部分来存储安全处理器(102)已验证的代码块,然后清除这些代码块,把它们存储到存储单元(103)的长期存储器中。
现在更详细地说明验证过程。安全处理器(102)利用每个存储块的代码作为输入,根据代码块的数值内容和合法发送端使用的任何密钥,重新计算验证签名。安全处理器(102)计算出的验证签名与同该代码块相关联地传送的验证签名由安全处理器(102)进行比较。
如果签名匹配,该存储块的代码就被验证为是由授权发送端发送的,没有更改,也没有引入危险的病毒。另一方面,如果验证签名不匹配、或者所述数据块完全不包含验证签名,则安全处理器(102)确定该代码在传输时已被更改、也许包括了病毒、或该代码是由无权对计算装置(100)进行再编程的越权发送端所发送。于是安全处理器(102)可以擦除或禁用该(这些)掺假的存储块。
或者,安全处理器(102)可禁用整个计算装置(100),需要技术人员的干预或系统操作员的信号来重新初始化装置(100)。这可帮助服务提供商识别试图越权改变计算装置(100)中的软件或固件的个人。如果计算装置(100)是有线电视系统中的机顶终端时、如在本优选实施例中那样,则该特征特别重要。
可以对安全处理器(102)进行硬布线或固定布线来计算数据块的验证签名。更灵活一些,安全处理器(102)可以通过执行内部存储装置或外部存储单元(110)的指令来工作。
由于对越权或掺假的编程响应来自于相对隔离的安全处理器(102)而不是主处理器(101),本身就更难于预期和消除。因此,本发明的这种包括两个不同处理器的系统本身就比以前的系统更为安全。
除了验证计算装置(100)新接收到的代码块外,安全处理器(102)最好对存储单元(103)中的代码块进行定期扫描,重新验证这些代码块,以确保存储单元(103)中的代码未被越权方更改。重要的是要保护已存储在存储单元(103)中的可执行代码的连续完整性、以便防止引入新的、越权的、或掺假的代码。
可以使安全处理器不干扰计算装置(100)的工作或减慢其工作速度,方法是要求安全处理器(102)在“窃取的”总线周期中存储访问单元(103)的存储块。这意味着只允许安全处理器(102)在主处理器(101)忙于内部处理、没有访问存储器总线(104)的总线周期中才可访问存储单元(103)。
为此,最好设置存储器总线控制器(109)。存储器总线控制器(109)控制这两个处理器(101)和(102)对总线的访问。存储器总线控制器(109)也可直接监控总线(104)的活动。最好,存储器总线控制器(109)对主处理器(101)作出响应,当主处理器(101)不用存储器总线(104)时,存储器总线控制器(109)就允许安全处理器(102)访问存储器总线(104)。
由于安全处理器(102)“偷偷地使用”总线周期,安全处理器(102)就可用来不断地验证和重新验证存储单元(103)中的代码块以防窜改。而主处理器的速度不会受损,工作也不会受干扰。
作为附加的安全措施,也可以将安全处理器(102)编程为监测任意时段内它所接收到的总线周期数。如果安全处理器(102)可用的总线周期数下降到低于某一预定阈值,那么,可以将安全处理器(102)编程为认为机顶盒已被窜改。于是,安全处理器(102)可以起动适当的响应,例如关断机顶盒的工作和/或发信号给系统操作员通知此问题并请求授权技术员的服务呼叫。
本发明也可用来防止为了用于另一台计算装置而对计算装置(100)中的代码进行越权复制。如果复制该代码的第二台计算装置也有安全处理器(102),则该处理器(102)没有原来的安全处理器所持有的算法和/或密钥就不能验证非法复制的代码。
或者,如果复制该代码的第二台计算装置不验证代码块,那么,正如本专业的技术人员所知道的嵌入代码中的验证签名就可用来破坏未编程为识别、提取和利用该验证签名的计算机对所述代码的正常执行。
为了更加安全,可以将通过数据线(106)下载的代码加密。于是,安全处理器(102)还可用来对存储单元(103)中的代码逐块解密。这种加密可进一步防止越权复制代码用于它处。
在本发明用于有线电视系统的机顶终端时,会发生一个问题,即有些接收付费服务的用户的机顶终端需要接收升级的软件,而另一些接收其他服务或较少服务的用户却不需要编程的修改。本发明也可解决此问题,方法是在传送的代码块上附加权利管理消息。该权利管理消息可以附在或嵌入在验证签名中,或可以是完全单独的字符串。
权利管理消息会指明那一类机顶终端要接收并执行下载的代码。然后安全处理器(102)将下载代码中的权利管理消息与安全处理器(102)所在的终端(100)所特有的补充消息进行比较。该补充权利管理消息可存储在存储单元(113)中。
如果安全处理器(102)的该补充权利管理消息与同下载代码关联的权利管理消息相匹配,则安全处理器(102)继续进行验证并允许以后存储、使用或执行下载的代码。这样,代码可以通过有线网络广播到系统中所有的机顶终端,但只有选择的一些机顶终端接收和执行新的代码。
安全处理器(102)还可以在代码被执行时确保存储在存储单元(103)中的编程代码的完整性方面起作用。例如,在主处理器(101)执行存储的编程代码之前,代码要从长期存储器、例如FLASH存储器转存到RAM(随机存取存储器)中。安全处理器(102)可用来将代码从长期存储器转存到RAM中并能重新验证该次转存的每个代码块。
图2示出本发明的第二实施例。该实施例的原理是设置了用以存储下载的代码的第二存储单元。利用两个存储单元存储代码,其中一个存储单元用作临时的或中间存储区,最初将下载的数据写入并存储其中直到数据被安全处理器(102)验证。在安全处理器(102)验证了下载的代码后,该代码就从临时存储区转存到长期、静态存储器中,需要时主处理器(101)访问该静态存储器并执行此代码。
如图2所示,第二存储单元(200)被连接(201)到存储器总线(104)。第二存储单元(200)可以是硬盘驱动器或某种其他存储装置、也可外接到计算装置(100)。根据具体的应用,存储单元(200)或(103)都可用作临时存储器、也都可用作长期存储器。
不采用两个单独的存储单元的本发明的另一途径是要具有安全软件或作为后台任务运行在主处理器(101)上的固件任务。这种安全任务可以完成安全处理器(102)的上述全部功能,包括:(a)不断扫描被保护的存储器,确认验证签名;(b)验证存储块失败后,禁止计算装置的功能;(c)作为后台验证过程的一部分,检查权利消息,从而启用应用程序的存取控制;(d)可能的地址分辨和下载代码的链接。
如果安全任务能精心设计成不能被窃取或破坏,则使用后台软件任务提供了一种简单的途径来获得本发明的许多优点,不需要用上述具有两个处理器(101和102)的装置来更换现有的计算装置。
后台任务也可用一个如果不能由后台任务定期提醒就会超时的“监视器”任务作备份。这样,如果后台任务由于某种原因被消除或去激活,监视器任务就不再被提醒,于是采取适当的行动,例如停用该机顶终端和/或通过前端设备发信号给系统操作员。
上述描述只是为了说明本发明。这不是详尽无遗的,也不是想将本发明限制在任何准确描述的形式。根据上述说明有可能作许多更改和变动。
对优选实施例的选择和说明是为了最好地解释本发明的原理及其实际应用。上述说明是为了使本专业的技术人员能最好地在各种实施例中利用本发明,并设想适合于具体使用的各种改动。本发明的范围应由以下的权利要求书来定义。
Claims (28)
1.一种用于向计算装置安全传送编程代码的系统,该系统包括:
接收编程代码块的数据线;
执行编程代码块的主处理器,每个编程代码块都与从所述代码块的内容中导出的验证签名相关联;
存储所述编程代码块供所述主处理器使用的存储单元;以及
安全处理器,用于独立地为每个所述编程代码块计算验证签名并将所述计算的验证签名与同所述代码块相关联地发送或存储的所述验证签名进行比较。
2.如权利要求1所述的系统,其特征在于:如果所述计算的验证签名与所述发送的验证签名不匹配,则所述安全处理器禁止所述计算装置。
3.如权利要求1所述的系统,其特征在于:如果所述计算的验证签名与所述发送的验证签名不匹配,则所述安全处理器复位所述计算装置。
4.如权利要求1所述的系统,其特征在于:如果所述计算的验证签名与所述传送的验证签名不匹配,则所述安全处理器发信号要求用于所述计算装置的授权服务呼叫。
5.如权利要求1所述的系统,其特征在于:所述主处理器、所述存储单元和所述安全处理器通过存储器总线互连,并且所述安全处理器仅在所述主处理器不使用所述存储器总线的总线周期中才访问所述存储单元。
6.如权利要求5所述的系统,其特征在于还包括存储器总线控制器,用来控制所述主处理器和所述安全处理器对所述存储器总线的访问。
7.如权利要求1所述的系统,其特征在于:
所述存储单元包括中间存储器和静态存储器;
通过所述数据总线接收的新的代码块被写入所述中间存储单元;以及
在所述安全处理器验证了所述代码块后,所述代码块被转存到所述静态存储器。
8.如权利要求1所述的系统,其特征在于还包括与所述编程代码块相关联的权利管理消息,其中,除非所述权利管理消息与存储在所述安全处理器中的预定权利管理消息相匹配,所述安全处理器将制止进一步存储、使用或执行所述编程代码块。
9.如权利要求1所述的系统,其特征在于:
所述计算装置是包括所述主处理器,所述存储单元和所述安全处理器的机顶终端;以及
所述数据线是连接到有线电视系统的连线。
10.如权利要求1所述的系统,其特征在于还包括连接到所述安全处理器的第二个隔离的存储单元。
11.如权利要求1所述的系统,其特征在于:所述安全处理器定期重新验证存储在所述存储单元中的所述编程代码块。
12.如权利要求1所述的系统,其特征在于:所述编程代码块在由所述主处理器接收时被加密,所述安全处理器还包括解密程序、用于对所述加密的代码块解密。
13.一种用于向计算装置安全传送编程代码的方法,该方法统包括:
用一种算法对新接收或存储在存储单元的一个或多个编程代码块中的每一个计算验证签名,所述验证签名是根据该编程代码块的数值内容计算的;以及
将所述计算的验证签名与同该代码块相关联地发送或存储的验证签名进行比较。所述发送的验证签名利用所述算法产生的。
14.如权利要求13所述的方法,其特征在于:如果所述计算的验证签名与所述传送的验证签名不匹配,则所述方法禁止所述计算装置。
15.如权利要求13所述的方法,其特征在于:所述计算和比较是利用与执行所述代码块的主处理器分开的第二安全处理器进行的。
16.如权利要求15所述的方法,其特征在于还包括:利用存储器总线访问所述存储器单元中的所述代码块,以便所述安全处理器仅在所述主处理器不使用所述存储器总线的总线周期中进行验证。
17.如权利要求13所述的方法,其特征在于还包括:在所述计算的验证签名与所述发送的验证签名匹配后将所述代码块从所述存储单元的中间存储器转存到所述存储单元的静态存储器。
18.如权利要求13所述的方法,其特征在于还包括:
接收与所述编程代码块相关联的权利管理消息;
仅当所述权利管理消息与存储在所述计算装置中的预定的权利管理消息相匹配时,才存储并执行所述编程代码块。
19.如权利要求13所述的方法,其特征在于还包括:重复进行所述计算和比较以便重新验证存储在所述存储单元中的所述编程代码块。
20.如权利要求13所述的方法,其特征在于还包括:对接收的加密形式的所述编程代码块进行解码。
21.一种用于向计算装置安全传送编程代码的系统,该系统包括:
连接到输入数据线的用来接收编程的代码块的主处理装置,每个所述编程的代码块与从该代码块的内容导出的验证签名相关联;
存储所述编程代码块的存储装置;以及
安全处理装置,它可独立地为每个所述编程代码块计算验证签名并将所述计算的验证签名与同该代码块一起发送的所述验证签名进行对比。
22.一种用于向计算装置安全传送编程代码的系统,该系统包括:
连接到输入数据线的用来接收编程的代码块的主处理装置,每个所述编程的代码块与从该代码块的内容导出的验证签名相关联;
存储所述编程代码块的存储装置;以及
运行在所述主处理器上的后台软件任务,用于独立地为每个所述编程代码块计算验证签名并将所述计算的验证签名与同该代码块一起发送的所述验证签名进行对比。
23.如权利要求22所述的系统,其特征在于:如果所述计算的验证签名与所述传送的验证签名不匹配,则所述后台软件任务禁止所述计算装置。
24.如权利要求22所述的系统,其特征在于:如果所述计算的验证签名与所述传送的验证签名不匹配,则所述后台软件任务复位所述计算装置。
25.如权利要求22所述的系统,其特征在于:如果所述计算的验证签名与所述传送的验证签名不匹配,则所述后台软件任务发出关于所述计算装置的服务呼叫信号。
26.如权利要求22所述的系统,其特征在于:
所述存储单元包括中间存储器和静态存储器;
所述主处理器将所述下载的代码块写入所述中间存储单元;以及
在所述后台软件任务验证了所述代码块后,所述代码块被转存到所述静态存储器。
27.如权利要求22所述的系统,其特征在于还包括与所述编程代码块相关联的权利管理消息,其中,除非所述权利管理消息与存储在所述计算装置中的预定权利管理消息相匹配,所述后台软件任务将制止进一步存储、使用或执行所述编程代码块。
28.如权利要求22所述的系统,其特征在于:
所述计算装置是包括所述主处理器和所述存储单元的机顶终端;以及
所述输入数据线是连接到有线电视系统的连线。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US50589000A | 2000-02-17 | 2000-02-17 | |
US09/505,890 | 2000-02-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1423766A true CN1423766A (zh) | 2003-06-11 |
Family
ID=24012310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 01808148 Pending CN1423766A (zh) | 2000-02-17 | 2001-02-12 | 提供安全控制软件或固件代码下载和接收下载代码的计算装置的安全操作的方法和装置 |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP1256042B1 (zh) |
KR (1) | KR20020075439A (zh) |
CN (1) | CN1423766A (zh) |
AU (1) | AU2001243147A1 (zh) |
CA (1) | CA2400204C (zh) |
DE (1) | DE60112045T2 (zh) |
TW (1) | TW487880B (zh) |
WO (1) | WO2001061437A2 (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100361039C (zh) * | 2004-06-30 | 2008-01-09 | 富士通株式会社 | 安全处理器 |
CN100375422C (zh) * | 2003-06-23 | 2008-03-12 | 国际商业机器公司 | 鉴别代码和/或数据的方法和系统 |
CN100416497C (zh) * | 2004-03-18 | 2008-09-03 | 微软公司 | 用于用户信任决策的具有专家的智能推荐系统和方法 |
WO2009129687A1 (zh) * | 2008-04-25 | 2009-10-29 | 中兴通讯股份有限公司 | Wimax终端及其启动方法 |
CN101256613B (zh) * | 2007-02-27 | 2010-09-22 | 富士通半导体股份有限公司 | 无需制造者和用户知道彼此的加密信息的安全处理器系统 |
CN101960460A (zh) * | 2008-02-27 | 2011-01-26 | 微软公司 | 安全文件传输及名声查找 |
CN101589399B (zh) * | 2006-09-27 | 2012-11-14 | 信托逻辑流动有限公司 | 用于保护数据的系统和方法 |
CN101822038B (zh) * | 2007-07-10 | 2013-01-02 | 纳格拉影像股份有限公司 | 向接收设备发送可执行代码的方法和执行该代码的方法 |
CN102882840A (zh) * | 2011-03-04 | 2013-01-16 | 美国博通公司 | 一种通信设备及通信方法 |
CN103369148A (zh) * | 2013-07-30 | 2013-10-23 | 东莞宇龙通信科技有限公司 | 终端和数据处理方法 |
CN103955653A (zh) * | 2014-04-17 | 2014-07-30 | 福建鼎恩协创电子科技有限公司 | 一种防破解的安全系统、pos机及方法 |
CN104067283A (zh) * | 2012-01-25 | 2014-09-24 | 赛门铁克公司 | 识别移动环境的木马化应用程序 |
CN105095696A (zh) * | 2015-06-25 | 2015-11-25 | 三星电子(中国)研发中心 | 对应用程序进行安全认证的方法、系统及设备 |
CN106133739A (zh) * | 2014-03-25 | 2016-11-16 | 欧贝特科技公司 | 数据到安全元件的非易失性存储器中的加载的安全保护 |
US9652614B2 (en) | 2008-04-16 | 2017-05-16 | Microsoft Technology Licensing, Llc | Application reputation service |
CN107124425A (zh) * | 2017-05-26 | 2017-09-01 | 北京立思辰新技术有限公司 | 监测设备安全的方法及计算设备 |
CN107451468A (zh) * | 2017-07-14 | 2017-12-08 | 杭州谷逸网络科技有限公司 | 一种控制设备的在线安全检测实现方法 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7376625B2 (en) * | 2001-11-15 | 2008-05-20 | Nokia Corporation | System and method for activating individualized software modules in a digital broadcast environment |
FR2850228B1 (fr) * | 2003-01-17 | 2006-01-27 | Soft Technology | Procede pour garantir l'integrite d'au moins un logiciel transmis a un module de chiffrement/dechiffrement et supports d'enregistrement pour mettre en oeuvre le procede |
EP1465038B1 (en) * | 2003-04-03 | 2013-03-27 | STMicroelectronics (Research & Development) Limited | Memory security device for flexible software environment |
US7401234B2 (en) * | 2004-03-01 | 2008-07-15 | Freescale Semiconductor, Inc. | Autonomous memory checker for runtime security assurance and method therefore |
EP1850258A3 (en) | 2004-04-02 | 2008-01-16 | Matsushita Electric Industrial Co., Ltd. | Unauthorized contents detection system |
US8251791B2 (en) | 2004-08-19 | 2012-08-28 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US7374080B2 (en) * | 2004-11-10 | 2008-05-20 | Texas Instruments Incorporated | System and method for securing the initialization of an inherently non-secure Smartcard controller |
EP1760618A1 (de) * | 2005-08-30 | 2007-03-07 | Fujitsu Siemens Computers GmbH | Verfahren, Datenverarbeitungsvorrichtung und Computerprogrammprodukt zur Authentifizierung und Durchführung einer Wartungsfunktion |
US8512130B2 (en) | 2006-07-27 | 2013-08-20 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US8992306B2 (en) | 2007-07-30 | 2015-03-31 | Igt | Gaming system and method providing variable payback percentages |
US7985133B2 (en) | 2007-07-30 | 2011-07-26 | Igt | Gaming system and method for providing an additional gaming currency |
US8900053B2 (en) | 2007-08-10 | 2014-12-02 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US9142097B2 (en) | 2007-10-26 | 2015-09-22 | Igt | Gaming system and method for providing play of local first game and remote second game |
IL187044A0 (en) * | 2007-10-30 | 2008-02-09 | Sandisk Il Ltd | Fast secure boot implementation |
US9039516B2 (en) | 2009-07-30 | 2015-05-26 | Igt | Concurrent play on multiple gaming machines |
US8814661B2 (en) | 2011-12-20 | 2014-08-26 | Igt | Gaming machines having normal and hot modes |
US9875618B2 (en) | 2014-07-24 | 2018-01-23 | Igt | Gaming system and method employing multi-directional interaction between multiple concurrently played games |
US9972171B2 (en) | 2015-09-24 | 2018-05-15 | Igt | Gaming system and method for providing a triggering event based on a collection of units from different games |
FR3044786B1 (fr) * | 2015-12-07 | 2018-07-13 | Ingenico Group | Procede de chargement d'une ressource informatique au sein d'un dispositif electronique, module electronique et programme d'ordinateur correspondant |
DE102016106819A1 (de) * | 2016-04-11 | 2017-10-26 | Endress+Hauser Conducta Gmbh+Co. Kg | Verfahren zur Aktualisierung einer Firmware-Komponente und Gerät der Mess- und Regeltechnik |
US10481900B2 (en) | 2016-04-11 | 2019-11-19 | Endress+Hauser Conducta Gmbh+Co. Kg | Method for updating a firmware component and device of measurement and control technology |
GB201902470D0 (en) | 2019-02-22 | 2019-04-10 | Secure Thingz Ltd | Security data processing device |
EP3748523A1 (en) * | 2019-06-06 | 2020-12-09 | Secure Thingz Limited | Multiprocessor system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442645A (en) * | 1989-06-06 | 1995-08-15 | Bull Cp8 | Method for checking the integrity of a program or data, and apparatus for implementing this method |
US5757915A (en) * | 1995-08-25 | 1998-05-26 | Intel Corporation | Parameterized hash functions for access control |
US5958051A (en) * | 1996-11-27 | 1999-09-28 | Sun Microsystems, Inc. | Implementing digital signatures for data streams and data archives |
US5892904A (en) * | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
-
2001
- 2001-02-12 DE DE60112045T patent/DE60112045T2/de not_active Expired - Lifetime
- 2001-02-12 CN CN 01808148 patent/CN1423766A/zh active Pending
- 2001-02-12 KR KR1020027010750A patent/KR20020075439A/ko not_active Application Discontinuation
- 2001-02-12 AU AU2001243147A patent/AU2001243147A1/en not_active Abandoned
- 2001-02-12 CA CA2400204A patent/CA2400204C/en not_active Expired - Fee Related
- 2001-02-12 EP EP01916082A patent/EP1256042B1/en not_active Expired - Lifetime
- 2001-02-12 WO PCT/US2001/004424 patent/WO2001061437A2/en active IP Right Grant
- 2001-02-16 TW TW90103625A patent/TW487880B/zh not_active IP Right Cessation
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100375422C (zh) * | 2003-06-23 | 2008-03-12 | 国际商业机器公司 | 鉴别代码和/或数据的方法和系统 |
CN100416497C (zh) * | 2004-03-18 | 2008-09-03 | 微软公司 | 用于用户信任决策的具有专家的智能推荐系统和方法 |
CN100361039C (zh) * | 2004-06-30 | 2008-01-09 | 富士通株式会社 | 安全处理器 |
CN101589399B (zh) * | 2006-09-27 | 2012-11-14 | 信托逻辑流动有限公司 | 用于保护数据的系统和方法 |
CN101256613B (zh) * | 2007-02-27 | 2010-09-22 | 富士通半导体股份有限公司 | 无需制造者和用户知道彼此的加密信息的安全处理器系统 |
CN101822038B (zh) * | 2007-07-10 | 2013-01-02 | 纳格拉影像股份有限公司 | 向接收设备发送可执行代码的方法和执行该代码的方法 |
US9690939B2 (en) | 2008-02-27 | 2017-06-27 | Microsoft Technology Licensing, Llc | Safe file transmission and reputation lookup |
CN101960460A (zh) * | 2008-02-27 | 2011-01-26 | 微软公司 | 安全文件传输及名声查找 |
US8931090B2 (en) | 2008-02-27 | 2015-01-06 | Microsoft Corporation | Safe file transmission and reputation lookup |
US9652614B2 (en) | 2008-04-16 | 2017-05-16 | Microsoft Technology Licensing, Llc | Application reputation service |
US8627055B2 (en) | 2008-04-25 | 2014-01-07 | Zte Corporation | Wimax terminal for calculating a first hash value to a load command and firmware and comparing the first hash value to a second hash value from the executed load command and firmware |
WO2009129687A1 (zh) * | 2008-04-25 | 2009-10-29 | 中兴通讯股份有限公司 | Wimax终端及其启动方法 |
CN102882840A (zh) * | 2011-03-04 | 2013-01-16 | 美国博通公司 | 一种通信设备及通信方法 |
CN104067283A (zh) * | 2012-01-25 | 2014-09-24 | 赛门铁克公司 | 识别移动环境的木马化应用程序 |
CN103369148A (zh) * | 2013-07-30 | 2013-10-23 | 东莞宇龙通信科技有限公司 | 终端和数据处理方法 |
CN103369148B (zh) * | 2013-07-30 | 2016-10-05 | 东莞宇龙通信科技有限公司 | 终端和数据处理方法 |
CN106133739A (zh) * | 2014-03-25 | 2016-11-16 | 欧贝特科技公司 | 数据到安全元件的非易失性存储器中的加载的安全保护 |
CN103955653A (zh) * | 2014-04-17 | 2014-07-30 | 福建鼎恩协创电子科技有限公司 | 一种防破解的安全系统、pos机及方法 |
CN105095696A (zh) * | 2015-06-25 | 2015-11-25 | 三星电子(中国)研发中心 | 对应用程序进行安全认证的方法、系统及设备 |
CN105095696B (zh) * | 2015-06-25 | 2018-10-16 | 三星电子(中国)研发中心 | 对应用程序进行安全认证的方法、系统及设备 |
CN107124425A (zh) * | 2017-05-26 | 2017-09-01 | 北京立思辰新技术有限公司 | 监测设备安全的方法及计算设备 |
CN107451468A (zh) * | 2017-07-14 | 2017-12-08 | 杭州谷逸网络科技有限公司 | 一种控制设备的在线安全检测实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CA2400204C (en) | 2011-04-19 |
DE60112045D1 (de) | 2005-08-25 |
WO2001061437A2 (en) | 2001-08-23 |
EP1256042A2 (en) | 2002-11-13 |
KR20020075439A (ko) | 2002-10-04 |
AU2001243147A1 (en) | 2001-08-27 |
CA2400204A1 (en) | 2001-08-23 |
TW487880B (en) | 2002-05-21 |
DE60112045T2 (de) | 2006-04-20 |
WO2001061437A3 (en) | 2002-01-24 |
EP1256042B1 (en) | 2005-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1423766A (zh) | 提供安全控制软件或固件代码下载和接收下载代码的计算装置的安全操作的方法和装置 | |
KR101063076B1 (ko) | 소프트웨어 업데이트 보안 방법 | |
US8136166B2 (en) | Installation of black box for trusted component for digital rights management (DRM) on computing device | |
EP1913774B1 (en) | Multimedia data protection | |
US5970145A (en) | System and method for protecting use of dynamically linked executable modules | |
CN1220121C (zh) | 程序分发设备、客户设备、程序分发系统和程序分发方法 | |
KR100451012B1 (ko) | 디지털저작물의저작권보호를위한복수의암호기술이용프로토콜로부터하나를선택하여사용하는정보기기 | |
KR100945650B1 (ko) | 보안모듈 프로그램을 보호하기 위한 디지털 케이블 시스템및 그 방법 | |
MXPA06010778A (es) | Estructura de manejo de derechos digitales, dispositivo de almacenamiento portatil y metodo de manejo de contenidos que usa el dispositivo de almacenamiento portatil. | |
CN1658112A (zh) | 对数字权限条件访问的管理的转换 | |
US20030120923A1 (en) | Secure data authentication apparatus | |
JP2008186571A (ja) | 長期にリニューアル可能なセキュリティを提供するコンテンツセキュリティレイヤ | |
CN101002197A (zh) | 经由网络将数据提供给个人便携装置的方法和系统 | |
CN1592307A (zh) | 用于分发数据的系统和方法 | |
CN111859415A (zh) | 神经网络模型加密系统和方法 | |
JP6146476B2 (ja) | 情報処理装置及び情報処理方法 | |
AU2005225950B2 (en) | Portable storage device and method of managing files in the portable storage device | |
US20070011116A1 (en) | Method of updating revocation list | |
CN101057447A (zh) | 用于从服务器向移动终端设备重新分发特定编码访问对象的方法和设备 | |
CN111611551A (zh) | 一种基于国密算法的动态链接库保护方法及其系统 | |
KR20020081762A (ko) | 디지털 콘텐츠를 위한 보안 서비스 방법 및 그를 위한시스템 | |
CN116248282B (zh) | 固件下载方法、电子设备、控制装置及计算机可读存储介质 | |
CN116167020A (zh) | 一种软件授权方法及系统 | |
EP1280148A2 (en) | Compilation technique and data distribution system using the same | |
CN114900314A (zh) | 一种电子防拆方法、系统、可读存储介质及obu装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |