加解密算法
加解密算法要求具有要可逆性。
如果使用相同的密钥进行加密和解密,则称为对称加密。
本文实现的是对称加密的实例,实现的实例虽然没有高安全性,但是胜在简洁,在一些不需要太高安全等级的场景下,具有便捷可用的特点。可以在非安全数据加密场景使用。也可以当作一个小项目,训练以下自己的编程基础。
代码结构
代码实现
添加一个C#项目,项目内新建一个文件夹crypt,在文件夹内 新建2个文件ICryptHelper.cs和CryptHelper.cs。
ICryptHelper文件:用于定义接口和对象生成类。
CryptHelper文件:类文件,实现了接口。
文件内自定义为crypt命名空间。
1.定义接口
ICryptHelper.cs:
namespace crypt
{
/// <summary>
/// 使用MD5加解密
/// </summary>
public interface ICryptHelper
{
/// <summary>
/// 加密
/// </summary>
/// <param name="value">明文</param>
/// <param name="key">密钥 8位数字</param>
/// <returns>密文</returns>
string Encrypt(string value, string key);
/// <summary>
/// 解密
/// </summary>
/// <param name="value">密文</param>
/// <param name="key">密钥 8位数字</param>
/// <returns>明文</returns>
string Decrypt(string value, string key);
}
public class Maker
{
public static ICryptHelper NewMD5Helper()
{
return new CryptHelper();
}
}
}
2.实现接口
CryptHelper.cs:
using System;