关于md5 加密算法的困惑。

tangshuinet 2011-04-25 02:13:58
对密文A进行加密,用Key,IV,密文A 通过md5加密后,生成加密密文B。

将B放到license.txt文件中后,解密的时候,我需要key,iv及license.txt,解密后,跟密文A进行比较,如果相等那么通过,如果不等则不通过。

我的问题是:一般解密dll都是发到客户端给客户使用的,如果客户反编译我的代码,他就能知道key,iv,然后通过密文license.txt,他自己就能解密得到明文A,然后根据明文A,iv,及客户端Key(mac地址等),不就可以破译我的密码了吗?
...全文
104 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
dangong123 2011-04-25
  • 打赏
  • 举报
回复
LZ一直在说解密什么的,都说了MD5是不能解密的,比如你字段aaa用MD5加密之后为AAA,传过去,人家比较的就是他的字段用MD5加密后是不是AAA,一样的话说明加密前的字段是一样的,因为MD5加密之后的字段都是不重复的(当然现在好像有个女博士找到了个查找重复MD5代码的算法)
tangshuinet 2011-04-25
  • 打赏
  • 举报
回复
在客户端运行 不就需要在客户端解密吗? 用webserivice一旦用户不能上网或者远程服务down掉不就不能用了吗
chinadoweb 2011-04-25
  • 打赏
  • 举报
回复
解密dll为什么要给客户端,用web service解密再返回给客户端不就行了。
tangshuinet 2011-04-25
  • 打赏
  • 举报
回复
我程序处理是这样的: 程序只有一个明文,客户端要使用,需要将他的Mac地址给我,我有一个密码加密器,就是根据md5算法,将明文,客户端mac,然后自定义一个IV,生成密文,保存成license.txt发给客户端。

在程序中加载时候,读取license文件,然后读取客户端mac,然后用自定义的Iv解密,这样就能得到明文。

这样处理,是否合理?
Icedmilk 2011-04-25
  • 打赏
  • 举报
回复
比较的是md5加密后的字符
tangshuinet 2011-04-25
  • 打赏
  • 举报
回复
哪解密后 是不是要跟明文做比较?
脾气不坏 2011-04-25
  • 打赏
  • 举报
回复
恩 是的 MD5是不可逆的
但是不排除暴力破解 有一部分明文(特别是比较简单的)还是有可能破解的
如果是重要数据 建议不要单纯的只用MD5加密 可以进一步处理下
至于DLL破解 可以考虑下代码混淆 听说还是容易破解 但是总比没的强
zzyhuian06142 2011-04-25
  • 打赏
  • 举报
回复
其实你既然都用MD5来加密了,人家知道不知道你的密码又有什么关系呢,就算知道他也看不懂原文是什么啊

你这样做最多只能确定原文是否有被修改过而已
tangshuinet 2011-04-25
  • 打赏
  • 举报
回复
不知道 是否理解错误。
tangshuinet 2011-04-25
  • 打赏
  • 举报
回复
就好比是这样的,在客户端,解密后 得到字符串 string aaa = 解密字符串

if(aaa == "明文")
通过
else
不通过。

这样的话,通过反编译,不就可以得到明文? 都不用解密。
tangshuinet 2011-04-25
  • 打赏
  • 举报
回复
我的意思,我解密后,不是需要跟明文A进行比较吗?
zzyhuian06142 2011-04-25
  • 打赏
  • 举报
回复
",他自己就能解密得到明文A"这是不可能的,就目前的技术来说MD5加密是不可逆的,所以这个不是你该担心的
Icedmilk 2011-04-25
  • 打赏
  • 举报
回复
md5加密是不可逆的啊
【项目介绍】 基于python实现的渗透测试常用加解密算法源码+项目说明.zip 一些渗透测试相关的加解密方法的实现,封装成类或函数,方便编写 Burpy 脚本的时候直接调用 基于Python3实现。 例如网站登录密码加密的rsa、aes。 金融站点的sm2、sm4加解密算法。 微信小程序sessionKey泄露的加解密算法。 F5-Big-Ip cookie泄露的解密算法。 还有一些常见的例如 uuid、md5、base64、中文字符串转 `\xe7\xaf\xae\xe7\x90\x83`。 【说明】 1、项目源码在上传前,都经过本地成功运行,功能测试无误。请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、机械电子信息等相关专业背景的在校大学生、专业老师 行业从业人员等下载使用。 3、用途:项目代表性强,具有创新性和启发性,故具有挺高的学习借鉴价值。不仅适合小白入门进阶,还可作为毕设项目、课程设计、大作业、比赛初期项目立项演示等。 4、如果基础还不错,又热爱学习钻研,也可基于此项目基础上进行修改进行二次开发。 本人也是技术狂热者,如果觉得此项目对您有价值,欢迎下载使用! 无论您是运行还是二次开发,遇到问题或困惑,欢迎私信交流学习。
该系统的主要功能模块需求分析如下:·         登录和注册:登录功能主要分为用户的登录以及系统管理员的登录,用户和管理员的权限不同,用户登录后进入用户界面,管理员登录后进入后台管理页面[4]。 用户登陆的前提是已经注册。管理员不能直接在系统里注册,只能在数据库的内部进行添加。·         公交信息查询:对于一个公交查询系统,用户最主要的需求就是公交信息的查询。 比如线路的相关信息,换乘的公交信息等。·         公告模块:系统管理员登录管理员子系统后可以发布公告信息。用户能够查看管理员发布的公告。·         留言模块。留言模块其实就是与系统管理员的交流模块,用户能够提出自己的意见和问题,管理员看到用户的投诉和建议的时候也能够做到及时的反馈。·         站点线路信息维护:管理员进入后台管理页面,能够对公交线路、车次、站点进行实时更新。·         车辆管理模块:管理员进入后台管理页面,可以管理车辆。·         司机管理模块:管理员进入后台管理页面,可以管理司机。本系统讲解主要从整体的系统架构设计,系统的开发目录,系统的主要的组件的作用,系统的核模块的开发和执行流程,以及系统的核心算法:最短路径换乘算法和MD5加密算法两个方面来进行讲解,希望能对大家有所帮助。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧