找回密码
 立即注册
注册 登录
×
热搜: 活动 交友 discuz
查看: 120|回复: 7

听说MD5可以解密?这就是你用加密的理由?

[复制链接]

2

主题

4

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2022-11-27 14:53:34 | 显示全部楼层 |阅读模式
前几天公司有个需求,需要前端对于传输的数据进行加密,之后到后端进行解密,当时第一考虑到了MD5,但是因为在我的印象里面,MD5貌似无法解密,还问了我们后端MD5可以解密码他说可以,网上有代码可以解密,于是我就使用MD5进行加密。
大概过程就是
1.引入MD5.js
2.使用里面的MD5进行加密
之后又和后端联调一下,注意 坑的就是这里,我们测试的时候加密的太简单,一般就是123456 或者456321 这样的东西,之后我们还很高兴,当时我还因为感觉不是很安全,我又改了一下,因为我以前用的nodeJS 当时加密的时候总喜欢这么写:
var crypto = require('crypto');  引入加密的模块
加密
var md5 = crypto.createHash('md5');
var password = md5.update(req.body.password).digest('base64');

于是机智的我就在前段在MD5加密之前,又用base64加密了一下,结果悲剧了!!!
TMD 后端解密不出来,开始因为时间比较紧以为是base64加密有位置,就把代码注视了,直接使用MD5,没想原因,先把base64加密撤了,赶紧走一遍,但是悲剧重现了,还是解密不出来 。。。 这就要命了,回头查原因,结果我们都斯巴达了 。。。
重点来了:原来我们做的一直都是闹着玩呢 。。。,都是在骗自己
MD5加密原理是散列算法,散列算法也称哈希算法。
计算机专业学的数据结构就有哈希表这一知识点。
比如10除以3余数为一,7除以3余数也为一,但余数为一的就不知道这个数是哪个了。
所以md5不能解密。
就算是设计这个加密算法的人都不知道。
这也就是为什么很多地方密码只能重置,不能修改的原因了
之前能够顺利解密,是因为我们加密的东西太简单,你把密码弄成无规则带有英文字母,都不用说特殊字符了,你解密一下看看   。 。 。
瞬间懵逼 ~~~
好吧,那么问题又来了,为什么有那么多网站还能解密MD5呢?
我专门查了几个网站,做的真的不错地址给大家可以看下,这个是免费的,收费的一搜一大堆

他们这是怎么回事呢?
其实 他们都是暴力破解的,,因为MD5的加密让人很无语,所以现在大部分站点破解都是暴力破解,一旦东西复杂而且字符不短,那就over了,要么时间太长,要不根本就破解不了
OK,言归正传,经过这次,我得到了经验,以后关于一些传递信息,如果需要加密传输的,别上来就直接加密,不管你用什么方式,首先考虑的是有没有什么方式避免这种将安全数据在外网传输,给大家举个例子
我要一个请求,这个请求需要将用户所有信息传入后端,之后后端拿这些信息,进行业务流程,就像有需要权限使用的地方,很多人地方会把账号、权限等级等一些东西发送过去,后端直接拿着进行判定操作,数据返回,但是真的必须要这样吗???这样我肯定要加密传输不说,而且只要是需要解密的我们能解密,那么别人也可以解密啊。
换种思考方式,为什么要传账号呢,我在登陆的时候就记录下用户ID,我直接发送用户ID不就可以了吗,之后后端那么用户ID进行调用,这也是一样的啊,虽然后台多走了一步,但是五款是安全还是操作方式都会方便很多,再说你在浏览器获取用户id总比获取用户信息要好吧

最后致敬伟大的后端
回复

使用道具 举报

0

主题

6

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2022-11-27 14:54:15 | 显示全部楼层
小白
回复

使用道具 举报

0

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2022-11-27 14:54:48 | 显示全部楼层
楼主,md5是hash算法的一种,hash是不可逆的,何来解密一说呢?
回复

使用道具 举报

1

主题

3

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2022-11-27 14:55:28 | 显示全部楼层
回复

使用道具 举报

0

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2022-11-27 14:56:00 | 显示全部楼层
人家不是说了,暴力破解?
回复

使用道具 举报

0

主题

4

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2022-11-27 14:56:27 | 显示全部楼层
可以考虑密码加盐了
回复

使用道具 举报

1

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2022-11-27 14:57:08 | 显示全部楼层
“设计这个加密算法的人都不知道“ ,开玩笑呢吧,md5算法是摘要算法,本来就是不可逆的,目前所谓的破解实际只是将很多加密集存起来,破解时做撞库,因此在使用摘要算法时要“加盐”这样大部分网络加密结果集都失效了。
回复

使用道具 举报

0

主题

5

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2022-11-27 14:57:23 | 显示全部楼层
加盐啥意思,怎么理解?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋| 黑客通

GMT+8, 2025-4-7 07:37 , Processed in 0.097922 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2020, LianLian.

快速回复 返回顶部 返回列表