[go: up one dir, main page]

CN102509047A - 校验机顶盒中程序代码的方法和系统 - Google Patents

校验机顶盒中程序代码的方法和系统 Download PDF

Info

Publication number
CN102509047A
CN102509047A CN2011103537556A CN201110353755A CN102509047A CN 102509047 A CN102509047 A CN 102509047A CN 2011103537556 A CN2011103537556 A CN 2011103537556A CN 201110353755 A CN201110353755 A CN 201110353755A CN 102509047 A CN102509047 A CN 102509047A
Authority
CN
China
Prior art keywords
file
cryptographic hash
code
signature
boot
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
Application number
CN2011103537556A
Other languages
English (en)
Other versions
CN102509047B (zh
Inventor
王冉冉
郭先概
陈烨
高伟
李登彪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Cycle Century Technoogy Co ltd
Original Assignee
BEIJING CYCLE CENTURY DIGITAL TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING CYCLE CENTURY DIGITAL TECHNOLOGY Co Ltd filed Critical BEIJING CYCLE CENTURY DIGITAL TECHNOLOGY Co Ltd
Priority to CN201110353755.6A priority Critical patent/CN102509047B/zh
Publication of CN102509047A publication Critical patent/CN102509047A/zh
Application granted granted Critical
Publication of CN102509047B publication Critical patent/CN102509047B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提供一种校验机顶盒中程序代码的方法和系统。所述方法,包括:在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。

Description

校验机顶盒中程序代码的方法和系统
技术领域
本发明涉及信息处理领域,尤其涉及一种校验机顶盒中程序代码的方法和系统。
背景技术
数字电视机顶盒作为一个嵌入式计算机系统,已经进入了千家万户。用户即可以通过机顶盒收看画面更为清晰,播放更加流畅的电视节目,也可以通过机顶盒浏览网页,接收邮件,点播节目,视频通话等。这些强大的功能都是通过嵌入机顶盒的软件来实现。功能强大,运行稳定的软件无疑是厂商及运营商生存的关键。一旦这些软件被更改,替换,无疑损害了运营商及机顶盒厂商的利益。本设计为了解决这个问题,采用了芯片校验,软件校验,硬件保护的方法,有效的制止了机顶盒软件被任意修改和替换的现象。
现在机顶盒中的软件分为三个部分,按照从上到下的顺序依次为应用程序(Application,APP)、用来升级APP的小应用程序(Loader)和Boot开机上电运行的第一段代码(Boot)
为了保证APP及Loader的代码的正确性,采用在Boot里校验Loader和APP的方式。Boot里判断是否升级,如果升级,则进入Loader进行升级;如果不升级,则运行APP。既然Boot决定了执行APP还是Loader程序,那么在Boot里加入校验机制,就可以保证一旦APP和Loader被替换,Boot无法校验通过,那么非法程序就无法启动。但是实际应用中一旦Boot被修改,则上述的校验机制将毫无意义,因此如何校验Boot是否被修改是亟待解决的问题。
发明内容
本发明提供一种校验机顶盒中程序代码的方法和系统,要解决的技术问题是如何校验Boot是否被修改。
为解决上述技术问题,本发明提供了如下技术方案:
一种校验机顶盒中程序代码的方法,包括:
在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;
在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;
在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。
优选的,所述方法还具有如下特点:
所述第一文件为对Boot的代码加密后得到的加密文件;
所述触发启动Boot的代码的流程,包括:
采用预先存储的密钥解密该加密文件,得到Boot的代码。
优选的,所述方法还具有如下特点:在机顶盒中存储有一包括Boot的代码的第一文件后,还包括:
获取机顶盒中存储该第一文件的区域;
对所述区域进行写保护。
优选的,所述方法还具有如下特点:所述触发启动Boot的代码的流程之后,还包括:
在机顶盒中存储有一包括Loader的代码的第二文件后,获取该第二文件的第二签名,其中该第二签名是一签名生成系统采用私钥加密由哈希算法处理该第二文件得到的哈希值后得到的;
在启动Loader的代码之前,采用预先存储的公钥对第二签名进行处理,将处理结果作为第二基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第二文件进行处理,将得到的哈希值作为第二待验证的哈希值;
在第二待验证的哈希值与第二基准哈希值相等时,触发启动Loader的代码的流程。
优选的,所述方法还具有如下特点:所述触发启动Boot的代码的流程之后,还包括:
在机顶盒中存储有一包括APP的代码的第三文件后,获取该第三文件的第三签名,其中该第三签名是一签名生成系统采用私钥加密由哈希算法处理该第三文件得到的哈希值后得到的;
在启动APP的代码之前,采用预先存储的公钥对第三签名进行处理,将处理结果作为第三基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第三文件进行处理,将得到的哈希值作为第三待验证的哈希值;
在第三待验证的哈希值与第三基准哈希值相等时,触发启动APP的代码的流程。
一种校验机顶盒中程序代码的系统,包括:
第一获取装置,用于在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;
第一处理装置,用于在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;
第一触发装置,用于在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。
优选的,所述系统还具有如下特点:所述第一触发装置还包括:
解密模块,用于在所述第一文件为对Boot的代码加密后得到的加密文件时,采用预先存储的密钥解密该加密文件,得到Boot的代码。
优选的,所述系统还具有如下特点:所述系统还包括:
第二获取装置,用于获取机顶盒中存储该第一文件的区域;
保护装置,用于对所述区域进行写保护。
优选的,所述系统还具有如下特点:所述系统还包括:
第三获取装置,用于在机顶盒中存储有一包括Loader的代码的第二文件后,获取该第二文件的第二签名,其中该第二签名是一签名生成系统采用私钥加密由哈希算法处理该第二文件得到的哈希值后得到的;
第二处理装置,用于在启动Loader的代码之前,采用预先存储的公钥对第二签名进行处理,将处理结果作为第二基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第二文件进行处理,将得到的哈希值作为第二待验证的哈希值;
第二触发装置,用于在第二待验证的哈希值与第二基准哈希值相等时,触发启动Loader的代码的流程。
优选的,所述系统还具有如下特点:所述系统还包括:
第四获取装置,用于在机顶盒中存储有一包括APP的代码的第三文件后,获取该第三文件的第三签名,其中该第三签名是一签名生成系统采用私钥加密由哈希算法处理该第三文件得到的哈希值后得到的;
第三处理装置,用于在启动APP的代码之前,采用预先存储的公钥对第三签名进行处理,将处理结果作为第三基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第三文件进行处理,将得到的哈希值作为第三待验证的哈希值;
第三触发模块,用于在第三待验证的哈希值与第三基准哈希值相等时,触发启动APP的代码的流程。
与现有技术相比,通过对Boot进行数字签名的验证,来实现对Boot是否被修改的校验。
附图说明
图1为本发明提供的校验机顶盒中程序代码的方法实施例的流程示意图;
图2为实施例一提供的校验机顶盒中程序代码的方法流程示意图;
图3为实施例二提供的校验机顶盒中程序代码的方法流程示意图;
图4为实施例三提供的校验机顶盒中程序代码的方法流程示意图;
图5为本发明提供的校验机顶盒中程序代码的系统实施例的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步的详细描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1为本发明提供的校验机顶盒中程序代码的方法实施例的流程示意图。图1所示方法包括:
步骤11、在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;
其中该可执行文件可以是Boot的bin文件,也可以是加密后的Boot的bin文件。
步骤12、在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;
步骤13、在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。
当然,如果该可执行文件为加密文件,则在启动Boot的代码之前,还包括采用预先存储的密钥解密该加密文件的流程。
与现有技术相比,通过对Boot进行数字签名的验证,来实现对Boot是否被修改的校验。
实施例一
图2为实施例一提供的校验机顶盒中程序代码的方法流程示意图。本实施例采用如下校验方法实现对Boot的校验,具体包括:
步骤A11、在得到机顶盒中Boot的bin文件后,机顶盒中的传输模块保存该文件到机顶盒中的Flash中,并向签名生成系统发送该Boot的bin文件;其中该签名的生成系统可以为机顶盒的运营商。
步骤A12、签名生成系统采用哈希算法对Boot的bin文件进行计算,将得到的哈希值作为基准哈希值;其中该哈希算法可以是SHA-1算法。
步骤A13、签名生成系统采用私钥对基准哈希值进行加密,将得到的加密结果作为签名发送出去。
步骤A14、传输模块从外部接收该签名,向机顶盒中的Flash写入该签名,以及向机顶盒中CPU的寄存器写入在启动时进入高级安全模式的第一控制信息以及进入高级安全模式后进行签名校验的第二控制信息,其中该CPU预先存储有用于解密该签名的公钥以及签名生成系统所使用的哈希算法;
其中,芯片在设计时有普通模式和高级安全模式,其中的高级安全模式是指CPU在上电后不直接读取Flash中Boot的bin文件的模式,而该控制信息是使机顶盒不直接从Flash读取Boot的bin文件的代码,即使得机顶盒在每次启动时CPU均处于高级安全模式。
步骤A15、当机顶盒上电后,CPU执行寄存器中的第一控制信息进行高级安全模式后,CPU根据所述第二控制信息,采用CPU中的公钥对Flash中的签名进行解密,得到基准哈希值,并采用CPU存储的哈希算法对该Flash中的Boot的bin文件进行运算,将得到的哈希值作为待验证的哈希值。
步骤A16、在待验证的哈希值与基准哈希值相等时,CPU运行Boot的bin文件。
如果待验证的哈希值与基准哈希值不等,则CPU就不会启动Boot的bin文件,这样有效地解决了Boot的代码被篡改现象的发现。
实施例二
图3为实施例二提供的校验机顶盒中程序代码的方法流程示意图。与实施例一不同的是,为了进一步加强Boot的bin文件的安全,传输模块向签名系统所发送的文件为一加密文件,如通过AES key加密的文件,相应的,签名生成系统所生成的签名所对应的文件也是加密后的Boot的bin文件,而机顶盒中Flash中存储的也是加密后的Boot的bin文件。其中具体的校验流程如下:
步骤B11、在得到机顶盒中Boot的bin文件后,传输模块获取一加密文件,该加密文件是对所述Boot的bin文件进行加密后得到的,传输模块将其保存到Flash中;
其中所述加密方式可以是AES,如采用AES key进行加密。
步骤B12、传输模块向签名生成系统发送加密文件。
步骤B13、签名生成系统采用哈希算法对加密文件进行计算,将得到的哈希值作为基准哈希值;
步骤B14、签名生成系统采用私钥对基准哈希值进行加密,将得到的加密结果作为签名发送出去。
步骤B15、传输模块从外部收到该签名,并向Flash写入该签名,以及向机顶盒中CPU的寄存器写入在启动时进入高级安全模式的第一控制信息、进入高级安全模式后进行签名校验的第二控制信息以及在签名校验完成后解密该加密文件的第三控制信息,其中该CPU预先存储有用于解密该签名的公钥、签名生成系统所使用的哈希算法以及解密该加密文件的密钥(如AESkey)。
步骤B16、当机顶盒上电后,在CPU运行寄存器中的第一控制信息进行高级安全模式后,CPU根据第二控制信息,采用CPU中的公钥对Flash中的签名进行解密,得到基准哈希值,并采用CPU中存储的算法对该Flash中的加密文件进行运算,将得到的哈希值作为待验证的哈希值。
步骤B17、在待验证的哈希值与基准哈希值相等时,校验系统根据第三控制信息,采用CPU中的密钥解密该加密文件,得到Boot的bin文件。
步骤B18、在解密成功后,CPU运行Boot的bin文件的流程。
实施例三
实施例一和二所示的方法只能保证Boot修改后不能启动,为了保证FLASH中的Boot不能被修改,通过FLASH的特性,对FLASH中的Boot区域进行写保护,即对FLASH中的Boot区域无法进行擦写操作。具体来说,获取Flash中实施例一所述Boot的bin文件或者实施例二所述的加密文件的存储区域,对该存储区域进行写保护。
实施例四
图4为实施例三提供的校验机顶盒中程序代码的方法流程示意图。为了进一步提高机顶盒的安全性,同理还可以对APP和Loader中至少一个也进行数字签名的验证,换句话说,Boot校验Loader和Loader校验主程序都采用数字签名校验,且Loader和APP在Flash中都以压缩形式存储。
具体来说,在校验系统对Boot进行校验通过后,再使用数字签名校验方式校验Loader,在Loader校验成功后,进而判断Loader是否需要发起升级APP的操作,在确定Loader无需发起升级后,再使用数字签名校验方式校验APP,在APP校验成功后,发起启动APP的流程。由上可以看出,本实施例能够实现三级校验,实现对机顶盒中运行代码安全性的检测。
其中对Loader的数字签名校验流程如下:
在机顶盒中存储有一包括Loader的代码的第二文件后,获取该第二文件的第二签名,其中该第二签名是一签名生成系统采用私钥加密由哈希算法处理该第二文件得到的哈希值后得到的;
在启动Loader的代码之前,采用预先存储的公钥对第二签名进行处理,将处理结果作为第二基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第二文件进行处理,将得到的哈希值作为第二待验证的哈希值;
在第二待验证的哈希值与第二基准哈希值相等时,触发启动Loader的代码的流程。
其中对APP的数字签名校验流程如下:
在机顶盒中存储有一包括APP的代码的第三文件后,获取该第三文件的第三签名,其中该第三签名是一签名生成系统采用私钥加密由哈希算法处理该第三文件得到的哈希值后得到的;
在启动APP的代码之前,采用预先存储的公钥对第三签名进行处理,将处理结果作为第三基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第三文件进行处理,将得到的哈希值作为第三待验证的哈希值;
在第三待验证的哈希值与第三基准哈希值相等时,触发启动APP的代码的流程。
以APP的数字签名流程为例进行具体说明:
步骤C11、在得到机顶盒中APP的bin文件后,传输模块向签名生成系统发送该APP的bin文件。
步骤C12、签名生成系统采用哈希算法对APP的bin文件进行计算,将得到的哈希值作为基准哈希值。
步骤C13、签名生成系统采用私钥对基准哈希值进行加密,将得到的加密结果作为APP签名发送出去。
步骤C14、传输模块向Flash写入该APP签名、解密该APP签名的公钥以及签名生成系统所使用的哈希算法,其中该公钥可以具体存储在Boot的文件中。
步骤C15、在启动该APP的bin文件之前,校验模块采用Boot文件中的公钥对Flash中的APP签名进行解密,得到基准哈希值,并采用Flash中存储的算法对该Flash中的APP的bin文件进行运算,将得到的哈希值作为待验证的哈希值。
步骤C16、在待验证的哈希值与基准哈希值相等时,校验模块触发机顶盒中CPU运行APP的bin文件的流程。
如果待验证的哈希值与基准哈希值不等,则CPU就不会启动APP的bin文件,这样有效地解决了APP的代码被篡改现象的发现,当然,在发现被篡改现象发生时还可以发出告警,如输出信息以告知用户APP发生错误等。
同理,Loader的数字签名校验流程与上文类似,此处不再赘述。
图5为本发明提供的校验机顶盒中程序代码的系统实施例的结构示意图。结合图1至4所述的方法,图5所示系统实施例,包括:
第一获取装置51,用于在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;
第一处理装置52,与所述第一获取装置51相连,用于在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;
第一触发装置53,与所述第一处理装置51相连,用于在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。
可选的,所述第一触发装置还包括:
解密模块,用于在所述第一文件为对Boot的代码加密后得到的加密文件时,采用预先存储的密钥解密该加密文件,得到Boot的代码。
优选的,为了进一步提高机顶盒中Boot的代码的安全性,所述系统还包括:
第二获取装置,用于获取机顶盒中存储该第一文件的区域;
保护装置,与所述第二获取装置相连,用于对所述区域进行写保护。
可选的,为了实现Loader的代码的安全性的校验,所述系统还包括:
第三获取装置,用于在机顶盒中存储有一包括Loader的代码的第二文件后,获取该第二文件的第二签名,其中该第二签名是一签名生成系统采用私钥加密由哈希算法处理该第二文件得到的哈希值后得到的;
第二处理装置,与所述第三获取装置相连,用于在启动Loader的代码之前,采用预先存储的公钥对第二签名进行处理,将处理结果作为第二基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第二文件进行处理,将得到的哈希值作为第二待验证的哈希值;
第二触发装置,与所述第二处理装置相连,用于在第二待验证的哈希值与第二基准哈希值相等时,触发启动Loader的代码的流程。
可选的,为了实现APP的代码的安全性的校验,所述系统还包括:
第四获取装置,用于在机顶盒中存储有一包括APP的代码的第三文件后,获取该第三文件的第三签名,其中该第三签名是一签名生成系统采用私钥加密由哈希算法处理该第三文件得到的哈希值后得到的;
第三处理装置,与所述第四获取装置相连,用于在启动APP的代码之前,采用预先存储的公钥对第三签名进行处理,将处理结果作为第三基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第三文件进行处理,将得到的哈希值作为第三待验证的哈希值;
第三触发模块,与所述第三处理装置相连,用于在第三待验证的哈希值与第三基准哈希值相等时,触发启动APP的代码的流程。
需要说明的是,该系统可以为机顶盒中的CPU。
与现有技术相比,通过对Boot的代码进行数字签名的验证,实现了对Boot是否被修改的校验;另外,通过对Boot的代码进行加密,并对加密文件进行数字签名的认证,实现了双层校验,提高了安全系数;如果Loader与APP均使用数字签名进行校验,则实现了三级校验,保证了机顶盒的运行安全。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。

Claims (10)

1.一种校验机顶盒中程序代码的方法,其特征在于,包括:
在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;
在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;
在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。
2.根据权利要求1所述的方法,其特征在于:
所述第一文件为对Boot的代码加密后得到的加密文件;
所述触发启动Boot的代码的流程,包括:
采用预先存储的密钥解密该加密文件,得到Boot的代码。
3.根据权利要求1或2所述的方法,其特征在于,在机顶盒中存储有一包括Boot的代码的第一文件后,还包括:
获取机顶盒中存储该第一文件的区域;
对所述区域进行写保护。
4.根据权利要求1所述的方法,其特征在于,所述触发启动Boot的代码的流程之后,还包括:
在机顶盒中存储有一包括Loader的代码的第二文件后,获取该第二文件的第二签名,其中该第二签名是一签名生成系统采用私钥加密由哈希算法处理该第二文件得到的哈希值后得到的;
在启动Loader的代码之前,采用预先存储的公钥对第二签名进行处理,将处理结果作为第二基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第二文件进行处理,将得到的哈希值作为第二待验证的哈希值;
在第二待验证的哈希值与第二基准哈希值相等时,触发启动Loader的代码的流程。
5.根据权利要求1或4所述的方法,其特征在于,所述触发启动Boot的代码的流程之后,还包括:
在机顶盒中存储有一包括APP的代码的第三文件后,获取该第三文件的第三签名,其中该第三签名是一签名生成系统采用私钥加密由哈希算法处理该第三文件得到的哈希值后得到的;
在启动APP的代码之前,采用预先存储的公钥对第三签名进行处理,将处理结果作为第三基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第三文件进行处理,将得到的哈希值作为第三待验证的哈希值;
在第三待验证的哈希值与第三基准哈希值相等时,触发启动APP的代码的流程。
6.一种校验机顶盒中程序代码的系统,其特征在于,包括:
第一获取装置,用于在机顶盒中存储有一包括Boot的代码的第一文件后,获取该第一文件的第一签名,其中该第一签名是一签名生成系统采用私钥加密由哈希算法处理该第一文件得到的哈希值后得到的;
第一处理装置,用于在启动Boot的代码之前,采用预先存储的公钥对第一签名进行处理,将处理结果作为第一基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第一文件进行处理,将得到的哈希值作为第一待验证的哈希值;
第一触发装置,用于在第一待验证的哈希值与第一基准哈希值相等时,触发启动Boot的代码的流程。
7.根据权利要求6所述的系统,其特征在于,所述第一触发装置还包括:
解密模块,用于在所述第一文件为对Boot的代码加密后得到的加密文件时,采用预先存储的密钥解密该加密文件,得到Boot的代码。
8.根据权利要求7或8所述的系统,其特征在于,所述系统还包括:
第二获取装置,用于获取机顶盒中存储该第一文件的区域;
保护装置,用于对所述区域进行写保护。
9.根据权利要求6所述的系统,其特征在于,所述系统还包括:
第三获取装置,用于在机顶盒中存储有一包括Loader的代码的第二文件后,获取该第二文件的第二签名,其中该第二签名是一签名生成系统采用私钥加密由哈希算法处理该第二文件得到的哈希值后得到的;
第二处理装置,用于在启动Loader的代码之前,采用预先存储的公钥对第二签名进行处理,将处理结果作为第二基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第二文件进行处理,将得到的哈希值作为第二待验证的哈希值;
第二触发装置,用于在第二待验证的哈希值与第二基准哈希值相等时,触发启动Loader的代码的流程。
10.根据权利要求6或9所述的系统,其特征在于,所述系统还包括:
第四获取装置,用于在机顶盒中存储有一包括APP的代码的第三文件后,获取该第三文件的第三签名,其中该第三签名是一签名生成系统采用私钥加密由哈希算法处理该第三文件得到的哈希值后得到的;
第三处理装置,用于在启动APP的代码之前,采用预先存储的公钥对第三签名进行处理,将处理结果作为第三基准哈希值;以及,采用预先存储的哈希算法对机顶盒中的第三文件进行处理,将得到的哈希值作为第三待验证的哈希值;
第三触发模块,用于在第三待验证的哈希值与第三基准哈希值相等时,触发启动APP的代码的流程。
CN201110353755.6A 2011-11-09 2011-11-09 校验机顶盒中程序代码的方法和系统 Expired - Fee Related CN102509047B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110353755.6A CN102509047B (zh) 2011-11-09 2011-11-09 校验机顶盒中程序代码的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110353755.6A CN102509047B (zh) 2011-11-09 2011-11-09 校验机顶盒中程序代码的方法和系统

Publications (2)

Publication Number Publication Date
CN102509047A true CN102509047A (zh) 2012-06-20
CN102509047B CN102509047B (zh) 2014-08-27

Family

ID=46221128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110353755.6A Expired - Fee Related CN102509047B (zh) 2011-11-09 2011-11-09 校验机顶盒中程序代码的方法和系统

Country Status (1)

Country Link
CN (1) CN102509047B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103679037A (zh) * 2013-12-05 2014-03-26 长城信息产业股份有限公司 非对称加密认证方法和基于非对称加密认证的嵌入式设备
CN103974122A (zh) * 2013-02-04 2014-08-06 澜起科技(上海)有限公司 机顶盒芯片及应用在机顶盒芯片中的数字签名实现方法
CN104331658A (zh) * 2014-11-14 2015-02-04 北京视博数字电视科技有限公司 一种智能终端应用程序的安装验证方法及系统
CN104780445A (zh) * 2015-03-18 2015-07-15 福建新大陆通信科技股份有限公司 一种机顶盒软件防恶意升级的方法及系统
CN104866757A (zh) * 2014-02-24 2015-08-26 联想(北京)有限公司 一种验证方法及电子设备
CN104866738A (zh) * 2014-02-25 2015-08-26 北京娜迦信息科技发展有限公司 一种程序代码保护方法及装置
WO2016173267A1 (zh) * 2015-04-29 2016-11-03 华为技术有限公司 一种完整性校验方法和装置
CN106650455A (zh) * 2015-10-30 2017-05-10 中兴通讯股份有限公司 一种系统安全启动方法及装置
WO2017143513A1 (zh) * 2016-02-23 2017-08-31 华为技术有限公司 一种启动Boot的方法、CPU及单板
CN107273150A (zh) * 2017-05-10 2017-10-20 深圳市金百锐通信科技有限公司 预加载固件下载写入方法及装置
WO2019071828A1 (zh) * 2017-10-10 2019-04-18 武汉斗鱼网络科技有限公司 检测应用安装包二次打包的方法、存储介质、设备及系统
CN109814934A (zh) * 2019-01-31 2019-05-28 安谋科技(中国)有限公司 数据处理方法、装置、可读介质和系统
CN111273949A (zh) * 2018-12-05 2020-06-12 三星电子株式会社 嵌入式系统的引导只读存储器更新方法和启动方法
CN111859402A (zh) * 2020-07-30 2020-10-30 山东超越数控电子股份有限公司 一种基于uefi bios启动的安全引导方法及装置
CN113094708A (zh) * 2021-04-12 2021-07-09 北京明朝万达科技股份有限公司 电子文件处理方法及装置、存储介质和处理器
CN114547618A (zh) * 2020-11-25 2022-05-27 广东朝歌智慧互联科技有限公司 基于Linux系统的安全启动方法、装置、电子设备及存储介质
CN115147967A (zh) * 2022-06-02 2022-10-04 福建新大陆通信科技股份有限公司 一种基于ctid和超级sim卡的信息核验方法及系统
CN116506692A (zh) * 2023-02-20 2023-07-28 福建新大陆通信科技股份有限公司 一种机顶盒影片搜索方法、系统、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101588440A (zh) * 2009-07-09 2009-11-25 山东泰信电子有限公司 一种数字机顶盒用软件安全认证方法
CN101719250A (zh) * 2009-12-10 2010-06-02 中国联合网络通信集团有限公司 支付认证方法、平台和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101588440A (zh) * 2009-07-09 2009-11-25 山东泰信电子有限公司 一种数字机顶盒用软件安全认证方法
CN101719250A (zh) * 2009-12-10 2010-06-02 中国联合网络通信集团有限公司 支付认证方法、平台和系统

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103974122B (zh) * 2013-02-04 2018-04-24 上海澜至半导体有限公司 机顶盒芯片及应用在机顶盒芯片中的数字签名实现方法
CN103974122A (zh) * 2013-02-04 2014-08-06 澜起科技(上海)有限公司 机顶盒芯片及应用在机顶盒芯片中的数字签名实现方法
CN103679037A (zh) * 2013-12-05 2014-03-26 长城信息产业股份有限公司 非对称加密认证方法和基于非对称加密认证的嵌入式设备
CN103679037B (zh) * 2013-12-05 2017-09-26 长城信息产业股份有限公司 非对称加密认证方法和基于非对称加密认证的嵌入式设备
CN104866757A (zh) * 2014-02-24 2015-08-26 联想(北京)有限公司 一种验证方法及电子设备
CN104866757B (zh) * 2014-02-24 2019-01-15 联想(北京)有限公司 一种验证方法及电子设备
CN104866738A (zh) * 2014-02-25 2015-08-26 北京娜迦信息科技发展有限公司 一种程序代码保护方法及装置
CN104866738B (zh) * 2014-02-25 2019-04-26 北京娜迦信息科技发展有限公司 一种程序代码保护方法及装置
CN104331658A (zh) * 2014-11-14 2015-02-04 北京视博数字电视科技有限公司 一种智能终端应用程序的安装验证方法及系统
CN104780445A (zh) * 2015-03-18 2015-07-15 福建新大陆通信科技股份有限公司 一种机顶盒软件防恶意升级的方法及系统
WO2016173267A1 (zh) * 2015-04-29 2016-11-03 华为技术有限公司 一种完整性校验方法和装置
CN106650455B (zh) * 2015-10-30 2021-09-24 中兴通讯股份有限公司 一种系统安全启动方法及装置
CN106650455A (zh) * 2015-10-30 2017-05-10 中兴通讯股份有限公司 一种系统安全启动方法及装置
WO2017143513A1 (zh) * 2016-02-23 2017-08-31 华为技术有限公司 一种启动Boot的方法、CPU及单板
CN107273150B (zh) * 2017-05-10 2020-10-02 深圳市金百锐通信科技有限公司 预加载固件下载写入方法及装置
CN107273150A (zh) * 2017-05-10 2017-10-20 深圳市金百锐通信科技有限公司 预加载固件下载写入方法及装置
WO2019071828A1 (zh) * 2017-10-10 2019-04-18 武汉斗鱼网络科技有限公司 检测应用安装包二次打包的方法、存储介质、设备及系统
CN111273949A (zh) * 2018-12-05 2020-06-12 三星电子株式会社 嵌入式系统的引导只读存储器更新方法和启动方法
CN109814934B (zh) * 2019-01-31 2022-05-06 安谋科技(中国)有限公司 数据处理方法、装置、可读介质和系统
CN109814934A (zh) * 2019-01-31 2019-05-28 安谋科技(中国)有限公司 数据处理方法、装置、可读介质和系统
CN111859402A (zh) * 2020-07-30 2020-10-30 山东超越数控电子股份有限公司 一种基于uefi bios启动的安全引导方法及装置
CN114547618A (zh) * 2020-11-25 2022-05-27 广东朝歌智慧互联科技有限公司 基于Linux系统的安全启动方法、装置、电子设备及存储介质
CN113094708A (zh) * 2021-04-12 2021-07-09 北京明朝万达科技股份有限公司 电子文件处理方法及装置、存储介质和处理器
CN115147967A (zh) * 2022-06-02 2022-10-04 福建新大陆通信科技股份有限公司 一种基于ctid和超级sim卡的信息核验方法及系统
CN115147967B (zh) * 2022-06-02 2023-12-15 福建新大陆通信科技股份有限公司 一种基于ctid和超级sim卡的信息核验方法及系统
CN116506692A (zh) * 2023-02-20 2023-07-28 福建新大陆通信科技股份有限公司 一种机顶盒影片搜索方法、系统、设备及介质

Also Published As

Publication number Publication date
CN102509047B (zh) 2014-08-27

Similar Documents

Publication Publication Date Title
CN102509047B (zh) 校验机顶盒中程序代码的方法和系统
US8281115B2 (en) Security method using self-generated encryption key, and security apparatus using the same
KR101795457B1 (ko) 보안 기능이 강화된 디바이스의 초기화 방법 및 디바이스의 펌웨어 업데이트 방법
US8966248B2 (en) Secure software file transfer systems and methods for vehicle control modules
US8533492B2 (en) Electronic device, key generation program, recording medium, and key generation method
US9239920B2 (en) Generation of working security key based on security parameters
CN105812570A (zh) 终端固件更新方法及装置
CN116388980B (zh) 一种Android环境密钥分段处理方法及装置
CN109388961B (zh) 存储设备的安全控制方法及存储设备
US20180204004A1 (en) Authentication method and apparatus for reinforced software
CN101520832A (zh) 一种文件代码签名验证系统及其方法
CN108055585B (zh) 数据处理方法、机顶盒升级方法、终端和机顶盒
CN103338450A (zh) 一种验证方法及设备
GB2556638A (en) Protecting usage of key store content
CN104394467B (zh) 机顶盒应用程序的下载方法及机顶盒
CN104135531B (zh) 一种Web软件的升级方法及装置
CN107944234A (zh) 一种Android设备的刷机控制方法
CN114780923A (zh) 一种电子印章的管控方法及系统
KR101642267B1 (ko) 앱 위변조 방지시스템 및 그 방법
CN1863038B (zh) 对终端设备中应用程序实施控制和管理的方法
CN108933790B (zh) 高安全等级的ota升级固件的加密方法
WO2018033017A1 (zh) 一种授信的终端状态转换方法和系统
CN114124403B (zh) 实现设备远程控制的方法、装置和系统
CN105812877A (zh) 一种基于Chip ID的机顶盒启动方法以及系统
CN107992760A (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
C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for verifying program code in set-top box

Effective date of registration: 20150504

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY DIGITAL TECHNOLOGY Co.,Ltd.

Registration number: 2015990000343

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 100191, Taixing building, 11 Garden East Road, Beijing, 4, 401, Haidian District

Patentee after: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Address before: 100191, room 11, 505 Garden Road East, Beijing, Haidian District

Patentee before: BEIJING CYCLE CENTURY DIGITAL TECHNOLOGY Co.,Ltd.

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for verifying program code in set-top box

Effective date of registration: 20160726

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Registration number: 2016990000631

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20160726

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Registration number: 2015990000343

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PM01 Change of the registration of the contract for pledge of patent right

Change date: 20160726

Registration number: 2015990000343

Pledgor after: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Pledgor before: BEIJING CYCLE CENTURY DIGITAL TECHNOLOGY Co.,Ltd.

PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20170622

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Registration number: 2016990000631

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for verifying program code in set-top box

Effective date of registration: 20170622

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Registration number: 2017990000525

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20180702

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Registration number: 2017990000525

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for verifying program code in set-top box

Effective date of registration: 20180726

Granted publication date: 20140827

Pledgee: Bank of Beijing Limited by Share Ltd. double show branch

Pledgor: BEIJING CYCLE CENTURY TECHNOOGY Co.,Ltd.

Registration number: 2018990000609

PE01 Entry into force of the registration of the contract for pledge of patent right
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140827