当前位置:首页 > 科技  > 软件

用户被盗号了!为什么前端要被骂?

来源: 责编: 时间:2024-06-05 17:41:02 280观看
导读密码强度平时我们在浏览各种网站和 APP 的时候,都接触过密码这个东西!密码设置的好不好,关乎到你的账号安全性,越复杂的密码越安全,所以密码强度很重要,而我们在做注册功能的时候,也有责任去帮协助用户设置一个高密码强度的

密码强度

平时我们在浏览各种网站和 APP 的时候,都接触过密码这个东西!loT28资讯网——每日最新资讯28at.com

密码设置的好不好,关乎到你的账号安全性,越复杂的密码越安全,所以密码强度很重要,而我们在做注册功能的时候,也有责任去帮协助用户设置一个高密码强度的密码!loT28资讯网——每日最新资讯28at.com

那么密码强度怎么计算呢? 且应该如何实现以下这样的密码强度动画展示效果呢?loT28资讯网——每日最新资讯28at.com

图片图片loT28资讯网——每日最新资讯28at.com

思路

其实思路很简单:loT28资讯网——每日最新资讯28at.com

1、监听密码输入框的变化。loT28资讯网——每日最新资讯28at.com

2、密码变化时,获取密码文本,并通过某种方式计算这个密码的强度分数。loT28资讯网——每日最新资讯28at.com

3、根据强度分数,改变下方块的颜色和宽度。loT28资讯网——每日最新资讯28at.com

0分:强度低,红色,宽度 20%loT28资讯网——每日最新资讯28at.com

1分:强度低,红色,宽度 40%loT28资讯网——每日最新资讯28at.com

2分:强度中,橙色,宽度 60%loT28资讯网——每日最新资讯28at.com

3分:强度高,绿色,宽度 80%loT28资讯网——每日最新资讯28at.com

4分:强度高,绿色,宽度 100%loT28资讯网——每日最新资讯28at.com

图片图片loT28资讯网——每日最新资讯28at.com

计算密码强度分数

用什么方式去计算密码强度方式呢?我们可以用 @zxcvbn-ts/core这个库来计算。loT28资讯网——每日最新资讯28at.com

@zxcvbn-ts/core 是 zxcvbn 密码强度估计器的 TypeScript 实现版本,用于帮助开发者评估用户设置密码的复杂度和安全性,计算的依据有:loT28资讯网——每日最新资讯28at.com

  • 密码长度: 越长分数越高。
  • 字符类型: 数字、字母、符号。
  • 词典攻击检测: 内置词典列表,检测密码强度。
  • 评分系统: 0-4分,分数越高越安全。
  • 熵计算: 评测密码所需尝试次数,熵越高,分数越高。
pnpm i @zxcvbn-ts/core

图片图片loT28资讯网——每日最新资讯28at.com

密码强度动画展示效果

计算了分数之后,我们需要根据分数去展示:loT28资讯网——每日最新资讯28at.com

  • 不同的颜色
  • 不同的宽度

我们可以使用属性选择器的方式,去完成这一个效果,看以下代码:loT28资讯网——每日最新资讯28at.com

图片图片loT28资讯网——每日最新资讯28at.com

当密码改变的时候,会实时计算密码强度分数,这也就是意味着 data-score 这个属性会一直变,接着我们可以在样式中,去根据属性选择器去设置不同的颜色和宽度。loT28资讯网——每日最新资讯28at.com

图片loT28资讯网——每日最新资讯28at.com

现在可以看到这样的效果:loT28资讯网——每日最新资讯28at.com

图片图片loT28资讯网——每日最新资讯28at.com

完善动画效果

但是我们如果想实现分格的效果,可以借助伪元素去做。loT28资讯网——每日最新资讯28at.com

图片loT28资讯网——每日最新资讯28at.com

现在可以达到我们期望的效果:loT28资讯网——每日最新资讯28at.com

图片图片loT28资讯网——每日最新资讯28at.com

完整代码

<template>  <Input.Password v-model:value="password" autocomplete="none" />  <div class="strength-meter-bar">    <div class="strength-meter-bar--fill" :data-score="passwordStrength"></div>  </div></template><script lang="ts" setup>import { Input } from 'ant-design-vue';import { computed, ref } from 'vue';import { zxcvbn } from '@zxcvbn-ts/core';const password = ref('');const passwordStrength = computed(() => {  return zxcvbn(password.value).score;});</script><style lang="less">.strength-meter-bar {  position: relative;  height: 6px;  margin: 10px auto 6px;  border-radius: 6px;  background-color: rgb(0 0 0 / 25%);  // 增加的伪元素样式代码  &::before,  &::after {    content: '';    display: block;    position: absolute;    z-index: 10;    width: 20%;    height: inherit;    border-width: 0 5px;    border-style: solid;    border-color: #fff;    background-color: transparent;  }  &::before {    left: 20%;  }  &::after {    right: 20%;  }  // 增加的伪元素样式代码  &--fill {    position: absolute;    width: 0;    height: inherit;    transition:      width 0.5s ease-in-out,      background 0.25s;    border-radius: inherit;    background-color: transparent;    &[data-score='0'] {      width: 20%;      background-color: darken(#e74242, 10%);    }    &[data-score='1'] {      width: 40%;      background-color: #e74242;    }    &[data-score='2'] {      width: 60%;      background-color: #efbd47;    }    &[data-score='3'] {      width: 80%;      background-color: fade(#55d187, 50%);    }    &[data-score='4'] {      width: 100%;      background-color: #55d187;    }  }}</style>

loT28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-92112-0.html用户被盗号了!为什么前端要被骂?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python 大神教你如何优雅地清理大数据

下一篇: Python动态创建类,为编程带来极大的灵活性和扩展性

标签:
  • 热门焦点
  • 直屏旗舰来了 iQOO 12和K70 Pro同台竞技

    旗舰机基本上使用的都是双曲面屏幕,这就让很多喜欢直屏的爱好者在苦等一款直屏旗舰,这次,你们等到了。据博主数码闲聊站带来的最新爆料称,Redmi下代旗舰K70 Pro和iQOO 12两款手
  • 小米降噪蓝牙耳机Necklace分享:听一首歌 读懂一个故事

    在今天下午的小米Civi 2新品发布会上,小米还带来了一款新的降噪蓝牙耳机Necklace,我们也在发布结束的第一时间给大家带来这款耳机的简单分享。现在大家能见到最多的蓝牙耳机
  • 7月安卓手机好评榜:三星S23Ultra好评率第一

    性能榜和性价比榜之后,我们来看最后的安卓手机好评榜,数据来源安兔兔评测,收集时间2023年7月1日至7月31日,仅限国内市场。第一名:三星Galaxy S23 Ultra好评率:95.71%在即将迎来新
  • 0糖0卡0脂 旭日森林仙草乌龙茶优惠:15瓶到手29元

    旭日森林无糖仙草乌龙茶510ml*15瓶平时要卖为79.9元,今日下单领取50元优惠券,到手价为29.9元。产品规格:0糖0卡0脂,添加草本仙草汁,清凉爽口,富含茶多酚,保留
  • 三言两语说透设计模式的艺术-简单工厂模式

    一、写在前面工厂模式是最常见的一种创建型设计模式,通常说的工厂模式指的是工厂方法模式,是使用频率最高的工厂模式。简单工厂模式又称为静态工厂方法模式,不属于GoF 23种设计
  • 十个简单但很有用的Python装饰器

    装饰器(Decorators)是Python中一种强大而灵活的功能,用于修改或增强函数或类的行为。装饰器本质上是一个函数,它接受另一个函数或类作为参数,并返回一个新的函数或类。它们通常用
  • 梁柱接棒两年,腾讯音乐闯出新路子

    文丨田静 出品丨牛刀财经(niudaocaijing)7月5日,企鹅FM发布官方公告称由于业务调整,将于9月6日正式停止运营,这意味着腾讯音乐长音频业务走向消亡。腾讯在长音频领域还在摸索。为
  • AMD的AI芯片转单给三星可能性不大 与台积电已合作至2nm制程

    据 DIGITIMES 消息,英伟达 AI GPU 出货逐季飙升,接下来 AMD MI 300 系列将在第 4 季底量产。而半导体业内人士表示,近日传出 AMD 的 AI 芯片将转单给
  • 回归OPPO两年,一加赢了销量,输了品牌

    成为OPPO旗下主打性能的先锋品牌后,一加屡创佳绩。今年618期间,一加手机全渠道销量同比增长362%,凭借一加 11、一加 Ace 2、一加 Ace 2V三款爆品,一加
Top