CN1716850B - 对机顶盒芯片进行安全验证的方法和系统 - Google Patents

对机顶盒芯片进行安全验证的方法和系统 Download PDF

Info

Publication number
CN1716850B
CN1716850B CN 200410084854 CN200410084854A CN1716850B CN 1716850 B CN1716850 B CN 1716850B CN 200410084854 CN200410084854 CN 200410084854 CN 200410084854 A CN200410084854 A CN 200410084854A CN 1716850 B CN1716850 B CN 1716850B
Authority
CN
China
Prior art keywords
shift register
box chip
feedback shift
linear feedback
word
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.)
Expired - Fee Related
Application number
CN 200410084854
Other languages
English (en)
Other versions
CN1716850A (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.)
Avago Technologies General IP Singapore Pte Ltd
Original Assignee
Zyray Wireless Inc
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 Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN1716850A publication Critical patent/CN1716850A/zh
Application granted granted Critical
Publication of CN1716850B publication Critical patent/CN1716850B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • H04N21/42623Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific decryption arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25816Management of client data involving client authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/165Centralised control of user terminal ; Registering at central
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Abstract

本发明公开一种或多种用于鉴权或验证机顶盒中的机顶盒芯片的方法和系统。在一个实施例中,机顶盒中包括一个机顶盒芯片,用来解码或解密有线电视运营商提供的媒体内容。机顶盒芯片包括有解密电路,比较电路,散列函数电路,密钥产生电路,暗道返回电路,线性反馈移位寄存器,定时器复位电路,更改启动状态电路,一次性可编程存储器,以及非易失性存储器。有线电视运营商通过一个需要由机顶盒芯片成功验证的验证序列,来确保机顶盒中所用的机顶盒芯片的合法性。

Description

对机顶盒芯片进行安全验证的方法和系统
技术领域
本发明涉及机顶盒,更具体地说,涉及一种对机顶盒芯片进行安全验证的方法和系统
背景技术
有线电视运营商、卫星运营商或内容提供商会向使用机顶盒的付费用户提供媒体或内容材料。机顶盒中的机顶盒芯片(STBC)的安全特性之最终目的,在于防止未授权实体接收或分发来自内容提供商的材料。现代STBC已采用旨在预防发生这种情况的许多安全特性,这些安全特性大部分是基于芯片内的一次性可编程存储器(OTP存储器)而实现的。所述OTP存储器可用来储存用于解密机顶盒所接收的一个或多个加密序列的密钥。使用这些OTP存储器就可以储存对于某一机顶盒是唯一的密钥。这些密钥用来解密或解码从有线电视运营商处接收到的数据序列。由于每个机顶盒与烧结在OTP存储器中的唯一密钥相关联,所以存取机顶盒芯片的单一OTP存储器不会影响网络内的其它机顶盒。
但是,未授权实体可能会攻克由这种一次性可编程存储器所提供的安全性。如果一个未授权实体获得了大量新的未编程OTP存储器,他只需获得一个能编程所有OTP存储器芯片的授权OTP密钥。一旦获得,该未授权实体就可利用该授权密钥来编程所有的OTP存储器芯片,从而能销售这些机顶盒并赚取可观的利润。该未授权实体可以不断地销售这种未授权的机顶盒,这样就减少了授权内容提供商的销售收入。未授权实体可以持续销售此未授权机顶盒,从而削低授权内容提供商的销售利润。由于这些机顶盒都用是所述授权密钥编程,所以它们作出响应的方式会与含有原授权密钥的机顶盒相同。
在另一实例中,OTP密钥的原数据库可能会受到损坏。如果一个未授权实体窃取或解密了一个或多个STBC中的OTP密钥,通过演绎有关STBC所用的加密机制的附加信息,他就能恢复来自内容提供商的原始内容。通过合法地为一台机顶盒开户,而保留其它机顶盒不开户,就可做到这一点。由于所有机顶盒的OTP密钥已知,未授权实体就可利用从授权机顶盒的工作所获得的知识,在未授权机顶盒中通过电路来解密一个或多个加密密钥。当然,加密方法学也可通过反转解密过程中所用的步骤来实现。结果,未授权的机顶盒就能非法获得有线电视运营商、卫星运营商或内容提供商所提供的内容。
内容提供商可实施一种方法,在该方法中,在机顶盒初始化以向最终用户正确显示内容之前,内容提供商必需发出一个验证序列。内容提供商可在例如与已初始化并启动使用的机顶盒有关的前端更新数据库。结果,使用一个或多个用相同OPT密钥编程的附加STBC对黑客并不奏效,因为内容提供商用特定的OTP密钥仅能启动第一台机顶盒。但如果未授权实体合法地为一台机顶盒开户,当所述机顶盒第一次启动时,他就可监控发送到该机顶盒的验证序列。获得所述验证序列后,所述未授权实体就可使用该序列,在另一时间使用同一序列来启动他自己的非法机顶盒。通过使用已知的OTP密钥来解密所述序列,未授权实体也可使用所述序列演绎出有关原始未加密序列的附加信息。这样,就可能通过向这些非法机顶盒发布已知序列为非法机顶盒授权,而不必由前端激活。在此实例中,未授权实体起了前端的作用。
在另一实例中,未授权实体不监控内容提供商发送的验证序列。而是在第一台机顶盒启动之前制造克隆的机顶盒。未授权实体通过通电并接收内容提供商发送的初始验证序列,可对所有未授权机顶盒进行初始化。从而使所有未授权机顶盒可同时被授权。
发明内容
按照本发明的一个方面,一种验证机顶盒芯片可靠性的方法,包括:
从前端验证装置接收验证序列;
产生加密密钥;
利用所述加密密钥解密所述验证序列以产生一个第一散列数据序列;以及
产生一个第二散列数据序列。
本发明的优选方案中,所述的方法还包括:确定所述第一散列数据序列是否等于所述第二散列数据序列。
本发明的优选方案中,所述的方法还包括:对用于确定所述机顶盒芯片的使用时长的定时器进行复位。
本发明的优选方案中,所述复位是在所述机顶盒芯片接收到含有定时器复位序列的所述验证序列时进行。
本发明的优选方案中,所述的方法还包括:如果所述第一散列数据序列等于所述第二散列数据序列,则启动所述机顶盒芯片。
本发明的优选方案中,所述第二散列数据序列是储存在所述机顶盒芯片中的一个或多个参数的散列函数,所述参数包括:
一个常数;以及
一个来自线性反馈移位寄存器的输出。
本发明的优选方案中,所述常数可仅能由所述机顶盒芯片制造商更改。
本发明的优选方案中,所述来自线性反馈移位寄存器的输出是储存在非易失性随机存取存储器中。
本发明的优选方案中,所述来自线性反馈移位寄存器的输出在接收到随后的验证序列时更改。
本发明的优选方案中,所述来自线性反馈移位寄存器的输出被映射到一个标识字。
本发明的优选方案中,所述前端验证装置和所述机顶盒芯片储存相同的所述常数,并采用相同的所述线性反馈移位寄存器配置,以分别产生所述第一散列数据序列和所述第二散列数据序列。
本发明的优选方案中,所述线性反馈移位寄存器用一个种子(Seed)初始化。
本发明的优选方案中,所述加密密钥是密钥、字和来自线性反馈移位寄存器的输出的函数。
本发明的优选方案中,所述密钥被映射到一个标识字。
本发明的优选方案中,所述字被映射到一个标识字。
本发明的优选方案中,所述字唯一地标识所述机顶盒芯片。
本发明的优选方案中,所述字包括至少64位。
本发明的优选方案中,所述方法还包括:向所述前端验证装置发送重新同步请求以便重新激活所述机顶盒芯片。
本发明的优选方案中,所述重新同步请求是在所述接收的验证序列产生了一个不等于所述第二散列数据序列的第一散列数据序列时触发。
本发明的优选方案中,所述重新同步请求包括所述线性反馈移位寄存器前一状态的输出。
本发明的优选方案中,所述重新同步请求利用所述线性反馈移位寄存器下一状态的输出。
本发明的优选方案中,所述重新同步请求利用所述线性反馈移位寄存器以后数个状态的输出。
本发明的优选方案中,所述以后数个状态对应于以后的两个状态。
本发明的优选方案中,所述以后数个状态对应于以后的三个状态。
本发明的优选方案中,所述第一散列数据序列和所述第二散列数据序列都是同一散列函数的函数。
本发明的优选方案中,用于产生所述加密密钥的函数被用来产生由所述前端验证装置发出的所述验证序列。
本发明的优选方案中,所述方法还包括:使用对每个机顶盒芯片是唯一的初始化种子来初始化线性反馈移位寄存器。
另一方面,本发明提供一种用于验证机顶盒芯片的系统,其中包括:
第一电路,用于从前端发送的一个验证序列产生一个第一散列数据序列;
第二电路,用于执行一个散列函数以产生一个第二散列数据序列;
第三电路,用于产生一个加密密钥函数;
一个线性反馈移位寄存器;
一个一次性可编程存储器,用于储存一个密钥,一个字和一个标识字;
一个非易失性存储器,用于储存来自所述线性反馈移位寄存器的输出,一个定时器值,和一个启动状态指示器;
第四电路,用于发送重新同步请求;以及
第五电路,用于比较所述第一散列数据序列和所述第二散列数据序列。
本发明的优选方案中,所述散列函数是一个常数和来自所述线性反馈移位寄存器的输出的函数。
本发明的优选方案中,所述第一电路采用3DES或AES解密函数。
本发明的优选方案中,所述密钥唯一对应于所述标识字。
本发明的优选方案中,所述字唯一对应于所述标识字。
本发明的优选方案中,在用所述前端试作重新同步之前所述线性反馈移位寄存器被增加到一个或多个连续状态。
本发明的优选方案中,所述验证序列包含用于增加所述线性反馈移位寄存器状态的识别码。
对于常规和传统方案的其他局限制和缺点,当本领域的普通技术人员将这种系统与在本申请以下部分中结合附图所作的本发明方案进行比较之后,就可一目了然。
本发明的各方面包括对机顶盒芯片(STBC)或机顶盒(STB)中所用的机顶盒集成电路进行验证的系统和方法。
在一个实施例中,验证机顶盒芯片可靠性的方法包括以下步骤:从一个前端验证装置接收一个验证序列,产生加密密钥,使用加密密钥解密验证序列以产生一个第一散列数据序列,产生一个第二散列数据序列,以及确定所述第一散列数据序列是否等于所述第二散列数据序列。在一个实施例中,第二散列数据序列是储存在所述机顶盒芯片中的一个或多个参数的散列函数。所述这些参数包括一个常数和一个来自线性反馈移位寄存器的输出。在一个实施例中,所述方法包括向前端验证装置发送重新同步请求,以便重新激活机顶盒芯片的步骤。在另一实施例中,该方法包括利用对各机顶盒芯片是唯一的初始化种子来初始化线性反馈移位寄存器的步骤。
在一个实施例中,使有线电视前端能验证机顶盒芯片的系统包括:一个解密电路,用于从由有线电视前端发送的一个验证序列产生一个第一散列数据序列;一个散列函数电路,用于执行散列函数以产生第二散列数据序列;一个加密密钥产生函数电路;一个线性反馈移位寄存器;一个用于存储一个或多个密钥的一次性可编程存储器;一个非易失性存储器,用于储存来自所述线性反馈移位寄存器的输出、一个定时器值、以及启动状态指示器。此外,还使用了一个用于发送重新同步请求的返回通道电路;以及一个用于比较第一散列数据序列和第二散列数据序列的比较电路。
从以下附图和说明中可以更充分地理解本发明的这些以及其它优点、方面、和新颖特性,以及所示实施例的详情。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1示出按照本发明的实施例利用机顶盒芯片(STBC)的机顶盒(STB)验证系统的方框图。
图2示出按照本发明实施例的机顶盒芯片(STBC)的详细方框图。
图3示出按照本发明的实施例在使机顶盒芯片重新同步于前端验证装置时所使用的连续线性反馈移位寄存器(LFSR)的关系方框图。
具体实施方式
本发明的各方面包括对机顶盒芯片(STBC)或机顶盒(STB)中所用的机顶盒集成电路的可靠性进行验证的系统和方法。所用的一种或多种方法和系统可防止一个或多个未授权实体对机顶盒的非法复制及操作。所述机顶盒包括一个机顶盒芯片,其用于解码或解密有线电视运营商、卫星运营商或内容提供商提供的媒体内容。有线电视运营商通过需要由STBC成功验证的验证序列来确保STB中的STBC的合法性。
图1是按照本发明的实施例利用机顶盒芯片(STBC)108的机顶盒(STB)验证系统100的方框图。所述STB验证系统包括与一个或多个机顶盒(STB)通讯连接的前端验证装置(HVD)104。为便于说明,所述STB验证装置100仅示出一个HVD104与一个单一的STBC108通讯。所述STBC108作为硬件驻留在典型的机顶盒(STB)中。所述HVD包括硬件和/或软件的组合,用于产生发送到所述STBC108的验证序列V。所述HVD104包括能存储软件的计算装置,例如台式电脑。所述HVD104包括处理器,主处理器存储器以及诸如硬盘驱动器的储存装置。所述软件包括一个或多个数据库以及验证STBC108时所用的软件应用程序。HVD104驻留在有线电视运营商的前端或控制中心内。
工作时,HVD104通过许多步骤产生一个验证序列V。如图1所示,一个加密密钥用来和一个散列输出结合以产生所述验证序列V。所述加密密钥由HVD104的加密引擎112产生。所述加密引擎112包括加密电路或采用3DES或AES加密函数的软件。所述加密引擎112作为输入端接收一个加密密钥和一个第一散列数据序列。所述加密密钥是字(此处以校验字VER表示)、密钥(此处以一次性可编程密钥OTPK表示)、以及线性移位寄存器(LFSR)116的输出LF的函数。LFSR116的所述输出LF增加,从而验证序列V在每一次成功验证后都变化。这样,同一验证序列V不能连续用来重新启动同一个STB。VER和OTPK参数可储存在有线电视前端的一个或多个储存装置中的一个或多个安全的数据库中。应使VER和OTPK参数包括对应于STBC制造商所制造的各授权STBC的唯一数值。如图所示,所述加密密钥由采用密钥产生函数f(*)的密钥产生单元118实现。所述密钥产生单元118包括硬件和/或软件。
所述密钥产生单元可通过执行软件指令或驻留在所述HVD104中的应用程序来实现。所述第一散列数据序列是散列函数的函数。所述散列函数由图1所示的散列函数单元120来实现。如图所示,所述散列函数单元120接收由所述LFSR116和一个常数(此处用隐常数(HC)表示)提供的输入。所述散列函数单元120包括硬件和/或软件并可通过执行驻留在所述HVD104中的软件指令来实现。
验证序列可以表示为以下变量或参数的函数:
V=E{f(VER,OTPK,LF),f(HC,LF)},式中VER为校验字,OTPK是一次性可编程密钥,LF是LFSR的输出,以及HC是隐常数。就是说,发送到STB的验证序列是两个函数的函数。加密密钥f(VER,OTPK,LF)是VER,OTPK,和LF的函数,而未加密数据f(HC,LF)是HC和LF的函数。所述校验字VER至少包括64位。
散列函数用来加扰LFSR的输出。所述散列函数可以是SHA-1或能安全地使原有内容模糊的任何其它类型函数。
一旦验证序列V由STBC108接收,所述验证序列就由解密电路124解密。所述解密电路124包括实现3DES的电路或者使验证序列V能在STBC108上正确解密的AES加密技术。为了解密所述验证序列V,所述解密电路124接收采用同一函数f(*)的密钥产生电路128所提供的输入,如前结合HVD104所述。加密密钥是所述校验字VER,所述一次性可编程密钥OTPK以及线性移位寄存器(LFSR)132的所述输出LF的函数。通过加入所述加密密钥,所述解密电路124就可在所述HVD104上恢复以前所产生的所述第一散列数据序列。散列函数电路136产生第二散列数据序列。所述散列函数电路136使用所述LFSR132的输出和一个常数或隐常数(HC)作为输入。在一个实施例中,隐常数(HC)是利用储存在STBC中的一个或多个可编程参数来产生的。在所述HVD104上也使用同样的可编程参数,以便在加密过程中产生相同的隐常数。结果,许多STBC的HC都可储存在所述前端的HVD104中,供所述加密引擎112使用。在一个实施例中,所述隐常数(HC)由所述STBC制造商确定,而所述有线电视运营商、卫星运营商或内容提供商确定OTPK,VER,和LF的数值。所述隐常数以一种仅为STBC制造商所知的方式使用可编程参数来更改。STBC制造商可通过硬件和/或位于所述STBC和所述HVD104中的软件来实现可编程参数。在一个实施例中,根据STBC制造商提供的一个或多个初始数值,可编程参数各不相同。这样,如果HVD104中一个或多个OTPK,VER,或LF数据库受到黑客或未授权个人的损坏,通过使用仅为所述STBC制造商所知的初始数值的实施方案和/或数据库来更改隐常数,就可以保持安全性。
比较电路140将所述恢复的第一散列数据和所述第二散列数据序列进行比较。如果第一散列数据等于第二散列数据序列,则所述比较电路140输出一个状态指示符信号。所述状态指示符信号产生人们可读出的消息,该信息显示在位于机顶盒(STB)中的示范LED上。例如,如果所述第一散列数据等于所述第二散列数据序列,所述状态指示符信号就产生字“成功”;否则,所述状态指示符信号就产生字“失败”。
图2示出按照本发明实施例的机顶盒芯片(STBC)200的详细方框图。所述STBC200包括解密电路204,比较电路208,散列函数电路212,加密密钥产生电路216,线性反馈移位寄存器(LFSR)220,定时器复位电路224,更改启动状态电路226,暗道返回电路228,一次性可编程(OTP)存储器232,以及非易失性随机存取存储器(NVRAM)236。所述解密电路204接收前端发送的验证序列V。所述验证序列V由前端验证装置(HVD)产生,如结合图1所述。解密电路204使用所述密钥产生电路216提供的加密密钥来解密所述验证序列V。所述解密电路204输出以前由所述HVD的所述加密引擎加密的已恢复的第一散列数据序列。所述已恢复的第一散列数据序列被输入到比较电路208。所述散列函数电路212产生第二散列数据序列,作为提供到比较电路208的输入。所述散列函数输出是一个常数(称为隐常数,因为它仅可由STBC制造商更改)和所述LFSR220的输出的函数。所述比较电路208将所述第一散列数据序列和所述第二散列数据序列进行比较。如果第一散列数据等于第二散列数据序列,所述比较电路208产生一个控制信号到所述定时器复位电路224。结果,所述定时器复位电路224将储存在所述非易失性随机存取存储器236中的定时器值复位。所述定时器值对应于STBC自身截止前所余留的时间量。所述定时器值可被设为有线电视运营商需要的任何值。所述值应超过连续复位之间的时间。如果所述第一散列数据不等于所述第二散列数据序列,所述比较电路208产生一个禁止复位储存在NVRAM236中的定时器值的控制信号。在另一实施例中,当一个或多个验证序列不允许复位所述NVRAM236中的定时器值时,所述前端验证装置确定接收并读出验证序列的STBC未被授权使用。在本实施例中,所述暗道返回电路228可由所述前端验证装置用作与所述STBC通讯并随后禁止STBC的机件。如图2所示,所述OTP密钥(OTPK),校验字(VER),和OTPID字(OTPID)储存在所述机顶盒芯片的所述OTP存储器232中。OTPK,VER和OTPID可由所述机顶盒芯片制造商在机顶盒制造过程中烧入所述OTP存储器232中。
当验证序列由前端发出时,所述前端验证装置(HVD)自动增加其LFSR。当所述验证序列被适合的STBC200接收时,如果验证成功(即:所得的第一散列数据序列等于第二散列数据序列),所述STBC200产生一个控制信号使所述LFSR220增加到其下一个状态。本方法的结果,所述HVD发送到所述STBC200的下一个验证序列就会不同。总之,定期改变所述验证序列对黑客构成了严重的威慑。当然,黑客会发现要破解和解密不断在改变的验证序列是更加困难了。所述比较电路208产生的控制信号输入到所述改变启动状态电路226。当验证成功时,所述改变启动状态电路226就改变启动状态寄存器或在所述NVRAM236中的位置以指示所述STBC200已启动。如果所述STBC200掉电,储存在所述NVRAM236中的一个或多个数值(即:LFSR状态(或LF),定时器值,以及启动状态)不会丢失。由于所述存储器是非易失性的,所以在STB恢复供电时,这些数值仍然保留。例如,当STB无意中被拔出时,或如果停电时,就可能发生这种事故。
所述STB200能够监控所述HVD发出的所有验证序列,以根据当前的LFSR220状态同步其自身。如果所述STB200不能监控输入的验证序列,那么它就不能转换到下一个状态,并且所述HVD和STB200之间的LFSR220状态就会不同。这种情况不解决,STBC200就不能复位其定时器;结果,STBC在适当的时候就会被禁止。这样,STBC就会自身禁止而无需前端干预。
当然,如果所述STBC是运算型的,这就不成为问题。然而,由于所述验证序列可能在机顶盒已拔出或STBC断电时发出,就需要有一种方法使所述HVD与所述STBC的LFSR200再同步。这可以由例如暗道返回电路228来完成。每当验证序列未能被STBC成功解密时,所述暗道返回电路228就被自动触发。在这种实例中,所述STBC200从其NVRAM236加载其LFSR220状态的前一数值(以便不暴露其当前值),将该数值传送到所述散列函数电路212,使用所述校验字(VER)将其加密,然后将其发送到HVD,HVD接收到该数值后,将其LFSR状态重新同步到与所述STBC相匹配的数值。
暗道重新同步的能力对于黑客来说是很脆弱的,因为它能允许黑客重新同步特定机顶盒的LFSR状态。但考虑到一个黑客已使用相同的OPTK和相同的LFSR初始化状态克隆了许多机顶盒。只要有一个克隆的机顶盒由于被拔出或由于断电而请求重新同步,当发出新的验证序列时,该特定OTPK的HVD的LFSR状态就会使所有其它克隆的机顶盒失效。发生这种情况时,所有的克隆机顶盒(除了最初掉电的那个STBC之外)都会请求重新同步。这会使第一个机顶盒再次失效并导致附加的重新同步请求。这就形成一种不稳定状态。在同一STBC发出多次请求后,所述前端就可确定一个或多个STB已受影响,就可产生一个或多个指令和/或消息,指示有一个或多个克隆的STB未被授权。
在具有未授权OTPK的多个未授权STB正被使用的情况下,所述克隆的机顶盒就不可能请求重新同步,因为所述前端验证装置仅能识别来自授权OTPK的请求。由于重新同步请求涉及到OTPID字和OTPK等要素,前端就非常容易确定该请求是发自未授权源。所述前端随后就可手动禁止这些未授权的机顶盒,或只要让它们的定时器过期就可。
在一个实施例中,STBC被设计为没有暗道返回电路228。在此实施例中,所用的技术被改动以减少授权机顶盒与所述前端验证装置不同步情况的发生。有两种方法可以达到这一点。在一个实施例中,其方法采用多次发送验证序列,直到所述STBC复位其定时器。例如,所述发送的验证序列具有某种类型的已编码识别码,使STB对既定的识别码仅增加其LFSR一次。如果接收到含有相同识别码的相同验证序列,就不采取任何动作,直到所述识别码已改变。这可允许前端多次发送相同的验证序列而仅增加所述LFSR状态一次。该技术考虑到了用户关掉装置或停电时掉电的可能性。如果相同的验证序列(带有识别码)在数周的时期内持续发送,则STB被拔出的时间长于发送验证序列时期的机会是非常小的。
在另一实施例中,为所述STBC中的LFSR配置了“窗口”能力。如果没有收到一个验证序列,所述STBC在试图再次解码验证序列之前有能力将其LFSR状态增加一个或多个状态。在此实施例中,所述LFSR在某个小数量的增加状态时可继续解码验证序列。例如,增加状态包括一个“窗口”,该窗口被设定为等于一个相对小的数(例如3)。将窗口设定到数值3就类似于允许STBC没有收到三个验证序列。或者,如果每周发送一个新的验证序列,设定三周的“窗口”就可允许通过重新同步来恢复,如果STB连续三周被拔下的话(或每周正好在发送验证序列时拔下一次,不过这种情况可能性非常小)。
图3示出按照本发明的实施例在使机顶盒芯片重新同步于前端验证装置时所使用的连续LFSR状态的关系方框图。所述当前状态300示为状态S(j)。下一个状态S(j+1)由“窗口”304表示。在此实例中,所述“窗口”304包括后面三个可能状态。所述STBC使用这后面三个LFSR状态中的任何一个连续试图重新同步到HVD。
由于利用上述任一种技术时与前端不同步的可能性很小,就不需要重新同步暗道返回电路。如果机顶盒拔下的时间比发送验证序列的周期还长,用户可打电话到有线电视运营商的用户服务中心,请求重新同步他们的STBC。例如,用户服务中心可提供给用户一个验证序列来重新同步他们的STBC。
定期验证也可确保即使黑客设法成功地越过了一次验证序列,他的芯片也只能启动一段有限的时间,而后就会再次被禁止。前端基于它从STBC收到的信息就能够手动禁止它已知受影响的STB。即使所述HVD没有此信息,所述STBC也会因为它未配置成能正确地接收验证序列被禁止。
在机顶盒发运之前,可将唯一的初始LFSR种子编程到其NVRAM中,以使每个STBC从不同的状态启动其LFSR。这样,即使所述LFSR的配置被未授权实体解密,也不可能确定LFSR状态,因为不知道初始的LFSR种子。由于每个STBC用一个唯一的LFSR种子初始化,黑客就不能用前端发送的同一验证序列来启动多个STB。请注意NVRAM含有敏感数据,且所述STBC应配置成能防止存取NVRAM。例如,应确保NVRAM的内容不能被处理器(CPU)或任何其它的过程(例如内置自测试(BIST)或扫描测试)存取。
所述一次性可编程密钥(OPTK)唯一对应于一个标识符字(称为一次性可编程标识字(OTPID字)),而校验字(VER)唯一对应于OTPID字。这些唯一对应关系或映象储存为两个独立而分别的数据库。而且,所述LFSR种子或初始化值唯一对应于所述标识符字,从而,所述LFSR种子映象到OTPID字,并分别储存为其自己的数据库。由于这三个映象各自储存为分别的数据库,它们就可作为数据文件储存在分别的计算装置中。当然,所述计算装置可分别位于不同的位置,且有线电视运营商可采用一种或多种安全措施以允许仅被授权人员存取这些计算装置和/或数据库。由于在验证过程中使用许多分别位于不同位置的数据库,这就消除了黑客数据库(例如黑客OTPK数据库)影响验证过程的可能性。总之,需要了解所有三个数据库以成功验证芯片。
虽然已参阅某些实施例对本发明作了说明,本领域的普通技术人员将理解可以作各种改变且可用等效物替代,而不背离本发明的范围。此外,可以作许多更改以使特定情况或材料适应本发明的内容,而不背离本发明的范围。所以,本发明的范围不应限于所公开的实施例,而应包含落入权利要求书范围内的所有实施例。

Claims (6)

1.一种验证机顶盒芯片可靠性的方法,所述机顶盒芯片包括:
一个线性反馈移位寄存器;
一个一次性可编程存储器,用于储存一个密钥、一个字和一个标识字;其中所述密钥唯一对应于所述标识字,所述字唯一对应于所述标识字,所述线性反馈移位寄存器的初始化种子唯一对应于所述标识字;其特征在于,所述方法包括:
从前端验证装置接收验证序列;
产生加密密钥,其中,由机顶盒芯片中的密钥产生电路产生加密密钥,所述加密密钥是所述密钥、所述字、以及来自所述线性反馈移位寄存器的输出的函数;
利用所述加密密钥解密所述验证序列,以产生第一散列数据序列;
产生第二散列数据序列,其中,由机顶盒芯片中的散列函数电路通过执行散列函数以产生第二散列数据序列,其中,所述散列函数是一个常数和来自所述线性反馈移位寄存器的输出的函数,当接收到一个后续验证序列时,所述来自线性反馈移位寄存器的输出会被更改;
如果所述第一散列数据序列等于所述第二散列数据序列,则启动所述机顶盒芯片,并复位用于确定所述机顶盒芯片的使用时长的定时器。
2.如权利要求1的方法,其特征在于,所述一个常数和所述来自线性反馈移位寄存器的输出存储在所述机顶盒芯片中。
3.如权利要求2的方法,其特征在于,所述常数仅可由所述机顶盒芯片的制造商更改。
4.如权利要求2的方法,其特征在于,所述来自线性反馈移位寄存器的输出储存在所述机顶盒芯片的一个非易失性随机存取存储器中。
5.如权利要求2的方法,其特征在于,所述来自线性反馈移位寄存器的输出被映射到所述标识字。
6.一种用于验证机顶盒芯片的系统,其特征在于,包括:
一个线性反馈移位寄存器;
一个一次性可编程存储器,用于储存一个密钥、一个字和一个标识字;其中所述密钥唯一对应于所述标识字,所述字唯一对应于所述标识字,所述线性反馈移位寄存器的初始化种子唯一对应于所述标识字;
一个非易失性存储器,用于储存来自所述线性反馈移位寄存器的输出、一个定时器的值、以及所述机顶盒芯片的启动状态指示,其中所述定时器用于确定所述机顶盒芯片的使用时长;
第一电路,用于使用加密密钥解密从前端验证装置发来的验证序列,从而产生第一散列数据序列;
第二电路,用于执行散列函数以产生第二散列数据序列,其中,所述散列函数是一个常数和来自所述线性反馈移位寄存器的输出的函数,当接收到一个后续验证序列时,所述来自线性反馈移位寄存器的输出会被更改;
第三电路,用于产生加密密钥,其中,所述加密密钥是所述密钥、所述字、以及来自所述线性反馈移位寄存器的输出的函数;
第四电路,用于向所述前端验证装置发送重新同步请求;以及
第五电路,用于比较所述第一散列数据序列和所述第二散列数据序列;
其中,如果所述第一散列数据序列等于所述第二散列数据序列,则启动所述机顶盒芯片。
CN 200410084854 2003-09-29 2004-09-28 对机顶盒芯片进行安全验证的方法和系统 Expired - Fee Related CN1716850B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US50689403P 2003-09-29 2003-09-29
US60/506,894 2003-09-29

Publications (2)

Publication Number Publication Date
CN1716850A CN1716850A (zh) 2006-01-04
CN1716850B true CN1716850B (zh) 2011-01-05

Family

ID=34193400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200410084854 Expired - Fee Related CN1716850B (zh) 2003-09-29 2004-09-28 对机顶盒芯片进行安全验证的方法和系统

Country Status (3)

Country Link
EP (1) EP1519579B1 (zh)
CN (1) CN1716850B (zh)
TW (1) TWI261448B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1895770A1 (en) * 2006-09-04 2008-03-05 Nokia Siemens Networks Gmbh & Co. Kg Personalizing any TV gateway
CN101145906B (zh) * 2006-09-13 2010-10-06 北京邦天信息技术有限公司 对单向网络中的接收终端进行合法性认证的方法及系统
CN101631226B (zh) * 2008-07-17 2011-09-21 承景科技股份有限公司 电视系统的解密装置及解密方法
CN101783925B (zh) * 2010-03-30 2012-07-04 南京邮电大学 一种用于对等计算机顶盒的视频数据安全保护方法
CN103220578B (zh) * 2013-03-26 2016-03-09 深圳市九洲电器有限公司 一种高安全机顶盒及其生产方法、系统
CN105138870B (zh) * 2015-10-08 2018-09-07 浪潮(北京)电子信息产业有限公司 一种芯片合法性鉴别方法及装置
CN105430437A (zh) * 2015-11-18 2016-03-23 深圳市九洲电器有限公司 网络公司数字内容验证方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4712239A (en) * 1986-06-16 1987-12-08 General Instrument Corporation Security arrangement for downloadable cable television converters
EP0506637A2 (en) * 1991-03-29 1992-09-30 Ericsson Inc. Cellular verification and validation system
CN1208296A (zh) * 1997-06-17 1999-02-17 株式会社东芝 利用一组多个密钥鉴别设备的设备鉴别器
GB2377348A (en) * 2001-07-04 2003-01-08 Digital Video Networks Ltd Security unit for encrypted signal transmission
US6550008B1 (en) * 1999-02-26 2003-04-15 Intel Corporation Protection of information transmitted over communications channels

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6507907B1 (en) * 1999-02-26 2003-01-14 Intel Corporation Protecting information in a system
DE10216396A1 (de) * 2002-04-12 2003-10-23 Scm Microsystems Gmbh Verfahren zur Authentisierung

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4712239A (en) * 1986-06-16 1987-12-08 General Instrument Corporation Security arrangement for downloadable cable television converters
EP0506637A2 (en) * 1991-03-29 1992-09-30 Ericsson Inc. Cellular verification and validation system
CN1208296A (zh) * 1997-06-17 1999-02-17 株式会社东芝 利用一组多个密钥鉴别设备的设备鉴别器
US6550008B1 (en) * 1999-02-26 2003-04-15 Intel Corporation Protection of information transmitted over communications channels
GB2377348A (en) * 2001-07-04 2003-01-08 Digital Video Networks Ltd Security unit for encrypted signal transmission

Also Published As

Publication number Publication date
CN1716850A (zh) 2006-01-04
TW200525976A (en) 2005-08-01
EP1519579B1 (en) 2014-03-05
TWI261448B (en) 2006-09-01
EP1519579A1 (en) 2005-03-30

Similar Documents

Publication Publication Date Title
US7797551B2 (en) Secure verification using a set-top-box chip
KR101659110B1 (ko) 테스트 디바이스에 의한 보안 칩으로의 액세스 인증 방법
US6304969B1 (en) Verification of server authorization to provide network resources
JPH0675251B2 (ja) 伝送路を介して外部媒体に接続された携帯可能物体を外部媒体によって認証する方法、及び該方法を実施するシステム
EP1855224B1 (en) Method and system for command authentication to achieve a secure interface
JPH08298657A (ja) アクセス権の増加配送のための方法及び装置
CN102833593A (zh) 一种智能电视应用的授权方法、系统及智能电视
CN103782538A (zh) 认证器
US20120096280A1 (en) Secured storage device with two-stage symmetric-key algorithm
CN109635610A (zh) Rfid标签数据的读写系统及方法
CN101770559A (zh) 数据保护装置和方法
US9003197B2 (en) Methods, apparatus and system for authenticating a programmable hardware device and for authenticating commands received in the programmable hardware device from a secure processor
WO2023240866A1 (zh) 密码卡及其根密钥保护方法、计算机可读存储介质
JP3824297B2 (ja) 外部記憶装置とシステム装置との間でなされる認証方法、認証システム、および外部記憶装置
CN1716850B (zh) 对机顶盒芯片进行安全验证的方法和系统
JP4137468B2 (ja) プログラム使用認証方法
JP2009059065A (ja) 電子機器、決済システム及びプログラム
CN112241633A (zh) 一种非接触式智能卡的双向认证实现方法及系统
CN113127814B (zh) 软件防抄方法、装置、电子设备及可读存储介质
CN112668024A (zh) 一种燃气表表端数据防止篡改的方法
CN111611602A (zh) 一种基于国密芯片的安全可控量产方法
CN102236754B (zh) 数据保密方法以及使用此数据保密方法的电子装置
CN114598461B (zh) 终端设备的联机解锁方法、终端设备及可读存储介质
US20080189791A1 (en) Device running with embedded software and method for verifying embedded software license
CN213780963U (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
TR01 Transfer of patent right

Effective date of registration: 20180508

Address after: Singapore Singapore

Patentee after: Avago Technologies Fiber IP Singapore Pte. Ltd.

Address before: california

Patentee before: Zyray Wireless Inc.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190829

Address after: Singapore Singapore

Patentee after: Annwa high tech Limited by Share Ltd

Address before: Singapore Singapore

Patentee before: Avago Technologies Fiber IP Singapore Pte. Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110105

Termination date: 20200928

CF01 Termination of patent right due to non-payment of annual fee