密码学中安全参数极简介绍

参考文献

简介

安全参数(Security Parameter)是理论密码学家们提出的概念。安全参数可以分为不同类型,包括对称加密算法中的密钥长度、哈希函数中的输出长度、公钥加密算法中的素数长度以及签名算法中的密钥长度等。这些参数的长度越长,破解算法所需的计算资源就越大,从而使加密算法更加安全。

在对称加密算法中,密钥长度是影响安全性的一个重要因素。通常,对称加密算法中使用的密钥长度为128位、192位或256位,其中256位密钥长度的安全性最高,但也需要更多的计算资源。此外,对称加密算法中的其他安全参数,如初始化向量和消息认证码等也扮演着重要的角色。

在公钥加密算法中,素数的长度是影响安全性的一个重要因素。通常,RSA算法中使用的素数长度为1024位或2048位,而椭圆曲线密码学中使用的点数长度也可能达到几百位。通过增加密钥长度,可以有效地提高公钥加密算法的安全性。

在哈希函数中,输出长度也是影响安全性的一个重要因素。输出长度越长,破解哈希函数所需的计算资源就越大。例如,SHA-256算法的输出长度为256位,而SHA-512算法的输出长度为512位,SHA-512算法比SHA-256算法更安全。

安全参数分类

  • 计算安全参数(computational,通常使用符号 κ \kappa κ表示):决定了加密机制中的定义的计算的数值空间(input size)大小,通常是用bit位数表示,关联计算复杂度。可细分为分为对称安全参数,非对称安全参数。
  • 统计安全参数(statistical,通常使用符号 λ \lambda λ表示):通常是在攻击方unbounded computation power,即 n ∈ { 0 , . . . , 2 k − 1 } n∈\{0,..., 2^k-1\} n{ 0,...,2k1}算力无限的情况下,攻击方以一定概率破解加密机制。

安全参数的具体说明

参考如下两篇文章:

安全参数的选择

安全参数的选择参考《NIST Guideline Key Management Part1 》部分。
比如:

Security Strength Symmetric Key Algorithms FFC (DSA, DH, MQV) IFC* (RSA) ECC* (ECDSA, EdDSA, DH, MQV)
≤ 80 ≤80 80 2 T D E A 2TDEA 2TDEA L = 1024 L=1024 L=1024
N = 160 N=160 N=160
κ = 1024 \kappa=1024 κ=1024 f = 160 − 223 f=160-223 f=160223
112 112 112 3 T D E A 68 {3TDEA}^{68} 3TDEA68 L = 1024 L=1024 L=1024
N = 160 N=160 N=160
κ = 1024 \kappa=1024 κ=1024 f = 160 − 223 f=160-223 f=160223
128 128 128 A E S − 128 AES-128 AES128 L = 3072 L=3072 L=3072
N = 256 N=256 N=256
κ = 3072 \kappa=3072 κ=3072 f = 256 − 383 f=256-383 f=256383
192 192 192 A E S − 192 AES-192 AES192 L = 7680 L=7680 L=7680
N = 384 N=384 N=384
κ = 7680 \kappa=7680 κ=7680 f = 384 − 511 f=384-511 f=384511
256 256 256 A E S − 256 AES-256 AES256 L = 15360 L=15360 L=15360
N = 512 N=512 N=512
κ = 15360 \kappa=15360 κ=15360 f = 512 + f=512+ f=512+

其中:

  • FFC:Finite Field Cryptography
  • IFC:Integer Factorization cryptography
  • ECC:Elliptic Curve Cryptography

猜你喜欢

转载自blog.csdn.net/shuizhongmose/article/details/131419091