CN101145906B - 对单向网络中的接收终端进行合法性认证的方法及系统 - Google Patents

对单向网络中的接收终端进行合法性认证的方法及系统 Download PDF

Info

Publication number
CN101145906B
CN101145906B CN2006101129782A CN200610112978A CN101145906B CN 101145906 B CN101145906 B CN 101145906B CN 2006101129782 A CN2006101129782 A CN 2006101129782A CN 200610112978 A CN200610112978 A CN 200610112978A CN 101145906 B CN101145906 B CN 101145906B
Authority
CN
China
Prior art keywords
firmware
uid
signature
receiving terminal
server authentication
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.)
Active
Application number
CN2006101129782A
Other languages
English (en)
Other versions
CN101145906A (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 Baustem Information Technology Co., Ltd.
Original Assignee
BEIJING BAUSTEM INFORMATION 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 BAUSTEM INFORMATION TECHNOLOGY Co Ltd filed Critical BEIJING BAUSTEM INFORMATION TECHNOLOGY Co Ltd
Priority to CN2006101129782A priority Critical patent/CN101145906B/zh
Publication of CN101145906A publication Critical patent/CN101145906A/zh
Application granted granted Critical
Publication of CN101145906B publication Critical patent/CN101145906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

一种对单向网络中的接收终端进行合法性认证的方法及系统,先在终端设备中写入芯片的UID的数字签名,终端固件从网络中下载一个服务器认证代理程序,该程序运行在终端的硬件平台上,用自身内嵌或是网络中获取的签名证书的公钥对UID签名进行解密,如果判断出解密值与芯片中读出的UID的摘要值相同,且该签名证书在由根证书建立起的信任链中,则该终端合法,否则不合法。另外,也可在固件自检过程中,用签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其摘要值,如两个值相同,自检通过,否则退出工作状态。本发明通过终端固件的自检或服务器认证代理程序与固件的相互认证,使得克隆和仿制的机顶盒无法在网络中正常工作。

Description

对单向网络中的接收终端进行合法性认证的方法及系统
技术领域
本发明涉及单向数字传输网络,尤其涉及一种基于单向数字传输网络中对终端设备合法性进行认证的方法。
背景技术
在双向的网络环境中,前端的服务器和终端的设备可以通过双向认证的方式来相互验证对方身份的合法性。但是在单向的网络环境下,如广播电视的HFC网,卫星广播网和地面数字电视网,由于没有回传通道,网络终端的设备的合法性无法通过一般的双向认证的方式得到认证,从而网络服务可能由于仿制和克隆网络终端而被盗取。
为了解决对于终端合法性认证的问题,可采用从网络前端下载服务器认证代理程序,运行在终端的硬件平台上,在终端制造一个虚拟的双向环境的方法。客户端程序,即接收终端固件,和下载的服务器认证代理程序之间形成一个双向环境,就可以进行双向认证。这个方法在EuroLoader的协议中作了定义。但是EuroLoader的协议是针对服务器端程序和接收终端固件的完整性认证而设计的,没有解决对接收终端唯一性认证的问题。
为了解决对接收终端唯一性认证的问题,我们为每个接收终端指定一个唯一标识符(UID)。下载的服务器认证代理程序可以检查这个接收终端的UID是否合法来确认这个接收终端的合法性。在这个确认的过程中,有两个难点。一是接收终端可以伪造UID来欺骗服务器认证代理程序,二是服务器认证代理程序一旦下载到接收终端,就无法再与前端的数据库通信。如果要检查UID是否合法,常用的方法是服务器认证代理程序携带所有合法UID的信息,在验证时进行比对。但是对于一个超过100万用户的网络,这个信息量将是个天文数字,所以这种方法在这种情况下是不可能实现的。
发明内容
本发明要解决的技术问题是提供一种对单向网络中的接收终端进行合法性认证的方法。
针对上述第一个难点,可以利用半导体芯片的技术,将接收终端的UID固化到接收终端的芯片中去。这个技术在芯片生产时将UID的信息散布在大规模的集成电路中,可以读取但基本不可能复制,保证了UID的唯一性。而针对第二个难点。本发明提出了对UID签名的方法,服务器认证代理程序只需要验证UID的签名是否正确,就可以验证UID是否合法。
基于以上思路,本发明提供了一种对单向网络中的接收终端进行合法性认证的方法,包括以下步骤:
(a)在接收终端的生产过程中,将一部分信息固化为固件,包括功能程序、根公钥、第一签名证书、唯一标识符UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的;
(b)所述接收终端上电后,自检通过后,将包含所述根公钥的服务器认证代理程序下载到本地的硬件平台;
(c)所述固件先对所述服务器认证代理程序进行认证,如认证通过,继续下一步,否则,退出工作状态,结束;
(d)所述服务器认证代理程序用所述根公钥验证固件中的所述第一签名证书是否来自可信任的来源,以及用所述第一签名证书的公钥对UID签名解密得到的解密值是否与读出的芯片UID的数字摘要值相同,如果均是,则对所述接收终端的合法性认证通过,否则,认证不通过。
在一较佳实施例中,所述步骤(b)中接收终端的自检包括以下步骤:
固件先用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算出其数字摘要值,将这两个值进行比较,如果相同,自检通过,继续下一步;如果不同,该接收终端为非法接收终端,固件退出工作状态,结束。
在一较佳实施例中,所述步骤(a)的接收终端生产过程中,所述固件中还包括固件的数字签名;所述步骤(b)中,接收终端的自检包括以下步骤:
所述固件用所述第一签名证书的公钥解密所述固件的数字签名得到解密值,再按照对固件签名时的相同算法对接收终端中存储的固件进行数字摘要计算,如果计算的摘要与解密值相同,则自检通过,继续下一步;否则退出工作状态,结束。
在一较佳实施例中,所述服务器认证代理程序中还包括用第二签名证书的私钥对本程序的数字签名,所述步骤(c)中,固件对所述服务器认证代理程序的认证包括以下两个方面:
A,所述固件先用服务器认证代理程序内嵌或从网络中得到的第二签名证书的公钥解密所述服务器认证代理程序的数字签名,得到解密值,再按相同算法对该服务器认证代理程序进行数字摘要计算,如果计算的摘要与解密值相同,则确认该服务器认证代理程序是正确和完整的;
B,所述固件用根公钥验证第二签名证书是否来自可信任的来源,如果是,那么确认服务器认证代理程序来自合法的来源;
只有确认所述服务器认证代理程序是正确和完整的,并且来自合法的来源时,所述固件对所述服务器认证代理程序的认证通过。
在一较佳实施例中,所述步骤(d)中,如合法性认证通过,则所述服务器认证代理程序才为接收终端进行软件升级或服务更新操作,否则,所述服务器认证代理程序不执行这些操作。
基于以上思路,本发明还提供了一种对单向网络中的接收终端进行合法性认证的方法,包括以下步骤:
(a)在接收终端的生产过程中,将一部分信息固化为固件,包括功能程序、根证书、签名证书、UID签名,该UID签名是用该签名证书的私钥对芯片的UID签名得到的;
(b)所述接收终端上电后,所述固件进行自检,用该签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,将这两个值进行比较,如果相同,自检通过,继续后续处理;否则,自检不通过,退出工作状态,结束。
在一较佳实施例中,所述步骤(b)所述固件在自检时,还用所述签名证书的公钥解密所述固件的数字签名得到解密值,再按照对固件签名时的相同算法对接收终端中存储的固件进行数字摘要计算,如果计算的摘要与解密值相同,则认为固件是正确和完整的,并将其作为自检通过的必要条件,如计算的摘要与解密值不同,退出工作状态,结束。
本发明要解决的另一技术问题是提供一种可实现对自身合法性认证的单向网络中的接收终端。
本发明的可实现对自身合法性认证的单向网络中的接收终端,包括固件以及与网络的通讯接口,所述固件包括功能单元以及根公钥、第一签名证书和UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的。所述功能单元包括一个下载子单元,用于将所述服务器认证代理单元的代码从所述网络侧设备下载到接收终端并运行;一个程序认证子单元,用于对下载的服务器认证代理单元的代码进行认证;以及一自检子单元,用于在上电后,用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,比较这两个值,如果相同,自检通过,否则,自检不通过,退出工作状态。
本发明要解决的又一技术问题是提供一种可对单向网络中的接收终端进行合法性认证的系统。
本发明提供的一种可对单向网络中的接收终端进行合法性认证的系统,包括网络侧设备、接收终端和服务器认证代理单元,其中:
所述服务器认证代理单元的代码存储在所述网络侧设备中,并可被下载到所述接收终端并运行,用于利用其携带的根公钥验证接收终端固件中的第一签名证书是否来自可信任的来源,并用该第一签名证书的公钥对唯一标识符UID签名解密,比较解密值与读出的芯片UID的数字摘要值是否相同,如果均是,则对该接收终端合法性的认证通过,否则,认证不通过;
所述接收终端的固件包括功能单元以及所述根公钥、第一签名证书和UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的,所述功能单元包括一个下载子单元,用于将所述服务器认证代理单元的代码从所述网络侧设备下载到接收终端并运行;一个程序认证子单元,用于对下载的服务器认证代理单元的代码进行认证;以及一个自检子单元,用于在上电后,用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,比较这两个值,如果相同,自检通过,否则,自检不通过,退出工作状态。
由上可知,本发明在基于单向数字传输网络中,利用终端芯片UID的唯一性和数字签名的不可否认性,对终端设备进行双向认证,实现了对终端设备合法性的识别,可防止单向网络终端设备被仿制和克隆。可以应用于HFC网络,数字卫星网络和无线数字电视网中的接收设备的合法性识别。
附图说明
图1是本发明实施例方法的流程图。
具体实施方式
下面先简要介绍一下本发明要使用到的数字签名和数字摘要技术。
数字签名是一个广泛应用的数字安全技术。它建立在非对称密钥算法和数字摘要的基础上。非对称密钥算法采用一对密钥进行加解密的操作,公钥加密,私钥解,用于保密性要求;私钥加密,公钥解用于不可否认性要求。如果发送的信息要经过信息发送者的署名,则需要用信息发送者的私钥做签名操作,则接收方只要用发送者的公钥进行验证,就可识别信息发布者的身份。常用的公钥算法有RSA、DSA、Diffie-Hellman等。
数字摘要是把一个叫做散列算法的单向数学函数应用于数据,其运算结果就是将任意长度的一块数据转换为一个定长的、不可逆转的数字。散列算法通常用于数字签名过程。最常用的两个散列函数是MD5和SHA-1。
数字证书的格式一般采用X.509国际标准。数字证书的格式在ITU标准和X.509 V3里定义,包括证书申请者的信息和发放证书CA的信息,如下所示:
◆证书版本号,不同版本的证书格式不同;
◆序列号,同一身份验证机构签发的证书序列号唯一;
◆签名算法,包括必要的参数;
◆身份验证机构的标识信息;
◆有效期;
◆证书持有人的标识信息;
◆证书持有人的公钥;
◆身份验证机构对证书的签名。
本发明对接收终端认证的实现是由两个软件程序来完成的,一个是接收终端固件,一个是服务器认证代理程序。接收终端固件是固化在接收终端中的一段程序,接收终端在启动后必须先执行固件,才可能执行其他的应用程序。接收终端出厂以后,固件不可以被更改。为了避免固件被更改的情况,接收终端固件拥有自检的功能。一旦发现自己被更改,固件将不再执行任何功能。服务器认证代理程序是接收终端固件从网络中的服务器上下载的。它能否被下载到本地的终端的硬件平台,是要经过固件的认证的。
固件和服务器认证代理程序的相互认证建立在一个信任链的基础上的。这个信任链的基础是一个根证书。这个根证书由一个各方都认可的密钥管理机构发放。接收终端固件和服务器认证代理程序都认为这个密钥管理机构是可信任的。这个机构向这个网络中所有合法的设备,包括接收终端固件和服务器认证代理程序,发放根证书。对根证书签名的根私钥被密钥管理机构保存,这个机构保证这个根私钥不被窃取和损坏。
当有了根证书这个信任基础后,整个信任链就可以搭建起来了。能够最终用根公钥验证通过的信息都会被接收终端固件认为是来自可信任的来源。有一种信息是比较特别的,它本身是一个证书。被根私钥签名的证书被称为二级证书。二级证书的私钥又可以用来签名信息,由于二级证书被认为是可信任的,那么二级证书签名的信息也会被认为是来自于可信任的来源。同时,二级证书还可以签发三级证书。以此类推,由各级证书串起来的信任链就这样建立起来了。网络中的任何设备和程序,都可以通过根证书中的根公钥验证这个信任链上的任何一个证书的合法性。建立这样一个信任链使网络中的证书管理更加灵活和易于管理。利用这个信任链上的任何一个证书,固件和服务器认证代理程序都可以实现相互的认证。
在本发明涉及的服务器和接收终端的结构里,由于服务器认证代理程序是运行在接收终端上的,很容易被破解和跟踪,所以不允许将秘密嵌入到服务器认证代理程序中。也就是说,服务器认证代理程序中隐藏对UID的运算方法的方式是不安全的。由于运算的方法无法保密,本发明就提出了对参与运算的参数进行保密的方法。本发明提出在接收终端保存UID数字签名。这个签名是对UID用私钥加密得到的。解密这个电子签名在服务器认证代理程序中实现,但解密所用的公钥和解密的算法都可以以明文的形式存在,使破解和跟踪服务器认证代理程序失去意义。即,本发明将秘密保存在生成UID数字签名的私钥中,而该私钥在使用后可以销毁,基本上没有泄密的风险。这个方法用密码学的原理保证了校验的安全性。
本发明方法可以基于现有接收终端的硬件结构,通过对固件的改进来实现。
下面介绍本发明在HFC网络中的一种具体实施方法,但本发明可适用于其它任何单向网络。在HFC网络中,接收终端被称为机顶盒。网络中可能存在两种非法的机顶盒。一种是完全复制合法机顶盒的硬件设计,并拷贝合法机顶盒的固件,称为克隆机顶盒;另一种是复制合法机顶盒的硬件设计,但采用自己的固件完成相同的功能,称为仿制机顶盒。
在像HFC这样的单向网络,这两种机顶盒在网络中的存在都不会被前端发现,可以在网络中享受服务而不需要付费。本实施例提出的方法可以使上述两种非法机顶盒在网络中无法正常地工作。
本实施例对接收终端进行双向认证的方法涉及机顶盒的生产过程和工作过程。如图1所示,该方法包括以下步骤:
步骤110,在机顶盒的生产过程中,将一部分信息固化在机顶盒的存储空间中成为固件,固件的组成部分包括功能程序、根证书、签名证书、UID签名和固件的数字签名;
功能程序指机顶盒中固化的实现机顶盒启动时功能的程序,支持的功能可包括自检、对服务器认证代理程序的认证以及其它运行所需的功能等。
根证书是用根私钥签名的包含根公钥的数字证书,还包含证书序列号、签名算法、证书申请者、发放证书机构等信息。这里,用一个根公钥也是可以的。
签名证书是用根私钥签名的,包含签名公钥的数字证书,还包含证书序列号、签名算法、证书申请者、发放证书机构等信息。
UID签名是用上述签名证书对应的私钥对UID签名得到的。
固件的数字签名是对机顶盒中存储的固件(部分或全部)进行数字摘要计算,然后用签名私钥对生成的数字摘要进行加密得到的。
根私钥由该管理机构保存,并不驻留在用于产生UID签名的生产签名服务器中。而UID签名和固件的数字签名是通过一台机顶盒生产签名服务器实现的。在机顶盒生产时,生产签名服务器与机顶盒通讯,读出每个机顶盒芯片的UID,计算出其数字摘要值再用签名私钥加密生成UID签名,该签名私钥在使用后可以销毁。本实施例中,上述签名证书属于二级证书,不过,本发明另一实施例中,上述签名证书也可以是三级证书,即是由根私钥签名的二级证书中的私钥签名得到的证书。
机顶盒固件的工作流程如下所述,这个流程保证了机顶盒的安全性。
步骤120,在初始化过程中,机顶盒固件先进行自检,用签名公钥解密固件的数字签名得到解密值,再按照签名时相同的算法对机顶盒中存储的固件进行数字摘要计算,如果计算的摘要与解密值相同,则认为固件是正确和完整的,继续下一步;否则认为固件被篡改,固件退出工作状态,结束;
步骤130,固件再对UID签名进行验证,先将UID签名用签名证书中的签名公钥进行解密,得到解密值,再读出芯片的UID并计算出其数字摘要值,将这两个值进行比较,如果相同,就证明这个机顶盒是在生产时认证合法的机顶盒,继续下一步;如果不同,该机顶盒为非法机顶盒,固件退出工作状态,结束;
因为UID是固化在芯片中的,可读取但基本不可能复制。因此,克隆机顶盒虽然可以复制出UID签名,但是,由于其芯片的UID值和其复制对象芯片的UID不同,两者比较的结果也不会相同,从而使克隆机顶盒无法工作。仿制机顶盒虽然可以跳过自检的部分,从而可以正常地工作。但是仿制机顶盒无法在机顶盒升级时,无法从服务器程序得到服务更新的信息。在服务更新后,将无法正常工作。
步骤140,固件自检成功后,接收终端检测网络中是否有适用的服务器认证代理程序供下载,如果有,执行步骤150,否则,执行步骤190;
步骤150,在网络中检测到有服务器认证代理程序时,固件将其下载到本地的硬件平台,该服务器认证代理程序中包含根公钥、签名证书和对自身程序的数字签名,其中签名证书不必与机顶盒中的签名证书相同;
步骤160,固件在把程序执行的控制权交给服务器认证代理程序前,先对其进行认证,保证它来自于合法的来源,如认证通过,继续下一步,否则,执行步骤190;
认证包括以下两个方面:
第一,验证服务器认证代理程序在传输过程中是否保持了程序的完整性。固件先用服务器认证代理程序内嵌或从网络中得到的签名证书中的公钥解密服务器认证代理程序的数字签名,得到解密值,再按相同算法对下载的服务器认证代理程序进行数字摘要计算,如果计算的摘要与解密值相同,则认为服务器认证代理程序是正确和完整的。
第二,验证为服务器认证代理程序签名的证书是否在由根证书建立起来的信任链中,如果服务器认证代理程序的证书是在信任链中被认可的,即被根证书或其下级证书的私钥签名的,那么服务器认证代理程序就是来自合法的来源的。
服务器认证代理程序中或根据该程序中的信息从网络中找到的签名证书可以是根私钥签名的二级证书,也可以是二级证书私钥签名的三级证书或更下级的证书。每个证书都是以x.509的格式存在,规定了这个证书是由谁签发的,通过发行者,编号等一系列属性。对于二级证书,固件直接用保存的根公钥就可以解密其签名而完成验证。对于三级证书,机顶盒先根据证书中的发行机构等信息到网络中获取相应的二级证书,用该二级证书的公钥解密其签名而完成首次验证,然后再用保存的根公钥解密该二级证书的签名完成再次验证,对于更下级的证书的验证过程依此类推,这是一个常规的判断方法。总之,在这个网络中只有一个根公钥,这是这个信任链的基础。
在另一种特殊情况下,该服务器认证代理程序也可以是由根私钥签名的。这样,服务器认证代理程序中可内嵌一个根证书或无需内嵌有证书,接收终端固件可以直接用根公钥对该程序的签名进行验证。
以上两个方面的认证没有固定的先后顺序,只有同时通过二个方面的认证,才认为认证通过。
步骤170,服务器认证代理程序先对机顶盒固件进行认证,保证机顶盒不是非法机顶盒,如认证通过,执行步骤180;否则,执行步骤190;
同样,该认证包括以下二个方面:
第一,对接收终端固件中的UID签名进行验证。服务器认证代理程序先将机顶盒固件中存储的UID签名用机顶盒中存储的签名证书进行解密,得到解密值,再从芯片中读出芯片的UID并计算其数字摘要值,将这两个值对比。这两个值必须相同才能验证固件不是被拷贝的,是与这个机顶盒相匹配的。
第二,验证为UID签名的证书是否在由根证书建立起来的信任链中。即服务器认证代理程序验证机顶盒固件中存储的签名证书是否被根证书或其下级证书签名的,是在信任链中被认可的。其验证方法与步骤150固件对服务器认证代理程序中的签名证书的验证是相同的,这里不再重复。
当这两个条件同时成立,服务器认证代理程序就验证了机顶盒固件是合法的,才接受程序运行的控制权完成服务器认证代理程序的其它功能。同样由于UID的不同复制性,如UID签名的验证通过,则可以检测出克隆或仿制的非法机顶盒。当然该步中,服务器认证代理程序还可对机顶盒中存储的固件的数字签名进行验证,方法与步骤120中固件自检时相同,从而保证固件是正确和完整的。
步骤180,服务器认证代理程序为机顶盒进行应用程序升级、服务更新等操作;
为了维护网络运营商的利益,运营商可以利用服务器认证代理程序来进行用户的服务更新和机顶盒应用程序的升级。通过定时对用户的服务进行更新和对机顶盒软件进行升级,仿制或克隆的机顶盒将得不到服务的更新和升级,从而无法正常地工作。
步骤190,启动固件中的其它功能程序或接收终端中的应用程序。
相应的,本实施例可对单向网络中的接收终端进行合法性认证的系统,包括网络侧设备、接收终端和服务器认证代理单元,其中:
所述服务器认证代理单元的代码存储在所述网络侧设备中,并可被下载到所述接收终端并运行,用于利用其携带的根公钥验证接收终端固件中的第一签名证书是否来自可信任的来源,并用该第一签名证书的公钥对唯一标识符UID签名解密,比较解密值与读出的芯片UID的数字摘要值是否相同,如果均是,则对该接收终端合法性的认证通过,否则,认证不通过;
所述接收终端的固件包括功能单元代码以及所述根公钥、第一签名证书和UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的。所述功能单元包括一个下载子单元,用于将所述服务器认证代理单元的代码从所述网络侧设备下载到接收终端并运行;一个程序认证子单元,用于对下载的服务器认证代理单元的代码进行认证;一个自检子单元,用于在上电后,用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,比较这两个值,如果相同,自检通过,否则,自检不通过,退出工作状态。自检通过后,可以运行固件中的功能单元,也可以运行终端中的应用程序,本发明不做限定。
在上述实施例的基础上,本发明还可以有各种变换。
例如,在另一实施例中,接收终端的自检、固件对服务器认证代理程序的认证方法都可以采用已有的方法来实现。只要服务器认证代理程序对固件中的UID签名进行校验,就可以对单向网络中的接收终端进行合法性的认证。
相似的,在又一实施例中,也可以只在接收终端自检时,对UID签名进行校验,下载的服务器认证代理程序可以按已有的方式工作。这样也可以在终端本地实现对终端合法性的认证。
综上所述,本发明在终端设备中写入该终端设备芯片UID的数字签名,终端设备的固件从网络中下载一个服务器认证代理程序,对终端设备的认证由这个服务器认证代理程序来实现。服务器认证代理程序运行在终端设备的硬件平台上,从服务器认证代理程序中内嵌或是终端设备内嵌的签名证书中得到公钥,用公钥对UID的签名进行解密。服务器认证代理程序通过将解密得到的值与芯片中读出的UID的摘要值进行比对的结果,以及从根证书导出的信任链所确定的证书的可信性,从而确定终端设备的合法性。
这个合法性作为终端设备软件运行和软件更新的前提条件,这样仿制和克隆的终端设备就无法在单向网络中运行和升级。通过固件的自检,和服务器认证代理程序的与固件的相互认证,可以使克隆和仿制的机顶盒无法在网络中正常工作。

Claims (9)

1.一种对单向网络中的接收终端进行合法性认证的方法,包括以下步骤:
(a)在接收终端的生产过程中,将一部分信息固化为固件,包括功能程序、根公钥、第一签名证书、唯一标识符UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的;
(b)所述接收终端上电后,自检通过后,将包含所述根公钥的服务器认证代理程序下载到本地的硬件平台;
(c)所述固件先对所述服务器认证代理程序进行认证,如认证通过,继续下一步,否则,退出工作状态,结束;
(d)所述服务器认证代理程序用所述根公钥验证固件中的所述第一签名证书是否来自可信任的来源,以及用所述第一签名证书的公钥对UID签名解密得到的解密值是否与读出的芯片UID的数字摘要值相同,如果均是,则对所述接收终端的合法性认证通过,否则,认证不通过。
2.如权利要求1所述的方法,其特征在于,所述步骤(b)中接收终端的自检包括以下步骤:
固件先用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算出其数字摘要值,将这两个值进行比较,如果相同,自检通过,继续下一步;如果不同,该接收终端为非法接收终端,固件退出工作状态,结束。
3.如权利要求1或2所述的方法,其特征在于,所述步骤(a)的接收终端生产过程中,所述固件中还包括固件的数字签名;所述步骤(b)中,接收终端的自检包括以下步骤:
所述固件用所述第一签名证书的公钥解密所述固件的数字签名得到解密值,再按照对固件签名时的相同算法对接收终端中存储的固件进行数字摘要计算,如果计算的摘要与解密值相同,则自检通过,继续下一步;否则退出工作状态,结束。
4.如权利要求1或2所述的方法,其特征在于,所述服务器认证代理程序中还包括用第二签名证书的私钥对本程序的数字签名,所述步骤(c)中,固件对所述服务器认证代理程序的认证包括以下两个方面:
A,所述固件先用服务器认证代理程序内嵌或从网络中得到的第二签名证书的公钥解密所述服务器认证代理程序的数字签名,得到解密值,再按相同算法对该服务器认证代理程序进行数字摘要计算,如果计算的摘要与解密值相同,则确认该服务器认证代理程序是正确和完整的;
B,所述固件用根公钥验证第二签名证书是否来自可信任的来源,如果是,那么确认服务器认证代理程序来自合法的来源;
只有确认所述服务器认证代理程序是正确和完整的,并且来自合法的来源时,所述固件对所述服务器认证代理程序的认证通过。
5.如权利要求1所述的方法,其特征在于,所述步骤(d)中,如合法性认证通过,则所述服务器认证代理程序才为接收终端进行软件升级或服务更新操作,否则,所述服务器认证代理程序不执行这些操作。
6.一种对单向网络中的接收终端进行合法性认证的方法,包括以下步骤:
(a)在接收终端的生产过程中,将一部分信息固化为固件,包括功能程序、根证书、签名证书、UID签名,该UID签名是用该签名证书的私钥对芯片的UID签名得到的;
(b)所述接收终端上电后,所述固件进行自检,用该签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,将这两个值进行比较,如果相同,自检通过,继续后续处理;否则,自检不通过,退出工作状态,结束。
7.如权利要求6所述的方法,其特征在于,所述步骤(b)所述固件在自检时,还用所述签名证书的公钥解密所述固件的数字签名得到解密值,再按照对固件签名时的相同算法对接收终端中存储的固件进行数字摘要计算,如果计算的摘要与解密值相同,则认为固件是正确和完整的,并将其作为自检通过的必要条件,如计算的摘要与解密值不同,退出工作状态,结束。
8.一种可实现对自身合法性认证的单向网络中的接收终端,包括固件以及与网络的通讯接口,其特征在于:
所述固件包括功能单元以及根公钥、第一签名证书和UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的,所述功能单元包括一个下载子单元,用于将所述服务器认证代理单元的代码从所述网络侧设备下载到接收终端并运行;一个程序认证子单元,用于对下载的服务器认证代理单元的代码进行认证;以及一自检子单元,用于在上电后,用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,比较这两个值,如果相同,自检通过,否则,自检不通过,退出工作状态。
9.一种可对单向网络中的接收终端进行合法性认证的系统,包括网络侧设备、接收终端和服务器认证代理单元,其中:
所述服务器认证代理单元的代码存储在所述网络侧设备中,并可被下载到所述接收终端并运行,用于利用其携带的根公钥验证接收终端固件中的第一签名证书是否来自可信任的来源,并用该第一签名证书的公钥对唯一标识符UID签名解密,比较解密值与读出的芯片UID的数字摘要值是否相同,如果均是,则对该接收终端合法性的认证通过,否则,认证不通过;
所述接收终端的固件包括功能单元以及所述根公钥、第一签名证书和UID签名,该UID签名是用该第一签名证书的私钥对芯片的UID签名得到的,所述功能单元包括一个下载子单元,用于将所述服务器认证代理单元的代码从所述网络侧设备下载到接收终端并运行;一个程序认证子单元,用于对下载的服务器认证代理单元的代码进行认证;以及一个自检子单元,用于在上电后,用第一签名证书中的公钥对UID签名解密得到解密值,再读出芯片的UID并计算其数字摘要值,比较这两个值,如果相同,自检通过,否则,自检不通过,退出工作状态。
CN2006101129782A 2006-09-13 2006-09-13 对单向网络中的接收终端进行合法性认证的方法及系统 Active CN101145906B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2006101129782A CN101145906B (zh) 2006-09-13 2006-09-13 对单向网络中的接收终端进行合法性认证的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2006101129782A CN101145906B (zh) 2006-09-13 2006-09-13 对单向网络中的接收终端进行合法性认证的方法及系统

Publications (2)

Publication Number Publication Date
CN101145906A CN101145906A (zh) 2008-03-19
CN101145906B true CN101145906B (zh) 2010-10-06

Family

ID=39208223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101129782A Active CN101145906B (zh) 2006-09-13 2006-09-13 对单向网络中的接收终端进行合法性认证的方法及系统

Country Status (1)

Country Link
CN (1) CN101145906B (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101247416A (zh) * 2008-03-25 2008-08-20 中兴通讯股份有限公司 基于ota的固件下载方法、预处理方法、完整性验证方法
CN101944195A (zh) * 2009-07-08 2011-01-12 康佳集团股份有限公司 一种控制机顶盒生产数量的方法
WO2012174726A1 (zh) * 2011-06-23 2012-12-27 华为技术有限公司 芯片及芯片的安全保护方法
CN102355467B (zh) * 2011-10-18 2015-07-08 国网电力科学研究院 基于信任链传递的输变电设备状态监测系统安全防护方法
CN103067333B (zh) * 2011-10-18 2016-03-30 华为终端有限公司 验证机顶盒接入身份的方法和认证服务器
CN103220578B (zh) * 2013-03-26 2016-03-09 深圳市九洲电器有限公司 一种高安全机顶盒及其生产方法、系统
CN105635062B (zh) * 2014-10-31 2019-11-29 腾讯科技(上海)有限公司 网络接入设备的验证方法和装置
CN104394467B (zh) * 2014-12-15 2017-12-15 珠海迈越信息技术有限公司 机顶盒应用程序的下载方法及机顶盒
CN104506515A (zh) * 2014-12-17 2015-04-08 北京极科极客科技有限公司 一种固件的保护方法和保护装置
CN104980436B (zh) * 2015-06-11 2018-06-26 努比亚技术有限公司 一种加密传输系统、方法、终端以及中间服务器
US10642976B2 (en) 2015-06-27 2020-05-05 Mcafee, Llc Malware detection using a digital certificate
CN105068824B (zh) * 2015-07-16 2018-08-28 福建联迪商用设备有限公司 一种划分终端开发模式和产品模式的方法及系统
CN105120066B (zh) * 2015-07-16 2017-12-08 福建联迪商用设备有限公司 一种终端产品模式与开发模式安全切换的方法及系统
CN105391705A (zh) * 2015-10-29 2016-03-09 青岛海尔智能家电科技有限公司 一种对应用服务进行认证的方法及装置
CN106100853B (zh) * 2016-07-29 2019-05-03 深圳兆日科技股份有限公司 移动终端安全认证方法和装置
CN107820245B (zh) * 2016-09-12 2021-10-15 中兴通讯股份有限公司 注册方法
WO2018165920A1 (zh) * 2017-03-15 2018-09-20 深圳大趋智能科技有限公司 Pos机安全验证方法及装置
CN107038381A (zh) * 2017-04-14 2017-08-11 济南浪潮高新科技投资发展有限公司 一种基于绑定机制的管理固件保护方法
CN107172172B (zh) * 2017-05-31 2020-03-06 郑州云海信息技术有限公司 一种IaaS系统中的通信方法及其系统
CN107103212A (zh) * 2017-06-15 2017-08-29 济南浪潮高新科技投资发展有限公司 一种bios固件保护方法和系统
CN107872324A (zh) * 2017-11-19 2018-04-03 天津光电安辰信息技术股份有限公司 一种安全音视频加密客户端及认证实现方法
CN108280917A (zh) * 2018-03-21 2018-07-13 首创置业股份有限公司 一种基于物联网公共服务平台的门禁系统及设备
CN109245899B (zh) * 2018-09-06 2021-03-16 成都三零嘉微电子有限公司 一种基于sm9密码算法信任链设计方法
CN110601847B (zh) * 2019-09-05 2021-03-05 北京海益同展信息科技有限公司 事故的处理方法、装置及系统
CN111382397B (zh) * 2020-02-26 2023-03-24 浙江大华技术股份有限公司 升级软件包配置方法、软件升级方法、设备及存储装置
CN112187544B (zh) * 2020-09-30 2023-08-08 深圳忆联信息系统有限公司 固件升级方法、装置、计算机设备及存储介质
CN114040401B (zh) * 2021-11-08 2024-04-12 中国联合网络通信集团有限公司 终端认证方法及系统
CN117093245B (zh) * 2023-10-18 2024-01-16 湖北芯擎科技有限公司 Ota升级包验证方法、装置、设备及可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1549131A (zh) * 2003-05-06 2004-11-24 联想(北京)有限公司 一种计算机操作系统的修复方法
CN1716850A (zh) * 2003-09-29 2006-01-04 美国博通公司 对机顶盒芯片进行安全验证的方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1549131A (zh) * 2003-05-06 2004-11-24 联想(北京)有限公司 一种计算机操作系统的修复方法
CN1716850A (zh) * 2003-09-29 2006-01-04 美国博通公司 对机顶盒芯片进行安全验证的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CN 1716850 A,全文.

Also Published As

Publication number Publication date
CN101145906A (zh) 2008-03-19

Similar Documents

Publication Publication Date Title
CN101145906B (zh) 对单向网络中的接收终端进行合法性认证的方法及系统
CN108768664B (zh) 密钥管理方法、装置、系统、存储介质和计算机设备
CN111010410B (zh) 一种基于证书身份认证的拟态防御系统及证书签发方法
CN107742212B (zh) 基于区块链的资产验证方法、装置及系统
EP2659373B1 (en) System and method for secure software update
KR100843081B1 (ko) 보안 제공 시스템 및 방법
RU2356169C2 (ru) Привязка программного обеспечения к аппаратным средствам с использованием криптографии
US9054880B2 (en) Information processing device, controller, key issuing authority, method for judging revocation list validity, and key issuing method
US8683214B2 (en) Method and device that verifies application program modules
US20060195689A1 (en) Authenticated and confidential communication between software components executing in un-trusted environments
WO2020038137A1 (zh) 二维码生成方法、数据处理方法、装置及服务器
JP2009038603A (ja) ソフトウェア無線通信装置、及びソフトウェア更新方法、並びに、ソフトウェア無線通信システム
JP2008507203A (ja) ディストリビューションcdを使用した、署名されたグループにおけるダイレクトプルーフの秘密鍵を装置に伝達する方法
JP2007511810A (ja) 乱数関数を利用した実行証明
JP2010231404A (ja) 秘密情報管理システム、秘密情報管理方法、および秘密情報管理プログラム
CN114218548B (zh) 身份验证证书生成方法、认证方法、装置、设备及介质
KR101492514B1 (ko) 보안 콘텐츠 보호 시스템을 사용하는 방법, 장치 및 시스템
KR100973203B1 (ko) 내장된 소프트웨어 및 이를 인증하는 방법
JP2010068527A (ja) コンテンツファイル制作者の認証方式
US20090210719A1 (en) Communication control method of determining whether communication is permitted/not permitted, and computer-readable recording medium recording communication control program
KR20130100032A (ko) 코드 서명 기법을 이용한 스마트폰 어플리케이션 배포 방법
JP2004234641A (ja) コンテンツファイル制作者の認証方式およびそのプログラム
JP2004140636A (ja) 電子文書の署名委任システム、署名委任サーバ及び署名委任プログラム
US20200036535A1 (en) Storing Data On Target Data Processing Devices
JP2010028689A (ja) 公開パラメータ提供サーバ、公開パラメータ提供方法、公開パラメータ提供プログラム、暗号化処理実行装置、暗号化処理実行方法、暗号化処理実行プログラム、署名処理実行装置、署名処理実行方法及び署名処理実行プログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: BEIJING BAUSTEM INFORMATION TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: BEIJING BAUSTEM SCIENCE AND TECHNOLOGY CO., LTD.

Effective date: 20091225

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20091225

Address after: Beijing, Chaoyang District, No. 6, Wai Main Street, outward, SOHO A block 2701, post code: 100020

Applicant after: Beijing Baustem Information Technology Co., Ltd.

Address before: 23 Zhichun Road quantum Ginza, Beijing, Haidian District 910, postcode: 100083

Applicant before: Beijing Bangtian Technology Co.Ltd

C14 Grant of patent or utility model
GR01 Patent grant
DD01 Delivery of document by public notice

Addressee: Beijing Baustem Information Technology Co., Ltd. Cai Wu

Document name: Notification of Approving Refund