javascript前台代码

<script src="http://apps.bdimg.com/libs/crypto-js/3.1.2/components/core-min.js"></script>
<script src="http://apps.bdimg.com/libs/crypto-js/3.1.2/components/enc-utf16-min.js"></script>
<script src="http://apps.bdimg.com/libs/crypto-js/3.1.2/components/sha1-min.js"></script>
<script src="http://apps.bdimg.com/libs/crypto-js/3.1.2/components/md5-min.js"></script>
<script src="http://apps.bdimg.com/libs/crypto-js/3.1.2/rollups/aes.js"></script>
<script>
function ajaxdecrypt() {
var keystr = CryptoJS.enc.Utf16LE.parse($("#projectSign").val());
var keymd5 = CryptoJS.MD5(keystr);
var key = keymd5.toString(CryptoJS.enc.Hex); $.post("DecryptAes", { cipher: $("#txt").val(), key: key, iv: key }, function (result) {
$("#txt").val(result);
});
} function encrypt() {
var plantstr = $("#userSign").val();
var plant = CryptoJS.enc.Utf16LE.parse(plantstr); var keystr = CryptoJS.enc.Utf16LE.parse($("#projectSign").val());
var keymd5 = CryptoJS.MD5(keystr).toString(CryptoJS.enc.Hex);
var key = CryptoJS.enc.Hex.parse(keymd5); //var encrypted = CryptoJS.AES.encrypt(plant, key, { iv: key, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding });
var encrypted = CryptoJS.AES.encrypt(plant, key, { iv: key }); $("#txt").val(encrypted);
}
function decrypt() {
var cipherstr = $("#txt").val(); var keystr = CryptoJS.enc.Utf16LE.parse($("#projectSign").val());
var keycode = CryptoJS.MD5(keystr).toString(CryptoJS.enc.Hex);
var key = CryptoJS.enc.Hex.parse(keycode); var plantstr = CryptoJS.AES.decrypt(cipherstr, key, { iv: key });
var plant = CryptoJS.enc.Utf16LE.stringify(plantstr); $("#passwordSign").val(plant);
} </script>

C#后台

public ActionResult DecryptAes(string cipher,string key,string iv)
{
AesManaged aes = new AesManaged(); aes.Key = HexStringToBytes(key);
aes.IV = HexStringToBytes(iv);
//aes.Mode = CipherMode.CBC;
//aes.Padding = PaddingMode.Zeros;
ICryptoTransform de = aes.CreateDecryptor(); byte[] cipherBytes = Convert.FromBase64String(cipher); byte[] plantBytes = de.TransformFinalBlock(cipherBytes,0,cipherBytes.Length); return Content(Encoding.Unicode.GetString(plantBytes));
}

AES 加密,C#后台,javascript前台,crypt-js的更多相关文章

  1. js调用.net后台事件、后台调用前台以及js调用服务器控件

    1. javaScript函数中执行C#代码中的函数: 方法一:间接触发后台代码 1.首先建立一个服务端控件按钮命名为btn1,双击进入后台将调用或处理的内容写入btn1_click中; 2.在前台写 ...

  2. 基于Springboot后台,前台 vue.js 跨域 Activiti6 工作流(用到websocket技术) 的项目

    工作流模块----------------------------------------------------------------------------------------------- ...

  3. c# 后台调前台的js

    ScriptManager.RegisterStartupScript(this.Page, typeof(Page), "", "<script type=\&q ...

  4. JS和利用openssl的object C加密得到相同的aes加密密文

    这是之前接到的一个工作内容,项目原本的登录操作是获得账号和密码以后,对密码进行一遍MD5加密,然后传递账号和密文到cgi文件.在c中获取到账户以后,从数据库中获取到密码,对密码进行一次MD5的加密,然 ...

  5. AES加密解密——AES在JavaWeb项目中前台JS加密,后台Java解密的使用

    一:前言 在软件开发中,经常要对数据进行传输,数据在传输的过程中可能被拦截,被监听,所以在传输数据的时候使用数据的原始内容进行传输的话,安全隐患是非常大的.因此就要对需要传输的数据进行在客户端进行加密 ...

  6. rsa实现js前台加密java后台解密

    前段时间写了一个rsa前台加密到后台用java解密,下面共享下实现思路: 准备工作:第三方包是必须的 bcprov-jdk15on-148.jar commons-codec-1.7.jar comm ...

  7. C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现[转载]

    原文:http://outofmemory.cn/code-snippet/35524/AES-with-javascript-java-csharp-python-or-php c#里面的AES加密 ...

  8. C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  9. nodejs与javascript中的aes加密

    简介 1.aes加密简单来说,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准.这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用.高级加密标准已然成为对称密钥加 ...

随机推荐

  1. Servlet页面间对象传递的方法

    Servlet页面间对象传递的方法 1.request 2.session 3.application 4.cookie 5.其它的

  2. java的System.getProperty()方法能够获取的值

    java.version Java 执行时环境版本号 java.vendor Java 执行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装 ...

  3. CentOS 6.5下Percona Xtrabackup的安装错误解决方案

    1.下载最新版的Xtracbackup 2.安装 yum install perl-DBIyum install perl-DBD-MySQLyum install perl-Time-HiResyu ...

  4. TS流PAT/PMT详解

    一 从TS流开始 从MPEG-2到DVB,看着看着突然就出现了一大堆表格,什么PAT.PMT.CAT……如此多的表该怎样深入了解呢? 我们知道,数字电视机顶盒接收到的是一段段的码流,我们称之为TS(T ...

  5. JavaScript类的设计

    [转载] Javascript与其他的面向对象语言不同,如C++,Java或PHP等.它并不是基于类的,而是基于原型的一种语言. 1.对象创建 在Javascript中创建一个类是非常容易的: var ...

  6. python 使用 tweepy 案例: PS4

    First, make sure Python and Tweepy installed well, and the network setup well. Then, you go to http: ...

  7. C#的Socket编程

    Microsoft.Net Framework为应用程序访问Internet提供了分层的.可扩展的以及受管辖的网络服务,其名字空间System.Net和System.Net.Sockets包含丰富的类 ...

  8. thinkphp+redis实现秒杀功能

    好久没来整理文章了,闲了没事写篇文章记录下php+redis实现商城秒杀功能. 1,安装redis,根据自己的php版本安装对应的redis扩展(此步骤简单的描述一下) 1.1,安装 php_igbi ...

  9. <转>Python的内存泄漏及gc模块的使用分析

    一般来说在 Python 中,为了解决内存泄漏问题,采用了对象引用计数,并基于引用计数实现自动垃圾回收.由于Python 有了自动垃圾回收功能,就造成了不少初学者误认为自己从此过上了好日子,不必再受内 ...

  10. VC++深入详解读书笔记-第七章对话框

    1.在MFC中,所有的控件类都是由CWnd类派生来的,因此,控件实际上也是窗口. 2. 3.对话框的种类 模态对话框 模态对话框是指当其显示时,程序会暂时执行,直到关闭这个模态对话框后,才能继续执行程 ...