ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:16.18KB ,
资源ID:1943023      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1943023.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(加密解密常用函数.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

加密解密常用函数.docx

1、加密解密常用函数本帖最后由 小平 于 2013-6-22 10:05 编辑#region DES加密解密 / / DES加密 / / 待加密字串 / 32位Key值 / 加密后的字符串 public string DESEncrypt(string strSource) return DESEncrypt(strSource, DESKey); public string DESEncrypt(string strSource, byte key) SymmetricAlgorithm sa = Rijndael.Create(); sa.Key = key; sa.Mode = Cipher

2、Mode.ECB; sa.Padding = PaddingMode.Zeros; MemoryStream ms = new MemoryStream(); CryptoStream cs = new CryptoStream(ms, sa.CreateEncryptor(), CryptoStreamMode.Write); byte byt = Encoding.Unicode.GetBytes(strSource); cs.Write(byt, 0, byt.Length); cs.FlushFinalBlock(); cs.Close(); return Convert.ToBase

3、64String(ms.ToArray(); / / DES解密 / / 待解密的字串 / 32位Key值 / 解密后的字符串 public string DESDecrypt(string strSource) return DESDecrypt(strSource, DESKey); public string DESDecrypt(string strSource, byte key) SymmetricAlgorithm sa = Rijndael.Create(); sa.Key = key; sa.Mode = CipherMode.ECB; sa.Padding = Paddin

4、gMode.Zeros; ICryptoTransform ct = sa.CreateDecryptor(); byte byt = Convert.FromBase64String(strSource); MemoryStream ms = new MemoryStream(byt); CryptoStream cs = new CryptoStream(ms, ct, CryptoStreamMode.Read); StreamReader sr = new StreamReader(cs, Encoding.Unicode); return sr.ReadToEnd(); #endre

5、gion #region 一个用hash实现的加密解密方法 / / 加密 / / / public static string EncryptStrByHash(string src) if (src.Length = 0) return ; byte HaKey = System.Text.Encoding.ASCII.GetBytes(src + Test).ToCharArray(); byte HaData = new byte20; HMACSHA1 Hmac = new HMACSHA1(HaKey); CryptoStream cs = new CryptoStream(Stre

6、am.Null, Hmac, CryptoStreamMode.Write); try cs.Write(HaData, 0, HaData.Length); finally cs.Close(); string HaResult = System.Convert.ToBase64String(Hmac.Hash).Substring(0, 16); byte RiKey = System.Text.Encoding.ASCII.GetBytes(HaResult.ToCharArray(); byte RiDataBuf = System.Text.Encoding.ASCII.GetByt

7、es(src.ToCharArray(); byte EncodedBytes = ; MemoryStream ms = new MemoryStream(); RijndaelManaged rv = new RijndaelManaged(); cs = new CryptoStream(ms, rv.CreateEncryptor(RiKey, RiKey), CryptoStreamMode.Write); try cs.Write(RiDataBuf, 0, RiDataBuf.Length); cs.FlushFinalBlock(); EncodedBytes = ms.ToA

8、rray(); finally ms.Close(); cs.Close(); return HaResult + System.Convert.ToBase64String(EncodedBytes); / / 解密 / / / public static string DecrypStrByHash(string src) if (src.Length 40) return ; byte SrcBytes = System.Convert.FromBase64String(src.Substring(16); byte RiKey = System.Text.Encoding.ASCII.

9、GetBytes(src.Substring(0, 16).ToCharArray(); byte InitialText = new byteSrcBytes.Length; RijndaelManaged rv = new RijndaelManaged(); MemoryStream ms = new MemoryStream(SrcBytes); CryptoStream cs = new CryptoStream(ms, rv.CreateDecryptor(RiKey, RiKey), CryptoStreamMode.Read); try cs.Read(InitialText, 0, InitialText.Length); finally ms.Close(); cs.Close(); System.Text.StringBuilder Result = new System.Text.StringBuilder(); for (int i = 0; i 0) Result.Append(char)InitialText); return Result.ToString(); / / 对加密后的密文重新编码,如果密文长16,则去掉前16个字符,如果长度小于16,返回空字符串 / / para

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1