当前位置:网站首页>MD5加密
MD5加密
2022-07-02 12:05:00 【杀手不太冷!】
MD5加密
基本概念信息
**首先什么叫做加密?**加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知道解密的方法,仍然无法了解信息的内容。
**对称加密?**对称加密的加密和解密用的是同一个密钥。
**非对称加密?**非对称加密的加密和解密用的是不同的密钥。凯琳现在想把一段数据传递给鲍勃,但是如果凯琳在网上使用明文传输,她担心她的这段信息会被别人获取到,所以怎么办呢?凯琳可以先得到鲍勃的公钥,然后使用鲍勃的公钥对明文进行一次加密,加密成密文,最后鲍勃获取到密文的时候,再使用自己的私钥解密,这样就可以了。
摘要算法?摘要算法也称为哈希算法,散列算法,可以将任意长度的数据转换成一个定长的,不可逆的数字。什么叫做定长呢?就是你的数据不管是多长,最后转化为摘要之后都是定长;什么叫做不可逆的数字?摘要算法不像对称算法和非对称算法,因为他们加密之后都是可以被解密的,但是摘要算法加密之后是不能够通过解密获取原文的,它的加密是不可逆的。
只要原文不同,计算的结果必然不同(几乎不用考虑重复的情况)。摘要算法用于对比信息源是否一致,因为只要数据源发生变化,得到的摘要信息必然不同,通常用于签名校验。
消息摘要算法的特点:
- 无论输入的消息有多长,计算出来的消息摘要的长度总是固定的。
- 消息摘要不是真正的随机,因为用相同的消息求两次摘要,其结果必然相同。
- 消息摘要函数是无陷门的单向函数,即只能进行正向的信息摘要,而无法从摘要中恢复出任何的消息,甚至根本就找不到与原信息相关的信息。
常见的摘要算法有:MD5,SHA-1,MAC,CRC等。
广泛应用于校验数据的完整性和敏感信息的传输和保存。
MD5算法:MD5信息摘要算法,一种广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值,用于确保信息传输完整一致。2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥认证或是数字签名等用途。
**什么叫做碰撞?**我们使用MD5加密的密文是无法被还原回来的,但是如果我们有一个保存常见密码和MD5密文映射关系的加密库,那么我们就可以通过对照密文,进而知道对应的原文是什么。
基本应用
**md5-min.js和md5.js的区别?**md5.js是格式良好的js,是给开发人员开的;md5-min.js是压缩版的js,是给浏览器看的。
md5前端加密如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="./md5.js"></script>
<script type="text/javascript"> /** * md5加密之后 admin => 21232f297a57a5a743894a0e4a801fc3 * */ console.log("md5 => "+hex_md5("admin")); /** * 加盐(MD5没有办法通过算法进行解密,但是可以被暴力破解【彩虹表】,不够安全,彩虹表其实就是一个明文与密文 * 映射的数据库表) * 盐就是一个特定的字符串(自己指定)的,用来和加密后的内容进行混合,混合后的内容再次进行md5加密,数据就更安全 * 比如: * admin salt => 0x3d1eaaa * 让文本和salt进行混合(随意) * admin0x3d1eaaa * 然后对混合后的文本进行md5加密操作,这样就算我们的密文被破解了出来,但是它也不知道我们的明文是什么 * */ </script>
</head>
<body class="index">
我是body
</body>
</html>
边栏推荐
- Map introduction
- 12_ Redis_ Bitmap_ command
- 07_ Hash
- Solution of Queen n problem
- Kibana basic operation
- FPGA - clock-03-clock management module (CMT) of internal structure of 7 Series FPGA
- Guangzhou Emergency Management Bureau issued a high temperature and high humidity chemical safety reminder in July
- 18_Redis_Redis主从复制&&集群搭建
- TiDB数据迁移场景综述
- . Solution to the problem of Chinese garbled code when net core reads files
猜你喜欢
Storage read-write speed and network measurement based on rz/g2l | ok-g2ld-c development board
XML配置文件
Solution of Queen n problem
Base64 coding can be understood this way
数据分析思维分析方法和业务知识——业务指标
Practice of compiling principle course -- implementing an interpreter or compiler of elementary function operation language
04_ Stack
The past and present lives of visual page building tools
Set set you don't know
21_Redis_浅析Redis缓存穿透和雪崩
随机推荐
Storage read-write speed and network measurement based on rz/g2l | ok-g2ld-c development board
数据分析常见的英文缩写(一)
05_队列
FPGA - 7系列 FPGA内部结构之Clocking -03- 时钟管理模块(CMT)
Force deduction solution summarizes the lucky numbers in 1380 matrix
Tidb data migration scenario overview
04_ 栈
13_ Redis_ affair
How does the computer set up speakers to play microphone sound
[C language] explain the initial and advanced levels of the pointer and points for attention (1)
14_Redis_乐观锁
LeetCode刷题——两整数之和#371#Medium
Markdown tutorial
LeetCode刷题——统计各位数字都不同的数字个数#357#Medium
Yolo format data set processing (XML to txt)
Apprendre le Code de la méthode de conversion du calendrier lunaire grégorien en utilisant PHP
08_ 串
如何对 TiDB 进行 TPC-C 测试
FPGA - clock-03-clock management module (CMT) of internal structure of 7 Series FPGA
Kibana basic operation