CN1703668A - 集成软件及用于验证该软件的方法 - Google Patents
集成软件及用于验证该软件的方法 Download PDFInfo
- Publication number
- CN1703668A CN1703668A CNA200380100961XA CN200380100961A CN1703668A CN 1703668 A CN1703668 A CN 1703668A CN A200380100961X A CNA200380100961X A CN A200380100961XA CN 200380100961 A CN200380100961 A CN 200380100961A CN 1703668 A CN1703668 A CN 1703668A
- Authority
- CN
- China
- Prior art keywords
- software
- certificate
- integrated
- downloaded
- check
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4435—Memory management
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/633—Control signals issued by server directed to the network components or client
- H04N21/6332—Control signals issued by server directed to the network components or client directed to client
- H04N21/6334—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
-
- 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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4627—Rights management associated to the content
-
- 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
- H04N21/8173—End-user applications, e.g. Web browser, game
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及用于验证被下载到终端中的软件的方法,包括以下步骤:通过借助于集成在所述终端中的软件,利用证书验证所述已下载软件;在执行所述已下载软件期间,借助于与所述已下载软件相关联的验证软件模块,利用证书对所述集成软件进行验证。
Description
技术领域
本发明涉及集成软件及用于验证该软件的方法,更具体地,涉及数字电视解码器领域方面。
背景技术
在现有技术的设备中,通常,通过使用外部工具计算表示软件的此软件的参考签名,并通过将参考签名***到该软件中来进行对组合软件的完整性测试。在软件初始化阶段期间,软件计算其自身的签名,并将此签名与参考签名进行比较。如果这些签名不同,则该软件执行专用于防护过程的软件例程,否则其正常继续。
在验证这样的软件的情况下,需要检查软件的源。公知的解决方案在于:应用完整性测试的原理,并将其与不对称密码算法相结合:利用专用密钥对参考签名进行加密,并以证书的形式将该结果集成在软件中。在检查阶段期间,在与参考签名进行比较之前,利用包括在软件内的公用密钥对参考签名进行加密。
现有技术的第一文件,题为“Digital Video Broadcasting(DVB)Multimedia Home Platform(MHP)Specification 1.0”的ETSI标准TS 101 812 V1-1-1,具体地,章节12.2和12.7描述了验证下载到终端的软件的方法的实现,通过借助于集成在所述终端中的软件,通过所述已下载软件的证书来执行验证。
现有技术的第二文件,US 6,167,521描述了一种将新软件下载到***的方法,其目的是防止此新下载的软件攻击已经安装在***中的软件,相反地,或者用于防止已经安装的软件攻击新软件,特别是当各个软件拥有者彼此不具有可信度时。
更具体地,如图1所示,为了进行软件验证,公知的是使用包括在存储器中的第一固定(即,写保护)部分10中的软件,以利用位于第二部分11中的证书12来验证可能已经下载的第二部分11的应用软件。
因此,在解码器领域中,当顾客想获得服务提供商的新应用软件时,服务提供商向其提供用于检验此应用软件的软件及与所述应用软件相关联的证书。
但是,在这种方案中,不存在第一软件的提供者检查验证过程已经真正发生的方式。
本发明的目的是使提供者能够检查此验证已经真正发生,因此其权利已经真正得到客户的尊重。
发明内容
因此,本发明提出了一种用于验证被下载到终端的软件的方法,所述方法包括借助于集成在所述终端中的软件,利用证书来验证所述已下载软件的步骤,其特征在于所述方法还包括在执行所述已下载软件期间,借助于与所述已下载软件相关联的验证软件模块,利用证书来验证所述第一集成软件的步骤。
有利地,第一集成软件借助于验证程序库和第一证书来验证已下载软件;第一集成软件和验证程序库形成写保护存储器的第一部分,并且已下载软件和第一证书形成可加载存储器的第二部分。
有利地,第一部分还包括第二证书,第二部分还包括检验软件,一旦已经验证了已下载软件,检验软件通过验证程序库和第二证书来验证第一软件。
有利地,在初始化时,发生这两个连续的验证。可以下载所述第二部分。
本发明还涉及集成软件,包括:第一写保护存储部分,由第一软件、验证程序库形成;以及第二存储部分,所述第二存储部分包括应用软件、第一证书,其特征在于所述第一部分还包括第二证书,以及所述第二部分还包括检验软件。
例如,可以在数字电视解码器、PC(个人计算机)型终端或任何其它集成设备中使用此软件。
附图说明
图1示出了现有技术的验证方法;
图2示出了了本发明的验证方法;
图3示出了证书的实例;
图4示出了签名的实例。
具体实施方式
在本发明的方法中,与图1中所示的现有技术的方法中一样,例如,在初始化阶段中,在写保护存储器的第一部分10中包含的第一软件,利用位于第一部分中的验证库和位于第二部分11中的证书12,对位于第二可加载部分11中的作为应用软件的第二软件进行验证。
由于术语“证书”具有很特定的含义(由针对个人或网络实体的信任第三方公布的电子身份,每个证书均利用认证授权的个人签名密钥进行签名)且其仅限于验证技术,一般来说,用于本描述中的术语“证书”用于更一般地覆盖术语签名、CRC或其它检验软件的真实性/完整性所需的其它数据。
在本发明的方法中,第一部分10还包括第二证书13,如图2所示。第二部分11还包括检验软件。一旦已经验证了应用软件时,此检验软件通过验证库和第二证书对第一软件进行验证。
此方法使第一软件的提供者能够检查使用该应用软件的客户真正地尊重其权利。
在典型实施例中,如图3所示,以下为证书的格式:
·报头:
-CLP(“证书位置图案”):指定证书的位置的图案,以便在存储器中找到验证证书(例如,8字节);
-RFU(“保留用于将来使用”):保留用于将来使用(例如,1字节);
-K:要使用的密钥号(例如,1字节)
·签名(例如,128字节),作为利用专用密钥对图4所示的1024比特的消息进行RSA加密的结果。
1024比特签名从0处字节开始,以实现其RSA加密,在每个加密前,以不同的方式,随意填充其余部分20。
在从消息起始的偏移H_CODE_OFFSET处,存在20字节上的散列编码SHA1。CHECK_PATTERN图案位于此H_CODE前,其功能是在完整性检查期间,实现在错误解密(公用密钥号或值、算法、不一致证书)和错误H_CODE之间的区别。
Claims (6)
1、一种用于验证下载到终端中的软件的方法,所述方法包括借助于集成在所述终端中的软件,利用证书来验证所述已下载软件的步骤,其特征在于所述方法还包括在执行所述已下载软件期间,借助于与所述已下载软件相关联的验证软件模块,利用证书来验证所述第一集成软件的步骤。
2、根据权利要求1所述的方法,其特征在于:所述第一集成软件通过验证程序库和第一证书,对已下载软件进行验证,其中所述第一集成软件和验证库形成写保护存储器的第一部分(10),并且所述已下载软件和第一证书(12)形成可加载存储器的第二部分(11)。
3、根据权利要求2所述的方法,其特征在于:所述第一部分(10)还包括第二证书(13),所述第二部分(11)还包括检验软件,一旦已经验证了已下载软件,检验软件通过验证程序库和第二证书(13)来验证第一集成软件。
4、根据权利要求1所述的方法,其特征在于:在初始化时,发生这两个连续的验证。
5、根据权利要求2所述的方法,其特征在于:下载所述第二部分(11)。
6、一种集成软件,包括:第一写保护存储部分(10),所述第一写保护存储部分包括第一软件、验证程序库和第二证书(13);以及第二存储部分(11),所述第二存储部分包括应用软件、第一证书(12)和检验软件,所述检验软件用于当在计算机上执行所述软件时,执行根据权利要求1到5任一个所述的方法步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0212325A FR2845493A1 (fr) | 2002-10-04 | 2002-10-04 | Logiciel embarque et procede d'authentification de celui-ci |
FR02/12325 | 2002-10-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1703668A true CN1703668A (zh) | 2005-11-30 |
Family
ID=32011393
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200380100961XA Pending CN1703668A (zh) | 2002-10-04 | 2003-10-02 | 集成软件及用于验证该软件的方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7356815B2 (zh) |
EP (1) | EP1546866A2 (zh) |
JP (1) | JP2006501735A (zh) |
KR (1) | KR100973203B1 (zh) |
CN (1) | CN1703668A (zh) |
AU (1) | AU2003288370A1 (zh) |
FR (1) | FR2845493A1 (zh) |
MX (1) | MXPA05003618A (zh) |
WO (1) | WO2004032328A2 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103779B2 (en) * | 2003-09-18 | 2006-09-05 | Apple Computer, Inc. | Method and apparatus for incremental code signing |
MXPA06004543A (es) * | 2003-12-18 | 2006-06-23 | Matsushita Electric Ind Co Ltd | Metodo para autentificar y ejecutar un programa de aplicacion. |
CA2548546A1 (en) * | 2003-12-18 | 2005-06-30 | Matsushita Electric Industrial Co., Ltd. | Method for storing, authenticalting and executing an application program |
US7831838B2 (en) * | 2004-03-05 | 2010-11-09 | Microsoft Corporation | Portion-level in-memory module authentication |
US7644287B2 (en) * | 2004-07-29 | 2010-01-05 | Microsoft Corporation | Portion-level in-memory module authentication |
EP1913511B1 (en) * | 2005-08-03 | 2011-02-23 | ST-Ericsson SA | A secure terminal, a routine and a method of protecting a secret key |
CN101313570A (zh) * | 2005-11-29 | 2008-11-26 | 汤姆森特许公司 | 用于使得数字内容安全的方法和装置 |
US8364965B2 (en) * | 2006-03-15 | 2013-01-29 | Apple Inc. | Optimized integrity verification procedures |
CN102016867B (zh) * | 2008-03-04 | 2015-02-25 | 苹果公司 | 基于至少一个已安装的简档来授权执行软件代码的***和方法 |
WO2009111405A1 (en) * | 2008-03-04 | 2009-09-11 | Apple Inc. | System and method of authorizing execution of software code based on a trusted cache |
US20090228868A1 (en) * | 2008-03-04 | 2009-09-10 | Max Drukman | Batch configuration of multiple target devices |
KR101252921B1 (ko) * | 2008-03-04 | 2013-04-09 | 애플 인크. | 사업자에게 부여된 자격들에 기초하여 장치 내의 소프트웨어 코드의 실행을 인가하는 시스템 및 방법 |
EP2250607A1 (en) * | 2008-03-04 | 2010-11-17 | Apple Inc. | System and method of authorizing execution of software code based on accessible entitlements |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5757914A (en) * | 1995-10-26 | 1998-05-26 | Sun Microsystems, Inc. | System and method for protecting use of dynamically linked executable modules |
FI990461A0 (fi) * | 1999-03-03 | 1999-03-03 | Nokia Mobile Phones Ltd | Menetelmä ohjelmiston lataamiseksi palvelimelta päätelaitteeseen |
US6901518B1 (en) * | 1999-04-08 | 2005-05-31 | Sun Microsystems, Inc. | Method and system for establishing trust in downloaded proxy code |
ES2253222T3 (es) * | 1999-04-21 | 2006-06-01 | General Instrument Corporation | Procedimiento y sistema de actualizaciones de programacion especificas o universales en un conjunto de decodificadores avanzados en un sistema de television por cable. |
JP2002140298A (ja) * | 2000-10-31 | 2002-05-17 | Matsushita Electric Ind Co Ltd | 認証方法 |
US6965994B1 (en) * | 2001-01-30 | 2005-11-15 | Microsoft Corporation | Security mechanism for computer processing modules |
-
2002
- 2002-10-04 FR FR0212325A patent/FR2845493A1/fr active Pending
-
2003
- 2003-10-02 KR KR1020057005479A patent/KR100973203B1/ko active IP Right Grant
- 2003-10-02 EP EP03780285A patent/EP1546866A2/fr not_active Withdrawn
- 2003-10-02 JP JP2004540905A patent/JP2006501735A/ja active Pending
- 2003-10-02 AU AU2003288370A patent/AU2003288370A1/en not_active Abandoned
- 2003-10-02 MX MXPA05003618A patent/MXPA05003618A/es not_active Application Discontinuation
- 2003-10-02 CN CNA200380100961XA patent/CN1703668A/zh active Pending
- 2003-10-02 US US10/529,972 patent/US7356815B2/en not_active Expired - Lifetime
- 2003-10-02 WO PCT/FR2003/050073 patent/WO2004032328A2/fr active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP1546866A2 (fr) | 2005-06-29 |
US7356815B2 (en) | 2008-04-08 |
MXPA05003618A (es) | 2005-06-17 |
KR100973203B1 (ko) | 2010-07-30 |
WO2004032328A3 (fr) | 2004-07-15 |
KR20050083699A (ko) | 2005-08-26 |
AU2003288370A8 (en) | 2004-04-23 |
US20060156000A1 (en) | 2006-07-13 |
WO2004032328A2 (fr) | 2004-04-15 |
AU2003288370A1 (en) | 2004-04-23 |
FR2845493A1 (fr) | 2004-04-09 |
JP2006501735A (ja) | 2006-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2009233685B2 (en) | Method and apparatus for incremental code signing | |
CA2450844C (en) | A method for securing an electronic device, a security system and an electronic device | |
US8250373B2 (en) | Authenticating and verifying an authenticable and verifiable module | |
US6571335B1 (en) | System and method for authentication of off-chip processor firmware code | |
US8001385B2 (en) | Method and apparatus for flash updates with secure flash | |
US8732445B2 (en) | Information processing device, information processing method, information processing program, and integrated circuit | |
JP4638912B2 (ja) | ディストリビューションcdを使用した、署名されたグループにおけるダイレクトプルーフの秘密鍵を装置に伝達する方法 | |
US8392724B2 (en) | Information terminal, security device, data protection method, and data protection program | |
US6587947B1 (en) | System and method for verification of off-chip processor code | |
CN1703668A (zh) | 集成软件及用于验证该软件的方法 | |
JP2004280284A (ja) | 制御プロセッサ、電子機器及び電子機器のプログラム起動方法、並びに電子機器のシステムモジュール更新方法 | |
CN1886747A (zh) | 使用运营商根证书控制应用的安装的方法和装置 | |
US7552092B2 (en) | Program distribution method and system | |
US20030167407A1 (en) | Authenticated file loader | |
JP2009003853A (ja) | 複数のソフトウェアを正しい順番で起動する情報端末およびセキュリティモジュール | |
Devanbu et al. | Research directions for automated software verification: Using trusted hardware | |
CN115913563A (zh) | 电子签章的生成方法、验证方法及设备 | |
CN116541890A (zh) | 一种文件完整性校验方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |