原创转载请注明出处:http://agilestyle.iteye.com/blog/2382089
有一个这样的业务场景,两个不同的平台进行数据交互,一级域名提供网页消息数据,二级域名提供用户相关数据,因为涉及平台交互,所以防止JS跨域劫持,需要对前端的用户相关信息进行加密传输处理。
这里采用 crypto-js 进行DES加密,具体思路:前端进行用户相关信息DES加密处理后,传输给后端进行DES解密,其中对称加密的 key 需要定时刷新(比如采用Spring定时器存入Redis),所以每次提交form的时候,需要首先从Redis中取出最新的 key(可以提供一个取 key 的接口),取出 key 之后再对数据进行加密传输,传输到后台再进行进一步处理。
引入js
<script src="/js/crypto-js.js"></script> <script src="/js/tripledes.js"></script> <script src="/js/mode-ecb.js"></script>
编写加密函数
function encryptByDES(message, key) { var keyHex = CryptoJS.enc.Utf8.parse(key); var encrypted = CryptoJS.DES.encrypt(message, keyHex, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); }
编写获取key函数
function getDesKey() { var ajax = $.ajax({ type: "POST", url: "/getDesKey", dataType: "json" }); ajax.done(function(data) { desKey = data.key; }); return ajax; }
Ajax提交
相关推荐
在JavaScript中实现DES加密,通常会借助于一些库,例如crypto-js,这是一个非常流行的JavaScript加密库,提供了包括DES在内的多种加密算法。 在处理中文字符时,由于JavaScript字符串通常是UTF-8编码,我们需要先将...
Java和JavaScript之间的DES加密解密是信息安全领域中的一个重要话题,主要涉及到数据的保护和通信的安全。DES(Data Encryption Standard)是一种古老的对称加密算法,尽管它在安全性上已不被视为最佳选择,但在某些...
在前端,JavaScript可以用于实现DES加密,通常通过内置的Web Cryptography API或者第三方库如CryptoJS。在后端,VB.NET和C#都有内置的加密支持,可以处理DES加密的数据。 在前端进行DES加密的过程通常包括以下步骤...
因项目需要,要用js加密后,提交给C#解密,在网上找了半天,无数个版本,却不能互相使用 就随便下载了一个JS版本的,把它改写成C#版本的 这样JS加密后,C#也能解密 反之C#加密后,JS也能解密 共享给大家吧。 注:...
JavaScript写的DES加密解密的代码,运行模式为CBC,纯源码觉得可以运行。加密前:select item_no,item_name,price,sale_price from t_bd_item_info where item_no='00002', 加密后:V+WKfe9+DcuPpwU7mJ8krkgpztgU7...
在JavaScript中实现3DES加密,通常需要依赖于第三方库,如`crypto-js`,这是一个流行的JavaScript加密库,提供了包括3DES在内的多种加密算法。以下是一个简单的3DES加密和解密示例: ```javascript // 引入crypto-...
2. 使用库:由于JavaScript原生并不支持DES算法,开发者通常会借助第三方库,如crypto-js,来实现DES加密解密功能。这些库已经封装好了DES算法的复杂逻辑,使得开发者可以方便地调用。 3. 加密和解密函数:通过调用...
这些文件可能是实现上述 JavaScript 示例的代码,`jsDES.html` 可能包含一个网页,用于展示 JavaScript 的 DES 加密功能,而 `js` 文件可能是 JavaScript 代码本身,实现加密逻辑。 总结,JavaScript 和 Java 通过 ...
在JS版的DES加密解密中,我们可以看到JavaScript语言被用来实现这一功能,这对于Web应用中的安全通信非常有用。 DES加密过程分为以下几个步骤: 1. **初始置换**:原始的64位明文数据经过一个固定的置换表进行变换...
3. `des.js`: DES加密算法的具体实现。 4. `md5.js`: MD5哈希函数,虽然不是直接用于DES,但可能是用于其他目的,如密码存储。 5. `mode-ecb.js`: ECB(Electronic Codebook)模式,这是DES的一种工作模式,其中每个...
在JavaScript中实现DES加密,可以借助于一些开源库,如`crypto-js`。这个库提供了多种加密算法,包括DES。首先,你需要安装这个库,可以通过npm来完成: ```bash npm install crypto-js ``` 接着,你可以使用以下...
本文将深入探讨在JS中常用的加密库,包括MD5、AES和DES,以及如何使用CryptoJS这个加密库来实现这些加密算法。 **MD5(Message-Digest Algorithm 5)** MD5是一种广泛使用的哈希函数,它可以将任意长度的数据转化为...
des加密算法(js+java)加密与解密结果相同 包含三个文件 : des.js des.html ,用于实现前端脚本的加密与解密 des.java 用于后台的加密解密操作; 项目中正好用到,已经过验证,两个加密解密结果相同,分享给...
在JavaScript中,我们可以使用开源库如crypto-js来实现3DES加密。首先,你需要安装这个库,可以通过npm进行安装: ```bash npm install crypto-js ``` 然后,在代码中引入库并实现3DES加密: ```javascript var ...
在Node.js中,我们可以使用内置的`crypto`模块来实现DES和3DES加密解密。下面我们将详细介绍如何操作: 1. **引入crypto模块** 首先,我们需要在项目中引入`crypto`模块。在JavaScript文件(如3des.js)中,添加...
在本文中,我们将深入探讨DES加密的原理以及如何在前端JavaScript和后端Java之间实现互通。 DES算法基于Feistel结构,它将明文分为左右两半进行迭代处理,通过64轮的加密过程将原始信息转化为密文。每个轮次包括一...
"DESC3.js"这个文件是针对3DES加密的一个JavaScript实现,它允许前端开发者在不暴露敏感信息的情况下安全地处理数据。该库通常包括以下功能: 1. **加密功能**:将明文数据使用3DES算法转换成密文,这样在网络传输...
在JavaScript中,我们可以使用第三方库如`crypto-js`来实现DES加密。首先,需要安装这个库: ```bash npm install crypto-js ``` 然后,可以使用以下代码进行DES加密: ```javascript var CryptoJS = require(...
在"JS端3DES加密JS文件.zip"这个压缩包中,包含的资源用于在JavaScript端进行3DES加密解密以及Base64编码解码,同时也可以与Java(Android)端进行交互。 首先,我们来看"crypto-js.js",这是一个JavaScript库,...