C#实现简易的加密、解密字符串工具类实例

这篇文章主要介绍了C#实现简易的加密、解密字符串工具类,涉及C#字符串加密与加密的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#实现简易的加密、解密字符串工具类。分享给大家供大家参考。具体如下:

这里的类CypherHelper是一个用于加密、解密字符串的工具类~~~,适合于方便地加密、解密长度较短的密码等字符串(C#里面已经有了库System.Security.Cryptography,对于比较长的字符串或流来说是一个更好的选择)

类CypherHelper代码:

 class CypherHelper { ///  /// 加密字符串 ///  /// 被加密字符串 /// 密钥 /// 加密后字符串 public static string Encrypt(string word, string key) { if (!System.Text.RegularExpressions.Regex.IsMatch(key, "^[a-zA-Z]*$")) { throw new Exception("key 必须由字母组成"); } key = key.ToLower(); //逐个字符加密字符串 char[] s = word.ToCharArray(); for (int i = 0; i  /// 加密单个字符 ///  /// 被加密字符 /// 密钥 /// 加密后字符 private static char EncryptChar(char a, char b) { int c = a + b - 'a'; if (a >= '0' && a <= '9') //字符0-9的转换 { while (c > '9') c -= 10; } else if (a >= 'a' && a <= 'z') //字符a-z的转换 { while (c > 'z') c -= 26; } else if (a >= 'A' && a <= 'Z') //字符A-Z的转换 { while (c > 'Z') c -= 26; } else return a; //不再上面的范围内,不转换直接返回 return (char)c; //返回转换后的字符 } ///  /// 解密字符串 ///  /// 被解密字符串 /// 密钥 /// 解密后字符串 public static string Decrypt(string word, string key) { if (!System.Text.RegularExpressions.Regex.IsMatch(key, "^[a-zA-Z]*$")) { throw new Exception("key 必须由字母组成"); } key = key.ToLower(); //逐个字符解密字符串 char[] s = word.ToCharArray(); for (int i = 0; i  /// 解密单个字符 ///  /// 被解密字符 /// 密钥 /// 解密后字符 private static char DecryptChar(char a, char b) { int c = a - b + 'a'; if (a >= '0' && a <= '9') //字符0-9的转换 { while (c <'0') c += 10; } else if (a >= 'a' && a <= 'z') //字符a-z的转换 { while (c <'a') c += 26; } else if (a >= 'A' && a <= 'Z') //字符A-Z的转换 { while (c <'A') c += 26; } else return a; //不再上面的范围内,不转换直接返回 return (char)c; //返回转换后的字符 } } 

Main函数调用示例

 class Program { static void Main(string[] args) { //1.加密 string a = CypherHelper.Encrypt("TsybiusLee1234", "Galatea"); Console.WriteLine("加密:TsybiusLee1234 → " + a); //2.解密 string b = CypherHelper.Decrypt(a, "Galatea"); Console.WriteLine("解密:" + a + " → " + b); Console.ReadLine(); } } 

运行结果

希望本文所述对大家的C#程序设计有所帮助。

以上就是C#实现简易的加密、解密字符串工具类实例的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » 其他教程