高级加密标准

DES、3DES加密算法(转载整理)

依然范特西╮ 提交于 2019-12-01 03:33:27
文章1: 这一篇文章要解决数据加密——数据补位的问题、DES算法的两种模式ECB和CBC问题以及更加安全的算法——3DES算法。 一、数据补位 DES数据加解密就是将数据按照8个字节一段进行DES加密或解密得到一段8个字节的密文或者明文,最后一段不足8个字节,按照需求补足8个字节(通常补00或者FF,根据实际要求不同)进行计算,之后按照顺序将计算所得的数据连在一起即可。 这里有个问题就是为什么要进行数据补位?主要原因是DES算法加解密时要求数据必须为8个字节。 二、ECB模式 DES ECB(电子密本方式)其实非常简单,就是将数据按照8个字节一段进行DES加密或解密得到一段8个字节的密文或者明文,最后一段不足8个字节,按照需求补足8个字节进行计算,之后按照顺序将计算所得的数据连在一起即可,各段数据之间互不影响。 三、CBC模式 DES CBC(密文分组链接方式)有点麻烦,它的实现机制使加密的各段数据之间有了联系。其实现的机理如下: 加密步骤如下: 1)首先将数据按照8个字节一组进行分组得到D1D2......Dn(若数据不是8的整数倍,用指定的PADDING数据补位) 2)第一组数据D1与初始化向量I异或后的结果进行DES加密得到第一组密文C1(初始化向量I为全零) 3)第二组数据D2与第一组的加密结果C1异或以后的结果进行DES加密,得到第二组密文C2 4)之后的数据以此类推

信息安全-加密:AES 加密

人走茶凉 提交于 2019-11-29 18:15:40
ylbtech-信息安全-加密:AES 加密 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在 密码学 中又称Rijndael加密法,是 美国联邦政府 采用的一种区块加密标准。这个标准用来替代原先的 DES ,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由 美国国家标准与技术研究院 (NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为 对称密钥加密 中最流行的算法之一。 1. 返回顶部 AES加密 AES加密是对称加密、分组加密;密钥长度 分为128位、192位、256位;对应的数据分组也应该分为128位 192位 256位;这三种加密的轮次是不一样的。分别是:10、12、14 加密过程: ① 由原始数据 转为 输入state(二维矩阵 对于选择128位加密,就是4×4矩阵) ② 初始变换   就是进行轮密钥加(密钥轮加在后面介绍) ③ 循环N轮的变换   其中 N-1轮变换如下:   字节代换——》行位移——》列混淆——》轮密钥加   字节代换,就是基于S盒原理进行,上面有,不多说了!   行位移:第一行不变,第二行循环左移一个字节,第三行循环左移两个字节,第四行循环左移三个字节   列混淆

对称加密与分对称加密的实现

邮差的信 提交于 2019-11-29 15:39:29
一、对称加密: 1、DES(Data Encryption Standard,即数据加密标准) 详细原理参见:https://blog.csdn.net/qq_27570955/article/details/52442092 github地址:https://github.com/tarequeh/DES.git 编译:gcc -O3 des.c run_des.c -o run_des.o 注:本项目亦可以实现3DES 2、AES(Advanced Encryption Standard,即高级加密标准,又称Rijndael加密法) 二、非对称加密: 1、RSA 详细原理参见:https://blog.csdn.net/kikajack/article/details/80703894 github地址:https://github.com/pantaloons/RSA.git 编译:gcc multiple.c -o rsa 来源: https://www.cnblogs.com/lucifer1997/p/11521098.html

1.http 协议和 https 协议的原理

心已入冬 提交于 2019-11-29 14:18:53
首先,我们得知道应用层是 OSI 七层网络模型的第七层,不同类型的网络应用有不同的通信 规则,因此应用层协议是多种多样的,比如 DNS、FTP、Telnet、SMTP、HTTP、 等协议都 是用于解决其各自的一类问题。 http 通信协议的基本原理 http 协议在远程通信场景中的应用还是挺广泛的,包括现在主流的微服务架构的通信都是基 于 http 协议。由于经常使用的关系,所以大家对 http 协议的理解还是比较深刻,我这里就直 接帮大家梳理一下 http 协议的基本原理。 一次 HTTP 请求的通信流程 我们先来思考一个问题,我们在浏览器上输入一个网址后,浏览器是如何展示目标网址的内 容的?内容是从哪里来的呢? 来通过图形把这个过程画一下 DNS: (Domain Name System)服务是和 HTTP 协议一样位于应用层的协议。它提供域名 到 IP 地址之间的解析服务, 用户通常使用主机名或域名来访问对方的计算机,而不是直接通 过 IP 地址访问。因为与 IP 地址的一组纯数字相比,用字母配合数字的表示形式来指定计算 机名更符合人类的记忆习惯。 但要让计算机去理解名称,相对而言就变得困难了。因为计算机更擅长处理一长串数字。为 了解决上述的问题,DNS 服务应运而生。DNS 协议提供通过域名查找 IP 地址,或逆向从 IP 地址反查域名的服务 HTTP 通信协议的组成

关于https和ssl/tls协议的介绍

蹲街弑〆低调 提交于 2019-11-29 03:42:33
先澄清几个术语——HTTPS、SSL、TLS 1. “HTTP”是干嘛用滴? 2. “SSL/TLS”是干嘛用滴? 3. “HTTPS”是啥意思? 再来说说 HTTP 协议的特点 1. HTTP 的版本和历史 2. HTTP 和 TCP 之间的关系 在网络分层模型中,TCP 被称为“传输层协议”,而 HTTP 被称为“应用层协议”。 3. HTTP 协议如何使用 TCP 连接? 谈谈“对称加密”和“非对称加密”的概念 1. 啥是“加密”和“解密”? 2. 啥是“对称加密”? 3. 啥是“非对称加密”? 4. 各自有啥优缺点? CA 证书的原理及用途 HTTPS 协议的需求是啥? 为什么 兼容性 可扩展性 保密性(防泄密) 完整性(防篡改) 真实性(防假冒) 性能 先澄清几个术语——HTTPS、SSL、TLS 1. “HTTP”是干嘛用滴? 首先,HTTP 是一个网络协议,是专门用来帮你传输 Web 内容滴。关于这个协议,就算你不了解,至少也听说过吧?比如你访问俺的博客的主页,浏览器地址栏会出现网址 俺加了粗体的部分就是指 HTTP 协议。大部分网站都是通过 HTTP 协议来传输 Web 页面、以及 Web 页面上包含的各种东东(图片、CSS 样式、JS 脚本)。 2. “SSL/TLS”是干嘛用滴? SSL 是洋文“Secure Sockets Layer”的缩写,中文叫做

iOS加密之AES

你说的曾经没有我的故事 提交于 2019-11-28 20:07:28
心急的童鞋直接看这里 Demo 运行之后可以去在线加密 网站 验证 AES(Advanced Encryption Standard)高级加密标准,又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES AES的五种加密模式 AES有五种加密模式(CBC、ECB、CTR、OCF、CFB) 1.电码本模式(Electronic Codebook Book (ECB) 2.密码分组链接模式(Cipher Block Chaining (CBC)) 3.计算器模式(Counter (CTR)) 4.密码反馈模式(Cipher FeedBack (CFB)) 5.输出反馈模式(Output FeedBack (OFB)) 在iOS用到的一般就是ECB和CBC两种。 ECB-电码本模式 ECB是最简单的块密码加密模式,加密前根据加密块大小(AES加密块固定为128位)分成若干块,之后将每块使用相同的密钥单独加密,所以加密块相同的明文会生成相同的密文。 CBC-密码分组链接模式 CBC模式对于每个待加密的密码块在加密前会先与前一个密码块的密文异或然后再用加密器加密。第一个明文块与一个叫初始化向量的数据块异或。 OK,最简单的理论理解了,就来看iOS最重要的干货:加解密函数 CCCrypt CCCrypt - 加解密函数 CCCryptorStatus

开始准备AWS Developer认证考试--服务器端加密保护数据S3

时光毁灭记忆、已成空白 提交于 2019-11-28 19:23:35
您有三个互斥选项,具体取决于您选择如何管理加密密钥: 使用具有 Amazon S3 托管密钥的服务器端加密 (SSE-S3) – 使用 唯一密钥 加密每个对象。作为额外的保护,它将使用 定期轮换的主密钥对密钥本身进行加密 。Amazon S3 服务器端加密使用可用的最强数据块密码之一(即 256 位高级加密标准 ( AES-256 ))来加密您的数据。有关更多信息,请参阅 使用具有 Amazon S3 托管加密密钥的服务器端加密 (SSE-S3) 保护数据 。 使用具有 AWS KMS 托管密钥的服务器端加密 (SSE-KMS) – 与 SSE-S3 类似,但使用此服务有一些额外好处以及一些额外费用。使 用信封密钥 (即, envelope key 保护数据的加密密钥的密钥)需要单独的权限,信封密钥可进一步防止未经授权地访问 Amazon S3 中的对象。SSE-KMS 还提供您的密钥的使用时间和使用者的 审核跟踪 。此外,您可以选择自己创建和管理加密密钥,或使用对您所使用的服务和您的工作区域来说具有唯一性的默认密钥。有关更多信息,请参阅 使用具有 AWS KMS 托管密钥的服务器端加密 (SSE-KMS) 保护数据 。 使用具有客户提供密钥的服务器端加密 (SSE-C) – 您管理加密密钥 ,而 Amazon S3 管理加密(在它对磁盘进行写入时)和解密(在您访问您的对象时)

HLS--M3U8解析

偶尔善良 提交于 2019-11-28 15:50:25
目录 1 简介 2 2 概述 2 3 播放列表文件 3 3.1 介绍 3 3.2新标签 4 3.2.1 EXT-X-TARGETDURATION 4 3.2.2 EXT-X-MEDIA-SEQUENCE 4 3.2.3 EXT-X-KEY 4 3.2.4 EXT-X-PROGRAM-DATE-TIME 5 3.2.5 EXT-X-ALLOW-CATCH 5 3.2.6 EXT-X-ENDLIST 5 3.2.7 EXT-X-STREAM-INF 5 3.2.8 EXT-X-DISCONTINUITY 6 3.2.9 EXT-X-VERSION 6 4 多媒体文件 7 5 密钥文件 7 5.1 介绍 7 5.2 IV FOR AES-128 7 6 客户端/服务器行为 8 6.1 介绍 8 6.2 服务器进程 8 6.2.1介绍 8 6.2.2 滑动窗口播放列表 9 6.2.3 加密媒体文件 9 6.2.4 提供变种数据流 10 6.3 客户端进程 10 6.2.1 介绍 10 6.2.2 加载播放列表文件 11 6.2.3播放播放列表文件 11 6.2.4重新载入播放列表文件 11 6.2.5 确定下一个要加载的文件 12 6.2.6 解密经加密的媒体文件 12 7 协议版本的兼容性 12 8 例子 12 8.1 简单的播放列表文件 12 8.2 滑动窗口播放列表,使用https

【Python实现AES加密】

穿精又带淫゛_ 提交于 2019-11-28 11:00:31
原文: http://blog.gqylpy.com/gqy/392 AES (Advanced Encryption Standard) 高级加密标准 ,在密码学中又被称为 Rijndael 加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的 DES ,已经被多方分析且广为全世界所使用。经过五年的甄选流程,AES由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,AES已经成为对称密钥加密中最流行的算法之一。 AES在 软件 及 硬件 上都能快速地进行加密解密,相对来说较易于实作,且只需要很少的存储器。作为一个新的加密标准,目前正在被部署应用到更广大的范围。 特点 抵抗所有已知的攻击 在多个平台上速度快,编码紧凑 设计简单 原理 AES为分组密码,分组密码就是把明文分成一组一组的,没组长度相等,每次加密一组数据,直到加密完整个明文。在AES标准规范中,分组长度只能是 128 位,也就是说,每个分组为 16 字节(每个字节8位)。密钥的长度可以使用 128 位、 192 位或 256 位。密钥的长度不同,推荐加密轮数也不同。一般常用的 128 位。 基本用法 import binascii from Cryptodome.Cipher import AES from

对称加密算法及对称加密算法

情到浓时终转凉″ 提交于 2019-11-28 05:55:23
对称加密:双方使用的同一个密钥,既可以加密又可以解密,这种加密方法称为对称加密,也称为单密钥加密。 优点: 速度快,对称性加密通常在消息发送方需要加密大量数据时使用,算法公开、计算量小、加密速度快、加密效率高。 缺点: 在数据传送前,发送方和接收方必须商定好秘钥,然后 使双方都能保存好秘钥。其次如果一方的秘钥被泄露,那么加密信息也就不安全了。另外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一秘 钥,这会使得收、发双方所拥有的钥匙数量巨大,密钥管理成为双方的负担。 在对称加密算法中常用的算法有:DES、AES等。 AES:密钥的长度可以为128、192和256位,也就是16个字节、24个字节和32个字节 DES:密钥的长度64位,8个字节。 非对称加密:一对密钥由公钥和私钥组成(可以使用很多对密钥)。私钥解密公钥加密数据,公钥解密私钥加密数据(私钥公钥可以互相加密解密)。 私钥只能由一方保管,不能外泄。公钥可以交给任何请求方。 在非对称加密算法中常用的算法有: RSA、Elgamal、背包算法、Rabin、Diffie-Hellman、ECC(椭圆曲线加密算法)。 使用最广泛的是RSA算法,Elgamal是另一种常用的非对称加密算法。 缺点: 速度较慢 优点: 安全 1.分类 加密算法首先分为两种:单向加密、双向加密。 单向加密是不可逆的,也就是只能加密,不能解密