百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

加密标准中DES与AES到底是什么?两者有啥区别?

liuian 2024-12-02 22:18 28 浏览

我们生活在一个信息爆炸的时代,各类隐私数据的保护成了现代信息技术中最为重要的技术之一。加密就是保护数据最直接也是应用最为广泛的方法。

加密是将一种形式的信息(通常是人类可读的)转换为另一种形式(通常不是人类可读的)的过程。它以数学为基础,并利用称为密钥的外部信息来执行此转换。加密有些是基于硬件的,例如指纹和视网膜扫描仪,有些是基于软件的,例如用户 ID 和密码,其中最重要的就是DES和AES,下面我们来分别认识一下这两种加密方法。

一、什么是DES?

DES 是一种对称分组密码(共享密钥),密钥长度为 56 位,于 1977 年作为美国联邦信息处理标准 (FIPS) 46 标准发布,后来被美国国家标准与技术研究院 (NIST) 采用。

DES对密码学的进步产生了很大的影响,但是,由于 56 位的短密钥长度,所以对应用程序不安全。1999 年,distributed.net在 22 小时 15 分钟内破解了一个 DES 密钥,在这事件发生后,NIST 撤回了该算法作为标准。

DES 在加密期间将纯文本消息分组为 64 位块,使用置换和替换将块与密钥一起编码为 64 位密文,该过程需要 16 个步骤,可以在四种不同的模式下运行,要么单独加密块,要么使每个密码块依赖于所有先前的块,DES解密过程是其加密步骤的逆过程,颠倒了应用密钥的顺序。

二、什么是AES?

AES 数据加密是一种在数学上更高效、更优雅的加密算法,由美国国家标准与技术研究院于 2001 年推出。作为高级加密标准,AES提供三种密钥长度,分别是128 位、192 位和 256 位,密钥长度越高,破解系统或破解系统所需的时间就越多。因此,AES 被认为比 DES 算法更好。

AES 在通过计算机网络传输数据时被广泛使用,特别是在无线网络中,AES 使用 128 位明文和 128 位密钥来创建 128 位块,然后对其进行处理以生成 16 字节(128 位)密文。

高级加密标准的加密过程是基于迭代方式的替换和置换操作,16 字节的数据以四列四行的矩阵排列,在这个矩阵上,AES 执行几轮替换置换操作。

这些轮次中的每一轮都使用不同的密码密钥,该密钥是根据原始 AES 密钥计算得出的,操作的轮数取决于密钥的大小,方式如下:

  • 128 位密钥,10 轮
  • 192 位密钥,12 轮
  • 256 位密钥,14 轮

三、DES与AES区别

3.1 创建时间

  • DES:1976 年
  • AES:1999 年

3.2 标准化时间

  • DES:1977 年
  • AES:2001 年

3.3 设计者

  • DES:由IBM 设计
  • AES:由Vincent Rijmen和Joan Daeman 设计

3.4 密钥长度

  • DES:56 位
  • AES:128、192 和 256 位

3.5 块大小

  • DES:64 位
  • AES:块大小可以是 128、192 或 256 位,取决于密钥长度

3.6 加密过程

  • DES: 16 轮
  • AES:在 128、192 和 256 位的情况下,加密过程分别涉及 10、12 和 14 轮

总结

DES和AES是比较常见的加密标准,本文主要介绍了什么是DES?什么是AES?以及DES和AES的区别,希望对您有所帮助,有任何问题,欢迎在下方评论区与我讨论。

相关推荐

GANs为何引爆机器学习?这篇基于TensorFlow的实例教程为你解惑!

「机器人圈导览」:生成对抗网络无疑是机器学习领域近三年来最火爆的研究领域,相关论文层出不求,各种领域的应用层出不穷。那么,GAN到底如何实践?本文编译自Medium,该文作者以一朵玫瑰花为例,详细阐...

高丽大学等机构联合发布StarGAN:可自定义表情和面部特征

原文来源:arXiv、GitHub作者:YunjeyChoi、MinjeChoi、MunyoungKim、Jung-WooHa、SungKim、JaegulChoo「雷克世界」编译:嗯~...

TensorFlow和PyTorch相继发布最新版,有何变化

原文来源:GitHub「机器人圈」编译:嗯~阿童木呀、多啦A亮Tensorflow主要特征和改进在Tensorflow库中添加封装评估量。所添加的评估量列表如下:1.深度神经网络分类器(DNNCl...

「2022 年」崔庆才 Python3 爬虫教程 - 深度学习识别滑动验证码缺口

上一节我们使用OpenCV识别了图形验证码躯壳欧。这时候就有朋友可能会说了,现在深度学习不是对图像识别很准吗?那深度学习可以用在识别滑动验证码缺口位置吗?当然也是可以的,本节我们就来了解下使用深度...

20K star!搞定 LLM 微调的开源利器

LLM(大语言模型)微调一直都是老大难问题,不仅因为微调需要大量的计算资源,而且微调的方法也很多,要去尝试每种方法的效果,需要安装大量的第三方库和依赖,甚至要接入一些框架,可能在还没开始微调就已经因为...

大模型DeepSeek本地部署后如何进行自定义调整?

1.理解模型架构a)查看深度求索官方文档或提供的源代码文件,了解模型的结构、输入输出格式以及支持的功能。模型是否为预训练权重?如果是,可以在预训练的基础上进行微调(Fine-tuning)。是否需要...

因配置不当,约5000个AI模型与数据集在公网暴露

除了可访问机器学习模型外,暴露的数据还可能包括训练数据集、超参数,甚至是用于构建模型的原始数据。前情回顾·人工智能安全动态向ChatGPT植入恶意“长期记忆”,持续窃取用户输入数据多模态大语言模型的致...

基于pytorch的深度学习人员重识别

基于pytorch的深度学习人员重识别Torchreid是一个库。基于pytorch的深度学习人员重识别。特点:支持多GPU训练支持图像的人员重识别与视频的人员重识别端到端的训练与评估简单的re...

DeepSeek本地部署:轻松训练你的AI模型

引言:为什么选择本地部署?在AI技术飞速发展的今天,越来越多的企业和个人希望将AI技术应用于实际场景中。然而,对于一些对数据隐私和计算资源有特殊需求的用户来说,云端部署可能并不是最佳选择。此时,本地部...

谷歌今天又开源了,这次是Sketch-RNN

前不久,谷歌公布了一项最新技术,可以教机器画画。今天,谷歌开源了代码。在我们研究其代码之前,首先先按要求设置Magenta环境。(https://github.com/tensorflow/magen...

Tensorflow 使用预训练模型训练的完整流程

前面已经介绍了深度学习框架Tensorflow的图像的标注和训练数据的准备工作,本文介绍一下使用预训练模型完成训练并导出训练的模型。1.选择预训练模型1.1下载预训练模型首先需要在Tensorf...

30天大模型调优学习计划(30分钟训练大模型)

30天大模型调优学习计划,结合Unsloth和Lora进行大模型微调,掌握大模型基础知识和调优方法,熟练应用。第1周:基础入门目标:了解大模型基础并熟悉Unsloth等工具的基本使用。Day1:大模...

python爬取喜马拉雅音频,json参数解析

一.抓包分析json,获取加密方式1.抓包获取音频界面f12打开抓包工具,播放一个(非vip)视频,点击“媒体”单击打开可以复制URL,发现就是我们要的音频。复制“CKwRIJEEXn-cABa0Tg...

五、JSONPath使用(Python)(json数据python)

1.安装方法pipinstalljsonpath2.jsonpath与Xpath下面表格是jsonpath语法与Xpath的完整概述和比较。Xpathjsonpath概述/$根节点.@当前节点...

Python网络爬虫的时候json=就是让你少写个json.dumps()

大家好,我是皮皮。一、前言前几天在Python白银交流群【空翼】问了一个Python网络爬虫的问题,提问截图如下:登录请求地址是这个:二、实现过程这里【甯同学】给了一个提示,如下所示:估计很多小伙伴和...