本文主要是介绍密码库LibTomCrypt学习记录——(2.1)分组密码算法的工作模式——概况,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
密码算法的工作模式就是怎样使用密码算法来达到一定的目的,比如怎样加密一个文件。工作模式有很多种,仅用于加密的,用来构造HASH函数的,仅用于生成消息验证码的,用于伪随机数生成的,既能加密又能同时生成验证码的,专门针对磁盘加密的……
很多工作模式都已经被标准化了,这其中影响最广的应该算是NIST了,其他相关标准化组织有ISO/IEC、IEEE、ANSI、 IETF……以下列举其中一部分。
- NIST 800-38系列
- ECB
- CBC
- OFB
- CFB
- CTR
- CMAC
- CCM
- GCM
- XTS
- KeyWrap
- ISO-IEC 19772
- OCB2.0
- KeyWrap
- CCM
- EAX
- Encrypt-then-MAC
- GCM
- IEEE P1619系列
- CCM
- GCM
- CBC
- XTS
- XCB
- EME2
- ISO/IEC 9797 Message Authentication Codes (MACs)
- 缺文档,详情未知
- ISO/IEC 10118 Hash-functions
- 缺文档,详情未知
- ISO/IEC 11770 Key management
- 缺文档,详情未知
- ISO/IEC 18033 Encryption algorithms
- 缺文档,详情未知
- 其他
常见的工作模式如下:
模式 | 用途 | 标准 |
ECB | 加密 | NIST |
CBC | 加密 | NIST |
OFB | 加密 | NIST |
CFB | 加密 | NIST |
CTR | 加密 | NIST |
F8 | 加密 | 3GPP |
CMAC | 认证 | NIST |
OMAC | 认证 | |
F9 | 认证 | 3GPP |
CCM | 认证加密 | NIST |
GCM | 认证加密 | NIST |
OCB | 认证加密 | ISO-IEC |
EAX | 认证加密 | |
XTS | 磁盘加密 | NIST |
LRW | 磁盘加密 | |
KeyWrap | 密钥保护 | NIST |
LibTomCrypt中实现的模式有以下这些:
- modes文件夹内
- cbc
- cfb
- ctr
- ecb
- f8
- lrw
- ofb
- xts
- encauth文件夹内
- ccm
- eax
- gcm
- ocb
- mac文件夹内
- f9
- hmac
- omac
- pelican
- pmac
- xcbc
参考文献
- IEEE P1619, http://en.wikipedia.org/wiki/IEEE_P1619
- NIST, http://csrc.nist.gov
- IEEE, IEEE SA - The IEEE Standards Association - Home
- 分组密码工作模式, http://en.wikipedia.org/wiki/Cipher_mode
- 磁盘加密理论, http://en.wikipedia.org/wiki/Disk_encryption_theory
- 磁盘加密, http://en.wikipedia.org/wiki/Disk_encryption
- MAC, http://en.wikipedia.org/wiki/Message_authentication_code
- 加密认证模式, http://en.wikipedia.org/wiki/Authenticated_encryption
- 单向压缩函数, http://en.wikipedia.org/wiki/One-way_compression_function
这篇关于密码库LibTomCrypt学习记录——(2.1)分组密码算法的工作模式——概况的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!