MD5+salt的加密

在vue项目中进行加密设置

使用方法:

先下载js-md5       cnpm i js-md5

在引入                   import md5 from "js-md5"

设置一个salt          const salt = 342i3194010384dsafj;

在需要加密的地方     md5(ObjKeySort(data)+salt,32)

其中第一个参数是你要加密的数据,第二个参数是规定输出的格式

ObjKeySort是把对象按照属性名的a-z字母顺序进行排列的一个函数

objKeySort 函数如下:

function objKeySort(obj) {//排序的函数

var newkey = Object.keys(obj).sort();

  //先用Object内置类的keys方法获取要排序对象的属性名,再利用Array原型上的sort方法对获取的属性名进行排序,newkey是一个数组

var newObj = “”;//创建一个新的字符串,用于存放排好序的键值对

for (var i = 0; i < newkey.length; i++) {//遍历newkey数组

obj[newkey[i]] = JSON.stringify(obj[newkey[i]]);

//向新创建的对象中按照排好的顺序依次增加键值对

newObj += ((newObj .indexOf("=") != -1) ? "&" : "") + newkey[i] + "=" + obj[newkey[i]];

}

return newObj;//返回排好序的

}

原文地址:https://www.cnblogs.com/guanpingping/p/10531846.html

时间: 2024-11-07 19:17:24

MD5+salt的加密的相关文章

关于MD5+salt盐加密

MD5+salt 最近浏览浏览一些帖子时,发现曾经引以为傲的md5加密算法,虽然是无法解密的算法,但是现在可以通过FELHELP(谷歌浏览器插件)或者一些字典可以套出来,.但是当md5+salt值时,套出的几率微乎其微. ---以下参考:微尔雅-的java关于md5+salt盐加密验证 一.陈述一下工作流程: 1.根据已有的密码字符串去生成一个密码+盐字符串,可以将盐的加密字符串也存放在数据库(看需求), 2.验证时将提交的密码字符串进行同样的加密再从数据库中取得已有的盐进行组合密码+盐的字符串

Java关于md5+salt盐加密验证

一.陈述一下工作流程: 1.根据已有的密码字符串去生成一个密码+盐字符串,可以将盐的加密字符串也存放在数据库(看需求), 2.验证时将提交的密码字符串进行同样的加密再从数据库中取得已有的盐进行组合密码+盐的字符串和已有的进行验证 package com.mi.util; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgori

C# salt+hash 加密

一.先明确几个基本概念 1.伪随机数:pseudo-random number generators ,简称为:PRNGs,是计算机利用一定的算法来产生的.伪随机数并不是假随机 数,这里的"伪"是有规律的意思,就  是计算机产生的伪随机数既是随机的又是有规律的.怎样理解呢?产生的伪随机数有时遵守一定的规律,有 时不遵守任何规律:伪随机数有一部分遵守一定的规律:另一部分不遵守任何规律.比如"世上没有两片形状完全相同的树叶",这正是点到了事 物的特性,即随机性,但是每种

MD5盐值加密

加密思路 思路解析:(数据解析过程基于16进制来处理的,加密后为16进制字符串) 加密阶段: 对一个字符串进行MD5加密,我们需要使用到MessageDigest(消息摘要对象),需要一个盐值(salt),这个值可以是我们在业务中的一个标识号,比如银行业务中的商户号. 然后对使用salt对password进行组合加密,形成一个加密串Encryp_password,但这时候并不是真正完整的加密串,我们还需要将salt放到加密串的最前面,方便在数据验证时,获取salt. 因此最终的加密串为:SAL_

原创:MD5 32位加密软件

网站后台数据库切勿使用明文保存密码,否则一旦黑客拿下你的Webshell,后果不堪设想. 网站后台密码加密大多数采用的就是MD5算法加密.今天给大家送一个本人用c#简单编写的MD5 32位加密程序,虽然没有什么技术含量,但保证没有后门. 程序截图: 开放源码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing;

C#MD5 32位加密

using System.Security.Cryptography; public static string En32(string str) { string pwd = ""; MD5 md5 = MD5.Create();//实例化一个md5对像 // 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 byte[] s = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(str)); // 通过使

MD5各种长度加密字符、验证MD5等操作辅助类 MD5Util

实现效果  1)本辅助类主要是用来方便实现MD5各种长度加密字符.验证MD5等操作. 2)MD5即Message-Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致.是计算机广泛使用的散列算法之一(又译摘要算法.哈希算法). 3)MD5已经广泛使用在为文件传输提供一定的可靠性方面.例如,服务器预先提供一个MD5校验和,用户下载完文件以后,用MD5算法计算下载文件的MD5校验和,然后通过检查这两个校验和是否一致,就能判断下载的文件是否出错 实现代码  1)辅助类提

Java 关于密码处理的工具类[MD5编码][AES加密/解密]

项目中又遇到了加密问题,又去翻了半天,然后做测试,干脆就把常用的两类小结一下. 1.第一种所谓的MD5加密 其实也不算加密,只是基于Hash算法的不可逆编码而已,等于说,一旦经过MD5处理,是不可能从编码后的字符串反推回去的. MD5的方法是基于散列的.本身信息不全.理论上是不能还原成唯一字符串的. 网上所谓的解密,也只是拥有一个足够大的字典映射,将编码前的源字符和编码后的目标字符关联起来而已,大多数常见的还行,复杂点的估计就会话费很长时间,有兴趣的可以试试. 至于MD5的用法,在初次录入的时候

BASE64,MD5,SHA,HMAC加密與解密算法(java)

package com.ice.webos.util.security; import java.io.UnsupportedEncodingException; import java.math.BigInteger; import java.security.Key; import java.security.MessageDigest; import java.security.SecureRandom; import javax.crypto.Cipher; import javax.c