为啥我用Base64加密后,不能将它解密?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥我用Base64加密后,不能将它解密?相关的知识,希望对你有一定的参考价值。

我是在网页上加密的

base64编码,不能算加密码,因为没有密钥。就是说谁都可以解码。
至于你说的不能解码,只能猜测是你的解码算法不正确。
百度百科上有关于base64的详细解释,应该对你有帮助。
参考技术A 前端使用js: pwd = new Base64.encode(pwd);
后端使用java, new Base64().decodeBase64(pwd.getBytes()).toString();
java的Base64()有提供decode和decodeBase64()这俩种方法,我习惯的以为是decode(),结果却是后者.
希望对你有帮助.

md5为啥不能解密?

MD5加密原理是散列算法,散列算法也称哈希算法。
计算机专业学的数据结构就有哈希表这一知识点。
比如10除以3余数为一,4除以3余数也为一,但余数为一的就不知道这个数是哪个了。
所以md5不能解密。
就算是设计这个加密算法的人都不知道。
但是你的密码是怎么验证的呢?就是因为同一密码加密后一定相同。
你输入密码加密后才能知道你的密码是否正确。
也就是说,你的密码只有你自己知道。
也是为什么扣扣密码只能重置,不能找回的原因。
over
参考技术A MD5的全称是Message-digest Algorithm 5(信息-摘要算法),用于确保信息传输完整一致。在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc,的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。不管是MD2、MD4还是MD5,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要。虽然这些算法的结构或多或少有些相似,但MD2的设计与MD4和MD5完全不同,那是因为MD2是为8位机器做过设计优化的,而MD4和MD5却是面向32位的电脑。这三个算法的描述和c语言源代码在Internet RFC 1321中有详细的描述(),这是一份最权威的文档,由Ronald L. Rivest在1992年8月向IETF提交。 MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。 所以现在会把一些软件用MD5加密后,你下载下再用MD5工具查看,如果与提供的MD5编码相同就是原来的,如果不同就是此文件已被修改过~~
~

以上是关于为啥我用Base64加密后,不能将它解密?的主要内容,如果未能解决你的问题,请参考以下文章

base64编码加密解密程序,输出有乱码,为啥?

Base64加密

BASE64Encoder,BASE64Decoder加密后再解密不成功

md5为啥不能解密?

文件加密后不能解密

前端加密后端解密之Base64通用加密处理