当前位置: 主页 > JAVA语言

java md5 16位加密-md5加密方式不可逆,算法可逆(中的)

发布时间:2023-06-19 16:02   浏览次数:次   作者:佚名

md5加密方式

md5加密方式是属于sql中的,md5加密方式不可逆,算法可逆

加密方式不可逆:就是说在使用md5给一些值进行加密的时候,它的加密方式是固定的,所以是加密方式不可逆,因为不可更改

举例:update 表名 set 字段名 = md5(值) where 字段id = 值

md5()的加密方式无法更改,加密方式不可逆

算法可逆:在md5中,就比如说我给两个值都用md5去加密了,但是这两个被加密的值都是一样的,在加密结束后,就会发现这两个值哪怕被加密了,加密后得到的值也是一样的,这是因为算法可逆java md5 16位加密,就是说算法都是固定的,我们可以根据这个固定的算法去得到一些值

举例:

Insert into 表名 values(0,md5(‘123’))

Insert into 表名 values(0,md5(‘123’))

在他们这两个语法都运行结束后,就会发现得到的值都是一样的

1 202cb962ac59075b964b07152d234b70

2 202cb962ac59075b964b07152d234b70

我从数据库中粘贴过来的,可以看到两行字段是一样的,而且要注意,一般加密都是给varchar字段类型的字段用的,而不是去给int,float或者date类型的字段去用的,所以这边要注意,有的时候如果去用也会报一些常见的sql语句错,例如

Data truncated for column 字段名at row 1

第一列中,数据截断在字段(字段名)中

Incorrect datetime value: '16a4900e72f585835f69abf0631eea5c' for column 'date' at row 1

在第一行中,有错误的时间类型某某值在字段名date中

为什么说算法可逆,加密方式不可逆,算法好像也没区别吧,为什么这么说,算法我们可以人力物力去给他一个个计算出来,自己去破解,所以是可以逆的,而加密方式则是固定的语法,我们没法去更改他吗java md5 16位加密,所以是不可逆的

以上纯属个人观点,如有补充,可以在评论区补充一下,谢谢各位