对称加密算法

采用单钥密码的加密方法,同一个密钥可以同时用来加密和解密,这种加密方法称为对称加密,也称为单密钥加密。具体消息加密过程如下。常见的对称加密算法有:DES,3DES,AES,RC2,RC4, RC5。

加密算法

算法 特点
DES(Data Encryption Standard) 数据加密标准,速度较快,适用于加密大量数据的场合,目前已证实不安全,可用3DES替换
3DES(Triple DES 是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高
AES(Advanced Encryption Standard) 高级加密标准,是下一代的加密算法标准,速度快,安全级别高,支持128、192、256、512位密钥的加密。是目前最常见的对称加密算法

加密模式

加密模式(英文) 加密模式(中文) 介绍
Electronic Code Book(ECB) 电子密码本模式 最基本的加密模式,也就是通常理解的加密,相同的明文将永远加密成相同的密文,无初始向量,容易受到密码本重放攻击,一般情况下很少用
Cipher Block Chaining(CBC) 密码分组链接模式 明文被加密前要与前面的密文进行异或运算后再加密,因此只要选择不同的初始向量,相同的密文加密后会形成不同的密文,这是目前应用最广泛的模式。CBC加密后的密文是上下文相关的,但明文的错误不会传递到后续分组,但如果一个分组丢失,后面的分组将全部作废(同步错误)。
Cipher Feedback Mode(CFB) 加密反馈模式 类似于自同步序列密码,分组加密后,按8位分组将密文和明文进行移位异或后得到输出同时反馈回移位寄存器,优点最小可以按字节进行加解密,也可以是n位的,CFB也是上下文相关的,CFB模式下,明文的一个错误会影响后面的密文(错误扩散)。
Output Feedback Mode(OFB) 输出反馈模式 将分组密码作为同步序列密码运行,和CFB相似,不过OFB用的是前一个n位密文输出分组反馈回移位寄存器,OFB没有错误扩散问题。

Openssl生成对称加密

用法: openssl enc -cipher [-help] [-list] [-ciphers] [-in filename] [-out filename] [-pass arg] [-e] [-d] [-a] [-base64] [-A] [-k password] [-kfile filename] [-K key] [-iv IV] [-S salt] [-salt] [-nosalt] [-z] [-md digest] [-iter count] [-pbkdf2] [-p] [-P] [-bufsize number] [-nopad] [-debug] [-none] [-rand file…] [-writerand file] [-engine id]

参数 解释
-list /-ciphers 列举所有支持的加密算法
-in filename 指定要加密的文件存放路径
-out filename 指定加密后的文件存放路径
-salt/-S 自动插入一个随机数作为文件内容加密,默认选项
-e 对数据进行加密,默认为该选项
-d 对数据进行解密,如不指定,则使用默认的加密
-a/-base64 如果当前为加密,则在对数据使用加密算法加密之后,再对数据进行base64编码,如果当前为解密,则先对数据进行base64解码之后再对数据使用解密算法进行解密
-rand file 用来设置随机种子生成器文件

参考文档

openssl wiki
openssl cmd doc

对称加密算法基本介绍相关推荐

  1. 对称加密算法、非对称加密算法、散列函数与数字签名的介绍

    1.对称加密 对称加密算法是应用较早的加密算法,技术成熟.在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去.收信方收到密文后,若想解读 ...

  2. 对称加密算法AES之GCM模式简介及在OpenSSL中使用举例

    AES(Advanced Encryption Standard)即高级加密标准,由美国国家标准和技术协会(NIST)于2000年公布,它是一种对称加密算法.关于AES的更多介绍可以参考:https: ...

  3. 对称加密算法DES,3重DES,TDEA,Blowfish,RC5,IDEA,AES。

    对称加密算法:DES,3重DES,TDEA,Blowfish,RC5,IDEA,AES. 1.对称加密算法 1.1 定义 对称加密算法是应用较早的加密算法,技术成熟.在对称加密算法中,数据发信方将明文 ...

  4. 对称加密算法_技术分享丨这是一篇简单的小科普——什么是对称加密算法?(下)...

    大家好~我是贾正经,又到了干货满满的技术分享趴啦~ 上期我们讲解了对称加密算法的小知识,并介绍了国密算法中SM4算法的原理.(上集回顾) 本期带大家了解一下分组密码的五个模式. 分组密码的模式 首先了 ...

  5. 对称加密算法原理--OpenSSL演示、iOS代码运用及CCCrypt安全隐患

    之前介绍了非对称加密算法,这篇文章介绍一下在非对称加密算法出现之前的对称加密算法,常见的对称加密算法.终端演示OpenSSL和iOS代码运用以及CCCrypt的安全隐患等. 对称加密算法:明文通过密钥 ...

  6. 对称加密算法---加密学习笔记(三)

    基本介绍 对称加密算法是现在应用范围最广,使用频率最高的加密算法. 对称的原因: 加密密钥 = 解密密钥,加密运算是解密运算的逆运算. 对称加密算法是初等的加密算法,从安全性上说,不是很高. 常用的对 ...

  7. java aes pbe_JAVA对称加密算法PBE定义与用法实例分析

    本文实例讲述了JAVA对称加密算法PBE定义与用法.分享给大家供大家参考,具体如下: 一 AES.DES和3DES在使用上比较一致 二 PBE算法优点 三 PBE介绍 1.PBE:Password B ...

  8. java生成sm4算法的对称密钥_技术分享丨这是一篇简单的小科普——什么是对称加密算法?(下)...

    原标题:技术分享丨这是一篇简单的小科普--什么是对称加密算法?(下) 大家好~我是贾正经,又到了干货满满的技术分享趴啦~ 上期我们讲解了对称加密算法的小知识,并介绍了国密算法中SM4算法的原理. 本期 ...

  9. AES 对称加密算法

    什么是AES? 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),是一种区块加密标准.这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用. 那么 ...

  10. 对称加密算法AES联合设备IMEI码设计的加密机制

    AES算法介绍 对称加密算法 AES,密码学中的高级加密标准(Advanced Encryption Standard,AES),又称高级加密标准Rijndael加密法,是美国联邦政府采用的一种区块加 ...

最新文章

  1. DataGridView DataSource 如何实现排序
  2. Linux命令行与Shell脚本编程大全读书笔记
  3. 纯CSS打造的Family tree(族谱)
  4. 2013年蓝桥杯模拟赛答案
  5. 上汽集团减发员工绩效工资75% 时效长度3到6个月
  6. java处理xls_Java处理Excel文件
  7. 【医疗影像处理】使用前景像素的均值和方差(mean,std)对图像进行归一化(背景像素为0)【numpy-code】
  8. java流程控制图_Java流程控制结构
  9. 应用程序无法启动,因为应用程序的并行配置不正确 解决方案
  10. ABB控制器800模块AC800F/PM802F
  11. 46泰勒中值定理的常规证明
  12. 【javafx】如何java查询12306火车票剩余数量
  13. tcpdump提取源IP
  14. Celestial Altium Library
  15. matlab中的矩阵与向量运算
  16. PrimeTime基础命令:get_pins
  17. CSS让一个图片显示在另一个图片上面
  18. win7系统提示计算机内存不足,Win7系统下提示内存不足的原因及解决方法
  19. 密歇根安娜堡大学计算机专业硕士,2020年密歇根大学安娜堡分校硕士专业设置...
  20. error: ...\Windows Kits\8.1\Include\um\combaseapi.h IUnknown is undefined 问题

热门文章

  1. DeepLog:基于系统日志使用深度学习方法做异常检测和诊断
  2. 必备!Mac上的硬盘测速专家Blackmagic Disk Speed Test
  3. 第三方易支付系统源码
  4. python 声音强度检测_python – 从声音文件中检测频率
  5. 计算机组装与维护日记,计算机毕业生实习日志
  6. 【模型5.0】幸福sharp模型:让优势带动劣势
  7. 89600 matlab,使用Matlab分析频谱仪I/Q数据
  8. Python星盘接口、排盘、占星、API功能描述
  9. Linux 查看日志命令
  10. 学习笔记——矩阵键盘的扫描原理与基本应用