用于消息认证的加密方法

文档序号:7678440阅读:757来源:国知局
专利名称:用于消息认证的加密方法
技术领域
本发明涉及消息(message)的安全加密方法
背景技术
在许多类型的通信中,有必要保护消息免受篡改(tampering)和非 4受权访问(unauthorized access)。力口密长久以来净皮应用于此目的。在力口 密技术的高级应用中,加密密钥(encryption key)不仅被用于为加密的 消息提供安全性,而且被用于保护消息的完整性。例如,在传送之前 数字签名可能被附加于消息上,而第二版本的数字签名由接收方从接 收的消息计算得出。如果数字签名的两个版本不一致,则接收方将会 知道消息的完整性由于篡改而遭到了破坏。
为了确保消息的完整性,希望能够在不可改变(nonmalleable)的密 码的保护下连同附加的数字签名 一起发送消息。不可改变的特性确保 如果即使是加密消息的 一个位因为(例如)恶意的攻击而被改变的话, 改变的效果将会在解密时分布在整个消息中。因此,存在很高的概率 数字签名会受到影响,并且与由接收方在本地计算得出的版本不一 致。
用于加密消息的一种类型的密码-陂称作为分组密码(block cipher)。分组密码把固定长度的二进制数据块作为输入字符串,并且 产生固定长度的二进制数据块作为输出字符串。例如,高级加密标准 (AES)是著名的分组密码,它通常有128位的输入块和输出块。应用诸如AES的分组密码的一种方法是通过电子密码本(ECB) 加密。在ECB加密中,消息被分割成分组密码的合适输入长度的块, 并且每一块又被使用分組密码而独立地加密。
ECB加密的一个弱点在于它容易受到重放攻击。这就是说,攻击 者可能寻找传送消息中重现的字符串。在ECB加密中,明文字符串的 重现可能导致同样的加密字符串的重现。在这样的情况下,重现可能 净皮攻击者识别。
已做了各种尝试来使加密方法更加稳健以抵御篡改、重放攻击 以及其他种类的攻击。在与此共同转让的由S. Patel等人所著的题为 "无线网络的空中接口应用层安全"("Air-Interface Application Layer Security For Wireless Networks")的美国专利(序号为11/261,399、申请 日为2005年10月28日)中描述了一个更稳健的方法的例子。在该方 法中,分组密码(例如)被用来生成一对伪随机字符串A和B。明文的 块X通过形成表达式AX + B而被加密,其中A和X是4吏用多项式乘 法而结合。字符串A和B的结合使用提供了不可改变性以及鲁棒性 (robustness)来抵御回复攻击(reply attacks)。
这样的多项式加密方法尽管有用,但是代价比较高,因为加密的 乘法操作以及更进一 步用于解密的其逆操作计算量很大。
因此,仍存在对计算资源使用较为经济的稳健加密方法的需求。

发明内容
我们提出了这样的方法。在广泛的层面上,我们的方法可逆地 (reversibly)处理数据的输入块来产生至少部分被随机化的字符串。随 机化的字符串随后由分组密码进行加密。在解密中,加密数据的输入 块首先根据分组密码来解密。随后进行反随机化。


图1是示例根据本发明的一个实施例的加密方法的流程图。
4图2是示例根据本发明的 一个实施例的解密方法的流程图。 图3是示例一种方法的流程图,该方法可在图1用于加密输入数 据的部分字符串的方法的变型中使用。
图4是示例一种方法的流程图,该方法可在图2用于解密输入数
据的部分字符串的方法的变型中使用。
具体实施例方式
这里描述的加密方法将会具有特别应用,用于保护各种内容(包 括数据业务、电话业务和信令数据)的无线传输的安全性和完整性。这 样的传输(例如)可以但并不仅限于在无线用户终端和无线网络的基站 之间发生。然而,所述方法并不仅限于无线网络,相反在有线通信领 域中也可以找到合适的应用。同样地,它适合于保护各种网络实体(包 括用户终端、网络服务器和开关)之间的通信。
在一个具体例子中,会话密钥K在到受保护通信的双方之间提前 安全地交换。通过众所周知的方法,会话密钥被用于产生两个进一步 的密钥Kl和K2。例如,Kl可以通过把K作为输入密钥、把整数l(适 当地填充O)作为参数的AES算法(K1 = AES"1)产生。类似地,我们也 可以得到K2 = AESk(2)。密钥Kl与AES —起被用来产生比特位 AESK1(1), AESfa(2)等的伪随机字符串。通过例示,用于形成伪随机字 符串的AES参数可以是连续的整数1、 2等等(适当地被填充)。然而, 任何序列的值都可以被使用,只要在解密使用中接收方也知晓相同 值。
参考图1,在第一次加密步骤10,输入数据XI, . . , Xn的n个块 才艮氺居n =(1)十义l , 72 =爿五S^ (2) , …,y"=(")十Jf"由
AES加密。在上述表达式中,符号④表示逻辑异或(XOR)操作。这些 操作的结果是将至少部分随机化加入到输入块中。这些操作是可逆 的,因为各块之间的第二次异或操作和相应的伪随机字符串将会恢复 原始的输入块。如果希望更加经济而相对较低安全性,可以使用较短的伪随机字 符串,并且在这种方式下每一个输入块只有部分被随机化。此外,还 有用于生成伪随机字符串的分组密码的备选。例如,上述各伪随机字 符串可以是来自由流密码生成的长伪随机字符串的块。
在第二个加密步骤20中,各Y1、 Y2等由AES加密,将K2作
为输入密钥以产生密文块Cl、 C2等。也就是d-^^&2(71), C2 =(72) , , c" = 。
解密是上述步骤的反转。例如,参考图2, Cl在步骤30.1, 40.1 中按下式解密为X1': n、厕;'(ci) n'"^(i)④;n'
类似地,步骤30.2,…,30.n用于从C2, ..., Cn得到Y2',…, Yn,,而步骤40.2,…,40.n用于从Y2',…,Yn,得到X2',. . . , Xn'
可选地,在最后一个豸lr入块Xn有少于128位完全块长的块长时, 一种有效的方法可以-故用于对其进^"加密和解密。为了举例-说明,我 们假设Xn有64位。然后参考图3,对于加密,XOR操作50在Xn
和AESin(n)的前64位之间被执行。产生的64位字符串^与在前加密 块C(n-l)的最后64位连接(步骤60)以形成128位的字符串Zn。产生 的字符串用AESK2(.)的常规方法加密。
参考图4,为了解密C(n-l)和Cn,接收方首先等待192位的到 来和聚集(collection)。 192位包括C(n-l)的前64位和Cn的128位,
这128位由Xn(如随机化形成^)与C(n-l)的最后64位的连接60的加 密70所得到。首先,Cn,即与连接字符串相对应的最后128位被解 密。然后,Xn,可以从?n,(即从解密位的最后64位)被恢复。随后, C(n-l)可以通过连接(步骤100)重新组合(assemble)并被解密以获取 X(n-l)'。
应该注意到这里所述的方法可以由数字信号处理器、软件程序控
6制下运行的数字计算机,或者其他合适适用的电路来实现。在加密后, 消息将会被适当地调理并且作为通信信号在空中接口上或者光或电 传输媒质上传输。在解密之前,接收方同样也会从空中接口或者光或 电传输媒质上接收通信信号并对它进^f亍适当的调理。
权利要求
1. 一种方法,包括获取至少一个消息数据块,至少部分地随机化所述消息数据块,使用分组密码对随机化的块进行加密,以及发送被加密的块。
2. 根据权利要求1所述的方法,其中,所述消息数据块的随机化 包括提供伪随机字符串,并且在所述消息数据块的至少一些位中的 每一位和所述伪随机字符串中的相应位之间执行XOR操作。
3. 根据权利要求2所述的方法,还包括从会话密钥产生密钥Kl 和K2,并且其中所述伪随机字符串是通过从把Kl作为输入密钥的密码生成而提供的;使用将K2作为输入密钥的分组密码对所述随机化的块进行加密。
4. 一种方法,包括接收传送的信号并调理所接收的信号以获取 加密消息,从分组密码解密所述消息的至少一个数据块,以及对所解 密的块进行去随机化。
5. 根据权利要求4所述的方法,其中,对所述消息数据块的去随 机化包括提供伪随机字符串,以及在所述消息数据块的至少一些位 中的每一位和所述伪随机字符串的相应位之间执行XOR操作。
6. 根据权利要求5所述的方法,还包括从会话密钥生成密钥Kl 和K2,并且其中所述伪随机字符串是通过从把Kl作为输入密钥的密码生成而提 供的;并且使用将K2作为输入密钥的分组密码的逆来解密所接收的消息块。
全文摘要
在加密方法中,数据的输入块被可逆地处理以产生至少部分随机化的字符串。然后,所述随机化的字符串被分组密码加密。在解密中,加密数据的输入块被相应于分组密码而被首先解密。随后进行反随机化。
文档编号H04L9/18GK101502039SQ200780029954
公开日2009年8月5日 申请日期2007年8月8日 优先权日2006年8月15日
发明者S·帕特尔 申请人:卢森特技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1