HTML前端的加密解密方式有以下几种:

一、base64加密

Base64编码:Base64是一种将二进制数据转换为可打印字符的编码方式。在前端,可以使用JavaScript的btoa()函数进行Base64编码,使用atob()函数进行解码。


var str = "hello";

var str64 = window.btoa("hello");

console.log("定义的字符串为:"+str);

console.log("通过base64编码后为:"+str64);

console.log("由base64解码后为:"+window.atob(str64));

二、MD5加密(不可逆) 

MD5散列:MD5是一种广泛使用的散列算法,可以将输入转换为固定长度的散列值。在前端,可以使用JavaScript的CryptoJS库来进行MD5散列,例如使用md5()函数。


html使用md5加密

// 引入md5和jquery

<script src="https://cdn.bootcdn.net/ajax/libs/blueimp-md5/2.18.0/js/md5.js"></script>

<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js"></script>

 

// 函数加密

<script>

   let mq = '741130687291314520'

   let pwd = md5(mq);

   console.log('加密前的字符串', mq)   // 加密前的字符串 741130687291314520

   console.log('加密后的字符串', pwd)  // 加密后的字符串 8a39c2287dc743a44b2483d504acb0c3

</script>



MD5作为插件

        MD5.js是通过前台js加密的方式对用户信息,密码等私密信息进行加密处理的工具,也可称为插件。MD5共有6种加密方法:


 hex_md5(value)

b64_md5(value)

 str_md5(value)

 hex_hmac_md5(key, data)

 b64_hmac_md5(key, data)

str_hmac_md5(key, data)

下载好了用script 标签引入使用


var code = "123456";

var username = "123456";

var message = "123456";

var str1 = hex_md5("123456");

var str2 = b64_md5("123456");

var str3 = str_md5("123456");

var str4 = hex_hmac_md5(code,code);

var str5 = b64_hmac_md5(username,username);

var str6 = str_hmac_md5(message ,message );

console.log(str1); // e10adc3949ba59abbe56e057f20f883e

console.log(str2); // 4QrcOUm6Wau+VuBX8g+IPg

console.log(str3); // áÜ9IºY«¾VàWò��>

console.log(str4); // 30ce71a73bdd908c3955a90e8f7429ef

console.log(str5); // MM5xpzvdkIw5VakOj3Qp7w

console.log(str6); // 0Îq§;Ý��9U©��t)ï

三、编码和解码字符串

        使用JS函数的escape()和unescape(),分别是编码和解码字符串


var escape1 =escape("我的名字是:mosquito~");//编码

console.log(escape1);

var unescape1 = unescape(escape1); //解码

console.log(unescape1);

四、AES/DES加密解密 

  1. AES加密:

        AES(Advanced Encryption Standard)是一种对称加密算法,可以将数据进行加密,并使用相同的密钥进行解密。在前端,可以使用JavaScript的CryptoJS库来进行AES加密解密,例如使用AES.encrypt()和AES.decrypt()函数。


  2.  RSA加密:

        RSA是一种非对称加密算法,可以使用公钥对数据进行加密,然后使用私钥进行解密。在前端,可以使用JavaScript的CryptoJS库结合其他库(如RSAKey)来进行RSA加密解密。


下载crypto-js.js 引入使用


// 引入库

<script src="https://cdn.bootcss.com/crypto-js/3.1.9-1/crypto-js.min.js"></script>

 

// 使用

<script>

    var aseKey = "12345678" //秘钥必须为:8/16/32位

    var message = "741130687291314520";

 

    //加密

    var encrypt = CryptoJS.AES.encrypt(message, CryptoJS.enc.Utf8.parse(aseKey), {

         mode: CryptoJS.mode.ECB,

          padding: CryptoJS.pad.Pkcs7

    }).toString();

    console.log('加密',encrypt); //VKrZlqykem73x8/T2oCfCQ==

 

     //解密

    var decrypt = CryptoJS.AES.decrypt(encrypt, CryptoJS.enc.Utf8.parse(aseKey), {

            mode: CryptoJS.mode.ECB,

            padding: CryptoJS.pad.Pkcs7

    }).toString(CryptoJS.enc.Utf8);

    console.log('解密',decrypt); //80018000142

    //【注】:加密的时候必须转成字符串 使用toString。 解密的时候 必须使用utf8的格式

 

</script>

        这些加密解密方式在前端通常用于保护敏感数据,如用户密码、用户身份验证等。需要注意的是,前端加密解密只能提供一定程度上的安全性,真正的安全仍然依赖于后端的处理和保护。

————————————————


来源:CSDN-可爱的秋秋啊

原文链接:https://blog.csdn.net/mq1314520_zhl/article/details/136559499

 

扫描下方二维码,一个老毕登免费为你解答更多软件开发疑问!

物业管理工单AI调度方案:维修响应缩短至30分钟的核心算法

物业报修总是慢半拍?业主群里天天吐槽维修不及时?物业管理人员为工单分配焦头烂额?别慌!今天给大家揭秘一套超实用的物业工单 AI 调度方案,手把手教你用核心算法把维修响应时间从几小时压缩到 30 分钟内,让业主满意度直线飙升!​据中国物业管理协会发布的《2023 年物业管理行业发展报告》显示,在业主对物业的投诉中,维修响应不及时占比高达 38%。而当维修响应时间控制在 30 分钟以内时,业主对物业的

电商网站加速方案:WooCommerce加载从5s到0.9s的实操

你的 WooCommerce 电商网站是不是也总被用户吐槽 “加载慢如龟”?明明商品超有吸引力,却因为 5 秒的加载时间,白白流失了大量潜在客户!别慌!今天手把手教你把网站加载速度从 5 秒直接干到 0.9 秒,让你的店铺直接起飞!​根据 Akamai 的研究报告显示,网页加载时间每延迟 1 秒,就会导致用户转化率下降 7%,销售额降低 11% ,用户跳出率增加 16%。想象一下,每天几百上千的访

APP开发后如何做A/B测试? (转化率提升指南!界面/文案/按钮优化案例)

辛辛苦苦开发的 APP,转化率却总是上不去?根据麦肯锡发布的《2024 年移动应用用户行为报告》显示,经过科学 A/B 测试优化的 APP,平均转化率能提升 35%!想要让界面、文案、按钮成为转化 “利器”,A/B 测试绝对是必备技能。今天就通过真实案例,手把手教你用 A/B 测试提升 APP 转化率!一、为啥 A/B 测试是转化率的 “加速器”?用数据说话先看两组真实数据:某电商 APP 对商品

APP开发后如何做热更新? (动态修复BUG!不重新上架的更新方案)

APP 刚上线就发现严重 BUG,难道只能等重新上架 “干着急”?据 App Annie 发布的《2024 年移动应用质量报告》显示,因等待重新上架修复问题,平均每个 APP 会流失 12% 的用户。而热更新技术能让你绕过应用商店审核,动态修复 BUG!今天就手把手教你 APP 热更新的实现方案,让你的应用随时 “满血复活”。一、为啥热更新成了开发者的 “救命稻草”?先看一组真实数据:某热门游戏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部