-
2017-05-26 18:53:09
今天遇到一个判断数据库中密码是否为base64加密的密码,百度了半天也没找到判断办法,想了一会想到个小技巧,来给大家分享。
先对字符串进行解密,在对解密后的内容进行加密。如果加密后的内容和传过来的值相同则就是加密过的。
原因:因为内容如果是加密的解密再加密就能回到原来内容。
不是加密的,解密就会出现乱码,再进行加密自然不会和以前一样。/** * 判断是否为BASE加密 * */ public static boolean ifBASE(String val) throws Exception { byte[] key= BASE.decryptBASE(val); String strs=new String(key); String result= BASE.encryptBASE(strs.getBytes()); return result.equals(val); }
更多相关内容 -
php 实现一个字符串加密解密的函数实例代码
2020-12-19 01:26:30php 实现一个字符串加密解密的函数 函数代码如下: /********************************************************************* 函数名称:encrypt 函数作用:加密解密字符串 使用方法: 加密 :encrypt('str','E','... -
判断一个字符串是否被base64加密过
2020-11-04 15:18:20public static boolean isBase64(String str) { if (Utils.isEmptyTrim(str)) { return false; } String base64Pattern = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$...public static boolean isBase64(String str) { if (Utils.isEmptyTrim(str)) { return false; } String base64Pattern = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$"; boolean matches = Pattern.matches(base64Pattern, str); if (matches) { String decodeBase64Str = Base64Utils.decodeBase64Str(str); String encodeBase64Str = Base64Utils.encodeBase64Str(decodeBase64Str); if (str.equals(encodeBase64Str)) { return true; } } return false; }
-
判断一个字符串是否被Base64加密
2021-04-23 21:37:04例如:字符串:RGFqaURhbGlfSmlud2FuQ2hpamk=首先要知道什么是Base64加密?就是Base64是怎么加密的?Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息至于Base64是怎么加密的?看一个简单的...例如:
字符串:RGFqaURhbGlfSmlud2FuQ2hpamk=
首先要知道什么是Base64加密?就是Base64是怎么加密的?
Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息
至于Base64是怎么加密的?
看一个简单的例子:
转前: s 1 3
先转成ascii:对应 115 49 51
2进制: 01110011 00110001 00110011
6个一组(4组) 011100 110011 000100 110011
然后才有后面的 011100 110011 000100 110011
然后计算机是8位8位的存数 6不够,自动就补两个高位0了
所有有了 高位补0
科学计算器输入 00011100 00110011 00000100 00110011
得到 28 51 4 51
查对下照表 c z E z
总结Base64密文有如下特点:
* 字符串只可能包含A-Z,a-z,0-9,+,/,=字符
* 字符串长度是4的倍数
* =只会出现在字符串最后,可能没有或者一个等号或者两个等号
再进一步我们可以通过代码进行判断:
正则判断
1 private staticboolean isBase64(String str) {2 String base64Pattern = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$";3 returnPattern.matches(base64Pattern, str);4 }
Java代码判断
1 private static booleanisBase64(String str) {2 if (str == null || str.trm().length() == 0) {3 return false;4 } else{5 if (str.length() % 4 != 0) {6 return false;7 }8
9 char[] strChars =str.toCharArray();10 for (charc:strChars) {11 if ((c >= ‘a‘ && c <= ‘z‘) || (c >= ‘A‘ && c <= ‘Z‘) || (c >= ‘0‘ && c <= ‘9‘)12 || c == ‘+‘ || c == ‘/‘ || c == ‘=‘) {13 continue;14 } else{15 return false;16 }17 }18 return true;19 }20 }
PHP代码判断
$s = "RGFqaURhbGlfSmlud2FuQ2hpamk=";if ($s == base64_encode(base64_decode($s))) {echo ‘yes‘;
}else{echo ‘no‘;
希望对大家理解Base64有所帮助。
原文:https://www.cnblogs.com/liuzeyu12a/p/9902769.html
-
判断一个字符串是否进行了base64加密
2021-02-27 21:03:10通过长度以及base64加密方法(从base64组成入手)/*** 判断是否进行base64加密* @param str* @return*/public static boolean checkBase64(String str){if(str.length()%4!=0){return false;}char[] charArray = str....通过长度以及base64加密方法(从base64组成入手)
/**
* 判断是否进行base64加密
* @param str
* @return
*/
public static boolean checkBase64(String str){
if(str.length()%4!=0){
return false;
}
char[] charArray = str.toCharArray();
for (int i = 0; i < charArray.length; i++) {
if(charArray[i]>='A' && charArray[i]<='Z'){
continue;
}
if(charArray[i]>='a' && charArray[i]<='z'){
continue;
}
if(charArray[i]>='0' && charArray[i]<='9'){
continue;
}
if(charArray[i]=='+' || charArray[i]=='\\' || charArray[i]=='='){
continue;
}
return false;
}
return true;
}
-
如何判断一个字符串是否经过base64加密过?
2021-02-12 22:35:37import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;.../***检验一个字符串是否是经过Base64处理过的**/pub... -
判断一个字符串是否经过了base64_encode加密
2019-09-12 08:09:11判断一个字符串是否经过了base64_encode加密 2017年08月28日 16:07:16BKCNL阅读数 3473 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。 本文链接:... -
JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)
2020-12-07 05:50:57js判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个) 文本输入时,由于数据库表字段长度限制会导致提交失败,因此想到了此方法验证。 废话不多说上代码: <html> <head> <title>js... -
编写一个Java应用程序,对字符串进行各种判断 判断两个字符串是否相同 判断字符串的前缀、后缀是否和某个...
2021-02-26 13:08:13【简答题】接口练习 1)定义一个接口员工 计算工资。 2)小时工类,实现员工接口 属性: 工作的小时,每小时工资。 方法: 1. 设置工作的小时 2. 设置每小时的工资。 3. 重写计算工资方法: 小时工没有基本工资,他的工资... -
如何判断字符串所用何种加密编码
2019-06-03 10:35:001、Base64编码是使用64个可打印ASCII字符(A-Z、a-z、0-9、+、/)将任意字节序列数据编码成ASCII字符串,另有“=”符号用作后缀用途。 2、Base32编码是使用32个可打印字符(A-Z、2-7)对任意字节数据进行编码的方案... -
PHP 将一个字符串加密并解密
2018-12-10 17:08:07/****************************************************************... 函数作用:加密解密字符串 使用方法: 加密 :encrypt('str','E','nowamagic'); 解密 :encrypt('被加密过的字符串','D','nowamagic'); 参数... -
小程序RSA加密,兼容长字符串加密
2019-01-09 14:13:50用于解决普通小程序RSA加密不行,字符串超长的情况,切兼容正常的加密,注使用不用二次base64,与wx_rsa.js使用区别就是 // encStr= encrypt_rsa.encrypt(JSON.stringify(dataValue)); // encStr = RSA.hex2b64... -
python学习:实现将字符串进行加密
2020-12-18 22:54:522加密方法为:当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;其他字符不做变化。s‘‘... -
PHP封装的字符串加密解密函数
2020-12-19 06:47:33函数作用:加密解密字符串 使用方法: 加密 :encrypt('str','E','nowamagic'); 解密 :encrypt('被加密过的字符串','D','nowamagic'); 参数说明: $string :需要加密解密的字符串 $operation:判断是加密还是解密:... -
C语言中对字符串的加密和解密
2022-01-21 21:18:36在对一个指定的字符串加密之后,利用解密函数能够对密文解密,显示明文信息,加密的方式是将字符串中每个字符加上它在字符串中的位置和一个偏移值5,以字符串“mrsoft”为例,第一个字符“m”在字符串中的位置为0,... -
PHP中判断字符串是否含有中文
2021-03-24 11:14:03测试一】* 当$str = '中文测试'; 时输出"全部是汉字";当$str = '中a文3测试'; 时输出"不全是汉字";* 应用说明:当某个地方要求用户输入的内容必须全部是中文时,这个就派上用场了。*/$str = '中文测试';if (preg_... -
LeetCode 5302. 加密解密字符串
2022-04-03 12:55:03请你设计并实现一个支持加密及解密下标从 0 0 0 开始字符串的数据结构。 字符串 加密 按下述步骤进行: 对字符串中的每个字符 c,先从 keys中找出满足 keys[i] == c的下标 i。在字符串中,用 values[i]替换字符 ... -
python加密,实现字符串加密,生成唯一固定长度字符串
2022-04-20 16:52:00应用场景: 1、cache存储,以query的参数为key,存储一天有效期的结果;...根据Scrapy的指纹生成方式,这次的指纹生成方式也是用hash的MD5对目标URL进行加密,生成固定长度的字符串,然后在数据库里面 -
【C语言编程练习】C语言进行字符串简单加密
2022-03-08 19:29:55从键盘输入一串字符,以回车作为结束,编写程序对字符串进行加密,加密方式为将各个字符变为其ASCII表后的第4个字符,例如a,加密后为e,字符串‘china’加密后为‘glmre’ 解析 采用单个字符读取函数getchar()对... -
【JAVA】如何判断输入字符是否DES加密过?
2019-11-27 18:25:25在对输入字符做DES解密时,是否可以先判断下是否加密?如何判断输入字符是否有DES加密? -
python实现字符串加密 生成唯一固定长度字符串
2020-11-24 08:02:51思路根据Scrapy的指纹生成方式,这次的指纹生成方式也是用hash的MD5对目标URL进行加密,生成固定长度的字符串,然后在数据库里面将字段设置成unique,这样的话在保证url固定长度的情况下还能够保证入库后的... -
php如何判断一个字符串是不是base64编码
2016-11-12 14:22:17因为以前的数据是没有经过base64编码的,后来由于要兼容Emoji表情和颜文字,改成base64编码后再保存。...再看这个和原字符串是不是相等。但是这个方法不能百分之准确的判定。 function checkStringIsBa -
MySQL的where条件的参数判断一个加密字符串
2020-12-15 14:51:01以上是一个加密后的字符串和一个未加密的 <p><img alt="" height="333" src="https://img-ask.csdnimg.cn/upload/1608015013744.png" width="913" /></p> 为什么用where判断那个加密后的字符串查询结果为空呀</p> -
字符串加密
2019-09-23 13:20:43程序设计思想: 定义用来加密解密字符串的类... 在Password中定义一个私有成员变量int key作为字符串加密解密的偏移量。 同时定义设置该变量值的公有函数setKey(int y)。 定义加密字符串的函数encrypt(S... -
vb 字符串加密
2019-10-04 08:31:24已知字符的ascii码可以用8位二进制数来表示,某同学想用以下加密方法进行加密:将原八位二进制码每四位进行前后交换 将得到的二进制码再转化为字符输出 即:0000 1111→1111 0000 解题思想:拿到这个题下手方向有两...
-
<em>字符串加密</em>解密(网络安全)简单的<em>字符串加密</em>解密程序,网络安全老师布置的程序,老大写的。
-
任意文档内查找<em>字符串</em>上面的命令表示,当前目录以及当前目录的所有子目录下的所有文件中查找"string"这<em>个字符串</em>。 *.*表示所有类型的文件。 /s 表示当前目录以及所有子目录 /i 表示不区分大
-
Java源码海量<em>字符串</em>的快速操作.rarJava源码海量<em>字符串</em>的快速操作.rar
-
螺旋<em>加密</em>.rar将<em>一个字符串</em>(只包含大写字母及空格)按图片所示规则进行<em>加密</em>:
-
c# <em>加密</em>和解密相关代码数据的<em>加密</em>与解密 文件的<em>加密</em>与解密 ... //定义<em>一个</em>变量,用来存储<em>加密</em>后的<em>字符串</em> for (int i