fbpx
维基百科

3DES

密码学中,三重数据加密算法(英語:Triple Data Encryption Algorithm,縮寫為TDEA,Triple DEA),或稱3DESTriple DES),是一種對稱密鑰加密块密码,相当于是对每个数据块应用三次資料加密標準(DES)算法。由于计算机运算能力的增强,原版DES由於密钥长度過低容易被暴力破解;3DES即是设计用来提供一种相对简单的方法,即通过增加DES的密钥长度来避免类似的攻击,而不是设计一种全新的块密码算法。

三重数据加密算法
概述
首次发布1998 (ANS X9.52)
衍生自DES
密码细节
密钥长度168,112或56 位 (对应密钥选项 1, 2, 3)
分组长度64位
结构Feistel网络
重复回数相当于DES的48
最佳公开破解
Lucks:232组已知明文,2113次操作,包括290次DES加密,288位内存; Biham:以每个密钥对应的少数选择平文和284次加密操作找到228个目标密钥中的一个

标准中的定义

TDEA算法在以下标准中被定义:

  • ANS[註 1] X9.52-1998 三重数据加密算法的工作模式[註 2] (已失效)
  • FIPS PUB 46-3 数据加密标准 (DES)(页面存档备份,存于互联网档案馆) (PDF) (已失效[1])
  • NIST Special Publication 800-67 使用三重数据加密算法(TDEA)块密码的建议PDF (483 KB)
  • ISO/IEC 18033-3:2005 信息技术—安全技术—加密算法—第三部分:块密码(页面存档备份,存于互联网档案馆

算法的名称

最早的定义了该算法的标准(ANS X9.52,1998年发布)将其描述为“三重数据加密算法(TDEA)” — 即ANSI X3.92中定义的数据加密算法(DEA)的三次重复操作 — 而完全没有使用术语“3DES”或“DES”。FIPS PUB 46-3(1999)定义了“三重数据加密算法”(TDEA),也使用了术语“Triple DES”和“DES”。该标准中互换的使用“数据加密算法”(DEA)和“DES”的概念,其中以此开始DES的定义:

数据加密标准(DES)应当包括下文中的数据加密算法(DES[註 3])与三重数据加密算法(TDEA,如ANSI X9.52中所描述的)

NIST SP 800-67(2004,2008[註 4])主要使用术语TDEA,但也提到了“Triple DES(TDEA)”。ISO/IEC 18033-3(2005)使用“TDEA”,但其中提到:

TDEA通称Triple DES(数据加密标准)。

没有一个定义了本算法的标准使用术语“3DES”。

算法

3DES使用“密钥包”,其包含3个DES密钥,K1,K2和K3,均为56位(除去奇偶校验位)。加密算法为:

密文 = EK3(DK2(EK1(明文)))

也就是说,使用K1为密钥进行DES加密,再用K2为密钥进行DES“解密”,最后以K3进行DES加密。

而解密则为其反过程:

明文 = DK1(EK2(DK3(密文)))

即以K3解密,以K2“加密”,最后以K1解密。

每次加密操作都只处理64位数据,称为一块。

无论是加密还是解密,中间一步都是前后两步的逆。这种做法提高了使用密钥选项2时的算法强度,并在使用密钥选项3时与DES兼容

密钥选项

标准定义了三种密钥选项(Keying option),“密钥选项n”是标准中(X9.52, FIPS PUB 46-3, SP 800-67, ISO/IEC 18033-3)定义的TDEA的术语。然而,其它标准中,推荐和通用描述中也使用了其它术语。

  • 密钥选项1:
    • 三个密钥是独立的。常用名称为3TDEA或“三倍长度密钥”(triple-length keys)[2][3]
    • 密钥选项1的强度最高,拥有3 x 56 = 168个独立的密钥位。在NIST SP 800-57[4]与SP 800-78-2[5]中定义。
  • 密钥选项2(已弃用):
    • K1和K2是独立的,而K3=K1。常用名称为2TDEA,或“双倍长度密钥”(double-length keys)[2][3]
    • 密钥选项2的安全性稍低,拥有2 x 56 = 112个独立的密钥位。该选项比简单的应用DES两次的强度较高,即使用K1和K2,因为它可以防御中途相遇攻击。 这是对“双重DES”(double DES)的改进,双重DES仅需要256步即可进行攻击。 國家標準技術研究所(NIST)已弃用此选项。[6]在NIST SP 800-57[4]和SP 800-78-1[5]中定义。
  • 密钥选项3(已弃用):
    • 三个密钥均相等,即K1=K2=K3
    • 密钥选项3等同与DES,只有56个密钥位。这个选项提供了与DES的兼容性,因为第1和第2次DES操作相互抵消了。该选项不再为NIST所建议[7],亦不为ISO/IEC 18033-3所支持。

对多于一个块的加密

与其它的块密码一样,对多个数据块的加密和解密可以使用多种工作模式进行,而模式的定义可以与块密码算法相独立。然而,ANS X9.52和NIST SP 800-67(通过SP 800-38A[8])确定了某些模式只能在特定限制下应用,而无需普遍的应用。例如,ANS X9.52提出对于CBC模式,初始化向量每次应当不同,而ISO/IEC 10116没有类似规定[9]。FIPS PUB 46-3和ISO/IEC 18033-3只定义了单块密码,而并没有对多块的工作模式做出限制。

安全性

普遍而言,有3个独立密钥的3DES(密钥选项1)的密钥长度为168位(三个56位的DES密钥),但由於中途相遇攻击,它的有效安全性仅为112位。密钥选项2将密钥长度缩短到了112位,但该选项对特定的选择明文攻击已知明文攻击的强度较弱[10][11],因此NIST认定它只有80位的安全性[4]

对密钥选项1的已知最佳攻击需要约232组已知明文,2113部,290次DES加密以及288位内存[12](该论文提到了时间和内存的其它分配方案)。这在现在是不现实的,因此NIST认为密钥选项1可以使用到2030年[4]。若攻击者试图在一些可能的(而不是全部的)密钥中找到正确的,有一种在内存效率上较高的攻击方法可以用每个密钥对应的少数选择明文和约284次加密操作找到228个目标密钥中的一个[13]

使用

电子货币业界和電子貨幣標準(如EMV)過往普遍使用3DES[14][15],但3DES已經逐漸被更安全的AES代替。

Microsoft OneNoteMicrosoft Outlook 2007使用3DES以密码保护用户数据[16][17]

注释

  1. ^ X9.52有时被错误的写作ANSI X9.52,然而标准自身的名称为ANS X9.52.
  2. ^ X9.52将TDEA定义为DEA(定义于ANSI X3.92-1981中,数据加密算法)的一种复合操作,并没有包含DEA的算法内容。因此,X9.52必须与X3.92一起阅读。
  3. ^ 疑为笔误,数据加密算法应为DEA。
  4. ^ NIST SP 800-67第一版于2004年5月发布,并于2008年5月修订为1.1版,对弱密钥和半弱密钥的定义进行了修正和澄清。两个版本使用了相同的术语。

参考文献

  1. ^ Federal Register vol 70, number 96, 宣告联邦信息处理标准(FIPS)46-3,“数据加密标准”(DES);FIPS 74,“实现和使用NBS数据加密标准指导”;FIPS 81,“DES的工作模式”的失效 (页面存档备份,存于互联网档案馆) (PDF)
  2. ^ 2.0 2.1 . Cryptography World. [2010-07-11]. (原始内容存档于2010-03-11). 
  3. ^ 3.0 3.1 Triple DES Encryption. IBM. [2010-07-11]. 
  4. ^ 4.0 4.1 4.2 4.3 NIST Special Publication 800-57 密钥管理的建议—第一部分:综述 (修订版), 2007年3月 (页面存档备份,存于互联网档案馆) (PDF)
  5. ^ 5.0 5.1 NIST Special Publication 800-78-2, 个人身份认证的密码学算法与密钥长度, 2010年2月 (页面存档备份,存于互联网档案馆) (PDF)
  6. ^ Barker, Elaine. NIST Special Publication 800-57: Recommendation for Key Management Part 1: General (PDF) 4. NIST. January 2016 [2017-09-05]. (原始内容 (PDF)于2020-12-10). 
  7. ^ NIST SP 800-67
  8. ^ NIST Special Publication 800-38A, 块密码工作模式的建议,方法和技术, 2001版 (页面存档备份,存于互联网档案馆) (PDF)
  9. ^ ISO/IEC 10116:2006 信息技术 — 安全技术 — n位块密码的工作模式. [2010-09-23]. (原始内容于2012-03-17). 
  10. ^ Ralph Merkle, Martin Hellman: 关于多加密的安全性 (页面存档备份,存于互联网档案馆) (PDF), Communications of the ACM, Vol 24, No 7, pp 465–467, July 1981.
  11. ^ Paul van Oorschot, Michael J. Wiener, 一种针对双密钥三次加密的已知明文攻击, EUROCRYPT'90, LNCS 473, 1990, pp 318–325.
  12. ^ Stefan Lucks: 攻击三次加密 (页面存档备份,存于互联网档案馆) (PDF), Fast Software Encryption 1998, pp 239–253.
  13. ^ Eli Biham: 如何使用228步解密DES加密的消息 (页面存档备份,存于互联网档案馆) (PostScript), 1996.
  14. ^ EMV 4.2 Specifications, 第二部 - 安全性和密钥管理, 4.2版, 2008年6月. [2010-09-23]. (原始内容于2017-07-18). 
  15. ^ VISA. [2010-09-23]. (原始内容于2019-07-09). 
  16. ^ Daniel Escapa's OneNote Blog - Encryption for Password Protected Sections, November 2006. [2010-09-23]. (原始内容于2007-02-23). 
  17. ^ . [2010-09-23]. (原始内容存档于2010-03-28). 

参见

  • DES
  • DES-X
  • AES
  • Horst Feistel
  • Walter Tuchman

3des, 密码学中, 三重数据加密算法, 英語, triple, data, encryption, algorithm, 縮寫為tdea, triple, 或稱, triple, 是一種對稱密鑰加密块密码, 相当于是对每个数据块应用三次資料加密標準, 算法, 由于计算机运算能力的增强, 原版des由於密钥长度過低容易被暴力破解, 即是设计用来提供一种相对简单的方法, 即通过增加des的密钥长度来避免类似的攻击, 而不是设计一种全新的块密码算法, 三重数据加密算法概述首次发布1998, 衍生自des密码细节密钥长. 密码学中 三重数据加密算法 英語 Triple Data Encryption Algorithm 縮寫為TDEA Triple DEA 或稱3DES Triple DES 是一種對稱密鑰加密块密码 相当于是对每个数据块应用三次資料加密標準 DES 算法 由于计算机运算能力的增强 原版DES由於密钥长度過低容易被暴力破解 3DES即是设计用来提供一种相对简单的方法 即通过增加DES的密钥长度来避免类似的攻击 而不是设计一种全新的块密码算法 三重数据加密算法概述首次发布1998 ANS X9 52 衍生自DES密码细节密钥长度168 112或56 位 对应密钥选项 1 2 3 分组长度64位结构Feistel网络重复回数相当于DES的48最佳公开破解Lucks 232组已知明文 2113次操作 包括290次DES加密 288位内存 Biham 以每个密钥对应的少数选择平文和284次加密操作找到228个目标密钥中的一个 目录 1 标准中的定义 2 算法的名称 3 算法 4 密钥选项 5 对多于一个块的加密 6 安全性 7 使用 8 注释 9 参考文献 10 参见标准中的定义 编辑TDEA算法在以下标准中被定义 ANS 註 1 X9 52 1998 三重数据加密算法的工作模式 註 2 已失效 FIPS PUB 46 3 数据加密标准 DES 页面存档备份 存于互联网档案馆 PDF 已失效 1 NIST Special Publication 800 67 使用三重数据加密算法 TDEA 块密码的建议 PDF 483 KB ISO IEC 18033 3 2005 信息技术 安全技术 加密算法 第三部分 块密码 页面存档备份 存于互联网档案馆 算法的名称 编辑最早的定义了该算法的标准 ANS X9 52 1998年发布 将其描述为 三重数据加密算法 TDEA 即ANSI X3 92中定义的数据加密算法 DEA 的三次重复操作 而完全没有使用术语 3DES 或 DES FIPS PUB 46 3 1999 定义了 三重数据加密算法 TDEA 也使用了术语 Triple DES 和 DES 该标准中互换的使用 数据加密算法 DEA 和 DES 的概念 其中以此开始DES的定义 数据加密标准 DES 应当包括下文中的数据加密算法 DES 註 3 与三重数据加密算法 TDEA 如ANSI X9 52中所描述的 NIST SP 800 67 2004 2008 註 4 主要使用术语TDEA 但也提到了 Triple DES TDEA ISO IEC 18033 3 2005 使用 TDEA 但其中提到 TDEA通称Triple DES 数据加密标准 没有一个定义了本算法的标准使用术语 3DES 算法 编辑3DES使用 密钥包 其包含3个DES密钥 K1 K2和K3 均为56位 除去奇偶校验位 加密算法为 密文 EK3 DK2 EK1 明文 也就是说 使用K1为密钥进行DES加密 再用K2为密钥进行DES 解密 最后以K3进行DES加密 而解密则为其反过程 明文 DK1 EK2 DK3 密文 即以K3解密 以K2 加密 最后以K1解密 每次加密操作都只处理64位数据 称为一块 无论是加密还是解密 中间一步都是前后两步的逆 这种做法提高了使用密钥选项2时的算法强度 并在使用密钥选项3时与DES兼容 密钥选项 编辑标准定义了三种密钥选项 Keying option 密钥选项n 是标准中 X9 52 FIPS PUB 46 3 SP 800 67 ISO IEC 18033 3 定义的TDEA的术语 然而 其它标准中 推荐和通用描述中也使用了其它术语 密钥选项1 三个密钥是独立的 常用名称为3TDEA或 三倍长度密钥 triple length keys 2 3 密钥选项1的强度最高 拥有3 x 56 168个独立的密钥位 在NIST SP 800 57 4 与SP 800 78 2 5 中定义 密钥选项2 已弃用 K1和K2是独立的 而K3 K1 常用名称为2TDEA 或 双倍长度密钥 double length keys 2 3 密钥选项2的安全性稍低 拥有2 x 56 112个独立的密钥位 该选项比简单的应用DES两次的强度较高 即使用K1和K2 因为它可以防御中途相遇攻击 这是对 双重DES double DES 的改进 双重DES仅需要256步即可进行攻击 國家標準技術研究所 NIST 已弃用此选项 6 在NIST SP 800 57 4 和SP 800 78 1 5 中定义 密钥选项3 已弃用 三个密钥均相等 即K1 K2 K3 密钥选项3等同与DES 只有56个密钥位 这个选项提供了与DES的兼容性 因为第1和第2次DES操作相互抵消了 该选项不再为NIST所建议 7 亦不为ISO IEC 18033 3所支持 对多于一个块的加密 编辑与其它的块密码一样 对多个数据块的加密和解密可以使用多种工作模式进行 而模式的定义可以与块密码算法相独立 然而 ANS X9 52和NIST SP 800 67 通过SP 800 38A 8 确定了某些模式只能在特定限制下应用 而无需普遍的应用 例如 ANS X9 52提出对于CBC模式 初始化向量每次应当不同 而ISO IEC 10116没有类似规定 9 FIPS PUB 46 3和ISO IEC 18033 3只定义了单块密码 而并没有对多块的工作模式做出限制 安全性 编辑普遍而言 有3个独立密钥的3DES 密钥选项1 的密钥长度为168位 三个56位的DES密钥 但由於中途相遇攻击 它的有效安全性仅为112位 密钥选项2将密钥长度缩短到了112位 但该选项对特定的选择明文攻击和已知明文攻击的强度较弱 10 11 因此NIST认定它只有80位的安全性 4 对密钥选项1的已知最佳攻击需要约232组已知明文 2113部 290次DES加密以及288位内存 12 该论文提到了时间和内存的其它分配方案 这在现在是不现实的 因此NIST认为密钥选项1可以使用到2030年 4 若攻击者试图在一些可能的 而不是全部的 密钥中找到正确的 有一种在内存效率上较高的攻击方法可以用每个密钥对应的少数选择明文和约284次加密操作找到228个目标密钥中的一个 13 使用 编辑电子货币业界和電子貨幣標準 如EMV 過往普遍使用3DES 14 15 但3DES已經逐漸被更安全的AES代替 Microsoft OneNote和Microsoft Outlook 2007使用3DES以密码保护用户数据 16 17 注释 编辑 X9 52有时被错误的写作ANSI X9 52 然而标准自身的名称为ANS X9 52 X9 52将TDEA定义为DEA 定义于ANSI X3 92 1981中 数据加密算法 的一种复合操作 并没有包含DEA的算法内容 因此 X9 52必须与X3 92一起阅读 疑为笔误 数据加密算法应为DEA NIST SP 800 67第一版于2004年5月发布 并于2008年5月修订为1 1版 对弱密钥和半弱密钥的定义进行了修正和澄清 两个版本使用了相同的术语 参考文献 编辑 Federal Register vol 70 number 96 宣告联邦信息处理标准 FIPS 46 3 数据加密标准 DES FIPS 74 实现和使用NBS数据加密标准指导 FIPS 81 DES的工作模式 的失效 页面存档备份 存于互联网档案馆 PDF 2 0 2 1 密码学指导 3DES Cryptography World 2010 07 11 原始内容存档于2010 03 11 3 0 3 1 Triple DES Encryption IBM 2010 07 11 4 0 4 1 4 2 4 3 NIST Special Publication 800 57 密钥管理的建议 amp mdash 第一部分 综述 修订版 2007年3月 页面存档备份 存于互联网档案馆 PDF 5 0 5 1 NIST Special Publication 800 78 2 个人身份认证的密码学算法与密钥长度 2010年2月 页面存档备份 存于互联网档案馆 PDF Barker Elaine NIST Special Publication 800 57 Recommendation for Key Management Part 1 General PDF 4 NIST January 2016 2017 09 05 原始内容存档 PDF 于2020 12 10 NIST SP 800 67 NIST Special Publication 800 38A 块密码工作模式的建议 方法和技术 2001版 页面存档备份 存于互联网档案馆 PDF ISO IEC 10116 2006 信息技术 安全技术 n位块密码的工作模式 2010 09 23 原始内容存档于2012 03 17 Ralph Merkle Martin Hellman 关于多加密的安全性 页面存档备份 存于互联网档案馆 PDF Communications of the ACM Vol 24 No 7 pp 465 467 July 1981 Paul van Oorschot Michael J Wiener 一种针对双密钥三次加密的已知明文攻击 EUROCRYPT 90 LNCS 473 1990 pp 318 325 Stefan Lucks 攻击三次加密 页面存档备份 存于互联网档案馆 PDF Fast Software Encryption 1998 pp 239 253 Eli Biham 如何使用228步解密DES加密的消息 页面存档备份 存于互联网档案馆 PostScript 1996 EMV 4 2 Specifications 第二部 安全性和密钥管理 4 2版 2008年6月 2010 09 23 原始内容存档于2017 07 18 VISA 2010 09 23 原始内容存档于2019 07 09 Daniel Escapa s OneNote Blog Encryption for Password Protected Sections November 2006 2010 09 23 原始内容存档于2007 02 23 Microsoft Encrypt E mail Messages Outlook 2007 2010 09 23 原始内容存档于2010 03 28 参见 编辑 密码学主题 DES DES X AES Horst Feistel Walter Tuchman 取自 https zh wikipedia org w index php title 3DES amp oldid 76763419, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。