密码学
密码学的发展
美国:
1949年 香农《保密系统的通信理论》,把密码学置于坚实的数学基础之上,标志着密码学作为一门学科的形成。
1976年 W.Diffie和M.Hellman 公开密钥密码
1977年 美国联邦政府颁布数据加密标准(DES)
1994年 美国联邦政府颁布密钥托管加密标准(EES)
1994年 美国联邦政府颁布数字签名标准(DSS)
2001年 美国联邦政府颁布高级加密标准(AES)
中国:
2000年组织想过规范的编写
2011年经国标委批准设立了密码行业标准化技术委员会,标志着密码标准化工作正式纳入国家标准管理体系。
目前:
SM1分组密码算法,应用于智能电网、居民健康卡、社会保障领域等
SM2椭圆曲线公钥密码算法(国家极力推广的)
SM3密码杂凑算法
SM4分组密码算法
SM7分组密码算法,应用于电子标签、重要门禁领域
ZUC祖冲之密码算法,应用于通信领域
密码学的组成
密码编制学(Cryptography):研究密码编制的科学。
密码分析学(Cryptanalysis):研究密码破译的科学。
密码学(Cryptology):二者共同组成。
密码学安全目标包括三个重要方面:
保密性(confidentiality)、完整性(integerity)、可用性(availability)
- 保密性是确保信息仅被合法用户访问,而不被泄露给非授权用户、实体或过程或供其利用的特性。1 国密算法中,能够提供数据保密性的算法主要是:SM1和SM2,少数使用祖冲之,无线局域网中使用SM4。国际算法中,能够提供数据保密性的算法主要是:DES、3DES、RSA、AES、ECC等。
常用的保密技术:(1)防侦收(2)防辐射(3)数据加密(4)物理保密
- 完整性是指所有资源只能有授权方或以授权的方式进行修改、伪造、乱序、重放、插入等破坏和丢失的特性。
完整性是一种面向信息的安全性,它要求保持信息的原样,即信息的正确生成和正确存储和传输。保密性要求信息不泄露给未授权的人,而完整性则要求信息不致受到各种原因的破坏。
目前完整性主要是通过哈希算法来实现。国密算法中,能够提供数据完整性的算法主要是:SM3。国际算法中,能够提供数据完整性的算法主要是:MD5、SHA256、SHA512。
影响网络信息完整性的主要因素有:(1)设备故障(2)误码(3)人为攻击(4)计算机病毒 - 可用性是指所有资源在适当的时候可以由授权方访问,即信息可被授权实体访问并按需求使用的特性。可用性是信息系统面向用户的安全性能。
信息系统最基本的功能就是向用户提供服务,而用户的需求是随机的,多方面的,有时还有时间要求的。
一般用系统正常使用时间和整个工作时间之比来衡量,可用性还应满足:身份识别与确认,访问控制。
密码技术的基本思想是伪装信息,使未授权者不能理解它的真是含义。
伪装前的原始数据称为明文(plaintext)。
伪装后的数据称为密文(ciphertext)。
伪装的过程称为加密(Encryption)。
加密在加密秘钥(key)控制下进行。
用于数据加密的一组数学变换称为加密算法。
密码分析者攻击密码的方法主要有一下三种:
- 穷举攻击:密码分析者依次采用试遍所有可能的密码对所得的密文进行解密,直至获得正确的明文;或者用一个确定的秘钥对所有可能的明文进行加密,直至获得密文。
- 数学分析攻击:密码分析者针对加解密算法的数学基础和某些密码学特性,通过数学求解的方法来破译密码。
- 基于物理的攻击:侧信道密码分析利用密码系统实现时泄露的额外信息,对到密码系统中的秘密参数。主要方法包括功耗攻击、电磁攻击和时间攻击等。其中功耗攻击是最常用的攻击手段之一,包括简单功耗攻击(SPA)和差分功耗攻击(Differtial power Analysis attacks,DPA)有效性比较高。
密码分析者可利用的数据资源来分类,可将攻击的密码分为以下四种
- 仅知密文攻击是指密码分析者仅根据截获的密文来破译密码。因为仅能利用的数据资源为密文,因此对密码分析者最不利。
- 已知明文攻击是指密码分析者根据已经知道的某些明文—密文对来破译密码。
- 选择明文攻击:所谓是指密码分析者能够选择明文并获得相应的密文。这是对密码分析者十分有利的情况。
- 选择密文攻击:是指密码分析者能够选择密文并能够获得相应的明文。十分有利,主要攻击公开秘钥密码体制,特别攻击其数字签名。
如果一个密码,如果无论密码分析者截获了多少密文和用什么技术方法进行攻击都不能被攻破,则称为绝对不可破译的。理论上不存在
若果一个密码,不能被密码分析者根据可以用的资源破译,则称为计算机上不可破译的。任何秘密都有时效性
持续更新中。。。
访问是指不仅可以读,还能浏览,打印或简单了解一些特殊资源是否存在。 ↩︎