密码库LibTomCrypt学习记录——(2.1)分组密码算法的工作模式——概况

本文主要是介绍密码库LibTomCrypt学习记录——(2.1)分组密码算法的工作模式——概况,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

密码算法的工作模式就是怎样使用密码算法来达到一定的目的,比如怎样加密一个文件。工作模式有很多种,仅用于加密的,用来构造HASH函数的,仅用于生成消息验证码的,用于伪随机数生成的,既能加密又能同时生成验证码的,专门针对磁盘加密的……

很多工作模式都已经被标准化了,这其中影响最广的应该算是NIST了,其他相关标准化组织有ISO/IEC、IEEE、ANSI、 IETF……以下列举其中一部分。

  1. NIST 800-38系列
    1. ECB
    2. CBC
    3. OFB
    4. CFB
    5. CTR
    6. CMAC
    7. CCM
    8. GCM
    9. XTS
    10. KeyWrap
  2. ISO-IEC 19772
    1. OCB2.0
    2. KeyWrap
    3. CCM
    4. EAX
    5. Encrypt-then-MAC
    6. GCM
  1. IEEE P1619系列
  1. CCM
  2. GCM
  3. CBC
  4. XTS
  5. XCB
  6. EME2
  1. ISO/IEC 9797 Message Authentication Codes (MACs)
    1. 缺文档,详情未知
  2. ISO/IEC 10118 Hash-functions
    1. 缺文档,详情未知
  3. ISO/IEC 11770 Key management
    1. 缺文档,详情未知
  4. ISO/IEC 18033 Encryption algorithms
    1. 缺文档,详情未知
  5. 其他

常见的工作模式如下:

模式

用途

标准

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中实现的模式有以下这些:

  1. modes文件夹内
    1. cbc
    2. cfb
    3. ctr
    4. ecb
    5. f8
    6. lrw
    7. ofb
    8. xts
  2. encauth文件夹内
    1. ccm
    2. eax
    3. gcm
    4. ocb
  3. mac文件夹内
    1. f9
    2. hmac
    3. omac
    4. pelican
    5. pmac
    6. xcbc

参考文献

  1. IEEE P1619, http://en.wikipedia.org/wiki/IEEE_P1619
  2. NIST, http://csrc.nist.gov
  3. IEEE, IEEE SA - The IEEE Standards Association - Home
  4. 分组密码工作模式, http://en.wikipedia.org/wiki/Cipher_mode
  5. 磁盘加密理论, http://en.wikipedia.org/wiki/Disk_encryption_theory
  6. 磁盘加密, http://en.wikipedia.org/wiki/Disk_encryption
  7. MAC, http://en.wikipedia.org/wiki/Message_authentication_code
  8. 加密认证模式, http://en.wikipedia.org/wiki/Authenticated_encryption
  9. 单向压缩函数, http://en.wikipedia.org/wiki/One-way_compression_function

这篇关于密码库LibTomCrypt学习记录——(2.1)分组密码算法的工作模式——概况的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/295212

相关文章

Java设计模式---迭代器模式(Iterator)解读

《Java设计模式---迭代器模式(Iterator)解读》:本文主要介绍Java设计模式---迭代器模式(Iterator),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录1、迭代器(Iterator)1.1、结构1.2、常用方法1.3、本质1、解耦集合与遍历逻辑2、统一

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

Java中的雪花算法Snowflake解析与实践技巧

《Java中的雪花算法Snowflake解析与实践技巧》本文解析了雪花算法的原理、Java实现及生产实践,涵盖ID结构、位运算技巧、时钟回拨处理、WorkerId分配等关键点,并探讨了百度UidGen... 目录一、雪花算法核心原理1.1 算法起源1.2 ID结构详解1.3 核心特性二、Java实现解析2.

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

在Spring Boot中集成RabbitMQ的实战记录

《在SpringBoot中集成RabbitMQ的实战记录》本文介绍SpringBoot集成RabbitMQ的步骤,涵盖配置连接、消息发送与接收,并对比两种定义Exchange与队列的方式:手动声明(... 目录前言准备工作1. 安装 RabbitMQ2. 消息发送者(Producer)配置1. 创建 Spr

SpringBoot集成LiteFlow工作流引擎的完整指南

《SpringBoot集成LiteFlow工作流引擎的完整指南》LiteFlow作为一款国产轻量级规则引擎/流程引擎,以其零学习成本、高可扩展性和极致性能成为微服务架构下的理想选择,本文将详细讲解Sp... 目录一、LiteFlow核心优势二、SpringBoot集成实战三、高级特性应用1. 异步并行执行2

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

Spring @Scheduled注解及工作原理

《Spring@Scheduled注解及工作原理》Spring的@Scheduled注解用于标记定时任务,无需额外库,需配置@EnableScheduling,设置fixedRate、fixedDe... 目录1.@Scheduled注解定义2.配置 @Scheduled2.1 开启定时任务支持2.2 创建

PostgreSQL数据库密码被遗忘时的操作步骤

《PostgreSQL数据库密码被遗忘时的操作步骤》密码遗忘是常见的用户问题,因此提供一种安全的遗忘密码找回机制是十分必要的,:本文主要介绍PostgreSQL数据库密码被遗忘时的操作步骤的相关资... 目录前言一、背景知识二、Windows环境下的解决步骤1. 找到PostgreSQL安装目录2. 修改p

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项