终端申请证书的方法

著录项
  • CN200710203013.9
  • 20071212
  • CN101188616A
  • 20080528
  • 四川长虹电器股份有限公司
  • 陈焜;刘贤洪
  • H04L29/06
  • H04L29/06 G06F21/00

  • 四川省绵阳市高新区绵兴东路35号
  • 四川(51)
  • 成都虹桥专利事务所
  • 李顺德
摘要
本发明涉及DRM技术。本发明提供一种既安全又灵活的申请证书的方法。终端申请证书的方法,包括以下步骤:a.终端生成公钥/私钥对;b.终端使用用户信息和公钥生成证书请求文件,将证书请求文件发送至证书颁发中心;c.证书颁发中心验证用户信息合法后签发用户证书;产生并保存随机数,再将随机数用所述公钥加密;d.证书颁发中心发送用户证书与加密后的随机数至终端;e.终端使用私钥解密随机数,将解密后的随机书发送至证书颁发中心;并检测私钥与证书是否匹配;f.证书颁发中心比较收到的随机数与保存的随机数。本发明综合了现有技术两种方法的优点,既能方便地得到并更新私钥,又能确保私钥的安全,防止网络传输过程中数据被修改。
权利要求

1.终端申请证书的方法,其特征在于,包括以下步骤:

a、终端生成公钥/私钥对,并保存私钥;

b、终端使用用户信息和公钥生成证书请求文件,将证书请求文件发送至证书颁发 中心;

c、证书颁发中心验证用户信息合法后签发用户证书;产生并保存随机数,再将随 机数用所述公钥加密;

d、证书颁发中心发送用户证书与加密后的随机数至终端;

e、终端使用私钥解密随机数,将解密后的随机数发送至证书颁发中心;并检测私 钥与证书是否匹配,如是,保存证书;如否,证书申请失败;

f、证书颁发中心比较收到的随机数与保存的随机数,判断是否相同,如是,保存 证书;如否,证书申请失败。

2.如权利要求1所述终端申请证书的方法,其特征在于,步骤c中, 证书颁发中心验证用户信息合法后,还需验证用户IP地址合法才签发用户证书。

3.如权利要求1或2所述终端申请证书的方法,其特征在于,步骤d中 ,证书颁发中心通过将加密后的随机数填入用户证书的检验项,把加密后的随机数发送至终 端。

说明书

终端申请证书的方法

技术领域

本发明涉及DRM(数字版权管理,Digital Right Management)技术。

背景技术

DRM系统可以提供端到端的数字权限管理,是一种安全、灵活、有效的系统。DRM系统中 终端的主要功能是:向证书颁发中心发起授权证书流程,用证书颁发中心的公钥验证证书的 数字签名,确认证书的正确完整性和一致性而获得授权信息,并用私钥解密证书的内容密钥 ,访问内容服务系统,建立RTSP/RTP连接,获得加密内容的加密描述信息和RTP数据包,对 RTP进行解密并按获得的授权信息播放解密后的数字解密内容。

DRM系统中证书和私钥是非常重要的,私钥必须安全保存,证书必须由证书颁发中心签 发。因此如何安全、高效的获取私钥和证书是一个必须解决的问题。现有技术中一种做法是 由证书颁发中心生成私钥和证书,再将私钥和证书写入终端。这样做虽然安全,但是非常不 灵活,终端数目非常多,如果每个终端都要到证书颁发中心去写入私钥和证书的话将是非常 麻烦的。另一种做法是通过网络将私钥和证书传给终端,虽然比较灵活,但是私钥在网络上 传输将是非常危险的事,即使传输通道经过加密。

发明内容

本发明所要解决的技术问题是,提供一种既安全又灵活的申请证书的方法。

本发明为解决上述技术问题所采用的技术方案是,终端申请证书的方法,包括以下步骤 :

a、终端生成公钥/私钥对,并保存私钥;

b、终端使用用户信息和公钥生成证书请求文件,将证书请求文件发送至证书颁发中心 ;

c、证书颁发中心验证用户信息合法后签发用户证书;产生并保存随机数,再将随机数 用所述公钥加密;

d、证书颁发中心发送用户证书与加密后的随机数至终端;

e、终端使用私钥解密随机数,将解密后的随机书发送至证书颁发中心;并检测私钥与 证书是否匹配,如是,保存证书;如否,证书申请失败;

f、证书颁发中心比较收到的随机数与保存的随机数,判断是否相同,如是,保存证书 ;如否,证书申请失败。

本发明的有益效果是,综合了现有技术两种方法的优点,终端既能方便地得到并更新私 钥,又能确保私钥的安全,防止网络传输过程中数据被修改。本方法不仅可以用在DRM系统 中的证书申请,也可以应用于其它系统地证书申请。

具体实施方式

下面将描述终端证书申请流程:

1、终端使用一定的算法生成公钥和私钥,并将私钥安全保存;

密钥对的产生是证书申请过程中重要的一步,应该由密钥生成系统产生强度大的密钥, 其中产生的私钥应被加密后写入终端,公钥则留着下一步使用。

在一个安全的系统中,维护密钥对的备份至关重要,如果没有这种措施,当密钥丢失后 ,对于一些重要数据,这将是灾难性的。所以,密钥的备份和恢复也是DRM系统中的重要一 环,在密钥产生系统写入私钥后,同时应该将私钥加密备份,这样即使私钥丢失,受公钥加 密保护的重要信息也能够恢复。

另外,DRM终端也应该考虑所使用密钥的生命周期,它包括私钥和证书的有效时间,当 过期后应该重新产生密钥对。

2、终端使用用户信息和公钥生成证书请求文件,并将证书请求文件发送给CA端(证书 颁发中心);

证书请求文件由证书请求(certReq)、一个可选的检验项(POP),以及一个可选的登 记信息项(regInfo)组成。

证书请求构成的步骤如下:

(1)产生certReq,其值包括:公钥、所有或部分的终端实体的名字、用户信息等其它 所要求的证书值域,以及与登记过程相联系的控制信息;

(2)通过certReq计算出POP来证明终端拥有与所请求的证书的公钥相联系的私钥;

(3)填入所需要的其它登记信息,这些信息和POP,certReq组成证书请求信息。

POP用来证明证书请求者确实拥有所对应的私钥,这是为了防止某些攻击以及允许CA端 检验终端实体和密钥对之间对应的有效性。此项可由certReq计算出来,其内容和结构随公 钥算法的类型和运作模式的改变而改变。CA端在证书交换中可自由选择如何实施POP。 regInfo项仅包括与证书请求有关的补充信息。它还可包括请求者的联系信息,布告信息, 或对证书请求有用的辅助信息。直接与证书内容有关的信息应该包括在certReq中。

依照证书所要求的密钥类型,POP可用不同方法实现。若密钥可用于多种目的(如RSA密 钥),那么POP可用任何一种方式实现。本发明密钥是用于加密的,为了实现POP,可以由 CA端使用终端公钥加密一随机数,如果终端能够正确解密随机数,则说明终端拥有对应的私 钥。

CertReq由请求标识符、证书内容模板和一组可选的控制信息组成:

CertRequest::=SEQUENCE{

certReqId INTEGER,--使请求和回答相匹配的标识符

certTemplate CertTemplate,--所发布证书的选择域

controls Controls OPTIONAL}-有关证书发布的属性信息

CertTemplate::=SEQUENCE{

version[0]Version OPTIONAL,--证书版本

serialNumber[1]INTEGER OPTIONAL,--证书序列号

signingAlg[2]AlgorithmIdentifier OPTIONAL,--签名算法标识

issuer[3]Name OPTIONAL,--证书签发者

validity[4]OptionalValidity OPTIONAL,--证书有效期

subject[5]Name OPTIONAL,--证书用户名

publicKey[6]SubjectPublicKeyInfo OPTIONAL,--证书持有者公钥信息

issuerUID[7]UniqueIdentifier OPTIONAL,--签发者唯一标识符

subjectUID[8]UniqueIdentifier OPTIONAL,--证书持有者唯一标识符

extensions[9]Extensions OPTIONAL}-证书扩展项

OptionalValidity::=SEQUENCE{

notBefore[0]Time OPTIONAL,

notAfter[1]Time OPTIONAL}-至少存在一个

Time::=CHOICE{

utcTime UTCTime,

generalTime GeneralizedTime}

DRM终端使用用户信息和公钥按照上述结构生成DER编码格式的证书请求文件,然后把它 通过安全的网络传送给CA端。

3、CA端收到证书请求文件后,验证用户信息的合法性,如果验证通过,使用根证书和 证书请求文件签发用户证书,产生一随机数,并用用户的公钥加密,将证书和加密后的随机 数发送给终端;

验证用户信息的合法性可以通过人工方式也可以自动完成。验证程序从证书请求文件中 获取用户信息,即是CertReq中的内容,系统中应该存有合法用户的信息和非法用户的特征 ,通过对比可以验证用户的合法性。为了进一步保证安全性,还有可能要验证IP地址的合法 性。如果验证失败则证书申请失败。

如果验证通过,则使用根证书和证书请求文件签发用户证书。用户证书中大部分字段都 和证书请求文件的内容一样,在文件多了证书的数字签名算法标识符和签名值,签名是针对 文件前面所有部分的签名。

4、终端收到证书和随机数后,使用自己的私钥解密随机数,将解密后的随机数发送给 CA端,同时自己检查私钥和证书是否匹配,如果匹配证书则保存下来,否则证书申请失败。 之所以检查私钥和证书是否匹配,是为了确保证书中的公钥确实和最初产生的公钥一样,而 没有被修改过。

5、CA端将收到的随机数与未加密的随机数进行比较,如果相等则保存证书,否则证书 申请失败。CA端比较随机数是为了确保终端确实有对应的私钥,而不是冒充的。

以上方法用于DRM终端在线申请证书。由于私钥在终端产生,并且加密备份,而不用在 网络上传输,私钥的安全就得到了保证。用户证书的申请采用在线申请的方式,十分方便。 同时申请过程中使用随机数以防止某些攻击以及允许CA检验终端和密钥对之间对应的有效性 。该方法安全、灵活、高效,通用性很强,将此方法扩展,也可以应用到其它系统的证书申 请。

本文发布于:2024-09-25 06:20:38,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/86199.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议