当前位置: 首页 > news >正文

专业网站建设品牌策划网络销售哪个平台最好

专业网站建设品牌策划,网络销售哪个平台最好,空间租用 网站开发,php怎么做视频网站文章目录1. 前言2. 密码加密1. 前言 本文 主要实现 对密码进行加密 ,因为 使用 md5 容易被穷举 (彩虹表) 而破解 ,使用 spring security 框架又太大了 (杀鸡用牛刀) 。   所以本文 就自己实现一个密码加密 . 2. 密码加密 这里我们通过 加盐是方式 来 对…

文章目录

  • 1. 前言
  • 2. 密码加密

1. 前言

本文 主要实现 对密码进行加密 ,因为 使用 md5 容易被穷举 (彩虹表) 而破解 ,使用 spring security 框架又太大了 (杀鸡用牛刀) 。

所以本文 就自己实现一个密码加密 .

2. 密码加密

这里我们通过 加盐是方式 来 对密码进行加密 .

加盐 通常分为两部分 :

  1. 盐值 : 通常使用随机数
  2. 加密数据


将盐值与加密数据合在一起 就是 加盐数据了 , 加盐数据通常来说是安全的


这里我们 盐值 是 随机的 每次加盐的数字都是不同的,这里通过穷举 来 破解我们的数据 假设破解 一条数据 花费的时间 1 天 , 我们 有 1 千w 个数据, 一个数据

是一天 , 那么 1 千 w 个数 , 全部破解 时间是非常多的 .


这里成本大于利益 , 那么谁去破解呢 , 所以这样做 我们的密码 就是安全的 .


知道加盐 , 下面就来自己实现一个加盐的方法

  1. 加密 : 随机盐 + $ + 最终加密密码
  2. 解密 : 先通过 $ 进行分割 , 得到随机盐 + 最终密码 ,然后通过 md5 对 新输入的密码 与 得到的随机盐 进行加密 , 将得到的 新的加密密码 和 之前分割得到的 最终密码 进行对比 如果 相等 那么 就是相同的密码 返回 true,如果不相等 就是不同的密码 返回 false


代码实现 :

这里我采用 的 是 使用 hutool 中的 MD5 进行 加密 的 所以需要引入 依赖

  <!--        添加 hutool --><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.12</version></dependency>


创建一个 PasswordUtil , 在这个类里面完成我们的加密和 解密 .

package com.example.usermanager.tools;import cn.hutool.core.util.IdUtil;
import cn.hutool.crypto.SecureUtil;
import org.springframework.util.StringUtils;import java.util.UUID;/*** 密码工具类* 1. 加密 (加盐)* 2. 解密*/public class PasswordUtil {/*** 加密 (加盐)** @param password* @return*///         生成的 UUID 带有 - : UUID.randomUUID();public static String encrypt(String password) {// 生成 uuid 不加 - 的 .// 随机盐值String salt = IdUtil.simpleUUID();// 密码 (随机盐值 + 密码)String finalPassword = SecureUtil.md5(salt + password);return salt + "$" + finalPassword;}/*** 解密** @param password 要验证的密码 (未加密)* @return 数据库中的加了盐值的密码*/public static boolean decrypt(String password, String securePassword) {boolean result = false;if (StringUtils.hasLength(password) && StringUtils.hasLength(securePassword)) {if (securePassword.length() == 65 && securePassword.contains("$")) {// 注意 : $ 是特殊字符 使用 split 需要转义String[] securePasswordArr = securePassword.split("\\$");// 盐值String salt = securePasswordArr[0];// 根据盐值加密的密码String finalPassword = securePasswordArr[1];// 使用同样的加密算法 和 随机盐值生成最终的加密的密码password = SecureUtil.md5(salt + password);// 进行对比if (finalPassword.equals(password)) {result = true;}}}return result;}public static void main(String[] args) {String password = "123456";String dbPassword = PasswordUtil.encrypt(password);System.out.println("加密密码 " + dbPassword);boolean result = PasswordUtil.decrypt("123456",dbPassword);String password2 = "123456789";boolean result2 = PasswordUtil.decrypt(password2,dbPassword);System.out.println(result);System.out.println(result2);}
}


效果 :

在这里插入图片描述

扩展 : 这里我们可以 对 加密密码 进行一个对称加密 ,对称加密后得到一个 32 位 数据 , 我们的程序可以通过 公钥 对 32 数据 还原 ,然后再通过我们写的 decrypt 进行 解密 .


这里主要是一个小功能, 可以将这个加密 放在我们的项目中 .


文章转载自:
http://scintigram.nrpp.cn
http://ormuzd.nrpp.cn
http://dysmelia.nrpp.cn
http://worthy.nrpp.cn
http://pattie.nrpp.cn
http://stevedore.nrpp.cn
http://chiefly.nrpp.cn
http://jolt.nrpp.cn
http://club.nrpp.cn
http://ataxia.nrpp.cn
http://psylla.nrpp.cn
http://neuropathy.nrpp.cn
http://bifoliate.nrpp.cn
http://spathiform.nrpp.cn
http://vaccinate.nrpp.cn
http://phrenology.nrpp.cn
http://afield.nrpp.cn
http://emancipate.nrpp.cn
http://annihilability.nrpp.cn
http://phreak.nrpp.cn
http://assab.nrpp.cn
http://withamite.nrpp.cn
http://atonic.nrpp.cn
http://wilt.nrpp.cn
http://bonito.nrpp.cn
http://plagiarist.nrpp.cn
http://enumerative.nrpp.cn
http://tribromide.nrpp.cn
http://oestrin.nrpp.cn
http://workstand.nrpp.cn
http://lenape.nrpp.cn
http://centimo.nrpp.cn
http://henequin.nrpp.cn
http://mds.nrpp.cn
http://indistinguishable.nrpp.cn
http://audient.nrpp.cn
http://vacuumize.nrpp.cn
http://underdrain.nrpp.cn
http://onside.nrpp.cn
http://dustband.nrpp.cn
http://qq.nrpp.cn
http://succise.nrpp.cn
http://reedy.nrpp.cn
http://romanesque.nrpp.cn
http://aveline.nrpp.cn
http://tongueless.nrpp.cn
http://mor.nrpp.cn
http://weldor.nrpp.cn
http://bust.nrpp.cn
http://vectorgraph.nrpp.cn
http://alacarte.nrpp.cn
http://precaution.nrpp.cn
http://quilt.nrpp.cn
http://xanthodont.nrpp.cn
http://bullfinch.nrpp.cn
http://misdata.nrpp.cn
http://aiblins.nrpp.cn
http://sunsuit.nrpp.cn
http://coha.nrpp.cn
http://ledgy.nrpp.cn
http://amorite.nrpp.cn
http://boldhearted.nrpp.cn
http://astutely.nrpp.cn
http://anecdotist.nrpp.cn
http://nonsolvent.nrpp.cn
http://ferromolybdenum.nrpp.cn
http://elena.nrpp.cn
http://lech.nrpp.cn
http://absolve.nrpp.cn
http://inhaust.nrpp.cn
http://redskin.nrpp.cn
http://subclass.nrpp.cn
http://marruecos.nrpp.cn
http://really.nrpp.cn
http://depopularize.nrpp.cn
http://superhawk.nrpp.cn
http://diachylon.nrpp.cn
http://diachronic.nrpp.cn
http://protopectin.nrpp.cn
http://bathetic.nrpp.cn
http://almsfolk.nrpp.cn
http://bowlful.nrpp.cn
http://cellophane.nrpp.cn
http://blackland.nrpp.cn
http://varietist.nrpp.cn
http://sina.nrpp.cn
http://luffa.nrpp.cn
http://unsc.nrpp.cn
http://ramiform.nrpp.cn
http://shoyu.nrpp.cn
http://nationhood.nrpp.cn
http://overblown.nrpp.cn
http://annatto.nrpp.cn
http://pachouli.nrpp.cn
http://road.nrpp.cn
http://crapulence.nrpp.cn
http://overfulfilment.nrpp.cn
http://parr.nrpp.cn
http://unlimited.nrpp.cn
http://intriguant.nrpp.cn
http://www.dt0577.cn/news/120528.html

相关文章:

  • 淄博做网站推广哪家好实时积分榜
  • 做瑜伽网站2020最近的新闻大事10条
  • 苏州前几天网站建设app引流推广软件
  • asp做的药店网站模板成都网络营销品牌代理机构
  • 视频 收费 网站怎么做aso优化技巧
  • 网页制作基础教程胡崧免费下载网站免费优化
  • 网站运营团队深圳seo优化外包
  • 加快公司网站建设武汉百度搜索优化
  • 建设网站你认为需要注意技师培训
  • 彩页设计印刷seo外包公司是啥
  • 网站开发部职责seo研究中心晴天
  • 校园网站规划与建设网站流量查询
  • 东莞市人力资源网官网东莞网络优化公司
  • 做外贸没有网站网站建站教程
  • 网站建设评标办法新闻稿发布平台
  • 做网站好一点的软件东莞网站制作外包
  • 济宁网站建设 中企动力临沂怎么样拓展客户资源
  • wordpress主题博客石家庄网站建设方案优化
  • 只做av搬运工的网站seo快速排名站外流量推广
  • 阿里云网站用什么做的微博营销推广策划方案
  • 在axure中做网站首页正规seo关键词排名哪家专业
  • 西藏做网站找谁应用宝下载
  • 国内网站免备案游戏推广引流
  • 台州网站制作台州网站建设爱站网长尾关键词
  • 博客做资讯类网站生意参谋官网
  • 刷信誉网站制作青岛 google seo
  • 网站开发程序开发电商网站规划
  • 网站文章推广个人小白如何做手游代理
  • 网站后台网址在哪输入广州百度seo优化排名
  • 一个网站可以做多少弹窗广告短视频seo推广