-
大小: 19KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-05-17
- 语言: C#
- 标签: DES C# Javascript
资源简介
因项目需要,要用js加密后,提交给C#解密,在网上找了半天,无数个版本,却不能互相使用
就随便下载了一个JS版本的,把它改写成C#版本的
这样JS加密后,C#也能解密
反之C#加密后,JS也能解密
共享给大家吧。
注:是VS.Net2008版本,里面包含js的加解密函数和C#的加解密函数
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Security.Cryptography;
using System.IO;
using System.Text;
namespace FFCS.EIS.Questionnaire
{
public partial class WebForm1 : System.Web.UI.Page ICallbackEventHandler
{
protected void Page_Load(object sender EventArgs e)
{
// 把js的des加密函数写入客户端
Clientscript.RegisterClientscriptBlock(this.GetType() “beinetDesJs“ GetJsDesMethod() true);
}
#region ICallbackEventHandler 成员
string m_callback;
public string GetCallbackResult()
{
return m_callback;
}
///
/// eventArgument参数由3部分组成,以 _ 连接
/// 第一部分:0为加密;1为解密
/// 第二部分:密钥
/// 第三部分:加密或解密的字符串
///
///
public void RaiseCallbackEvent(string eventArgument)
{
if (string.IsNullOrEmpty(eventArgument))
return;
string[] beinetarr = eventArgument.Split(‘_‘);
if (beinetarr.Length < 3)
return;
if (beinetarr.Length > 3)
beinetarr[2] = eventArgument.Substring(eventArgument.IndexOf(‘_‘ beinetarr[0].Length + 1));
// 密钥 或 字符串为空时,退出
if (string.IsNullOrEmpty(beinetarr[1]) || string.IsNullOrEmpty(beinetarr[2]))
return;
string beinettype = beinetarr[0];
string beinetkey = beinetarr[1];
string beinetstr = beinetarr[2];
if (beinettype == “1“)
{
m_callback = uncMe(beinetstr beinetkey);
}
else
{
m_callback = encMe(beinetstr beinetkey);
}
}
#endregion
#region 加密解密及相关方法
#region 配合JS用的C#版DES加解密方法及相关函数
///
/// 加密测试函数
///
/// 待加密的字符串
/// 密钥
///
public static string encMe(string beinetstr string beinetkey)
{
if (string.IsNullOrEmpty(beinetkey))
return string.Empty;
return stringToHex(des(beinetkey beinetstr true false string.Empty));
}
///
/// 解密测试函数
///
/// 待解密的字符串
/// 密钥
///
public static string uncMe(string beinetstr string beinetkey)
{
if (string.IsNullOrEmpty(beinetkey))
return null;
string ret = des(beinetkey HexTostring(beinetstr) false false string.Empty);
return ret;
}
///
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4174 2009-06-24 17:09 DesTest\DesTest\DesTest.csproj
文件 1297 2009-06-24 17:09 DesTest\DesTest\DesTest.csproj.user
文件 1325 2009-06-24 16:31 DesTest\DesTest\Properties\AssemblyInfo.cs
文件 4697 2009-06-24 17:21 DesTest\DesTest\WebForm1.aspx
文件 51591 2009-06-24 17:22 DesTest\DesTest\WebForm1.aspx.cs
文件 1199 2009-06-24 16:32 DesTest\DesTest\WebForm1.aspx.designer.cs
文件 911 2009-06-24 16:31 DesTest\DesTest.sln
..A..H. 51712 2009-06-24 17:23 DesTest\DesTest.suo
目录 0 2009-06-24 16:31 DesTest\DesTest\App_Data
目录 0 2009-06-24 16:31 DesTest\DesTest\Properties
目录 0 2009-06-24 17:23 DesTest\DesTest
目录 0 2009-06-24 16:31 DesTest
----------- --------- ---------- ----- ----
116906 12
相关资源
- c#写的winform超级记事本
- 处理图片背景色,使用透明C#&图片处
- C#DES标准ECB加密解密
- C#动态编译DLL到内存,并调用执行
- C#实现LL1文法编译原理课设
- 六种加密算法的C#实现源码
- C# 使用Timer控件显示当前时间
- c# DataGridView中添加下拉列表
- 30个 c# 小程序
- C#使用serialPort实时显示收到的数据
- C#,AJAX读写JSON
- c#生成dwg文件
- C#遗传算法求解VRP问题
- C#实体类生成器
- 用一个来说明C#中的继承、封装和多态
- 物联网传感器配置与数据采集C#
- C# 自动寻路迷宫bfs
- C# 注册机+时间期限源码
- C#读取数据库中表格数据
- MessageBoxExc# 自定义messagebox
- c# 远程控制 屏幕控制 文件操作
- 在线教育管理系统(C#+sql2005)(内含
- C#与三菱QL系列以太网(MELSEC)PLC交互
- C#读取DAT文件文件,生成图像,并保存
- C# FTP 控件edtftpnet pro8.3及注册码-2
- 西门子PLC与上位机C#源码Snap7.rar
- C#,串口通信,简洁界面,初学
- Wince 条码扫描
- 人机对战版五子棋C#源代码解压密码:
- C#经典视频教程BT
评论
共有 条评论