常见加密解密简单总结
随着互联网的快速发展,它已经成为了我们生活中不可或缺的一部分。与此同时,拥有一个安全的互联网环境成为了我们每个人心声。目前在公司里边所做的事情,也涉及到了加密解密这一块的东西,之前没有怎么接触过,所以这一次系统地过一下常见的加密解密都有哪些,不求深入,只求有一个大致的了解。
- 对称/非对称 加密
- 哈希加密及其破解方法
1. 对称/非对称 加密
对称密钥加密(英语:Symmetric-key algorithm)又称为对称加密、私钥加密、共享密钥加密,是密码学中的一类加密算法。这类算法在加密和解密时使用相同的密钥,或是使用两个可以简单地相互推算的密钥。实务上,这组密钥成为在两个或多个成员间的共同秘密,以便维持专属的通讯联系。与公开密钥加密相比,要求双方取得相同的密钥是对称密钥加密的主要缺点之一。
信息转换过程可以描述为:
明文 <-> 密钥 <-> 密文
常见的对称加密算法有:
DES
、3DES
、AES
、Blowfish
、IDEA
、RC5
、RC6
。
特点:加密解密效率高
,速度快
,适合进行大数据量
的加解密。
公开密钥加密(英语:public-key cryptography,又译为公开密钥加密),也称为非对称加密(asymmetric cryptography),一种密码学算法类型,在这种密码学方法中,需要一对密钥(其实这里密钥说法不好,就是“钥”),一个是私人密钥,另一个则是公开密钥。这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。因此如果公开了一对密钥中的一个,并不会危害到另外一个的秘密性质。称公开的密钥为公钥;不公开的密钥为私钥。
常见的非对称加密算法有:
RSA
、DSA
、ECC
点击查看阮一峰对RSA算法的介绍
特点:算法复杂
,加解密速度慢
,但安全性高
,一般与对称加密结合使用(对称加密对内容加密,非对称对对称所使用的密钥加密)
点击查看:对称和非对称结合使用的应用场景
2. 哈希加密及其破解方法
哈希算法的特性:
哈希(Hash)算法是一种单向密码体制,即只有加密过程,没有解密过程。
相同输入经过同一哈希函数得到相同散列值,但并非散列值相同则输入结果相同。
哈希加密算法:
哈希算法应用于加密学,将加密学领域的哈希算法称为哈希加密算法,常见的如上面提到的MD5,SHA-系列算法,每种哈希加密算法,均通过某种哈希函数进行迭代,将任意长度的消息输入,经过压缩生成“消息摘要”( MessageDigest)。
哈希加密算法的过程:
预处理(Preprocessing):消息填充、将消息分割成m个处理块、为哈希设置初始化值
哈希计算(HashComputation):将预处理完成的数据生成消息摘要,利用对应的哈希函数、相关常熟生成哈希值(即散列值、摘要信息)。
每种哈希加密算法根据初始化参数生成固定长度的摘要信息,例如SHA-256生成的摘要信息长度为128位。越长安全性越高。
常见哈希加密算法有:MD5
、SHA-1
、SHA-2
、SHA-256
、SHA-X(系列)
此外还有一种哈希加密算法的扩展算法:哈希加盐算法
我们可以通过在密码中加入一段随机字符串再进行哈希加密,这个被加的字符串称之为盐值。之所以要这样做,是为了增加加密的安全性,尽最大可能被破解。
点击查看更多:哈希加盐算法
破解哈希的常见方法:
- 暴力破解
- 字典破解(即 跑字典)
- 查表,反查表,跑彩虹表
常见加密解密简单总结相关推荐
- 常见加密解密和URL编解码
常见加密解密和URL编解码 Base64 概念: 基于64个可打印字符,用于表示二进制数据,使用的字符包括大小写拉丁字母各26个.数字10个.加号+和斜杠/,共64个字符,等号=用来作为后缀用途 2^ ...
- 史上最全总结!爬虫常见加密解密算法
文章目录 简介 JavaScript 加密解密模块 Crypto-JS Node-RSA JSEncrypt Python 加密解密库 Cryptodome & Crypto Hashlib ...
- 【Python网络爬虫】爬虫常见加密解密算法
](https://img2020.cnblogs.com/blog/2501174/202108/2501174-20210816091906408-1932195692.png) 简介# 本文总结 ...
- java 加密解密简单实现
转载自:http://www.iteye.com/topic/572581 加密算法有很多种:这里只大约列举几例: 1:消息摘要:(数字指纹):既对一个任意长度的一个数据块进行计算,产生一个唯一指纹. ...
- php在线解密mcrypt,PHP 基于 Mcrypt 的加密解密简单类
最近的一个项目项目中需要对 Cookie 加密,所以使用到了 Mcrypt 的方法进行加密解密的工作,于是我就整理成一个简单的类,以后直接简单调用类实现即可. Mcrypt 介绍 Mcrypt 是 P ...
- PB DES、3DES加密解密(简单便捷)
PB DES\3DES加密解密 通过VDN的uo_vdncore组件快速简单实现PB的DES.3DES.AES.RSA.Base64.Hex.SHA.MD5.HMac等类型的加密解密,本章我们主要讲解 ...
- ios常见加密解密方法
在其他平台中经常会计算MD5值,在ios平台中也提供了该方法,首先需要导入头文件 [cpp] view plaincopy #import <CommonCrypto/CommonDigest. ...
- RSA加密解密简单使用
为什么80%的码农都做不了架构师?>>> 业务场景很简单: 前端输入密码,经加密后传到后台,解密后使用. 第一步,生成密钥,参见http://blog.csdn.net/gen ...
- Linux C/C++ Openssl RSA Encrypt/Decrypt(加密/解密) 简单示例教程
PEM文件有以下格式 1.PEM私钥文件格式 -----BEGIN RSA PRIVATE KEY----- -----END RSA PRIVATE KEY----- 生成该密钥的Linux命令 : ...
最新文章
- 完全解读ping命令应用方法
- html5音轨字幕,(图解)如何修改mkv默认音轨和字幕
- 如何在python中显示电脑中的图片-python如何实现多个图片显示在屏幕上?
- 网页上的静止导航脚本
- 【处理手记】Configuration system failed to initialize异常的另类原因
- Android中GC的触发时机和条件
- 学习使用 Go 的反射
- input在vue中如何一次性上传多张图片_小程序图片上传,存储,获取,显示
- 藏经阁的藏,不念cang而是zang
- opencv 学习之 液晶数字识别
- SQL Server 升序和降序排列
- 计算机老师为什么不用伽卡他卡做文件服务器?
- HTML div表格排版,畅谈DIV排版和table排版的区别
- python3爬取头条比基尼图片
- 【matlab】【Datcom】气动解算软件win10报错解决办法及运行交互示例
- 在线测试手机性能软件,性能:三大跑分
- 【已解决】ThinkPad E440 Win7蓝牙无法连接
- 分辨率自动调节html,网页根据分辨率自适应
- BlazeDS简单介绍
- 算法--分治法归并排序 python
热门文章
- 一个简单的自定义多附件上传控件
- cj20n sap 报错未知列的名称_SAP,PS模块配置和操作手册
- pulseaudio之pa_simple_new()流程(十八)
- Qemu架构解析(二)
- 高通音频驱动调试(十七)
- Win10启用linux子系统(Linuxer福利)
- Go一个协程实现加法demo
- Mac解决安装pip(python2.7)失败
- Anroid camera + mediacodec
- c语言if语句教学设计,C实验教案(清华)