Shiro信息加密及简单demo3 |
您所在的位置:网站首页 › shiro加密盐 › Shiro信息加密及简单demo3 |
Shiro加密了解及demo3演示 解锁:数据加密MD5、加salt、进行hash散列 一、了解MYSQL加密算法mysql的加密算法: 1.不可逆加密算法:password ()、md5 ()、encrypt ()、sha5 () encode(,)、decode(,):加密解密字符串。函数有两个参数:被加密或解密的字符串、作为加密或解密基础的密钥。 encode结果是一个二进制字符串,以BLOB类型存储,加密程度比较弱。 —————————————————— aes_encrypt(,)、aes_decrypt(,):加密解密字符串。函数有两个参数:被加密或解密的字符串、作为加密或解密基础的密钥。encode结果是一个二进制字符串,以BLOB类型存储。 加密完成之后可以用to_base64()转成可见字符,然后解密时候用from_base64()转回来. 二、MD5和salt简介和执行流程 2.1 MD5简单介绍MD5是哈希散列算法,对于MD5而言,有两个特性是很重要的. 第一:明文数据经过散列以后的值是定长的(就是1234经过加密之后, 他的散列之后字符串会变长); 第二:是任意一段明文数据,经过散列以后,其结果必须永远是不变的。 前者的意思是可能存在有两段明文散列以后得到相同的结果。 后者的意思是如果我们散列特定的数据,得到的结果定是相同的。 2.2 salt简单介绍在家做饭有佐料,在加密领域也有所谓的佐料,只是这是这里的佐料可不是为了味道好,而是为了保护对象的机密性。 往上面撒一些盐,可以有效的解决这个问题,即使用salt加密,它的基本想法是这样的: 1.用户注册时,在密码上撒一些盐。生成一种味道,记住味道。 2.用户再次登陆时,系统在输入的密码上撒盐,闻- -闻,判断是否和原来的味道相同,相同就让你吃饭。 由于验证密码时和最初散列密码时使用相同的盐值,所以salt的存储在数据库。并且这个值是由系统随机产生的,而非硬编码。这就保证了所要保护对象的机密性。 ❤❤❤❤❤ 以下是图解(图借鉴):
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |