1、加密算法术语

假设我们将ABCD中的每个字母替换为其后的第二个字母,例如A替换为C,最终ABCD替换为CDEF.

明    文:ABCD

加密算法:字母替换

密    钥:每个字母替换为其后的第二个字母

密    文:CDEF

加    密:ABCD --> CDEF

解    密:CDEF --> ABCD

2、加密算法分类

加密算法分为对称加密算法(私钥加密)和非对称加密算法(公钥加密)

2.1、对称加密算法(私钥加密)

加密解密使用相同的密钥。

DES(Data Encryption Standard)

DES加密共有三种形式,分为DES(40-bit长度加密),DES(56-bit长度加密)以及3DES(3倍的56-bit长度加密,即168-bit长度加密)

AES(Advanced Encryption Standard)

AES加密共有三种形式,分为AES 128(128-bit长度加密),AES 192(192-bit长度加密)以及AES 256(256-bit长度加密)

2.2、非对称加密算法(公钥加密)

加密解密使用不同的密钥,加密时使用的密钥称为公钥,解密时使用的密钥称为私钥,公钥用于加密,私钥用于解密。

其基本思想是:甲将公钥发送给乙,乙用公钥加密数据后,将数据发送给甲,其他人即使截获了数据,因为没有密钥,也无法获取数据的内容。

RSA公钥加密算法的名字是发明者的人名:Rivest, Shamir and Adleman,该算法的长度位数不定,由人手工定义。

3、加密算法选择

公钥加密算法虽然相对私钥加密算法安全,但是其速度叫私钥加密算法慢。所以通常的做法是,先使用公钥加密算法安全传送私钥加密算法的密钥后,再使用私钥加密算法就行数据加密。此种做法在保证密钥安全的同时加快了数据加密的速度。

4、Hash算法

数据发送前计算出相应的Hash值,接收者收到数据后也计算Hash值,如果两者不一致,说明数据在传输过程中被篡改了。Hash算法的特征在于任何大小的数据计算出的Hash值的长度都是一样的,仅仅是根据Hash值,是无法推算出数据内容的,无法将数据内容还原。Hash多用于认证,认证对等体双方在相互认证时,只需要交换密码的Hash值即可,而无需交换密码,从而防止了密码被窃取。

MD5(Message Digest 5)

将任何数据通过计算后输出128-bit长度的Hash值。

SHA-1(Secure Hash Algorithm 1)

160-bit digest将任何数据通过计算后输出160-bit长度的Hash值。

aes加密内容不定长_浅谈加密技术相关推荐

  1. webpack版本查看_浅谈webpack技术

    今天来谈一谈基于javascript性能优化问题 为提升文件加载速度,项目需要合并JavaScript代码并且尽量少用标签 通过给

  2. servlet对java的重要性_浅谈Servlet技术中的Listener起到的作用

    Listener是在servlet2.3中加入的,主要用于对Session,request,context等进行监控. 使用Listener需要实现响应的接口.触发Listener事件的时候,tomc ...

  3. rasp 系统_浅谈RASP技术攻防之基础篇

    引言 本文就笔者研究RASP的过程进行了一些概述,技术干货略少,偏向于普及RASP技术.中间对java如何实现rasp技术进行了简单的举例,想对大家起到抛砖引玉的作用,可以让大家更好的了解一些关于we ...

  4. 《计算机辅助教学及应用实践研究》,《论文_浅谈计算机辅助教学(定稿)》

    <论文_浅谈计算机辅助教学(定稿)> (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 摘要:计算机辅助教学中要用到多媒体课件 ...

  5. python判断两个对象是否为相等使用的运算符是_Python入门_浅谈逻辑判断与运算符...

    这是关于Python的第6篇文章,主要介绍下逻辑判断与运算符. (一) 逻辑判断: 如果要实现一个复杂的功能程序,逻辑判断必不可少.逻辑判断的最基本标准:布尔类型. 布尔类型只有两个值:True和Fa ...

  6. opencv运动目标跟踪预测_浅谈多目标跟踪中的相机运动

    ©PaperWeekly 原创 · 作者|黄飘 学校|华中科技大学硕士生 研究方向|多目标跟踪 之前的文章中我介绍了 Kalman 滤波器,这个算法被广泛用于多目标跟踪任务中的行人运动模型.然而实际场 ...

  7. tcp转串口_浅谈串口转以太网技术

    浅谈串口转以太网技术 1.概述串口转以太网目前可以采用串口转以太网模块来实现,变得非常简单易用,但是在该技术中出现的一些新问题.使用误区需要引起注意.串口转以太网并不是简单传输媒介的变化,而是串口到T ...

  8. 浅谈Hybrid技术的设计与实现第二弹

    前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹--落地篇 接上文:浅谈Hybrid技术的设计与实现(阅读本文前,建议阅读这个先) ...

  9. 智能车浅谈——抗干扰技术软件篇

    文章目录 软件抗干扰技术 数字信号的抗干扰措施 数字输入信号软件抗干扰措施 数字输出信号软件抗干扰措施 数字滤波 算术平均值滤波 中值滤波 滑动平均滤波 归一化 差比和 CPU及程序的抗干扰措施 复位 ...

最新文章

  1. Centos6.9安装部署nginx服务器
  2. scala通过JDBC进行数据库操作
  3. 脚手架 mixin (混入)
  4. 命令重置_学个简单命令,一秒重置账户密码
  5. iOS 14 大改还有神秘硬件登场,苹果 WWDC20 今夜线上发布
  6. LeetCode算法题-Delete Node in a Linked List(Java实现)
  7. 目标决定人生——没有目标就失去一切!
  8. CSS3 - @keyframes
  9. 求最大公约数和最小公倍数的方法:
  10. Ubuntu11.04中文输入法的安装(IBus-pinyin
  11. Charles工具使用
  12. 微信公众号网页OAuth2.0授权登录并获取用户信息(SpringBoot实现)
  13. yolov5---detect.py注释解析
  14. 攻防世界shanghai
  15. BIOS知识枝桠——FV
  16. 机器学习基础-方差 偏差
  17. 高通 android笔记本电脑,联想将推高端安卓平板 搭载高通骁龙870处理器
  18. ffmpeg推流+NGINX(RTMP)+VLC-QT拉流(Win7)
  19. 【HTML 教程】HTML 字符编码
  20. Shell脚本中引用另一个脚本文件

热门文章

  1. 玩转Windows 7
  2. 动手动脑(继承与多态)
  3. 简单看看PageHelper的配置
  4. 使用Redis来实现LBS的应用
  5. Javascript模块化编程(一):模块的写法
  6. JFrame 简单使用
  7. opengl地球贴纹理_一文看懂材质/纹理 Material, Texture, Shading, Shader 的区别
  8. @service注解_Spring 中 @Component、@Service 等注解如何被解析的
  9. python子进程通信_python执行子进程实现进程间通信的方法
  10. 怎么添加设置微信定位服务器,微信的定位怎么添加