如何理解密码学中的安全等级/比特安全?——通用安全(从水滴到泳池、湖泊……以至突破极限)

通用安全(从水滴到泳池、湖泊……以至突破极限)

本篇是阅读《Universal security from bits and mips to pools, lakes — and beyond》时所做的读书笔记,旨在加深对加密算法中所谓的安全等级/比特安全的一种直观上的理解。

文献信息

  • 文献名称:Universal security from bits and mips to pools, lakes — and beyond
  • 文献作者:Arjen K. Lenstra 1 ^1 1, Thorsten Kleinjung 1 ^1 1, Emmanuel Thomé 2 ^2 2
  • 文献期刊:Number Theory & Cryptography

主要内容

​ 本文直接以算法破解所需的能量来衡量破解的难度,简单粗暴。

当前的安全等级(Current security levels)

​ 若加密方案的破解难度为 2 k 2^k 2k(以某商定的单位),则称其安全等级为 k k k(security level k k k)。

  • 对称加密:记密钥长度为 k k k比特,则安全等级为 k k k
  • 散列函数:若输出为 h h h比特,则安全等级不大于 h / 2 h/2 h/2
  • 公钥加密:
    • RSA:若分解 n n n比特模数耗时 T T T,则分解和 n n n差不多大的 m m m比特模数的耗时可估计为 N ( m ) N ( n ) T \frac{N(m)}{N(n)}T N(n)N(m)T ,其中 N ( k ) = exp ⁡ ( 1.923 ( ln ⁡ 2 k ) 1 / 3 ( ln ⁡ ln ⁡ 2 k ) 2 / 3 ) N(k)=\exp(1.923(\ln 2^k)^{1/3}(\ln \ln 2^k)^{2/3}) N(k)=exp(1.923(ln2k)1/3(lnln2k)2/3) 768 768 768 1024 1024 1024 2048 2048 2048比特的RSA分别具有约 66 66 66 76 76 76 106 106 106的安全等级
    • 离散对数: Z q \mathbb{Z}_q Zq上的操作比散列函数慢 2 c 2^c 2c 倍( 0 ⩽ c ⩽ 10 0\leqslant c \leqslant 10 0c10),故安全等级为 c + log ⁡ 2 q c+\log_2 \sqrt{q} c+log2q
  • 基于格的:无法分析

直观的安全等级(Intuitive security levels)

​ 本文不以“ k k k比特安全”来描述“安全等级 k k k”,该灵感来自于Crypto 2010上对 786 786 786比特RSA挑战进行分解的描述:

估计分解所需能量足以使两个 2 0 ∘ C 20^\circ C 20C的奥林匹克泳池烧开(约 500 500 500万kWh)。

  • “泳池安全(pool security)”:如果说,某个加密方案提供“泳池安全”即意味着攻破这个方案所需的能量足以煮沸一个奥林匹克泳池(即,2500立方米的水)。目前的65位对称密码、130位散列函数和745位RSA均提供着“泳池安全”。
  • “雨水安全(rain security)”:荷兰地区日均降水量为8200万立方米(即, 2 15 2^{15} 215个泳池)。80位对称密码、160位散列函数和1130位RSA均提供着“雨水安全”。如果以德国每位公民烧开1立方米的水的能量来衡量(德国人口约为8200万人),故也可称之为”德国安全(German security)。
  • “湖泊安全(lake security)”:比 2 25 2^{25} 225稍多些的泳池足够装满日内瓦湖(Geneva)了(约89立方公里)。90位对称密码、180位散列函数和1440位RSA均可提供“湖泊安全”。
  • “全球安全(global security)”:全球总水量(包括所有海星(starfish))约为 2 24 2^{24} 224个日内瓦湖。114位对称密码、228位散列函数和2380位RSA均提供“全球安全”。这意味着,破解AES-128、SHA-256或3064位的RSA需要蒸发全球总水量至少16千次。
  • “太阳能安全(solar security)”:上述安全级别已经把地球上所有的水都蒸发掉了。更高的安全等级可以用太阳能来定义,即一年内的总太阳能。140位对称密码、280位散列函数和3730位均提供“太阳能安全”。

突破极限(To infinity — and beyond)

  • “宇宙安全(universal security)”:估计可观测宇宙所蕴含的质能是烧沸两个泳池的能量(从 2 0 ∘ C 20^\circ C 20C开始)的 2 190 2^{190} 2190倍。256位对称密码、512位散列函数和14954位RSA提供“宇宙安全”。

总结(Summary)

​ 就算门外汉,也能直观地选择合适的安全参数。

表1 直观的安全等级
安全等级加热至沸腾的水的体积(从 2 0 ∘ C 20^\circ C 20C开始)对称密钥/位散列函数/位RSA模数/位
茶匙安全1(teaspoon security)0.0025 公升3570242
沐浴安全(shower security)80 公升50100453
泳池安全(pool security)2 500 000 公升65130745
雨水安全(rain security)0.082 立方公里801601130
湖水安全(lake security)89 立方公里901801440
海水2安全(sea security)3 750 000 立方公里1052101990
全球安全(global security)1 400 000 000 立方公里1142282380
太阳能安全(solar security)-1402803730

  1. “茶匙安全”的安全性进一步降低,可称之为“肉体安全(meat security)”——即人类能够期望的进行的总的计算量,但作者更愿将计算机作为人类在进化阶梯上的下一步,因此这里的安全等级从“汤匙安全”开始算起 ↩︎

  2. 指地中海(Mediterranean Sea) ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值