C# DES加密与解密
来源:互联网 发布:xp怎么查找网络打印机 编辑:程序博客网 时间:2024/05/01 12:39
一、DES是一种数据加密标准,属于对称的加密算法体系。
下边是自己写的一个加密类:
<span style="font-size:10px;">using System;using System.Text;using System.IO;using System.Security.Cryptography;namespace WpfApplication12{ /// <summary> /// DES密码加密与解密 /// </summary> class DES { /// <summary> /// DES加密 /// </summary> /// <param name="password">密码明文</param> /// <returns>密码密文</returns> public string Encrypt(string password) { try { DESCryptoServiceProvider dESCryptoServiceProvider = new DESCryptoServiceProvider(); using (MemoryStream memoryStream = new MemoryStream()) { using (CryptoStream cryptoStream = new CryptoStream(memoryStream, dESCryptoServiceProvider.CreateEncryptor(Encoding.UTF8.GetBytes("ascdefgh"), Encoding.UTF8.GetBytes("ascdefgh")), CryptoStreamMode.Write)) //加密器对象 { cryptoStream.Write(Encoding.UTF8.GetBytes(password), 0, Encoding.UTF8.GetBytes(password).Length); cryptoStream.FlushFinalBlock(); } return Convert.ToBase64String(memoryStream.ToArray()); } } catch { return ""; } } /// <summary> /// DES解密 /// </summary> /// <param name="password">密码密文</param> /// <returns>密码明文</returns> public string Decrypt(string password) { DESCryptoServiceProvider dESCryptoServiceProvider = new DESCryptoServiceProvider(); using (MemoryStream memoryStream = new MemoryStream()) { try { using (CryptoStream cryptoStream = new CryptoStream(memoryStream, dESCryptoServiceProvider.CreateDecryptor(Encoding.UTF8.GetBytes("ascdefgh"), Encoding.UTF8.GetBytes("ascdefgh")), CryptoStreamMode.Write)) { cryptoStream.Write(Convert.FromBase64String(password), 0, Convert.FromBase64String(password).Length); cryptoStream.FlushFinalBlock(); } return Encoding.UTF8.GetString(memoryStream.ToArray()); } catch { return ""; } } } }}</span><span style="font-size: 18px;"></span>
解释:des.CreateDecryptor(btKey, btIV)中的两个参数为:(用于对称算法的密钥,用于对称算法的初始化向量);
因为是对称算法:所以加密和解密中两个参数必须相同。
0 0
- C# DES加密与解密
- c#实现DES加密与解密
- c# DES加密与解密代码
- C#语法 DES加密与解密
- c# DES 加密解密
- c# des 加密解密
- DES 加密/解密-C#
- c# DES加密解密
- c# DES 加密解密
- c# des 加密 解密
- Des加密与解密
- DES加密与解密
- 3DES加密 java与 C# 可以相互加密解密
- C# DES加密/解密字符串
- C# DES加密/解密字符串
- C# DES加密/解密字符串
- C#的des加密解密
- C# 的 DES 加密解密
- 虚幻引擎中的数组---TArray: Arrays
- 2015年开篇
- Maven入门
- typedef struct 用法详解和用法小结 及 在C和C++中的区别
- java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver java.sql.SQLException
- C# DES加密与解密
- NSTimer在多线程下的使用
- leetcode || 135、Candy
- SQL 替代not in
- android加入自定义开机脚本
- 【JAVA学习】11.异常处理机制
- CRC算法原理及C语言实现
- 目标检测之GMM
- App store 发布,64位问题,Missing 64-bit support