javascript sha1的解密语句是啥?已经有sha1的js库了,而且加密语句知道了,就差解密语句!!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript sha1的解密语句是啥?已经有sha1的js库了,而且加密语句知道了,就差解密语句!!!相关的知识,希望对你有一定的参考价值。

调用解密语句!!

题主确定知道什么是 SHA-1 吗?

这不是加密算法,而是摘要(哈希)算法,国内经常把二者搞混。

区别就在于,加密算法可逆,即通过一定的计算,明文、密文可以互推;摘要算法不可逆,即原文计算后可以得到摘要,但根据摘要不可计算得原文(彩虹表并非“计算”所得)。
参考技术A

SHA1目前大家常用的场景有以下几种:

    文件传输:文件加密传输给接收者,发送者给接收者SHA1码,验证传送的文件是否被篡改,如果你接收到的文件SHA1和发送者给你的一致,表示文件没有被篡改。

    网站登录账号/密码加密:

    用户在网站输入账号/密码后网站把用户输入的账号和密码通过SHA1加密后存储到DB,DB管理员看到账号密码只有一些字符串,即使是DB管理员也无法知道用户输入的账号密码是什么,对用户很安全。

    用户端登录网站只要输入账号和密码后SHA1加密后和DB里面存储的SHA1去比对,如果比对一致就认证通过,否则就失败。

    数字证书:

    数字证书发布的证书也采用这种SHA1算法加密。不过证书加密现在采用更高的算法。

    SHA家族的五个算法,分别是SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512,由美国国家安全局(NSA)所设计,并由美国国家标准与技术研究院(NIST)发布;是美国的政府标准。后四者有时并称为SHA-2。SHA-1在许多安全协定中广为使用,包括TLS和SSL、PGP、SSH、S/MIME和IPsec,曾被视为是MD5(更早之前被广为使用的杂凑函数)的后继者。但SHA-1的安全性如今被密码学家严重质疑;虽然至今尚未出现对SHA-2有效的攻击,它的算法跟SHA-1基本上仍然相似;因此有些人开始发展其他替代的杂凑算法。

JS前端接口加密/解密

CryptoJS (crypto.js) 为 JavaScript 提供加密和解密算法。目前已支持的算法包括

 

crypto, Hash, MD5, SHA1, SHA-1, SHA256, SHA-256, RC4, Rabbit, AES, DES, PBKDF2, HMAC, OFB, CFB, CTR, CBC, Base64

CryptoJS是一个纯javascript写的加密类库, 页面引用

<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js" integrity="sha512-E8QSvWZ0eCLGk4km3hxSsNmGWbLtSCSUcewDQPQWZF6pEU8GlT8a5fF32wOl1i8ftdMhssTrF/OhyGWwonTcXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script>
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/md5.js"></script>
<script type="text/javascript">

  alert("你好,MD5:"+CryptoJS.MD5("你好,MD5测试"));
  
</script>

HMAC-sha1 、HMAC-sha256、HMAC-md5等,用法如下

<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script>
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/hmac-md5.js"></script>
<script type="text/javascript">
  var pwd="password";
  alert("你好,D5测试 Hmac-MD5:   "+CryptoJS.HmacMD5("你好,MD5测试",pwd));
  
</script>

AES 加密/解密

<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script>
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/aes.js"></script>
<script type="text/javascript">
  var pwd="我的密码";
  
  var mi=CryptoJS.AES.encrypt("你好,欢迎来到我的博客,这是一个AES加密测试",pwd);
  alert("你好,AES加密测试----密文:"+mi);
  
  var result=CryptoJS.AES.decrypt(mi,pwd).toString(CryptoJS.enc.Utf8);
  
  alert("解密结果:"+result);
  
</script>
var words = CryptoJS.enc.Base64.parse("SGVsbG8sIFdvcmxkIQ==");
​
var base64 = CryptoJS.enc.Base64.stringify(words);
​
var words = CryptoJS.enc.Latin1.parse("Hello, World!");
​
var latin1 = CryptoJS.enc.Latin1.stringify(words);
​
var words = CryptoJS.enc.Hex.parse("48656c6c6f2c20576f726c6421");
​
var hex = CryptoJS.enc.Hex.stringify(words);
​
var words = CryptoJS.enc.Utf8.parse("𔭢");
​
var utf8 = CryptoJS.enc.Utf8.stringify(words);
​
var words = CryptoJS.enc.Utf16.parse("Hello, World!");
​
var utf16 = CryptoJS.enc.Utf16.stringify(words);
​
var words = CryptoJS.enc.Utf16LE.parse("Hello, World!");
​
var utf16 = CryptoJS.enc.Utf16LE.stringify(words);

参考:

CryptoJS - CryptoJS

以上是关于javascript sha1的解密语句是啥?已经有sha1的js库了,而且加密语句知道了,就差解密语句!!!的主要内容,如果未能解决你的问题,请参考以下文章

javascript是否自带了base64加密、解密函数?是啥?

javascript是否自带了base64加密、解密函数?是啥?

JS前端接口加密/解密

java 加密解密算法MD5/SHA1,DSA

PHP DES解密 对应Java SHA1PRNG方式加密

安卓签名是啥 安卓签名是sha1吗