首页> 中国专利> 与分段密钥一起使用的密码学模块及其使用方法

与分段密钥一起使用的密码学模块及其使用方法

摘要

一种用于基于至少一个密码处理段使用组合有多个随机密钥片段和余数密钥片段的k个密钥片段对输入信号进行处理以生成输出信号的方法。一种密码学模块包括用于存储包含所述多个随机密钥片段和所述余数密钥片段的所述k个密钥片段的密钥储存器,并且与用于对输入信号进行处理的至少一个密码处理段耦接。所述至少一个密码处理段可顺序地对输入信号进行处理,或者包括并行地操作以将加密信号处理为多个分段密钥结果的多个密码处理段,并且用组合器组合所述多个分段密钥结果来生成解密信号。

著录项

  • 公开/公告号CN103283177A

    专利类型发明专利

  • 公开/公告日2013-09-04

    原文格式PDF

  • 申请/专利权人 莫雷加系统股份有限公司;

    申请/专利号CN201180061685.5

  • 发明设计人 Z·里埃伯;T·J·瑟拉米;

    申请日2011-12-08

  • 分类号H04L9/30(20060101);

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人罗银燕

  • 地址 加拿大安大略

  • 入库时间 2024-02-19 20:34:51

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-29

    专利权的转移 IPC(主分类):H04L9/30 登记生效日:20190308 变更前: 变更后: 申请日:20111208

    专利申请权、专利权的转移

  • 2016-03-16

    授权

    授权

  • 2014-01-22

    实质审查的生效 IPC(主分类):H04L9/30 申请日:20111208

    实质审查的生效

  • 2013-09-04

    公开

    公开

说明书

技术领域

本发明涉及解密、数字签名和公钥密码系统。

背景技术

加密常用于保护内容(比如,私人消息、受版权保护的内容以及 其他信号、内容和其他形式的数据)的安全。许多加密系统利用用于 加密和/或用于将数据解密回其原始形式的加密密钥。

这样的加密系统的例子包括使用两个不同密钥(一个用于加密, 另一个用于解密)的公钥密码系统。在这样的系统中,加密算法和加 密密钥(公钥)可以被公开地透露,而不危害系统的安全。需要特设 的解密密钥(私钥)对加密数据进行解密。公钥密码系统的例子包括 Rivest、Shamir和Adelman(RSA)算法、椭圆曲线密码学(ECC) 以及其他公钥密码系统。这样的系统的安全性取决于私钥的安全性。 对私钥的未授权访问可导致安全漏洞。

通过将这样的系统与本发明进行比较,常规且传统的方法的进一 步的限制和缺点对于本领域的普通技术人员将变得明白。

发明内容

附图说明

图1呈现根据本发明的实施例的合并密码学的多个装置的图形表 示。

图2呈现根据本发明的实施例的视频播放器10的框图表示。

图3呈现根据本发明的实施例的密码学模块210的框图表示。

图4呈现根据本发明的实施例的密码学模块210’的框图表示。

图5呈现根据本发明的实施例的密码学模块210’’的框图表示。

图6呈现根据本发明的实施例的密钥分枝(bifurcation)模块325 的框图表示。

图7呈现根据本发明的实施例的密码学模块210或210’的操作的 框图表示。

图8呈现根据本发明的实施例的方法的流程图表示。

图9呈现根据本发明的实施例的方法的流程图表示。

图10呈现根据本发明的实施例的方法的流程图表示。

具体实施方式

图1呈现根据本发明的实施例的合并密码学的多个装置的图形表 示。特别地,示出了可从外部装置(比如,媒体内容提供者50)接收 加密内容(比如,视频数据、音频数据或其他加密内容)的手持视频 播放器58(比如,智能电话、互联网平板或其他个人媒体播放器)和 网关装置60(比如,机顶盒、数字视频记录器、家庭网关、服务器或 其他处理装置)。

在另一种配置中,个人计算机56、视频播放器54、手持视频播放 器58和电视62可通过网关装置60或者通过以下装置接收加密内容: 服务器、另一个机顶盒、个人计算机、无线局域网(WLAN)接入点、 有线电视接收器、卫星广播接收器、宽带调制解调器、3G或4G收发 器、或者能够将加密内容从媒体内容提供者50传送到个人计算机56、 视频播放器54、手持视频播放器58或电视62的其他网关或装置。

网关装置60、个人计算机56、视频播放器54、手持视频播放器 58和/或电视62包括密码学模块,该密码学模块包括以下结合图2-10 进一步描述的本发明的一个或多个特征。

图2呈现根据本发明的实施例的视频播放器10的框图表示。特别 地,示出了视频播放器10,比如网关装置60、个人计算机56、视频 播放器54、手持视频播放器58和/或电视62。视频播放器10包括处 理模块200、存储器模块202、密码学模块210、接口模块206、显示 装置204和用户输入接口212,这些都通过总线220耦接。尽管示出 了特定的总线架构,但是在本发明的范围内,包括视频播放器10的一 个或多个模块之间的两个或更多个总线和/或直接连接的其他架构也 是可能的。此外,根据视频播放器10的实现,视频播放器10可选地 可包括例如用于执行装置的附加功能和特征的附加模块和组件。

加密视频信号52可包括一个或多个视频信号,可选地包括相关联 的音频信号,这些信号要么是数字格式的实时信号,要么是包含数字 格式的视频信号的数据文件。通常,这样的视频信号可以是比如以下 格式的数字格式:运动图像专家组(MPEG)格式(比如,MPEG1、 MPEG2或MPEG4)、Quicktime格式、Real Media格式、H.264格 式、Windows Media Video(WMV)或Audio Video Interleave(AVI)、 或者标准的或专有的另一数字视频格式。例如,加密视频信号52可被 包括在广播视频信号中,所述广播视频信号比如高清晰电视信号、增 强高清晰电视信号、或者通过无线介质传输(直接地、或者通过一个 或多个卫星或其他中继站、或者通过电缆网络、光网络、IP电视网络 或其他传输网络)的其他数字广播视频信号。此外,加密视频信号52 可被包括在从存储介质(比如,服务器存储器、磁带、磁盘或光盘) 传送的数字音频/视频文件中,或者可被包括在通过公共或私有网络 (比如,无线或有线数据网络、局域网、广域网、城域网或互联网) 传输的流式音频或视频信号中。

视频播放器10可被耦接以在它自己的可选的包括扬声器的显示 装置204上显示来自加密视频信号52的视频内容,显示装置比如液晶 显示器、发光二极管(LED)背光显示器或其他显示装置。另外或者 在替代方案中,视频播放器10可选地与外部显示装置(比如,计算机 监视器、电视接收器、外部扬声器、耳机等等)耦接。在本发明的实 施例中,接口模块206包括有线链路,该有线链路用于与媒体内容提 供者50耦接以直接地或者通过一个或多个中间装置传送加密视频信 号52。所述耦接可包括串行或并行连接,比如,以太网连接、通用串 行总线(USB)连接、电气和电子工程师协会(IEEE)1394(火线) 连接、小型计算机串行接口(SCSI)连接、或者根据标准的或自定义 的接口协议操作的其他有线连接。

另外或者在替代方案中,接口模块206包括无线链路,该无线链 路用于直接地、或者间接地通过根据无线网络协议(比如,802.11 a,b,g,n(统称为802.11x))、Bluetooth、Ultra Wideband(UWB)) 操作的一个或多个装置或者根据标准的或自定义的接口协议操作的其 他无线连接与媒体内容提供者50耦接,以便传送来自这些其他装置中 的一个或多个的加密视频信号52。

另外,接口模块206可包括端口,比如,卡槽或者可与可移动存 储器装置(比如,记忆棒、存储卡、闪存装置、或者通过压缩数字视 频文件的文件传送来传送加密视频信号52的其他存储器)耦接的其他 连接。用户输入接口212包括一个或多个按钮、键盘、触控板、触摸 屏、指移轮、和/或响应于用户的动作产生信号以允许用户通过做出选 择、键入数据等方式与装置交互的其他用户接口装置。

处理模块200可使用单个处理装置或多个处理装置来实现。这样 的处理装置可以是微处理器、微控制器、数字信号处理器、微计算机、 中央处理单元、现场可编程门阵列、可编程逻辑器件、状态机、逻辑 电路系统、模拟电路系统、数字电路系统、和/或基于存储在存储器(比 如,存储器模块202)中的操作指令来操纵信号(模拟的和/或数字的) 的任何装置。存储器模块202可以是单个存储器装置或多个存储器装 置。这样的存储器装置可包括硬盘驱动器或其他盘驱动器、只读存储 器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、 动态存储器、闪存、高速缓冲存储器、和/或存储数字信息的任何装置。 指出,当处理模块通过状态机、模拟电路系统、数字电路系统和/或逻 辑电路系统实现它的一种或多种功能时,存储对应的操作指令的存储 器可被嵌入在电路系统中或者可以在电路系统的外部,所述电路系统 包括状态机、模拟电路系统、数字电路系统和/或逻辑电路系统。

存储器模块202可存储驻留的视频播放器应用程序、用户选择、 偏好和其他用户属性数据、与视频播放器10的其他应用程序对应的应 用程序数据、操作系统、其他软件和固件、以及其他数据。另外,存 储器模块202可存储与加密视频信号52的被存储的实例对应的多个压 缩视频文件。如以上所讨论的,存储器模块202可包括多个不同的存 储器装置,比如,随机存取存储器(RAM)、只读存储器(ROM) 和可移动存储装置。在本发明的实施例中,存储器模块202包括闪存 卡、记忆棒或其他闪存装置。

加密视频信号52可出于数字版权管理或以其他方式防止加密视 频信号52被不拥有对加密数据进行解密所需的解密密钥的用户部分 地或完整地访问的目的而被加密。密码学模块210操作以对加密视频 信号52进行解密。特别地,密码学模块210可与以下处理结合使用: 加密信号的常规解密、和/或与认证、数字签名、数字版权管理、以及 信号的其他加扰和解扰相关联的处理。特别地,与加密视频信号52 的获取相关联地,密码学模块210可使用与数字版权管理系统相关联 的数字签名。应该指出,密码学模块210可通过硬件、软件或固件来 实现。根据处理模块200的特定实现,视频播放器10的其他模块也可 用软件、固件或硬件来实现。

在工作模式下,密码学模块210对视频播放器10进行认证,并基 于存储和处理为多个密钥片段的私钥来与媒体内容提供者50协商密 钥的共享。在另一种工作模式下,视频播放器10从媒体内容提供者 50接收加密视频信号52。例如,与相关联的音频和视频内容的回放相 关联地,加密视频信号52被密码学模块210使用多个密钥片段解密。 将结合后面的图3-10来更详细地描述密码学模块210的操作,包括多 个可选的功能和特征。

图3呈现根据本发明的实施例的密码学模块210的框图表示。特 别地,密码学模块210包括密钥储存器320,密钥储存器320具有用 于将密钥存储为k个密钥片段的存储位置(300、302、304、…)。密 码处理段(segment)310基于所述k个密钥片段操作,以对诸如输入 信号318之类的信号进行处理从而生成输出信号316。

如将结合图5更详细地描述的,所述k个密钥片段从完整密钥(比 如,公钥密码系统的私钥)产生。密钥储存器320可以是存储器模块 202的一部分,并且可将所述k个密钥片段存储在不同位置中。将私 钥分段为多个(k个)密钥片段的分段以及这些密钥片段的不同存储 保护密钥以免被视频播放器10的黑客或其他未授权用户发现。特别 地,所有的k个密钥片段需要被发现以重构完整密钥,从而提高系统 的安全性。

如结合图2所讨论的,密码学模块210可与以下处理结合使用: 加密信号的常规解密、以及认证、数字签名、数字版权管理及信号的 其他加扰和解扰。

考虑密码学模块210到利用椭圆曲线数字签名算法(ECDSA)的 系统的应用,ECDSA使用椭圆曲线密码学(ECC)实现数字签名以 向媒体内容提供者50认证视频播放器10。在这样的系统中,双方对 一组曲线参数(q,FR,a,b,[DomainParameterSeed],G,n,h,)达成一致, 其中,q是字段大小;FR是所用的基础的指示;a和b是定义曲线的 方程的两个字段元素;DomainParameterSeed是如果以可验证的方式 随机地产生椭圆曲线的话存在的可选的比特串;G是曲线上的素数阶 的基点(即,G=(xG,yG));n是点G的阶次;h是余因子(其等于除 以n的曲线的阶次)。

视频播放器10具有适合于椭圆曲线密码学的密钥对,该密钥对由 私钥dA(区间[1,n-1]中随机选择的整数)和公钥QA(其中,QA=dAG) 组成。设Ln为组阶次n的比特长度。视频播放器通过使用它的密钥对 消息进行签名来向媒体内容提供者50认证它自己。对消息M进行签 名的处理包括以下步骤:

1.计算e=HASH(M),其中,HASH是密码学散列函数,比如, 安全散列算法(SHA-0、SHA-1等等),并且设z为e的最 左边的L n个比特。

2.从[1,n-1]选择随机整数p。

3.计算r=x1modulo n,其中,(x1,y1)=pG。如果r=0,则返回到

步骤2。

4.计算s=p-1(z+rdA)modulo n。如果s=0,则返回到步骤2。

5.签名为对(r,s)。

当计算s时,从HASH(M)得到的串z应被转换为整数。在这个特定算 法中,z可以大于n,但是不长于n。

根据这个例子,消息M是输入信号318,签名对(r,s)是输出信号 316。如以上所讨论的,密码学模块210存储私钥dA,该私钥dA已被 分枝为具有下述性质的一组k个密钥片段[m1,m2,m3,…,mk]:

dA=(m1+m2+m3+…+mk)modulo n

进一步考虑k个密钥片段被存储在可执行文件中的不同位置中,所述 可执行文件用软件或固件实现密码处理段310的操作。在操作中,密 码处理段310使用所述k个密钥片段而不是完整的私钥dA来执行以上 处理的步骤4。特别地,密码处理段310可计算:

s=p-1(z+rm1+rm2+rm3+…+rmk)modulo n

或者

s=(p-1z+p-1rm1+p-1rm2+p-1rm3+…+p-1rmk)modulo n

在本发明的实施例中,密码处理段310一次一个地检索所述k个密钥 片段。完整的密钥dA从来不被组装,并且仅可能被找出并访问所有k 个密钥片段的未授权用户重新组装。

当媒体内容提供者50通过对签名对(r,s)进行认证来认证视频播放 器10时,认证处理完成。另外,一旦已向媒体内容提供者50认证了 视频播放器10,则双方可执行密钥交换(比如,椭圆曲线 Diffie-Hellman(ECDH)密钥交换),以建立与加密视频信号52的 加密和解密结合使用的密钥。如上,各方已对一组ECC曲线参数达 成一致。此外,每方使用适合于椭圆曲线密码学的密钥对,该密钥对 由私钥d(区间[1,n-1]中随机选择的整数)和公钥Q(其中,Q=dG) 组成。考虑视频播放器10的密钥对为(d’A,Q’A),媒体内容提供者50 的密钥对为(d’B,Q’B)。密钥交换如下发生:

1.视频播放器10计算(xk,yk)=d’AQ’B

2.媒体内容提供者50计算k=d’BQ’A

3.共享密钥为xk(点的x坐标)。

如前,密码学模块210存储已被分枝为具有下述性质的一组k个 密钥片段[m’1,m’2,m’3,…,m’k]的私钥d’A

d’A=(m’1+m’2+m’3+…+m’k)modulo n

密码处理模块310如下执行步骤1:

(xk,yk)=(Q’B*m’1Q’B*m’2+Q’B*m’3+…+Q’B*m’k)modulo n

双方计算的数字是相等的,因为d’AQ’B=d’Ad’BG=d’Bd’AG= d’BQ’A。应该指出,密钥对可以是静态的,在这种情况下:

(d’A,Q’A)=(dA,QA)

然而,短暂会话密钥可用于每个会话和/或每个新的视频节目等等。在 这种情况下,可每次创建新的密钥对(d’A,Q’A)和一组新的k个密钥片 段[m’1,m’2,m’3,…,m’k]。

可结合另一例子来描述密码学模块210的操作。考虑这样的情况, 即,加密视频信号52C已通过Rivest、Shamir和Adelman(RSA) 密码学系统的公钥(e,n)模n进行了加密,具有对应的私钥d。在标准 解密中,可如下计算解密数据D:

D=(Cd)modulo n

根据本发明,解密密钥d已被分枝为具有下述性质的k个密钥片 段:

其中,欧拉函数,并且n=pq。其原因是:

因此,d的值可以被计算为:

或者,换句话讲,

对于某一整数w,

并且

对于某一整数l,

并且进一步

考虑纯文本消息M

并且根据以上关系和欧拉理论

=M

这意味着,消息M可被恢复。

因此,解密数据D可被计算为:

D=(Cm1*Cm2*Cm3*…*Cmk)modulo n

其中,符号*用于表示数学乘积。

进一步考虑k个密钥片段被存储在可执行文件中的不同位置中, 所述可执行文件用软件或固件实现密码处理段310的操作。特别地, 根据这个进一步的例子,密码处理段310如下操作。

1.检索第1个密钥片段m1

2.计算R1=(Cm1)modulo n

3.对于i=2...k,进行以下操作:

检索第i个密钥片段mi

计算Ri=(Ri-1Cmi)modulo n

4.D=Rk

如前面的例子中那样,密码处理段310一次一个地检索所述k个 密钥片段,并且顺序地对加密数据C进行处理,以产生解密数据D。 完整密钥d从来不被组装,并且仅可能被找出并访问所有k个密钥片 段的未授权用户重新组装。

在又一个例子中,加密视频信号52通过使用经由RSA加密的一 个或多个密钥C的AES进行加密。在这种情况下,视频播放器10如 上所述那样对AES一个密钥或多个密钥C进行解密,然后使用解密 的AES密钥根据AES解密来对加密视频信号52进行解密。AES解密 可由密码学段310执行,或者可通过密码学模块210或视频播放器10 的另一个模块(可选地,附加模块)来执行。

还应该指出,除了加密内容的直接解密和加密密钥的解密之外, RSA处理中分枝密钥的使用还可与认证、密钥共享、数字版权管理和 利用RSA密码学的其他方法结合利用。此外,尽管已结合ECDSA、 ECDH以及其他ECC和RSA密码系统说明了密码学模块210的操作, 但是本文中呈现的方法可类似地用在其他基于离散对数的密码系统 (比如,DSA和Diffie-Helman以及其他密码学系统)中。

根据上述例子,k个密钥片段被存储在密钥储存器320中,以便 对未被授权访问密钥的黑客或另一方隐藏,从而禁止完整密钥的重新 组装。应该指出,一种或多种混淆(obfuscation)技术可用于将k个 密钥片段存储在密钥储存器320中,所述一种或多种混淆技术比如密 钥片段的进一步编码、加密或加扰、随机选择的或伪随机选择的存储 位置(300、302、304、…)的使用、k个密钥片段在视频播放器10 的可执行代码或其他文件内的插入、或者其他混淆技术的实现。

图4呈现根据本发明的实施例的密码学模块210’的框图表示。特 别地,密码学模块210’执行与密码学模块210类似的功能,并且包括 被共同标号引用的类似元件。然而,在本实施例中,密码处理段310 的操作在多个密码处理段311之间分布。

可结合与图3结合呈现的另一例子来进一步描述密码学模块210’ 的操作。考虑这样的情况,即,输入信号52C已通过Rivest、Shamir 和Adelman(RSA)密码学系统的公钥(e,n)模n进行了加密,具有对 应的私钥d。根据本发明,解密密钥d已被分枝为具有下述性质的k 个密钥片段:

进一步考虑k个密钥片段被存储在可执行文件中的不同位置中, 所述可执行文件用软件或固件实现密码处理段311的操作。特别地, 根据该另一例子,密码处理段311如下操作。

根据这个例子,第1个密码处理段311如下操作。

1.检索第1个密钥片段m1

2.计算R1=(Cm1)modulo n

第i个密码处理段311(i=2...k)均操作为:

1.检索第i个密钥片段mi

2.计算Ri=(Ri-1Cmi)modulo n

最后的解密结果为:

D=Rk

尽管已结合ECC和RSA密码系统说明了密码学模块210’的操作, 但是本文中呈现的方法可类似地用于其他加密信号的解密,并且可进 一步与签名、认证、密钥共享等等的处理结合利用。

在以下例子中,与ECDSA结合使用的乘积

s=p-1(z+rm1+rm2+rm3+…+rmk)modulo n

被顺序地如下计算:

1.检索第1个密钥片段m1

2.计算R1=(rm1)modulo n

第i个密码处理段311(i=2...k)均操作为:

1.检索第i个密钥片段mi

2.计算Ri=(Ri-1+rmi)modulo n

最后的乘积被计算为:

s=p-1(z+Rk)modulo n

根据以上例子中的任何一个,密码处理段311的任何一个顺序处 理都可包括随机延迟,以避免mi以周期性的间隔出现在公共存储器位 置中。考虑以上例子中的一个,其中,乘积s=p-1(z+rm1+rm2+rm3+…+ rmk)modulo n被顺序地计算:

1.检索第1个密钥片段m1

2.计算R1=(r m1)modulo n

第i个密码处理段311(i=2...k)均操作为:

1.延迟量Δi,其中,Δi是随机或伪随机产生的延迟

2.检索第i个密钥片段mi

3.计算Ri=(Ri-1+r mi)modulo n

最后的乘积被计算为:

s=p-1(z+Rk)modulo n

尽管以上呈现了单个例子,但是可以以其他方式将随机延迟插入 在顺序处理中,并且可以在顺序处理的其他例子中插入随机延迟,以 类似地避免mi以周期性的间隔出现在公共存储器位置中。

图5呈现根据本发明的实施例的密码学模块210’’的框图表示。特 别地,呈现密码学模块210’’执行与密码学模块210类似的功能,并且 包括被共同标号引用的类似元件。然而,在本实施例中,密码处理段 310的操作在并行操作的多个密码处理段312之间分布,并且组合器 被用于产生最后结果。

可结合与图3结合呈现的另一例子来进一步描述密码学模块210’’ 的操作。考虑这样的情况,即,输入信号52C已通过Rivest、Shamir 和Adelman(RSA)密码学系统的公钥(e,n)模n进行了加密,具有对 应的私钥d。根据本发明,解密密钥d已被分枝为具有下述性质的k 个密钥片段:

进一步考虑k个密钥片段被存储在可执行文件中的不同位置中, 所述可执行文件用软件或固件实现密码处理段312的操作。根据这个 例子,第i个密码处理段312(i=1...k)均操作为:

1.检索第i个密钥片段mi

2.计算Ri=(Cmi)modulo n

由操作来产生每个分段密钥的结果的乘积的组合器214得到的最 后解密结果如下:

D=(R1R2R3…Rk)modulo n

尽管已结合ECC和RSA密码系统说明了密码学模块210’’的操 作,但是本文中呈现的方法可类似地用于其他加密信号的解密,并且 可进一步与签名、认证、密钥共享等等的处理结合利用。

在以下例子中,如下并行计算与ECDSA结合使用的乘积s=p-1(z+ rm1+rm2+rm3+…+rmk)mod n。第i个密码处理段312(i=1...k)均操 作为:

1.检索第i个密钥片段mi

2.计算Ri=(r mi)modulo n

由操作来求取每个分段密钥的结果之和的组合器214产生最后乘 积如下:

s=p-1(z+R1+R2+R3+…+R k)modulo n

图6呈现根据本发明的实施例的密钥分枝模块325的框图表示。 呈现包括随机密钥片段产生器332和余数密钥片段产生器336的密钥 分枝模块325。特别地,密钥分枝模块325基于特定密钥330来产生k 个密钥片段,包括多个随机密钥片段和余数密钥片段。

在操作中,随机密钥片段产生器332包括产生一个或多个随机数 并且基于这些随机数进一步产生k-1个密钥片段的随机数或伪随机数 产生器。例如,随机密钥片段产生器332可直接将k-1个密钥片段产 生为大小相同或类似或者大小不同的k-1个随机数。在另一个例子中, 可产生一个或多个随机数,以作为确定性引擎(比如,状态机、反馈 移位寄存器、或者基于种子选择k-1个密钥片段的其他硬件或软件) 的种子。

余数密钥片段产生器336基于从k-1个密钥片段和密钥计算的模 运算余数来产生第k个密钥片段(余数密钥片段)。考虑密钥d表示 与图3-5结合呈现的任何一个密钥例子,

d=(m1+m2+m3+…+mk-1+mk)modulo n

或者

在这种情况下,可如下基于k-1个密钥片段和解密密钥来确定性 地产生最后的密钥片段:

mk=(d-(m1+m2+m3+…+mk-1))modulo n

或者

如结合图3-5所讨论的,k个密钥片段可被存储在可执行文件中 的不同位置中,所述可执行文件用软件或固件实现密码处理段310的 操作。密钥片段产生器336可被合并到或者被耦接到编译器,该编译 器产生包含密钥片段的执行代码,以便将k个密钥片段“隐藏”在该 代码的部分中。

在其他实现中,密钥片段产生器336可以是独立装置或例行程序。 尽管k个密钥片段已主要被讨论为被存储在可执行文件中,但是k个 密钥片段在保存其他数据文件或其他文件类型的不同存储位置中的存 储同样是可能的。

图7呈现根据本发明的实施例的密码学模块210、210’或210’’的 操作的框图表示。尽管主要结合视频播放器与媒体内容提供者之间的 认证和密钥共享以及加密视频信号(比如,加密视频信号52)的解密 而描述了前面的例子,但是密码学模块210、210’和210’’的功能和特 征可同样地用于其他类型的加密数据,包括但不限于,音频信息、文 本、其他媒体内容、通信、存储数据和任何其他形式的加密数据(比 如,加密数据350),并且还可同样地用于其他签名、认证、密钥共 享布置、数字版权管理,并且还可同样地用于其他形式的密码学。在 操作中,密码学模块210、210’和210’’使用根据前面描述的任一处理 或技术而存储和处理的分枝密钥从密码学数据350产生密码学数据 352。

图8呈现根据本发明的实施例的方法的流程图表示。特别地,呈 现了与结合图1-7呈现的功能和特征中的一个或多个结合使用的方 法。在步骤400中,将密钥存储为包括多个随机密钥片段和余数密钥 片段的k个密钥片段。在步骤402中,基于所述k个密钥片段,通过 至少一个密码处理段对输入信号进行处理以生成输出信号。

在本发明的实施例中,通过Rivest Shamir Adelman(RSA)加密 对输入信号进行加密,并且至少一个密码处理段基于k个密钥片段来 执行模幂运算。输入信号的处理可包括顺序地对输入信号进行处理以 生成输出信号。

加密信号的处理可包括:并行地将输入信号处理为多个分段密钥 结果,并组合所述多个分段密钥结果来生成输出信号。组合所述多个 分段密钥结果可包括产生所述多个分段密钥结果的乘积。

图9呈现根据本发明的实施例的方法的流程图表示。特别地,呈 现了与结合图1-8呈现的功能和特征中的一个或多个结合使用的方 法。在步骤410中,将私钥存储为包括多个随机密钥片段和余数密钥 片段的k个密钥片段。在步骤412中,基于所述k个密钥片段,通过 至少一个密码处理段根据椭圆曲线数字签名算法(ECDSA)对消息进 行处理,以生成经过签名的消息。

在本发明的实施例中,所述k个密钥片段包括多个随机密钥片段, 并且还可包括基于所述多个随机密钥片段的余数密钥片段。所述至少 一个密码处理段可基于所述k个密钥片段中的对应密钥片段来产生模 运算乘积。对消息进行处理可包括顺序地对加密信号进行处理以生成 经过签名的消息。

对消息进行处理可包括:并行地对消息进行处理以产生多个分段 密钥结果,并组合所述多个分段密钥结果来生成经过签名的消息。组 合所述多个分段密钥结果可包括产生所述多个分段密钥结果之和。

图10呈现根据本发明的实施例的方法的流程图表示。特别地,呈 现了与结合图1-9呈现的功能和特征中的一个或多个结合使用的方 法。在步骤420中,产生至少一个随机数。在步骤422中,基于所述 至少一个随机数来产生k-1个密钥片段。在步骤424中,基于从k-1 个密钥片段和密钥计算的模运算余数来产生余数密钥片段。

所述密钥可包括公钥密码系统(比如,Rivest Shamir Adelman (RSA)、椭圆曲线密码学(ECC)或其他密码系统)的私钥。

在优选实施例中,可选的电路组件可使用0.35微米或更小的 CMOS技术来实现。然而,前提条件是在本发明的宽泛范围内可使用 集成的或非集成的其他电路技术。

如本领域的普通技术人员将意识到的,如本文中可使用的术语“基 本上”或“大约”对于它对应的术语和/或项目之间的相关性提供行业 接受的容限。这样的行业接受的容限的范围为从小于百分之一到百分 之二十,并且对应于,但不限于,分量值、集成电路工艺变化、温度 变化、上升时间和下降时间、和/或热噪声。项目之间的这样的相关性 的范围为从几个百分比的差异到巨大差异。如本领域的普通技术人员 将进一步意识到的,如本文中可使用的术语“耦接”包括直接耦接和 通过另一组件、元件、电路或模块的间接耦接,其中,对于间接耦接, 介于中间的组件、元件、电路或模块不修改信号的信息,但是可调整 它的电流电平、电压电平和/或功率电平。如本领域的普通技术人员还 将意识到的,推断的耦接(即,其中,一个元件根据推理与另一元件 耦接)包括以与“耦接”相同的方式在两个元件之间的直接和间接耦 合。如本领域的普通技术人员将进一步意识到的,如本文中可使用的 术语“有利比较”指示两个或更多个元件、项目、信号等之间的比较 提供希望的关系。例如,当希望的关系为信号1具有大于信号2的幅 值时,则当信号1的幅值大于信号2的幅值时,或者当信号2的幅值 小于信号1的幅值时,可实现有利比较。

当术语模块用在本发明的各个实施例的描述中时,模块包括用硬 件、软件和/或固件实现的、执行一个或多个模块功能(比如,生成输 出信号的输入信号处理)的功能块。如本文中所使用的,模块可包含 本身是模块的子模块。

因而,本文中描述了用于实现用于处理数据的密码学模块的设备 和方法以及包括优选实施例的多个实施例。本文中描述的本发明的各 个实施例具有使本发明区别于现有技术的特征。

本领域技术人员将明白,公开的发明可以以许多方式修改,并且 可采用除以上具体列出和描述的优选形式之外的许多实施例。因此, 所附权利要求的意图是覆盖落在本发明的真实精神和范围内的本发明 的所有修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号