System.Security.Cryptography
来源:互联网 发布:怎么看他人淘宝店销量 编辑:程序博客网 时间:2024/05/28 22:11
//System.Security.Cryptography 命名空间提供加密服务,包括安全的数据编码和解码,以及许多其他操作,例如散列法、随机数字生成和消息身份验证。
using System;
using System.Text;
using System.Globalization;
using System.Security.Cryptography;
class DES
{
// 创建Key
public string GenerateKey()
{
DESCryptoServiceProvider desCrypto = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create();
return ASCIIEncoding.ASCII.GetString(desCrypto.Key);
}
// 加密字符串
public string EncryptString(string sInputString, string sKey)
{
byte [] data = Encoding.UTF8.GetBytes(sInputString);
DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
ICryptoTransform desencrypt = DES.CreateEncryptor();
byte [] result = desencrypt.TransformFinalBlock(data, 0, data.Length);
return BitConverter.ToString(result);
}
// 解密字符串
public string DecryptString(string sInputString, string sKey)
{
string [] sInput = sInputString.Split("-".ToCharArray());
byte [] data = new byte[sInput.Length];
for(int i = 0; i < sInput.Length; i++)
{
data[i] = byte.Parse(sInput[i], NumberStyles.HexNumber);
}
DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
ICryptoTransform desencrypt = DES.CreateDecryptor();
byte [] result = desencrypt.TransformFinalBlock(data, 0, data.Length);
return Encoding.UTF8.GetString(result);
}
}
class Test
{
static void Main()
{
DES des = new DES();
string key = des.GenerateKey();
string s0 = "sharmmy";
string s1 = des.EncryptString(s0, key);
string s2 = des.DecryptString(s1, key);
Console.WriteLine("原串: [{0}]", s0);
Console.WriteLine("加密: [{0}]", s1);
Console.WriteLine("解密: [{0}]", s2);
Console.ReadLine();
}
}
/* 程序输出:
原串: [中国软件 - csdn.net]
加密: [E8-30-D0-F2-2F-66-52-14-45-9A-DC-C5-85-E7-62-9B-AD-B7-82-CF-A8-0A-59-77]
解密: [中国软件 - csdn.net]
*/
- System.Security.Cryptography实战
- System.Security.Cryptography加密。
- System.Security.Cryptography
- System.Security.Cryptography.CryptographicException
- System.Security.Cryptography实战(图)
- DotNetNuke: System.Security.Cryptography.CryptographicException: Bad Data
- .NET:System.Security.Cryptography.CryptographicException 的解决办法
- System.Security.Cryptography.CryptographicException: 密钥集不存在。
- System.Security.Cryptography.CryptographicException: 系统找不到指定的文件。
- System.Security.Cryptography C# 加密和解密的学习
- System.Security.Cryptography.CryptographicException: 系统找不到指定的文件
- 部署时System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
- C# System.Security.Cryptography.CryptographicException: 系统找不到指定的路径。
- Computer Security and Cryptography
- .NET Security and Cryptography
- Computer Security and Cryptography
- C#学习笔记16——.net中System.Security.Cryptography 命名空间
- 基于System.Security.Cryptography.SymmetricAlgorithm 的私钥加密解密帮助类
- 用户注册,登录
- 转:C++ 的词法分析
- 我的CSDN
- 衰
- linux入门
- System.Security.Cryptography
- 数据加密/编码算法列表
- php学习笔记
- [原创]java native例子
- linux内核学习(8)如何生成vmlinux?简单走走
- Socket通讯编程之资源回收的问题
- ASP.NET学习笔记(四)
- C++学习心得
- 问题3